Browse Source

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

seyason 2 years ago
parent
commit
489a3579b3

+ 10 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/InformationController.java

@@ -33,5 +33,15 @@ public class InformationController {
     public HttpRespMsg checkInformation(@RequestParam Integer id, HttpServletRequest request) {
     public HttpRespMsg checkInformation(@RequestParam Integer id, HttpServletRequest request) {
         return informationService.checkInformation(id, request);
         return informationService.checkInformation(id, request);
     }
     }
+
+    /**
+     * 将所有未读消息标记为已读
+     * @param request
+     * @return
+     */
+    @RequestMapping("/checkAll")
+    public HttpRespMsg allCheck(HttpServletRequest request) {
+        return informationService.checkAllInformation(request);
+    }
 }
 }
 
 

+ 2 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/InformationService.java

@@ -18,4 +18,6 @@ public interface InformationService extends IService<Information> {
     HttpRespMsg getInformationList(HttpServletRequest request);
     HttpRespMsg getInformationList(HttpServletRequest request);
 
 
     HttpRespMsg checkInformation(Integer id, HttpServletRequest request);
     HttpRespMsg checkInformation(Integer id, HttpServletRequest request);
+
+    HttpRespMsg checkAllInformation(HttpServletRequest request);
 }
 }

+ 22 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/InformationServiceImpl.java

@@ -38,6 +38,9 @@ public class InformationServiceImpl extends ServiceImpl<InformationMapper, Infor
     @Resource
     @Resource
     private WxCorpInfoMapper wxCorpInfoMapper;
     private WxCorpInfoMapper wxCorpInfoMapper;
 
 
+    @Resource
+    private InformationService informationService;
+
     @Override
     @Override
     public HttpRespMsg getInformationList(HttpServletRequest request) {
     public HttpRespMsg getInformationList(HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         HttpRespMsg httpRespMsg = new HttpRespMsg();
@@ -93,4 +96,23 @@ public class InformationServiceImpl extends ServiceImpl<InformationMapper, Infor
         }
         }
         return httpRespMsg;
         return httpRespMsg;
     }
     }
+
+    /**
+     * 将该用户所有未读消息标记为已读
+     * @param request
+     * @return
+     */
+    @Override
+    public HttpRespMsg checkAllInformation(HttpServletRequest request) {
+        HttpRespMsg HttpRespMsg = new HttpRespMsg();
+        String token = request.getHeader("token");
+        List<Information> information = informationMapper.selectList(new QueryWrapper<Information>().eq("user_id", token).eq("checked", 0));
+        if (information.size() != 0){
+            for (Information item : information) {
+                item.setChecked(1);
+            }
+            informationService.updateBatchById(information);
+        }
+        return HttpRespMsg;
+    }
 }
 }

+ 3 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -5275,6 +5275,9 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
     public HttpRespMsg defaultDegree(Integer projectId, HttpServletRequest request) {
     public HttpRespMsg defaultDegree(Integer projectId, HttpServletRequest request) {
         User user = userMapper.selectById(request.getHeader("token"));
         User user = userMapper.selectById(request.getHeader("token"));
         Map<String, Object> defaultDegree = reportMapper.getDefaultDegree(user.getCompanyId(), user.getId(), projectId);
         Map<String, Object> defaultDegree = reportMapper.getDefaultDegree(user.getCompanyId(), user.getId(), projectId);
+        if (defaultDegree!=null && "-1".equals(defaultDegree.get("id").toString())){
+            defaultDegree = null;
+        }
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         httpRespMsg.data = defaultDegree;
         httpRespMsg.data = defaultDegree;
         return httpRespMsg;
         return httpRespMsg;

+ 44 - 48
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/task/TimingTask.java

@@ -210,7 +210,7 @@ public class TimingTask {
         }
         }
     }
     }
 
 
