Browse Source

前后:对比列表

dubch 5 năm trước cách đây
mục cha
commit
0e1288fb3c

+ 9 - 1
src/dashoo.cn/backend/api/business/oilsupplier/goodsaptitude/oilgoodsaptitudeService.go

@@ -369,8 +369,10 @@ func (s *OilGoodsAptitudeService) GetPagingTmpCheckedEntities(entitiesPtr interf
 			a.LegalPerson,a.RegCapital,a.Mobile,b.AuditDate,b.ApplyTime,b.InFlag,
 			a.ContactName,a.CommercialNo,a.LinkAddress,a.LinkProvince,
 			a.LinkCity,a.LinkStreet,a.BusinessScope,b.InStyle, b.Id CertId,
-			group_concat(DISTINCT header.Code) AS headerCodes,
+			group_concat(DISTINCT header.Code) AS HeaderCodes,
 			min(sub.SubClassId) as MinClassId,
+			COUNT(goods.GoodsLevel < sub.GoodsLevel or null) AS OneTwoCount,
+			COUNT(goods.GoodsLevel > sub.GoodsLevel or null) AS TwoOneCount,
 			(
 			((if((max(goods.F01)='1' AND LOCATE('F01', group_concat(DISTINCT header.Code)) > 0) or (max(goods.F01) is null) or (max(goods.F01) = ''), TRUE, FALSE)) or 
 			(if((max(goods.F36)='1' AND LOCATE('F36',  group_concat(DISTINCT header.Code)) > 0) or (max(goods.F36) is null) or (max(goods.F36) = ''), TRUE, FALSE)) or
@@ -567,4 +569,10 @@ func (s *OilGoodsAptitudeService) GetTableTotal(where string) (total int64) {
 	total = totalResult.Total
 
 	return total
+}
+
+func (s *OilGoodsAptitudeService) GetEntityByCode(where string, entityPtr interface{}) (has bool) {
+	sql := "SELECT COUNT((sub.GoodsLevel < goods.GoodsLevel) or null) AS OneTwoCount,COUNT((sub.GoodsLevel > goods.GoodsLevel) or null) AS TwoOneCount FROM OilSupplierCertSub sub LEFT JOIN tmp_OilGoodsAptitude goods ON sub.SubClassId=goods.ClassId where (" + where + ")"
+	s.DBE.SQL(sql).Get(entityPtr)
+	return
 }

+ 2 - 0
src/dashoo.cn/backend/api/business/oilsupplier/supplier/oilsupplier.go

@@ -284,6 +284,8 @@ type OilSupplierContrast struct {
 	SubClassIds           string
 	Checked           string   // 0没问题 1缺资质 2准入范围找不到
 	MinClassId           string   // subclassid的最小值
+	OneTwoCount         int   // 1变2
+	TwoOneCount           int   // 2变1
 }
 
 //type NeedFileTypeStruct struct {

+ 1 - 0
src/dashoo.cn/backend/api/business/oilsupplier/suppliercertsub/oilsuppliercertsub.go

@@ -49,6 +49,7 @@ type OilSupplierCertSub1 struct {
 	ModifiedOn           time.Time `xorm:"DATETIME"`
 	ModifiedUserId       int       `xorm:"INT(10)"`
 	ModifiedBy           string    `xorm:"VARCHAR(50)"`
+	DueTime           	 string    `xorm:"VARCHAR(50)"`
 	HeaderCodes           string
 	Checked           int
 	HeaderName           string

+ 1 - 1
src/dashoo.cn/backend/api/conf/app.conf

@@ -80,7 +80,7 @@ OriginUrl=http://localhost:8081/api
 AposeUrl=http://localhost:8081/api/apose
 BaseUrl=http://localhost:8081/api/acti
 
-ContrastExcel=http://weed1.labsop.cn:9390/5,03cc0d8cade7ce
+ContrastExcel=http://weed1.labsop.cn:9390/2,03cdc4f3a28a95
 
 [bank]
 callbackHost=http://localhost:10091/api

+ 82 - 3
src/dashoo.cn/backend/api/controllers/oilsupplier/goodsaptitude.go

@@ -1727,10 +1727,14 @@ func (this *OilGoodsAptitudeController) CreateContrast() {
 		where := "  b.SupplierTypeCode='01' and a.Id = " + strconv.Itoa(item.Id)
 		svc.GetPagingTmpCheckedEntities(&list, where)
 		if list != nil {
-			total := svc.GetTableTotal(" SupplierId = " + strconv.Itoa(item.Id))
-			total1 := svc.GetTableTotal(" SubClassId = 0 and SupplierId = " + strconv.Itoa(item.Id))
+			total := svc.GetTableTotal(" SupplierTypeCode='01' AND SupplierId = " + strconv.Itoa(item.Id))
+			total1 := svc.GetTableTotal(" SupplierTypeCode='01' AND SubClassId = 0 AND SupplierId = " + strconv.Itoa(item.Id))
 			list[0].SubCnt = int(total)
 			list[0].NoSubCnt = int(total1)
+			var oneTwo supplier.OilSupplierContrast
+			svc.GetEntityByCode("SupplierTypeCode = '01' and SupplierId = "+ strconv.Itoa(list[0].Id), &oneTwo)
+			list[0].OneTwoCount = oneTwo.OneTwoCount
+			list[0].TwoOneCount = oneTwo.TwoOneCount
 			svc.InsertEntityBytbl("OilSupplierContrast", list[0])
 			svc.DBE.Query("commit;")
 		}
@@ -1823,7 +1827,7 @@ func (this *OilGoodsAptitudeController) InsertGoodsAptitude() {
 
 	session.Commit()
 	errinfo.Code = 0
-	errinfo.Message = "更新成功!"
+	errinfo.Message = "更新成功,即将操作企业准入范围!"
 	this.Data["json"] = &errinfo
 	this.ServeJSON()
 
@@ -3029,4 +3033,79 @@ func (this *OilGoodsAptitudeController) PdfExport() {
 	this.Data["json"] = &datainfo
 	this.ServeJSON()
 
+}
+
+// @Title 确认更新后的删除/暂停企业准入范围
+// @Description 修改实体
+// @Success	200	{object} controllers.Request
+// @router /delete-suspend [post]
+func (this *OilGoodsAptitudeController) DeleteSuspend() {
+	var errinfo ErrorInfo
+	var err error
+	var list []supplier.OilSupplierContrast
+	svc := goodsaptitude.GetOilGoodsAptitudeService(utils.DBE)
+	svc.GetEntitysByWhere("OilSupplierContrast", "TwoOneCount = 0", &list)
+	for _,item := range list{
+		var sub []suppliercertsub.OilSupplierCertSub
+		svc.GetEntitysByWhere("OilSupplierCertSub", "SupplierTypeCode = '01' and SupplierId = " + strconv.Itoa(item.Id), &sub)
+		for _, itemSub := range sub {
+			sql := "SELECT CONCAT_WS(',',IF(ifnull(F01, '') = '', '', F01),IF(ifnull(F02, '') = '', '', F02),IF(ifnull(F03, '') = '', '', F03),IF(ifnull(F04, '') = '', '', F04),IF(ifnull(F05, '') = '', '', F05),IF(ifnull(F06, '') = '', '', F06),IF(ifnull(F07, '') = '', '', F07),IF(ifnull(F08, '') = '', '', F08),IF(ifnull(F09, '') = '', '', F09),IF(ifnull(F10, '') = '', '', F10),IF(ifnull(F11, '') = '', '', F11),IF(ifnull(F12, '') = '', '', F12),IF(ifnull(F13, '') = '', '', F13),IF(ifnull(F14, '') = '', '', F14),IF(ifnull(F15, '') = '', '', F15),IF(ifnull(F16, '') = '', '', F16),IF(ifnull(F17, '') = '', '', F17),IF(ifnull(F18, '') = '', '', F18),IF(ifnull(F19, '') = '', '', F19),IF(ifnull(F20, '') = '', '', F20),IF(ifnull(F21, '') = '', '', F21),IF(ifnull(F22, '') = '', '', F22),IF(ifnull(F23, '') = '', '', F23),IF(ifnull(F24, '') = '', '', F24),IF(ifnull(F25, '') = '', '', F25),IF(ifnull(F26, '') = '', '', F26),IF(ifnull(F27, '') = '', '', F27),IF(ifnull(F28, '') = '', '', F28),IF(ifnull(F29, '') = '', '', F29),IF(ifnull(F30, '') = '', '', F30),IF(ifnull(F31, '') = '', '', F31),IF(ifnull(F32, '') = '', '', F32),IF(ifnull(F33, '') = '', '', F33),IF(ifnull(F34, '') = '', '', F34),IF(ifnull(F35, '') = '', '', F35),IF(ifnull(F36, '') = '', '', F36),IF(ifnull(F37, '') = '', '', F37),IF(ifnull(F38, '') = '', '', F38),IF(ifnull(F39, '') = '', '', F39),IF(ifnull(F40, '') = '', '', F40),IF(ifnull(F41, '') = '', '', F41),IF(ifnull(F42, '') = '', '', F42),IF(ifnull(F43, '') = '', '', F43),IF(ifnull(F44, '') = '', '', F44),IF(ifnull(F45, '') = '', '', F45),IF(ifnull(F46, '') = '', '', F46)) AS Codes,a.GoodsLevel  FROM OilGoodsAptitude a LEFT JOIN OilGoodsAptitudeClass class ON a.ClassId = class.Id"
+			sql += " where class.Code = '"+ itemSub.Code + "' and class.Name = '" + itemSub.Name + "'"
+			model, _ := svc.DBE.QueryString(sql)
+			var subDelete suppliercertsub.OilSupplierCertSub1
+			if model != nil {
+				code := strings.Split(model[0]["Codes"], ",")
+				cols := []string{"GoodsLevel"}
+				subDelete.GoodsLevel = model[0]["GoodsLevel"]
+
+				// 1降2修改
+				if item.OneTwoCount > 0 {
+					svc.UpdateEntityBywheretbl(OilSupplierCertSubName, &subDelete, cols, "Id = "+strconv.Itoa(itemSub.Id))
+				}
+				cols = append(cols, "DueTime")
+				cols = append(cols, "CertSubStatus")
+				subDelete.CertSubStatus = "2"
+				subDelete.DueTime = "2021-06-06 00:00:00"
+				i := 1
+				//暂停
+				for _, value := range code {
+					if i == 36 || i == 37 || i == 1 {
+						if (code[0] == "1" && strings.Index(item.HeaderCodes, "F01") < 0) && (code[35] == "1" && strings.Index(item.HeaderCodes, "F36") < 0) && (code[36] == "1" && strings.Index(item.HeaderCodes, "F37") < 0) {
+							svc.UpdateEntityBywheretbl(OilSupplierCertSubName, &subDelete, cols, "Id = " + strconv.Itoa(itemSub.Id))
+							break
+						}
+					} else if i > 10 {
+						if value == "1" && strings.Index(item.HeaderCodes, "F"+strconv.Itoa(i)) < 0 {
+							svc.UpdateEntityBywheretbl(OilSupplierCertSubName, &subDelete, cols, "Id = " + strconv.Itoa(itemSub.Id))
+							break
+						}
+					} else {
+						if value == "1" && strings.Index(item.HeaderCodes, "F0"+strconv.Itoa(i)) < 0 {
+							svc.UpdateEntityBywheretbl(OilSupplierCertSubName, &subDelete, cols, "Id = " + strconv.Itoa(itemSub.Id))
+							break
+						}
+					}
+					i += 1
+				}
+			} else {
+				// 删除
+				svc.DeleteEntityById(itemSub.Id, &subDelete)
+			}
+		}
+		svc.DeleteTable("OilSupplierContrast", "Id = " + strconv.Itoa(item.Id))
+	}
+
+
+
+	if err == nil {
+		errinfo.Message = "修改成功!"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	} else {
+		errinfo.Message = "修改成功失败!"
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	}
 }

+ 8 - 5
src/dashoo.cn/frontend_web/src/pages/oilsupplier/goodsaptitude/index.vue

@@ -19,9 +19,9 @@
 
           <el-button type="warning" plain size="mini" style="margin-left:20px; margin-top: -4px;" @click="showimport">更新物资编码
           </el-button>
-          <router-link :to="'/oilsupplier/goodsaptitude/_opera/showdelcertsub'">
-            <el-button type="warning" plain size="mini" style="margin-left:10px; margin-top: -4px;">查看待删除准入项</el-button>
-          </router-link>
+<!--          <router-link :to="'/oilsupplier/goodsaptitude/_opera/showdelcertsub'">-->
+<!--            <el-button type="warning" plain size="mini" style="margin-left:10px; margin-top: -4px;">查看待删除准入项</el-button>-->
+<!--          </router-link>-->
 
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
@@ -309,7 +309,7 @@
             </el-button>
             <el-button type="warning" size="mini" style="margin-left:10px; margin-top: -4px;" @click="truncateimport()">清空所有导入
             </el-button>
-            <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="confirmImport()">确认更新
+            <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="confirmImport()" :loading="confirmLoading">确认更新
             </el-button>
           </span>
           <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
@@ -500,6 +500,7 @@
       return {
         deleteDialogVisible: false,
         importloading: false,
+        confirmLoading: false,
         textarea: '',
         showimportvisible: false,
         Excelurl: '',
@@ -900,6 +901,7 @@
         })
       },
       confirmImport () {
+        this.confirmLoading = true
         this.$confirm('此操作将更新原有数据, 是否继续?', '提示', {
           confirmButtonText: '确定',
           cancelButtonText: '取消',
@@ -913,13 +915,14 @@
                 message: res.data.message
               })
               this.initDatas()
-              this.updatasuppiercertsub()
+              // this.updatasuppiercertsub()
             } else {
               this.$message({
                 type: 'warning',
                 message: res.data.message
               })
             }
+            this.confirmLoading = false
           })
         })
       },

