Explorar o código

调整移动端的项目搜索小写问题,pc工时成本统计加了样式选择

Lijy %!s(int64=3) %!d(string=hai) anos
pai
achega
b1c1b5ff48

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

@@ -1,18 +1,18 @@
 var path = require('path')
 
 //  var ip = '127.0.0.1'
-// var ip = '192.168.2.4'
+var ip = '192.168.2.4'
 // var ip = '192.168.2.12'// var ip = '47.100.37.243' 
 
-var os = require('os'), ip = '', ifaces = os.networkInterfaces() // 获取本机ip
-for (var i in ifaces) {
-    for (var j in ifaces[i]) {
-        var val = ifaces[i][j]
-        if (val.family === 'IPv4' && val.address !== '127.0.0.1') {
-            ip = val.address
-        }
-    }
-}
+// var os = require('os'), ip = '', ifaces = os.networkInterfaces() // 获取本机ip
+// for (var i in ifaces) {
+//     for (var j in ifaces[i]) {
+//         var val = ifaces[i][j]
+//         if (val.family === 'IPv4' && val.address !== '127.0.0.1') {
+//             ip = val.address
+//         }
+//     }
+// }
 
 module.exports = {
   build: {

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

@@ -473,11 +473,11 @@
         <el-dialog title="加班详情" :visible.sync="dialogVisibleDetails" width="800px" v-loading="listLoading" :before-close="handleClose">
           <div>
              <el-table :data="detailsList" style="width: 100%" height="400px">
+                <el-table-column prop="username" label="姓名" width="120"></el-table-column>
                 <el-table-column prop="projectName" label="项目名称" width="200"></el-table-column>
                 <el-table-column prop="projectCode" label="项目编号" width="200"></el-table-column>
                 <el-table-column prop="createDate" label="加班日期" width="120"></el-table-column>
                 <el-table-column prop="workingTime" label="当天工作时长(h)" width="160"></el-table-column>
-                <el-table-column prop="username" label="姓名" width="120"></el-table-column>
                 <el-table-column prop="overtimeHours" label="加班时长(h)" width="130"></el-table-column>
                 <el-table-column prop="cost" label="加班成本" width="120" v-if="permissions.reportCost"></el-table-column>
              </el-table>

+ 9 - 6
fhKeeper/formulahousekeeper/timesheet/src/views/project/cost.vue

@@ -9,7 +9,6 @@
             </el-radio-group></div>
         </el-col>
         <el-col :span="14" style="display: flex;flex-wrap: wrap;">
-            <div style="width:100%;display:flex">
             <el-date-picker v-show="user.timeType.fixMonthcost==0"
             v-model="dateRange" :editable="false" 
             format="yyyy-MM-dd" value-format="yyyy-MM-dd" 
@@ -35,12 +34,10 @@
                 <el-radio-button label="人员"></el-radio-button>
                 <el-radio-button :label="namess" v-if="jichu.customDegreeActive == 1"></el-radio-button>
             </el-radio-group>
-            </div>
-            <div style="width:100%;display:flex">
+
             <el-select v-model="personnelValue" filterable clearable placeholder="请选择人员" style="margin-top: 10px;width: 350px" v-if="radio == '人员'" @change="personnel()">
                 <el-option v-for="item in hasReportUserList" :key="item.id" :label="item.name" :value="item.name"></el-option>
             </el-select>
-            </div>
         </el-col>
         <el-col :span="4">
             <el-button @click="showExportDialog">报表导出</el-button>
@@ -72,7 +69,6 @@
                         <el-option v-for="item in hasReportUserList"  :key="item.id" :label="item.name" :value="item.id"></el-option>
                     </el-select>
                 </el-form-item>
-
                 <el-form-item prop="projectId" :label="user.timeType.fixMonthcost==0?'日期范围':'选择月份'">
                     <el-date-picker v-show="user.timeType.fixMonthcost==0"
                         v-model="exportParam.dateRange" :editable="false" 
@@ -101,6 +97,12 @@
                         </span> 
                     </el-select>
                 </el-form-item>
+                <el-form-item prop="type" label="选择样式" v-if="radio == '项目' || radio == '部门'">
+                    <el-select v-model="exportParam.type" placeholder="选择样式" style="width:350px;" >
+                        <el-option label="项目在行上" value="0"></el-option>
+                        <el-option label="项目在列上" value="1"></el-option>
+                    </el-select>
+                </el-form-item>
                 <el-form-item v-if="radio == '项目' || radio == '部门'">
                     <el-checkbox v-model="exportParam.projectSum" >含单个项目数据汇总</el-checkbox>
                 </el-form-item>
@@ -124,7 +126,7 @@
                 parentDeptId:null,
                 hasReportUserList:[],
                 projectList:[],
-                exportParam:{projectId:null,dateRange:[],userId: null},
+                exportParam:{projectId:null,dateRange:[],userId: null,type: '0'},
                 exportDialog:false,
                 dateRange:[],
                 user: JSON.parse(sessionStorage.getItem("user")),
@@ -258,6 +260,7 @@
                         param.projectSum = this.exportParam.projectSum;
                     }
                 }