-    //每个月五号推送上月日报信息
+    //每个月五号一点推送上月日报信息
     @Scheduled(cron = "0 0 1 5 * ?")
     @Scheduled(cron = "0 0 1 5 * ?")
     private void pushReportListByToken(){
     private void pushReportListByToken(){
         if(isDev) return;
         if(isDev) return;
@@ -222,54 +222,50 @@ public class TimingTask {
         LocalDate end=now.with(TemporalAdjusters.lastDayOfMonth());
         LocalDate end=now.with(TemporalAdjusters.lastDayOfMonth());
         List<TimeType> timeTypeList = timeTypeMapper.selectList(new QueryWrapper<TimeType>().eq("push_report_data", 1));
         List<TimeType> timeTypeList = timeTypeMapper.selectList(new QueryWrapper<TimeType>().eq("push_report_data", 1));
         for (TimeType timeType : timeTypeList) {
         for (TimeType timeType : timeTypeList) {
-            List<HashMap<String, Object>> allReportByProject = reportMapper.geReportByProject(start.format(df),timeType.getCompanyId(),end.format(df));
-            String url=timeType.getPushReportUrl();
-            //认证的账号和密码
-            HttpHeaders headers=new HttpHeaders();
-            JSONObject param = new JSONObject();
-            JSONArray array=new JSONArray();
-            allReportByProject.forEach(rl->{
-                JSONObject object=new JSONObject();
-                object.put("projectMainCode",rl.get("projectMainCode"));
-                object.put("projectMainName",rl.get("projectMainName"));
-                object.put("projectCode",rl.get("projectCode"));
-                object.put("project",rl.get("project"));
-                object.put("duration",rl.get("duration"));
-                object.put("cost",rl.get("cost"));
-                object.put("year",rl.get("year"));
-                object.put("month",rl.get("month"));
-                array.add(object);
-            });
-            JSONObject header=new JSONObject();
-            param.put("IT_TAB",array);
-            JSONObject item=new JSONObject();
-            item.put("headers",header);
-            item.put("body",param);
-            //在请求头信息中携带Basic认证信息(这里才是实际Basic认证传递用户名密码的方式)
-            headers.setContentType(MediaType.APPLICATION_JSON);
-            HttpEntity<String> requestEntity = new HttpEntity<String>(item.toJSONString(), headers);
-            //过滤掉账号认证失败的时候抛出的401异常
-            restTemplate.setErrorHandler(new DefaultResponseErrorHandler(){
-                @Override
-                public void handleError(ClientHttpResponse response) throws IOException {
-                    if(response.getRawStatusCode() != 401){
-                        super.handleError(response);
+            if(timeType.getPushReportUrl()!=null&&!timeType.getPushReportUrl().equals("")){
+                List<HashMap<String, Object>> allReportByProject = reportMapper.geReportByProject(start.format(df),timeType.getCompanyId(),end.format(df));
+                String url=timeType.getPushReportUrl();
+                JSONObject param = new JSONObject();
+                JSONArray array=new JSONArray();
+                allReportByProject.forEach(rl->{
+                    JSONObject object=new JSONObject();
+                    object.put("projectMainCode",rl.get("projectMainCode")==null?"":rl.get("projectMainCode"));
+                    object.put("projectMainName",rl.get("projectMainName")==null?"":rl.get("projectMainName"));
+                    object.put("projectCode",rl.get("projectCode"));
+                    object.put("project",rl.get("project"));
+                    object.put("duration",rl.get("duration"));
+                    object.put("cost",rl.get("cost"));
+                    object.put("year",rl.get("year"));
+                    object.put("month",rl.get("month"));
+                    array.add(object);
+                });
+                HttpHeaders headers = new HttpHeaders();
+                headers.setContentType(MediaType.APPLICATION_JSON);
+                param.put("data",array);
+                HttpEntity<String> requestEntity = new HttpEntity<String>(param.toJSONString(),headers);
+                //过滤掉账号认证失败的时候抛出的401异常
+                restTemplate.setErrorHandler(new DefaultResponseErrorHandler(){
+                    @Override
+                    public void handleError(ClientHttpResponse response) throws IOException {
+                        if(response.getRawStatusCode() != 401){
+                            super.handleError(response);
+                        }
                     }
                     }
-                }
-            });
-            //发送请求
-            ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST,requestEntity,String.class);
-            if (response.getStatusCode() == HttpStatus.OK) {
-                String resp = response.getBody();
-                JSONObject obj = JSONObject.parseObject(resp);
-                if (obj.getString("msg").equals("SUCCESS")) {
-                    msg.data=obj;
-                } else {
-                    //抛出异常
-                    try {
-                        throw new Exception(obj.getString("msg"));
-                    } catch (Exception e) {
-                        e.printStackTrace();
+                });
+                //发送请求
+                ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST,requestEntity,String.class);
+                if (response.getStatusCode() == HttpStatus.OK) {
+                    String resp = response.getBody();
+                    JSONObject obj = JSONObject.parseObject(resp);
+                    if (obj.getString("message").equals("SUCCESS")) {
+                        msg.data=obj;
+                    } else {
+                        //抛出异常
+                        try {
+                            throw new Exception(obj.getString("data"));
+                        } catch (Exception e) {
+                            e.printStackTrace();
+                        }
                     }
                     }
                 }
                 }
             }
             }

+ 12 - 1
fhKeeper/formulahousekeeper/timesheet_h5/src/views/msg/index.vue

@@ -1,6 +1,6 @@
 <template>
 <template>
     <div>
     <div>
-        <van-nav-bar title="消息记录" left-text="返回" @click-left="back" fixed left-arrow/>
+        <van-nav-bar title="消息记录" left-text="返回" right-text="全部已读" @click-right="allRead()" @click-left="back" fixed left-arrow/>
         
         
         <div class="login_form">
         <div class="login_form">
             <van-list v-model="loading" :finished="finished" finished-text="没有更多了" :error.sync="error" error-text="请求失败,点击重新加载" @load="getMessage">
             <van-list v-model="loading" :finished="finished" finished-text="没有更多了" :error.sync="error" error-text="请求失败,点击重新加载" @load="getMessage">
@@ -49,6 +49,17 @@
         created() {
         created() {
         },
         },
         methods: {
         methods: {
+
+            // 全部已读
+            allRead() {
+                this.$axios.post("/information/checkAll", {})
+                .then(res => {
+                    if(res.code == "ok") {
+                        // 重新获取消息
+                        this.getMessage();
+                    } 
+                }).catch(err=> {this.$toast.clear();});
+            },
             
             
             // 返回
             // 返回
             back() {
             back() {