Explorar o código

修改导师带徒权限

jiangbiao hai 1 ano
pai
achega
acfe2b6b44

+ 261 - 0
master/src/main/java/com/ruoyi/framework/task/PlanTask.java

@@ -0,0 +1,261 @@
+package com.ruoyi.framework.task;
+
+import com.ruoyi.common.sendEmail.IMailService;
+import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.SpringContextUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.patrol.patrol.domain.TPatrolMain;
+import com.ruoyi.project.patrol.patrol.domain.TPatrolPlan;
+import com.ruoyi.project.patrol.patrol.service.ITPatrolMainService;
+import com.ruoyi.project.patrol.patrol.service.ITPatrolPlanService;
+import com.ruoyi.project.system.domain.SysUser;
+import com.ruoyi.project.system.service.ISysUserService;
+import org.apache.commons.collections4.CollectionUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.*;
+
+@Component("planTask")
+public class PlanTask {
+
+    private Logger logger = LoggerFactory.getLogger(this.getClass());
+
+    @Autowired
+    private ITPatrolMainService tPatrolMainService;
+
+    @Autowired
+    private ITPatrolPlanService tPatrolPlanService;
+
+    @Autowired
+    private ISysUserService sysUserService;
+
+
+    public void generatePlan() {
+        TPatrolPlan tPatrolPlan = new TPatrolPlan();
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(new Date());
+        tPatrolPlan.setPlanQuarter((long) (calendar.get(Calendar.MONTH) + 1));
+        tPatrolPlan.setPlanYear((long) (calendar.get(Calendar.YEAR)));
+        TPatrolMain tPatrolMain = new TPatrolMain();
+        tPatrolMain.setYear(String.valueOf(calendar.get(Calendar.YEAR)));
+        if (calendar.get(Calendar.DATE) <= 15) {
+            // 每三个月一次的
+            if (calendar.get(Calendar.MONTH) == Calendar.FEBRUARY || calendar.get(Calendar.MONTH) == Calendar.MAY || calendar.get(Calendar.MONTH) == Calendar.AUGUST || calendar.get(Calendar.MONTH) == Calendar.NOVEMBER) {
+                // 每三个月一次巡检的设备,中间月创建巡检计划
+                tPatrolMain.setCheckCycle("3");
+                List<TPatrolMain> tPatrolMains = tPatrolMainService.selectTPatrolMainList(tPatrolMain);
+                for (TPatrolMain patrolMain : tPatrolMains) {
+                    tPatrolPlan.setPatrolType(patrolMain.getPatrolType());
+                    tPatrolPlan.setPlanName(calendar.get(Calendar.YEAR) + "年-" + (calendar.get(Calendar.MONTH) + 1) + "月" + "-固定计划-" + patrolMain.getDevName());
+                    tPatrolPlanService.add(tPatrolPlan, "1");
+                }
+            }
+            //每半年一次的
+            if (calendar.get(Calendar.MONTH) == Calendar.JANUARY || calendar.get(Calendar.MONTH) == Calendar.JULY) {
+                // 每半年一次巡检的设备,1、7月创建巡检计划
+                tPatrolMain.setCheckCycle("4");
+                List<TPatrolMain> tPatrolMains = tPatrolMainService.selectTPatrolMainList(tPatrolMain);
+                String val = "";
+                if (calendar.get(Calendar.MONTH) == Calendar.JANUARY)
+                    val = "-上半年-";
+                else
+                    val = "-下半年-";
+                for (TPatrolMain patrolMain : tPatrolMains) {
+                    tPatrolPlan.setPatrolType(patrolMain.getPatrolType());
+                    tPatrolPlan.setPlanName(calendar.get(Calendar.YEAR) + "年-" + val + "-固定计划-" + patrolMain.getDevName());
+                    tPatrolPlanService.add(tPatrolPlan, "1");
+                }
+            }
+            //每年一次的
+            if (calendar.get(Calendar.MONTH) == Calendar.JANUARY) {
+                // 每年一次巡检的设备,1月创建巡检计划
+                tPatrolMain.setCheckCycle("5");
+                List<TPatrolMain> tPatrolMains = tPatrolMainService.selectTPatrolMainList(tPatrolMain);
+                for (TPatrolMain patrolMain : tPatrolMains) {
+                    tPatrolPlan.setPatrolType(patrolMain.getPatrolType());
+                    tPatrolPlan.setPlanName(calendar.get(Calendar.YEAR) + "年-" + "-固定计划-" + patrolMain.getDevName());
+                    tPatrolPlanService.add(tPatrolPlan, "1");
+                }
+            }
+            tPatrolMain.setCheckCycle("2");
+            List<TPatrolMain> tPatrolMains = tPatrolMainService.selectTPatrolMainList(tPatrolMain);
+            for (TPatrolMain patrolMain : tPatrolMains) {
+                tPatrolPlan.setPatrolType(patrolMain.getPatrolType());
+                tPatrolPlan.setPlanName(calendar.get(Calendar.YEAR) + "年-" + (calendar.get(Calendar.MONTH) + 1) + "月" + "-固定计划-" + patrolMain.getDevName());
+                tPatrolPlanService.add(tPatrolPlan, "1");
+            }
+        }
+        tPatrolMain.setCheckCycle("1");
+        List<TPatrolMain> tPatrolMains = tPatrolMainService.selectTPatrolMainList(tPatrolMain);
+        for (TPatrolMain patrolMain : tPatrolMains) {
+            String val = "";
+            if (patrolMain.getPatrolType().equals("1")) {
+                if (calendar.get(Calendar.DATE) <= 15) {
+                    val = "-上半月-";
+                    tPatrolPlan.setDetectionFrequency("1");
+                } else {
+                    tPatrolPlan.setDetectionFrequency("2");
+                    val = "-下半月-";
+                }
+            }
+            tPatrolPlan.setPatrolType(patrolMain.getPatrolType());
+            tPatrolPlan.setPlanName(calendar.get(Calendar.YEAR) + "年-" + (calendar.get(Calendar.MONTH) + 1) + "月" + val + "-固定计划-" + patrolMain.getDevName());
+            tPatrolPlanService.add(tPatrolPlan, "1");
+        }
+    }
+
+    public void generateMain() {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(new Date());
+        TPatrolMain tPatrolMain = new TPatrolMain();
+        tPatrolMain.setYear(String.valueOf(calendar.get(Calendar.YEAR)));
+        for (TPatrolMain patrolMain : tPatrolMainService.selectTPatrolMainList(tPatrolMain)) {
+            TPatrolMain main = new TPatrolMain();
+            main.setPatrolType(patrolMain.getPatrolType());
+            main.setYear(String.valueOf(calendar.get(Calendar.YEAR) + 1));
+            if (CollectionUtils.isNotEmpty(tPatrolMainService.selectTPatrolMainList(main))) {
+                continue;
+            }
+            main.setCheckCycle(patrolMain.getCheckCycle());
+            main.setDevLink(patrolMain.getDevLink());
+            main.setDevName(patrolMain.getDevName());
+            main.setDevNum(patrolMain.getDevNum());
+            if ("1".equals((patrolMain.getCheckCycle()))) {
+                main.setJan("0,0");
+                main.setFeb("0,0");
+                main.setMar("0,0");
+                main.setApr("0,0");
+                main.setMay("0,0");
+                main.setJun("0,0");
+                main.setJul("0,0");
+                main.setAug("0,0");
+                main.setSep("0,0");
+                main.setOct("0,0");
+                main.setNov("0,0");
+                main.setDec("0,0");
+            } else if ("2".equals((patrolMain.getCheckCycle()))) {
+                main.setJan("0");
+                main.setFeb("0");
+                main.setMar("0");
+                main.setApr("0");
+                main.setMay("0");
+                main.setJun("0");
+                main.setJul("0");
+                main.setAug("0");
+                main.setSep("0");
+                main.setOct("0");
+                main.setNov("0");
+                main.setDec("0");
+            } else if ("3".equals((patrolMain.getCheckCycle()))) {
+                main.setJan("-");
+                main.setFeb("0");
+                main.setMar("-");
+                main.setApr("-");
+                main.setMay("0");
+                main.setJun("-");
+                main.setJul("-");
+                main.setAug("0");
+                main.setSep("-");
+                main.setOct("-");
+                main.setNov("0");
+                main.setDec("-");
+            } else if ("4".equals((patrolMain.getCheckCycle()))) {
+                main.setJan("0");
+                main.setFeb("-");
+                main.setMar("-");
+                main.setApr("-");
+                main.setMay("-");
+                main.setJun("-");
+                main.setJul("0");
+                main.setAug("-");
+                main.setSep("-");
+                main.setOct("-");
+                main.setNov("-");
+                main.setDec("-");
+            } else if ("5".equals((patrolMain.getCheckCycle()))) {
+                main.setJan("0");
+                main.setFeb("-");
+                main.setMar("-");
+                main.setApr("-");
+                main.setMay("-");
+                main.setJun("-");
+                main.setJul("-");
+                main.setAug("-");
+                main.setSep("-");
+                main.setOct("-");
+                main.setNov("-");
+                main.setDec("-");
+            }
+            main.setPersonLiable(patrolMain.getPersonLiable());
+            main.setCreaterCode("1");
+            main.setCreatedate(new Date());
+            tPatrolMainService.insertTPatrolMain(main);
+        }
+
+    }
+
+    public void emailReminder() {
+        IMailService mailService = (IMailService) SpringContextUtils.getBean("mailService");
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(new Date());
+        TPatrolPlan tPatrolPlan = new TPatrolPlan();
+        tPatrolPlan.setStatus(0L);
+        tPatrolPlan.setPlanYear((long) calendar.get(Calendar.YEAR));
+        tPatrolPlan.setPlanQuarter((long) calendar.get(Calendar.MONTH) + 1);
+        if (calendar.get(Calendar.DATE) < 15) {
+            tPatrolPlan.setDetectionFrequency("1");
+        }
+        List<TPatrolPlan> tPatrolPlans = tPatrolPlanService.selectTPatrolPlanList(tPatrolPlan);
+        if (CollectionUtils.isEmpty(tPatrolPlans)) {
+            return;
+        }
+        Set<String> names = new HashSet<>();
+        for (TPatrolPlan patrolPlan : tPatrolPlans) {
+            TPatrolMain main = new TPatrolMain();
+            main.setYear(String.valueOf(calendar.get(Calendar.YEAR)));
+            main.setPatrolType(patrolPlan.getPatrolType());
+            for (TPatrolMain tPatrolMain : tPatrolMainService.selectTPatrolMainList(main)) {
+                if (StringUtils.isNotEmpty(tPatrolMain.getPersonLiable())) {
+                    names.addAll(Arrays.asList(tPatrolMain.getPersonLiable().split("、")));
+                }
+            }
+        }
+        List<SysUser> users = new ArrayList<>();
+        for (String name : names) {
+            SysUser sysUser = new SysUser();
+            sysUser.setNickName(name);
+//            users.addAll(sysUserService.selectAllUser(sysUser));
+        }
+        String start = "<!DOCTYPE html><html><head><meta charset=\"utf-8\"><title></title></head><body><div style=\"background-color:#ECECEC; padding: 35px;\">" +
+                "<table cellpadding=\"0\" align=\"center\"" +
+                "style=\"width: 600px; margin: 0px auto; text-align: left; position: relative; border-top-left-radius: 5px; border-top-right-radius: 5px; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; font-size: 14px; font-family:微软雅黑, 黑体; line-height: 1.5; box-shadow: rgb(153, 153, 153) 0px 0px 5px; border-collapse: collapse; background-position: initial initial; background-repeat: initial initial;background:#fff;\">" +
+                "<tbody><tr><th valign=\"middle\" style=\"height: 25px; line-height: 25px; padding: 15px 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #42a3d3; background-color: #49bcff; border-top-left-radius: 5px; border-top-right-radius: 5px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px;\">" +
+                "<font face=\"微软雅黑\" size=\"5\" style=\"color: rgb(255, 255, 255); \">EHS管理助手</font></th></tr>";
+        //表html中间内容
+        String center = "<tr><td><div style=\"padding:25px 35px 40px; background-color:#fff;\"><h2 style=\"margin: 5px 0px; \">" +
+                "<font color=\"#333333\" style=\"line-height: 20px; \"><font style=\"line-height: 22px; \" size=\"4\">" +
+                "亲爱的 username(loginName)</font><br><font style=\"line-height: 22px; \" size=\"4\">" +
+                "<p>您有" + tPatrolPlans.size() + "条巡检计划将于三天后截止:<br>" +
+                "请登录<a href=\"http://43.143.92.79:93/plan\">检查计划</a>或EHS管理助手APP查看。<br>" +
+                "<p align=\"right\">date</p>" +
+                "<div style=\"width:700px;margin:0 auto;\">" +
+                "<div style=\"padding:10px 10px 0;border-top:1px solid #ccc;color:#747474;margin-bottom:20px;line-height:1.3em;font-size:12px;\">" +
+                "<p>此为系统邮件,请勿回复</p>" +
+                "</div></div></div></td></tr>";
+        for (SysUser user : users) {
+            String one = center.replaceFirst("username", user.getNickName());
+            String two = one.replace("loginName", user.getUserName());
+            String result = two.replaceFirst("date", DateUtils.getDate());
+            String end = "</tbody></table></div></body></html>";
+            //拼接html
+            String html = start + result + end;
+            logger.info("html:" + html);
+            if (StringUtils.isNotEmpty(user.getEmail()))
+                mailService.sendHtmlMail(user.getEmail(), "您有巡检任务尚未完成", html);
+        }
+
+    }
+}

