Преглед на файлове

用户管理字段增加

jbb преди 2 години
родител
ревизия
1659bba997
променени са 1 файла, в които са добавени 210 реда и са изтрити 44 реда
  1. 210 44
      src/views/system/modules/UserModal.vue

+ 210 - 44
src/views/system/modules/UserModal.vue

@@ -18,7 +18,7 @@
 
     <a-spin :spinning="confirmLoading">
       <a-form :form="form">
-        <a-form-item label="用户账号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+        <a-form-item label="用户账号" :labelCol="labelCol" :wrapperCol="wrapperCol"  :validateOnRuleChange="true">
           <a-input
             placeholder="请输入用户账号"
             v-decorator="['username', validatorRules.username]"
@@ -40,34 +40,69 @@
             />
           </a-form-item>
         </template>
+        <a-form-item label="工号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入工号" v-decorator="['workNo', validatorRules.workNo]" />
+        </a-form-item>
 
-        <a-form-item label="用户姓名" :labelCol="labelCol" :wrapperCol="wrapperCol">
+         <a-form-item label="用户姓名" :labelCol="labelCol" :wrapperCol="wrapperCol">
           <a-input placeholder="请输入用户姓名" v-decorator="['realname', validatorRules.realname]" />
         </a-form-item>
 
-        <a-form-item label="工号" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-input placeholder="请输入工号" v-decorator="['workNo', validatorRules.workNo]" />
+         <a-form-item label="英文名" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入英文名" v-decorator="['nEnName',{}]" />
         </a-form-item>
 
-        <a-form-item label="职务" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <j-select-position placeholder="请选择职务" :multiple="false" v-decorator="['post', {}]" />
+         <a-form-item label="性别" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-select v-decorator="['sex', {}]" placeholder="请选择性别">
+            <a-select-option :value="1">男</a-select-option>
+            <a-select-option :value="2">女</a-select-option>
+          </a-select>
         </a-form-item>
 
-        <a-form-item label="角色分配" :labelCol="labelCol" :wrapperCol="wrapperCol" v-show="!roleDisabled">
-          <a-select
-            mode="multiple"
+        <a-form-item label="生日" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-date-picker
             style="width: 100%"
-            placeholder="请选择用户角色"
-            optionFilterProp="children"
-            v-model="selectedRole"
-          >
-            <a-select-option v-for="(role, roleindex) in roleList" :key="roleindex.toString()" :value="role.id">
-              {{ role.roleName }}
-            </a-select-option>
+            placeholder="请选择生日"
+            v-decorator="['birthday', { initialValue: !model.birthday ? null : moment(model.birthday, dateFormat) }]"
+          />
+        </a-form-item>
+
+        <a-form-item label="婚否" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-select v-decorator="['nMarriage', {}]" placeholder="请选择性别">
+            <a-select-option :value="1">是</a-select-option>
+            <a-select-option :value="2">否</a-select-option>
           </a-select>
         </a-form-item>
 
-        <!--部门分配-->
+        <a-form-item label="户口" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入户口" v-decorator="['nRegistered',{}]" />
+        </a-form-item>
+
+        <a-form-item label="户口所在地" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入户口所在地" v-decorator="['nRegisteredAddr', {}]" />
+        </a-form-item>
+
+         <a-form-item label="政治面貌" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入政治面貌" v-decorator="['nOutlook',{}]" />
+        </a-form-item>
+
+         <a-form-item label="所学专业" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入所学专业" v-decorator="['nMajor', {}]" />
+        </a-form-item>
+
+         <a-form-item label="学历" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入学历" v-decorator="['nEducation', {}]" />
+        </a-form-item>
+
+         <a-form-item label="毕业时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-date-picker
+            style="width: 100%"
+            placeholder="请选择毕业时间"
+            v-decorator="['nGraduationTime', { initialValue: !model.nGraduationTime ? null : moment(model.nGraduationTime, dateFormat) }]"
+          />
+        </a-form-item>
+
+         <!--部门分配-->
         <a-form-item label="公司部门分配" :labelCol="labelCol" :wrapperCol="wrapperCol" v-show="!departDisabled">
           <a-input-search
             placeholder="点击右侧按钮选择公司和部门"
@@ -78,50 +113,117 @@
             <a-button slot="enterButton" icon="search">选择</a-button>
           </a-input-search>
         </a-form-item>
-        <!-- update--begin--autor:wangshuai-----date:20200108------for:新增身份和负责部门------ -->
-        <a-form-item label="身份" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-radio-group v-model="identity" @change="identityChange">
-            <a-radio value="1">普通用户</a-radio>
-            <a-radio value="2">上级</a-radio>
-          </a-radio-group>
+
+        <a-form-item label="职务" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <j-select-position placeholder="请选择职务" :multiple="false" v-decorator="['post', {}]" />
         </a-form-item>