+ 3 - 1
src/dashoo.cn/frontend_web/src/pages/oilsupplier/goodsaptitude/tmpsuppliercheck.vue

@@ -22,7 +22,7 @@
       </div>
 
       <!--内框表格显示-->
-      <el-table id="rebateSetTable1" highlight-current-row :data="conList" size="mini" v-loading="loading" border height="calc(100vh - 243px)"
+      <el-table id="rebateSetTable1" :data="conList" size="mini" v-loading="loading" border height="calc(100vh - 243px)"
                 style="width: 100%" @sort-change="orderby" :row-class-name="tableRowClassName">
         <el-table-column label="操作" width="260px" align="center" fixed="right" show-overflow-tooltip>
           <template slot-scope="scope">
@@ -53,6 +53,8 @@
         <el-table-column label="移动电话"  width="120px" prop="Mobile" align="center"></el-table-column>
         <el-table-column label="准入范围数量"  width="120px" prop="SubCnt" align="center"></el-table-column>
         <el-table-column label="对不上数量"  width="120px" prop="NoSubCnt" align="center"></el-table-column>
+        <el-table-column label="1级降2级数量"  width="120px" prop="OneTwoCount" align="center"></el-table-column>
+        <el-table-column label="2级升1级数量"  width="120px" prop="TwoOneCount" align="center"></el-table-column>
         <el-table-column label="是否缺资质" width="130px" prop="Checked" sortable align="center">
           <template slot-scope="scope" >
             <span style="font-family:'黑体';font-size:13px">{{stringChecked(scope.row.Checked)}}</span>