瀏覽代碼

Merge branch 'master' of http://139.196.39.194:9021/yuansh/GEKE_VIEW

ysh 2 年之前
父節點
當前提交
1b9131617f
共有 3 個文件被更改,包括 132 次插入20 次删除
  1. 16 0
      src/views/system/UserChange.vue
  2. 76 5
      src/views/system/UserList.vue
  3. 40 15
      src/views/system/modules/UserModal.vue

+ 16 - 0
src/views/system/UserChange.vue

@@ -155,6 +155,11 @@
           <a-tag  color="blue" v-if="text=='未删除'" >{{text}}</a-tag>
           <a-tag  color="#cd201f" v-if="text=='已删除'" >{{text}}</a-tag>
           </span>
+          
+          <span slot="spNames" slot-scope="text, record" >
+            <a-tag  color="#cd201f" v-if="text=='异常离职'" >{{text}}</a-tag>
+            <a-tag   v-else >{{text}}</a-tag>
+            </span>
       </a-table>
     </div>
     <!-- table区域-end -->
@@ -189,6 +194,8 @@
         <a-tag  color="#87d068" v-if="text=='同意'" >{{text}}</a-tag>
         <a-tag  color="#cd201f" v-if="text=='拒绝'" >{{text}}</a-tag>
         </span>
+        
+        
     </a-table>
   </div>
 </a-tab-pane>
@@ -306,6 +313,15 @@
             sorter: true,
             ellipsis: true,
           },
