Browse Source

16.8 需求更改

bding 1 month ago
parent
commit
9f3494ea63

+ 5 - 1
src/api/modules/crmApi.js

@@ -1099,7 +1099,11 @@ const customInterence = {
    */
   editOutboundMobile:(params)=>{
       return http.post("/custom/user/edit/outbound_mobile",params)
-   }
+   },
+  // 用印合同编号检索接口
+  searchSealcodeSeal:(params)=>{
+    return http.get("/seal/sealcode/search",params)
+  },
 };
 
 /*

+ 4 - 0
src/api/modules/sealApi.js

@@ -54,6 +54,10 @@ const sealInterence={
 	getContractListBySeal:params=>{
 		return http.get('/contract/getListBySeal',params)
 	},
+	//公司检索
+	getCompanyListSearch:params=>{
+		return http.get('/seal/company/search',params)
+	},
 	//上传接口
 	resourceUpload:params=>{
 		return http.post('/resource/image/upload',params)

+ 45 - 4
src/views/custom_manage/customList/applyTurn.vue

@@ -66,6 +66,17 @@
 									<i class="el-icon-info"></i>
 							</el-tooltip>
 						</el-form-item>
+						<el-form-item label-width="140px" label="请输入合同编号" style="width:100%" prop="CreditCode" v-if="isRaiSellerShow"
+						 :rules="{required: true, message: '请输入合同编号', trigger: 'blur'}">
+						   <i style="color:#f00;fontSize:20px;position:absolute;left:-128px;top:10%;">*</i>
+						   <el-autocomplete
+						   	style="width:360px;"
+						   	v-model="formData.CreditCode"
+						   	:fetch-suggestions="querySearchCreditCode"
+						   	placeholder="请复制申请用印时生成的合同编号"
+						   	@select="handleSelectCreditCode"
+						></el-autocomplete>
+						</el-form-item>
 						<el-form-item label="合同期限" prop="term" style="marginRight:60px;" :rules="{ required: true, message: '合同期限不能为空', trigger: 'blur' }" v-if="!isXClassCustom">
 							<i style="color:#f00;fontSize:20px;position:absolute;left:-90px;top:10%;">*</i>
 							<el-date-picker
@@ -75,6 +86,7 @@
 							start-placeholder="开始日期"
 							end-placeholder="结束日期"
 							@change="dateChange"
+							:disabled="isRaiSellerShow"
 							value-format="yyyy-MM-dd"
 							style="width:400px;">
 							</el-date-picker>
@@ -98,6 +110,7 @@
 							v-model.number="formData.amount"
 							:placeholder="isRaiCompany ? '请输入实际付款金额(优惠后)':'请输入金额'"
 							style="width:400px"
+							:disabled="isRaiCompany"
 							clearable></el-input>
 							<span style="color:#666;">元</span>
 						</el-form-item>
@@ -204,6 +217,9 @@ export default {
 		isRaiCompany(){
 			return this.companyInfo.CompanyType == '权益' || this.isRoleType== '权益'
 		},
+		isRaiSellerShow() {
+			return localStorage.getItem('Role') === 'rai_seller';
+		},
 	},
 	data () {
 		return {
@@ -218,6 +234,7 @@ export default {
 				imglist:[],//合同列表图片
 				setmeal:'',
 				qyBigServeCheck:0,
+				CreditCode:''
 			},
 			hasNoChild:false, // 医药、消费、科技、智造是否没有主客观
 			authList:[],//权限列表
@@ -600,10 +617,34 @@ export default {
 				this.$message.warning('请勾选品种')
 			}
 		},
-	checkboxInputHandler(){
-		this.formData.term = this.selectedQuarters ? [this.selectedDateRange.split(" ~ ")[0],this.selectedDateRange.split(" ~ ")[1]]:[]
-	}
-	
+		checkboxInputHandler(){
+			this.formData.term = this.selectedQuarters ? [this.selectedDateRange.split(" ~ ")[0],this.selectedDateRange.split(" ~ ")[1]]:[]
+		},
+		// 获取合同编号
+		async querySearchCreditCode(queryString, cb) {
+			cb([])
+			if(queryString) {
+			  const res = await customInterence.searchSealcodeSeal({
+				KeyWord:queryString
+			  })
+			  if(res.Ret === 200) {
+				if(res.Data.List.length) {
+				  const data = res.Data.List.map(item => {
+					return {
+					  value: item.Code,
+					  ...item
+					}
+				  })
+				  cb(data)
+				}
+			  }
+			}
+		},
+		// 选择合同编号
+		handleSelectCreditCode(item) {
+			this.formData.term = [item.StartDate,item.EndDate]
+			this.formData.amount = item.Money
+		}
 	},
 	created() {},
 	mounted() {

+ 57 - 16
src/views/seal_manage/updateSeal.vue

@@ -33,6 +33,14 @@
           </el-form-item>
           <el-form-item label="客户名称:" prop="CompanyName">
             <el-autocomplete
+                v-if="isRaiSellerShow"
+                v-model="sealForm.CompanyName"
+                :fetch-suggestions="querySearchCompany"
+                placeholder="请输入用户名称"
+                @select="handleSelectCustome"
+            ></el-autocomplete>
+            <el-autocomplete
+              v-else
               ref="companySelector"
               popper-class="custom-autocomplete"
               placeholder="请输入用户名称"
@@ -110,7 +118,18 @@
               class="form-input"
               placeholder="请填写统一社会信用码"
               v-model.trim="sealForm.CreditCode"
-              :disabled="sealForm.source === '系统合同'"
+              :disabled="sealForm.source === '系统合同' || isRaiSellerShow"
+            ></el-input
+          ></el-form-item>
+           <el-form-item label="合同金额:" prop="Money"
+           v-if="isRaiSellerShow"
+            :rules="{
+                required: true, message: '请输入实际付款金额', trigger: 'blur'
+              }">
+            <el-input
+             class="form-input"
+              placeholder="请输入实际付款金额(优惠后)"
+              v-model="sealForm.Money"
             ></el-input
           ></el-form-item>
           <el-form-item label="文件份数:" prop="FileNum"
@@ -202,7 +221,8 @@ export default {
         fileList: [], //合同附件
         ContractId: 0, //合同id(默认为0)
         AffiliatedCompany:'',
-        time: []
+        time: [],
+        Money: '',// 实际付款金额
       },
       sealRules: {
         //表单校验规则
@@ -250,7 +270,7 @@ export default {
       ],
       isWatch: true, // 控制watch是否触发
 
-      belongCompanyOption:[]
+      belongCompanyOption:[],
     };
   },
   created() {
@@ -385,22 +405,41 @@ export default {
     // 关键字联想
     async querySearch(queryString, cb) {
       // 合同来源为上传附件时不进行联想
-      if (this.sealForm.source === "上传附件" || queryString === "")
+      if (this.sealForm.source === "上传附件"  || queryString === "")
         return cb([]);
-      let results = [];
-      try {
-        const res = await sealInterence.getContractListBySeal({
-          Keyword: queryString,
+          let results = [];
+          try {
+            const res = await sealInterence.getContractListBySeal({
+              Keyword: queryString,
+            });
+            if (res.Ret === 200) {
+              results = res.Data;
+            }
+          } catch (err) {
+            console.log(err);
+          }
+          if (!results.length) this.sealForm.ContractId = 0;
+          // 调用 callback 返回建议列表的数据
+          cb(results);
+    },
+    // 关键字公司联想
+    async querySearchCompany(query, cb) {
+        if (query === "") return  cb([]);
+        const res = await sealInterence.getCompanyListSearch({
+          KeyWord: query,
         });
         if (res.Ret === 200) {
-          results = res.Data;
+           if(res.Data.length>0){
+            let arr=res.Data.map(item=>{
+              return {value:item.CompanyName,...item}
+            })
+            cb(arr)
+          }
         }
-      } catch (err) {
-        console.log(err);
-      }
-      if (!results.length) this.sealForm.ContractId = 0;
-      // 调用 callback 返回建议列表的数据
-      cb(results);
+    },
+    // 关键字公司联想后的选择事件
+    handleSelectCustome(val){
+        this.sealForm.CreditCode = val.CreditCode;
     },
     // 选择事件
     selectHandel(item) {
@@ -426,6 +465,7 @@ export default {
           ContractId: this.sealForm.ContractId,
           CreditCode: this.sealForm.CreditCode,
           FileNum: this.sealForm.FileNum,
+          Money: +this.sealForm.Money,
           FileUrls: this.sealForm.fileList.map(item => item.FileUrl),
           Remark: this.sealForm.Remark,
           SealType: this.sealForm.SealType.join(","),
@@ -489,7 +529,8 @@ export default {
         Remark: "", //审批备注
         fileList: [], //合同附件
         ContractId: 0, //合同id(默认为0)
-        AffiliatedCompany:''
+        AffiliatedCompany:'',
+        Money:'',
       };
       // 清除校验提示
       this.$nextTick(() => {