Przeglądaj źródła

add:导入数据前修改auto_increment的初始值,适配恢复数据

zoie 3 miesięcy temu
rodzic
commit
954558a554
3 zmienionych plików z 39 dodań i 15 usunięć
  1. 2 2
      Nats/NatsServer/NatsServer.go
  2. 17 13
      controllers/TaskData.go
  3. 20 0
      models/Task/TaskData.go

+ 2 - 2
Nats/NatsServer/NatsServer.go

@@ -46,7 +46,7 @@ func Update_Task(v Task.Task) error {
 }
 
 func Read_Task(T_task_id string) (task Task.Task, err error) {
-	logs.Println("Nats =>", lib.FuncName(), T_task_id)
+	//logs.Println("Nats =>", lib.FuncName(), T_task_id)
 
 	if lib.Nats == nil || !lib.Nats.IsConnected() {
 		lib.Nats, err = nats.Connect("nats://" + conf.NatsServer_Url)
@@ -114,7 +114,7 @@ func Read_User(T_uuid string) (user Account.User, err error) {
 
 }
 func Device_Class_List(T_task_id string) (list []Device.DeviceClassList, err error) {
-	logs.Println("Nats =>", lib.FuncName(), T_task_id)
+	//logs.Println("Nats =>", lib.FuncName(), T_task_id)
 
 	if !lib.Nats.IsConnected() {
 		lib.Nats, err = nats.Connect("nats://" + conf.NatsServer_Url)

+ 17 - 13
controllers/TaskData.go

@@ -603,6 +603,8 @@ func (c *TaskDataController) TaskData_AddS() {
 	println(len(T_Data_list), "len(T_Data_list)")
 	var T_Data_list_x = 0
 
+	Task.UpdateAUTO_INCREMENT(conf.Local_AliasName,Task_r.T_task_id)
+
 	snMaps := make(map[string]string)
 
 	for _, v := range T_Data_list {
@@ -656,19 +658,19 @@ func (c *TaskDataController) TaskData_AddS() {
 
 	}
 
-	for _, v := range T_Data_list {
-		// 132|132|23.9|72.1|2023-04-30 07:03:00
-		if len(v) < 5 {
-			println(v, "len(v) < 5")
-			continue
-		}
-		v_list := strings.Split(v, "|")
-		t, _ := lib.ReplaceSeconds(v_list[4])
-		is := Task.Add_TaskData(Task_r.T_task_id, v_list[0], v_list[1], v_list[2], v_list[3], t)
-		if is {
-			T_Data_list_x += 1
-		}
-	}
+	//for _, v := range T_Data_list {
+	//	// 132|132|23.9|72.1|2023-04-30 07:03:00
+	//	if len(v) < 5 {
+	//		println(v, "len(v) < 5")
+	//		continue
+	//	}
+	//	v_list := strings.Split(v, "|")
+	//	t, _ := lib.ReplaceSeconds(v_list[4])
+	//	is := Task.Add_TaskData(Task_r.T_task_id, v_list[0], v_list[1], v_list[2], v_list[3], t)
+	//	if is {
+	//		T_Data_list_x += 1
+	//	}
+	//}
 
 	System.Add_UserLogs_T(T_uuid, "本地版-任务数据", "添加数据"+Task_r.T_name, Task_r.T_task_id+"结果:"+string(len(T_Data_list))+"/"+string(T_Data_list_x)+"|=> "+T_Data)
 
@@ -688,6 +690,7 @@ func (c *TaskDataController) TaskData_AddS_Excel() {
 		c.ServeJSON()
 		return
 	}
+	Task.UpdateAUTO_INCREMENT(conf.Local_AliasName,Task_r.T_task_id)
 
 	// 获取上传的文件
 	file, _, err := c.GetFile("file")
@@ -847,6 +850,7 @@ func (c *TaskDataController) TaskData_Add() {
 		c.ServeJSON()
 		return
 	}
+	Task.UpdateAUTO_INCREMENT(conf.Local_AliasName,Task_r.T_task_id)
 
 	sn, err := Task.Read_TaskData_ByT_id(Task_r.T_task_id, T_id)
 	if err != nil && !errors.Is(err, orm.ErrNoRows) {

+ 20 - 0
models/Task/TaskData.go

@@ -1024,3 +1024,23 @@ func CheckTableExist(alias_name, T_task_id string) bool {
 	}
 	return true
 }
+
+// 修改auto_increment的初始值
+func UpdateAUTO_INCREMENT(alias_name, T_task_id string) error {
+	o := orm2.NewOrmUsingDB(alias_name)
+	var max_id int
+	sql := "select max(ID) from z_task_data_" + T_task_id
+	err := o.Raw(sql).QueryRow(&max_id)
+	if err != nil {
+		logs.Error(lib.FuncName(), err)
+		return err
+	}
+	// ALTER TABLE z_task_data_lg9v2zpfem7b AUTO_INCREMENT = 39905;
+	sql = "ALTER TABLE z_task_data_" + T_task_id + " AUTO_INCREMENT = " + strconv.Itoa(max_id+1)
+	_, err = o.Raw(sql).Exec()
+	if err != nil {
+		logs.Error(lib.FuncName(), err)
+		return err
+	}
+	return nil
+}