+          {
+            title: '离职类型',
+            align: "center",
+            dataIndex: 'spName',
+            scopedSlots: {
+              customRender: 'spNames'
+            },
+            sorter: true
+          },
           /* {
             title: '提交时间',
             align: "center",

+ 76 - 5
src/views/system/UserList.vue

@@ -180,9 +180,10 @@
 
         <span slot="action" slot-scope="text, record">
           <a @click="handleEdit(record)" v-has='"user:edit"'>编辑</a>
-         
          <a-divider type="vertical"/>
- <a @click="handleChangePassword(record.username)" v-has='"user:editpwd"'>修改密码</a>
+         <a @click="EditQuit(record)" v-has='"user:edit"'>离职</a>
+         <a-divider type="vertical"/>
+        <a @click="handleChangePassword(record.username)" >修改密码</a>
           <!-- <a-dropdown v-has='"user:more"'>
             <a class="ant-dropdown-link">
               更多 <a-icon type="down"/>
@@ -207,7 +208,25 @@
       </a-table>
     </div>
     <!-- table区域-end -->
-
+    
+    <a-modal v-model="visquit" title="特殊离职" @ok="Editquits()" >
+       <a-form :form="form">
+      <a-row>
+       <a-col>
+         <a-form-item  label="实际离职日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-date-picker  placeholder="请选择试实际离职日期" v-decorator="['newDate', {rules: [{ required: true, message: '请选择日期'}]}]"/>
+         </a-form-item>
+       </a-col>
+     </a-row>
+     <a-row>
+       <a-col>
+         <a-form-item  label="离职原因" :labelCol="labelCol" :wrapperCol="wrapperCol">
+           <a-textarea :maxLength="255" placeholder="请输入离职原因"  v-decorator="['demo']" style="height: 100px;"/>
+         </a-form-item>
+       </a-col>
+     </a-row>
+      </a-form >
+        </a-modal>
   
     <user-modal ref="modalForm" @ok="modalFormOk"></user-modal>
     <user-detail-modal ref="userdetailmodal"></user-detail-modal>
@@ -240,6 +259,7 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
  import { filterObj } from '@/utils/util';
  import {Modal} from 'ant-design-vue'
  import Vue from 'vue'
+ import moment from 'moment'
   export default {
     name: "UserList",
     mixins: [JeecgListMixin],
@@ -266,11 +286,29 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
           syDate:null,
           sex:null
         },
-       
+        form: this.$form.createForm(this),
+        user:{},
+        visquit:false,
         departNames:null,
         recycleBinVisible: false,
         selectedRowKeys:[],
         selectionRows:[],
+        labelCol: {
+          xs: {
+            span: 24
+          },
+          sm: {
+            span: 6
+          },
+        },
+        wrapperCol: {
+          xs: {
+            span: 24
+          },
+          sm: {
+            span: 18
+          },
+        },
         columns: [
           /*{
             title: '#',
@@ -441,7 +479,8 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
           importExcelUrls:'sys/user/importExcels',
           pulldata:"/sys/weixin/pullData",
           editstate:"/sys/user/editState",
-          userChangemb:'/userchange/userChage/exportXls'
+          userChangemb:'/userchange/userChage/exportXls',
+          editquit:'/sys/user/editQuit'
         },
       }
     },
@@ -454,6 +493,38 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
       }
     },
     methods: {
+      Editquits(){
+        this.form.validateFields((err, values) => {
+          if (!err) { 
+            var date= this.form.getFieldValue('newDate');
+            var demo=this.form.getFieldValue('demo');
+            putAction(this.url.editquit, {
+              id: this.user.id,
+              newDate:moment(date).format('YYYY-MM-DD HH:mm:ss'),
+              demo:demo,
+              realname:this.user.realname,
+              post:this.user.post
+            }).then(res => { 
+              if (res.success) {
+                this.$message.success(res.message);
+                this.visquit=false;
+              } else {
+                this.$message.warning(res.message);
+              }
+            
+            })
+            
+          } 
+        })
+      },
+      EditQuit(e){
+        this.form.setFieldsValue({
+          newDate:null,
+          demo:null
+        })
+        this.visquit=true;
+        this.user=e;
+      },
       // onSelectChanges(selectedRowKeys, selectionRows) {
       //   this.selectedRowKeys = selectedRowKeys;
       //   this.selectionRows = selectionRows;

+ 40 - 15
src/views/system/modules/UserModal.vue

@@ -199,7 +199,8 @@
           </a-col>
           <a-col :md="6" :sm="8" :lg="8">
             <a-form-item label="工龄" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <a-input style="width: 70%"  :maxLength="5" placeholder="请输入工龄" suffix="月" v-model="workMoth"  />
+              <a-input :disabled="workMothis"  :style="userId!=''&&userId!=null?'width: 40%':'width: 70%'"  :maxLength="5" placeholder="请输入工龄" suffix="月" v-model="workMoth"  />
+            <a-button style="margin-left: 5px;"  icon="search" @click="onEdit()" v-if="userId!=null&&userId!=''">变更</a-button>
             </a-form-item>
           </a-col>
 
@@ -326,6 +327,10 @@
 
       </a-table>
     </a-modal>
+    
+    <a-modal v-model="visloading" title="工龄" @ok="EditWorkMoth()">
+         <a-input :maxLength="5" placeholder="请输入工龄" suffix="月" v-model="workMoths"  />
+        </a-modal>
   </a-modal>
 
 
@@ -344,7 +349,8 @@
   import {
     getAction,
     httpAction,
-    deleteAction
+    deleteAction,
+    putAction
   } from '@/api/manage'
   import {
     addUser,
@@ -378,9 +384,11 @@
         statet:true,
         titles: "新增员工",
         isatt:'0',
+        workMoths:0,
         visibles: false,
         isEdit:false,
         worMoth:0,
+        workMothis:false,
         personType: false,
         cEndDate:null,
         dataSources: [],
@@ -562,6 +570,7 @@
           },
         },
         uploadLoading: false,
+        visloading:false,
         confirmLoading: false,
         headers: {},
         form: this.$form.createForm(this),
@@ -577,7 +586,8 @@
           sysFile: '/sysFile/sysFile/queryByUserId',
           delSysFile: '/sysFile/sysFile/deleteById',
           post: '/sys/position/listByDept',
-          emails:'/sys/user/emails'
+          emails:'/sys/user/emails',
+          editWorkMoth:'/sys/user/editWorkMoth'
         },
         identity: "1",
         fileList: [],
@@ -600,6 +610,9 @@
       workMoth(newVal,oldVal){
         this.workMoth=newVal.replace(/[^0-9]/ig,"");
       },
+      workMoths(newVal,oldVal){
+        this.workMoths=newVal.replace(/[^0-9]/ig,"");
+      },
       moth(newVal,oldVal){
         this.moth=newVal.replace(/[^0-9]/ig,"");
       },
@@ -619,9 +632,26 @@
       }
      },
     methods: {
-      
+      EditWorkMoth(){
+        putAction(this.url.editWorkMoth, {
+          id: this.userId,
+          workMoth:this.workMoths
+        }).then(res => { 
+          if (res.success) {
+            this.$message.success(res.message);
+            this.workMoth=this.workMoths - 0+this.moth - 0;
+            this.visloading=false;
+          } else {
+            this.$message.warning(res.message);
+          }
+
+        })
+      },
+      onEdit(){
+        this.workMoths=this.workMoth;
+        this.visloading=true;
+      },
       zwOk() {
-        console.log(this.selectedRowKeys)
         if (this.selectionRows != null && this.selectionRows.length > 0) {
           this.zwName = this.selectionRows[0].name;
           this.zwCode = this.selectionRows[0].code;
@@ -653,8 +683,6 @@
         this.selectedRowKeys.push(this.zwCode);
         this.visibles = true;
         this.queryzw();
-        console.log(this.selectedRowKeys)
-
       },
       queryzw() {
         getAction(this.url.post, {
@@ -818,7 +846,7 @@
           if (res.success) {
             this.roleList = res.result;
           } else {
-            console.log(res.message);
+        
           }
         });
       },
@@ -829,7 +857,7 @@
           if (res.success) {
             this.selectedRole = res.result;
           } else {
-            console.log(res.message);
+            
           }
         });
       },
@@ -858,6 +886,7 @@
         this.selectedRowKeys = [];
         this.selectionRows = [];
         this.isEdit=false;
+        this.workMothis=false;
       },
       add() {
         this.picUrl = "";
@@ -942,6 +971,7 @@
 
         if (record.id != null && record.id != "") {
           this.userId = record.id;
+          this.workMothis=true;
           this.isEdit=true;
           this.queryFiles(record.id)
         }
@@ -990,7 +1020,7 @@
             }
             that.userDepartModel.departIdList = that.checkedDepartKeys
           } else {
-            console.log(res.message);
+            
           }
         })
       },
@@ -1057,7 +1087,6 @@
             formData.workMoth=this.workMoth;
             var a = this.fileLists;
             var txt = [];
-            console.log(this.fileLists)
             if (this.fileLists != null && this.fileLists.length > 0) {
               for (var i = 0; i < this.fileLists.length; i++) {
                 txt.push(this.fileLists[i].response.message)
@@ -1115,7 +1144,6 @@
             })
 
           } else {
-            console.log("1")
           }
         })
       },
@@ -1256,7 +1284,6 @@
           callback()
         } else {
          var date= this.form.getFieldValue('entryDate');
-         console.log(this.statet)
          if(date!=null&&this.statet==true){
            var da=new Date(date);
            if(value==1){
@@ -1409,7 +1436,6 @@
       },
 
       normFile(e) {
-        console.log('Upload event:', e);
         if (Array.isArray(e)) {
           return e
         }
@@ -1432,7 +1458,6 @@
         if (info.file.status === 'done') {
           var response = info.file.response;
           this.uploadLoading = false;
-          console.log(response);
           if (response.success) {
             this.model.avatar = response.message;
             this.picUrl = "Has no pic url yet";