LiGuang 2 years ago
parent
commit
37d35dd6fd

+ 9 - 4
src/views/system/AttendanceRuleList.vue

@@ -65,7 +65,7 @@
               </div>
             </template>
 
-            <span v-for='(d,i) in tpdata' style="margin-left: -5px;" :slot="d" slot-scope="text, record, index">
+            <span v-for='(d,i) in tpdata' style="margin-left: -7px;" :slot="d" slot-scope="text, record, index">
               <span >
                 <a-tag color="blue" v-if="text=='休'">{{text.substring(0,1)}}</a-tag>
                 <a-tag color="red" v-if="text=='法'">{{text.substring(0,1)}}</a-tag> 
@@ -208,7 +208,7 @@
         },
         ipagination:{
           
-          pageSize: 30,
+          pageSize: 50,
         
         },
         description: '打卡规则管理页面',
@@ -400,12 +400,14 @@
             title: '名称',
             dataIndex: 'realname',
             width: '100px',
+            align:"center",
             sorter: true
           })
           this.columns.push({
             title: '部门',
             dataIndex: 'deptName',
             width: '105px',
+            align:"center",
             sorter: true
           })
             this.columns.push({
@@ -473,13 +475,15 @@
               title: '名称',
               dataIndex: 'realname',
               width: '70px',
-              sorter: true
+              sorter: true,
+              align:"center",
             })
             this.columns.push({
               title: '部门',
               dataIndex: 'deptName',
               width: '105px',
-              sorter: true
+              sorter: true,
+              align:"center",
             })
             for (var i = 1; i <= moth.getDate(); i++) {
               var d = new Date(this.formatDate(this.currentYear, this.currentMonth, i))
@@ -489,6 +493,7 @@
                   title: d.getDate()
                 },
                 dataIndex: "a" + d.getDate(),
+                align:"center",
                 scopedSlots: {
                   customRender: i
                 },

+ 1 - 1
src/views/system/MakeUpCardList.vue

@@ -142,7 +142,7 @@
             dataIndex: 'deptName'
           },
           {
-            title: '级部门',
+            title: '级部门',
             align: "center",
             dataIndex: 'deptName2'
           },

+ 11 - 10
src/views/system/SysPositionList.vue

@@ -16,13 +16,7 @@
               <a-input placeholder="请输入职位名称" v-model="queryParam.name"></a-input>
             </a-form-item>
           </a-col>
-          <template v-if="toggleSearchStatus">
-            <!-- <a-col :md="6" :sm="8">
-              <a-form-item label="职级">
-                <j-dict-select-tag v-model="queryParam.postRank" placeholder="请选择职级" dictCode="position_rank"/>
-              </a-form-item>
-            </a-col> -->
-            <a-col :md="6" :sm="8">
+          <a-col :md="6" :sm="8">
               <a-form-item label="部门名称">
                 <a-input @click="openModal" placeholder="请点击选择部门" v-model="departNames" readOnly>
                   <a-icon slot="prefix" type="cluster" title="部门选择控件" />
@@ -33,15 +27,22 @@
               </a-form-item>
             
           </a-col>
+          <template v-if="toggleSearchStatus">
+            <!-- <a-col :md="6" :sm="8">
+              <a-form-item label="职级">
+                <j-dict-select-tag v-model="queryParam.postRank" placeholder="请选择职级" dictCode="position_rank"/>
+              </a-form-item>
+            </a-col> -->
+            
           </template>
           <a-col :md="6" :sm="8">
             <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
               <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
               <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
-              <a @click="handleToggleSearch" style="margin-left: 8px">
+              <!-- <a @click="handleToggleSearch" style="margin-left: 8px">
                 {{ toggleSearchStatus ? '收起' : '展开' }}
                 <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
-              </a>
+              </a> -->
             </span>
           </a-col>
 
