zhangqian
2023-09-02 74f8cd07a39795656573d4e4bb2fe85a6dadbb8c
docs/swagger.yaml
@@ -1,18 +1,88 @@
definitions:
  constvar.UserType:
  common.ProcedureMaterial:
    properties:
      amount:
        type: number
      materialId:
        type: string
      materialName:
        type: string
      unit:
        type: string
    type: object
  common.ProcedureWorker:
    properties:
      endTime:
        type: integer
      phoneNum:
        type: string
      startTime:
        type: integer
      workerId:
        type: string
      workerName:
        type: string
    type: object
  common.ProductProcedure:
    properties:
      deviceId:
        type: string
      deviceName:
        type: string
      endTime:
        type: integer
      inputMaterials:
        description: 输入物料列表
        items:
          $ref: '#/definitions/common.ProcedureMaterial'
        type: array
      nextProcedureId:
        type: string
      nextProcedureName:
        type: string
      outputMaterials:
        description: 输出物料列表
        items:
          $ref: '#/definitions/common.ProcedureMaterial'
        type: array
      procedureId:
        type: string
      procedureName:
        type: string
      startTime:
        type: integer
      workHours:
        type: number
      workers:
        description: 人员列表
        items:
          $ref: '#/definitions/common.ProcedureWorker'
        type: array
    type: object
  constvar.PlcMethod:
    enum:
    - modbusTCP
    - serial
    type: string
    x-enum-varnames:
    - PlcMethodModbusTCP
    - PlcMethodSerial
  constvar.PlcStartAddressType:
    enum:
    - 1
    - 2
    - 3
    type: integer
    x-enum-comments:
      UserTypePrimary: 主账户
      UserTypeSub: 子账户
      UserTypeSuper: 超级管理员
    x-enum-varnames:
    - UserTypeSuper
    - UserTypePrimary
    - UserTypeSub
    - PlcStartAddressTypeFinishNumber
    - PlcStartAddressTypeTotalNumber
  constvar.PlcStartAddressValueType:
    enum:
    - string
    - int
    type: string
    x-enum-varnames:
    - PlcStartAddressValueTypeString
    - PlcStartAddressValueTypeInt
  contextx.Response:
    properties:
      code:
