Jelajahi Sumber

竞争对手详情页联系人调整

qymljy 1 tahun lalu
induk
melakukan
72edf9cbf3

+ 2 - 3
src/HDrpManagement/competitor/detail/modules/contacts/list.vue

@@ -56,14 +56,13 @@ export default {
       currentPage:0,
       search:"",
       params:{
-        "id": "20221022165503",
+        "id": "20240531165504",
         "content": {
           "sys_enterpriseid": "",
           "pageNumber": 1,
           "pageSize": 20,
           "where": {
             "condition": "",
-            "workaddress":0
           }
         }
       }
@@ -125,4 +124,4 @@ export default {
   display: flex;
   align-items: center;
 }
-</style>
+</style>

+ 74 - 15
src/HDrpManagement/competitor/detail/modules/contacts/modules/add.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-button size="small" type="primary" @click="onshow">新增联系人</el-button>
+    <el-button size="small" type="primary" @click="onshow">新增</el-button>
     <el-drawer
         title=" 新建联系人"
         :visible.sync="dialogFormVisible"
@@ -18,8 +18,29 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item  label="手机号:" prop="phonenumber">
-                <el-input  autosize v-model="form.phonenumber" placeholder="请输入手机号码"></el-input>
+              <el-form-item>
+                <el-radio v-model="form.isTelephone" label="0">手机号</el-radio>
+                <el-radio v-model="form.isTelephone" label="1">座机电话</el-radio>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24" v-if="form.isTelephone == '1'">
+              <el-form-item label="联系方式:" prop="telephone" >
+                <el-input v-model="form.areaCode" style="width: 25%" autocomplete="on" placeholder="请填写区号"></el-input>
+                <span style="color: #999999">——</span>
+                <el-input v-model="form.telephone" style="width: 68%" autocomplete="on" placeholder="请填写座机电话"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24"  >
+              <el-form-item v-if="form.isTelephone == '0'" label="联系方式:" prop="phonenumber" :rules="[
+              { required: true, message: '手机号码不能为空'},
+              { pattern:/^1[3-9][0-9]\d{8}$/, message: '请输入正确手机号码',trigger: 'change' }
+            ]">
+                <el-input v-model="form.phonenumber" autocomplete="on" placeholder="请填写手机号码"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item  label="微信:" prop="wechatnum">
+                <el-input  autosize v-model="form.wechatnum" placeholder="请输入微信" ></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -30,13 +51,13 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item  label="电话:" >
-                <el-input  autosize v-model="form.telephone" placeholder="请输入电话" ></el-input>
+              <el-form-item  label="传真:" >
+                <el-input  autosize v-model="form.fax" placeholder="请输入传真" ></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item  label="传真:" >
-                <el-input  autosize v-model="form.fax" placeholder="请输入传真" ></el-input>
+              <el-form-item  label="单位:" prop="company">
+                <el-input  autosize v-model="form.company" placeholder="请输入单位" ></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -72,6 +93,16 @@
                 <el-input type="textarea" autosize v-model="form.address" placeholder="请输入家庭住址"></el-input>
               </el-form-item>
             </el-col>
+            <el-col :span="24">
+              <el-form-item label="偏好" prop="preference">
+                <el-input v-model="form.preference" autocomplete="on" placeholder="请填写偏好"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="爱好" prop="hobby">
+                <el-input v-model="form.hobby" autocomplete="on" placeholder="请填写爱好"></el-input>
+              </el-form-item>
+            </el-col>
             <el-col :span="24">
               <el-form-item  label="备注:" >
                 <el-input type="textarea"  autosize v-model="form.remarks" placeholder="请输入备注"></el-input>
@@ -106,6 +137,20 @@ export default {
         callback();
       }
     };
+    var telephone = (rule,value,callback) =>{
+      if (this.form.areaCode === '' && this.form.telephone === ''){
+        callback(new Error('座机电话不能为空'))
+      } else {
+        var reg=/^0\d{2,3}-\d{7,8}$/
+        let telephone = this.form.areaCode + '-' + this.form.telephone
+        if (!reg.test(telephone)){
+          callback(new Error('请输入正确座机电话'))
+        }else {
+          callback();
+        }
+      }
+
+    }
     return {
       dialogFormVisible:false,
       visible:false,
@@ -128,18 +173,23 @@ export default {
         workaddress: 0,
         isdefault: 1,
         isprimary: 1,
-        telephone:'',
         fax:'',
         ownerid: this.$route.query.id,
-        ownertable: "sa_competitor"
+        ownertable: "sa_competitor",
+        isTelephone:'0',
+        areaCode:'',
+        telephone:''
       },
       rules:{
         name: [
           { required: true, message: '姓名不能为空', trigger: 'blur' },
         ],
         phonenumber: [
-          { required: true, validator: validateMobilePhone, trigger: 'blur' },
-        ]
+          { required: true, validator: validateMobilePhone, trigger: 'change' },
+        ],
+        telephone:[
+          { required: true, validator: telephone, trigger: 'change' }
+        ],
       },
     }
   },
