|  |  | 
 |  |  |           <div class="basic-info-view"> | 
 |  |  |             <el-row> | 
 |  |  |               <el-col :span="12"> | 
 |  |  |                 <el-form-item label="服务合同编号" prop="number"> | 
 |  |  |                   <el-input | 
 |  |  |                     v-if=" | 
 |  |  |                       editConfig.title == '编辑' || | 
 |  |  |                       (editConfig.title == '新建' && codenumer && (explain != '' || isIdDisabled)) | 
 |  |  |                     " | 
 |  |  |                     :disabled="editConfig.title == '编辑'" | 
 |  |  |                     v-model="editConfig.infomation.number" | 
 |  |  |                     placeholder="请输入编码" | 
 |  |  |                   > | 
 |  |  |                   </el-input> | 
 |  |  |                   <span v-else-if="editConfig.title == '新建'" style="color: #f56c6c" | 
 |  |  |                     >请优先配置编码规范 <el-button type="text" @click="numberClick"> 配置规范 </el-button></span | 
 |  |  |                   > | 
 |  |  |                   <!-- <WordInput | 
 |  |  |                     v-if="codenumer && (explain != '' || isIdDisabled) && method == 0" | 
 |  |  |                     :codenumer="codenumer" | 
 |  |  |                     :sum="sum" | 
 |  |  |                     :disabled="editConfig.title !== '新建' || isIdDisabled" | 
 |  |  |                     :inputValue="inputValue" | 
 |  |  |                     @codeList="codeList" | 
 |  |  |                   /> | 
 |  |  |                   <span v-else-if="method == 0" style="color: #f56c6c" | 
 |  |  |                     >请优先配置编码规范 <el-button type="text" @click="numberClick"> 配置规范 </el-button></span | 
 |  |  |                   > | 
 |  |  |                   <span v-else>{{ editConfig.title === "新建" ? "自动生成" : editConfig.infomation.number }}</span> --> | 
 |  |  |                 </el-form-item> | 
 |  |  |               </el-col> | 
 |  |  |               <el-col :span="12"> | 
 |  |  |                 <el-form-item label="客户名称" prop="client_name"> | 
 |  |  |                   <div class="custom-name"> | 
 |  |  |                     <el-autocomplete | 
 |  |  | 
 |  |  |                       <i class="el-icon-remove-outline" title="清除"></i> | 
 |  |  |                     </div> | 
 |  |  |                   </div> | 
 |  |  |                 </el-form-item> | 
 |  |  |               </el-col> | 
 |  |  |               <el-col :span="12"> | 
 |  |  |                 <el-form-item label="服务合同编号" prop="number"> | 
 |  |  |                   <el-input v-model="editConfig.infomation.number" style="width: 100%"></el-input> | 
 |  |  |                 </el-form-item> | 
 |  |  |               </el-col> | 
 |  |  |               <el-col :span="12"> | 
 |  |  | 
 |  |  | import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog" | 
 |  |  | import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog" | 
 |  |  | import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog" | 
 |  |  | import codeMixin from "@/components/makepager/mixin/codeMixin" | 
 |  |  | export default { | 
 |  |  |   name: "AddServiceContractDialog", | 
 |  |  |   mixins: [codeMixin], | 
 |  |  |   props: { | 
 |  |  |     editCommonConfig: { | 
 |  |  |       type: Object, | 
 |  |  | 
 |  |  |       dialogWidth: "50%", | 
 |  |  |       editConfig: this.editCommonConfig, | 
 |  |  |       rules: { | 
 |  |  |         number: [{ required: true, message: "请输入服务合同编号", trigger: "blur" }], | 
 |  |  |         number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], | 
 |  |  |         client_name: [{ required: true, message: "请选择客户名称", trigger: "change" }], | 
 |  |  |         signTime: [{ required: true, message: "请选择", trigger: "change" }], | 
 |  |  |         memberId: [{ required: true, message: "请选择负责人", trigger: "change" }] | 
 |  |  |         memberId: [{ required: true, validator: this.validateMemberId, trigger: "change" }] | 
 |  |  |       }, | 
 |  |  |       memberOptions: [], | 
 |  |  |       contractTypeOptions: [], // 合同类型 | 
 |  |  | 
 |  |  |     this.$store.dispatch("geQuotation") | 
 |  |  |     this.setTableForm() | 
 |  |  |     this.getCommonData() | 
 |  |  |     this.formInfo() | 
 |  |  |   }, | 
 |  |  |   watch: { | 
 |  |  |     "editCommonConfig.visible"(val) { | 
 |  |  |       if (val) { | 
 |  |  |         this.formInfo() | 
 |  |  |       } | 
 |  |  |     } | 
 |  |  |   }, | 
 |  |  |   methods: { | 
 |  |  |     formInfo() { | 
 |  |  |       this.objCode.type = "服务合同编码" | 
 |  |  |       this.objCode.codeStandID = "" | 
 |  |  |       if (this.editConfig.infomation.codeStandID) { | 
 |  |  |         this.objCode.codeStandID = this.editConfig.infomation.codeStandID | 
 |  |  |       } | 
 |  |  |       this.getRCodeStandardList() | 
 |  |  |     }, | 
 |  |  |     getCommonData() { | 
 |  |  |       getAllData() | 
 |  |  |         .then((res) => { | 
 |  |  |           if (res.code === 200) { | 
 |  |  |             this.memberOptions = res.data.member | 
 |  |  |             // this.$set(this.editConfig.infomation, "memberId", this.editConfig.infomation.memberId) | 
 |  |  |             if (this.editConfig.title === "新建") { | 
 |  |  |               let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") | 
 |  |  |               this.memberOptions.map((item) => { | 
 |  |  |                 if (item.username == username) { | 
 |  |  |                   this.$set(this.editConfig.infomation, "memberId", item.id) | 
 |  |  |                 } | 
 |  |  |               }) | 
 |  |  |             } | 
 |  |  |             this.contractTypeOptions = res.data.serviceContractType | 
 |  |  |             this.$set( | 
 |  |  |               this.editConfig.infomation, | 
 |  |  |               "serviceContractTypeId", | 
 |  |  |               this.editConfig.infomation.serviceContractTypeId | 
 |  |  |             ) | 
 |  |  |             this.contractStatusOptions = res.data.serviceContractStatus | 
 |  |  |             this.$set( | 
 |  |  |               this.editConfig.infomation, | 
 |  |  |               "serviceContractStatusId", | 
 |  |  |               this.editConfig.infomation.serviceContractStatusId | 
 |  |  |             ) | 
 |  |  |             // this.currencyOptions = res.data.currency | 
 |  |  |           } | 
 |  |  |         }) | 
 |  |  | 
 |  |  |             this.$message.error("产品名称不能为空") | 
 |  |  |           } else { | 
 |  |  |             const params = this.saveParams() | 
 |  |  |             console.log(params) | 
 |  |  |             if (this.editConfig.title === "新建") { | 
 |  |  |               getAddServiceContract(params).then((res) => { | 
 |  |  |                 console.log(res) | 
 |  |  | 
 |  |  |         terms: data.terms || "", | 
 |  |  |         typeId: 0, | 
 |  |  |         serviceContractTypeId: data.serviceContractTypeId || 0, | 
 |  |  |         serviceContractStatusId: data.serviceContractStatusId || 0 | 
 |  |  |         serviceContractStatusId: data.serviceContractStatusId || 0, | 
 |  |  |         codeStandID: data.ID | 
 |  |  |       } | 
 |  |  |       return params | 
 |  |  |     }, | 
 |  |  | 
 |  |  |             name: "", | 
 |  |  |             number: "", | 
 |  |  |             price: 0, | 
 |  |  |             total: 0 | 
 |  |  |             total: 0, | 
 |  |  |             unit: "" | 
 |  |  |           } | 
 |  |  |         ] | 
 |  |  |       } else { | 
 |  |  | 
 |  |  |           { label: "产品名称", prop: "name", productName: true, isRequird: true }, | 
 |  |  |           { label: "产品编号", prop: "number" }, | 
 |  |  |           { label: "数量", prop: "amount", inputNumber: true, isRequird: true }, | 
 |  |  |           { label: "单位", prop: "unit" }, | 
 |  |  |           { label: "销售单价", prop: "price", inputFloat: true }, | 
 |  |  |           { label: "价税合计", prop: "total", inputFloat: true } | 
 |  |  |         ] | 
 |  |  | 
 |  |  |         name: "", | 
 |  |  |         number: "", | 
 |  |  |         price: 0, | 
 |  |  |         total: 0 | 
 |  |  |         total: 0, | 
 |  |  |         unit: "" | 
 |  |  |       }) | 
 |  |  |       this.showSummary.show = true | 
 |  |  |     }, | 
 |  |  | 
 |  |  |           name: "", | 
 |  |  |           number: "", | 
 |  |  |           price: 0, | 
 |  |  |           total: 0 | 
 |  |  |           total: 0, | 
 |  |  |           unit: "" | 
 |  |  |         } | 
 |  |  |       ] | 
 |  |  |       this.productTableList.tableData = this.tableData | 
 |  |  | 
 |  |  |     clearupProduct(data) { | 
 |  |  |       this.tableData = data | 
 |  |  |       this.productTableList.tableData = this.tableData | 
 |  |  |     }, | 
 |  |  |     // 负责人自定义校验规则 | 
 |  |  |     validateMemberId(rule, value, callback) { | 
 |  |  |       if (this.editConfig.infomation?.memberId > 0) { | 
 |  |  |         callback() | 
 |  |  |       } else { | 
 |  |  |         callback(new Error("请输入负责人")) | 
 |  |  |       } | 
 |  |  |     } | 
 |  |  |   } | 
 |  |  | } |