| <template> | 
|   <GlobalAlertWindow | 
|     :title="title" | 
|     :visible.sync="visible" | 
|     :confirm-working="isWorking" | 
|     width="750px" | 
|     @confirm="confirm" | 
|   > | 
|     <el-form :model="form" ref="form" label-width="125px" :rules="rules"> | 
|       <el-form-item label="企业全称" prop="name"> | 
|         <el-input v-model="form.name" placeholder="请输入客户企业全称,不超过30字" v-trim/> | 
|         企业名称需与工商部门登记信息一致 | 
|       </el-form-item> | 
|       <el-form-item label="客户简称" prop="shortName"> | 
|         <el-input v-model="form.shortName" placeholder="请输入客户简称" v-trim/> | 
|       </el-form-item> | 
|       <el-form-item label="统一信用代码" prop="creditCode"> | 
|         <el-input v-model="form.creditCode" placeholder="请输入统一信用代码" v-trim/> | 
|         统一信用代码需与工商部门登记信息一致 | 
|       </el-form-item> | 
|       <el-form-item label="登录账号" prop="managerUserName"> | 
|         <el-input v-model="form.managerUserName" :disabled="!!this.form.id" placeholder="请输入登录账号" v-trim/> | 
|       </el-form-item> | 
|       <el-form-item label="系统使用有效期" prop="oepnValidDate"> | 
|         <el-date-picker v-model="form.oepnValidDate" value-format="yyyy-MM-dd" :disabled="!!this.form.id" placeholder="请输入系统使用有效期"></el-date-picker> | 
|       </el-form-item> | 
|       <el-form-item label="主播数量限制" prop="userNum"> | 
|         <el-input v-model="form.userNum" :disabled="!!this.form.id" placeholder="请输入主播数量限制" v-trim/> | 
|         输入0表示不限制 | 
|       </el-form-item> | 
|       <el-form-item label="销售人员" prop="salesmanId"> | 
|         <!-- <el-input v-model="form.salesmanId" placeholder="请输入销售人员编码" v-trim/> --> | 
|         <el-select v-model="form.salesmanId" clearable placeholder="请选择" filterable > | 
|           <el-option v-for="item in sales" :label="item.realname" :key="item.id" :value="item.id"></el-option> | 
|         </el-select> | 
|       </el-form-item> | 
|   | 
|       <div class="more"> | 
|         <div class="more-title">更多设置</div> | 
|         <el-form-item label="联系人" prop="linkname"> | 
|           <el-input v-model="form.linkname" placeholder="请输入联系人" v-trim/> | 
|         </el-form-item> | 
|         <el-form-item label="联系人电话" prop="linkephone"> | 
|           <el-input v-model="form.linkephone" placeholder="请输入联系人电话" v-trim/> | 
|         </el-form-item> | 
|       </div> | 
|        | 
|        | 
|        | 
|     </el-form> | 
|   </GlobalAlertWindow> | 
| </template> | 
|   | 
| <script> | 
| import BaseOpera from '@/components/base/BaseOpera' | 
| import GlobalAlertWindow from '@/components/common/GlobalAlertWindow' | 
| import { findAllList } from '@/api/system/user' | 
| import { loginNameRule, creditCode } from '@/utils/form' | 
| export default { | 
|   name: 'OperaCompanyWindow', | 
|   extends: BaseOpera, | 
|   components: { GlobalAlertWindow }, | 
|   data () { | 
|     return { | 
|       // 表单数据 | 
|       form: { | 
|         id: null, | 
|         managerUserName: '', | 
|         name: '', | 
|         shortName: '', | 
|         remark: '', | 
|         managerId: '', | 
|         linkname: '', | 
|         linkephone: '', | 
|         creditCode: '', | 
|         userNum: '5', | 
|         oepnValidDate: '', | 
|         salesmanId: '' | 
|       }, | 
|       sales: [], | 
|       // 验证规则 | 
|       rules: { | 
|         name: [ | 
|           { required: true, message: '请输入客户企业全称', tigger: 'blur'} | 
|         ], | 
|         managerUserName: [ | 
|           { required: true, validator: loginNameRule, message: '请输入登录账号', tigger: 'blur'} | 
|         ], | 
|         creditCode: [ | 
|           { validator: creditCode, trigger: 'blur' } | 
|         ], | 
|         openUserNum: [ | 
|           { pattern: /^[0-9]+$/, message: '只可以输入数字', trigger: 'change' } | 
|         ] | 
|       } | 
|     } | 
|   }, | 
|   created () { | 
|     this.config({ | 
|       api: '/business/company', | 
|       'field.id': 'id' | 
|     }) | 
|     findAllList({ type: 0 }) | 
|       .then(res => { | 
|         this.sales = res | 
|       }) | 
|   }, | 
|   methods: { | 
|     open(title, target) { | 
|       this.title = title | 
|       this.visible = true | 
|       // 新建 | 
|       if (target == null) { | 
|         this.$nextTick(() => { | 
|           this.$refs.form.resetFields() | 
|           let data = new Date(new Date().getTime() + 31536000000) | 
|           this.form.oepnValidDate = `${data.getFullYear()}-${data.getMonth() +1}-${data.getDate()}` | 
|           this.form[this.configData['field.id']] = null | 
|         }) | 
|         return | 
|       } | 
|       // 编辑 | 
|       this.$nextTick(() => { | 
|         for (const key in this.form) { | 
|           this.form[key] = target[key] | 
|         } | 
|         this.form.multifileList.forEach(item => { | 
|           item.url = item.filefullurl | 
|         }) | 
|       }) | 
|     }, | 
|   }, | 
| } | 
| </script> | 
|   | 
| <style lang="scss" scoped> | 
| .more { | 
|   margin-top: 40px; | 
|    | 
|   .more-title { | 
|     font-weight: 600; | 
|     font-size: 18px; | 
|     margin-bottom: 10px; | 
|   } | 
| } | 
| ::v-deep .el-input { | 
|   width: 300px; | 
|   margin-right: 10px; | 
| } | 
| </style> |