山水共长天一色 3 gadi atpakaļ
vecāks
revīzija
1e8df59d1f

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet/config/index.js

@@ -1,7 +1,7 @@
 var path = require('path')
 
 //  var ip = '127.0.0.1'
-// var ip = '192.168.2.14'
+// var ip = '192.168.2.24'
 // var ip = '192.168.2.12'// var ip = '47.100.37.243' 
 
 var os = require('os'), ip = '', ifaces = os.networkInterfaces() // 获取本机ip

+ 8 - 2
fhKeeper/formulahousekeeper/timesheet/src/http.js

@@ -54,9 +54,15 @@ export default {
         ).catch(
             (error) => {
                 if (exception) {
-                    exception(error)
+                    var str = error + ''
+                    if(str.indexOf('504') != '-1') {
+                        exception('服务器维护中,请稍后重试')
+                    } else {
+                        exception(error)
+                    }
                 } else {
-                    console.log(error)
+                    console.log('执行好吧')
+                    console.log(error, 3)
                 }
             }
         )

+ 13 - 7
fhKeeper/formulahousekeeper/timesheet/src/views/awayOffice/awayOffice.vue

@@ -228,7 +228,7 @@
                             </el-popover>
                         </template>
                     </el-table-column>
-                    <el-table-column v-if="!isDingding" :label="isAuditList ? '审核' : '操作'" width="180" fixed="right" >
+                    <el-table-column v-if="isDingding" :label="isAuditList ? '审核' : '操作'" width="180" fixed="right" >
                         <template slot-scope="scope">
                             <div v-if="isAuditList">
                                 <el-button icon="el-icon-check" circle size="mini" @click="approve(scope.row)"></el-button>
@@ -240,7 +240,7 @@
                             </div>
                         </template>
                     </el-table-column>
-                    <el-table-column v-if="isDingding" label="操作" width="90" fixed="right">
+                    <el-table-column v-if="!isDingding" label="操作" width="90" fixed="right">
                         <template slot-scope="scope">
                             <el-button icon="iconfont firerock-iconguanlian" circle size="mini" @click="DingdingEditor(scope.row)"></el-button>
                         </template>
@@ -526,7 +526,7 @@
     <el-dialog title="进行项目关联" :visible.sync="DingdingEditDialog" width="800px">
         <el-form ref="DingdingForm" label-width="80px" style="margin:40px 0">
             <el-form-item label="投入项目" style="width:300px;margin-right:30px;display:inline-block;" prop="projectId">
-                <el-select style="width:100%" @change="getwuduList(0)" v-model="DingdingForm.projectId" filterable clearable placeholder="请选择投入项目" >
+                <el-select style="width:100%" @change="getwuduList(2,1)" v-model="DingdingForm.projectId" filterable clearable placeholder="请选择投入项目" @clear="DingdingClear">
                     <el-option
                     v-for="item in projectList"
                     :key="item.id"
@@ -536,10 +536,10 @@
                 </el-select>
             </el-form-item>
             <el-form-item :label="wuduData.customDegreeName"
-            v-if="DingdingForm.projectId != null && wuduData.customDegreeActive == 1"
+            
             style="width:300px;margin-right:30px;display:inline-block;"
             prop="degreeName">
-                <el-select style="width:100%" v-model="DingdingForm.degreeId" filterable clearable placeholder="请选择" :disabled="DingdingForm.projectId != null && DingdingForm.projectId != '' && wuduData.customDegreeActive == 1 ? false : true">
+                <el-select style="width:100%" v-model="DingdingForm.degreeId" filterable clearable placeholder="请选择" >
                     <el-option
                     v-for="item in wuduList"
                     :key="item.id"