+                param.type = this.exportParam.type
                 this.http.post(url, param,
                     res => {
                         this.listLoading = false;

+ 10 - 5
fhKeeper/formulahousekeeper/timesheet/src/views/workReport/daily.vue

@@ -321,8 +321,8 @@
                         :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
                             <!-- <el-option v-for="item in projectList" :disabled="item.status>=2" :key="item.id" :label="item.projectName" :value="item.id"></el-option> -->
                             <el-option v-for="item in projectList" :disabled="item.status>=2" :key="item.id" :label="item.projectName + item.projectCode" :value="item.id">
-                                <span style="float: left">{{ item.projectName }}</span>
-                                <span style="float: right; color: #8492a6; font-size: 13px;margin-left: 20px">{{ item.projectCode }}</span>
+                                <span style="float: left; color: #8492a6; font-size: 13px;">{{ item.projectCode }}</span>
+                                <span style="float: right;margin-left: 20px">{{ item.projectName }}</span>
                             </el-option>
                         </el-select>
                         <span v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
@@ -427,8 +427,8 @@
                             @change="selectProject(domain, index)"
                             :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
                                 <el-option v-for="item in projectList" :disabled="item.status>=2" :key="item.id" :label="item.projectName + item.projectCode" :value="item.id">
-                                    <span style="float: left">{{ item.projectName }}</span>
-                                    <span style="float: right; color: #8492a6; font-size: 13px;margin-left: 20px">{{ item.projectCode }}</span>
+                                    <span style="float: left; color: #8492a6; font-size: 13px;">{{ item.projectCode }}</span>
+                                    <span style="float: right;margin-left: 20px">{{ item.projectName }}</span>
                                 </el-option>
                             </el-select>
                             <span  v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
@@ -3422,8 +3422,13 @@
                 res => {
                     this.listLoading = false;
                     if (res.code == "ok") {
+                        for(var i in res.data) {
+                            if(res.data[i].projectCode == null || res.data[i].projectCode == 'null') {
+                                res.data[i].projectCode = ''
+                            }
+                        }
                         this.projectList = res.data;
-                        // console.log("项目列表",this.projectList);
+                        console.log("项目列表",this.projectList);
                     } else {
                         this.$message({
                             message: res.msg,

+ 16 - 7
fhKeeper/formulahousekeeper/timesheet_h5/src/views/edit/index.vue

@@ -426,6 +426,11 @@
                 this.$axios.post("/project/getProjectList", {})
                 .then(res => {
                     if(res.code == "ok") {
+                        for(var i in res.data) {
+                            if(res.data[i].projectCode == 'null' || res.data[i].projectCode == null) {
+                                res.data[i].projectCode = ' '
+                            }
+                        }
                         this.projectss = res.data;
                         this.projectss = this.projectss.filter(p=>p.status == 1);
                         this.proads = res.data
@@ -437,14 +442,18 @@
             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 datas = this.proads.filter(item => reg.test(item.projectCode))
-                    let dataTree = data.concat(datas)
+                    // let text = this.userName
+                    // let reg = new RegExp(text)
+                    // 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 = arrList
+                    // console.log(this.userName.toUpperCase())
+                    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)
                     let arrList = Array.from(new Set(dataTree))
-                    // this.projectss = data
                     this.projectss = arrList
                 } else {
                     console.log(456)

+ 17 - 7
fhKeeper/formulahousekeeper/timesheet_h5/src/views/edit/weekEdit.vue

@@ -512,6 +512,11 @@
                 this.$axios.post("/project/getProjectList", {})
                 .then(res => {
                     if(res.code == "ok") {
+                        for(var i in res.data) {
+                            if(res.data[i].projectCode == 'null' || res.data[i].projectCode == null) {
+                                res.data[i].projectCode = ' '
+                            }
+                        }
                         this.projectss = res.data;
                         this.projectss = this.projectss.filter(p=>p.status == 1);
                         this.proads = res.data
@@ -523,15 +528,20 @@
             sea() {
                 console.log(this.userName.length)
                 if(this.userName.length > 0) {
-                    console.log(123)
-                    let text = this.userName
-                    let reg = new RegExp(text)
+                    // 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 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 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)
                     let arrList = Array.from(new Set(dataTree))
-                    // this.projectss = data
                     this.projectss = arrList
                 } else {
                     console.log(456)

+ 10 - 10
fhKeeper/formulahousekeeper/timesheet_h5/vue.config.js

@@ -3,17 +3,17 @@ const pxtorem = require("postcss-pxtorem");
 const path = require('path');
 const themePath = path.resolve(__dirname,'src/assets/style/theme.less');
 
-// var ip = '192.168.2.4'
+var ip = '192.168.2.4'
 // var ip = '127.0.0.1'
-var os = require('os'), ip = '', ifaces = os.networkInterfaces() // 获取本机ip
-for (var i in ifaces) {
-    for (var j in ifaces[i]) {
-        var val = ifaces[i][j]
-        if (val.family === 'IPv4' && val.address !== '127.0.0.1') {
-            ip = val.address
-        }
-    }
-}
+// var os = require('os'), ip = '', ifaces = os.networkInterfaces() // 获取本机ip
+// for (var i in ifaces) {
+//     for (var j in ifaces[i]) {
+//         var val = ifaces[i][j]
+//         if (val.family === 'IPv4' && val.address !== '127.0.0.1') {
+//             ip = val.address
+//         }
+//     }
+// }
 
 module.exports = {
     // 关闭eslint检查