@@ -21,98 +91,263 @@
      msg:
        type: string
    type: object
  model.User:
  model.DevicePlc:
    properties:
      companyCity:
      address:
        description: |-
          PortName   string `gorm:"type:varchar(191);comment:端口名称" json:"portName"`
          Frequency  int    `gorm:"type:int(11);comment:数据更新频率 0-实时更新 1-1次/秒" json:"frequency"`
        type: string
      companyContact:
      baudRate:
        description: 串口波特率, method = serial时 用
        type: integer
      brand:
        type: string
      companyEmail:
        type: string
      companyLogo:
        type: string
      companyName:
        type: string
      companyProvince:
        type: string
      companyTrade:
        type: string
      createAt:
        description: 创建时间
        type: string
      enable:
      details:
        items:
          $ref: '#/definitions/model.DevicePlcAddress'
        type: array
      id:
        type: integer
      isOpen:
        type: boolean
      headerImage:
      method:
        $ref: '#/definitions/constvar.PlcMethod'
      port:
        description: plc 端口号,  method =  modbusTCP用
        type: integer
      serialName:
        description: 串口名称,method = serial时 用
        type: string
    type: object
  model.DevicePlcAddress:
    properties:
      fieldName:
        allOf:
        - $ref: '#/definitions/constvar.PlcStartAddressType'
        description: 对应系统字段
      length:
        description: 数据长度
        type: integer
      startAddress:
        description: 数据起始地址
        type: integer
      type:
        allOf:
        - $ref: '#/definitions/constvar.PlcStartAddressValueType'
        description: 数据类型
    type: object
  model.NetConfig:
    properties:
      dns:
        description: dns
        type: string
      gateway:
        description: 网关
        type: string
      id:
        type: string
        type: integer
      ip:
        description: 本机ip
        type: string
      menuIds:
        description: 菜单ID列表
        items:
          type: integer
        type: array
      nickName:
      mask:
        description: 子网掩码
        type: string
      parentId:
        type: string
      parentName:
        type: string
      phone:
        type: string
      port:
        type: string
      pos:
      networkCard:
        description: 网卡
        type: string
      status:
        allOf:
        - $ref: '#/definitions/model.NetConfigStatus'
        description: 状态(1启用2禁用)
    required:
    - gateway
    - ip
    - mask
    - networkCard
    type: object
  model.NetConfigStatus:
    enum:
    - 1
    - 2
    type: integer
    x-enum-comments:
      NetConfigStatusDisabled: 关闭
      NetConfigStatusEnabled: 开启
    x-enum-varnames:
    - NetConfigStatusEnabled
    - NetConfigStatusDisabled
  model.Order:
    properties:
      amount:
        type: number
      customer:
        type: string
      deliverDate:
        type: string
      endTime:
        type: integer
      systemName:
      orderAttr:
        description: 订单属性拼接的字符串,即货物描述
        type: string
      updateAt:
        description: 更新时间
      orderId:
        type: string
      userType:
        $ref: '#/definitions/constvar.UserType'
      username:
      parameter:
        type: string
      productId:
        type: string
      productName:
        type: string
      startTime:
        type: integer
      status:
        $ref: '#/definitions/model.OrderStatus'
      unit:
        type: string
      workOrderId:
        type: string
    type: object
  request.Login:
  model.OrderStatus:
    enum:
    - 1
    - 2
    type: integer
    x-enum-varnames:
    - OrderStatusUnFinished
    - OrderStatusFinished
  model.PlcBrand:
    properties:
      captcha:
        description: 验证码
        type: string
      captchaId:
        description: 验证码ID
        type: string
      password:
        description: 密码
        type: string
      username:
        description: 用户名
      id:
        type: integer
      name:
        type: string
    type: object
  response.LoginResponse:
  model.ProcedureStatus:
    enum:
    - 1
    - 2
    type: integer
    x-enum-varnames:
    - ProcedureStatusUnFinished
    - ProcedureStatusFinished
  model.Procedures:
    properties:
      expiresAt:
      endTime:
        type: integer
      token:
      id:
        type: integer
      procedure:
        allOf:
        - $ref: '#/definitions/common.ProductProcedure'
        description: common.ProductProcedure  对象
      startTime:
        type: integer
      status:
        $ref: '#/definitions/model.ProcedureStatus'
    type: object
  request.AddPlcBrand:
    properties:
      id:
        type: integer
      name:
        type: string
      user:
        $ref: '#/definitions/model.User'
    type: object
  request.UpdatePlc:
    properties:
      address:
        description: |-
          PortName   string `gorm:"type:varchar(191);comment:端口名称" json:"portName"`
          Frequency  int    `gorm:"type:int(11);comment:数据更新频率 0-实时更新 1-1次/秒" json:"frequency"`
        type: string
      baudRate:
        description: 串口波特率, method = serial时 用
        type: integer
      brand:
        type: string
      details:
        items:
          $ref: '#/definitions/model.DevicePlcAddress'
        type: array
      id:
        type: integer
      isOpen:
        type: boolean
      method:
        $ref: '#/definitions/constvar.PlcMethod'
      port:
        description: plc 端口号,  method =  modbusTCP用
        type: integer
      serialName:
        description: 串口名称,method = serial时 用
        type: string
    type: object
  request.UpdatePlcBrand:
    properties:
      id:
        type: integer
      name:
        type: string
    type: object
  response.ListResponse:
    properties:
      code:
        type: integer
      count:
        type: integer
      data: {}
      msg:
        type: string
    type: object
  response.ProcessParams:
    properties:
      key:
        type: string
      value: {}
    type: object
  response.ProcessParamsResponse:
    properties:
      number:
        type: string
      params:
        items:
          $ref: '#/definitions/response.ProcessParams'
        type: array
    type: object
  response.ProductProgress:
    properties:
      finishNumber:
        type: integer
      totalNumber:
        type: integer
    type: object
  response.TaskCountdown:
    properties:
      countDownHour:
        description: 倒计时 时
        type: integer
      countDownMinute:
        description: 倒计时 分
        type: integer
      showCountDown:
        description: 是否展示倒计时
        type: boolean
    type: object
  response.TaskData:
    properties:
      deviceName:
        type: string
      deviceStatus:
        type: string
      order:
        $ref: '#/definitions/model.Order'
      procedure:
        $ref: '#/definitions/model.Procedures'
    type: object
info:
  contact: {}
paths:
  /api/base/login:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.Login'
  /v1/config/net:
    get:
      produces:
      - application/json
      responses:
@@ -123,9 +358,268 @@
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.LoginResponse'
                  items:
                    $ref: '#/definitions/model.NetConfig'
                  type: array
              type: object
      summary: 用户登录
      summary: 获取网络配置
      tags:
      - Base
      - Config
    post:
      parameters:
      - description: 参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/model.NetConfig'
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  items:
                    $ref: '#/definitions/response.ProcessParams'
                  type: array
              type: object
      summary: 设置网络配置
      tags:
      - Config
  /v1/config/plc:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/model.DevicePlc'
              type: object
      summary: 获取plc配置
      tags:
      - Config
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdatePlc'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新plc配置
      tags:
      - Config
  /v1/plc/productProgress:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.ProductProgress'
              type: object
      summary: 获取生产进度
      tags:
      - 生产数量
  /v1/plc/setProductNumber:
    post:
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 设置生产总量
      tags:
      - 生产数量
  /v1/plcBrand/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddPlcBrand'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加plc品牌
      tags:
      - plc品牌
  /v1/plcBrand/delete/{id}:
    delete:
      parameters:
      - description: 查询参数
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 删除plc品牌
      tags:
      - plc品牌
  /v1/plcBrand/list:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            allOf:
            - $ref: '#/definitions/response.ListResponse'
            - properties:
                data:
                  items:
                    $ref: '#/definitions/model.PlcBrand'
                  type: array
              type: object
      summary: 获取plc品牌列表
      tags:
      - plc品牌
  /v1/plcBrand/update:
    put:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdatePlcBrand'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新plc品牌
      tags:
      - plc品牌
  /v1/task/countdown:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.TaskCountdown'
              type: object
      summary: 新任务倒计时
      tags:
      - Task
  /v1/task/finish/{id}:
    put:
      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/get:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $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}:
    get:
      parameters:
      - description: 工序id
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: 成功
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.ProcessParamsResponse'
              type: object
      summary: 任务开始
      tags:
      - Task
swagger: "2.0"