Explorar el Código

后:老数据导入bug

dubch hace 5 años
padre
commit
8527c52d8c

+ 10 - 6
src/dashoo.cn/backend/api/business/tmpzcgf/tmpzcgfSession.go

@@ -308,12 +308,11 @@ func (s *TmpzcgtSession) InsertCertSub() error {
 					t.物资编码 AS code,
 					t.产品名称 AS name
 				FROM T_资格预审表_JRMX t
-				FORCE INDEX (auto_id)
 				ORDER BY t.auto_id ` +
 				" limit " + start + "," +  end
 			_, err = s.DBE.Query(sql)
-			//s.DBE.Query("COMMIT;")
 		}
+		s.DBE.Query("COMMIT;")
 		s.DBE.Query("SET autocommit=1;")
 		s.DBE.Query("SET unique_checks=1;")
 		s.DBE.Query("ALTER TABLE `OilSupplierCertSub` ENABLE KEYS;")
@@ -348,7 +347,7 @@ func (s *TmpzcgtSession) UpdateCertSub() error {
 
 func (s *TmpzcgtSession) UpdateCertSub01classId(where string) error {
 
-	sql1 := "UPDATE OilSupplierCertSub left join OilGoodsAptitudeClass a ON a.Code = b.Code b SET b.SubClassId = a.Id " +
+	sql1 := "UPDATE OilSupplierCertSub b left join OilGoodsAptitudeClass a ON a.Code = b.Code SET b.SubClassId = a.Id " +
 		"WHERE b.SupplierTypeCode = '01'" + where
 	_, err := s.DBE.Query(sql1)
 	return err
@@ -365,7 +364,7 @@ func (s *TmpzcgtSession) UpdateCertSub02classId(where string) error {
 func (s *TmpzcgtSession) UpdateCertSub03classId(where string) error {
 	/** sql3 := "UPDATE OilSupplierCertSub b SET b.SubClassId = (SELECT a.Id FROM OilBasisBuild a WHERE a.Code = b.Code ) " +
 		"WHERE b.SupplierTypeCode = '03'" + where */
-	sql3 := "UPDATE OilSupplierCertSub b left join OilBasisBuild a ON a.Code = b.Code SET b.SubClassId = a.Id " +
+	sql3 := "UPDATE OilSupplierCertSub b left join OilTechnologyServiceClass a ON a.Code = b.Code SET b.SubClassId = a.Id " +
 		"WHERE b.SupplierTypeCode = '03'" + where
 	_, err := s.DBE.Query(sql3)
 	return err
@@ -412,6 +411,7 @@ func (s *TmpzcgtSession) InsertOilSupplierCertAppend() error {
 	// " ORDER BY a.`申请日期`, a.`企业名称`, a.`准入类别` "
 	_, err = s.DBE.Query(sql)
 
+	s.DBE.Query("COMMIT;")
 	s.DBE.Query("SET unique_checks=1;")
 
 	// s.DBE.Query("ALTER TABLE `T_增项` drop INDEX index_import;")
@@ -517,7 +517,11 @@ func (s *TmpzcgtSession) UpdateOilSupplierCertAppendSub() error {
 		appendCodeList := strings.Split(certAppend.Remark, ",")
 		appendCodeString := "("
 		for _, appendCode := range appendCodeList {
-			appendCodeString += " (a.Code LIKE '"  + appendCode + "%') or"
+			if len(appendCode) < 8 {
+				appendCodeString += " (a.Code LIKE '"  + appendCode + "%') or"
+			} else {
+				appendCodeString += " (a.Code = '"  + appendCode + "') or"
+			}
 		}
 		code := strings.TrimRight(appendCodeString, "or")
 		sql := "UPDATE OilSupplierCertSub a SET a.ModifiedOn = '2020-12-11 18:07:07', a.SupplierCertAppendId=" + strconv.Itoa(certAppend.Id) +
@@ -538,7 +542,7 @@ func (s *TmpzcgtSession) InsertFileName() error {
 		"SELECT 0 AS SupplierId, 0 AS SupplierCertSubId, z.企业名称 AS Remark ,f.类别 AS NeedFileType, f.说明 AS OtherRemark, " +
 		"( CASE 准入类别 WHEN '物资类' THEN '01' WHEN '基建类' THEN '02' WHEN '服务类' THEN '03' WHEN '技术服务类' THEN '03' else '000' END ) SupplierTypeCode, " +
 		"'导入' AS CreateBy " +
-		"FROM `tmp_file` f " +
+		"FROM `T_供方资料` f " +
 		"LEFT JOIN `T_资格预审表` z ON (f.ID_GF = z.ID) " +
 		"WHERE z.企业名称 IS NOT NULL "
 	_, err := s.DBE.Query(sql)

+ 26 - 25
src/dashoo.cn/backend/api/controllers/tmpzcgf/tmpzcgf.go

@@ -1,13 +1,15 @@
 package tmpzcgf
 
 import (
+	"dashoo.cn/backend/api/business/oilsupplier/basisbuild"
 	"dashoo.cn/backend/api/business/oilsupplier/goodsaptitudeclass"
 	"dashoo.cn/backend/api/business/oilsupplier/suppliercertappend"
+	"dashoo.cn/backend/api/business/oilsupplier/technologyserviceclass"
 	"fmt"
+	"strconv"
 	"time"
 
 	"dashoo.cn/backend/api/business/oilsupplier/infochange"
-	"dashoo.cn/backend/api/business/oilsupplier/supplier"
 	"dashoo.cn/backend/api/business/oilsupplier/suppliercert"
 	"dashoo.cn/backend/api/business/oilsupplier/suppliercertsub"
 	"dashoo.cn/backend/api/business/tmpzcgf"
@@ -414,29 +416,28 @@ func (this *TmpzcgfController) UpdateCertSubclassID() {
 	}()
 	// err := session.Begin()
 	svc := tmpzcgf.GetTmpzcgtService(utils.DBE)
-	var supplierlist []supplier.OilSupplier
-	where := "CreateBy='导入'"
-	svc.GetEntities(&supplierlist, where)
-	for _, item := range supplierlist {
-		where := " and  b.Type = '1' and b.CreateBy='导入1' and b.Remark = '" + item.SupplierName + "'"
-		err := svc.UpdateCertSub01classId(where)
-		if err != nil {
-			fmt.Println(err)
-			// session.Rollback()
-			// return
-		}
-		err = svc.UpdateCertSub02classId(where)
-		if err != nil {
-			fmt.Println(err)
-			//session.Rollback()
-			//return
-		}
-		err = svc.UpdateCertSub03classId(where)
-		if err != nil {
-			fmt.Println(err)
-			// session.Rollback()
-			// return
-		}
+	var goodsAptitudeClassList []goodsaptitudeclass.OilGoodsAptitudeClass
+	where := "1=1"
+	svc.GetEntities(&goodsAptitudeClassList, where)
+	for _, item := range goodsAptitudeClassList {
+		sql := "UPDATE OilSupplierCertSub SET SubClassId = " + strconv.Itoa(item.Id)  + " WHERE SupplierTypeCode = '01' and Type in (1, 3) and CreateBy='导入1' and Code = '" + item.Code + "'"
+		svc.DBE.Query(sql)
+	}
+
+	var basisBuildList []basisbuild.OilBasisBuild
+	where1 := "1=1"
+	svc.GetEntities(&basisBuildList, where1)
+	for _, item := range basisBuildList {
+		sql := "UPDATE OilSupplierCertSub SET SubClassId = " + strconv.Itoa(item.Id)  + " WHERE SupplierTypeCode = '02' and Type in (1, 3) and CreateBy='导入1' and Code = '" + item.Code + "'"
+		svc.DBE.Query(sql)
+	}
+
+	var technologyServiceClassList []technologyserviceclass.OilTechnologyServiceClass
+	where2 := "1=1"
+	svc.GetEntities(&technologyServiceClassList, where2)
+	for _, item := range technologyServiceClassList {
+		sql := "UPDATE OilSupplierCertSub SET SubClassId = " + strconv.Itoa(item.Id)  + " WHERE SupplierTypeCode = '03' and Type in (1, 3) and CreateBy='导入1' and Code = '" + item.Code + "'"
+		svc.DBE.Query(sql)
 	}
 
 	// err = session.Commit()
@@ -871,7 +872,7 @@ func (this *TmpzcgfController) InsertAll() {
 		this.InsertOilSupplierCertAppend()
 		this.UpdateOilSupplierCertAppend()
 		this.UpdateOilSupplierCertAppendSub() // 更新增项的准入范围
-
+		this.UpdateCertSubclassID()
 		// this.CapacityExpansion() // 编码扩充 --弃用
 		// 历史数据导入-由于运行到此处中断,上面的代码临时注释
 		this.InsterAnnualAudit()