Browse Source

Merge remote-tracking branch 'origin/master'

zhoudazhuang 1 year ago
parent
commit
23cb7c8ca5

+ 22 - 0
bs-common/src/main/java/com/rongwei/safecommon/utils/SaveConstans.java

@@ -1,5 +1,8 @@
 package com.rongwei.safecommon.utils;
 
+import java.util.HashMap;
+import java.util.Map;
+
 public class SaveConstans {
 
     // 部门类型:集团
@@ -20,6 +23,25 @@ public class SaveConstans {
     public static final String MINUS_ONE = "-1";
     public static final String AND = "and";
 
+    /**
+     * orgId和 code的对应关系
+     */
+    public static final Map<String,String> ORG_CODE_MAP=new HashMap<String,String>(){{
+        /**
+         * 山东创新箔材科技有限公司
+         */
+        put("0001651000000015EFDD","BK");
+        /**
+         * 山东创新精铝金属制造有限公司
+         */
+        put("0001651000000017DRZ1","JL");
+        /**
+         * 山东创新板材有限公司
+         */
+        put("0001S31000000000J0TR","BC");
+    }};
+
+
     /**
      * 问卷调查状态
      */

+ 1 - 1
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/CheckTemplateService.java

@@ -20,7 +20,7 @@ public interface CheckTemplateService extends IService<CheckTemplateDo> {
 
     void saveByVersion(CheckTemplateVo checkTemplateVo);
 
-    void pointCheckCreate();
+    void pointCheckCreate(Map<String,Object> map);
 
     void updateStatusByHiId(Map<String,Object> map);
 

+ 107 - 88
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/CheckTemplateServiceImpl.java

@@ -2,13 +2,13 @@ package com.rongwei.sfcommon.sys.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.rongwe.scentity.domian.*;
 import com.rongwe.scentity.vo.CheckTemplateItemsVo;
 import com.rongwe.scentity.vo.CheckTemplateVo;
 import com.rongwei.commonservice.serial.service.CommonDictService;
 import com.rongwei.commonservice.serial.service.SysSerialNumberService;
 import com.rongwei.rwadmincommon.system.dao.SysUserDao;
-import com.rongwei.rwadmincommon.system.vo.SysUserVo;
 import com.rongwei.rwcommon.utils.SecurityUtil;
 import com.rongwei.rwcommon.utils.StringUtils;
 import com.rongwei.rwcommon.vo.generalsql.GeneralApiParameter;
@@ -21,10 +21,11 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
 import java.util.*;
 
+import static com.rongwei.sfcommon.utils.CommonUtil.streamCodeGeneration;
+
 @Service("checkTemplateService")
 public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, CheckTemplateDo> implements CheckTemplateService {
 
@@ -105,31 +106,49 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, Chec
     /**
      * 定时调度(每天)创建点检任务
      */
-    public void pointCheckCreate(){
+    public void pointCheckCreate(Map<String, Object> map) {
         logger.info("点检定时任务生成开始.....");
-        Map<String,Object> map = new HashMap<>();
-        map.put("TEMPLATETYPE",MlConstants.TEMPLATETYPE_POINT_CHECK);
-        map.put("ENABLESTATUS",MlConstants.TEMPLATE_STATUS_OPEM);
+        if (map == null) {
+            map = new HashMap<>();
+        }
+        // 是否为定时任务
+        boolean runTask = false;
+        // 如果参数为空则为定时任务
+        if (map.isEmpty()) {
+            //map.put("TEMPLATETYPE",MlConstants.TEMPLATETYPE_POINT_CHECK);
+            // 模板状态
+            map.put("ENABLESTATUS", MlConstants.TEMPLATE_STATUS_OPEM);
+            // 任务生成类型
+            map.put("JOBSTARTTYPE", MlConstants.JOB_START_TYPE_AUTO);
+            runTask = true;
+        } else {
+            String checkTemplateId = map.getOrDefault("ID", "").toString();
+            if (StringUtils.isBlank(checkTemplateId)) {
+                log.error("参数异常");
+                return;
+            }
+        }
         // 查询所有点检类型的检查模板
-        List<CheckTemplateDo> list = (List<CheckTemplateDo>)this.listByMap(map);
-        if(list != null && list.size()>0){
+        List<CheckTemplateDo> list = (List<CheckTemplateDo>) this.listByMap(map);
+        if (list.size() == 0) {
             // 根据点检模板定时生成点检任务
-            for(CheckTemplateDo checkTemplate:list){
-                logger.info("点检模板编号:"+checkTemplate.getTemplatecode());
-                // 检查模板的检查项
-                Map<String,Object> itemMap = new HashMap<>();
-                itemMap.put("CHECKTEMPLATEID",checkTemplate.getId());
-                List<CheckTemplateItemsDo> items = (List<CheckTemplateItemsDo>)checkTemplateItemsService.listByMap(itemMap);
-                // 根据检查模板和相应的检查项生成点检任务
-                pointCheckCreateByItems(checkTemplate,items);
-            }
+            return;
+        }
+        for (CheckTemplateDo checkTemplate : list) {
+            logger.info("点检模板编号:" + checkTemplate.getTemplatecode());
+            // 检查模板的检查项
+            Map<String, Object> itemMap = new HashMap<>();
+            itemMap.put("CHECKTEMPLATEID", checkTemplate.getId());
+            List<CheckTemplateItemsDo> items = (List<CheckTemplateItemsDo>) checkTemplateItemsService.listByMap(itemMap);
+            // 根据检查模板和相应的检查项生成点检任务
+            pointCheckCreateByItems(checkTemplate, items, runTask);
         }
         // 检查是否有延期点检任务,如有则发邮件提醒
-        pointCheckService.pintCheckDelayReminder();
+        //pointCheckService.pintCheckDelayReminder();
     }
 
     // 根据检查模板和相应的检查项生成点检任务
-    private void pointCheckCreateByItems(CheckTemplateDo checkTemplate,List<CheckTemplateItemsDo> items){
+    private void pointCheckCreateByItems(CheckTemplateDo checkTemplate, List<CheckTemplateItemsDo> items, boolean runTask) {
         /**
          * 根据检查模板所有检查项的频次决定最终生成多少点检任务
          * 通过对需求分析总结模型如下:
@@ -142,57 +161,63 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, Chec
         List<List<CheckTemplateItemsDo>> middleItems = new ArrayList<>();
         // 夜班检查项
         List<List<CheckTemplateItemsDo>> nightItems = new ArrayList<>();
-
-        if(items != null && items.size()>0){
-            // 循环处理检查内容到白、中、夜三班任务里
-            for(CheckTemplateItemsDo checkTemplateItem:items){
-                // 频次
-                String frequency = checkTemplateItem.getFrequencyids();
-                // 班次
-                String shift = checkTemplateItem.getShift();
-                // 次数
-                Integer shiftcount = checkTemplateItem.getShiftcount();
-                if(shiftcount == null){
-                    shiftcount = 1;
-                }
-                // 当前检查项是否生成任务
-                if(StringUtils.isNotEmpty(frequency) && isNowCreateByFrequency(frequency)){
-                    // 白班
-                    if(MlConstants.CHECK_SHIFT_EVERY_SHIFT.equals(shift) || MlConstants.CHECK_SHIFT_EVERY_DAY_SHIFT.equals(shift)){
-                        addCheckItems(dayItems,shiftcount,checkTemplateItem);
-                    }
-                    // 夜班
-                    if(MlConstants.CHECK_SHIFT_EVERY_SHIFT.equals(shift) || MlConstants.CHECK_SHIFT_EVERY_NIGHT_SHIFT.equals(shift)){
-                        addCheckItems(nightItems,shiftcount,checkTemplateItem);
-                    }
-                    // 中班
-                    if(MlConstants.CHECK_SHIFT_EVERY_SHIFT.equals(shift) || MlConstants.CHECK_SHIFT_EVERY_MIDDLE_SHIFT.equals(shift)){
-                        addCheckItems(middleItems,shiftcount,checkTemplateItem);
-                    }
-                }
+        if (items == null || items.size() == 0) {
+            return;
+        }
+        // 循环处理检查内容到白、中、夜三班任务里
+        for (CheckTemplateItemsDo checkTemplateItem : items) {
+            // 频次
+            String frequency = checkTemplateItem.getFrequencyids();
+            // 班次
+            String shift = checkTemplateItem.getShift();
+            // 次数
+            Integer shiftcount = checkTemplateItem.getShiftcount();
+            if (shiftcount == null) {
+                shiftcount = 1;
+            }
+            // 如果是定时任务 (频次为空或者根据频次判断不应该生产任务时 直接返回)
+            if (runTask && (StringUtils.isBlank(frequency) || !isNowCreateByFrequency(frequency))) {
+                return;
+            }
+            // 白班
+            if (MlConstants.CHECK_SHIFT_EVERY_SHIFT.equals(shift) || MlConstants.CHECK_SHIFT_EVERY_DAY_SHIFT.equals(shift)) {
+                addCheckItems(dayItems, shiftcount, checkTemplateItem);
+            }
+            // 夜班
+            if (MlConstants.CHECK_SHIFT_EVERY_SHIFT.equals(shift) || MlConstants.CHECK_SHIFT_EVERY_NIGHT_SHIFT.equals(shift)) {
+                addCheckItems(nightItems, shiftcount, checkTemplateItem);
+            }
+            // 中班
+            if (MlConstants.CHECK_SHIFT_EVERY_SHIFT.equals(shift) || MlConstants.CHECK_SHIFT_EVERY_MIDDLE_SHIFT.equals(shift)) {
+                addCheckItems(middleItems, shiftcount, checkTemplateItem);
             }
-            // 生成点检任务
-            System.out.println("dayItems:"+dayItems.size()+"***"+"middleItems:"+middleItems.size()+"***"+"nightItems:"+nightItems.size());
-            // 白班任务
-            createPointCheckByTemplate(checkTemplate,dayItems,MlConstants.CHECK_SHIFT_EVERY_DAY_SHIFT);
-            // 中班任务
-            createPointCheckByTemplate(checkTemplate,middleItems,MlConstants.CHECK_SHIFT_EVERY_MIDDLE_SHIFT);
-            // 夜班任务
-            createPointCheckByTemplate(checkTemplate,nightItems,MlConstants.CHECK_SHIFT_EVERY_NIGHT_SHIFT);
         }
+        // 生成点检任务
+        System.out.println("dayItems:" + dayItems.size() + "***" + "middleItems:" + middleItems.size() + "***" + "nightItems:" + nightItems.size());
+        // 白班任务
+        createPointCheckByTemplate(checkTemplate, dayItems, MlConstants.CHECK_SHIFT_EVERY_DAY_SHIFT);
+        // 中班任务
+        createPointCheckByTemplate(checkTemplate, middleItems, MlConstants.CHECK_SHIFT_EVERY_MIDDLE_SHIFT);
+        // 夜班任务
+        createPointCheckByTemplate(checkTemplate, nightItems, MlConstants.CHECK_SHIFT_EVERY_NIGHT_SHIFT);
     }
 
-    // 根据频次判断当前检查项是否生成点检任务
-    private boolean isNowCreateByFrequency(String frequency){
+    /**
+     * 根据频次判断当前检查项是否生成点检任务
+     *
+     * @param frequency
+     * @return 是否可以生成任务
+     */
+    private boolean isNowCreateByFrequency(String frequency) {
         boolean isCreate = true;
         String[] frequencys = frequency.split("/");
-        if(frequencys != null && frequencys.length>0){
+        if (frequencys != null && frequencys.length > 0) {
             // 每天
-            if("day".equals(frequencys[0])){
+            if ("day".equals(frequencys[0])) {
                 isCreate = true;
             }
             // 每周
-            else if("week".equals(frequencys[0])){
+            else if ("week".equals(frequencys[0])) {
                 String weekday = frequencys[1];
                 // 当前时间是星期几
                 String w = DateUtil.dayOfWeek(new Date())+"";
@@ -262,24 +287,25 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, Chec
                 String checkitemsids = checkTemplate.getCheckitemids();
                 if(StringUtils.isNotEmpty(checkitemsids)){
                     String[] checkitemsidArray = checkitemsids.split(",");
-                    for(String checkitemsid:checkitemsidArray){
+                    for (String checkitemsid : checkitemsidArray) {
                         // 每个设备生成一条点检任务
                         CheckItemsDo checkItemsdo = checkItemsService.getById(checkitemsid);
                         // 如当前设备未禁用状态则不生成点检任务
-                        if(checkItemsdo != null && MlConstants.CHECKITEM_STATUS_DISABLE.equals(checkItemsdo.getEnabled())){
+                        if (checkItemsdo != null && MlConstants.CHECKITEM_STATUS_DISABLE.equals(checkItemsdo.getEnabled())) {
                             continue;
                         }
 
                         // 点检编号
-                        SysSerialVo sysSerialVo = new SysSerialVo();
-                        sysSerialVo.setModulecode("asp_point_check_POINTCHECKCODE");
-                        sysSerialVo.setRuleTemplateStr("@{date:yyyyMMdd}@{serialNumber:#0000000}");
-                        String pointcheckcode = sysSerialNumberService.getCodeByTemplate(sysSerialVo);
+
+                        String pointcheckcode = streamCodeGeneration("asp_point_check_POINTCHECKCODE",
+                                "@{date:yyyyMMdd}@{serialNumber:#0000000}","date:yyyy", checkTemplate.getTenantid());
                         // 点检生成
                         PointCheckDo pointCheckDo = new PointCheckDo();
                         pointCheckDo.setId(SecurityUtil.getUUID());
                         pointCheckDo.setPointcheckname(poName);
                         pointCheckDo.setPointcheckcode(pointcheckcode);
+                        pointCheckDo.setWorkshopid(checkTemplate.getYjorgid());
+                        pointCheckDo.setWorkshopname(checkTemplate.getYjorgname());
                         //设备ID
                         pointCheckDo.setCheckitemid(checkItemsdo.getId());
                         //班次
@@ -288,23 +314,26 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, Chec
                         pointCheckDo.setCheckstatus(MlConstants.POINT_CHECK_STATUS_WAIT);
                         // 点检预警状态默认正常
                         pointCheckDo.setCheckwarnstatus(MlConstants.POINTCEHCK_WARNSTATUS_NORMAL);
+                        pointCheckDo.setTenantid(checkTemplate.getTenantid());
+                        pointCheckDo.setSource("1");
+                        pointCheckDo.setTemplatetype(checkTemplate.getTemplatetype());
                         //设备负责人
-                        Map<String,Object> duMap = new HashMap<>();
-                        duMap.put("CHECKITEMID",checkItemsdo.getId());
-                        List<CheckItemsDutyuserDo> checkItemsDutyusers = (List<CheckItemsDutyuserDo>)checkItemsDutyuserService.listByMap(duMap);
+                        Map<String, Object> duMap = new HashMap<>();
+                        duMap.put("CHECKITEMID", checkItemsdo.getId());
+                        List<CheckItemsDutyuserDo> checkItemsDutyusers = (List<CheckItemsDutyuserDo>) checkItemsDutyuserService.listByMap(duMap);
                         //设置点检人
                         String pcids = null;
                         String pcnames = null;
-                        if(checkItemsDutyusers != null && checkItemsDutyusers.size()>0){
-                            for(CheckItemsDutyuserDo checkItemsDutyuser:checkItemsDutyusers){
+                        if (checkItemsDutyusers != null && checkItemsDutyusers.size() > 0) {
+                            for (CheckItemsDutyuserDo checkItemsDutyuser : checkItemsDutyusers) {
                                 // 生产属性的员工为点检人
-                                if(MlConstants.USER_ATTR_PRODUCTION.equals(checkItemsDutyuser.getDutyuserattribute())){
-                                    if(pcids == null){
+                                if (MlConstants.USER_ATTR_PRODUCTION.equals(checkItemsDutyuser.getDutyuserattribute())) {
+                                    if (pcids == null) {
                                         pcids = checkItemsDutyuser.getDutyuserid();
                                         pcnames = checkItemsDutyuser.getDutyusername();
-                                    }else{
-                                        pcids = pcids+","+checkItemsDutyuser.getDutyuserid();
-                                        pcnames = pcnames+","+checkItemsDutyuser.getDutyusername();
+                                    } else {
+                                        pcids = pcids + "," + checkItemsDutyuser.getDutyuserid();
+                                        pcnames = pcnames + "," + checkItemsDutyuser.getDutyusername();
                                     }
                                 }
                             }
@@ -347,6 +376,7 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, Chec
                                 PointCheckItemDo pointCheckItemDo = new PointCheckItemDo();
                                 pointCheckItemDo.setId(SecurityUtil.getUUID());
                                 pointCheckItemDo.setPointcheckid(pointCheckDo.getId());
+                                pointCheckItemDo.setTenantid(checkTemplate.getTenantid());
                                 // 检查内容模板
                                 CheckItemContentDo checkItemContent = checkItemContentService.getById(v.getCheckitemcontentid());
                                 pointCheckItemDo.setCheckitemcontentid(v.getCheckitemcontentid());
@@ -363,6 +393,7 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, Chec
                                 pointCheckItemDo.setShiftcount(v.getShiftcount());
                                 // 排序字段
                                 pointCheckItemDo.setItemsort(v.getItemsort());
+                                pointCheckItemDo.setSource("1");
                                 pointCheckItems.add(pointCheckItemDo);
                             });
                         }
@@ -391,17 +422,5 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateDao, Chec
             checkTemplate.setEnablestatus(MlConstants.TEMPLATE_STATUS_CLOSE);
             this.updateById(checkTemplate);
         }
-        if(map.get("newId") != null){
-            String newId = map.get("newId").toString();
-            // 模板编号
-            SysSerialVo sysSerialVo = new SysSerialVo();
-            sysSerialVo.setModulecode("asp_check_template_TEMPLATECODE");
-            sysSerialVo.setRuleTemplateStr("@{date:yyyyMMdd}@{serialNumber:#000000}");
-            String code = sysSerialNumberService.getCodeByTemplate(sysSerialVo);
-            CheckTemplateDo checkTemplate = new CheckTemplateDo();
-            checkTemplate.setId(newId);
-            checkTemplate.setTemplatecode(code);
-            this.updateById(checkTemplate);
-        }
     }
 }

+ 14 - 11
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/PointCheckServiceImpl.java

@@ -36,6 +36,8 @@ import org.springframework.transaction.annotation.Transactional;
 import java.lang.reflect.InvocationTargetException;
 import java.util.*;
 
+import static com.rongwei.sfcommon.utils.CommonUtil.streamCodeGeneration;
+
 @Service("pointCheckService")
 public class PointCheckServiceImpl extends ServiceImpl<PointCheckDao, PointCheckDo> implements PointCheckService {
 
@@ -309,30 +311,31 @@ public class PointCheckServiceImpl extends ServiceImpl<PointCheckDao, PointCheck
                 }
                 hiddenDangerTrack.setHiddendangercontent(hiddendangercontent.toString());
                 // 任务工段
-                hiddenDangerTrack.setDangerworkpark(checkItemsDo.getChargeorgid());
-                hiddenDangerTrack.setDangerworkparkname(checkItemsDo.getChargeorgname());
+                hiddenDangerTrack.setDangerworkpark(pointCheck.getWorkshopid());
+                hiddenDangerTrack.setDangerworkparkname(pointCheck.getWorkshopname());
             }
             // 指派跟踪人取点检人的所属工段的工段主管
             if(StringUtils.isNotEmpty(pointCheck.getCheckuserid())){
                 List<Map<String,Object>> umap = pointCheckDao.getGdzgByUserId(pointCheck.getCheckuserid());
                 if(umap != null && umap.size()>0){
-                    hiddenDangerTrack.setTrackuserid(umap.get(0).get("USERID").toString());
-                    hiddenDangerTrack.setTrackusername(umap.get(0).get("USERNAME").toString());
+                    hiddenDangerTrack.setTrackuserid(umap.get(0).getOrDefault("USERID","").toString());
+                    hiddenDangerTrack.setTrackusername(umap.get(0).getOrDefault("USERNAME","").toString());
                     // 设置最初指派跟踪人
-                    hiddenDangerTrack.setFirsttrackuserid(umap.get(0).get("USERID").toString());
-                    hiddenDangerTrack.setFirsttrackusername(umap.get(0).get("USERNAME").toString());
+                    hiddenDangerTrack.setFirsttrackuserid(umap.get(0).getOrDefault("USERID","").toString());
+                    hiddenDangerTrack.setFirsttrackusername(umap.get(0).getOrDefault("USERNAME","").toString());
                 }
             }
             // 默认待关闭
             hiddenDangerTrack.setStatus(MlConstants.HIDDEN_DANGER_STATUS_NOTCLOSE);
+            hiddenDangerTrack.setSource("1");
             hiddenDangerTrack.setCheckphoto(pointCheck.getCheckphoto());
             // 隐患类型默认为一般
             hiddenDangerTrack.setHiddendangertype(MlConstants.HIDDEN_DANGER_TYPE_NORMAL);
-            // 总编号生成
-            SysSerialVo sysSerialVo = new SysSerialVo();
-            sysSerialVo.setRuleTemplateStr("@{date:yyyyMMdd}@{serialNumber:#000000}");
-            sysSerialVo.setModulecode("asp_hidden_danger_track_CODE");
-            hiddenDangerTrack.setCode(sysSerialNumberService.getCodeByTemplate(sysSerialVo));
+
+            String code = streamCodeGeneration("asp_hidden_danger_track_CODE",
+                    "@{date:yyyyMMdd}@{serialNumber:#000000}","date:yyyy", pointCheck.getTenantid());
+
+            hiddenDangerTrack.setCode(code);
             hiddenDangerTrackService.save(hiddenDangerTrack);
         }
     }

+ 48 - 5
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/utils/CommonUtil.java

@@ -1,8 +1,9 @@
 package com.rongwei.sfcommon.utils;
 
+import com.rongwei.commonservice.serial.service.SysSerialNumberService;
 import com.rongwei.commonservice.service.RedisService;
 import com.rongwei.rwadmincommon.system.vo.SysUserVo;
-import lombok.extern.slf4j.Slf4j;
+import com.rongwei.rwcommonentity.commonservers.vo.SysSerialVo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -12,21 +13,25 @@ import org.springframework.web.context.request.ServletRequestAttributes;
 
 import javax.annotation.PostConstruct;
 import javax.servlet.http.HttpServletRequest;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
 
+import static com.rongwei.safecommon.utils.SaveConstans.ORG_CODE_MAP;
+
 /**
  * CommonUtil class
  *
  * @author XH
  * @date 2021/01/08
  */
-@Slf4j
 @Component
 public class CommonUtil {
 
+    private static final Logger log = LoggerFactory.getLogger(CommonUtil.class.getName());
+    @Autowired
+    private SysSerialNumberService autoSysSerialNumberService;
+
+    private static SysSerialNumberService sysSerialNumberService;
 
     @Autowired
     private RedisService autoRedisService;
@@ -36,7 +41,7 @@ public class CommonUtil {
     @PostConstruct
     public void init() {
         redisService = autoRedisService;
-
+        sysSerialNumberService = autoSysSerialNumberService;
     }
 
     public static String getWeekForYear(boolean returnLastWeek) {
@@ -87,4 +92,42 @@ public class CommonUtil {
         }
         return currUser;
     }
+    /**
+     * 流水码生成
+     *
+     * @param moduleCode      流水码CODE
+     * @param ruleTemplateStr 流水码编码规则
+     * @param tenantId        租户id
+     * @return
+     */
+    public static String streamCodeGeneration(String moduleCode, String ruleTemplateStr, String tenantId) {
+        String orgCode = ORG_CODE_MAP.getOrDefault(tenantId, "");
+        log.info("开始生成流水码");
+        SysSerialVo sysSerialVo = new SysSerialVo();
+        sysSerialVo.setModulecode(String.format("%s_%s", moduleCode, orgCode));
+        sysSerialVo.setRuleTemplateStr(String.format("%s-%s", orgCode, ruleTemplateStr));
+        String streamCode = sysSerialNumberService.getCodeByTemplate(sysSerialVo);
+        log.info("流水码生成成功:{}", streamCode);
+        return streamCode;
+    }
+
+    /**
+     * 流水码生成
+     *
+     * @param moduleCode      流水码CODE
+     * @param ruleTemplateStr 流水码编码规则
+     * @param tenantId        租户id
+     * @return
+     */
+    public static String streamCodeGeneration(String moduleCode, String ruleTemplateStr, String resetRule, String tenantId) {
+        String orgCode = ORG_CODE_MAP.getOrDefault(tenantId, "");
+        log.info("开始生成流水码");
+        SysSerialVo sysSerialVo = new SysSerialVo();
+        sysSerialVo.setModulecode(String.format("%s_%s", moduleCode, orgCode));
+        sysSerialVo.setRuleTemplateStr(String.format("%s-%s", orgCode, ruleTemplateStr));
+        sysSerialVo.setResetrule(resetRule);
+        String streamCode = sysSerialNumberService.getCodeByTemplate(sysSerialVo);
+        log.info("流水码生成成功:{}", streamCode);
+        return streamCode;
+    }
 }

+ 8 - 0
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/utils/MlConstants.java

@@ -102,5 +102,13 @@ public class MlConstants {
      * 安全管理员
      */
     public static final String  SAFETY_MANAGER_CODE ="code-safe";
+    /**
+     * 自动生成
+     */
+    public static final String JOB_START_TYPE_AUTO ="10";
 
+    /**
+     * 零时一次性任务
+     */
+    public static final String JOB_START_TYPE_DISPOSABLE ="20";
 }

+ 2 - 0
cx-safe-check/cx-save-check-entity/src/main/java/com/rongwe/scentity/domian/HiddenDangerTrackDo.java

@@ -178,4 +178,6 @@ public class HiddenDangerTrackDo extends BaseDo implements Serializable {
 	 */
 	private String shopfacilitatorid;
 
+	private String source;
+
 }

+ 15 - 3
cx-safe-check/cx-save-check-entity/src/main/java/com/rongwe/scentity/domian/PointCheckDo.java

@@ -2,10 +2,11 @@ package com.rongwe.scentity.domian;
 
 import com.baomidou.mybatisplus.annotation.FieldFill;
 import com.baomidou.mybatisplus.annotation.TableField;
-import lombok.Data;
-import com.rongwei.rwcommon.base.BaseDo;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.rongwei.rwcommon.base.BaseDo;
+import lombok.Data;
+
 import java.io.Serializable;
 import java.util.Date;
 
@@ -42,6 +43,10 @@ public class PointCheckDo extends BaseDo implements Serializable {
 	 * 点检车间ID
 	 */
 	private String workshopid;
+	/**
+	 * 点检车间名称
+	 */
+	private String workshopname;
 	/**
 	 * 点检工段ID
 	 */
@@ -91,5 +96,12 @@ public class PointCheckDo extends BaseDo implements Serializable {
 	 * 扩展json格式配置
 	 */
 	private String roption;
-
+	/**
+	 * 来源
+	 */
+	private String source;
+	/**
+	 * 检查类型
+	 */
+	private String templatetype;
 }

+ 2 - 0
cx-safe-check/cx-save-check-entity/src/main/java/com/rongwe/scentity/domian/PointCheckItemDo.java

@@ -97,4 +97,6 @@ public class PointCheckItemDo extends BaseDo implements Serializable {
 	 */
 	private String roption;
 
+	private String source;
+
 }

+ 12 - 11
cx-safe-check/cx-save-check-server/src/main/java/com/rongwei/savecheck/controller/CheckTemplateController.java

@@ -1,21 +1,21 @@
 package com.rongwei.savecheck.controller;
 
-import java.util.List;
-import java.util.Map;
-
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.rongwe.scentity.domian.CheckTemplateDo;
 import com.rongwe.scentity.domian.CheckTemplateItemsDo;
+import com.rongwei.rwcommon.base.QueryPar;
+import com.rongwei.rwcommon.base.R;
 import com.rongwei.rwcommon.utils.StringUtils;
 import com.rongwei.sfcommon.sys.service.CheckItemContentService;
 import com.rongwei.sfcommon.sys.service.CheckTemplateItemsService;
 import com.rongwei.sfcommon.sys.service.CheckTemplateService;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
-import com.rongwei.rwcommon.base.QueryPar;
-import com.rongwei.rwcommon.base.R;
-import lombok.extern.slf4j.Slf4j;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * 检查模板表
@@ -132,16 +132,17 @@ public class CheckTemplateController {
 
     /**
      * 点检任务生成
+     * 定时非定时
      * @param map
      * @return
      */
     @PostMapping("/pointCheckCreate")
-    public R pointCheckCreate(@RequestBody Map<String,Object> map){
-        System.out.println("定时生成点检任务开始...");
-        try{
-            checkTemplateService.pointCheckCreate();
+    public R pointCheckCreate(@RequestBody(required = false) Map<String,Object> map) {
+        log.info("生成点检任务参数为:{}", map);
+        try {
+            checkTemplateService.pointCheckCreate(map);
             return R.ok();
-        }catch (Exception e){
+        } catch (Exception e) {
             e.printStackTrace();
             log.error(StringUtils.spliceErrorMsg(e), e.fillInStackTrace());
             return R.error();

+ 3 - 3
rw-training/training-common/src/main/java/com/rongwei/trainingcommon/sys/service/impl/TrainingDemandServiceImpl.java

@@ -7,7 +7,7 @@ import com.rongwei.rwcommon.utils.StringUtils;
 import com.rongwei.training.domain.*;
 import com.rongwei.trainingcommon.sys.dao.*;
 import com.rongwei.trainingcommon.sys.service.TrainingDemandService;
-import com.rongwei.trainingcommon.sys.utils.TrainingUtils;
+import com.rongwei.trainingcommon.sys.utils.TrainingListCopyUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
@@ -110,7 +110,7 @@ public class TrainingDemandServiceImpl implements TrainingDemandService {
         /************调查主表备份*************/
         TrainingDemandSurveyBackupsDo saveDemandSurveyBackupsDo = generateSurveyBackups(trainingDemandSurveyDo, userIds, userNames);
         /************自定义内容备份*************/
-        List<TrainingDemandSurveyCustomDetailBackupsDo> saveDemandSurveyCustomDetailBackupsDos = TrainingUtils.copyListProperties(surveyCustomDetailDos, TrainingDemandSurveyCustomDetailBackupsDo::new);
+        List<TrainingDemandSurveyCustomDetailBackupsDo> saveDemandSurveyCustomDetailBackupsDos = TrainingListCopyUtils.copyListProperties(surveyCustomDetailDos, TrainingDemandSurveyCustomDetailBackupsDo::new);
         saveDemandSurveyCustomDetailBackupsDos.forEach(info -> info.setSurverid(saveDemandSurveyBackupsDo.getId()));
         /************其他数据备份*************/
         // 保存问题数据备份
@@ -158,7 +158,7 @@ public class TrainingDemandServiceImpl implements TrainingDemandService {
                         .filter(info -> trainingDemandTempDetailDo.getQuestionid().equals(info.getQuestionid()) &&
                                 trainingDemandTempDetailDo.getId().equals(info.getDemandtempdetailid())
                         ).collect(Collectors.toList());
-                List<TrainingDemandQuestionOptionBackupsDo> addOptions = TrainingUtils.copyListProperties(questionOptions, TrainingDemandQuestionOptionBackupsDo::new);
+                List<TrainingDemandQuestionOptionBackupsDo> addOptions = TrainingListCopyUtils.copyListProperties(questionOptions, TrainingDemandQuestionOptionBackupsDo::new);
                 addOptions.forEach(info -> {
                     info.setQuestionid(questionBackupsDo.getId());
                 });

+ 1 - 1
rw-training/training-common/src/main/java/com/rongwei/trainingcommon/sys/utils/TrainingUtils.java

@@ -15,7 +15,7 @@ import java.util.function.Supplier;
  * @date 2023/11/24
  */
 @Component
-public class TrainingUtils  extends BeanUtils {
+public class TrainingListCopyUtils extends BeanUtils {
     /**
      * 集合数据的拷贝
      * @param sources: 数据源类

+ 3 - 2
rw-training/training-server/src/main/java/com/rongwei/training/controller/PlanController.java

@@ -293,7 +293,8 @@ public class PlanController {
                 if (planUserIdsFromPlan.isEmpty()) {
                     return;
                 }
-                // 获取员工信息
+                // modify at [ 2023-11-29 10:37:38 ] by xh: 取消邮件发送提醒
+              /*  // 获取员工信息
                 List<SysUserDo> list = sysUserService.list(new LambdaQueryWrapper<SysUserDo>().eq(BaseDo::getDeleted, "0").in(SysUserDo::getId, planUserIdsFromPlan));
                 // 发送邮件信息
                 MailDo mail = new MailDo();
@@ -308,7 +309,7 @@ public class PlanController {
                 mailContent.append("详见智能安全监控平台:http://192.168.0.205:8000");
                 mail.setContent(mailContent.toString());
                 // 邮件发送服务调用
-                sysConfigFeignService.sendTextMail(mail);
+                sysConfigFeignService.sendTextMail(mail);*/
             });
             planService.removeByIds(planIds);
             return R.ok();