+ 0 - 5
ui/src/views/training/bccnew/firstplan/index.vue

@@ -32,7 +32,6 @@
           icon="el-icon-plus"
           size="mini"
           @click="handleAdd"
-          v-hasPermi="['bccnew:firstplan:add']"
         >新增
         </el-button>
       </el-col>
@@ -43,7 +42,6 @@
           size="mini"
           :disabled="single"
           @click="handleUpdate"
-          v-hasPermi="['bccnew:firstplan:edit']"
         >修改
         </el-button>
       </el-col>
@@ -54,7 +52,6 @@
           size="mini"
           :disabled="multiple"
           @click="handleDelete"
-          v-hasPermi="['bccnew:firstplan:remove']"
         >删除
         </el-button>
       </el-col>
@@ -148,7 +145,6 @@
             type="text"
             icon="el-icon-edit"
             @click="handleUpdate(scope.row)"
-            v-hasPermi="['bccnew:firstplan:edit']"
           >修改
           </el-button>
           <el-button
@@ -156,7 +152,6 @@
             type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
-            v-hasPermi="['bccnew:firstplan:remove']"
           >删除
           </el-button>
           <el-button

+ 1 - 2
ui/src/views/training/bccnew/tsnew/score.vue

@@ -326,7 +326,7 @@
               @click="handleSee(scope.row)"
             >{{ $t('预览') }}
             </el-button>
-            <el-button v-hasPermi="['training:trainingrecords:file']" type="text" size="small" v-if="scope.row.isEdit"
+            <el-button  type="text" size="small" v-if="scope.row.isEdit"
                        @click="save(scope.row)">保存
             </el-button>
             <el-button type="text" size="small" v-if="scope.row.isEdit" @click="cancelFile(scope.row, scope.$index)">
@@ -345,7 +345,6 @@
               type="text"
               icon="el-icon-delete"
               @click="handleDeleteDoc(scope.row)"
-              v-hasPermi="['training:trainingrecords:file']"
             >{{ $t('删除') }}
             </el-button>
           </template>