Forráskód Böngészése

Merge branch 'master' of http://47.100.37.243:10080/wutt/manHourHousekeeper into master

seyason 3 éve
szülő
commit
f78f852a46

+ 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.15'
+var ip = '192.168.2.39'
 // var ip = '192.168.2.39'
 // var ip = '192.168.2.12'// var ip = '47.100.37.243' 
 

+ 8 - 0
fhKeeper/formulahousekeeper/timesheet/src/main.js

@@ -134,6 +134,14 @@ router.beforeEach((to, from, next) => {
                         }
                         
                     }
+                    if (user.timeType.customDegreeActive == 0) {
+                        filterRouter = filterRouter.filter(r=>{return r.name != '研究中心管理'});
+                    } else {
+                        let customDeg = filterRouter.filter(r=>{return r.name == '研究中心管理'});
+                        if(customDeg.length > 0){
+                            customDeg[0].children[0].name = user.timeType.customDegreeName + '管理'
+                        }
+                    }
                     
                     // if (user.role == 1 || user.role == 2) {
                     //     getRoutes = filterRouter;

+ 67 - 6
fhKeeper/formulahousekeeper/timesheet/src/views/centerManage/centerManage.vue

@@ -2,13 +2,15 @@
     <section >
         <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
             <el-form :inline="true">
-                <el-form-item label="研究中心管理">
+                <el-form-item :label="user.timeType.customDegreeName + '管理'">
                 </el-form-item>
-                <el-link type="primary" :underline="false" @click="intoCenterRatio" class="tanjia">批量导入研究中心</el-link>
-                <el-link icon="el-icon-circle-plus-outline" type="primary" :underline="false" class="tanjia" @click="addNewSubProject()">添加研究中心</el-link>
+                <el-link type="primary" :underline="false" @click="intoCenterRatio" class="tanjia">批量导入{{user.timeType.customDegreeName}}</el-link>
+                <el-link icon="el-icon-circle-plus-outline" type="primary" :underline="false" class="tanjia" @click="addNewSubProject()">添加{{user.timeType.customDegreeName}}</el-link>
+                <el-link type="primary" :underline="false" @click="batchDelete" class="tanjia">批量删除{{user.timeType.customDegreeName}}</el-link>
             </el-form>
         </el-col>
-        <el-table :data="subProjectList" highlight-current-row v-loading="listLoading" :height="heightDoms" style="width: 100%;">
+        <el-table :data="subProjectList" highlight-current-row v-loading="listLoading" :height="heightDoms" style="width: 100%;" @selection-change="selectionChange">
+            <el-table-column type="selection"></el-table-column>
             <el-table-column prop="id" width="200" label="序号" align="center">
                 <template slot-scope="scope" >
                     {{scope.$index + 1}}
