Prechádzať zdrojové kódy

移动端时间,加班功能完成

Lljy-ai 4 rokov pred
rodič
commit
b3b51eb4e9

+ 30 - 4
fhKeeper/formulahousekeeper/timesheet_h5/src/views/edit/index.vue

@@ -50,8 +50,8 @@
                         @cancel="showStartTime = false"
                         :min-hour="8"
                         :max-hour="23"
-                        :filter="filter"
                         />
+                        <!-- :filter="filter" 原本这个属性在里面 -->
                     </van-popup>
                     <van-field v-if="reportTimeType.type == 2" readonly clickable name="datetimePicker" :value="item.endTime" label="结束时间" placeholder="点击选择时间" 
                         @click="showEndTime = true" />
@@ -61,14 +61,22 @@
                         type="time"
                         :min-hour="8"
                         :max-hour="23"
-                        :filter="filter"
                         @confirm="confirmTime(item,1)"
                         @cancel="showEndTime = false"
                         />
+                        <!-- :filter="filter" 原本这个属性在里面 -->
                     </van-popup>
                     <van-field class="form_input" 
                     v-model="item.content" name="content" type="textarea" label="工作事项" placeholder="请输入工作事项" 
                     rows="3" autosize  />
+                    <!-- 单选按钮 -->
+                    <!-- <van-radio-group v-model="isOvertime" direction="horizontal" class="overtime">
+                        <van-radio name="0">不加班</van-radio>
+                        <van-radio name="1">加班</van-radio>
+                    </van-radio-group> -->
+                    <div class="overtime">
+                        <van-checkbox v-model="item.isOvertime">加班</van-checkbox>
+                    </div>
                 </van-cell-group>
             </div>
             <div class="form_btn" style="margin: 16px;">
@@ -129,7 +137,8 @@
                 report: "",
 
                 loading: false,
-                finished: false
+                finished: false,
+                // isOvertime: false
             };
         },
 
@@ -453,8 +462,18 @@
                     } else {
                         formData.append("content", this.form.domains[i].content);
                     }
-                    
                     formData.append("createDate", this.form.createDate);
+
+                    if(this.form.domains[i].isOvertime == undefined ) {
+                        this.form.domains[i].isOvertime = '0'
+                        formData.append("isOvertime", this.form.domains[i].isOvertime);
+                    } else if (this.form.domains[i].isOvertime == false){
+                        this.form.domains[i].isOvertime = '0'
+                        formData.append("isOvertime", this.form.domains[i].isOvertime);
+                    } else {
+                        this.form.domains[i].isOvertime = '1'
+                        formData.append("isOvertime", this.form.domains[i].isOvertime);
+                    }
                 }
                 this.$axios.post("/report/editReport", formData)
                 .then(res => {
@@ -527,6 +546,13 @@
     .van-nav-bar .van-icon , .van-nav-bar__text {
         color: #20a0ff;
     }
+    .overtime {
+        height: 50px;
+        box-sizing: border-box;
+        padding-left: 10px;
+        display: flex;
+        align-items: center;
+    }
 </style>
 
 

+ 21 - 3
fhKeeper/formulahousekeeper/timesheet_h5/src/views/view/index.vue

@@ -9,7 +9,7 @@
             <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-skeleton  v-if="report.length!=0" v-for="(item,index) in report" title avatar :row="3" :loading="false">
+            <van-skeleton  :v-if="report.length!=0" v-for="(item,index) in report" title avatar :row="3" :loading="false" :key="index">
                 <van-panel class="one_report" :title="item.name" :status="statusTxt[item.state]">
                     <div class="form_text">
                         <span style="margin-right:20px;margin-left:5px;font-size:14px;">
@@ -20,11 +20,13 @@
                         </span>
                         <!-- <span>系统智能统计:{{item.calculateTime}}h</span> -->
                     </div>
-                    <div v-for="(item1,index1) in item.data" class="one_report_data">
+                    <div v-for="(item1,index1) in item.data" class="one_report_data" :key="index1">
                         <div class="project_title">项目:{{item1.project}}</div>
                         <div class="project_time">时长:
                             <span v-if="item1.reportTimeType == 0" style="margin-right:10px;">{{fullDayTxt[item1.timeType]}}</span>
-                            <span v-if="item1.reportTimeType == 2" style="margin-right:10px;">{{item1.startTime+'-'+item1.endTime}}</span>{{item1.time}}h</div>
+                            <span v-if="item1.reportTimeType == 2" style="margin-right:10px;">{{item1.startTime+'-'+item1.endTime}}</span>{{item1.time}}h
+                            <div class="button" v-if="item1.isOvertime == 1">加班</div>
+                        </div>
                         <div class="project_content">事项:<span v-html="item1.content"></span></div>
                         <van-divider />
                     </div>
@@ -102,6 +104,7 @@
                     if(res.code == "ok") {
                         toast.clear();
                         this.report = res.data;
+                        console.log(this.report);
                         //计算状态
                         for (var i=0;i<this.report.length; i++) {
                             var item = this.report[i];
@@ -158,4 +161,19 @@
     .van-nav-bar .van-icon , .van-nav-bar__text {
         color: #20a0ff;
     }
+    .button {
+        float: right;
+        width: 50px;
+        height: 25px;
+        line-height: 25px;
+        text-align: center;
+        border: 1px solid red;
+        color: red;
+        box-sizing: border-box;
+        border-radius: 10px;
+        font-size: 14px;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+    }
 </style>

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

@@ -3,15 +3,16 @@ const pxtorem = require("postcss-pxtorem");
 const path = require('path');
 const themePath = path.resolve(__dirname,'src/assets/style/theme.less');
 
-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 ip = '192.168.2.2'
+// 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检查