@@ -696,6 +696,10 @@ export default {
     },
     methods: {
         // 钉钉环境交互
+        DingdingClear(){
+            this.wuduList = []
+            this.DingdingForm.degreeId = null
+        },
         DingdingEditor(e){
             this.DingdingEditDialog = true
             if(e.degreeId != null){
@@ -1379,7 +1383,7 @@ export default {
             },
 
         // 获取维度数据
-            getwuduList(e) {
+            getwuduList(e,i) {
                 
                 if(e == 1){
                     this.addform.wuduId = null
@@ -1394,7 +1398,9 @@ export default {
                     }
                     var pId = this.editItemForm.projectId
                 }else{
-                    this.DingdingForm.wuduId = null
+                    // if(i == 1){
+                    //     this.DingdingForm.degreeId = null
+                    // }
                     if(this.DingdingForm.projectId == '' || this.DingdingForm.projectId == null){
                         return
                     }

+ 3 - 2
fhKeeper/formulahousekeeper/timesheet/src/views/leave/list.vue

@@ -335,6 +335,7 @@
         </div>
     </div>
 
+<!-- 审批流 -->
     <div v-if="displayTable && apk && apk2 == 5" class="tops">
         
         <div class="ctons">
@@ -399,7 +400,7 @@
         </el-dialog>
 
     </div>
-  <!-- --------- -->
+  <!-- 年假管理 -->
     <div v-if="displayTable && apk && apk2 == 6" class="tops">
       <div class="ctons">
         <div style="display: flex;align-items: center;padding-bottom: 20px;border-bottom: 1px solid #f2f2f2">
@@ -483,7 +484,7 @@
         <!-- 请假人 -->
         <el-form-item label="请假人" prop="ownerId"  style="width: 300px;display: inline-block;">
             <!--普通员工只能自己填报自己的 -->
-            <el-select v-model="addForm.ownerId" @change="selts()" placeholder="请选择请假人" style="width: 240px" :disabled="user.role == 0" filterable="true">
+            <el-select v-model="addForm.ownerId" @change="selts()" placeholder="请选择请假人" style="width: 240px" :disabled="true" filterable="true">
                 <span v-for="(item, index) in users" :key="index">
                 <el-option :label="item.name" :value="item.id"></el-option>
                 </span> 

+ 3 - 0
fhKeeper/formulahousekeeper/timesheet/src/views/project/list.vue

@@ -233,7 +233,10 @@
                     </el-select>
                 </el-form-item> -->
                 <el-form-item label="全部参与者" v-show="addForm.isPublic == 0">
+                    <el-tooltip placement="top" effect="light">
+                        <div slot="content" style="width:780px">{{addForm.userNames}}</div>
                     <el-input  @focus="showChooseMembTree" v-model="addForm.userNames"></el-input>
+                    </el-tooltip>
                 </el-form-item>
                 <el-form-item label="负责人" ><el-select v-model="addForm.inchargerId"  :disabled="(addForm.userId.length==0 && addForm.isPublic == 0) || (!permissions.projectManagement && user.id != addForm.creatorId)" filterable placeholder="请选择负责人" style="width:32%;" >
                         <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/project/project_gantt.vue

@@ -250,7 +250,7 @@ export default {
     let nowdate = new Date()
     let nowmonth = nowdate.getMonth() + 1
     let startdate = nowdate.getFullYear() + "-" + (nowmonth < 10 ? "0" + nowmonth : nowmonth) + "-" + (nowdate.getDate() < 10 ? "0" + nowdate.getDate() : nowdate.getDate())
-    let udate = new Date(nowdate.getFullYear(),nowdate.getMonth(),nowdate.getDate() + 30)
+    let udate = new Date(nowdate.getFullYear(),nowdate.getMonth(),nowdate.getDate() + 31)
     let endmonth = udate.getMonth() + 1
     let enddate = udate.getFullYear() + "-" + (endmonth < 10 ? "0" + endmonth : endmonth) + "-" + (udate.getDate() < 10 ? "0" + udate.getDate() : udate.getDate())
     this.valueDate = [startdate,enddate]

+ 139 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/settings/timetype.vue

@@ -123,6 +123,10 @@
             </el-form-item>
             </el-form>
             </el-radio> 
+            <div>
+                <el-link :underline="false" type="primary" @click="setupRest">设置休息时间段</el-link>
+
+            </div>
         </div>
         </el-col>
 
@@ -290,6 +294,47 @@
                 <el-button type="primary" @click="submitInsertSubProject" :loading="addLoading">提交</el-button>
             </div>
         </el-dialog>
+
+        <!-- 设置休息时间段 -->
+        <el-dialog title="设置休息时间段" v-if="setupRestDialog" :visible.sync="setupRestDialog" :close-on-click-modal="false" customClass="customWidth" width="500px">
+            <el-table :data="restList" highlight-current-row height="400" style="width: 100%;">
+                <el-table-column prop="id" width="60" label="序号">
+                    <template slot-scope="scope" >
+                        {{scope.$index + 1}}
+                    </template>
+                </el-table-column>
+                <el-table-column label="时间段">
+                    <template slot-scope="scope">
+                        <span>{{scope.row.startTime + '-' + scope.row.endTime}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="操作" width="150">
+                    <template slot-scope="scope" >
+                        <el-button size="small" type="primary" @click="setupRestEdit(scope.row)">编辑</el-button>
+                        <el-button size="small" type="danger" @click="setupRestDelete(scope.row)">删除</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <div slot="footer" class="dialog-footer">
+                <el-button @click.native="setupRestDialog = false">关闭</el-button>
+                <el-button type="primary" @click="setupRestNew">新增时间段</el-button>
+            </div>
+
+            <el-dialog :title="setupItemId == null ? '新增' : '修改'" v-if="setupRestAppendDialog" :visible.sync="setupRestAppendDialog" :close-on-click-modal="false" customClass="customWidth" width="400px" append-to-body>
+                <el-form label-width="100px">
+                    <el-form-item label="开始时间">
+                        <el-time-picker v-model="restTime.startTime" placeholder="请选择时间" format="HH:mm" value-format="HH:mm" style="cursor: pointer;"></el-time-picker>
+                    </el-form-item>
+                    <el-form-item label="结束时间">
+                        <el-time-picker v-model="restTime.endTime" placeholder="请选择时间" format="HH:mm" value-format="HH:mm" style="cursor: pointer;"></el-time-picker>
+                    </el-form-item>
+                </el-form>
+                <div slot="footer" class="dialog-footer">
+                    <el-button @click.native="setupRestAppendDialog = false">取消</el-button>
+                    <el-button type="primary" @click="setupRestSure">确认</el-button>
+                </div>
+            </el-dialog>
+        </el-dialog>
     </section>
 </template>
 <script>
@@ -331,10 +376,102 @@
                 addfm: {
                     name: '',
                 },
-                iptss: ''
+                iptss: '',
+                setupRestDialog: false,
+                setupRestAppendDialog: false,
+                restTime: {
+                    startTime: null,
+                    endTime: null
+                },
+                restList: [],
+                setupItemId: null
             };
         },
         methods: {
+            setupRest(){
+                // this.getRestList()
+                this.setupRestDialog = true
+            },
+            getRestList(){
+                this.http.post('/time-auto-exclude/list',{
+                },res => {
+                    if(res.code == 'ok'){
+                        console.log('getRestList',res);
+                        this.restList = res.data
+                    }else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        })
+                    }
+                },err => {
+                    this.$message({
+                        message: err,
+                        type: 'error'
+                    })
+                })
+            },
+            setupRestNew(){
+                this.setupItemId = null
+                this.setupRestAppendDialog = true
+                this.restTime = {startTime: null, endTime: null}
+            },
+            setupRestEdit(item){
+                this.setupItemId = item.id
+                this.setupRestAppendDialog = true
+                let Jitem = JSON.parse(JSON.stringify(item))
+                this.restTime = {
+                    startTime: Jitem.startTime,
+                    endTime: Jitem.endTime
+                }
+            },
+            setupRestDelete(item){
+                this.http.post('/time-auto-exclude/delete',{
+                    id: item.id
+                },res => {
+                    if(res.code == 'ok'){
+                        this.$message({
+                            message: '删除成功',
+                            type: 'success'
+                        })
+                        this.getRestList()
+                    }else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        })
+                    }
+                },err => {
+                    this.$message({
+                        message: err,
+                        type: 'error'
+                    })
+                })
+            },
+            setupRestSure(){
+                if(this.setupItemId != null){
+                    this.restTime.id = this.setupItemId
+                }
+                this.http.post('/time-auto-exclude/addOrMod',this.restTime,
+                res => {
+                    if(res.code == 'ok'){
+                        this.getRestList()
+                        this.setupRestAppendDialog = false
+                    }else {
+                        this.setupRestAppendDialog = false
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        })
+                    }
+                },err => {
+                    this.setupRestAppendDialog = false
+                    this.$message({
+                        message: err,
+                        type: 'error'
+                    })
+                })
+            },
             bianji() {
                 this.subProjectVisible = true
                 this.listLoading = true;
@@ -648,6 +785,7 @@
         mounted() {
             this.initTime();
             this.getCompanyTimeSetting();
+            this.getRestList()
         }
     };
 </script>