@@ -61,6 +63,7 @@
     export default {
         data() {
             return {
+                user: JSON.parse(sessionStorage.getItem("user")),
                 subProjectList: [],//子项目列表
                 listLoading: false,
                 addfm: {
@@ -75,10 +78,62 @@
                 importingData: false,
                 importResultMsg:null,
                 showImportResult:false,
+                selectionArr: []
             };
         },
         methods: {
-             intoCenterRatio(){
+            // 批量删除
+            selectionChange(selection){
+                this.selectionArr = selection
+                console.log(this.selectionArr);
+            },
+            batchDelete(){
+                if(this.selectionArr.length == 0){
+                    this.$message('请选择要删除的' + this.user.timeType.customDegreeName + '数据')
+                    return
+                }else{
+                    let nametext = ''
+                    for(let i in this.selectionArr){
+                        nametext += this.selectionArr[i].name + '、'
+                    }
+                    nametext = nametext.substring(0,nametext.length - 1)
+                    this.$confirm('确定要批量删除' + this.user.timeType.customDegreeName + '数据:' + nametext + '\u3000吗?','删除',{
+                        confirmButtonText: '确定',
+                        cancelButtonText: '取消',
+                        type: 'warning'
+                    }).then(()=>{
+                        let batchIds = ''
+                        for(let m in this.selectionArr){
+                            batchIds += this.selectionArr[m].id + ','
+                        }
+                        batchIds = batchIds.substring(0,batchIds.length - 1)
+                        this.http.post('/report-extra-degree/batchDelete',{
+                            batchIds
+                        },res => {
+                            if(res.code == 'ok'){
+                                this.$message({
+                                    message: '删除成功',
+                                    type: 'success'
+                                })
+                                this.getSub()
+                            }else {
+                                this.$message({
+                                    message: res.msg,
+                                    type: 'error'
+                                })
+                            }
+                        },err => {
+                            this.$message({
+                                message: err,
+                                type: 'error'
+                            })
+                        })
+                    })
+                }
+            },
+
+
+            intoCenterRatio(){
                 this.intoCenterDialog=true;
             },
             batchImportData(item) {
@@ -156,7 +211,7 @@
                 this.addSubProject = true;
             },
             deleteSubPro(subProject) {
-                this.$confirm("确定要这条" + subProject.name + "数据吗?","删除", {
+                this.$confirm("确定要删除这条" + subProject.name + "数据吗?","删除", {
                     confirmButtonText: "确定",
                     cancelButtonText: "取消",
                     type: "warning"
@@ -267,4 +322,10 @@
     box-sizing: border-box;
     margin: 10px 28px;
 }
+
+</style>
+<style>
+.el-tooltip__popper{
+    max-width: 600px;
+}
 </style>

+ 7 - 7
fhKeeper/formulahousekeeper/timesheet/src/views/corpreport/list.vue

@@ -324,7 +324,7 @@
                       </div>
                     </template>  
                 </el-table-column>  -->
-                <el-table-column prop="projectCode" label="序号" width="120">
+                <el-table-column prop="projectCode" label="序号" width="80">
                   <template slot-scope="scope">
                     <div>
                       {{scope.$index + 1}}
@@ -334,12 +334,12 @@
                 <el-table-column prop="projectCode" label="项目编号" width="220"></el-table-column>
                 <el-table-column prop="projectName" label="项目名称" width="220"></el-table-column>
                 <el-table-column prop="degreeName" :label="user.timeType.customDegreeName" width="180" v-if="user.timeType.customDegreeActive == 1"></el-table-column>
-                <el-table-column prop="username" label="姓名" width="180"></el-table-column>
-                <el-table-column prop="departmentName" label="部门" width="180"></el-table-column>
-                <el-table-column prop="createDate" label="工作日期" width="180"></el-table-column>
-                <el-table-column prop="workingTime" label="工作时长(h)" width="180" fixed="right"></el-table-column>
-                <el-table-column prop="overtimeHours" label="加班时长(h)" width="180" fixed="right"></el-table-column>
-                <el-table-column prop="cost" label="加班成本" width="180" v-if="permissions.reportCost"></el-table-column>
+                <el-table-column prop="username" label="姓名" width="120"></el-table-column>
+                <el-table-column prop="departmentName" label="部门" width="140"></el-table-column>
+                <el-table-column prop="createDate" label="工作日期" width="120"></el-table-column>
+                <el-table-column prop="workingTime" label="工作时长(h)" width="100"></el-table-column>
+                <el-table-column prop="overtimeHours" label="加班时长(h)" width="100" fixed="right"></el-table-column>
+                <el-table-column prop="cost" label="加班成本" width="80" v-if="permissions.reportCost" fixed="right"></el-table-column>
               </el-table>
             </div>
             

+ 62 - 6
fhKeeper/formulahousekeeper/timesheet/src/views/customer/list.vue

@@ -21,11 +21,11 @@
         </el-col>
 
         <!--列表-->
-        <el-table :data="list" highlight-current-row v-loading="listLoading" :height="tableHeight" style="width: 100%;">
-            <el-table-column type="index" width="60">
-                <template slot-scope="scope" >
+        <el-table :data="list" highlight-current-row v-loading="listLoading" :height="tableHeight" style="width: 100%;" @selection-change="selectionChange">
+            <el-table-column type="selection" width="60">
+                <!-- <template slot-scope="scope" >
                         {{scope.$index+1+(page-1)*size}}
-                    </template>
+                    </template> -->
             </el-table-column>
             <el-table-column prop="customerCode" label="客户编码"  width="120"></el-table-column>
             <el-table-column prop="customerName" label="客户名称" >
@@ -34,7 +34,7 @@
             </el-table-column>
             <el-table-column prop="contactPhone" label="联系电话"  width="150">
             </el-table-column>
-            <el-table-column prop="email" label="邮箱"  width="150">
+            <el-table-column prop="email" label="邮箱"  width="180">
             </el-table-column>
             <el-table-column prop="address" label="地址" >
             </el-table-column>
@@ -49,6 +49,7 @@
 
         <!--工具条-->
         <el-col :span="24" class="toolbar">
+            <el-button type="primary" size="small" @click="batchDelete" :loading="delLoading">批量删除</el-button>
             <el-pagination
                 @size-change="handleSizeChange"
                 @current-change="handleCurrentChange"
@@ -168,6 +169,8 @@
                 importingData: false,
                 importResultMsg:null,
                 showImportResult:false,
+                selectArr: [],
+                delLoading: false
             };
         },
         // 过滤器
@@ -192,6 +195,59 @@
             }
         },
         methods: {
+            // 批量删除
+            selectionChange(selection){
+                console.log('sel',selection);
+                this.selectArr = selection
+            },
+            batchDelete(){
+                if(this.selectArr.length == 0){
+                    this.$message('请选择要删除的客户数据')
+                    return
+                }else{
+                    let nametext = ''
+                    for(let i in this.selectArr){
+                        nametext += this.selectArr[i].customerName + '、'
+                    }
+                    nametext = nametext.substring(0,nametext.length - 1)
+                    this.$confirm("确定要批量删除客户:" + nametext + "\u3000吗?","删除客户", {
+                        confirmButtonText: "确定",
+                        cancelButtonText: "取消",
+                        type: "warning"
+                    }).then(()=>{
+                        this.delLoading = true
+                        let batchIds = ''
+                        for(let m in this.selectArr){
+                            batchIds += this.selectArr[m].id + ','
+                        }
+                        batchIds = batchIds.substring(0,batchIds.length - 1)
+                        this.http.post('customer-info/batchDelete',{
+                            batchIds
+                        },res => {
+                            this.delLoading = false
+                            if(res.code == 'ok'){
+                                this.$message({
+                                    message: '删除成功',
+                                    type: 'success'
+                                })
+                                this.getList()
+                            }else {
+                                this.$message({
+                                    message: res.msg,
+                                    type: 'error'
+                                })
+                            }
+                        },err => {
+                            this.delLoading = false
+                            this.$message({
+                                message: res.msg,
+                                type: 'error'
+                            })
+                        })
+                    })
+                    
+                }
+            },
             intocustomerRatio(){
                 this.intocustomerDialog=true;
             },
@@ -459,7 +515,7 @@
 
             // 删除
             deletePro(i, item) {
-                this.$confirm("确定要客户" + item.customerName + "吗?","删除客户", {
+                this.$confirm("确定要删除客户" + item.customerName + "吗?","删除客户", {
                     confirmButtonText: "确定",
                     cancelButtonText: "取消",
                     type: "warning"

+ 6 - 3
fhKeeper/formulahousekeeper/timesheet/src/views/message.vue

@@ -17,7 +17,8 @@
             <span v-if="messages[0].length == 0">目前暂无消息</span>
             <div
               class="message-div"
-              v-for="item in messages[0]"
+              v-for="item,index in messages[0]"
+              :key="index"
               @click="locationHerf(item.id, item.refId, item.noticeType, item.belongType)"
             >
               <p>
@@ -46,7 +47,8 @@
             <span v-if="messages[1].length == 0">目前暂无消息</span>
             <div
               class="message-div"
-              v-for="item in messages[1]"
+              v-for="item,index in messages[1]"
+              :key="index"
               @click="locationHerf(item.id, item.refId, item.noticeType, null)"
             >
               <p>
@@ -75,7 +77,8 @@
             <span v-if="messages[2].length == 0">目前暂无消息</span>
             <div
               class="message-div"
-              v-for="item in messages[2]"
+              v-for="item,index in messages[2]"
+              :key="index"
               @click="locationHerf(item.id, item.refId, item.noticeType, null)"
             >
               <p>

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

@@ -63,7 +63,7 @@
                     <!-- <router-link to="/projectGantt"> -->
                         <el-link type="primary" :underline="false" @click="isganttshow = true">资源分配</el-link>
                     <!-- </router-link> -->
-                    <el-dialog v-if="isganttshow" :visible.sync="isganttshow" width="1480px" top="3vh" style="height:96%" class="ganttdialog">
+                    <el-dialog v-if="isganttshow" :visible.sync="isganttshow" width="90vw" top="3vh" style="height:96%" class="ganttdialog">
                         <projectgantt></projectgantt>
                     </el-dialog>
                 </el-form-item>

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

@@ -1097,6 +1097,7 @@ import delete$ from 'dingtalk-jsapi/api/biz/cspace/delete';
             // 设置项目参与人
             setupParticipants(item){
                 this.ididid = item.id
+                this.participantsFilterText = ''
                 console.log(item);
                 this.participantsDialog = true
                 this.getAlreadyPartArray(item.id)

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

@@ -11,6 +11,7 @@
       </el-radio-group>
       
       </div>
+      <!-- 时间段筛选  -->
       <div class="head_date" v-if="isDataLoaded">
       <span>时间段</span>
       <el-date-picker
@@ -26,6 +27,7 @@
       </el-date-picker>
       </div>
 
+      <!-- 任务分组筛选 -->
       <div v-if="reqpar1" class="head_taskgroup">
         <span>任务分组</span>
         <el-select clearable filterable v-model="valuex2" placeholder="请选择" size="small" style="margin-left:9px;width:200px" @change="taskgroupSel()">
@@ -38,6 +40,7 @@
         </el-option>
       </el-select>
       </div>
+      <!-- 人员/项目筛选 -->
       <div class="head_select">
         <span>{{(this.radio1 == "按人员查看" ? "人员" : "项目")}}</span>
       <el-select clearable filterable v-model="valuex" placeholder="请选择" size="small" style="margin-left:9px;width:200px" @change="optupdata()">
@@ -50,6 +53,14 @@
         </el-option>
       </el-select>
       </div>
+      <!-- 资源需求导入/导出 -->
+      <div class="head_files" v-if="!isDataLoaded">
+        <el-link type="primary" style="margin-left:10px;" :underline="false" href="./upload/资源需求导入模板.xlsx" download="资源需求导入模板.xlsx">模板下载</el-link>
+        <el-upload ref="upload" style="margin-left:10px;" action="#" :limit="1" :http-request="importProject" :show-file-list="false">
+          <el-link type="primary" :underline="false" >导入需求</el-link>
+        </el-upload>
+        <el-link type="primary" style="margin-left:10px;" :underline="false" @click="exportProjectData" download="资源需求导出.xlsx">导出需求</el-link>
+      </div>
     </div>
 
     <gantt v-if="isDataLoaded" ref="ganttTable1" class="left-container" :tasks="tasks" 
@@ -59,12 +70,12 @@
 
   <div class="demand-container" v-if="!isDataLoaded">
     <el-table height="90%" :loading="demandListLoading" :data="demandList">
-      <el-table-column label="项目编号" prop="projectCode"></el-table-column>
-      <el-table-column label="项目名称" prop="projectName"></el-table-column>
-      <el-table-column label="近七日活跃人员" prop="activeUsers"></el-table-column>
-      <el-table-column label="人员需求" prop="membReq"></el-table-column>
-      <el-table-column label="任务需求" prop="taskReq"></el-table-column>
-      <el-table-column label="操作">
+      <el-table-column label="项目编号" prop="projectCode" width="160"></el-table-column>
+      <el-table-column label="项目名称" prop="projectName" min-width="240"></el-table-column>
+      <el-table-column label="近七日活跃人员" prop="activeUsers" min-width="240"></el-table-column>
+      <el-table-column label="人员需求" prop="membReq" min-width="280"></el-table-column>
+      <el-table-column label="任务需求" prop="taskReq" min-width="280"></el-table-column>
+      <el-table-column label="操作" width="120" align="center">
         <template slot-scope="scope">
           <el-button @click="demandEdit(scope.row)" size="small">修改</el-button>
         </template>
@@ -147,6 +158,65 @@ export default {
           this.$refs.ganttTable1.setGroup();
           // this.$refs.ganttTable2.setGroup();
       },
+      // 资源需求导出
+      exportProjectData() {
+                this.http.post('/project-requirement/exportData',{},
+                res => {
+                    if (res.code == "ok") {
+                        let filePath = res.data;
+                        const a = document.createElement('a'); // 创建a标签
+                        a.setAttribute('download', '资源需求导出.xls');// download属性
+                        a.setAttribute('href', filePath);// href链接
+                        a.click(); //自执行点击事件
+                        a.remove();
+                    } 
+                },
+                error => {
+                    this.$message({
+                        message: error,
+                        type: "error"
+                    });
+                    }
+                );
+            },
+      // 资源需求导入
+      importProject(item) {
+                //首先判断文件类型
+                let str = item.file.name.split(".");
+                let format = str[str.length - 1];
+                if (format != "xls" && format != "xlsx") {
+                    this.$message({
+                        message: "请选择.xls或.xlsx文件",
+                        type: "error"
+                    });
+                } else {
+                    let formData = new FormData();
+                    formData.append("multipartFile", item.file);
+                    this.http.uploadFile('/project-requirement/importData', formData,
+                    res => {
+                        this.$refs.upload.clearFiles();
+                        if (res.code == "ok") {
+                            this.$message({
+                                message: "导入成功",
+                                type: "success"
+                            });
+                            this.getDemandList();
+                        } else {
+                            this.$message({
+                                message: res.msg,
+                                type: "error"
+                            });
+                        }
+                    },
+                    error => {
+                        this.$refs.upload.clearFiles();
+                        this.$message({
+                            message: error,
+                            type: "error"
+                        });
+                    });
+                }
+            },
       // 人员/项目切换
       selChange(){
         this.valuex = null
@@ -483,6 +553,14 @@ export default {
     align-items: center;
     justify-content: center;
   }
+  .gantt_head .head_files{
+    height: 60px;
+    line-height: 60px;
+    width: 20%;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+  }
   .poss {
     height: 8%;
     float: right;

+ 59 - 55
fhKeeper/formulahousekeeper/timesheet_h5/src/views/edit/weekEdit.vue

@@ -18,40 +18,23 @@
                     class="selectgxbtn"
                     type="default"
                     size="mini"
-                    @click="switchWeek(item,index)">{{weekArr[index]}}</van-button>
+                    @click="switchWeek(item,index)"
+                    :disabled="canSelect(item)">{{weekArr[index]}}</van-button>
                 </van-grid-item>
+                <div class="kaoqin" v-if="kaoqinText"><span>当日考勤记录:</span><span>{{kaoqinText}}</span></div>
                 <div class="submitClear">
                         <van-button type="default" size="small" @click="submitClear">清空</van-button>
                     </div>
             </van-grid>
 
 
-
-
-            <!-- <van-field readonly clickable name="datetimePicker" :value="form.createDate" label="时间选择" placeholder="点击选择时间" 
-            @click="showPicker = true" :rules="rules.createDate" />
-            <van-popup v-model="showPicker" position="bottom">
-                <van-datetime-picker v-model="currentDate" type="date" :min-date="minDate" :max-date="maxDate" @confirm="changeTime" @cancel="showPicker = false"/>
-            </van-popup>
-            <van-cell title="总时长(h)" v-if="reportTimeType.type == 3">
-                <template>
-                    <van-stepper :disabled="!canEdit" v-model="reportTimeType.allday" @change="changeAllTime" min="0.5" max="12" step="0.5" :decimal-length="1" />
-                </template>
-            </van-cell> -->
-            
-            <!-- <van-cell title="待分配时长" :value="report.time + 'h'" size="large"></van-cell> -->
-
             <div class="form_domains" v-for="(item,index) in currentForm.domains" :key="item.id">
                 <div style="float:right;margin-top:10px;margin-right:10px;">
-                <!-- <van-tag v-if="canEdit&&item.projectName.length>0" color="#fff"
-                @click="copyProject(index)" style="border: 1px solid #20a0ff;padding:5px;"
-                 icon="plus" type="default" ><span style="color:#666;padding: 0 5px;">复制项目</span></van-tag> -->
                 
                 <van-tag v-if="index>0" color="#fff" 
                 @click="delPro(index)" style="border: 1px solid #ff0000;padding:5px;margin-left:10px;"
                  icon="plus" type="default" ><span style="color:#666;padding: 0 5px;">删除</span></van-tag>
                 </div>
-                <!-- <van-icon v-if="index>0&&canEdit" class="form_del" name="delete" @click="delPro(index)" /> -->
 
                 <van-cell-group :title="(user.companyId==781?'任务':'项目') + (index+1)">
                     <!-- <div>请选择投入项目</div> -->
@@ -127,9 +110,6 @@
                     <van-popup v-model="item.showPickerTask" position="bottom">
                         <van-picker show-toolbar :columns="item.taskList" value-key="taskName" @confirm="choseTask" @cancel="item.showPickerTask = false;$forceUpdate()" />
                     </van-popup>
-                    <!-- <van-field readonly clickable class="form_input" :value="item.workingTime" name="workingTime" label="工作时长" placeholder="请输入工作时长(单位:小时)"
-                    :rules="[{ required: true, message: '请输入工作时长(单位:小时)' }]" @touchstart.native.stop="showNumberKey = true"/>
-                    <van-number-keyboard v-model="item.workingTime" :show="showNumberKey" close-button-text="完成" extra-key="." :maxlength="4" @blur="showNumberKey = false" /> -->
                     
                     <!-- 常规选择时间的方式 -->
                     <!-- 全天上下午模式 -->
@@ -257,8 +237,6 @@
                             <span :class="'overListTime'">小时</span>    
                         </div>
                         <van-tag style="position:absolute;right:10px;" v-if="isCorpWX" type="primary" size="large" @click="takePhoto(index)">拍照上传</van-tag>
-                        <!-- <van-tag style="position:absolute;right:10px;" type="primary" size="large" @click="takePhoto(index)">拍照上传</van-tag> -->
-                        <!-- <van-tag style="position:absolute;right:10px;" type="primary" size="large" @click="takePhoto(index)">拍照上传</van-tag> -->
                     </div>
                     <div style="padding:5px;text-align:center;" v-if="!isIOSystem">
                         <span v-for="(p, index) in item.pics"  :key="p" style="margin-right:15px;">
@@ -295,32 +273,16 @@
                 <div style="padding-bottom:10px;">
                     <van-button square block type="info" @click="submitReport" native-type="submit" style="width:100%;float:left;">
                         <div>提交</div>
-                        <!-- <van-loading type="spinner" /> -->
                     </van-button>
-                    <!-- <van-button v-if="canEdit" square block type="default" @click="isDraft=1" native-type="submit" style="width:50%;float:left;">
-                        <div v-if="flgLg">暂存</div>
-                        <van-loading type="spinner" v-if="!flgLg" />
-                    </van-button> -->
                 </div>
-                 <!-- <van-button v-if="canEdit&&currentForm.domains.length>0 && currentForm.domains[0].id != null" 
-                        square block type="default" @click="deleteReport" native-type="button" 
-                    style=""> 删除 </van-button> -->
-                <!-- <div v-if="canEdit&&form.domains.length>0 && form.domains[0].id != null"
-                    style="display:block;padding-top:30px;font-size:15px;color:#666;margin:0 auto;text-align:center;padding-bottom:10px;background:#ffffff;" 
-                    @click="deleteReport"> 删除 </div> -->
-                <!-- <van-button v-if="canEdit" square block type="default" @click="deleteReport" native-type="button" 
-                    style="margin-top:10px;"> 删除 </van-button> -->
             </div>
         </van-form>
         <div style="position:fixed; bottom:0px;width:100%;">
             <van-button  v-if="canCancel" block type="default" @click="cancel"> 撤销 </van-button>
         </div>
-        
-        <!-- <div class="form_tip" v-if="!canEdit && !canCancel"> 已审核无法修改 </div> -->
 
         <!-- 选择项目弹窗 -->
         <van-popup v-model="showPickerUserddp" position="bottom" style="height: 80%">
-            <!-- <van-search v-model="userName" placeholder="输入项目名称搜索" @clear="sea()" @blur="sea()" @search="sea()"></van-search> -->
             <van-search v-model="userName" placeholder="请输入项目名称/编号" @clear="sea()" @blur="sea()" @search="sea()" @input="sea()"/>
             <div style="minHeight:300px;">
                 <div v-for="(item, index) in projectss" :key="item.id" class="ryuan" @click="fZr(item, index)">
@@ -413,7 +375,8 @@
                 weekArr: ['周一','周二','周三','周四','周五','周六'],
                 inbtn: 0,
                 weekIndex: 5,
-                weekSwitchIndex: 1
+                weekSwitchIndex: 1,
+                kaoqinText: false
             };
         },
         methods: {
@@ -428,16 +391,37 @@
                 this.form[this.inbtn] = this.currentForm
                 this.inbtn = index
                 this.currentForm = this.form[this.inbtn]
+                this.getKaoqin()
+            },
+            // 获取日考勤记录
+            getKaoqin(){
+                this.$axios.post('/report/getCardTime',{
+                    date: this.currentForm.createDate
+                }).then(res => {
+                    if(res.code == 'ok'){
+                        if(res.data){
+                            this.kaoqinText = res.data.startTime + '-' + res.data.endTime + ',' + res.data.workHours + '小时'
+                        }else {
+                            this.kaoqinText = false
+                        }
+                    }else {
+                        this.$toast.clear();
+                        this.$toast.fail(err);
+                    }
+                }).catch(err => {
+                    this.$toast.clear();
+                    this.$toast.fail(err);
+                })
             },
             // 获取周填报时间数据
             getDateRange(){
                 if(this.user.companyId == 817){
                     this.weekIndex = 6
                 }
-                let nowDate = new Date()
+                let nowDate = new Date(2022,4,25)
                 let nowWeekday = nowDate.getDay()
                 let shuldDate
-                if(nowWeekday < 5){
+                if(nowWeekday == 0){
                     // 取上周日期
                     shuldDate = new Date(nowDate.getFullYear(),nowDate.getMonth(),nowDate.getDate() - 7*this.weekSwitchIndex)
                 }else{
@@ -464,6 +448,7 @@
                 let startDateStr = startDate.getFullYear() + '-' + (startDateM < 10 ? '0' + startDateM : startDateM) + '-' + (startDateD < 10 ? '0' + startDateD : startDateD)
                 let endDateStr = endDate.getFullYear() + '-' + (endDateM < 10 ? '0' + endDateM : endDateM) + '-' + (endDateD < 10 ? '0' + endDateD : endDateD)
                 this.dateText = [startDateStr,endDateStr]
+
                 this.form = []
                 for(let i=0;i<this.weekIndex;i++){
                     let formItem = {
@@ -483,6 +468,20 @@
                     this.form.push(formItem)
                 }
                 this.currentForm = this.form[0]
+                this.getKaoqin()
+            },
+            // 周日期按钮状态
+            canSelect(item){
+                if(this.weekSwitchIndex < 2){
+                    let date = new Date()
+                    if(date.getTime() > item.getTime()){
+                        return false
+                    }else{
+                        return true
+                    }
+                }else {
+                    return false
+                }
             },
 
 
@@ -499,9 +498,10 @@
                         }
                         this.$forceUpdate();
                     } else {
+                        this.$toast.clear();
                         this.$toast.fail('获取失败:'+res.msg);
                     }
-                }).catch(err=> {this.$toast.clear();});
+                }).catch(err=> {this.$toast.clear();this.$toast.fail(err);});
             },
 
             updateTxt() {
@@ -528,16 +528,6 @@
             sea() {
                 // console.log(this.userName.length)
                 if(this.userName.length > 0) {
-                    // console.log(123)
-                    // let text = this.userName
-                    // let reg = new RegExp(text)
-                    // // let data = this.proads.filter(item => reg.test(item.projectName)) //返回
-                    // let data = this.proads.filter(item => reg.test(item.projectName)) //返回
-                    // let datas = this.proads.filter(item => reg.test(item.projectCode))
-                    // let dataTree = data.concat(datas)
-                    // let arrList = Array.from(new Set(dataTree))
-                    // // this.projectss = data
-                    // this.projectss = arrList
                     let data = this.proads.filter(item => {return  item.projectName.indexOf(this.userName.toUpperCase()) != '-1'});
                     let dataList = this.proads.filter(item => {return  item.projectCode.indexOf(this.userName.toUpperCase()) != '-1'});
                     let dataTree = data.concat(dataList)
@@ -1813,5 +1803,19 @@
         bottom: -0.95rem;
         z-index: 1;
     }
+    .kaoqin{
+        width: 100%;
+        padding: 0.1rem 0;
+        background-color: #fff;
+        color: #969799;
+        display: flex;
+        align-items: center;
+        font-size: 0.35rem;
+        line-height: 0.64rem;
+    }
+    .kaoqin span{
+        width: 50%;
+        text-align: center;
+    }
 </style>