|
|
@@ -2887,6 +2887,154 @@ func (this *OilSupplierController) CheckSupplierFileNew() {
|
|
|
this.ServeJSON()
|
|
|
}
|
|
|
|
|
|
+// @Title 检查缺资质
|
|
|
+// @Description
|
|
|
+// @Success 200 {object} controllers.Request
|
|
|
+// @router /checkSupplierFileDelete [post]
|
|
|
+func (this *OilSupplierController) CheckSupplierFileDelete() {
|
|
|
+ //获取主表信息
|
|
|
+ var supplierList []supplier.OilSupplier
|
|
|
+ var errinfo ErrorDataInfo
|
|
|
+ supplierService := supplier.GetOilSupplierService(utils.DBE)
|
|
|
+ supplierService.GetEntitysByWhere(OilSupplierName, "1=1", &supplierList)
|
|
|
+ //var total int64
|
|
|
+ //var total1 int64
|
|
|
+ for _, supplier := range supplierList {
|
|
|
+ var supplierCertEntity []suppliercert.OilSupplierCert
|
|
|
+ supplierService.GetEntitysByWhere("OilSupplierCert", "SupplierId = "+strconv.Itoa(supplier.Id), &supplierCertEntity)
|
|
|
+ for _, cert := range supplierCertEntity {
|
|
|
+ where2 := "("
|
|
|
+ where3 := "("
|
|
|
+ //对准入范围的判断
|
|
|
+ var certSubList []suppliercertsub.OilSupplierCertSub
|
|
|
+ certsubService := suppliercertsub.GetOilSupplierCertSubService(utils.DBE)
|
|
|
+ certsubService.GetListByCertId(strconv.Itoa(cert.Id), &certSubList)
|
|
|
+
|
|
|
+ // 查询出已有哪些资质
|
|
|
+ var tableheaderList []qualchange.OilQualChangeDetail1
|
|
|
+ fileSql := "SELECT * from OilSupplierFile WHERE SupplierId = " + strconv.Itoa(supplier.Id)
|
|
|
+ svcHeader := tableheader.GetTableHeaderService(utils.DBE)
|
|
|
+ svcHeader.DBE.SQL(fileSql).Find(&tableheaderList)
|
|
|
+ var companyHasHeaders string
|
|
|
+ for _, tableheader := range tableheaderList {
|
|
|
+ companyHasHeaders += tableheader.NeedFileType + ","
|
|
|
+ }
|
|
|
+ paramSvc := baseparameter.GetBaseparameterService(utils.DBE)
|
|
|
+ filesvc := supplierfile.GetSupplierfileService(utils.DBE)
|
|
|
+ mergerCertSkipField := paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MergerCertSkipFieldName")
|
|
|
+
|
|
|
+ var ids suppliercertsub.Ids
|
|
|
+ var ids1 suppliercertsub.Ids
|
|
|
+ certsubService.GetIds(strconv.Itoa(cert.Id), cert.SupplierTypeCode, &ids, 3)
|
|
|
+
|
|
|
+ var needList []supplierfile.FileList
|
|
|
+ var needList1 []supplierfile.FileList
|
|
|
+
|
|
|
+ if cert.SupplierTypeCode == "01" {
|
|
|
+ //需要的资质
|
|
|
+ needList1 = filesvc.GetGoodsNeedFileListNew(ids.Id, "2")
|
|
|
+ if supplier.OperType == "制造商" { //制造商
|
|
|
+ //如果是制造商,准入范围按照各项准入范围的类型判断
|
|
|
+ var ids suppliercertsub.Ids
|
|
|
+ // 制造
|
|
|
+ certsubService.GetIds(strconv.Itoa(cert.Id), cert.SupplierTypeCode, &ids, 1)
|
|
|
+ // 非制造
|
|
|
+ certsubService.GetIds(strconv.Itoa(cert.Id), cert.SupplierTypeCode, &ids1, 2)
|
|
|
+ needList = filesvc.GetGoodsNeedFileListNew(ids.Id, "1")
|
|
|
+ needList1 = filesvc.GetGoodsNeedFileListNew(ids1.Id, "2")
|
|
|
+ //for _, need := range needList1 {
|
|
|
+ // needList = append(needList, need)
|
|
|
+ //}
|
|
|
+ }
|
|
|
+ } else if cert.SupplierTypeCode == "02" {
|
|
|
+ needList = filesvc.GetBasicNeedFileListNew(ids.Id)
|
|
|
+ } else if cert.SupplierTypeCode == "03" {
|
|
|
+ needList = filesvc.GetTechNeedFileListNew(ids.Id)
|
|
|
+ }
|
|
|
+
|
|
|
+ for _, needHeader := range needList {
|
|
|
+ if (supplier.CredentialFlag == "1" || supplier.CredentialFlag == "2") &&
|
|
|
+ strings.Contains(mergerCertSkipField, needHeader.FileName+",") {
|
|
|
+ //三证合一或五证合一的证件,不需要验证了
|
|
|
+ continue
|
|
|
+ }
|
|
|
+
|
|
|
+ if !strings.Contains(companyHasHeaders, needHeader.FileName+",") {
|
|
|
+ var header tableheader.BaseTableheader
|
|
|
+ where1 := "Name = '" + needHeader.FileName + "' and CategoryCode = '" + cert.SupplierTypeCode + "'"
|
|
|
+ if cert.SupplierTypeCode == "01" {
|
|
|
+ where1 += " and IsManuf != '2'"
|
|
|
+ }
|
|
|
+ supplierService.GetEntityByWhere(BaseTableHeader, where1, &header)
|
|
|
+ if header.Code != "" {
|
|
|
+ if where2 == "(" {
|
|
|
+ where2 += header.Code + " = '1'"
|
|
|
+ } else {
|
|
|
+ where2 += " or " + header.Code + " = '1'"
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Print("22222")
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for _, needHeader := range needList1 {
|
|
|
+ if (supplier.CredentialFlag == "1" || supplier.CredentialFlag == "2") &&
|
|
|
+ strings.Contains(mergerCertSkipField, needHeader.FileName+",") {
|
|
|
+ //三证合一或五证合一的证件,不需要验证了
|
|
|
+ continue
|
|
|
+ }
|
|
|
+
|
|
|
+ if !strings.Contains(companyHasHeaders, needHeader.FileName+",") {
|
|
|
+ var header tableheader.BaseTableheader
|
|
|
+ where1 := "Name = '" + needHeader.FileName + "' and CategoryCode = '" + cert.SupplierTypeCode + "'"
|
|
|
+ if cert.SupplierTypeCode == "01" {
|
|
|
+ // 非制造商
|
|
|
+ where1 += " and IsManuf != '1'"
|
|
|
+ }
|
|
|
+ supplierService.GetEntityByWhere(BaseTableHeader, where1, &header)
|
|
|
+ if header.Code != "" {
|
|
|
+ if where3 == "(" {
|
|
|
+ where3 += header.Code + " = '1'"
|
|
|
+ } else {
|
|
|
+ where3 += " or " + header.Code + " = '1'"
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Print("11111")
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if where2 == "(" && where3 == "(" {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if cert.SupplierTypeCode != "01" && where2 == "(" {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ where2 += ") and a.SupplierId = " + strconv.Itoa(supplier.Id) + " and a.SupplierTypeCode = '" + cert.SupplierTypeCode + "'"
|
|
|
+ where3 += ") and a.SupplierId = " + strconv.Itoa(supplier.Id) + " and a.SupplierTypeCode = '" + cert.SupplierTypeCode + "'"
|
|
|
+ var certSub []suppliercertsub.OilSupplierCertSub
|
|
|
+ if cert.SupplierTypeCode == "01" {
|
|
|
+ if supplier.OperType == "制造商" {
|
|
|
+ where2 += " and IsManufacturer != 2"
|
|
|
+ where3 += " and IsManufacturer = 2"
|
|
|
+ supplierService.GetDeleteSub(OilGoodsAptitudeName, where2, &certSub)
|
|
|
+ supplierService.GetDeleteSub(OilGoodsAptitudeName, where3, &certSub)
|
|
|
+ } else {
|
|
|
+ supplierService.GetDeleteSub(OilGoodsAptitudeName, where2, &certSub)
|
|
|
+ }
|
|
|
+ } else if cert.SupplierTypeCode == "02" {
|
|
|
+ supplierService.GetDeleteSub(OilBasisBuildName, where2, &certSub)
|
|
|
+ } else {
|
|
|
+ supplierService.GetDeleteSub(OilTechnologyServiceName, where2, &certSub)
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ errinfo.Code = 1
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+}
|
|
|
+
|
|
|
// @Title 对外-招投标系统
|
|
|
// @Description
|
|
|
// @Success 200 {object}
|