|
@@ -550,55 +550,44 @@ func (c *DeviceClassController) List_Copy() {
|
|
|
c.ServeJSON()
|
|
|
return
|
|
|
}
|
|
|
+ errList := []string{}
|
|
|
+ pasteList, cnt := Device.Read_DeviceClassList_OrderList(paste_task.T_class, "", "", "", 0, 9999)
|
|
|
+ for _, ds := range pasteList {
|
|
|
+ if !Device.Delete_DeviceClassList_(ds) {
|
|
|
+ errList = append(errList, ds.T_id)
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 删除旧的设备列表
|
|
|
|
|
|
copyList, cnt := Device.Read_DeviceClassList_OrderList(copy_task.T_class, "", "", "", 0, 9999)
|
|
|
var successNum int // 成功数量
|
|
|
- errList := []string{}
|
|
|
+
|
|
|
for _, v := range copyList {
|
|
|
- ds, is2 := Device.Read_DeviceClassList_T_class_T_id(paste_task.T_class, v.T_id)
|
|
|
- // id存在 更新
|
|
|
- if is2 {
|
|
|
- ds.T_sn = v.T_sn
|
|
|
- ds.T_remark = v.T_remark
|
|
|
- ds.T_terminal = v.T_terminal
|
|
|
- if !Device.Update_DeviceClassList(ds, "T_sn", "T_remark", "T_terminal") {
|
|
|
- errList = append(errList, v.T_id)
|
|
|
- continue
|
|
|
- }
|
|
|
- } else {
|
|
|
- // 判断是否已存在sn
|
|
|
- _, is3 := Device.Read_DeviceClassList_T_class_T_sn(paste_task.T_class, v.T_sn)
|
|
|
- // 删除要粘贴的任务里重复的sn
|
|
|
- if is3 {
|
|
|
- if !Device.Delete_DeviceClassList_(ds) {
|
|
|
- errList = append(errList, v.T_id)
|
|
|
- continue
|
|
|
- }
|
|
|
- }
|
|
|
- // 不存在则添加
|
|
|
- var pdf Certificate.CertificatePdf
|
|
|
- pdfList, _ := Certificate.Read_CertificatePdf_T_layout_no(v.T_id, "")
|
|
|
- if len(pdfList) > 0 {
|
|
|
- pdf = pdfList[0]
|
|
|
- }
|
|
|
+ // 不存在则添加
|
|
|
+ var pdf Certificate.CertificatePdf
|
|
|
+ pdfList, _ := Certificate.Read_CertificatePdf_T_layout_no(v.T_id, "")
|
|
|
+ if len(pdfList) > 0 {
|
|
|
+ pdf = pdfList[0]
|
|
|
+ }
|
|
|
|
|
|
- var_ := Device.DeviceClassList{
|
|
|
- T_class: paste_task.T_class,
|
|
|
- T_id: v.T_id,
|
|
|
- T_sn: v.T_sn,
|
|
|
- T_failure_time: pdf.T_failure_time,
|
|
|
- T_pdf: pdf.T_pdf,
|
|
|
- T_Certificate_sn: pdf.T_Certificate_sn,
|
|
|
- T_remark: v.T_remark,
|
|
|
- T_terminal: v.T_terminal,
|
|
|
- T_State: 1,
|
|
|
- }
|
|
|
+ var_ := Device.DeviceClassList{
|
|
|
+ T_class: paste_task.T_class,
|
|
|
+ T_id: v.T_id,
|
|
|
+ T_sn: v.T_sn,
|
|
|
+ T_failure_time: pdf.T_failure_time,
|
|
|
+ T_pdf: pdf.T_pdf,
|
|
|
+ T_Certificate_sn: pdf.T_Certificate_sn,
|
|
|
+ T_remark: v.T_remark,
|
|
|
+ T_terminal: v.T_terminal,
|
|
|
+ T_State: 1,
|
|
|
+ }
|
|
|
|
|
|
- _, is = Device.Add_DeviceClassList(var_)
|
|
|
- if !is {
|
|
|
- errList = append(errList, v.T_id)
|
|
|
- continue
|
|
|
- }
|
|
|
+ _, is = Device.Add_DeviceClassList(var_)
|
|
|
+ if !is {
|
|
|
+ errList = append(errList, v.T_id)
|
|
|
+ continue
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -946,3 +935,50 @@ func FilterByRange(data []Device.DeviceClassList, condition string) []Device.Dev
|
|
|
|
|
|
return result
|
|
|
}
|
|
|
+
|
|
|
+// 验证工具统计
|
|
|
+func (c *DeviceClassController) Stat() {
|
|
|
+ // 验证登录 User_is, User_r
|
|
|
+ _, User_is := Account.Verification_Admin(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
|
|
|
+ if !User_is {
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
|
|
|
+ c.ServeJSON()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ var r_jsons lib.R_JSONS
|
|
|
+ page, _ := c.GetInt("page")
|
|
|
+ if page < 1 {
|
|
|
+ page = 1
|
|
|
+ }
|
|
|
+ page_z, _ := c.GetInt("page_z")
|
|
|
+ if page_z < 1 {
|
|
|
+ page_z = conf.Page_size
|
|
|
+ }
|
|
|
+
|
|
|
+ T_company := c.GetString("T_company") // 公司名称
|
|
|
+ var T_company_list []string
|
|
|
+ if len(T_company) > 0 {
|
|
|
+ T_company_list = Account.Read_User_T_uuid_ListByT_name(T_company)
|
|
|
+ }
|
|
|
+
|
|
|
+ Time_start := c.GetString("Time_start")
|
|
|
+ Time_end := c.GetString("Time_end")
|
|
|
+ T_name := c.GetString("T_name")
|
|
|
+ T_sn := c.GetString("T_sn")
|
|
|
+ T_distinct, _ := c.GetBool("T_distinct")
|
|
|
+ UserMap := Account.UserListToMap(Account.Read_User_List_ALL_1())
|
|
|
+
|
|
|
+ var cnt int64
|
|
|
+ List, cnt := Device.Read_DeviceClass_Stat(T_company_list, T_name, T_sn, Time_start, Time_end, T_distinct, UserMap, page, page_z)
|
|
|
+ page_size := math.Ceil(float64(cnt) / float64(page_z))
|
|
|
+ r_jsons.List = List
|
|
|
+ r_jsons.Page = page
|
|
|
+ r_jsons.Page_size = int(page_size)
|
|
|
+ r_jsons.Pages = lib.Func_page(int64(page), int64(page_size))
|
|
|
+ r_jsons.Num = int(cnt)
|
|
|
+
|
|
|
+ c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: r_jsons}
|
|
|
+ c.ServeJSON()
|
|
|
+ return
|
|
|
+}
|