-        <a-form-item label="负责部门" :labelCol="labelCol" :wrapperCol="wrapperCol" v-if="departIdShow == true">
+
+        <a-form-item label="角色分配" :labelCol="labelCol" :wrapperCol="wrapperCol" v-show="!roleDisabled">
           <a-select
             mode="multiple"
             style="width: 100%"
-            placeholder="请选择负责部门"
-            v-model="departIds"
+            placeholder="请选择用户角色"
             optionFilterProp="children"
-            :getPopupContainer="target => target.parentNode"
-            :dropdownStyle="{ maxHeight: '200px', overflow: 'auto' }"
+            v-model="selectedRole"
           >
-            <a-select-option v-for="item in resultDepartOptions" :key="item.key" :value="item.key">{{
-              item.title
-            }}</a-select-option>
+            <a-select-option v-for="(role, roleindex) in roleList" :key="roleindex.toString()" :value="role.id">
+              {{ role.roleName }}
+            </a-select-option>
           </a-select>
         </a-form-item>
-        <!-- update--end--autor:wangshuai-----date:20200108------for:新增身份和负责部门------ -->
-
 
-        <a-form-item label="生日" :labelCol="labelCol" :wrapperCol="wrapperCol">
+        <a-form-item label="入司日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
           <a-date-picker
             style="width: 100%"
-            placeholder="请选择生日"
-            v-decorator="['birthday', { initialValue: !model.birthday ? null : moment(model.birthday, dateFormat) }]"
+            placeholder="请选择入司日期"
+            v-decorator="['nInductionTime', { initialValue: !model.nInductionTime ? null : moment(model.nInductionTime, dateFormat) }]"
           />
         </a-form-item>
 
-        <a-form-item label="性别" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-select v-decorator="['sex', {}]" placeholder="请选择性别">
-            <a-select-option :value="1">男</a-select-option>
-            <a-select-option :value="2">女</a-select-option>
-          </a-select>
+        <a-form-item label="座机" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入座机" v-decorator="['telephone', validatorRules.telephone]" />
+        </a-form-item>
+
+          <a-form-item label="公司座机" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入公司座机" v-decorator="['nCompanyPhone', {}]" />
+        </a-form-item>
+
+        <a-form-item label="公司内线" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入公司内线" v-decorator="['nCardNo', {}]" />
         </a-form-item>
 
         <a-form-item label="邮箱" :labelCol="labelCol" :wrapperCol="wrapperCol">
           <a-input placeholder="请输入邮箱" v-decorator="['email', validatorRules.email]" />
         </a-form-item>
 
+         <a-form-item label="工资卡号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入工资卡号" v-decorator="['nCardNo', {}]" />
+        </a-form-item>
+
+        <a-form-item label="虚拟网号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入虚拟网号" v-decorator="['nVirtualNo', {}]" />
+        </a-form-item>
+        
+        <a-form-item label="转正日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-date-picker
+            style="width: 100%"
+            placeholder="请选择转正日期"
+            v-decorator="['nBecomeTime', { initialValue: !model.nBecomeTime ? null : moment(model.nBecomeTime, dateFormat) }]"
+          />
+        </a-form-item>
+
+        <a-form-item label="社保申报日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-date-picker
+            style="width: 100%"
+            placeholder="请选择社保申报日期"
+            v-decorator="['nSocialTime', { initialValue: !model.nSocialTime ? null : moment(model.nSocialTime, dateFormat) }]"
+          />
+        </a-form-item>
+
+        <a-form-item label="公积金日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-date-picker
+            style="width: 100%"
+            placeholder="请选择公积金日期"
+            v-decorator="['nFundTime', { initialValue: !model.nFundTime ? null : moment(model.nFundTime, dateFormat) }]"
+          />
+        </a-form-item>
+
+        <a-form-item label="公积金基数" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入公积金基数" v-decorator="['nFundBase', {}]" />
+        </a-form-item>
+
+        <a-form-item label="社保基数" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入社保基数" v-decorator="['nSocialBase',{}]" />
+        </a-form-item>
+
+        <a-form-item label="年假" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入年假" v-decorator="['nAnnualNum', {}]" />
+        </a-form-item>
+
+        <a-form-item label="已请年假" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入输入已请年假" v-decorator="['nAnnualOldNum', {}]" />
+        </a-form-item>
+
+        <a-form-item label="剩余年假" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入剩余年假" v-decorator="['nAnnualNowNum', {}]" />
+        </a-form-item>
+        
+        <a-form-item label="民族" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入民族" v-decorator="['nNation', {}]" />
+        </a-form-item>
+
+        <a-form-item label="籍贯" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入籍贯" v-decorator="['nNativePlace', {}]" />
+        </a-form-item>
+
+        <a-form-item label="身份证号码" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入身份证号码" v-decorator="['nIdNo', {}]" />
+        </a-form-item>
+
+        <a-form-item label="家庭住址" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入家庭住址" v-decorator="['nHomeAddress', {}]" />
+        </a-form-item>
+
         <a-form-item label="手机号码" :labelCol="labelCol" :wrapperCol="wrapperCol">
           <a-input
             placeholder="请输入手机号码"
