zhangqian
2023-08-18 e5ee9138c720e48f7447be486f247e765b3f1e46
增加参数下发接口
10个文件已修改
261 ■■■■■ 已修改文件
api/v1/task.go 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/docs.go 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/swagger.json 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/swagger.yaml 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
logs/apsClient.err.log 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
logs/apsClient.info.log 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/order.go 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/procedures.go 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
router/index.go 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/task.go 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/v1/task.go
@@ -8,7 +8,9 @@
    "apsClient/pkg/ecode"
    "apsClient/pkg/logx"
    "apsClient/service"
    "fmt"
    "github.com/gin-gonic/gin"
    "time"
)
type TaskApi struct{}
@@ -34,7 +36,7 @@
}
// TaskStart
// @Tags      Base
// @Tags      Task
// @Summary   任务开始
// @Produce   application/json
// @Param     id  path    int true  "工序id"
@@ -82,7 +84,7 @@
}
// TaskFinish
// @Tags      Base
// @Tags      Task
// @Summary   任务结束
// @Produce   application/json
// @Param     id  path    int true  "工序id"
@@ -112,3 +114,55 @@
    }
    ctx.Ok()
}
// SendProcessParams
// @Tags      Task
// @Summary   下发工艺参数
// @Produce   application/json
// @Param     id  path    int true  "工序id"
// @Success   200   {object}  contextx.Response{service.GetProcessModel}  "成功"
// @Router    /v1/task/sendProcessParams/{id} [post]
func (slf *TaskApi) SendProcessParams(c *gin.Context) {
    ctx, ok := contextx.NewContext(c, nil)
    if !ok {
        return
    }
    idx := c.Param("id")
    if idx == "" {
        ctx.Fail(ecode.ParamsErr)
        return
    }
    id := convertx.Atoi(idx)
    procedure, code := service.NewTaskService().GetProcedureById(id)
    if code != ecode.OK {
        ctx.Fail(code)
        return
    }
    order, err := service.NewTaskService().GetOrderByOrderId(procedure.OrderID)
    if err != nil {
        ctx.Fail(ecode.UnknownErr)
        return
    }
    params := service.GetProcessModelParams{
        WorkOrder: "",
        OrderId:   procedure.OrderID,
        Product:   order.ProductName,
        Procedure: procedure.ProceduresInfo.ProcedureName,
        Device:    procedure.ProceduresInfo.DeviceID,
    }
    resp, err := service.ProcessModel{}.GetProcessModel(params)
    if err != nil {
        logx.Errorf("SendProcessModel GetProcessModel err: %v", err.Error())
        ctx.Fail(ecode.UnknownErr)
        return
    }
    fmt.Println("----------------开始下发工艺参数-----------------")
    for k, v := range resp.ParamsMap {
        fmt.Println(fmt.Sprintf("%v : %v", k, v))
        time.Sleep(time.Millisecond * 300)
    }
    fmt.Println("----------------下发工艺参数完毕-----------------")
    ctx.Ok()
}
docs/docs.go
@@ -22,7 +22,7 @@
                    "application/json"
                ],
                "tags": [
                    "Base"
                    "Task"
                ],
                "summary": "任务结束",
                "parameters": [
@@ -75,13 +75,41 @@
                }
            }
        },
        "/v1/task/sendProcessParams/{id}": {
            "post": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Task"
                ],
                "summary": "下发工艺参数",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "工序id",
                        "name": "id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "成功",
                        "schema": {
                            "$ref": "#/definitions/contextx.Response"
                        }
                    }
                }
            }
        },
        "/v1/task/start/{id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Base"
                    "Task"
                ],
                "summary": "任务开始",
                "parameters": [
docs/swagger.json
@@ -10,7 +10,7 @@
                    "application/json"
                ],
                "tags": [
                    "Base"
                    "Task"
                ],
                "summary": "任务结束",
                "parameters": [
@@ -63,13 +63,41 @@
                }
            }
        },
        "/v1/task/sendProcessParams/{id}": {
            "post": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Task"
                ],
                "summary": "下发工艺参数",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "工序id",
                        "name": "id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "成功",
                        "schema": {
                            "$ref": "#/definitions/contextx.Response"
                        }
                    }
                }
            }
        },
        "/v1/task/start/{id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Base"
                    "Task"
                ],
                "summary": "任务开始",
                "parameters": [
docs/swagger.yaml
@@ -119,7 +119,7 @@
            $ref: '#/definitions/contextx.Response'
      summary: 任务结束
      tags:
      - Base
      - Task
  /v1/task/get:
    get:
      produces:
@@ -135,6 +135,24 @@
                  $ref: '#/definitions/response.TaskData'
              type: object
      summary: 获取任务
      tags:
      - Task
  /v1/task/sendProcessParams/{id}:
    post:
      parameters:
      - description: 工序id
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 下发工艺参数
      tags:
      - Task
  /v1/task/start/{id}:
@@ -154,5 +172,5 @@
            $ref: '#/definitions/contextx.Response'
      summary: 任务开始
      tags:
      - Base
      - Task
swagger: "2.0"
logs/apsClient.err.log
@@ -62,3 +62,10 @@
[2023-08-17 17:01:05]    [error]    [apsClient/model.Init:10]    failed to initialize database, got error Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub
[2023-08-17 17:01:05]    [error]    [main.main:23]    model Init err:Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub
[2023-08-17 17:27:57]    [error]    [apsClient/model.(*OrderSearch).First:189]    trace    {"error": "record not found", "elapsed": 0, "rows": 0, "sql": "SELECT * FROM `Order` WHERE status = \"1\" AND start_time >= 1692264477 AND `Order`.`deleted_at` IS NULL ORDER BY created_at asc,`Order`.`id` LIMIT 1"}
[2023-08-17 17:29:01]    [error]    [apsClient/model.(*ProceduresSearch).First:197]    trace    {"error": "record not found", "elapsed": 0, "rows": 0, "sql": "SELECT * FROM `procedures` WHERE `procedures`.`deleted_at` IS NULL ORDER BY `procedures`.`id` LIMIT 1"}
[2023-08-18 11:10:56]    [error]    [apsClient/model.Init:10]    failed to initialize database, got error Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub
[2023-08-18 11:10:56]    [error]    [main.main:23]    model Init err:Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub
[2023-08-18 11:12:50]    [error]    [apsClient/model.Init:10]    failed to initialize database, got error Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub
[2023-08-18 11:12:50]    [error]    [main.main:23]    model Init err:Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub
[2023-08-18 11:13:42]    [error]    [apsClient/model.(*ProceduresSearch).First:197]    trace    {"error": "record not found", "elapsed": 0, "rows": 0, "sql": "SELECT * FROM `procedures` WHERE `procedures`.`deleted_at` IS NULL ORDER BY `procedures`.`id` LIMIT 1"}
[2023-08-18 11:14:18]    [error]    [apsClient/model.(*ProceduresSearch).First:197]    trace    {"error": "record not found", "elapsed": 0, "rows": 0, "sql": "SELECT * FROM `procedures` WHERE `procedures`.`deleted_at` IS NULL ORDER BY `procedures`.`id` LIMIT 1"}
logs/apsClient.info.log
@@ -321,3 +321,82 @@
[2023-08-17 17:27:45]    [info]    [apsClient/nsq.Consume:17]    Consume NewNsqConsumer topic:aps.wangpengfei.scheduleTask
[2023-08-17 17:27:57]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | GET /v1/task/get | uid:  | <nil>
[2023-08-17 17:28:54]    [info]    [main.shutdown:48]    apsClient exited...
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0.0010009, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"Order\""}
[2023-08-17 17:29:00]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0.0010019, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"Order\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0.0010051, "rows": -1, "sql": "SELECT * FROM `Order` LIMIT 1"}
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_deleted_at\""}
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_order_id\""}
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"procedures\""}
[2023-08-17 17:29:00]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"procedures\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `procedures` LIMIT 1"}
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_deleted_at\""}
[2023-08-17 17:29:00]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_order_id\""}
[2023-08-17 17:29:00]    [info]    [main.main:33]    apsClient start serve...
[2023-08-17 17:29:00]    [info]    [apsClient/nsq.Consume:17]    Consume NewNsqConsumer topic:aps.wangpengfei.scheduleTask
[2023-08-17 17:29:01]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | GET /v1/task/start/1 | uid:  | <nil>
[2023-08-18 11:10:53]    [info]    [main.shutdown:48]    apsClient exited...
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"Order\""}
[2023-08-18 11:13:28]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"Order\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `Order` LIMIT 1"}
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_order_id\""}
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0.0010015, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_deleted_at\""}
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"procedures\""}
[2023-08-18 11:13:28]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"procedures\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `procedures` LIMIT 1"}
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_deleted_at\""}
[2023-08-18 11:13:28]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_order_id\""}
[2023-08-18 11:13:28]    [info]    [main.main:33]    apsClient start serve...
[2023-08-18 11:13:28]    [info]    [apsClient/nsq.Consume:17]    Consume NewNsqConsumer topic:aps.wangpengfei.scheduleTask
[2023-08-18 11:13:42]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:14:03]    [info]    [main.shutdown:48]    apsClient exited...
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"Order\""}
[2023-08-18 11:14:09]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0.0010028, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"Order\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `Order` LIMIT 1"}
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_deleted_at\""}
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_order_id\""}
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"procedures\""}
[2023-08-18 11:14:09]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"procedures\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `procedures` LIMIT 1"}
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_deleted_at\""}
[2023-08-18 11:14:09]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_order_id\""}
[2023-08-18 11:14:09]    [info]    [main.main:33]    apsClient start serve...
[2023-08-18 11:14:09]    [info]    [apsClient/nsq.Consume:17]    Consume NewNsqConsumer topic:aps.wangpengfei.scheduleTask
[2023-08-18 11:14:15]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:16:14]    [info]    [main.shutdown:48]    apsClient exited...
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"Order\""}
[2023-08-18 11:16:19]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0.0009753, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"Order\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `Order` LIMIT 1"}
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_deleted_at\""}
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_order_id\""}
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"procedures\""}
[2023-08-18 11:16:19]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0.0009785, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"procedures\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `procedures` LIMIT 1"}
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_deleted_at\""}
[2023-08-18 11:16:19]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_order_id\""}
[2023-08-18 11:16:19]    [info]    [main.main:33]    apsClient start serve...
[2023-08-18 11:16:19]    [info]    [apsClient/nsq.Consume:17]    Consume NewNsqConsumer topic:aps.wangpengfei.scheduleTask
[2023-08-18 11:16:30]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:16:42]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:16:46]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:16:52]    [info]    [main.shutdown:48]    apsClient exited...
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"Order\""}
[2023-08-18 11:16:59]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"Order\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `Order` LIMIT 1"}
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0.0009941, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_deleted_at\""}
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"Order\" AND name = \"idx_Order_order_id\""}
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.HasTable.func1:33]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"procedures\""}
[2023-08-18 11:16:59]    [debug]    [gorm.io/gorm/migrator.Migrator.RunWithValue:71]    trace    {"elapsed": 0, "rows": 3, "sql": "SELECT sql FROM sqlite_master WHERE type IN (\"table\",\"index\") AND tbl_name = \"procedures\" AND sql IS NOT NULL order by type = \"table\" desc"}
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.ColumnTypes.func1:119]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT * FROM `procedures` LIMIT 1"}
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_deleted_at\""}
[2023-08-18 11:16:59]    [debug]    [gorm.io/driver/sqlite.Migrator.HasIndex.func1:313]    trace    {"elapsed": 0, "rows": -1, "sql": "SELECT count(*) FROM sqlite_master WHERE type = \"index\" AND tbl_name = \"procedures\" AND name = \"idx_procedures_order_id\""}
[2023-08-18 11:16:59]    [info]    [main.main:33]    apsClient start serve...
[2023-08-18 11:16:59]    [info]    [apsClient/nsq.Consume:17]    Consume NewNsqConsumer topic:aps.wangpengfei.scheduleTask
[2023-08-18 11:17:01]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:04]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:07]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:11]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:13]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:16]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:22]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:25]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
[2023-08-18 11:17:28]    [info]    [apsClient/pkg/contextx.NewContext.func1:44]    192.168.20.120 | POST /v1/task/sendProcessParams/1 | uid:  | <nil>
model/order.go
@@ -31,7 +31,7 @@
        PageSize     int
        Orm          *gorm.DB
        Preload      bool
        StartTimeMin int64
        StartTimeMax int64
    }
)
@@ -68,8 +68,8 @@
    return slf
}
func (slf *OrderSearch) SetStartTimeMin(ts int64) *OrderSearch {
    slf.StartTimeMin = ts
func (slf *OrderSearch) SetStartTimeMax(ts int64) *OrderSearch {
    slf.StartTimeMax = ts
    return slf
}
@@ -103,8 +103,8 @@
        db = db.Where("status = ?", slf.Status)
    }
    if slf.StartTimeMin != 0 {
        db = db.Where("start_time >= ?", slf.StartTimeMin)
    if slf.StartTimeMax != 0 {
        db = db.Where("start_time <= ?", slf.StartTimeMax)
    }
    if slf.Preload {
model/procedures.go
@@ -26,7 +26,7 @@
        PageSize     int
        Orm          *gorm.DB
        Preload      bool
        StartTimeMin int64
        StartTimeMax int64
    }
)
@@ -76,8 +76,8 @@
    slf.OrderID = orderId
    return slf
}
func (slf *ProceduresSearch) SetStartTimeMin(ts int64) *ProceduresSearch {
    slf.StartTimeMin = ts
func (slf *ProceduresSearch) SetStartTimeMax(ts int64) *ProceduresSearch {
    slf.StartTimeMax = ts
    return slf
}
@@ -111,8 +111,8 @@
        db = db.Preload("InputMaterials").Preload("OutputMaterials")
    }
    if slf.StartTimeMin != 0 {
        db = db.Where("start_time >= ?", slf.StartTimeMin)
    if slf.StartTimeMax != 0 {
        db = db.Where("start_time <= ?", slf.StartTimeMax)
    }
    if slf.Status != 0 {
router/index.go
@@ -35,9 +35,10 @@
    taskApi := new(v1.TaskApi)
    taskGroup := v1Group.Group("task")
    {
        taskGroup.GET("get", taskApi.TaskGet)           // 获取工序
        taskGroup.GET("start/:id", taskApi.TaskStart)   // 开启工序并获取参数
        taskGroup.PUT("finish/:id", taskApi.TaskFinish) // 完成工序
        taskGroup.GET("get", taskApi.TaskGet)                              // 获取工序
        taskGroup.GET("start/:id", taskApi.TaskStart)                      // 开启工序并获取参数
        taskGroup.PUT("finish/:id", taskApi.TaskFinish)                    // 完成工序
        taskGroup.POST("sendProcessParams/:id", taskApi.SendProcessParams) // 下发工艺参数
    }
    return Router
service/task.go
@@ -20,7 +20,7 @@
    nowTs := time.Now().Unix()
    orderSearch := model.NewOrderSearch(nil)
    orderSearch.SetOrder("created_at asc").
        SetStartTimeMin(nowTs).
        SetStartTimeMax(nowTs).
        SetStatus(model.OrderStatusUnFinished)
    var (
        err   error
@@ -36,7 +36,7 @@
    }
    procedure, err := model.NewProceduresSearch(nil).
        SetOrderId(order.OrderID).
        SetStartTimeMin(nowTs).
        SetStartTimeMax(nowTs).
        SetStatus(model.ProcedureStatusUnFinished).
        First()
    if err == gorm.ErrRecordNotFound { //该订单本设备全部工序完成,把订单置为完成状态(只是对本设备完成)