@@ -172,7 +173,7 @@ import JTreeSelect from '@/components/jeecg/JTreeSelect'
             sorter: true
           },
           {
-            title: '级部门',
+            title: '级部门',
             align: 'center',
             dataIndex: 'deptName2',
             sorter: true

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

@@ -19,12 +19,17 @@
              
             </a-form-item>
           </a-col>
-          <a-col :xl="6" :lg="7" :md="8" :sm="24">
-            <a-form-item label="状态">
-             <j-dict-select-tag  v-model="queryParam.state" placeholder="请选择类型"
-               dictCode="state" />
+          <a-col :md="6" :sm="8">
+            <a-form-item label="离职日期">
+                  <a-range-picker
+                    format="YYYY-MM-DD"
+                    :placeholder="['开始时间', '结束时间']"
+                    @change="onDateChanges"
+                    
+                  />
             </a-form-item>
           </a-col>
+          
             
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
             <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
@@ -39,19 +44,14 @@
         </a-row>
         
         <template v-if="toggleSearchStatus">
-          <a-row>
+          <a-row :gutter="24" >
             <a-col :md="6" :sm="8">
-              <a-form-item label="离职日期">
-                    <a-range-picker
-                      style="width: 210px"
-                      format="YYYY-MM-DD"
-                      :placeholder="['开始时间', '结束时间']"
-                      @change="onDateChanges"
-                      
-                    />
+              <a-form-item label="状态">
+               <j-dict-select-tag  v-model="queryParam.state" placeholder="请选择类型"
+                 dictCode="state" />
               </a-form-item>
             </a-col>
-            <a-col :md="6" :sm="12" >
+            <a-col :md="6" :sm="8" >
               <a-form-item label="人员类别">
                 <j-multi-select-tag
                 v-model="queryParam.spName" placeholder="请选择人员类别"
@@ -94,11 +94,10 @@
           </a-col>
         </a-row>
         <template v-if="toggleSearchStatuss">
-          <a-row>
+          <a-row :gutter="24" >
             <a-col :md="6" :sm="5">
               <a-form-item label="生效日期">
                     <a-range-picker
-                      style="width: 210px"
                       format="YYYY-MM-DD"
                       :placeholder="['开始时间', '结束时间']"
                       @change="onDateChange"
@@ -263,6 +262,7 @@
             title: '姓名',
             align: "center",
             dataIndex: 'userName',
+            ellipsis: true,
             sorter: true
           },
           {
@@ -370,6 +370,7 @@
             title: '姓名',
             align: "center",
             dataIndex: 'realname',
+            ellipsis: true,
             sorter: true,
           },
           {

+ 2 - 3
src/views/system/UserContractList.vue

@@ -40,11 +40,10 @@
         </a-row>
         
           <template v-if="toggleSearchStatus">
-            <a-row>
+            <a-row :gutter="24">
             <a-col :xl="6" :lg="7" :md="8" :sm="24" >
                 <a-form-item label="合同结束日期">
                       <a-range-picker
-                        style="width: 210px"
                         format="YYYY-MM-DD"
                         :placeholder="['开始时间', '结束时间']"
                         @change="onDateChanges"
@@ -188,7 +187,7 @@
             sorter: true
           },
           {
-            title: '级部门',
+            title: '级部门',
             align: "center",
             dataIndex: 'deptName1',
             sorter: true

+ 15 - 20
src/views/system/UserList.vue

@@ -44,32 +44,25 @@
         </a-row>
         <template v-if="toggleSearchStatus">
           <a-row :gutter="24">
-          
-            <a-col :md="6" :sm="8">
-              <a-form-item label="性别">
-                <a-select placeholder="请选择性别"
-                v-model="queryParam.sex"
-                  :getPopupContainer="(target) => target.parentNode">
-                  <a-select-option :value="1">男</a-select-option>
-                  <a-select-option :value="2">女</a-select-option>
-                </a-select>
-              </a-form-item>
-            </a-col>
             <a-col :md="6" :sm="8">
                 <a-form-item label="入职日期">
                   <a-range-picker
-                    style="width: 210px"
                     format="YYYY-MM-DD"
                     :placeholder="['开始时间', '结束时间']"
                     @change="onDateChange"
-                    
                   />
                 </a-form-item>
               </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="性别">
+                  <j-dict-select-tag v-model="queryParam.sex"  placeholder="请选择性别"
+                    dictCode="sex" />
+                </a-form-item>
+              </a-col>
               <a-col :md="6" :sm="8">
                   <a-form-item label="试用结束日期">
                     <a-range-picker
-                      style="width: 210px"
+                      
                       format="YYYY-MM-DD"
                       :placeholder="['开始时间', '结束时间']"
                       @change="onDateChanges"
@@ -101,7 +94,6 @@
         </template>
       </a-form>
     </div>
-
     <!-- 操作按钮区域 -->
     <div class="table-operator" style="border-top: 5px">
       <a-button @click="handleAdd()" type="primary" icon="plus" v-has="'user:add'" >添加员工</a-button>
@@ -181,7 +173,7 @@
         <span slot="action" slot-scope="text, record">
           <a @click="handleEdit(record)" v-has='"user:edit"'>编辑</a>
          <a-divider type="vertical"/>
-         <a @click="EditQuit(record)" v-has='"user:quit"'>离职</a>
+         <a @click="EditQuit(record)" >离职</a>
          <a-divider type="vertical"/>
         <a @click="handleChangePassword(record.username)" >修改密码</a>
           <!-- <a-dropdown v-has='"user:more"'>
@@ -325,7 +317,8 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
             align: "center",
             dataIndex: 'workNo',
             width: 100,
-            sorter: true
+            sorter: true,
+            fixed: 'left',
           },
           {
             title: '员工姓名',
@@ -333,7 +326,8 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
             width: 100,
             dataIndex: 'realname',
             scopedSlots: {customRender: "userRealname"},
-            sorter: true
+            sorter: true,
+            fixed: 'left',
           },
           // {
           //   title: '头像',
