<style> .addContacts .add-tit { display: flex; justify-content: space-between; align-items: center; height: 20px; } .addContacts .add-tit p { display: flex; align-items: center; font-weight: bold; color: rgba(17, 17, 17, 1); font-size: 14px; } .addContacts .add-tit p span { display: inline-block; width: 6px; height: 6px; /* background: #409efe; */ border-radius: 50%; margin-right: 10px; } .addContacts .el-dialog__header { padding: 15px 20px; background: rgba(255, 255, 255, 1); } .addContacts .dialog-footer { text-align: center; background-color: rgba(248, 250, 251, 1); padding-bottom: 20px; } .addContacts .el-dialog__footer { padding: 0; } </style> <template> <el-dialog @closed="closedDialog" :modal="false" :visible.sync="dialogTableVisible" :close-on-click-modal="false" class="addContacts" width="700px"> <div class="add-tit" slot="title"> <p v-if="form.ID==0"><span></span>{{ $t('objFill.tianjialxr') }}</p> <p v-else><span></span>{{ $t('objFill.v102.xiugailianxr') }}</p> <span icon="el-icon-close"></span> </div> <div class="form-box"> <el-form :model="form" ref="form" class="MyEditForm" :rules="rules" label-width="100px"> <el-row :gutter="30"> <el-col :span="12"> <div class="MyEditForm-item"> <el-form-item :label="$t('hotel.suplier_contact')" prop="ContactName"> <el-input :placeholder="$t('objFill.qingshurulxxm')" v-model="form.ContactName" class="w200"></el-input> </el-form-item> </div> </el-col> <el-col :span="12"> <div class="MyEditForm-item"> <el-form-item :label="$t('hotel.table_tel')" prop="ContactPhone"> <el-input :placeholder="$t('rule.EnterPNum')" v-model="form.ContactPhone" class="w200"></el-input> </el-form-item> </div> </el-col> <el-col :span="12"> <div class="MyEditForm-item"> <el-form-item :label="$t('visaT.post')" prop="ContactDuty"> <el-select v-model="form.ContactDuty" :placeholder="$t('objFill.v102.qingxuanzlxrzw')" class="w200"> <el-option v-for='item in zwList' :label='item.Name' :value='item.ID' :key='item.ID'> </el-option> </el-select> </el-form-item> </div> </el-col> <el-col :span="12"> <div class="MyEditForm-item"> <el-form-item :label="$t('system.table_sex')" prop="Sex"> <el-select v-model="form.Sex" :placeholder="$t('objFill.v102.qingxzlxrxinb')" class="w200"> <el-option :label="$t('objFill.v102.baomi')" :value='0' :key='0'> </el-option> <el-option :label="$t('pub.man')" :value='1' :key='1'> </el-option> <el-option :label="$t('pub.woman')" :value='2' :key='2'> </el-option> </el-select> </el-form-item> </div> </el-col> <el-col :span="12"> <div class="MyEditForm-item"> <el-form-item :label="$t('objFill.v102.shifoujuecr')" prop="IsMain"> <el-select v-model="form.IsMain" :placeholder="$t('objFill.v102.qingxuanzsfjcr')" class="w200"> <el-option :label="$t('pub.no')" :value='0' :key='0'> </el-option> <el-option :label="$t('pub.yes')" :value='1' :key='1'> </el-option> </el-select> </el-form-item> </div> </el-col> <el-col v-if="ContactData.ID==0" :span="12"> <div class="MyEditForm-item"> <el-form-item :label="$t('admin.admin_password')" prop="Password"> <el-input :placeholder="$t('admin.admin_lnLoginPwd')" v-model="form.Password" class="w200"></el-input> </el-form-item> </div> </el-col> </el-row> <el-row> <el-col :span="24"> <div class="MyEditForm-item label-pad-left"> <el-form-item :label="$t('pub.pubRemark')"> <el-input type="textarea" :placeholder="$t('rule.EnterMark')" v-model="form.Remark"></el-input> </el-form-item> </div> </el-col> </el-row> </el-form> </div> <div slot="footer" class="dialog-footer"> <el-button type="primary" class="add-box-btn" @click="submitForm('form')" :loading="loading">{{$t('pub.sureBtn')}}</el-button> <el-button class="add-box-btn add-box-cancel" @click="dialogTableVisible = false, resetForm('form')">{{$t('pub.cancelBtn')}}</el-button> </div> </el-dialog> </template> <script> export default { props: ["ContactData"], data() { return { loading: false, dialogTableVisible: true, rules: { IsMain: [ { required: true, message: this.$t('objFill.v102.qingxuanzsfjcr'), trigger: "change" }, ], Sex: [ { required: true, message: this.$t('objFill.v102.qingxzlxrxinb'), trigger: "change" }, ], ContactDuty: [ { required: true, message: this.$t('objFill.v102.qingxuanzlxrzw'), trigger: "change" }, ], ContactName: [ { required: true, message: this.$t('objFill.qingshurulxxm'), trigger: "blur" }, ], ContactPhone: [ { required: true, message: this.$t('objFill.qingshurulxrdh'), trigger: "blur" }, ], Password: [ { required: true, message: this.$t('admin.admin_lnLoginPwd'), trigger: "blur" }, ], }, zwList: [], form: { InfoID: 0, ContactName: "", ContactPhone: "", ContactDuty: "", Sex: 0, IsMain: 0, Remark: "", ID: 0, NextContactTime: "", Password:"" }, }; }, watch: {}, mounted() { if(this.ContactData){ this.form = this.ContactData; } this.getZw(); let $this = this; setTimeout(() => { $this.dialogTableVisible = true; }, 50); }, methods: { closedDialog() { this.$emit("closeaddTeamman"); }, addData() { this.loading=true; this.crmapipost( "/api/Customer/CreateMyCustomerContact", this.form, (res) => { if (res.data.resultCode == 1) { this.loading=false; this.$message.success(this.$t('objFill.chaozuochenggong')); this.resetForm("form"); this.dialogTableVisible = false; this.$emit("addTeammanOk"); }else{ this.loading=false; this.$message.error(res.data.message) } } ); }, submitForm(addMsg) { //提交创建、修改表单 this.$refs[addMsg].validate((valid) => { if (valid) { this.addData(); } else { return false; } }); }, resetForm(formName) { // 重置表单 this.form = { InfoID: 0, ContactName: "", ContactPhone: "", ContactDuty: "", Sex: 0, IsMain: 0, Remark: "", ID: 0, NextContactTime: "", Password:"" }; this.$refs[formName].resetFields(); }, getZw() { this.apipost( "app_today_visit_GetCustomerDutyEnum", {}, (res) => { if (res.data.resultCode == 1) { this.zwList = res.data.data; } }, (err) => {} ); }, }, }; </script>