yuliang 5 yıl önce
ebeveyn
işleme
a30463a0ca

+ 33 - 0
admin-ui/app/whepi/lingyun/dialogFugong.js

@@ -0,0 +1,33 @@
+define(function (require) {
+  return function (context) {
+
+    var $dlg;
+    return {
+      xtype: 'dialog',
+      dialogId: 'dialogFugong',
+      title: '复工查看',
+      width: '400px',
+      height: '550px',
+      onOpen: function () {
+        $dlg = $(this);
+      },
+      center: {
+        items: {
+          width: '100%',
+          height: '100%',
+          autoSizeColumns: true,
+          xtype: 'iframe',
+          src: '/whepi/user/returnWork.html?userId='+context.userId //在此用拼接参数的方式往下级页面传值
+        }
+      },
+      buttons: [
+        {
+          text: "关闭", iconCls: "fa fa-times", onClick: function () {
+            $dlg.dialog('close');
+          }
+        }
+      ]
+    }
+      ;
+  };
+});

+ 17 - 0
admin-ui/app/whepi/lingyun/lingyunUser.js

@@ -164,6 +164,23 @@ define(function (require) {
                       window.open(api('/sweepCode/exSelectLingyunUser?queryProperties='+queryProperties+"&unitId="+unitId + "&date="+date));
                     }
                   },
+                  {
+                    text: '查看人员可复工状况', iconCls: 'fa fa-search', onClick: function () {
+                      var row = $grid1.rowData();
+                      if ( row == null || row == undefined || row.userId == null || row.userId == "") {
+                        $.yvan.msg('请选择数据');
+                        return
+                      }
+                      $.yvan.showDialog(this,
+                        require('/app/whepi/lingyun/dialogFugong.js')({
+                          userId: row.userId,
+                          confirm: function () {
+                            // $grid2.reload();
+                          }
+                        })
+                      );
+                    }
+                  },
                 ]
               },
               multiselect: true, /// 表格多选

BIN
whepi-ui/static/outHelp.jpg


+ 97 - 84
whepi-web/src/main/java/com/bofeng/wx/controller/ScanController.java

