فهرست منبع

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

ggooalice 2 سال پیش
والد
کامیت
80eee4ea10

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 2 - 203
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/DingDingController.java


+ 4 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportController.java

@@ -183,6 +183,7 @@ public class ReportController {
         List<Report> reportList = new ArrayList<>();
         String token = request.getHeader("Token");
         User user = userService.getById(token);
+        System.out.println("填报人:"+user.getName());
         Company company = companyService.getById(user.getCompanyId());
         //检查当前人员账号是否停用
         if (user.getIsActive() == 0) {
@@ -274,6 +275,9 @@ public class ReportController {
                     for (Integer b : basecostId) {
                         System.out.println("预算项id="+b);
                     }
+                    HttpRespMsg msg = new HttpRespMsg();
+                    msg.setError("请选择预算来源");
+                    return msg;
                 }
                 //有预警类型的预算成本,默认给选上
                 for (int i=0;i<projectId.length; i++) {

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/DingDingService.java

@@ -18,7 +18,7 @@ public interface DingDingService {
 
     HttpRespMsg getUserByCode(String code, String corpid);
 
-    public HttpRespMsg testAsync();
+    public void asyncHandleMsg(String decryptMsg);
 
     HttpRespMsg syncCorpInfo(String corpid);
 

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 195 - 8
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/DingDingServiceImpl.java


+ 9 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/WxCorpInfoServiceImpl.java

@@ -436,7 +436,7 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
             if (userId == null) {
                 //获取企业下的全部员工
                 List<User> users = userMapper.selectList(new QueryWrapper<User>().eq("company_id", companyId).isNotNull("corpwx_userid").eq("is_active", 1));
-                System.out.println("获取考勤记录users size==" + users.size());
+                System.out.println("获取考勤记录users size==" + users.size()+", companyId="+companyId+", "+corpInfo.getCorpName());
                 corpwxUserIds = users.stream().map(User::getCorpwxUserid).collect(Collectors.toList());
                 totalLength = corpwxUserIds.size();
                 batchCount = totalLength / batchSize + (totalLength % batchSize == 0 ? 0 : 1);
@@ -834,6 +834,10 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
                                     String dateEnd = localDate.getYear() + "/" + (isOldFormat ? s[2] : s[3]);
                                     LocalDate sDate = LocalDate.parse(dateStart, mdFormat);
                                     LocalDate eDate = LocalDate.parse(dateEnd, mdFormat);
+                                    //跨年情况的校验
+                                    if (eDate.isBefore(sDate)) {
+                                        eDate = eDate.plusYears(1);
+                                    }
                                     if (sDate.isEqual(eDate)) {
                                         //请假在一天内
                                         if (leaveEnd.equals("下午")) {
@@ -858,6 +862,10 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
                                         if (showLog) System.out.println("跨天请假@@@@");
                                         if (showLog)
                                             System.out.println("当天==" + localDate + ", sDate=" + sDate + ", 比较=" + (localDate.isEqual(sDate)));
+                                        if (sDate.isAfter(eDate)) {
+                                            System.out.println("请假日期有误,開始日期="+dtf.format(sDate)+", 結束日期="+dtf.format(eDate));
+                                            break;
+                                        }
                                         //跨天请假,获取期间的非工作日,加进去
                                         List<LocalDate> localDates = WorkDayCalculateUtils.getNonWorkDaysListInRange(dtf.format(sDate) ,dtf.format(eDate));
                                         for (LocalDate curLdate : localDates) {
@@ -1018,7 +1026,6 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
                                         seconds = wxDuration;
                                     }
                                     double curLeaveTime = convertDayTimeToHours(DateTimeUtil.getHoursFromSeconds(seconds));
-                                    System.out.println("j="+j+", curLeaveTime="+curLeaveTime);
                                     ct.setAskLeaveTime(leaveTime + curLeaveTime);
                                     break;
                                 case 2://补卡

+ 4 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/util/WorkDayCalculateUtils.java

@@ -129,7 +129,11 @@ public class WorkDayCalculateUtils {
         int daysOffset = 0;
         LocalDate localStartDate = LocalDate.parse(startDate, dateTimeFormatter);
         LocalDate localEndDate = LocalDate.parse(endDate, dateTimeFormatter);
+        if (localEndDate.isBefore(localStartDate)) {
+            System.err.println("结束日期"+startDate+"不得小于开始日期"+endDate);
+        }
         List<LocalDate> list = new ArrayList<>();
+        int i = 0;
         while(true) {
             localStartDate = localStartDate.plusDays(daysOffset);
             if (!isWorkDay(localStartDate)) {

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 187 - 187
fhKeeper/formulahousekeeper/timesheet_h5/package-lock.json


+ 3 - 7
fhKeeper/formulahousekeeper/timesheet_h5/public/index.html

@@ -8,21 +8,17 @@
     <!-- <link rel="icon" href="<%= BASE_URL %>favicon.ico"> -->
     <link rel="shortcut icon" type="image/x-icon" href="./favicon.ico"/>
     <title>工时管家</title>
+    <!-- <script src="/axios.min.js"></script> -->
     <link rel="stylesheet" href="https://at.alicdn.com/t/font_1456778_1mgn5degp7t.css">
     <!-- <script src="https://cdn.bootcss.com/axios/0.19.0-beta.1/axios.min.js"></script> -->
     <!-- <script src="https://cdn.bootcdn.net/ajax/libs/axios/0.25.0/axios.min.js"></script> -->
     <!-- <script src="../src/assets/axios.min.js"></script> -->
     <!-- <script src="https://unpkg.com/axios/dist/axios.min.js"></script> -->
-    <script src="./axios.min.js"></script> 
+    <!-- <script src="./axios.min.js"></script>  -->
     <!-- 引入企业微信js -->
     <script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js" referrerpolicy="origin"></script>
     <script src="https://open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js" referrerpolicy="origin"></script>
-    <script language="javascript"> 
-        function killerrors() {
-            return true;
-        }
-        window.onerror = killerrors;
-      </script>
+
     <meta name="wpk-bid" content="dta_2_71020">
         <script>
         var isDingtalk = navigator && /DingTalk/.test(navigator.userAgent);var isProductEnv = window &&window.location &&window.location.host 

+ 3 - 0
fhKeeper/formulahousekeeper/timesheet_h5/src/main.js

@@ -9,6 +9,9 @@ import $axios from "@/utils/request";
 import mixin from "./mixin/index";
 import store from "./store/index";
 
+import axios from 'axios'; /* 引入axios进行地址访问*/
+Vue.prototype.$http = axios;
+
 import "@/components/Vant";
 
 import { Form , Toast , Grid, GridItem , DatetimePicker , Popover,

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet_h5/src/utils/request.js

@@ -1,4 +1,4 @@
-// import axios from "axios";
+import axios from "axios";
 import store from "../store";
 import router from "../router";
 import qs from "qs"

+ 18 - 10
fhKeeper/formulahousekeeper/timesheet_h5/src/views/index/index.vue

@@ -28,7 +28,8 @@
             return {
                 isCorpWX:false,
                 isWX:false,
-                user: JSON.parse(localStorage.userInfo),
+                // user: JSON.parse(localStorage.userInfo) || '',
+                user: '',
                 unreadNum:0,
                 images: [
                     // require('../../assets/img/index/banner_1.png'),
@@ -39,16 +40,19 @@
             };
         },
         created() {
+            if(localStorage.userInfo) {
+                this.user = JSON.parse(localStorage.userInfo)
+            }
         },
         mounted() {
             // 手机上看控制台
-            // if(this.user.companyName == '比基尼小镇'){
-                // let consoleScript = document.createElement("script");
-                // consoleScript.src = "https://cdn.bootcss.com/vConsole/3.3.4/vconsole.min.js";
-                // consoleScript.onload = function () {
-                //     new VConsole()
-                // }
-                // document.head.appendChild(consoleScript);
+            // if(this.user.companyId == '7'){
+            //     let consoleScript = document.createElement("script");
+            //     consoleScript.src = "https://cdn.bootcss.com/vConsole/3.3.4/vconsole.min.js";
+            //     consoleScript.onload = function () {
+            //         new VConsole()
+            //     }
+            //     document.head.appendChild(consoleScript);
             // }
             var ua = navigator.userAgent.toLowerCase();
             if (ua.indexOf("wxwork") > 0) {
@@ -60,7 +64,11 @@
             if (localStorage.userInfo != null) {
                 that.getAccountInfo();
             } else {
-                this.$router.push("/login");
+                if(window.location.href.indexOf('userId') != '-1') {
+                    that.getAccountInfo()
+                } else {
+                    this.$router.push("/login");
+                }
             }
            
         },
@@ -218,7 +226,7 @@
                         this.user = res.data;
                         this.getModule()
                         this.getMessage();
-                        this.bindIfNessary();
+                        // this.bindIfNessary();
                     } 
                 }).catch(err=> {
                     alert('err=' + err);