@@ -129,11 +231,53 @@
             v-decorator="['phone', validatorRules.phone]"
           />
         </a-form-item>
+        
+        <a-form-item label="对本企业要求" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入" v-decorator="['nRequirement', {}]" />
+        </a-form-item>
+        
+        <a-form-item label="希望待遇" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入希望待遇" v-decorator="['nHopeFor',{}]" />
+        </a-form-item>
+        
+        <a-form-item label="与原单位关系" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input placeholder="请输入" v-decorator="['nRelationshipFor', {}]" />
+        </a-form-item>
 
-        <a-form-item label="座机" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-input placeholder="请输入座机" v-decorator="['telephone', validatorRules.telephone]" />
+         <a-form-item label="人员类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
+             <a-input placeholder="请输入" v-decorator="['nPersonnelType', {}]" />
+        </a-form-item>
+        <!-- update--begin--autor:wangshuai-----date:20200108------for:新增身份和负责部门------ -->
+        <a-form-item label="身份" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-radio-group v-model="identity" @change="identityChange">
+            <a-radio value="1">普通用户</a-radio>
+            <a-radio value="2">上级</a-radio>
+          </a-radio-group>
+        </a-form-item>
+        <a-form-item label="负责部门" :labelCol="labelCol" :wrapperCol="wrapperCol" v-if="departIdShow == true">
+          <a-select
+            mode="multiple"
+            style="width: 100%"
+            placeholder="请选择负责部门"
+            v-model="departIds"
+            optionFilterProp="children"
+            :getPopupContainer="target => target.parentNode"
+            :dropdownStyle="{ maxHeight: '200px', overflow: 'auto' }"
+          >
+            <a-select-option v-for="item in resultDepartOptions" :key="item.key" :value="item.key">{{
+              item.title
+            }}</a-select-option>
+          </a-select>
         </a-form-item>
 
+        <a-form-item label="是否OA用户" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-radio-group v-model="ifOa" @change="changeOa">
+            <a-radio value="1">是</a-radio>
+            <a-radio value="0">否</a-radio>
+          </a-radio-group>
+        </a-form-item>
+        <!-- update--end--autor:wangshuai-----date:20200108------for:新增身份和负责部门------ -->
+   
         <a-form-item label="工作流引擎" :labelCol="labelCol" :wrapperCol="wrapperCol">
           <j-dict-select-tag
             v-decorator="['activitiSync', {}]"
@@ -144,6 +288,18 @@
           />
         </a-form-item>
 
+         <a-form-item label="工作简历" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input type="textarea" placeholder="请输入" v-decorator="['nResume', {}]" />
+        </a-form-item>
+
+        <a-form-item label="家庭成员" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input type="textarea" placeholder="请输入" v-decorator="['nMemberOfFamily', {}]" />
+        </a-form-item>
+
+        <a-form-item label="备注信息" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-input type="textarea" placeholder="请输入" v-decorator="['nRemarks', {}]" />
+        </a-form-item>
+
         <a-form-item label="头像" :labelCol="labelCol" :wrapperCol="wrapperCol">
           <j-image-upload class="avatar-uploader" text="上传" v-model="fileList"></j-image-upload>
         </a-form-item>
@@ -200,7 +356,7 @@ export default {
                 username: {
                     rules: [
                         {
-                            required: true,
+                            required: false,
                             message: '请输入用户账号!'
                         },
                         {
@@ -277,6 +433,7 @@ export default {
                 syncUserByUserName: '/process/extActProcess/doSyncUserByUserName' // 同步用户到工作流
             },
             identity: '1',
+            ifOa:'0',
             fileList: [],
             orgObject: {
                 pkOrg: '', // 选中的公司id
@@ -426,6 +583,7 @@ export default {
             console.log('?????')
             this.$emit('close')
             this.visible = false
+            this.ifOa ='0'
             this.disableSubmit = false
             this.selectedRole = []
             this.userDepartModel = { userId: '', departIdList: [] }
@@ -440,6 +598,7 @@ export default {
             this.fileList = []
             this.orgObject = []
             this.userObject = {}
+            this.validatorRules.username.rules[0].required = false
         },
         moment,
         handleSubmit () {
@@ -693,6 +852,13 @@ export default {
             } else {
                 this.departIdShow = true
             }
+        },
+        changeOa(e){
+            if(e.target.value === '1'){
+                this.validatorRules.username.rules[0].required = true
+            }else{
+                this.validatorRules.username.rules[0].required = false
+            }
         }
     }
 }