|
|
@@ -363,7 +363,7 @@ func (this *OilSupplierCertSubController) AddGoodsBus() {
|
|
|
svcSupplier := supplier.GetOilSupplierService(utils.DBE)
|
|
|
svcSupplier.GetEntityById(datamain.SupplierId, &supplierModel)
|
|
|
|
|
|
- LABEL1:
|
|
|
+LABEL1:
|
|
|
for n := 0; n < len(dataother.CheckList); n++ {
|
|
|
where_sub := "SupplierTypeCode = 01 and SupplierId = '" + strconv.Itoa(dataother.SupplierId) + "'"
|
|
|
where_sub += " and SupplierCertId = '" + strconv.Itoa(dataother.SupplierCertId) + "'"
|
|
|
@@ -422,7 +422,7 @@ func (this *OilSupplierCertSubController) AddGoodsBus() {
|
|
|
}
|
|
|
|
|
|
var Havelist []supplierfile.OilSupplierFile // 已经有的资质
|
|
|
- where := "SupplierTypeCode in (01,000) and IsManuf in ('0','"+ strconv.Itoa(datamain.IsManufacturer) +"', '') and SupplierId = '" + strconv.Itoa(dataother.SupplierId) + "'"
|
|
|
+ where := "SupplierTypeCode in (01,000) and IsManuf in ('0','" + strconv.Itoa(datamain.IsManufacturer) + "', '') and SupplierId = '" + strconv.Itoa(dataother.SupplierId) + "'"
|
|
|
svc.GetEntitysByWhere(OilSupplierFileName, where, &Havelist)
|
|
|
|
|
|
//三证合一或五证合一不需要的字段
|
|
|
@@ -430,7 +430,6 @@ func (this *OilSupplierCertSubController) AddGoodsBus() {
|
|
|
//"营业执照,组织代码,组织机构代码证,税务登记证,税务登记,开户许可,银行开户许可证,承诺书,诚信合规承诺书,企业信息系统截图,战略合作协议扫描件,"
|
|
|
mustField := paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MustFieldName")
|
|
|
|
|
|
-
|
|
|
for i := 0; i < len(needList); i++ {
|
|
|
var entity supplierfile.OilSupplierFile
|
|
|
entity.SupplierId = dataother.SupplierId
|
|
|
@@ -993,6 +992,320 @@ func (this *OilSupplierCertSubController) UpdateStatus() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+// @Title 批量修改是否为制造商
|
|
|
+// Update by wanglin 7-11
|
|
|
+// @Description
|
|
|
+// @router /updatemanufacturer/:Id/:SupplierId/:IsManufacturer [get]
|
|
|
+func (this *OilSupplierCertSubController) SetManufacturer() {
|
|
|
+ Ids := this.Ctx.Input.Param(":Id")
|
|
|
+ IsManufacturer := this.Ctx.Input.Param(":IsManufacturer")
|
|
|
+ SupplierId := this.Ctx.Input.Param(":SupplierId")
|
|
|
+ SupplierTypeCode := "01"
|
|
|
+
|
|
|
+ svc := suppliercertsub.GetOilSupplierCertSubService(utils.DBE)
|
|
|
+ var CertSublList []suppliercertsub.OilSupplierCertSub
|
|
|
+ where := "SupplierId=" + SupplierId + " and Id not in (" + Ids + ") and SupplierTypeCode ='" + SupplierTypeCode + "'" // 没有删除的准入范围
|
|
|
+ svc.GetEntities(&CertSublList, where)
|
|
|
+ var SupplierCertId int
|
|
|
+ for _, CertSub := range CertSublList {
|
|
|
+ SupplierCertId = CertSub.SupplierCertId
|
|
|
+ }
|
|
|
+
|
|
|
+ var supplierCertModel suppliercert.OilSupplierCert
|
|
|
+ svcCert := suppliercert.GetOilSupplierCertService(utils.DBE)
|
|
|
+ svcCert.GetEntityById(SupplierCertId, &supplierCertModel)
|
|
|
+
|
|
|
+ var supplierModel supplier.OilSupplier
|
|
|
+ svcSupplier := supplier.GetOilSupplierService(utils.DBE)
|
|
|
+ svcSupplier.GetEntityById(SupplierId, &supplierModel)
|
|
|
+
|
|
|
+ var error error
|
|
|
+
|
|
|
+ if IsManufacturer == "2" {
|
|
|
+ var errinfo ErrorInfo
|
|
|
+ //根据Id查出OilSupplierCertSub的SubClassId
|
|
|
+ filesvc := supplierfile.GetSupplierfileService(utils.DBE)
|
|
|
+ paramSvc := baseparameter.GetBaseparameterService(utils.DBE)
|
|
|
+
|
|
|
+ SubClassIds := ""
|
|
|
+ for _, CertSub := range CertSublList {
|
|
|
+ SubClassIds += strconv.Itoa(CertSub.SubClassId) + ","
|
|
|
+ }
|
|
|
+ var SurplusList []supplierfile.FileList
|
|
|
+ SubClassIds = strings.Trim(SubClassIds, ",")
|
|
|
+ if SubClassIds != "" {
|
|
|
+ if SupplierTypeCode == "01" {
|
|
|
+ var CertSublList2 []suppliercertsub.OilSupplierCertSub
|
|
|
+ wheregood := "SupplierId=" + SupplierId + " and Id not in (" + Ids + ") and SupplierTypeCode =" + SupplierTypeCode + " and IsManufacturer =" + IsManufacturer // 没有删除的准入范围
|
|
|
+ svc.GetEntities(&CertSublList2, wheregood)
|
|
|
+ SubClassIds2 := ""
|
|
|
+ for _, CertSub := range CertSublList2 {
|
|
|
+ SubClassIds2 += strconv.Itoa(CertSub.SubClassId) + ","
|
|
|
+ }
|
|
|
+ SubClassIds2 = strings.Trim(SubClassIds2, ",")
|
|
|
+ SurplusList = filesvc.GetGoodsNeedFileList(SubClassIds2, IsManufacturer)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ fileNames := ""
|
|
|
+ for _, CertSub := range SurplusList {
|
|
|
+ fileNames += CertSub.FileName + ","
|
|
|
+ }
|
|
|
+ var datamain suppliercertsub.OilSupplierCertSub //创建OilSupplierCertSub结构体(映射用)
|
|
|
+ var datamain2 []suppliercertsub.OilSupplierCertSub //空的查询用
|
|
|
+
|
|
|
+ //where = " Id= " + Id
|
|
|
+ where = " Id in( " + Ids + ") "
|
|
|
+
|
|
|
+ svc.GetEntity(&datamain, where) //根据Id查找,映射结构体
|
|
|
+
|
|
|
+ //再根据企业id查找这个企业有几个准入范围(如果只有一个准入范围了,基本资质也删除)
|
|
|
+
|
|
|
+ supplierId := datamain.SupplierId
|
|
|
+ where = "SupplierId=" + strconv.Itoa(supplierId)
|
|
|
+ svc.GetEntities(&datamain2, where)
|
|
|
+ flag := 0
|
|
|
+ if len(datamain2) == 1 {
|
|
|
+ flag = 1
|
|
|
+ }
|
|
|
+ subClassId := datamain.SubClassId //4.拿到结构体中的准入范围SubClassId
|
|
|
+ //根据SubClassId查出此准入范围所拥有的资质名称
|
|
|
+ var needList []supplierfile.FileList //定义存储所拥有资质名称的数组
|
|
|
+ needList = filesvc.GetGoodsNeedFileList(strconv.Itoa(subClassId), IsManufacturer) //通过准入范围Id获得资质名称并填充数组
|
|
|
+
|
|
|
+ var mustField string
|
|
|
+ mustField = paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MustFieldName") //必需的资质
|
|
|
+
|
|
|
+ //根据企业ID(SupplierId)和此准入范围所拥有的资质名称删除OilSupplierFile表中对应的资质
|
|
|
+ for j := 0; j < len(needList); j++ { //循环遍历资质名称数组,逐条删除
|
|
|
+
|
|
|
+ if flag == 0 && strings.Contains(mustField, needList[j].FileName+",") {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if flag == 0 && strings.Contains(fileNames, needList[j].FileName+",") {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ where := " SupplierId= '" + strconv.Itoa(datamain.SupplierId) + "' and SupplierTypeCode =" + SupplierTypeCode + " and IsManuf='" + IsManufacturer + "' and NeedFileType='" + needList[j].FileName + "'" //拼接删除sql
|
|
|
+ err := svc.DeleteEntityBytbl(OilSupplierFileName, where) //删除第j条资质数据
|
|
|
+ if err == nil {
|
|
|
+ errinfo.Message = "删除成功"
|
|
|
+ errinfo.Code = 0
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+ } else {
|
|
|
+ errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
|
|
|
+ errinfo.Code = -1
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ needList = filesvc.GetGoodsNeedFileList(strconv.Itoa(subClassId), "1")
|
|
|
+ if supplierCertModel.InStyle == "4" {
|
|
|
+ var needFile supplierfile.FileList
|
|
|
+ //战略合作协议扫描件
|
|
|
+ needFile.FileName = paramSvc.GetBaseparameterMessage("GFGL", "paramset", "CooperationFile")
|
|
|
+ needList = append(needList, needFile)
|
|
|
+ }
|
|
|
+
|
|
|
+ var list []supplierfile.OilSupplierFile
|
|
|
+ where := "SupplierTypeCode in (01,000) and IsManuf in ('0','1') and SupplierId =" + strconv.Itoa(supplierId)
|
|
|
+ svc.GetEntitysByWhere(OilSupplierFileName, where, &list)
|
|
|
+
|
|
|
+ //三证合一或五证合一不需要的字段
|
|
|
+ mergerCertSkipField := paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MergerCertSkipFieldName")
|
|
|
+ //"营业执照,组织代码,组织机构代码证,税务登记证,税务登记,开户许可,银行开户许可证,承诺书,诚信合规承诺书,企业信息系统截图,战略合作协议扫描件,"
|
|
|
+ mustField = paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MustFieldName")
|
|
|
+
|
|
|
+ for i := 0; i < len(needList); i++ {
|
|
|
+ var entity supplierfile.OilSupplierFile
|
|
|
+ entity.SupplierId = supplierId
|
|
|
+
|
|
|
+ if (supplierModel.CredentialFlag == "1" || supplierModel.CredentialFlag == "2") && strings.Contains(mergerCertSkipField, needList[i].FileName+",") { //三证合一或五证合一了
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ //加入对应表OilSupplierCertFile
|
|
|
+ if strings.Contains(mustField, needList[i].FileName+",") {
|
|
|
+ entity.SupplierTypeCode = "000"
|
|
|
+ entity.IsManuf = "0"
|
|
|
+ } else {
|
|
|
+ entity.SupplierTypeCode = "01"
|
|
|
+ entity.IsManuf = "1"
|
|
|
+ }
|
|
|
+ entity.NeedFileType = needList[i].FileName
|
|
|
+ entity.FileType = 1
|
|
|
+ //entity.EffectDate = time.Now()
|
|
|
+ entity.CreateBy = this.User.Realname
|
|
|
+ entity.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
|
|
|
+ entity.SupType = 1
|
|
|
+
|
|
|
+ isRepeat := false
|
|
|
+ for j := 0; j < len(list); j++ {
|
|
|
+ if list[j].NeedFileType == needList[i].FileName {
|
|
|
+ isRepeat = true
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if isRepeat == true {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ svc.InsertEntityBytbl(OilSupplierFileName, &entity)
|
|
|
+ }
|
|
|
+ _, error = svc.DBE.Exec("update " + OilSupplierCertSubName + " set IsManufacturer =1 where Id in (" + Ids + ")")
|
|
|
+ } else if IsManufacturer == "1" {
|
|
|
+ var errinfo ErrorInfo
|
|
|
+
|
|
|
+ //根据Id查出OilSupplierCertSub的SubClassId
|
|
|
+ filesvc := supplierfile.GetSupplierfileService(utils.DBE)
|
|
|
+ paramSvc := baseparameter.GetBaseparameterService(utils.DBE)
|
|
|
+
|
|
|
+ SubClassIds := ""
|
|
|
+ for _, CertSub := range CertSublList {
|
|
|
+ SubClassIds += strconv.Itoa(CertSub.SubClassId) + ","
|
|
|
+ }
|
|
|
+ var SurplusList []supplierfile.FileList
|
|
|
+ SubClassIds = strings.Trim(SubClassIds, ",")
|
|
|
+ if SubClassIds != "" {
|
|
|
+ if SupplierTypeCode == "01" {
|
|
|
+ var CertSublList2 []suppliercertsub.OilSupplierCertSub
|
|
|
+ wheregood := "SupplierId=" + SupplierId + " and Id not in (" + Ids + ") and SupplierTypeCode =" + SupplierTypeCode + " and IsManufacturer =" + IsManufacturer // 没有删除的准入范围
|
|
|
+ svc.GetEntities(&CertSublList2, wheregood)
|
|
|
+ SubClassIds2 := ""
|
|
|
+ for _, CertSub := range CertSublList2 {
|
|
|
+ SubClassIds2 += strconv.Itoa(CertSub.SubClassId) + ","
|
|
|
+ }
|
|
|
+ SubClassIds2 = strings.Trim(SubClassIds2, ",")
|
|
|
+ SurplusList = filesvc.GetGoodsNeedFileList(SubClassIds2, IsManufacturer)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ fileNames := ""
|
|
|
+ for _, CertSub := range SurplusList {
|
|
|
+ fileNames += CertSub.FileName + ","
|
|
|
+ }
|
|
|
+ var datamain suppliercertsub.OilSupplierCertSub //创建OilSupplierCertSub结构体(映射用)
|
|
|
+ var datamain2 []suppliercertsub.OilSupplierCertSub //空的查询用
|
|
|
+
|
|
|
+ where = " Id in( " + Ids + ") "
|
|
|
+ //where = " Id= " + Id
|
|
|
+ svc.GetEntity(&datamain, where) //根据Id查找,映射结构体
|
|
|
+
|
|
|
+ //再根据企业id查找这个企业有几个准入范围(如果只有一个准入范围了,基本资质也删除)
|
|
|
+
|
|
|
+ supplierId := datamain.SupplierId
|
|
|
+ where = "SupplierId=" + strconv.Itoa(supplierId)
|
|
|
+ svc.GetEntities(&datamain2, where)
|
|
|
+ flag := 0
|
|
|
+ if len(datamain2) == 1 {
|
|
|
+ flag = 1
|
|
|
+ }
|
|
|
+ subClassId := datamain.SubClassId //4.拿到结构体中的准入范围SubClassId
|
|
|
+ //根据SubClassId查出此准入范围所拥有的资质名称
|
|
|
+ var needList []supplierfile.FileList //定义存储所拥有资质名称的数组
|
|
|
+ needList = filesvc.GetGoodsNeedFileList(strconv.Itoa(subClassId), IsManufacturer) //通过准入范围Id获得资质名称并填充数组
|
|
|
+
|
|
|
+ CNPCrenkezhengshu := paramSvc.GetBaseparameterMessage("GFGL", "paramset", "CNPCrenkezhengshu")
|
|
|
+ for _, item := range needList {
|
|
|
+ if CNPCrenkezhengshu == item.FileName {
|
|
|
+ errinfo.Message = "该准入项不能修改为非制造类!"
|
|
|
+ errinfo.Code = -2
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ var mustField string
|
|
|
+ mustField = paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MustFieldName") //必需的资质
|
|
|
+
|
|
|
+ //根据企业ID(SupplierId)和此准入范围所拥有的资质名称删除OilSupplierFile表中对应的资质
|
|
|
+ for j := 0; j < len(needList); j++ { //循环遍历资质名称数组,逐条删除
|
|
|
+
|
|
|
+ if flag == 0 && strings.Contains(mustField, needList[j].FileName+",") {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if flag == 0 && strings.Contains(fileNames, needList[j].FileName+",") {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ where := " SupplierId= '" + strconv.Itoa(datamain.SupplierId) + "' and SupplierTypeCode =" + SupplierTypeCode + " and IsManuf='" + IsManufacturer + "' and NeedFileType='" + needList[j].FileName + "'" //拼接删除sql
|
|
|
+ err := svc.DeleteEntityBytbl(OilSupplierFileName, where) //删除第j条资质数据
|
|
|
+ if err == nil {
|
|
|
+ errinfo.Message = "删除成功"
|
|
|
+ errinfo.Code = 0
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+ } else {
|
|
|
+ errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
|
|
|
+ errinfo.Code = -1
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ needList = filesvc.GetGoodsNeedFileList(strconv.Itoa(subClassId), "2")
|
|
|
+ if supplierCertModel.InStyle == "4" {
|
|
|
+ var needFile supplierfile.FileList
|
|
|
+ //战略合作协议扫描件
|
|
|
+ needFile.FileName = paramSvc.GetBaseparameterMessage("GFGL", "paramset", "CooperationFile")
|
|
|
+ needList = append(needList, needFile)
|
|
|
+ }
|
|
|
+
|
|
|
+ var list []supplierfile.OilSupplierFile
|
|
|
+ where := "SupplierTypeCode in (01,000) and IsManuf in ('0','2') and SupplierId =" + strconv.Itoa(supplierId)
|
|
|
+ svc.GetEntitysByWhere(OilSupplierFileName, where, &list)
|
|
|
+
|
|
|
+ //三证合一或五证合一不需要的字段
|
|
|
+ mergerCertSkipField := paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MergerCertSkipFieldName")
|
|
|
+ //"营业执照,组织代码,组织机构代码证,税务登记证,税务登记,开户许可,银行开户许可证,承诺书,诚信合规承诺书,企业信息系统截图,战略合作协议扫描件,"
|
|
|
+ mustField = paramSvc.GetBaseparameterMessage("GFGL", "paramset", "MustFieldName")
|
|
|
+
|
|
|
+ for i := 0; i < len(needList); i++ {
|
|
|
+ var entity supplierfile.OilSupplierFile
|
|
|
+ entity.SupplierId = supplierId
|
|
|
+
|
|
|
+ if (supplierModel.CredentialFlag == "1" || supplierModel.CredentialFlag == "2") && strings.Contains(mergerCertSkipField, needList[i].FileName+",") { //三证合一或五证合一了
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ //加入对应表OilSupplierCertFile
|
|
|
+ if strings.Contains(mustField, needList[i].FileName+",") {
|
|
|
+ entity.SupplierTypeCode = "000"
|
|
|
+ entity.IsManuf = "0"
|
|
|
+ } else {
|
|
|
+ entity.SupplierTypeCode = "01"
|
|
|
+ entity.IsManuf = "2"
|
|
|
+ }
|
|
|
+ entity.NeedFileType = needList[i].FileName
|
|
|
+ entity.FileType = 1
|
|
|
+ //entity.EffectDate = time.Now()
|
|
|
+ entity.CreateBy = this.User.Realname
|
|
|
+ entity.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
|
|
|
+ entity.SupType = 1
|
|
|
+
|
|
|
+ isRepeat := false
|
|
|
+ for j := 0; j < len(list); j++ {
|
|
|
+ if list[j].NeedFileType == needList[i].FileName {
|
|
|
+ isRepeat = true
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if isRepeat == true {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ svc.InsertEntityBytbl(OilSupplierFileName, &entity)
|
|
|
+ }
|
|
|
+ _, error = svc.DBE.Exec("update " + OilSupplierCertSubName + " set IsManufacturer=2 where Id in(" + Ids + ")")
|
|
|
+ }
|
|
|
+
|
|
|
+ var errinfo ErrorDataInfo
|
|
|
+ if error == nil {
|
|
|
+ errinfo.Message = "修改成功!"
|
|
|
+ errinfo.Code = 0
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+ } else {
|
|
|
+ errinfo.Message = "修改失败!"
|
|
|
+ errinfo.Code = -1
|
|
|
+ this.Data["json"] = &errinfo
|
|
|
+ this.ServeJSON()
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
// @Title 修改是否为供应商
|
|
|
// @Description
|
|
|
// @router /updatemanufacturer/:Id/:SupplierId/:IsManufacturer [get]
|
|
|
@@ -1318,7 +1631,7 @@ func (this *OilSupplierCertSubController) UpdateManufacturers() {
|
|
|
svc.GetEntities(&CertSublListAll, wherea)
|
|
|
|
|
|
var error error
|
|
|
- LABEL1:
|
|
|
+LABEL1:
|
|
|
for _, item := range CertSublListAll {
|
|
|
Id := strconv.Itoa(item.Id)
|
|
|
var CertSublList []suppliercertsub.OilSupplierCertSub
|