@@ -403,7 +397,7 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
           {
             title: '职位',
             align: "center",
-            width: 120,
+            width: 110,
             dataIndex: 'post_dictText',
             sorter: true
           },
@@ -425,7 +419,8 @@ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
           {
             title: '合同到期时间',
             align: "center",
-            width: 120,
+            width: 130,
+            sorter: true,
             dataIndex: 'cEndDate',
             
           },

+ 27 - 22
src/views/system/UserPrizeList.vue

@@ -7,10 +7,17 @@
         <a-row :gutter="24">
 
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
-            <a-form-item label="员工姓名">
+            <a-form-item label="姓名">
               <a-input placeholder="请输入员工姓名" v-model="queryParam.realname"></a-input>
             </a-form-item>
           </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="类型">
+              <j-dict-select-tag v-model="queryParam.type"  placeholder="请选择类型"
+                dictCode="work_type" />
+          
+            </a-form-item>
+          </a-col>
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
             <a-form-item label="部门名称">
               <a-input @click="openModal" placeholder="请点击选择部门" v-model="departNames" readOnly >
@@ -20,26 +27,8 @@
               
             </a-form-item>
           </a-col>
-          <template v-if="toggleSearchStatus">
-            <a-col :xl="6" :lg="7" :md="8" :sm="24">
-              <a-form-item label="类型">
-                <j-dict-select-tag v-model="queryParam.type"  placeholder="请选择类型"
-                  dictCode="work_type" />
-
-              </a-form-item>
-            </a-col>
-            <a-col :xl="6" :lg="7" :md="8" :sm="24">
-              <a-form-item label="备注">
-                <a-input placeholder="请输入备注" v-model="queryParam.demo"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :xl="6" :lg="7" :md="8" :sm="24">
-              <a-form-item label="日期">
-                <a-date-picker valueFormat="YYYY-MM-DD HH:mm:ss" showTime format='YYYY-MM-DD'
-                  v-model="queryParam.date" />
-              </a-form-item>
-            </a-col>
-          </template>
+          
+        
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
             <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
               <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
@@ -52,6 +41,22 @@
           </a-col>
 
         </a-row>
+        <template v-if="toggleSearchStatus">
+          <a-row :gutter="24">
+            <a-col :xl="6" :lg="9" :md="9" :sm="24">
+              <a-form-item label="日期">
+                <a-date-picker valueFormat="YYYY-MM-DD HH:mm:ss" showTime format='YYYY-MM-DD'
+                  v-model="queryParam.date" />
+              </a-form-item>
+            </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="备注">
+              <a-input placeholder="请输入备注" v-model="queryParam.demo"></a-input>
+            </a-form-item>
+          </a-col>
+          
+          </a-row>
+        </template>
       </a-form>
     </div>
 
