Sfoglia il codice sorgente

批量修改是否为 制造商(多个修改) 页面缩略图 修改

wlin1 5 anni fa
parent
commit
620a82e3ae

+ 14 - 9
src/dashoo.cn/backend/api/controllers/oilsupplier/suppliercertsub.go

@@ -565,7 +565,7 @@ func (this *OilSupplierCertSubController) AddGoodsByFilter() {
 					//三证合一或五证合一的证件,不需要验证了
 					continue
 				}
-				if !strings.Contains(companyHasHeaders, needHeader.FileName + ",") {
+				if !strings.Contains(companyHasHeaders, needHeader.FileName+",") {
 					//缺少资质,不会保存
 					invalidCertMsg += dataother.CheckList[n].Code + " " + dataother.CheckList[n].Name + "(缺少:" + needHeader.FileName + ") ,"
 					certsValid = false
@@ -1125,18 +1125,24 @@ func (this *OilSupplierCertSubController) UpdateStatus() {
 	}
 }
 
-
 // @Title 修改是否为供应商
 // @Description
 // @router /modify-manufacturer/:id [post]
 func (this *OilSupplierCertSubController) SetManufacturer() {
-	certSubId, error := strconv.Atoi(this.Ctx.Input.Param(":id"))
+	Id := this.Ctx.Input.Param(":Id")
+	str_arr := strings.Split(Id, `,`)
+	var ints []int
+	var error error
+	for i := 0; i < len(str_arr); i++ {
+		item, _ := strconv.Atoi(str_arr[0])
+		ints = append(ints, item)
+	}
 
 	var manufacturerChangeDTO suppliercertsub.ManufacturerChangeDTO
 	var jsonblob = this.Ctx.Input.RequestBody
 	json.Unmarshal(jsonblob, &manufacturerChangeDTO)
 
-	manufacturerChangeDTO.CertSubIdList = [] int{certSubId}
+	manufacturerChangeDTO.CertSubIdList = ints
 	invalidCertMsg := setManufacturerHandler(manufacturerChangeDTO)
 
 	var errinfo ErrorDataInfo
@@ -1187,7 +1193,7 @@ func (this *OilSupplierCertSubController) UpdateManufacturers() {
 	}
 }
 
-func setManufacturerHandler (manufacturerChangeDTO suppliercertsub.ManufacturerChangeDTO) (invalidCertMsg string) {
+func setManufacturerHandler(manufacturerChangeDTO suppliercertsub.ManufacturerChangeDTO) (invalidCertMsg string) {
 	CertSubIdList := manufacturerChangeDTO.CertSubIdList
 	IsManufacturer := manufacturerChangeDTO.IsManufacturer
 	SupplierId := manufacturerChangeDTO.SupplierId
@@ -1221,7 +1227,7 @@ func setManufacturerHandler (manufacturerChangeDTO suppliercertsub.ManufacturerC
 		// 当前修改的记录
 		var certSubEntity suppliercertsub.OilSupplierCertSub
 		svc := suppliercertsub.GetOilSupplierCertSubService(utils.DBE)
-		svc.DBE.Where("Id="+ strconv.Itoa(certSubId)).Get(&certSubEntity)
+		svc.DBE.Where("Id=" + strconv.Itoa(certSubId)).Get(&certSubEntity)
 
 		//--------------取出准入项需要的资质 Start--------------------------
 		paramSvc := baseparameter.GetBaseparameterService(utils.DBE)
@@ -1252,7 +1258,7 @@ func setManufacturerHandler (manufacturerChangeDTO suppliercertsub.ManufacturerC
 				//三证合一或五证合一的证件,不需要验证了
 				continue
 			}
-			if !strings.Contains(companyHasHeaders, needHeader.FileName + ",") {
+			if !strings.Contains(companyHasHeaders, needHeader.FileName+",") {
 				//缺少资质,不会保存
 				invalidCertMsg += certSubEntity.Code + " " + certSubEntity.Name + "(缺少:" + needHeader.FileName + ") ,"
 				certsValid = false
@@ -1266,12 +1272,11 @@ func setManufacturerHandler (manufacturerChangeDTO suppliercertsub.ManufacturerC
 		//--------------检查是否符合资质 End--------------------------
 		//修改状态
 		certSubEntity.IsManufacturer = IsManufacturer
-		svc.DBE.Where("Id="+ strconv.Itoa(certSubId)).Update(&certSubEntity)
+		svc.DBE.Where("Id=" + strconv.Itoa(certSubId)).Update(&certSubEntity)
 	}
 	return invalidCertMsg
 }
 
-
 type OilSupplierCert2File struct {
 	Id            int    `json:"not null pk autoincr INT(10)"`
 	certSubId     int    `json:"not null default 0 comment('供方基本信息表主键') INT(10)"`

+ 2 - 2
src/dashoo.cn/frontend_web/src/components/oilsupplier/goodslist.vue

@@ -3,7 +3,7 @@
     <el-card class="box-card">
       <div slot="header"
            class="clearfix">
-        <span style="font-weight: bold">准入范围</span>
+        <span style="font-weight: bold">准入范围1</span>
         <span style="float: right;">
           <el-button style="float: right; padding: 3px 0px"
                      type="text"
@@ -672,7 +672,7 @@ export default {
             //   SupplierId: parseInt(_this.SupplierId),
             //   IsManufacturer: index
             // }
-          _this.$axios.get('suppliercertsub/setmanufacturer/' + this.Ids.join() + "/" + parseInt(_this.SupplierId)
+          _this.$axios.post('suppliercertsub/modify-manufacturer/' + this.Ids.join() + "/" + parseInt(_this.SupplierId)
           + "/"+index, {})
             .then(function (response) {
               if (response.data.code === 0) {

+ 63 - 0
src/dashoo.cn/frontend_web/src/components/oilsupplier/goodslist2.vue

@@ -13,6 +13,14 @@
                      type="text"
                      @click="showDialog"
                      v-if="canadd || newcanadd">添加</el-button>
+          <el-button style="float: right; padding: 3px 0px"
+                     type="text"
+                     @click="setManufacturer(2)"
+                     >设置制造商</el-button>
+          <el-button style="float: right; padding: 3px 25px"
+                     type="text"
+                     @click="setManufacturer(1)"
+                     >设置非制造商</el-button>
         </span>
       </div>
       <el-table :data="goodsList"
@@ -292,6 +300,61 @@
             console.error(err)
           })
       },
+    setManufacturer(index){
+      console.log(index)
+       if (this.Ids.length == 0) {
+        this.$message({
+          type: 'warning',
+          message: '请先选择设置的条目'
+        })
+        return
+      }
+
+      let _this = this
+      _this.$confirm('是否确定此操作, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      })
+        .then(() => {
+          const delload = this.$loading({
+            lock: true,
+            text: '正在设置请稍后...'
+          })
+           let postData = {
+            CertSubIdList: [],
+            SupplierId: parseInt(this.SupplierId),
+            SupplierCertId: parseInt(this.SupplierCertId),
+            IsManufacturer: index
+          }
+          _this.$axios.post('suppliercertsub/modify-manufacturer/' + this.Ids.join(),postData)
+            .then(function (response) {
+              if (response.data.code === 0) {
+                _this.$message({
+                  type: 'success',
+                  message: response.data.message
+                })
+                delload.close()
+                _this.Ids = []
+                _this.initData()
+              } else {
+                delload.close()
+                _this.Ids = []
+                _this.$message({
+                  type: 'warning',
+                  message: response.data.message
+                })
+              }
+            })
+            .catch(function (error) {
+              console.log(error)
+            })
+        })
+        .catch((ex) => {
+          console.error(ex)
+          _this.Ids = []
+        })
+    },
       type_change(row,canadd,newcanadd){
         if (canadd == true || newcanadd == true) {
           this.tableloading = true

+ 9 - 6
src/dashoo.cn/frontend_web/src/components/oilsupplier/subfilelist.vue

@@ -812,14 +812,17 @@
       },
 
       imgFormat(val,index){
-        if(val !=null && val != undefined){
+        if(val !=null && val != undefined && val !=''){
           let fileurlall = val.split('$')[index]
           let fileurl = fileurlall.split('|')
-          let retUrl = fileurl[0]
-          let Format  = fileurl[1].split(".")
-          let pictureFormat = Format[1];
-          if("jpg"== pictureFormat || "bmp" ==pictureFormat || "png" ==pictureFormat || "gif" ==pictureFormat|| "jpeg" ==pictureFormat){
-              return false;
+          if(fileurl[1] != null && fileurl[1] !='' && fileurl[1] != undefined){
+            let Format  = fileurl[1].split(".")
+            if(Format[1]!=null && Format[1] !='' && Format[1] != undefined){
+               let pictureFormat = Format[1];
+              if("jpg"== pictureFormat || "bmp" ==pictureFormat || "png" ==pictureFormat || "gif" ==pictureFormat|| "jpeg" ==pictureFormat){
+                return false;
+              }
+            }
           }
           return true;
         }

+ 46 - 3
src/dashoo.cn/frontend_web/src/components/oilsupplier/subfilelist2.vue

@@ -28,10 +28,25 @@
         </el-table-column>
         <el-table-column prop="FileUrlList" label="资质文件" show-overflow-tooltip>
           <template slot-scope="scope">
-            <div v-for="(tmpUrl, index) in scope.row.FileUrlList">
+            <!-- <div v-for="(tmpUrl, index) in scope.row.FileUrlList">
               <el-link :href="'http://'+fileurlcut(scope.row.FileUrl, index)" target="_blank" type="primary">
                 {{scope.row.FileName.split('$')[index]}}</el-link>
-            </div>
+            </div> -->
+            <viewer :images="scope.row.FileUrlList">
+                    <div  v-for="(tmpUrl,index) in scope.row.FileUrlList" :key="index" style="vertical-align: middle;	text-align: center;">
+                    
+                      <el-link :href="'http://'+fileurlcut(scope.row.FileUrl, index)" target="_blank" type="primary"
+                        v-if="scope.row.FileUrl==''?false:imgFormat(scope.row.FileUrl, index)" 
+                      >
+                      {{scope.row.FileName.split('$')[index]}}</el-link>
+                      <img 
+                        v-if="scope.row.FileUrl==''?false:!imgFormat(scope.row.FileUrl, index)"
+                        class="photoStyle" alt=""
+                        :src="'http://'+fileurlcut(scope.row.FileUrl, index)"
+                        :key="index"
+                       >
+                     </div>
+                   </viewer>
           </template>
         </el-table-column>
         <el-table-column prop="EffectDate" label="有效日期" show-overflow-tooltip>
@@ -98,6 +113,14 @@
   import BusinessList from '../../components/oilsupplier/businesslist'
   import setapi from '@/api/oilsupplier/oilclassorgset'
   import api from '@/api/oilsupplier/supplierfile'
+  // v-viewer
+  import Vue from 'vue';
+  import Viewer from 'v-viewer'
+  import 'viewerjs/dist/viewer.css'
+  Vue.use(Viewer)
+  Viewer.setDefaults({
+    Options: { 'inline': true, 'button': true, 'navbar': true, 'title': true, 'toolbar': true, 'tooltip': true, 'movable': true, 'zoomable': true, 'rotatable': true, 'scalable': true, 'transition': true, 'fullscreen': true, 'keyboard': true, 'url': 'data-source' }
+  })
 
   export default {
     name: 'SubfileList',
@@ -227,6 +250,22 @@
       this.IsCompanyUser = this.authUser.Profile.IsCompanyUser
     },
     methods: {
+      imgFormat(val,index){
+        if(val !=null && val != undefined && val !=''){
+          let fileurlall = val.split('$')[index]
+          let fileurl = fileurlall.split('|')
+          if(fileurl[1] != null && fileurl[1] !='' && fileurl[1] != undefined){
+            let Format  = fileurl[1].split(".")
+            if(Format[1]!=null && Format[1] !='' && Format[1] != undefined){
+               let pictureFormat = Format[1];
+              if("jpg"== pictureFormat || "bmp" ==pictureFormat || "png" ==pictureFormat || "gif" ==pictureFormat|| "jpeg" ==pictureFormat){
+                return false;
+              }
+            }
+          }
+          return true;
+        }
+      },
       pickerchange () {
         console.log(this.SubfileForm.EffectDate)
       },
@@ -738,5 +777,9 @@
   .attach-uploader-icon:hover {
     color: #228B22;
   }
-
+  .photoStyle{
+    margin-top:6px;
+    width:140px;
+    height: 60px;
+  }
 </style>

+ 9 - 8
src/dashoo.cn/frontend_web/src/pages/oilsupplier/annualaudit/_opera/auditoperation.vue

@@ -1480,19 +1480,20 @@ export default {
     methods: {
 
       imgFormat(val,index){
-
         if(val !=null && val != undefined && val !=''){
-            let fileurlall = val.split('$')[index]
-            let fileurl = fileurlall.split('|')
-            let retUrl = fileurl[0]
+          let fileurlall = val.split('$')[index]
+          let fileurl = fileurlall.split('|')
+          if(fileurl[1] != null && fileurl[1] !='' && fileurl[1] != undefined){
             let Format  = fileurl[1].split(".")
-            let pictureFormat = Format[1];
+            if(Format[1]!=null && Format[1] !='' && Format[1] != undefined){
+               let pictureFormat = Format[1];
               if("jpg"== pictureFormat || "bmp" ==pictureFormat || "png" ==pictureFormat || "gif" ==pictureFormat|| "jpeg" ==pictureFormat){
-                  return false;
+                return false;
               }
-              return true;
             }
-       
+          }
+          return true;
+        }
       },
       // Tab
       nextTab () {

+ 9 - 8
src/dashoo.cn/frontend_web/src/pages/oilsupplier/annualaudit/_opera/basicauditoperation.vue

@@ -1368,20 +1368,21 @@
     methods: {
 
       imgFormat(val,index){
-
         if(val !=null && val != undefined && val !=''){
-            let fileurlall = val.split('$')[index]
-            let fileurl = fileurlall.split('|')
-            let retUrl = fileurl[0]
+          let fileurlall = val.split('$')[index]
+          let fileurl = fileurlall.split('|')
+          if(fileurl[1] != null && fileurl[1] !='' && fileurl[1] != undefined){
             let Format  = fileurl[1].split(".")
-            let pictureFormat = Format[1];
+            if(Format[1]!=null && Format[1] !='' && Format[1] != undefined){
+               let pictureFormat = Format[1];
               if("jpg"== pictureFormat || "bmp" ==pictureFormat || "png" ==pictureFormat || "gif" ==pictureFormat|| "jpeg" ==pictureFormat){
-                  return false;
+                return false;
               }
-              return true;
             }
+          }
+          return true;
+        }
       },
-
       getFirAuditerByDept () {
         let deptid = this.authUser.Profile.DepartmentId
         this.userOptions = []