| | |
| | | "apsClient/pkg/logx" |
| | | "apsClient/pkg/structx" |
| | | "encoding/json" |
| | | "errors" |
| | | "gorm.io/gorm" |
| | | ) |
| | | |
| | |
| | | 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{ |
| | |
| | | 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) |