zhangqian
2023-09-23 3a1d4cc4ddfe02942e5c8dee0b2187cf758f3bde
按通道数量给前端返回任务数
2个文件已修改
26 ■■■■ 已修改文件
api/v1/task.go 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/device_plc.go 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/v1/task.go
@@ -59,13 +59,19 @@
    if !ok {
        return
    }
    channelAmount, err := service.NewDevicePlcService().GetDeviceChannelAmount()
    if err != nil {
        ctx.FailWithMsg(ecode.NeedConfirmedErr, err.Error())
        return
    }
    if params.Page <= 0 {
        params.Page = 1
    }
    if params.PageSize <= 0 {
        params.PageSize = 1
    }
    params.PageSize = channelAmount
    taskResponse, code := service.NewTaskService().GetTask(params.Page, params.PageSize, service.TaskModeCurrent) //取进行中的或未开始的
    if code != ecode.OK {
        ctx.Fail(code)
service/device_plc.go
@@ -7,6 +7,7 @@
    "apsClient/pkg/logx"
    "apsClient/pkg/structx"
    "encoding/json"
    "errors"
    "gorm.io/gorm"
)
@@ -16,7 +17,7 @@
    return DevicePlcService{}
}
func (DevicePlcService) GetDevicePlc() (*model.DevicePlc, int) {
func (slf DevicePlcService) GetDevicePlc() (*model.DevicePlc, int) {
    DevicePlc, err := model.NewDevicePlcSearch().SetOrder("id desc").First()
    if err == gorm.ErrRecordNotFound {
        return &model.DevicePlc{
@@ -39,6 +40,17 @@
    return DevicePlc, ecode.OK
}
func (slf DevicePlcService) GetDeviceChannelAmount() (int, error) {
    plcConfig, code := slf.GetDevicePlc()
    if code != ecode.OK || plcConfig.Id == 0 {
        return 0, errors.New("请先配置PLC")
    }
    if len(plcConfig.Details) == 0 {
        return 0, errors.New("请先配置PLC")
    }
    return len(plcConfig.Details) / 2, nil
}
func (DevicePlcService) UpdateDevicePlc(plc *request.UpdatePlc) int {
    var record model.DevicePlc
    err := structx.AssignTo(plc, &record)