| | |
| | | |
| | | |
| | | <el-tab-pane label="其他信息" name="other"> |
| | | <el-form ref="formOther" :model="formData" label-width="100px"> |
| | | <el-form ref="formOther" :model="formData" :rules="rules" label-width="100px"> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="联系人"> |
| | | <el-form-item label="联系人" prop="HLinkMan"> |
| | | <el-input v-model="formData.HLinkMan" placeholder="请输入联系人"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="联系电话"> |
| | | <el-form-item label="联系电话" prop="HLinkPhone"> |
| | | <el-input v-model="formData.HLinkPhone" placeholder="请输入联系电话"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="地址"> |
| | | <el-form-item label="地址" prop="HAddress"> |
| | | <el-input v-model="formData.HAddress" placeholder="请输入地址"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="地区"> |
| | | <el-form-item label="地区" prop="HAreaID"> |
| | | <el-input |
| | | v-model="formData.HAreaName" |
| | | placeholder="请选择地区" |
| | |
| | | |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="客户状态"> |
| | | <el-form-item label="客户状态" prop="HCusStatus"> |
| | | <el-select v-model="formData.HCusStatus" placeholder="请选择客户状态" style="width: 100%"> |
| | | <el-option label="潜在" value="101"></el-option> |
| | | <el-option label="合格" value="102"></el-option> |
| | |
| | | this.initData() |
| | | this.loadOrganizations() |
| | | this.handleOperationType() |
| | | this.setConditionalRules() |
| | | }, |
| | | methods: { |
| | | initData() { |
| | |
| | | }, |
| | | |
| | | // 保存 |
| | | handleSave() { |
| | | this.$refs.form.validate(valid => { |
| | | if (valid) { |
| | | async handleSave() { |
| | | const validMain = await new Promise(resolve => { |
| | | this.$refs.form.validate(valid => resolve(valid)) |
| | | }) |
| | | |
| | | let validOther = true |
| | | if (this.$refs.formOther) { |
| | | validOther = await new Promise(resolve => { |
| | | this.$refs.formOther.validate(valid => resolve(valid)) |
| | | }) |
| | | } |
| | | |
| | | if (validMain && validOther) { |
| | | if (!this.validateForm()) { |
| | | return |
| | | } |
| | |
| | | this.$modal.msgError('保存失败!') |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | setConditionalRules() { |
| | | this.rules.HLinkMan = [ |
| | | { validator: this.validateRequiredIfAdd, trigger: 'blur', message: '请输入联系人' } |
| | | ] |
| | | |
| | | this.rules.HLinkPhone = [ |
| | | { validator: this.validateRequiredIfAdd, trigger: 'blur', message: '请输入联系电话' } |
| | | ] |
| | | |
| | | this.rules.HAddress = [ |
| | | { validator: this.validateRequiredIfAdd, trigger: 'blur', message: '请输入地址' } |
| | | ] |
| | | |
| | | this.rules.HAreaID = [ |
| | | { validator: this.validateRequiredIfAdd, trigger: 'change', message: '请选择地区' } |
| | | ] |
| | | |
| | | this.rules.HCusStatus = [ |
| | | { validator: this.validateRequiredIfAdd, trigger: 'change', message: '请选择客户状态' } |
| | | ] |
| | | }, |
| | | |
| | | validateRequiredIfAdd(rule, value, callback) { |
| | | if (this.operationType !== 1) { |
| | | return callback() |
| | | } |
| | | |
| | | if (value === null || value === undefined) { |
| | | return callback(new Error(rule.message || '该项为必填')) |
| | | } |
| | | |
| | | if (typeof value === 'string' && value.trim() === '') { |
| | | return callback(new Error(rule.message || '该项为必填')) |
| | | } |
| | | |
| | | if (value === '0') { |
| | | return callback(new Error(rule.message || '该项为必填')) |
| | | } |
| | | |
| | | return callback() |
| | | }, |
| | | |
| | | // 表单验证 |
| | |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <el-select v-model="queryParams.ColName" placeholder="请选择" style="width: 100%"> |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option v-for="(item, index) in visibleColumns" :key="index" :label="item.title" |
| | | :value="item.field"></el-option> |
| | | </el-select> |
| | | </el-col> |
| | | <el-col :span="6" style="padding: 0 10px"> |
| | | <el-select v-model="queryParams.Comparator" placeholder="请选择" style="width: 100%"> |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option v-for="(item, index) in comparatorList" :key="index" :label="item.label" |
| | | :value="item.value"></el-option> |
| | | </el-select> |
| | |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <el-select v-model="queryParams.ColName1" placeholder="请选择" style="width: 100%"> |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option v-for="(item, index) in visibleColumns" :key="index" :label="item.title" |
| | | :value="item.field"></el-option> |
| | | </el-select> |
| | | </el-col> |
| | | <el-col :span="6" style="padding: 0 10px"> |
| | | <el-select v-model="queryParams.Comparator1" placeholder="请选择" style="width: 100%"> |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option v-for="(item, index) in comparatorList" :key="index" :label="item.label" |
| | | :value="item.value"></el-option> |
| | | </el-select> |
| | |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <el-select v-model="queryParams.ColName2" placeholder="请选择" style="width: 100%"> |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option v-for="(item, index) in visibleColumns" :key="index" :label="item.title" |
| | | :value="item.field"></el-option> |
| | | </el-select> |
| | | </el-col> |
| | | <el-col :span="6" style="padding: 0 10px"> |
| | | <el-select v-model="queryParams.Comparator2" placeholder="请选择" style="width: 100%"> |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option v-for="(item, index) in comparatorList" :key="index" :label="item.label" |
| | | :value="item.value"></el-option> |
| | | </el-select> |
| | |
| | | HNumber: null, |
| | | HName: null, |
| | | HNumber2: null, |
| | | ColName: "0", |
| | | ColName1: "0", |
| | | ColName2: "0", |
| | | Comparator: "0", |
| | | Comparator1: "0", |
| | | Comparator2: "0", |
| | | ColName: "", |
| | | ColName1: "", |
| | | ColName2: "", |
| | | Comparator: "", |
| | | Comparator1: "", |
| | | Comparator2: "", |
| | | ColContent: "", |
| | | ColContent1: "", |
| | | ColContent2: "", |
| | |
| | | }, |
| | | |
| | | handleRefresh() { |
| | | if (this.$refs.tableData && this.$refs.tableData.clearSelection) { |
| | | this.$refs.tableData.clearSelection(); |
| | | } |
| | | this.selectedRow = null; |
| | | this.ids = []; |
| | | this.single = true; |
| | | this.multiple = true; |
| | | this.getList(); |
| | | }, |
| | | |
| | |
| | | |
| | | rowStyle({ row, rowIndex }) { |
| | | if (this.ids.includes(row.hmainid)) { |
| | | return { background: "#ecf5ff" }; |
| | | return { }; |
| | | } |
| | | }, |
| | | |
| | |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | > |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="" label=""></el-option> --> |
| | | <el-option |
| | | v-for="(item, index) in visibleColumns" |
| | | :key="index" |
| | |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | > |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option |
| | | v-for="(item, index) in comparatorList" |
| | | :key="index" |
| | |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | > |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option |
| | | v-for="(item, index) in visibleColumns" |
| | | :key="index" |
| | |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | > |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option |
| | | v-for="(item, index) in comparatorList" |
| | | :key="index" |
| | |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | > |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option |
| | | v-for="(item, index) in visibleColumns" |
| | | :key="index" |
| | |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | > |
| | | <el-option value="0" label=""></el-option> |
| | | <!-- <el-option value="0" label=""></el-option> --> |
| | | <el-option |
| | | v-for="(item, index) in comparatorList" |
| | | :key="index" |
| | |
| | | HModel: null, |
| | | HOrgID: null, |
| | | HProject: null, |
| | | ColName: "0", |
| | | ColName1: "0", |
| | | ColName2: "0", |
| | | Comparator: "0", |
| | | Comparator1: "0", |
| | | Comparator2: "0", |
| | | ColName: "", |
| | | ColName1: "", |
| | | ColName2: "", |
| | | Comparator: "", |
| | | Comparator1: "", |
| | | Comparator2: "", |
| | | ColContent: "", |
| | | ColContent1: "", |
| | | ColContent2: "", |
| | |
| | | .then((response) => { |
| | | let data = response.data.data[0]; |
| | | this.user = data.Czymc; |
| | | |
| | | this.getOrganizations(); |
| | | this.queryParams.HOrgID = data.HUSEORGID; |
| | | this.getTreeData(); |
| | | this.getProjectOptions(); |
| | | this.getList(); |
| | |
| | | .then((response) => { |
| | | if (response.data.count == 1) { |
| | | this.organizationOptions = response.data.data; |
| | | if (this.organizationOptions.length > 0) { |
| | | this.queryParams.HOrgID = this.organizationOptions[0].ID; |
| | | } |
| | | // if (this.organizationOptions.length > 0) { |
| | | // this.queryParams.HOrgID = this.organizationOptions[0].ID; |
| | | // } |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | |
| | | }, |
| | | |
| | | handleRefresh() { |
| | | // 刷新时清除表格选择并重置相关状态,保证复制/编辑/删除/审核等按钮被禁用 |
| | | if (this.$refs.tableData && this.$refs.tableData.clearSelection) { |
| | | this.$refs.tableData.clearSelection(); |
| | | } |
| | | this.selectedRow = null; |
| | | this.ids = []; |
| | | this.single = true; |
| | | this.multiple = true; |
| | | this.getList(); |
| | | }, |
| | | |
| | |
| | | // 行样式 |
| | | rowStyle({ row, rowIndex }) { |
| | | if (this.ids.includes(row.hmainid)) { |
| | | return { background: "#ecf5ff" }; |
| | | return { }; |
| | | // background: "#ecf5ff" |
| | | } |
| | | }, |
| | | |