@@ -157,8 +207,11 @@ export default {
       console.log(this.form)
       this.$refs['form'].validate(async (valid) => {
         if (!valid) return false
+        if (this.form.isTelephone == '1'){
+          this.form.phonenumber = this.form.areaCode + "-" + this.form.telephone
+        }
         const res = await this.$api.requested({
-          "id": "20221018141802",
+          "id": "20240531151704",
           "content": this.form
         })
         this.tool.showMessage(res,()=>{
@@ -182,7 +235,10 @@ export default {
             county: "",
             workaddress: 0,
             isdefault: 1,
-            isprimary: 1
+            isprimary: 1,
+            isTelephone:'0',
+            areaCode:'',
+            telephone:''
           }
           this.dialogFormVisible = false
         })
@@ -209,7 +265,10 @@ export default {
         county: "",
         workaddress: 0,
         isdefault: 1,
-        isprimary: 1
+        isprimary: 1,
+        isTelephone:'0',
+        areaCode:'',
+        telephone:''
       }
     }
   }
@@ -218,4 +277,4 @@ export default {
 
 <style scoped>
 
-</style>
+</style>

+ 71 - 11
src/HDrpManagement/competitor/detail/modules/contacts/modules/edit.vue

@@ -18,8 +18,29 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item  label="手机号:" prop="phonenumber">
-                <el-input  autosize v-model="form.phonenumber" placeholder="请输入手机号码"></el-input>
+              <el-form-item>
+                <el-radio v-model="form.isTelephone" label="0">手机号</el-radio>
+                <el-radio v-model="form.isTelephone" label="1">座机电话</el-radio>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24" v-if="form.isTelephone == '1'">
+              <el-form-item label="联系方式:" prop="telephone" >
+                <el-input v-model="form.areaCode" style="width: 25%" autocomplete="on" placeholder="请填写区号"></el-input>
+                <span style="color: #999999">——</span>
+                <el-input v-model="form.telephone" style="width: 68%" autocomplete="on" placeholder="请填写座机电话"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24"  >
+              <el-form-item v-if="form.isTelephone == '0'" label="联系方式:" prop="phonenumber" :rules="[
+              { required: true, message: '手机号码不能为空'},
+              { pattern:/^1[3-9][0-9]\d{8}$/, message: '请输入正确手机号码',trigger: 'change' }
+            ]">
+                <el-input v-model="form.phonenumber" autocomplete="on" placeholder="请填写手机号码"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item  label="微信:" prop="wechatnum">
+                <el-input  autosize v-model="form.wechatnum" placeholder="请输入微信" ></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -30,13 +51,13 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item  label="电话:" >
-                <el-input  autosize v-model="form.telephone" placeholder="请输入电话" ></el-input>
+              <el-form-item  label="传真:" >
+                <el-input  autosize v-model="form.fax" placeholder="请输入传真" ></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item  label="传真:" >
-                <el-input  autosize v-model="form.fax" placeholder="请输入传真" ></el-input>
+              <el-form-item  label="单位:" prop="company">
+                <el-input  autosize v-model="form.company" placeholder="请输入单位" ></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -72,6 +93,16 @@
                 <el-input type="textarea" autosize v-model="form.address" placeholder="请输入家庭住址"></el-input>
               </el-form-item>
             </el-col>
+            <el-col :span="24">
+              <el-form-item label="偏好" prop="preference">
+                <el-input v-model="form.preference" autocomplete="on" placeholder="请填写偏好"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="爱好" prop="hobby">
+                <el-input v-model="form.hobby" autocomplete="on" placeholder="请填写爱好"></el-input>
+              </el-form-item>
+            </el-col>
             <el-col :span="24">
               <el-form-item  label="备注:" >
                 <el-input type="textarea"  autosize v-model="form.remarks" placeholder="请输入备注"></el-input>
@@ -105,7 +136,21 @@ export default {
         }
         callback();
       }
-    };
+    }
+    var telephone = (rule,value,callback) =>{
+      if (this.form.areaCode === '' && this.form.telephone === ''){
+        callback(new Error('座机电话不能为空'))
+      } else {
+        var reg=/^0\d{2,3}-\d{7,8}$/
+        let telephone = this.form.areaCode + '-' + this.form.telephone
+        if (!reg.test(telephone)){
+          callback(new Error('请输入正确座机电话'))
+        }else {
+          callback();
+        }
+      }
+
+    }
     return {
       dialogFormVisible:false,
       visible:false,
@@ -131,7 +176,10 @@ export default {
         telephone:'',
         fax:'',
         ownerid: this.$route.query.id,
-        ownertable: "sa_competitor"
+        ownertable: "sa_competitor",
+        isTelephone:'0',
+        areaCode:'',
+        company:''
       },
       rules:{
         name: [
@@ -139,7 +187,10 @@ export default {
         ],
         phonenumber: [
           { required: true, validator: validateMobilePhone, trigger: 'blur' },
-        ]
+        ],
+        telephone:[
+          { required: true, validator: telephone, trigger: 'change' }
+        ],
       },
     }
   },
@@ -148,13 +199,22 @@ export default {
       this.dialogFormVisible = true
 
       this.form = Object.assign({},this.form,this.data)
+      if ((this.form.phonenumber.indexOf('-')) != '-1'){
+        this.form.isTelephone = '1'
+        this.form.areaCode = this.data.phonenumber.substring(0,this.form.phonenumber.indexOf('-'))
+        this.form.telephone = this.data.phonenumber.substring(this.form.areaCode.length+1)
+        this.form.phonenumber = ''
+      }
 
     },
     onSubmit(){
       this.$refs['form'].validate(async (valid) => {
         if (!valid) return false
+        if (this.form.isTelephone == '1'){
+          this.form.phonenumber = this.form.areaCode + "-" + this.form.telephone
+        }
         const res = await this.$api.requested({
-          "id": "20221018141802",
+          "id": "20240531151704",
           "content": this.form
         })
         this.tool.showMessage(res,()=>{
@@ -170,4 +230,4 @@ export default {
 
 <style scoped>
 
-</style>
+</style>