@@ -159,7 +164,7 @@
             dataIndex: 'deptName'
           },
           {
-            title: '级部门',
+            title: '级部门',
             align: "center",
             dataIndex: 'deptName1'
           },

+ 61 - 47
src/views/system/modules/AttendanceRuleModal.vue

@@ -75,13 +75,13 @@
         </div>
 
         <div>
-          <a-table bordered :data-source="dataSource" :loading="loading" :columns="columns" :scroll="{ x:1000,y:600}"
+          <a-table bordered size="middle " :data-source="dataSource" :loading="loading" :columns="columns" :scroll="{ y:600}"
             :pagination="ipagination" @change="handleTableChange">
             <template v-for='(dayobject,i) in days' :slot="dayobject.day.getDate()" style="color: #ff6b81">
-              <div style="height: 35px;">
-                <div style="text-align: center;margin-top: -13px;">
-                  <p>{{dayobject.day.getDate()}}</p>
-                  <div style="margin-top: -10px;">
+              <div style="height: 0px;">
+                <div style="text-align: center;font-size: small;">
+                  <p style="margin-top: -10px;">{{dayobject.day.getDate()}}</p>
+                  <div style="margin-top: -15px;">
                     <p v-if='dayobject.day.getDay()==0'>日</p>
                     <p v-else-if='dayobject.day.getDay()==1'>一</p>
                     <p v-else-if='dayobject.day.getDay()==2'>二</p>
@@ -94,18 +94,18 @@
               </div>
             </template>
 
-            <span v-for='(d,i) in tpdata' style="margin-left: -13px;" :slot="d" slot-scope="text, record, index">
-              <a-dropdown :trigger="['click']">
-                <a-tag closable @close="(e) => log(e,d,record)" color="blue" v-if="text=='休'"
-                  @click="UserType(d,record,index,text)">{{text.substring(0,1)}}</a-tag>
-                <a-tag color="red" style="margin-left: 10px;" v-if="text=='法'" @click="UserType(d,record,index,text)">
-                  {{text.substring(0,1)}}</a-tag>
-                <a-tag closable @close="(e) => log(e,d,record)" color="#87d068" v-if="text!='休'&&text!=''&&text!=null"
+            <span v-for='(d,i) in tpdata'  :slot="d" slot-scope="text, record, index">
+              <a-dropdown :trigger="['click']" >
+                <a-tag  style="margin-left: -8.5px;" closable @close="(e) => log(e,d,record)" color="blue" v-if="text=='休'"
+                  @click="UserType(d,record,index,text)"><span style="size: a3;">{{text.substring(0,1)}}</span></a-tag>
+                <a-tag color="red" style="margin-left: 2px;" v-if="text=='法'" @click="UserType(d,record,index,text)">
+                {{text.substring(0,1)}}</a-tag>
+                <a-tag   closable style="margin-left: -7px;" @close="(e) => log(e,d,record)" color="#87d068" v-if="text!='休'&&text!=''&&text!=null"
                   @click="UserType(d,record,index,text)">
-                  {{text.substring(0,1)}}
+                  <span style="size:a3;">{{text.substring(0,1)}}</span>
                 </a-tag>
                 <a-tag color="#FFFFFF" v-else @click="UserType(d,record,index,text)"
-                  style="width: 40px;height: 20px;margin-left: 4px;"> </a-tag>
+                  style="width: 38px;height: 20px;margin-left: -7px;"> </a-tag>
                 <a-menu slot="overlay" v-if="record.isColse" :style="isShow?'height:300px;overflow-y: scroll;':''">
                   <a-menu-item key="0" v-if="isShows">
                     <a @click="shiftOks(0,d,record,index)">休息</a>
@@ -117,13 +117,8 @@
                   </a-menu-item>
                 </a-menu>
               </a-dropdown>
-
             </span>
-            <template slot="names" slot-scope="text, record, index">
-              <div style="height: 27px;">
-                {{text}}
-              </div>
-            </template>
+            
           </a-table>
         </div>
 