@@ -72,8 +72,8 @@ public class ScanController {
     private OutUserMapper outUserMapper;
 
     /**
-     * @param doorId 小区大门ID
-     * @param inType 1进入;2外出
+     * @param doorId  小区大门ID
+     * @param inType  1进入;2外出
      * @param request
      * @param model
      * @return
@@ -93,7 +93,7 @@ public class ScanController {
         } else {
             Boolean ly = false;
             UptownDoor uptownDoor = uptownDoorMapper.getUptownDoorById(doorId);
-            List<UptownHome> uptownHomes =  uptownHomeMapper.getUptownHomeByUserId(userOpen.getUserId());
+            List<UptownHome> uptownHomes = uptownHomeMapper.getUptownHomeByUserId(userOpen.getUserId());
             UptownUnit unit = uptownUnitMapper.getUptownUnitByUser(userOpen.getUserId());
             model.put("uptownId", unit.getUptownId());
             model.put("tittle", "电子出入许可");
@@ -105,7 +105,7 @@ public class ScanController {
                 model.put("doorplate", unit.getRidgepole() + unit.getUnit());
                 model.put("door", uptownDoor.getDoorName());
             } else {
-                model.put("doorplate", unit.getRidgepole() + "栋" + unit.getUnit() + "单元" +unit.getDoorplate() + "号");
+                model.put("doorplate", unit.getRidgepole() + "栋" + unit.getUnit() + "单元" + unit.getDoorplate() + "号");
                 model.put("door", uptownDoor.getUptownName() + uptownDoor.getDoorName());
             }
             model.put("name", uptownHomes.get(0).getLinkman());
@@ -120,7 +120,7 @@ public class ScanController {
                 return new ModelAndView("/user/scan.ftl", model);
             }
             OutScan o = outScanMapper.getOutScanLately(userOpen.getUserId(), inType);
-            if (o != null && compareTime(o.getDate(),1)) {
+            if (o != null && compareTime(o.getDate(), 1)) {
                 model.put("collor", "orange");
                 model.put("into", "允许" + getMsg(inType));
                 model.put("errorMsg", "您最近一分钟已经扫码,本次扫码重复。");
@@ -182,7 +182,7 @@ public class ScanController {
                             model.put("collor", "red");
                             model.put("collor2", "red");
                             model.put("into", "不许进入");
-                            model.put("errorMsg", "您返回工作驻地后未满14日,不许进入。"+day15(s.parse(returnWork))+"起方可进入!");
+                            model.put("errorMsg", "您返回工作驻地后未满14日,不许进入。" + day15(s.parse(returnWork)) + "起方可进入!");
                             scanService.saveOutScan(userOpen.getUserId(), inType, uptownDoor.getUptownId(), uptownDoor.getDoorId(), -1, model.get("errorMsg").toString());
                             return new ModelAndView("/user/scan.ftl", model);
                         }
@@ -226,7 +226,7 @@ public class ScanController {
                 if (outScan != null) {
                     model.put("collor", "red");
                     model.put("into", "禁止" + getMsg(inType));
-                    model.put("errorMsg", "距您上次外出时间未满"+outScanConf.getGoOutFre()+"日,禁止外出,请配合。上次外出登记时间 "+sdf.format(new Date(outScan.getDate().getMillis()))+"。");
+                    model.put("errorMsg", "距您上次外出时间未满" + outScanConf.getGoOutFre() + "日,禁止外出,请配合。上次外出登记时间 " + sdf.format(new Date(outScan.getDate().getMillis())) + "。");
                     scanService.saveOutScan(userOpen.getUserId(), inType, uptownDoor.getUptownId(), uptownDoor.getDoorId(), -1, model.get("errorMsg").toString());
                     return new ModelAndView("/user/scan.ftl", model);
                 }
@@ -277,15 +277,15 @@ public class ScanController {
         if (list.size() == 0) {
             return new ModelAndView("/user/home.ftl", model);
         } else {
-            List<UptownHome> uptownHomes =  uptownHomeMapper.getUptownHomeByUserId(userOpen.getUserId());
+            List<UptownHome> uptownHomes = uptownHomeMapper.getUptownHomeByUserId(userOpen.getUserId());
             UptownUnit unit = uptownUnitMapper.getUptownUnitByUser(userOpen.getUserId());
             OutScanConf outScanConf = outScanConfMapper.getOutScanConfByUptown(unit.getUptownId());
-            model.put("doorplate", unit.getUptownName() + "小区" +unit.getRidgepole() + "栋" + unit.getUnit() + "单元" +unit.getDoorplate() + "号");
+            model.put("doorplate", unit.getUptownName() + "小区" + unit.getRidgepole() + "栋" + unit.getUnit() + "单元" + unit.getDoorplate() + "号");
             model.put("name", uptownHomes.get(0).getLinkman());
             SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
             model.put("now", format.format(new Date()));
             OutScanEstate o = outScanEstateMapper.getOutScanEstatLately(userOpen.getUserId());
-            if (o != null && compareTime(o.getScanDate(),1)) {
+            if (o != null && compareTime(o.getScanDate(), 1)) {
                 model.put("collor", "orange");
                 model.put("into", "允许通行");
                 model.put("errorMsg", "您最近一分钟已经扫码,本次扫码重复。");
@@ -336,15 +336,15 @@ public class ScanController {
                 model.put("collor", "green");
                 model.put("into", "允许通行");
                 if (list1.size() == 0) {
-                    model.put("errorMsg", "您今日已"+conut+"次被问讯,请说明外出原因,尽快回家。");
+                    model.put("errorMsg", "您今日已" + conut + "次被问讯,请说明外出原因,尽快回家。");
                 } else {
-                    model.put("errorMsg", "您今日已"+conut+"次被问讯,请说明外出原因,尽快回家。问询时间:"+queryTime(list1)+"。");
+                    model.put("errorMsg", "您今日已" + conut + "次被问讯,请说明外出原因,尽快回家。问询时间:" + queryTime(list1) + "。");
                 }
                 scanService.saveOutScanEstate(userOpen.getUserId(), 1, "");
             } else {
                 model.put("collor", "red");
                 model.put("into", "禁止通行");
-                model.put("errorMsg", "您今日已被巡检人员问讯超过2次,为自身及家人安全,请赶紧回家。问询时间:"+queryTime(list1)+"。");
+                model.put("errorMsg", "您今日已被巡检人员问讯超过2次,为自身及家人安全,请赶紧回家。问询时间:" + queryTime(list1) + "。");
                 scanService.saveOutScanEstate(userOpen.getUserId(), -1, model.get("errorMsg").toString());
             }
 //            model.put("img", "/scan/scanEstate_qr.png");
@@ -364,14 +364,14 @@ public class ScanController {
         if (list.size() == 0) {
             return new ModelAndView("/user/home.ftl", model);
         } else {
-            List<UptownHome> uptownHomes =  uptownHomeMapper.getUptownHomeByUserId(userOpen.getUserId());
+            List<UptownHome> uptownHomes = uptownHomeMapper.getUptownHomeByUserId(userOpen.getUserId());
             UptownUnit unit = uptownUnitMapper.getUptownUnitByUser(userOpen.getUserId());
             if (unit.getUptownId() == 1238790987234L || unit.getUptownId() == 5) {
                 model.put("into", "此功能暂未开放");
                 model.put("errorMsg", "外出请佩戴口罩,避免近距离接触,不得长时间在外逗留。");
-                return  new ModelAndView("/user/goOut.ftl", model);
+                return new ModelAndView("/user/goOut.ftl", model);
             } else {
-                model.put("doorplate", unit.getUptownName() + "小区" +unit.getRidgepole() + "栋" + unit.getUnit() + "单元" +unit.getDoorplate() + "号");
+                model.put("doorplate", unit.getUptownName() + "小区" + unit.getRidgepole() + "栋" + unit.getUnit() + "单元" + unit.getDoorplate() + "号");
                 model.put("name", uptownHomes.get(0).getLinkman());
                 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                 model.put("now", sdf.format(new Date()));
@@ -407,8 +407,8 @@ public class ScanController {
                 if (outScan != null) {
                     model.put("collor", "red");
                     model.put("into", "禁止外出");
-                    model.put("errorMsg", "您今日健康状态评估正常,最近可外出时间"+sdf.format(new Date(outScan.getDayDate().getTime() + 1000L  *3600*24 * outScanConf.getGoOutFre()))+
-                            ",距今日还差"+differentDays(outScan.getDayDate(), sdf.parse(sdf.format(new Date())), outScanConf.getGoOutFre())+"天。");
+                    model.put("errorMsg", "您今日健康状态评估正常,最近可外出时间" + sdf.format(new Date(outScan.getDayDate().getTime() + 1000L * 3600 * 24 * outScanConf.getGoOutFre())) +
+                            ",距今日还差" + differentDays(outScan.getDayDate(), sdf.parse(sdf.format(new Date())), outScanConf.getGoOutFre()) + "天。");
                     return new ModelAndView("/user/goOut.ftl", model);
                 }
                 model.put("collor", "green");
@@ -421,7 +421,7 @@ public class ScanController {
 
     @ApiOperation("复工查询")
     @GetMapping("/user/returnWork.html")
-    public ModelAndView returnWork(HttpServletRequest request, ModelMap model) throws ParseException {
+    public ModelAndView selectReturnWork(HttpServletRequest request, ModelMap model) throws ParseException {
         UserOpen userOpen = homeService.getUserOpen();
         List<UserRole> list = userRoleMapper.getUserRoleByUserId(userOpen.getUserId());
 //        List<UserRole> list = userRoleMapper.getUserRoleByUserId(1234L);
@@ -431,95 +431,108 @@ public class ScanController {
         if (list.size() == 0) {
             return new ModelAndView("/user/home.ftl", model);
         } else {
-            List<UptownHome> uptownHomes =  uptownHomeMapper.getUptownHomeByUserId(userOpen.getUserId());
-            UptownUnit unit = uptownUnitMapper.getUptownUnitByUser(userOpen.getUserId());
-            model.put("uptownId", unit.getUptownId());
-            if (unit.getUptownId() == 1238790987234L || unit.getUptownId() == 5) {
-                model.put("tittle", "凌云集团");
-                model.put("doorplate", unit.getRidgepole() + unit.getUnit());
-                model.put("name", uptownHomes.get(0).getLinkman());
-                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-                SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
-                model.put("now", sdf.format(new Date()));
-                MsReport msReport = msReportMapper.queryMsReportIsXG(userOpen.getUserId());
-                if (msReport != null) {
-                    List<MsReport> msReports1 = msReportMapper.queryLateStatus(userOpen.getUserId(), s.format(msReport.getReportDate()));
-                    if (msReports1.size() == 0) {
-                        model.put("collor", "red");
-                        model.put("collor2", "red");
-                        model.put("into", "不可复工");
-                        model.put("errorMsg", "由于您上报过新冠确诊、新冠疑似或密切接触者,且未解除医学隔离,不可复工,如有疑问请联系直管领导。");
-                        return new ModelAndView("/user/returnWork.ftl", model);
-                    }
-                }
-                List<MsReport> msReports = msReportMapper.selectMsReportLate(userOpen.getUserId());
-                if (msReports.size() < 3) {
-                    model.put("collor", "red");
-                    model.put("collor2", "red");
-                    model.put("into", "不可复工");
-                    model.put("errorMsg", "由于您近3日未连续报告日报,不可复工,如有疑问请联系直管领导。");
-                    return new ModelAndView("/user/returnWork.ftl", model);
-                }
-                List<MsReport> msReports2 = msReportMapper.selectMsReportThereError(userOpen.getUserId());
-                if (msReports2.size() > 0) {
+            return returnWork(userOpen.getUserId(), model);
+        }
+    }
+
+    @ApiOperation("复工查询")
+    @GetMapping("/whepi/user/returnWork.html")
+    public ModelAndView adminSelectReturnWork(@Pd(name = "userId")Long userId, ModelMap model) throws ParseException {
+        return returnWork(userId, model);
+    }
+
+    private ModelAndView returnWork(Long userId, ModelMap model) throws ParseException {
+        List<UptownHome> uptownHomes = uptownHomeMapper.getUptownHomeByUserId(userId);
+        UptownUnit unit = uptownUnitMapper.getUptownUnitByUser(userId);
+        model.put("uptownId", unit.getUptownId());
+        if (unit.getUptownId() == 1238790987234L || unit.getUptownId() == 5) {
+            model.put("tittle", "凌云集团");
+            model.put("doorplate", unit.getRidgepole() + unit.getUnit());
+            model.put("name", uptownHomes.get(0).getLinkman());
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
+            model.put("now", sdf.format(new Date()));
+            MsReport msReport = msReportMapper.queryMsReportIsXG(userId);
+            if (msReport != null) {
+                List<MsReport> msReports1 = msReportMapper.queryLateStatus(userId, s.format(msReport.getReportDate()));
+                if (msReports1.size() == 0) {
                     model.put("collor", "red");
                     model.put("collor2", "red");
                     model.put("into", "不可复工");
-                    model.put("errorMsg", "由于近期您健康评估存在问题,不可复工,如有疑问请联系直管领导。");
+                    model.put("errorMsg", "由于您上报过新冠确诊、新冠疑似或密切接触者,且未解除医学隔离,不可复工,如有疑问请联系直管领导。");
                     return new ModelAndView("/user/returnWork.ftl", model);
                 }
-                String returnWork = msReportMapper.returnWork(userOpen.getUserId());
-                if (returnWork != null) {
-                    List<MsReport> msReports3 = msReportMapper.returnWorkTime(returnWork, userOpen.getUserId());
-                    Date date = null;
-                    if (msReports3.size() != 0) {
-                        date = msReports3.get(0).getReportDate();
-                    } else {
-                        date = s.parse(returnWork);
-                    }
-                    if (s.parse(returnWork).getTime() + 1000L * 3600 * 15 > date.getTime()) {
-                        model.put("collor", "red");
-                        model.put("collor2", "red");
-                        model.put("into", "不可复工");
-                        model.put("errorMsg", "您返回工作驻地后未满14日,不可复工。"+day15(s.parse(returnWork))+"起方可进入!");
-                        return new ModelAndView("/user/returnWork.ftl", model);
-                    }
+            }
+            List<MsReport> msReports = msReportMapper.selectMsReportLate(userId);
+            if (msReports.size() < 3) {
+                model.put("collor", "red");
+                model.put("collor2", "red");
+                model.put("into", "不可复工");
+                model.put("errorMsg", "由于您近3日未连续报告日报,不可复工,如有疑问请联系直管领导。");
+                return new ModelAndView("/user/returnWork.ftl", model);
+            }
+            List<MsReport> msReports2 = msReportMapper.selectMsReportThereError(userId);
+            if (msReports2.size() > 0) {
+                model.put("collor", "red");
+                model.put("collor2", "red");
+                model.put("into", "不可复工");
+                model.put("errorMsg", "由于近期您健康评估存在问题,不可复工,如有疑问请联系直管领导。");
+                return new ModelAndView("/user/returnWork.ftl", model);
+            }
+            String returnWork = msReportMapper.returnWork(userId);
+            if (returnWork != null) {
+                List<MsReport> msReports3 = msReportMapper.returnWorkTime(returnWork, userId);
+                Date date = null;
+                if (msReports3.size() != 0) {
+                    date = msReports3.get(0).getReportDate();
+                } else {
+                    date = s.parse(returnWork);
                 }
-                MsReport msReport1 = msReportMapper.msAddr(userOpen.getUserId());
-                if (msReport1 != null && !msReport1.getWorkMsg().equals(msReport1.getTodayMsg())) {
+                if (s.parse(returnWork).getTime() + 1000L * 3600 * 15 > date.getTime()) {
                     model.put("collor", "red");
                     model.put("collor2", "red");
                     model.put("into", "不可复工");
-                    model.put("errorMsg", "您本人不在工作驻地,不能入场复工。");
+                    model.put("errorMsg", "您返回工作驻地后未满14日,不可复工。" + day15(s.parse(returnWork)) + "起方可进入!");
                     return new ModelAndView("/user/returnWork.ftl", model);
                 }
-                model.put("collor", "green");
-                model.put("collor2", "green");
-                model.put("into", "允许复工");
-                model.put("errorMsg", "欢迎您归来,请注意遵守抗击疫情期间工作安全规定,做好健康防护,安全工作,健康第一。");
+            }
+            MsReport msReport1 = msReportMapper.msAddr(userId);
+            if (msReport1 != null && !msReport1.getWorkMsg().equals(msReport1.getTodayMsg())) {
+                model.put("collor", "red");
+                model.put("collor2", "red");
+                model.put("into", "不可复工");
+                model.put("errorMsg", "您本人不在工作驻地,不能入场复工。");
                 return new ModelAndView("/user/returnWork.ftl", model);
-                //您近期内离开过工作单位驻地,请遵守返回工作驻地15日隔离规定,您目前未满15日,禁止进入。
-            } else {
-                model.put("into", "此功能暂未开放");
-                model.put("errorMsg", "复工期间请请注意安全。");
-                return  new ModelAndView("/user/returnWork.ftl", model);
             }
+            model.put("collor", "green");
+            model.put("collor2", "green");
+            model.put("into", "允许复工");
+            model.put("errorMsg", "欢迎您归来,请注意遵守抗击疫情期间工作安全规定,做好健康防护,安全工作,健康第一。");
+            return new ModelAndView("/user/returnWork.ftl", model);
+            //您近期内离开过工作单位驻地,请遵守返回工作驻地15日隔离规定,您目前未满15日,禁止进入。
+        } else {
+            model.put("into", "此功能暂未开放");
+            model.put("errorMsg", "复工期间请请注意安全。");
+            return new ModelAndView("/user/returnWork.ftl", model);
         }
+
     }
 
     /**
      * 通过时间秒毫秒数判断两个时间的间隔
+     *
      * @param date1
      * @param i
      * @return
      */
     public static int differentDays(Date date1, Date date2, Integer i) {
-        int days = (int) ((date1.getTime() - date2.getTime()) / (1000*3600*24)) + i;
+        int days = (int) ((date1.getTime() - date2.getTime()) / (1000 * 3600 * 24)) + i;
         return days;
     }
 
     /**
      * 判断传入的时间和现在相差是否在i分钟内
+     *
      * @param date
      * @param i
      * @return
@@ -542,7 +555,7 @@ public class ScanController {
         return "";
     }
 
-    public String queryTime (List<OutScanEstate> list) {
+    public String queryTime(List<OutScanEstate> list) {
         SimpleDateFormat format = new SimpleDateFormat("HH:mm");
         String time = "";
         for (OutScanEstate o : list) {
@@ -554,19 +567,19 @@ public class ScanController {
 
     public String day15(Date returnWork) {
         SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日");
-        return sdf.format(new Date(returnWork.getTime() + 1000L*3600*24*15));
+        return sdf.format(new Date(returnWork.getTime() + 1000L * 3600 * 24 * 15));
     }
 
     public String day15(List<MsReport> list, String returnWork) throws ParseException {
         SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日");
         Date time1 = null;
-        if(list.size() == 0) {
+        if (list.size() == 0) {
             time1 = new Date();
         } else {
             SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
             time1 = s.parse(returnWork);
         }
-        return sdf.format(new Date(time1.getTime() + 1000L*3600*24*15));
+        return sdf.format(new Date(time1.getTime() + 1000L * 3600 * 24 * 15));
     }
 
 //    /**