|
@@ -7,8 +7,10 @@ import (
|
|
|
"ColdVerify_server/models/Certificate"
|
|
|
"ColdVerify_server/models/Device"
|
|
|
"ColdVerify_server/models/System"
|
|
|
+ "fmt"
|
|
|
beego "github.com/beego/beego/v2/server/web"
|
|
|
"math"
|
|
|
+ "strings"
|
|
|
)
|
|
|
|
|
|
type DeviceClassController struct {
|
|
@@ -248,8 +250,10 @@ func (c *DeviceClassController) List_Add() {
|
|
|
}
|
|
|
|
|
|
T_class, _ := c.GetInt("T_class")
|
|
|
- T_id := c.GetString("T_id")
|
|
|
- T_sn := c.GetString("T_sn")
|
|
|
+ //方式1:001,002,003,004,005,008
|
|
|
+ //方式2:001~005,008
|
|
|
+ T_layout_no_list := c.GetString("T_layout_no_list")
|
|
|
+ //T_sn := c.GetString("T_sn")
|
|
|
T_remark := c.GetString("T_remark")
|
|
|
|
|
|
_, is := Device.Read_DeviceClass_ById(T_class)
|
|
@@ -259,47 +263,78 @@ func (c *DeviceClassController) List_Add() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- if _, is = Device.Read_Device(T_sn); !is {
|
|
|
- c.Data["json"] = lib.JSONS{Code: 202, Msg: "T_sn 不存在!"}
|
|
|
- c.ServeJSON()
|
|
|
- return
|
|
|
- }
|
|
|
+ list := strings.Split(strings.TrimRight(T_layout_no_list, ","), ",")
|
|
|
+ snMap := make(map[string]string)
|
|
|
+ for _, v := range list {
|
|
|
+ // 001~005
|
|
|
+ if strings.Contains(v, "~") {
|
|
|
+ vlist := strings.Split(v, "~")
|
|
|
+ if len(vlist) != 2 {
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 202, Msg: "布局编号格式错误!"}
|
|
|
+ c.ServeJSON()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ vstart, vend := lib.To_int(strings.TrimLeft(vlist[0], "0")), lib.To_int(strings.TrimLeft(vlist[1], "0"))
|
|
|
+ for i := vstart; i < vend+1; i++ {
|
|
|
+ T_id := fmt.Sprintf("%03d", i)
|
|
|
+ cert, is := Certificate.Read_Certificate_ByT_layout_no(T_id)
|
|
|
+ if !is {
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 202, Msg: "布局编号不存在!"}
|
|
|
+ c.ServeJSON()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ snMap[T_id] = cert.T_sn
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 001,002
|
|
|
+ cert, is := Certificate.Read_Certificate_ByT_layout_no(v)
|
|
|
+ if !is {
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 202, Msg: "布局编号不存在!"}
|
|
|
+ c.ServeJSON()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ snMap[v] = cert.T_sn
|
|
|
+ }
|
|
|
|
|
|
- if dc, is := Device.Read_DeviceClassList_T_class_T_sn(T_class, T_sn); is && dc.Id > 0 {
|
|
|
- c.Data["json"] = lib.JSONS{Code: 202, Msg: "重复添加"}
|
|
|
- c.ServeJSON()
|
|
|
- return
|
|
|
- }
|
|
|
- if _, is = Certificate.Read_Certificate(T_sn); !is {
|
|
|
- c.Data["json"] = lib.JSONS{Code: 202, Msg: "证书不存在!"}
|
|
|
- c.ServeJSON()
|
|
|
- return
|
|
|
}
|
|
|
|
|
|
- var pdf Certificate.CertificatePdf
|
|
|
- pdfList, _ := Certificate.Read_CertificatePdf_Newest(T_sn)
|
|
|
- if len(pdfList) > 0 {
|
|
|
- pdf = pdfList[0]
|
|
|
- }
|
|
|
+ for T_id, T_sn := range snMap {
|
|
|
+ if _, is = Device.Read_Device(T_sn); !is {
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 202, Msg: "T_sn 不存在!"}
|
|
|
+ c.ServeJSON()
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- var_ := Device.DeviceClassList{
|
|
|
- T_class: T_class,
|
|
|
- T_id: T_id,
|
|
|
- T_sn: T_sn,
|
|
|
- T_failure_time: pdf.T_failure_time,
|
|
|
- T_pdf: pdf.T_pdf,
|
|
|
- T_remark: T_remark,
|
|
|
- T_State: 1,
|
|
|
- }
|
|
|
+ if dc, is := Device.Read_DeviceClassList_T_class_T_sn(T_class, T_sn); is && dc.Id > 0 {
|
|
|
+ continue
|
|
|
+ }
|
|
|
|
|
|
- Id, is := Device.Add_DeviceClassList(var_)
|
|
|
- if !is {
|
|
|
- c.Data["json"] = lib.JSONS{Code: 202, Msg: "添加失败!"}
|
|
|
- c.ServeJSON()
|
|
|
- return
|
|
|
+ var pdf Certificate.CertificatePdf
|
|
|
+ pdfList, _ := Certificate.Read_CertificatePdf_Newest(T_sn)
|
|
|
+ if len(pdfList) > 0 {
|
|
|
+ pdf = pdfList[0]
|
|
|
+ }
|
|
|
+
|
|
|
+ var_ := Device.DeviceClassList{
|
|
|
+ T_class: T_class,
|
|
|
+ T_id: T_id,
|
|
|
+ T_sn: T_sn,
|
|
|
+ T_failure_time: pdf.T_failure_time,
|
|
|
+ T_pdf: pdf.T_pdf,
|
|
|
+ T_remark: T_remark,
|
|
|
+ T_State: 1,
|
|
|
+ }
|
|
|
+
|
|
|
+ _, is = Device.Add_DeviceClassList(var_)
|
|
|
+ if !is {
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 202, Msg: "添加失败!"}
|
|
|
+ c.ServeJSON()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ System.Add_UserLogs_T(User_r.T_uuid, "分类设备管理", "添加", var_)
|
|
|
}
|
|
|
- System.Add_UserLogs_T(User_r.T_uuid, "分类设备管理", "添加", var_)
|
|
|
- c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: Id}
|
|
|
+
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!"}
|
|
|
c.ServeJSON()
|
|
|
return
|
|
|
}
|