@@ -178,7 +173,7 @@
         savef: true,
         ipagination:{
           
-          pageSize: 30,
+          pageSize: 50,
         
         },
         columns: [],
@@ -401,17 +396,36 @@
         this.selectUsers = tags;
       },
       UserType(e, a, index, text) {
+        this.isShow = false;
+        this.isShows = false;
         if (!a.isColse) {
           this.$message.warning("当月已关账无法操作!");
           return;
         } else if (text != null && text == '法') {
-          this.isShow = false;
-          this.isShows = false;
           return;
         }
+        var d = new Date(this.formatDate(this.currentYear, this.currentMonth, e)+" 00:00:00")
+        var ed = new Date(a.entry_date)
+        console.log(d.getTime()+"-----"+ed.getTime())
+        if(a.employment_status==10){
+          if(d.getTime()<ed.getTime()){
+            this.$message.warning("员工入职之前日期不能排班");
+            return;
+          }
+        }else if(a.employment_status==30){
+          var edt = new Date(a.term_date)
+          
+          if(d.getTime()<ed.getTime()){
+            this.$message.warning("员工入职之前日期不能排班");
+            return;
+          }else if(d.getTime()>edt.getTime()){
+            this.$message.warning("员工离职之后日期不能排班");
+            return;
+          }
+        }
         this.isShow = true;
         this.isShows = true;
-        var d = new Date(this.formatDate(this.currentYear, this.currentMonth, e))
+        
         var obj = this.dataSource[index];
         var list = [];
         var sum = 0;
@@ -496,18 +510,17 @@
                 for (var t in obj) { //用javascript的for/in循环遍历对象的属性
                   if (this.currentYear == list[o].split("-")[0] && this.currentMonth == list[o].split("-")[1]) {
                     if (t == "shiftid" + list[o].split("-")[2] && list[o].split("-")[2] == e) {
-                      if (obj[t] != "0" && obj[t] != null) {
+                      if (obj[t] != "0" && obj[t] != null&& obj[t] != "") {
                         sum++;
-                        f = true;
                       }
-                      if (obj[t] != null && obj[t] == "0") {
+                      if (obj[t] != null && obj[t] == "0"&& obj[t] != "") {
                         xsum++;
                       }
                     } else if (t == "shiftid" + list[o].split("-")[2]) {
-                      if (obj[t] != "0" && obj[t] != null) {
+                      if (obj[t] != "0" && obj[t] != null&& obj[t] != "") {
                         sum++;
                       }
-                      if (obj[t] != null && obj[t] == "0") {
+                      if (obj[t] != null &&obj[t] != ""&& obj[t] == "0") {
                         xsum++;
                       }
                     }
@@ -516,16 +529,16 @@
               }
 
               if (a.category == 106) {
-                if (sum == 6 && f == false) {
+                if (sum >= 6) {
                   this.isShow = false;
-                } else if (xsum == 1) {
+                }if (xsum >= 1) {
                   this.isShows = false;
                 }
 
               } else {
-                if (sum == 5 && f == false) {
+                if (sum >= 5) {
                   this.isShow = false;
-                } else if (xsum == 2) {
+                }if (xsum >= 2) {
                   this.isShows = false;
                 }
               }
@@ -536,18 +549,17 @@
                 for (var t in obj) { //用javascript的for/in循环遍历对象的属性
                   if (this.currentYear == list[o].split("-")[0] && this.currentMonth == list[o].split("-")[1]) {
                     if (t == "shiftid" + list[o].split("-")[2] && list[o].split("-")[2] == e) {
-                      if (obj[t] != "0" && obj[t] != null&&obj[t] != "1") {
+                      if (obj[t] != "0" && obj[t] != ""&& obj[t] != null&&obj[t] != "1") {
                         sum++;
-                        f = true;
                       }
-                      if (obj[t] != null && obj[t] == "0") {
+                      if (obj[t] != null && obj[t] != "" &&obj[t] == "0") {
                         xsum++;
                       }
                     } else if (t == "shiftid" + list[o].split("-")[2]) {
-                      if (obj[t] != "0" && obj[t] != null && obj[t] != "1") {
+                      if (obj[t] != "0" && obj[t] != null&& obj[t] != ""  && obj[t] != "1") {
                         sum++;
                       }
-                      if (obj[t] != null && obj[t] == "0") {
+                      if (obj[t] != null&& obj[t] != "" && obj[t] == "0") {
                         xsum++;
                       }
                     }
@@ -556,16 +568,16 @@
               }
 
               if (a.category == 106) {
-                if (sum == 6 && f == false) {
+                if (sum >= 6 ) {
                   this.isShow = false;
-                } else if (xsum == 1) {
+                } if (xsum >= 1) {
                   this.isShows = false;
                 }
 
               } else {
-                if (sum == 5 && f == false) {
+                if (sum >= 5) {
                   this.isShow = false;
-                } else if (xsum == 2) {
+                } if (xsum >= 2) {
                   this.isShows = false;
                 }
               }
@@ -742,21 +754,23 @@
         this.columns.push({
           title: '名称',
           dataIndex: 'realname',
-          width: '80px',
-          scopedSlots: {
+          width: '60px',
+          align:"center",
+          /* scopedSlots: {
             customRender: 'names'
-          },
-          fixed: 'left'
+          }, */
+         
         })
         for (var i = 1; i <= moth.getDate(); i++) {
           var d = new Date(this.formatDate(this.currentYear, this.currentMonth, i))
           this.tpdata.push(i)
           var dayobjectSelf = {
-            width: '50px',
+           
             slots: {
               title: d.getDate()
             },
             dataIndex: "a" + d.getDate(),
+            align:"center",
             scopedSlots: {
               customRender: i
             },

+ 38 - 16
src/views/system/modules/UserModal.vue

@@ -1,5 +1,5 @@
 <template>
-  <a-modal :width="1150" :dialogStyle="dialogStyle" title="员工信息" :visible="visible" @ok="handleSubmit()"
+  <a-modal :width="1150" :dialogStyle="dialogStyle" :confirm-loading="confirmLoadings" title="员工信息" :visible="visible" @ok="handleSubmit()"
     @cancel="handleCancel" cancelText="关闭">
 
     <template slot="title">
@@ -56,8 +56,8 @@
             </a-form-item>
           </a-col>
           <a-col :md="6" :sm="8" :lg="8">
-            <a-form-item label="性别" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <a-select style="width: 70%"  v-decorator="[ 'sex',validatorRules.sex]" placeholder="请选择性别"
+            <a-form-item label="性别"  :labelCol="labelCol" :wrapperCol="wrapperCol">
+              <a-select style="width: 70%"  :disabled="sfz" v-decorator="[ 'sex',validatorRules.sex]" placeholder="请选择性别"
                 :getPopupContainer="(target) => target.parentNode">
                 <a-select-option :value="1">男</a-select-option>
                 <a-select-option :value="2">女</a-select-option>
@@ -71,14 +71,14 @@
 
           <a-col :md="6" :sm="8" :lg="8">
             <a-form-item label="生日" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <a-date-picker  style="width: 70%"  placeholder="请选择生日"
+              <a-date-picker  :disabled="sfz"  style="width: 70%"  placeholder="请选择生日"
                 v-decorator="['birthday', {initialValue:!model.birthday?null:moment(model.birthday,dateFormat)}]"
                 :getCalendarContainer="node => node.parentNode" />
             </a-form-item>
           </a-col>
           <a-col :md="6" :sm="8" :lg="8">
             <a-form-item label="年龄" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <a-input style="width: 70%"  :maxLength="3" placeholder="请输入年龄" v-model="age" />
+              <a-input :disabled="sfz" style="width: 70%"  :maxLength="3" placeholder="请输入年龄" v-model="age" />
             </a-form-item>
           </a-col>
           <a-col :md="6" :sm="8" :lg="8">
@@ -126,7 +126,7 @@
           
           <a-col :md="6" :sm="8" :lg="8">
             <a-form-item label="雇佣状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <j-dict-select-tag style="width: 70%"  v-decorator="[ 'employmentStatus', {initialValue:40,rules: [{ required: true, message: '请选择状态'}]}]" placeholder="请选择人员类别"
+              <j-dict-select-tag disabled style="width: 70%"   v-decorator="[ 'employmentStatus', {initialValue:40,rules: [{ required: true, message: '请选择状态'}]}]" placeholder="请选择人员类别"
                 dictCode="employmentStatus" :triggerChange="true"/>
               
             </a-form-item>
@@ -262,17 +262,12 @@
           
           </a-col>
           
-          
           <a-col :md="6" :sm="8" :lg="8">
-            <a-form-item label="附件上传" :labelCol="labelCol" :wrapperCol="wrapperCol">
-             <a-badge  :count="fileLists.length" show-zero :number-style="{ backgroundColor: '#52c41a' }">
-               <a-button icon="search" @click="uploads()" >选择</a-button>
-             </a-badge>
+            <a-form-item v-if="emptypes" label="外包类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
+              <j-dict-select-tag style="width: 70%"  v-decorator="[ 'epibolyType',{rules: [{ required: true, message: '请选择类型'}]}]" placeholder="请选择外包类型"
+                dictCode="epiboly_type" :triggerChange="true"/>
             </a-form-item>
           </a-col>
-        </a-row>
-        <a-row>
-          
           <a-col :md="6" :sm="8" :lg="8">
             <a-form-item v-if="!isEdit" label="合同类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <j-dict-select-tag  :disabled="isEdit" style="width: 70%" v-decorator="['contractType',validatorRules.contractType]" :triggerChange="true" placeholder="请选择合同类型"
@@ -286,7 +281,15 @@
                />
             </a-form-item>
           </a-col>
+          <a-col :md="6" :sm="8" :lg="8">
+            <a-form-item label="附件上传" :labelCol="labelCol" :wrapperCol="wrapperCol">
+             <a-badge  :count="fileLists.length" show-zero :number-style="{ backgroundColor: '#52c41a' }">
+               <a-button icon="search" @click="uploads()" >选择</a-button>
+             </a-badge>
+            </a-form-item>
+          </a-col>
         </a-row>
+   
         <a-row>
           <a-col :lg="24">
             <a-form-item style="margin-left: -245px;" label="同步信息" :labelCol="labelCol" :wrapperCol="wrapperCol">
@@ -381,11 +384,13 @@
         roleDisabled: false, //是否是角色维护调用该页面
         modalWidth: 800,
         drawerWidth: 700,
+        sfz:true,
         statet:true,
         titles: "新增员工",
         isatt:'0',
         workMoths:0,
         visibles: false,
+        confirmLoadings:false,
         isEdit:false,
         worMoth:0,
         workMothis:false,
@@ -572,6 +577,7 @@
         uploadLoading: false,
         visloading:false,
         confirmLoading: false,
+        emptypes:false,
         isupload:true,
         headers: {},
         form: this.$form.createForm(this),
@@ -653,7 +659,11 @@
         this.visloading=true;
       },
       codeType(e){
-        
+        if(e=="0"){
+          this.sfz=true;
+        }else if(e=="1"){
+          this.sfz=false;
+        }
           this.form.setFieldsValue({
             sfzCode:null
           })
@@ -810,7 +820,13 @@
       handleChangeStatus(e) {
         if (e == 101) {
           this.personType = false;
+           this.emptypes=false;
         } else {
+          if(e==105||e==106){
+            this.emptypes=true;
+          }else{
+            this.emptypes=false;
+          }
           this.personType = true;
           this.form.setFieldsValue({
             wagesBase: null
@@ -906,6 +922,7 @@
         this.selectionRows = [];
         this.isEdit=false;
         this.workMothis=false;
+        this.emptypes=false;
       },
       add() {
         this.picUrl = "";
@@ -943,6 +960,8 @@
         }
         if (record.sfzType != null && record.sfzType != "") {
           this.sfzType = record.sfzType;
+        }if(record.category==105||record.category==106){
+          this.emptypes=true;
         }
         if (record.entryDate != null) {
           this.moth = this.countMoth(record.entryDate)
@@ -970,7 +989,7 @@
             'nationality', 'trialMoth', 'entryDate', 'trialEndDate', 'workMoth', 'divisionMoth',
             'infoSy', 'syFund', 'category', 'employmentStatus', 'wagesOne', 'wagesTwo', 'security', 'wagesBase',
             'homeAddr', 'education', 'school', 'contractDate', 'contractDate2', 'type', 'contractDate3',
-            'shareDept','contractType','cEndDate'))
+            'shareDept','contractType','cEndDate','epibolyType'))
         });
         //身份为上级显示负责部门,否则不显示
         if (this.model.userIdentity == "2") {
@@ -1047,6 +1066,7 @@
         this.$emit('close');
         this.visible = false;
         this.disableSubmit = false;
+        this.emptypes=false;
         this.selectedRole = [];
         this.userDepartModel = {
           userId: '',
@@ -1090,6 +1110,7 @@
         this.form.validateFields((err, values) => {
           if (!err) {
             that.confirmLoading = true;
+            that.confirmLoadings = true;
             if (!values.birthday) {
               values.birthday = '';
             } else {
@@ -1153,6 +1174,7 @@
               }
             }).finally(() => {
               that.confirmLoading = false;
+              that.confirmLoadings = false;
               that.checkedDepartNames = [];
               that.userDepartModel.departIdList = {
                 userId: '',

+ 18 - 10
src/views/system/schedulingInformation/BdWorkOverTimeList.vue

@@ -181,7 +181,12 @@
         
         
         
-        
+        <span slot="holidayCount" slot-scope="text, record">
+          <span v-if="record.holidayType=='调休假'">{{text}}小时</span>
+        <span v-else>{{text/24}}天</span>
+          
+          
+        </span>
       </a-table>
       
        </a-tab-pane>
@@ -236,7 +241,7 @@
            :labelCol="labelCol"
            :wrapperCol="wrapperCol"
            label="时长">
-           <a-input disabled  placeholder="请输时长" suffix="小时" v-decorator="['holidayCount', {initialValue:0}]" />
+           <a-input disabled  placeholder="请输时长" suffix="" v-decorator="['holidayCount', {initialValue:0}]" />
          </a-form-item>
          <a-form-item
            :labelCol="labelCol"
@@ -353,7 +358,7 @@ import moment from "moment"
             sorter: true
           },
           {
-            title: '级部门',
+            title: '级部门',
             align: 'center',
             dataIndex: 'deptName2',
             sorter: true
@@ -423,7 +428,7 @@ import moment from "moment"
             
           },
           {
-            title: '级部门',
+            title: '级部门',
             align: 'center',
             dataIndex: 'deptname2',
             sorter: true
@@ -451,7 +456,10 @@ import moment from "moment"
             title: '请假时长',
             align: 'center',
             dataIndex: 'holidayCount',
-            sorter: true
+            sorter: true,
+            scopedSlots: {
+              customRender: 'holidayCount'
+            },
           },
           {
             title: '请假事由',
@@ -486,7 +494,7 @@ import moment from "moment"
             var holidayType= this.form.getFieldValue('holidayType');
             var demo=this.form.getFieldValue('demo');
             var userId=this.form.getFieldValue('userId');
-            var holidayCount=this.form.getFieldValue('holidayCount');
+            var holidayCount=this.form.getFieldValue('holidayCount')*24;
             this.confirmLoading=true;
             httpAction(this.url.add, {
               userId: userId,
@@ -574,7 +582,7 @@ import moment from "moment"
                }
              }
              this.form.setFieldsValue({
-               holidayCount:count
+               holidayCount:count/24
              }) 
            }
          }
@@ -625,7 +633,7 @@ import moment from "moment"
                 }
               }
               this.form.setFieldsValue({
-                holidayCount:count
+                holidayCount:count/24
               }) 
             }
           }
@@ -679,7 +687,7 @@ import moment from "moment"
                  }
                }
                this.form.setFieldsValue({
-                 holidayCount:count
+                 holidayCount:count/24
                }) 
              }
          
@@ -733,7 +741,7 @@ import moment from "moment"
                  }
                }
                this.form.setFieldsValue({
-                 holidayCount:count
+                 holidayCount:count/24
                }) 
              }