diff --git a/jero-boot/db/蔚来标准sql/dev_third_record.sql b/jero-boot/db/蔚来标准sql/dev_third_record.sql index 481865b1d..a5292221a 100644 --- a/jero-boot/db/蔚来标准sql/dev_third_record.sql +++ b/jero-boot/db/蔚来标准sql/dev_third_record.sql @@ -973,4 +973,29 @@ ALTER TABLE `laws_weilai`.`laws_technology_evaluation_item_result` ADD COLUMN `feedback_time` datetime NULL COMMENT '反馈时间' AFTER `laws_technology_evaluation_id`; -- 表字段 英文修改 2022-08-31 -UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Sort Number' WHERE `id` = '1529373706885799937'; \ No newline at end of file +UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Sort Number' WHERE `id` = '1529373706885799937'; + +-- 增加角色,countryCard管理员。 2022-08-31 +INSERT INTO `laws_weilai`.`sys_role` (`id`, `role_name`, `role_code`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `parent_code`, `role_order`) VALUES ('1564916346120916993', 'countryCard管理员', 'countryCardManage', 'countryCard最大权限', 'admin', '2022-08-31 18:01:46', NULL, NULL, NULL, NULL); + +-- 清单确认,拒绝原因表 2022-09-01 +CREATE TABLE `laws_weilai`.`project_laws_inventory_reject_cause` ( + `id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL , + `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人' , + `create_time` datetime NULL DEFAULT NULL COMMENT '创建日期' , + `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人' , + `update_time` datetime NULL DEFAULT NULL COMMENT '更新日期' , + `sys_org_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '所属部门' , + `reject_user_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '拒绝人id' , + `reject_time` datetime NULL DEFAULT NULL COMMENT '拒绝时间' , + `reject_cause` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '拒绝原因' , + `project_laws_inventory_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '法规清单id' , + `reject_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '拒绝类型' , + PRIMARY KEY (`id`) +) +ENGINE=InnoDB +DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_general_ci +COMMENT='清单确认-拒绝原因表' +ROW_FORMAT=DYNAMIC +; + diff --git a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/enums/MessageTypeEnum.java b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/enums/MessageTypeEnum.java index ec408861a..3181758a0 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/enums/MessageTypeEnum.java +++ b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/enums/MessageTypeEnum.java @@ -25,6 +25,8 @@ public enum MessageTypeEnum { LIST_CONFIRMATION("List Confirmation", "17"), // 清单确认 TASK_CONFIRMATION("Task Confirmation", "18"), // 任务确认 COMPLIANCE_CONFIRMATION("Compliance Confirmation", "19"), // 符合性确认 + COLLECTION_OF_LEGISLATIVE_COMMENTS("Collection of Legislative Comments", "20"), // 法规意见收集 + REGULATORY_AND_TECHNICAL_ASSESSMENT("Regulatory and technical assessment", "21"), // 法规技术评估 ; String name; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/docTranslation/entity/DocTranslationEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/docTranslation/entity/DocTranslationEO.java index dd63d984e..41a793654 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/docTranslation/entity/DocTranslationEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/docTranslation/entity/DocTranslationEO.java @@ -105,9 +105,9 @@ public class DocTranslationEO implements Serializable { private java.lang.String translationResult; /**转换时间*/ - @Excel(name = "转换时间", width = 15, format = "yyyy-MM-dd") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern="yyyy-MM-dd") + @Excel(name = "转换时间", width = 15, format = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "转换时间") private java.util.Date translationTime; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/entity/ExtRepoData.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/entity/ExtRepoData.java index d83dc65a2..bb44aab7e 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/entity/ExtRepoData.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/entity/ExtRepoData.java @@ -40,7 +40,7 @@ public class ExtRepoData implements Serializable { private java.lang.String createBy; /**创建日期*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "创建日期") private java.util.Date createTime; @@ -50,7 +50,7 @@ public class ExtRepoData implements Serializable { private java.lang.String updateBy; /**更新日期*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "更新日期") private java.util.Date updateTime; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/job/LawsOpinionGatherRemindJob.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/job/LawsOpinionGatherRemindJob.java new file mode 100644 index 000000000..9bbfc9b96 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/job/LawsOpinionGatherRemindJob.java @@ -0,0 +1,70 @@ +package com.jero.modules.lawsOpinionGather.job; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.jero.modules.lawsOpinionGather.entity.LawsOpinionGatherEO; +import com.jero.modules.lawsOpinionGather.enums.GatherResultEnum; +import com.jero.modules.lawsOpinionGather.service.ILawsOpinionGatherEOService; +import com.jero.modules.project.enums.MsgTypeEnum; +import com.jero.modules.wkflow.feginClient.WorkFlowFeignClient; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import org.springframework.beans.factory.annotation.Autowired; + +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.GregorianCalendar; +import java.util.List; + +/** + * 法规意见收集表 - 定时器 + * 作用:数据还有一天过期时,给代办人发消息 + */ +@Slf4j +public class LawsOpinionGatherRemindJob implements Job { + @Autowired + private ILawsOpinionGatherEOService lawsOpinionGatherEOService; + @Autowired + private WorkFlowFeignClient workFlowFeignClient; + + @Override + public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { + //查询出收集结果为未完成的数据。 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(LawsOpinionGatherEO::getGatherResult, GatherResultEnum.UNDERWAY.getValue()); + List lawsOpinionGatherEOList = this.lawsOpinionGatherEOService.list(queryWrapper); + if(CollectionUtils.isNotEmpty(lawsOpinionGatherEOList)){ + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + + Date currentDate = new Date(); + + //获取后一天的时间 + Calendar calendar=new GregorianCalendar(); + calendar.setTime(new Date()); + calendar.add(Calendar.DATE,1); + Date nextDay = calendar.getTime(); + + String nextDayStr = sdf.format(nextDay); + + lawsOpinionGatherEOList.forEach(lawsOpinionGatherEO -> { + if(StringUtils.equals(nextDayStr,sdf.format(lawsOpinionGatherEO.getEndTime()))){ + List userIdList = this.workFlowFeignClient.getLawsOpinionGatherFlowAssigneeList(lawsOpinionGatherEO.getId()); + if(CollectionUtils.isNotEmpty(userIdList)){ + JSONObject sendJsonObject = new JSONObject(); + sendJsonObject.put("msgType", MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_MSG.getValue()); + sendJsonObject.put("lawsOpinionGatherId",lawsOpinionGatherEO.getId()); + sendJsonObject.put("serialNumber",lawsOpinionGatherEO.getSerialNumber()); + sendJsonObject.put("userIdList",userIdList); + this.lawsOpinionGatherEOService.workFlowSendMsg(sendJsonObject); + } + } + }); + + } + } +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/ILawsOpinionGatherEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/ILawsOpinionGatherEOService.java index d3a492c06..710e61bf2 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/ILawsOpinionGatherEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/ILawsOpinionGatherEOService.java @@ -73,4 +73,6 @@ public interface ILawsOpinionGatherEOService extends IService lawsOpinionGatherEOList,String cut); + + void workFlowSendMsg(JSONObject jsonObject); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java index d966397cb..ef780296c 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java @@ -1,25 +1,39 @@ package com.jero.modules.lawsOpinionGather.service.impl; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.jero.common.api.vo.Result; import com.jero.common.constant.enums.CutEnum; +import com.jero.common.constant.enums.MessageTypeEnum; import com.jero.common.exception.JeroBootException; +import com.jero.modules.feishu.vo.FeishuMsgVo; import com.jero.modules.lawsOpinionGather.entity.LawsOpinionGatherEO; import com.jero.modules.lawsOpinionGather.enums.GatherResultEnum; import com.jero.modules.lawsOpinionGather.mapper.LawsOpinionGatherEOMapper; import com.jero.modules.lawsOpinionGather.service.ILawsOpinionGatherEOService; import com.jero.modules.oss.entity.OSSFile; import com.jero.modules.oss.service.IOSSFileService; +import com.jero.modules.project.entity.ProjectLawsInventoryEO; +import com.jero.modules.project.entity.ProjectLibraryBase; +import com.jero.modules.project.entity.ProjectNameInfoEO; +import com.jero.modules.project.entity.ProjectYearNameInfoEO; +import com.jero.modules.project.enums.JumpLinkEnum; +import com.jero.modules.project.enums.MsgTypeEnum; import com.jero.modules.project.enums.OperatorTypeEnum; import com.jero.modules.project.enums.RequestSourceEnum; +import com.jero.modules.project.util.SendMessageUtils; import com.jero.modules.system.entity.SysCategory; +import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.service.ISysUserService; import com.jero.modules.system.service.impl.SysCategoryServiceImpl; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import java.util.List; -import java.util.Date; + +import java.text.SimpleDateFormat; +import java.util.*; import java.util.stream.Collectors; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -40,6 +54,11 @@ public class LawsOpinionGatherEOServiceImpl extends ServiceImpl().success("调用成功!"); } @@ -192,4 +216,63 @@ public class LawsOpinionGatherEOServiceImpl extends ServiceImpl userIdList = new ArrayList<>(); + + String msgContentEN = ""; + String msgTitle = ""; + String initiator = ""; + if(StringUtils.equals(msgType,MsgTypeEnum.LAWS_OPOMOPM_GATHER_START_MSG.getValue())){ + userIdList.addAll(Arrays.asList(jsonObject.getString("evaluatorIds").split(","))); + String endTime = jsonObject.getString("endTime"); //截止日期 + msgContentEN = "You recieved the Collection of Legislative Comments of "+serialNumber+" . The due date is "+endTime+". Please check and address it in a timely manner."; + msgTitle = "You have a Collection of Legislative Comments task to complete"; + + String currentUserId = jsonObject.getString("currentUserId"); //当前操作用户id + SysUser currentUser = sysUserService.getBaseMapper().selectOne(new QueryWrapper().lambda().eq(SysUser::getId, currentUserId)); + + initiator = currentUser.getUsername(); + }else if(StringUtils.equals(msgType,MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_SUBMIT_MSG.getValue())){ + String currentUserId = jsonObject.getString("currentUserId"); //当前操作用户id + SysUser currentUser = sysUserService.getBaseMapper().selectOne(new QueryWrapper().lambda().eq(SysUser::getId, currentUserId)); + + userIdList.add(jsonObject.getString("initiatorUserId")); + msgContentEN = currentUser.getUsername() + " has submitted the collection process of Collection of Legislative Comments of "+serialNumber+", please check it in time."; + msgTitle = "You have a Collection of Legislative Comments task completed"; + + initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); + }else if(StringUtils.equals(msgType, MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_MSG.getValue())){ + userIdList = (List) jsonObject.get("userIdList"); + msgContentEN = "The the Collection of Legislative Comments of "+serialNumber+" will expire tomorrow . Please check and address it in time."; + msgTitle = "You have a Collection of Legislative Comments task to complete"; + + initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); + } + + //飞书跳转链接 + String hrefFeishu = backUrl + JumpLinkEnum.TASK_AFFIRM_LINK.getLink(); + //系统内部跳转链接 + String href = "" + " View details" + ""; + String contentInfo = msgContentEN + " " + href; + + Map sendMessageMap = new HashMap<>(); + sendMessageMap.put("hrefFeishu",hrefFeishu); + sendMessageMap.put("contentInfo",contentInfo); + + SendMessageUtils.sendMessage(msgTitle,msgContentEN,userIdList,lawsOpinionGatherId,sendMessageMap,null,MessageTypeEnum.COLLECTION_OF_LEGISLATIVE_COMMENTS,initiator); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/job/LawsTechnologyEvaluationRemindJob.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/job/LawsTechnologyEvaluationRemindJob.java new file mode 100644 index 000000000..66cc0531d --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/job/LawsTechnologyEvaluationRemindJob.java @@ -0,0 +1,87 @@ +package com.jero.modules.lawsTechnologyEvaluation.job; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.jero.modules.lawsOpinionGather.enums.GatherResultEnum; +import com.jero.modules.lawsTechnologyEvaluation.entity.LawsTechnologyEvaluationEO; +import com.jero.modules.lawsTechnologyEvaluation.entity.LawsTechnologyEvaluationFlowDetailEO; +import com.jero.modules.lawsTechnologyEvaluation.service.ILawsTechnologyEvaluationEOService; +import com.jero.modules.lawsTechnologyEvaluation.service.ILawsTechnologyEvaluationFlowDetailEOService; +import com.jero.modules.project.enums.MsgTypeEnum; +import com.jero.modules.wkflow.feginClient.WorkFlowFeignClient; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import org.springframework.beans.factory.annotation.Autowired; + +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.GregorianCalendar; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 法规技术评估 - 定时器 + * 作用:数据还有一天过期时,给代办人发消息 + */ +@Slf4j +public class LawsTechnologyEvaluationRemindJob implements Job { + @Autowired + private WorkFlowFeignClient workFlowFeignClient; + @Autowired + private ILawsTechnologyEvaluationEOService lawsTechnologyEvaluationEOService; + @Autowired + private ILawsTechnologyEvaluationFlowDetailEOService lawsTechnologyEvaluationFlowDetail; + + @Override + public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(LawsTechnologyEvaluationEO::getFlowStatus, GatherResultEnum.UNDERWAY.getValue()); + List LawsTechnologyEvaluationEOList = this.lawsTechnologyEvaluationEOService.list(queryWrapper); + if(CollectionUtils.isNotEmpty(LawsTechnologyEvaluationEOList)){ + List LawsTechnologyEvaluationIdList = LawsTechnologyEvaluationEOList.stream().map(LawsTechnologyEvaluationEO::getId).distinct().collect(Collectors.toList()); + + QueryWrapper detailQueryWrapper = new QueryWrapper<>(); + detailQueryWrapper.lambda().in(LawsTechnologyEvaluationFlowDetailEO::getLawsTechnologyEvaluationId,LawsTechnologyEvaluationIdList); + List flowDetailList = this.lawsTechnologyEvaluationFlowDetail.list(detailQueryWrapper); + + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + + //获取后一天的时间 + Calendar calendar=new GregorianCalendar(); + calendar.setTime(new Date()); + calendar.add(Calendar.DATE,1); + Date nextDay = calendar.getTime(); + + String nextDayStr = sdf.format(nextDay); + LawsTechnologyEvaluationEOList.forEach(lawsTechnologyEvaluationEO -> { + if(StringUtils.equals(nextDayStr,sdf.format(lawsTechnologyEvaluationEO.getEndTime()))){ + + String actiProcInstIds = flowDetailList.stream().filter(flowDetail -> { + boolean flag = false; + if (StringUtils.equals(lawsTechnologyEvaluationEO.getId(), flowDetail.getLawsTechnologyEvaluationId())) { + flag = true; + } + return flag; + }).map(LawsTechnologyEvaluationFlowDetailEO::getActiProcInstId).distinct().collect(Collectors.joining(",")); + + if(StringUtils.isNotEmpty(actiProcInstIds)){ + List userIdList = this.workFlowFeignClient.getTaskAssigneeListByPrcIds(actiProcInstIds); + if(CollectionUtils.isNotEmpty(userIdList)){ + JSONObject sendJsonObject = new JSONObject(); + sendJsonObject.put("msgType", MsgTypeEnum.LAWS_TECHNOLOGY_EVALUATION_EXPIRE_REMIND_MSG.getValue()); + sendJsonObject.put("lawsTechnologyEvaluationId",lawsTechnologyEvaluationEO.getId()); + sendJsonObject.put("serialNumber",lawsTechnologyEvaluationEO.getSerialNumber()); + sendJsonObject.put("userIdList",userIdList); + this.lawsTechnologyEvaluationEOService.workFlowSendMsg(sendJsonObject); + } + } + } + }); + } + } +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/ILawsTechnologyEvaluationEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/ILawsTechnologyEvaluationEOService.java index bac8a0c3c..f13cde5ca 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/ILawsTechnologyEvaluationEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/ILawsTechnologyEvaluationEOService.java @@ -88,4 +88,6 @@ public interface ILawsTechnologyEvaluationEOService extends IService importItemExcel(MultipartFile file, String cut, HttpServletRequest request)throws Exception; List> queryPageDummyById(Map parameter); + + void workFlowSendMsg(JSONObject jsonObject); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/impl/LawsTechnologyEvaluationEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/impl/LawsTechnologyEvaluationEOServiceImpl.java index 5d2f587ec..f3a16a003 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/impl/LawsTechnologyEvaluationEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsTechnologyEvaluation/service/impl/LawsTechnologyEvaluationEOServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; import com.jero.common.constant.enums.CutEnum; +import com.jero.common.constant.enums.MessageTypeEnum; import com.jero.common.constant.enums.ModuleEnum; import com.jero.common.exception.JeroBootException; import com.jero.generater.modules.online.cgform.entity.OnlCgformField; @@ -17,12 +18,17 @@ import com.jero.modules.lawsOpinionGather.enums.GatherResultEnum; import com.jero.modules.lawsTechnologyEvaluation.entity.LawsTechnologyEvaluationEO; import com.jero.modules.lawsTechnologyEvaluation.mapper.LawsTechnologyEvaluationEOMapper; import com.jero.modules.lawsTechnologyEvaluation.service.ILawsTechnologyEvaluationEOService; +import com.jero.modules.project.enums.JumpLinkEnum; +import com.jero.modules.project.enums.MsgTypeEnum; import com.jero.modules.project.enums.OperatorTypeEnum; import com.jero.modules.project.enums.RequestSourceEnum; +import com.jero.modules.project.util.SendMessageUtils; import com.jero.modules.split.entity.SarFileSplitInfoEO; import com.jero.modules.split.service.ISarFileSplitInfoService; import com.jero.modules.system.entity.SysCategory; import com.jero.modules.system.entity.SysDictItem; +import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.service.ISysUserService; import com.jero.modules.system.service.impl.SysCategoryServiceImpl; import com.jero.modules.system.service.impl.SysDictItemServiceImpl; import org.apache.commons.collections4.CollectionUtils; @@ -72,6 +78,10 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl().success("调用成功!"); @@ -524,6 +536,78 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl userIdList = new ArrayList<>(); + + String msgContentEN = ""; + String msgTitle = ""; + String initiator = ""; + if(StringUtils.equals(msgType, MsgTypeEnum.LAWS_TECHNOLOGY_EVALUATION_START_MSG.getValue())){ + userIdList.add(jsonObject.getString("evaluationId")); + String endTime = jsonObject.getString("endTime"); //截止日期 + //您收到GB 7258 的法规技术评估流程任务,请及时查看处理。 + msgContentEN = "You recieved the Regulatory and technical assessment of "+serialNumber+" . The due date is "+endTime+". Please check and address it in a timely manner."; + msgTitle = "You have a Regulatory and technical assessment task to complete"; + + String currentUserId = jsonObject.getString("currentUserId"); //当前操作用户id + SysUser currentUser = sysUserService.getBaseMapper().selectOne(new QueryWrapper().lambda().eq(SysUser::getId, currentUserId)); + + initiator = currentUser.getUsername(); + }else if(StringUtils.equals(msgType,MsgTypeEnum.LAWS_TECHNOLOGY_EVALUATION_ENALUATOR_SUBMIT_MSG.getValue())){ + String currentUserId = jsonObject.getString("currentUserId"); //当前操作用户id + SysUser currentUser = this.sysUserService.getBaseMapper().selectOne(new QueryWrapper().lambda().eq(SysUser::getId, currentUserId)); + + userIdList.add(jsonObject.getString("initiatorUserId")); + //XXX(人员账号)已提交GB 7258 的法规意见收集流程,请及时查看审核。 + msgContentEN = currentUser.getUsername() + " has submitted the collection process of Regulatory and technical assessment of "+serialNumber+", Please check and address it in time."; + msgTitle = "You have a Regulatory and technical assessment task to complete"; + + initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); + }else if(StringUtils.equals(msgType, MsgTypeEnum.LAWS_TECHNOLOGY_EVALUATION_AUDIT_ACCEPTED_MSG.getValue())){ + userIdList.add(jsonObject.getString("evaluationId")); + //您提交的GB 7258 的法规技术评估流程已通过。 + msgContentEN = "The regulatory and technical assessment process for "+serialNumber+" you submitted has passed."; + msgTitle = "You have a Regulatory and technical assessment task completed"; + + initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); + }else if(StringUtils.equals(msgType, MsgTypeEnum.LAWS_TECHNOLOGY_EVALUATION_AUDIT_REJECTED_MSG.getValue())){ + userIdList.add(jsonObject.getString("evaluationId")); + //您提交的GB 7258 的法规技术评估流程已被退回,请及时查看处理。 + msgContentEN = "The regulatory and technical assessment process of "+serialNumber+" you submitted has been returned, Please check and address it in time."; + msgTitle = "You have a Regulatory and technical assessment task to complete"; + + initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); + }else if(StringUtils.equals(msgType, MsgTypeEnum.LAWS_TECHNOLOGY_EVALUATION_EXPIRE_REMIND_MSG.getValue())){ + userIdList = (List) jsonObject.get("userIdList"); + //您GB 7258的法规技术评估流程将于明天结束,请及时查看处理 + msgContentEN = "The the Regulatory and technical assessment of "+serialNumber+" will expire tomorrow. Please check and address it in time."; + msgTitle = "You have a Regulatory and technical assessment task to complete"; + + initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); + } + + //飞书跳转链接 + String hrefFeishu = backUrl + JumpLinkEnum.TASK_AFFIRM_LINK.getLink(); + //系统内部跳转链接 + String href = "" + " View details" + ""; + String contentInfo = msgContentEN + " " + href; + + Map sendMessageMap = new HashMap<>(); + sendMessageMap.put("hrefFeishu",hrefFeishu); + sendMessageMap.put("contentInfo",contentInfo); + + SendMessageUtils.sendMessage(msgTitle,msgContentEN,userIdList,lawsTechnologyEvaluationId,sendMessageMap,null, MessageTypeEnum.REGULATORY_AND_TECHNICAL_ASSESSMENT,initiator); + } + private String getTreeName(String cut, List categoryList, List technologyTerritoryList) { StringBuilder sb = new StringBuilder(); for (String technologyTerritory : technologyTerritoryList) { diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java index 234a61609..1fb7ed795 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java @@ -56,6 +56,10 @@ public class CountryCardManageReleaseEOController extends JeroController queryWrapper = QueryGenerator.initQueryWrapper(countryCardManageReleaseEO, req.getParameterMap()); queryWrapper.orderByDesc("create_time"); Page page = new Page(pageNo, pageSize); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseCollectEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseCollectEOController.java index 4e0dd880d..30446c9fc 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseCollectEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseCollectEOController.java @@ -11,6 +11,7 @@ import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.vo.LoginUser; import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseCollectEO; import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseEO; +import com.jero.modules.problemKnowledgeBase.enums.CollectStatusEnum; import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseCollectEOService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -192,6 +193,7 @@ public class ProblemKnowledgeBaseCollectEOController extends JeroController collectEOQueryWrapper = new QueryWrapper<>(); collectEOQueryWrapper.lambda().eq(ProblemKnowledgeBaseCollectEO::getCollectUserId,currentUser.getId()); + collectEOQueryWrapper.lambda().eq(ProblemKnowledgeBaseCollectEO::getCollectStatus, CollectStatusEnum.COLLECT.getValue()); List collectEOList = this.problemKnowledgeBaseCollectEOService.list(collectEOQueryWrapper); if(CollectionUtils.isNotEmpty(collectEOList)){ diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java index 0af88f36f..2e76c508d 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java @@ -85,4 +85,6 @@ public interface ICountryCardManageReleaseEOService extends IService> getApplyMarketList(String queryFlag,String cut); List queryCountryCardManageReleaseByApplyMarkets(JSONObject params); + + boolean isCountryCardManage(); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java index 2dc1c22fc..d05cdd059 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java @@ -16,8 +16,11 @@ import com.jero.modules.problemKnowledgeBase.mapper.CountryCardManageReleaseEOMa import com.jero.modules.problemKnowledgeBase.service.ICountryCardManageReleaseDetailEOService; import com.jero.modules.problemKnowledgeBase.service.ICountryCardManageReleaseEOService; import com.jero.modules.problemKnowledgeBase.service.ICountryNationalFlagEOService; +import com.jero.modules.project.enums.CollectManifestRoleIdEnum; +import com.jero.modules.system.entity.SysUserRole; import com.jero.modules.system.enums.DicCodeEnum; import com.jero.modules.system.service.ISysDictService; +import com.jero.modules.system.service.ISysUserRoleService; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; @@ -52,6 +55,8 @@ public class CountryCardManageReleaseEOServiceImpl extends ServiceImpl userRoleList = this.sysUserRoleService.list(new QueryWrapper().lambda().eq(SysUserRole::getUserId, currentUser.getId())); // 查询用户所有角色 + if(CollectionUtils.isNotEmpty(userRoleList)){ + CollectManifestRoleIdEnum countruCardManage = CollectManifestRoleIdEnum.COUNTRU_CARD_MANAGE; + CollectManifestRoleIdEnum managerId = CollectManifestRoleIdEnum.MANAGER_ID; + List userRoles = userRoleList.stream().filter(userRole -> { + boolean flag = false; + if(StringUtils.equals(userRole.getRoleId(),countruCardManage.getId()) || StringUtils.equals(userRole.getRoleId(),managerId.getId())){ + flag = true; + } + return flag; + }).collect(Collectors.toList()); + + if(CollectionUtils.isNotEmpty(userRoles)){ + result = true; + } + } + return result; + } + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java index c9cb88cd9..b7460d4c9 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java @@ -129,7 +129,7 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl> mapListTempCn = new ArrayList<>(); List> mapListTempEn = new ArrayList<>(); @@ -223,7 +223,7 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl targetMarketList){ diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLawsInventoryRejectCauseEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLawsInventoryRejectCauseEOController.java new file mode 100644 index 000000000..4b2d19ce5 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLawsInventoryRejectCauseEOController.java @@ -0,0 +1,170 @@ +package com.jero.modules.project.controller; + +import java.util.Arrays; +import java.util.List; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import com.jero.common.api.vo.Result; +import com.jero.common.system.query.QueryGenerator; +import com.jero.modules.project.entity.ProjectLawsInventoryRejectCauseEO; +import com.jero.modules.project.service.IProjectLawsInventoryRejectCauseEOService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; +import com.jero.common.system.base.controller.JeroController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import com.jero.common.aspect.annotation.AutoLog; + + + /** + * @Description: 清单确认-拒绝原因表 + * @Author: jero-boot + * @Date: 2022-09-01 + * @Version: V1.0 + */ +@Api(tags="清单确认-拒绝原因表") +@RestController +@RequestMapping("/project/projectLawsInventoryRejectCauseEO") +@Slf4j +public class ProjectLawsInventoryRejectCauseEOController extends JeroController { + @Autowired + private IProjectLawsInventoryRejectCauseEOService projectLawsInventoryRejectCauseEOService; + + /** + * 分页列表查询 + * + * @param projectLawsInventoryRejectCauseEO + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @AutoLog(value = "清单确认-拒绝原因表-分页列表查询") + @ApiOperation(value="清单确认-拒绝原因表-分页列表查询", notes="清单确认-拒绝原因表-分页列表查询") + @GetMapping(value = "/page") + public Result queryPageList(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(projectLawsInventoryRejectCauseEO, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = projectLawsInventoryRejectCauseEOService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 列表查询 + * + * @return + */ + @AutoLog(value = "清单确认-拒绝原因表-列表查询") + @ApiOperation(value="清单确认-拒绝原因表-列表查询", notes="清单确认-拒绝原因表-列表查询") + @GetMapping(value = "/list") + public Result> queryList(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO,HttpServletRequest req) { + List list = projectLawsInventoryRejectCauseEOService.queryList(projectLawsInventoryRejectCauseEO,req); + return Result.OK(list); + } + + /** + * 添加 + * + * @param projectLawsInventoryRejectCauseEO + * @return + */ + @AutoLog(value = "清单确认-拒绝原因表-添加") + @ApiOperation(value="清单确认-拒绝原因表-添加", notes="清单确认-拒绝原因表-添加") + @PostMapping(value = "/add") + public Result add(@Validated @RequestBody ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO) { + projectLawsInventoryRejectCauseEOService.add(projectLawsInventoryRejectCauseEO); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param projectLawsInventoryRejectCauseEO + * @return + */ + @AutoLog(value = "清单确认-拒绝原因表-编辑") + @ApiOperation(value="清单确认-拒绝原因表-编辑", notes="清单确认-拒绝原因表-编辑") + @PutMapping(value = "/edit") + public Result edit(@Validated @RequestBody ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO) { + projectLawsInventoryRejectCauseEOService.editById(projectLawsInventoryRejectCauseEO); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "清单确认-拒绝原因表-通过id删除") + @ApiOperation(value="清单确认-拒绝原因表-通过id删除", notes="清单确认-拒绝原因表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + projectLawsInventoryRejectCauseEOService.deleteById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "清单确认-拒绝原因表-批量删除") + @ApiOperation(value="清单确认-拒绝原因表-批量删除", notes="清单确认-拒绝原因表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.projectLawsInventoryRejectCauseEOService.deleteByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + @AutoLog(value = "清单确认-拒绝原因表-通过id查询") + @ApiOperation(value="清单确认-拒绝原因表-通过id查询", notes="清单确认-拒绝原因表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO = projectLawsInventoryRejectCauseEOService.queryById(id); + if(projectLawsInventoryRejectCauseEO==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(projectLawsInventoryRejectCauseEO); + } + + /** + * 导出excel + * + * @param request + * @param projectLawsInventoryRejectCauseEO + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO) { + return super.exportXls(request, projectLawsInventoryRejectCauseEO, ProjectLawsInventoryRejectCauseEO.class, "清单确认-拒绝原因表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, ProjectLawsInventoryRejectCauseEO.class); + } + +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryRejectCauseEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryRejectCauseEO.java new file mode 100644 index 000000000..8b7304ff7 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryRejectCauseEO.java @@ -0,0 +1,91 @@ +package com.jero.modules.project.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; + + +/** + * @Description: 清单确认-拒绝原因表 + * @Author: jero-boot + * @Date: 2022-09-01 + * @Version: V1.0 + */ +@Data +@TableName("project_laws_inventory_reject_cause") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="project_laws_inventory_reject_cause对象", description="清单确认-拒绝原因表") +public class ProjectLawsInventoryRejectCauseEO implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + + /**创建日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + + /**更新日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + + /**所属部门*/ + @ApiModelProperty(value = "所属部门") + private java.lang.String sysOrgCode; + + /**拒绝人id*/ + @Excel(name = "拒绝人id", width = 15) + @ApiModelProperty(value = "拒绝人id") + private java.lang.String rejectUserId; + + /**拒绝时间*/ + @Excel(name = "拒绝时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "拒绝时间") + private java.util.Date rejectTime; + + /**拒绝原因*/ + @Excel(name = "拒绝原因", width = 15) + @ApiModelProperty(value = "拒绝原因") + private java.lang.String rejectCause; + + /**法规清单id*/ + @Excel(name = "法规清单id", width = 15) + @ApiModelProperty(value = "法规清单id") + private java.lang.String projectLawsInventoryId; + + /**拒绝类型*/ + @Excel(name = "拒绝类型", width = 15) + @ApiModelProperty(value = "拒绝类型") + private java.lang.String rejectType; + +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/CollectManifestRoleIdEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/CollectManifestRoleIdEnum.java index 46ac56ff5..a99a7decf 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/CollectManifestRoleIdEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/CollectManifestRoleIdEnum.java @@ -14,7 +14,9 @@ import java.util.List; public enum CollectManifestRoleIdEnum { // STUDIO_ID("R&H Studio","R&H Studio","studio","1534019911296118786",1), ADMIN_ID("R&H Manager","R&H Manager","manager","1534020391015444481",2), - MANAGER_ID("系统管理员","Administrator","admin","f6817f48af4fb3af11b9e8bf182f618b",3); + MANAGER_ID("系统管理员","Administrator","admin","f6817f48af4fb3af11b9e8bf182f618b",3), + COUNTRU_CARD_MANAGE("countryCard管理员","countryCardManage","countryCardManage","1564916346120916993",4), + ; String name; String enName; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/MsgTypeEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/MsgTypeEnum.java index 3be535686..c78462df3 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/MsgTypeEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/MsgTypeEnum.java @@ -30,6 +30,16 @@ public enum MsgTypeEnum { DESIGN_INITIATOR_ACCEPTED_MSG("设计符合性发起人通过发送消息","designInitiatorAcceptedMsg"), PREHOMO_INITIATOR_ACCEPTED_MSG("prehomo发起人通过发送消息","prehomoInitiatorAcceptedMsg"), VERIFY_INITIATOR_ACCEPTED_MSG("验证符合性发起人通过发送消息","verifyInitiatorAcceptedMsg"), + + LAWS_OPOMOPM_GATHER_START_MSG("法规意见收集发起消息","lawsOpomopmGatherStartMsg"), + LAWS_OPOMOPM_GATHER_ENALUATOR_SUBMIT_MSG("法规意见收集评估人提交任务消息","lawsOpomopmGatherEnaluatorSubmitMsg"), + LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_MSG("法规意见收集到期前一天消息","lawsOpomopmGatherExpireRemindMsg"), + + LAWS_TECHNOLOGY_EVALUATION_START_MSG("法规技术评估发起消息","lawsTechnologyEvaluationStartMsg"), + LAWS_TECHNOLOGY_EVALUATION_ENALUATOR_SUBMIT_MSG("法规技术评估,评估人提交任务消息","lawsTechnologyEvaluationEnaluatorSubmitMsg"), + LAWS_TECHNOLOGY_EVALUATION_AUDIT_ACCEPTED_MSG("法规技术评估,发起人审核通过消息","lawsTechnologyEvaluationAuditAcceptedMsg"), + LAWS_TECHNOLOGY_EVALUATION_AUDIT_REJECTED_MSG("法规技术评估,发起人审核拒绝消息","lawsTechnologyEvaluationAuditRejectedMsg"), + LAWS_TECHNOLOGY_EVALUATION_EXPIRE_REMIND_MSG("法规技术评估到期前一天消息","lawsTechnologyEvaluationExpireRemindMsg"), ; String name; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectLawsInventoryRejectCauseEOMapper.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectLawsInventoryRejectCauseEOMapper.java new file mode 100644 index 000000000..836720310 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectLawsInventoryRejectCauseEOMapper.java @@ -0,0 +1,17 @@ +package com.jero.modules.project.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import com.jero.modules.project.entity.ProjectLawsInventoryRejectCauseEO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 清单确认-拒绝原因表 + * @Author: jero-boot + * @Date: 2022-09-01 + * @Version: V1.0 + */ +public interface ProjectLawsInventoryRejectCauseEOMapper extends BaseMapper { + +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLawsInventoryRejectCauseEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLawsInventoryRejectCauseEOMapper.xml new file mode 100644 index 000000000..c34c458e5 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLawsInventoryRejectCauseEOMapper.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLawsInventoryRejectCauseEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLawsInventoryRejectCauseEOService.java new file mode 100644 index 000000000..f112fe1a4 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLawsInventoryRejectCauseEOService.java @@ -0,0 +1,63 @@ +package com.jero.modules.project.service; + +import com.jero.modules.project.entity.ProjectLawsInventoryRejectCauseEO; +import com.baomidou.mybatisplus.extension.service.IService; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; + +/** + * @Description: 清单确认-拒绝原因表 + * @Author: jero-boot + * @Date: 2022-09-01 + * @Version: V1.0 + */ +public interface IProjectLawsInventoryRejectCauseEOService extends IService { + + /** + * 保存 + * + * @param projectLawsInventoryRejectCauseEO + * @return + */ + void add(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO); + + /** + * 更新 + * + * @param projectLawsInventoryRejectCauseEO + * @return + */ + void editById(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO); + + /** + * 通过id删除 + * + * @param id + * @return + */ + void deleteById(String id); + + /** + * 批量删除 + * + * @param ids + * @return + */ + void deleteByIds(List ids); + + /** + * 通过id查询 + * + * @param id + * @return + */ + ProjectLawsInventoryRejectCauseEO queryById(String id); + + /** + * 列表查询 + * + * @return + */ + List queryList(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO, HttpServletRequest req); +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryRejectCauseEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryRejectCauseEOServiceImpl.java new file mode 100644 index 000000000..539ecbb8c --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryRejectCauseEOServiceImpl.java @@ -0,0 +1,95 @@ +package com.jero.modules.project.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.jero.common.system.query.QueryGenerator; +import com.jero.modules.project.entity.ProjectLawsInventoryRejectCauseEO; +import com.jero.modules.project.mapper.ProjectLawsInventoryRejectCauseEOMapper; +import com.jero.modules.project.service.IProjectLawsInventoryRejectCauseEOService; +import org.springframework.stereotype.Service; +import java.util.List; +import java.util.Date; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import javax.servlet.http.HttpServletRequest; + +/** + * @Description: 清单确认-拒绝原因表 + * @Author: jero-boot + * @Date: 2022-09-01 + * @Version: V1.0 + */ +@Service +public class ProjectLawsInventoryRejectCauseEOServiceImpl extends ServiceImpl implements IProjectLawsInventoryRejectCauseEOService { + + /** + * 保存 + * + * @param projectLawsInventoryRejectCauseEO + * @return + */ + @Override + public void add(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO) { + Date now = new Date(); + projectLawsInventoryRejectCauseEO.setCreateTime(now); + projectLawsInventoryRejectCauseEO.setUpdateTime(now); + save(projectLawsInventoryRejectCauseEO); + } + + /** + * 更新 + * + * @param projectLawsInventoryRejectCauseEO + * @return + */ + @Override + public void editById(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO) { + Date now = new Date(); + projectLawsInventoryRejectCauseEO.setUpdateTime(now); + saveOrUpdate(projectLawsInventoryRejectCauseEO); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @Override + public void deleteById(String id) { + removeById(id); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @Override + public void deleteByIds(List ids) { + removeByIds(ids); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + @Override + public ProjectLawsInventoryRejectCauseEO queryById(String id) { + return getById(id); + } + + /** + * 列表查询 + * + * @return + */ + @Override + public List queryList(ProjectLawsInventoryRejectCauseEO projectLawsInventoryRejectCauseEO, HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(projectLawsInventoryRejectCauseEO, req.getParameterMap()); + List result = this.list(queryWrapper); + return result; + } +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java index b43b2b7a6..85f26e2c4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java @@ -146,7 +146,7 @@ public class LawsMonthlyReportManageEOServiceImpl extends ServiceImpl lawsMonthlyReportWriteEOS, List lawsMonthlyReportTitleTemplateEOS, List reportTitleOneList, @@ -711,24 +776,18 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl lawsMonthlyReportWriteEOS, + private void catalogue(List lawsMonthlyReportWriteEOS, List lawsMonthlyReportTitleTemplateEOS, List reportTitleOneList, - String titleCN, + String catalogue, XWPFDocument document, - String cut, - List loginUserList) { - //数据字典 - List sysDictItems = sysDictItemServiceImpl.selectItemsAll(); + String cut) { - //树形数据字典 - List categoryList = sysCategoryService.list(); String moth = lawsMonthlyReportWriteEOS.get(0).getMonth().replaceAll("-", "年") + "月"; - //生成页眉页脚 - WordUtil.exportHeardAndFoot(document,moth); - //生成标题 - WordUtil.exportWord(document, titleCN, null, ParagraphAlignment.CENTER, 0, 18, - false, true, "Blue Sky Noto Regular",null); + //单独设置每页右侧的时间 + WordUtil.exportWord(document, catalogue, null, ParagraphAlignment.LEFT, 0, 18, + false, false, "Blue Sky Noto Regular",null); + int oneCount = 1; for (LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO : reportTitleOneList) { @@ -743,7 +802,7 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl lawsMonthlyReportWriteEOS, + String titleCN, + XWPFDocument document) { + String moth = lawsMonthlyReportWriteEOS.get(0).getMonth().replaceAll("-", "年") + "月"; + + titleCN = "\r\n\r\n" + titleCN + "\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"; + WordUtil.exportWord(document, titleCN, null, ParagraphAlignment.CENTER, 0, 18, + false, false, "Blue Sky Noto Regular",null); + WordUtil.exportWord(document, moth, null, ParagraphAlignment.CENTER, 0, 12, + false, true, "Blue Sky Noto Regular",null); + } + private void wordContent(List lawsMonthlyReportWriteEOS, + List lawsMonthlyReportTitleTemplateEOS, + List reportTitleOneList, + String titleCN, + XWPFDocument document, + String cut, + List loginUserList) { + //数据字典 + List sysDictItems = sysDictItemServiceImpl.selectItemsAll(); + + //树形数据字典 + List categoryList = sysCategoryService.list(); + String moth = lawsMonthlyReportWriteEOS.get(0).getMonth().replaceAll("-", "年") + "月"; + //生成封面 +// WordUtil.exportHeardAndFoot(document,moth); + + //生成页眉页脚 + WordUtil.exportHeardAndFoot(document,moth); + //生成标题 + WordUtil.exportWord(document, titleCN, null, ParagraphAlignment.CENTER, 0, 18, + false, true, "Blue Sky Noto Regular",null); + int oneCount = 1; + + for (LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO : reportTitleOneList) { + int twoCount = 1; + String oneNumber = intToRoman(oneCount); + //一级标题 + String oneTitle = ""; + if(CutEnum.CN.getValue().equals(cut)){ + oneTitle = lawsMonthlyReportTitleTemplateEO.getTitleCn(); + }else{ + oneTitle = lawsMonthlyReportTitleTemplateEO.getTitleEn(); + } + if(StringUtils.isNotBlank(oneTitle)){ + WordUtil.exportWord(document, oneNumber+" "+oneTitle, null, ParagraphAlignment.LEFT, + 0, 14, false, true, "Blue Sky Noto Regular","Heading1"); + oneCount++; + } + + List reportTitleTwoList = lawsMonthlyReportTitleTemplateEOS.stream().filter(e -> e.getParentId().equals(lawsMonthlyReportTitleTemplateEO.getId())).collect(Collectors.toList()); + + + for (LawsMonthlyReportTitleTemplateEO monthlyReportTitleTemplateEO : reportTitleTwoList) { + int reportCount = 1; + //子标题对应的月报填写的内容 + List lawsMonthlyReportWriteEOList = lawsMonthlyReportWriteEOS.stream().filter(e -> monthlyReportTitleTemplateEO.getId().equals(e.getMemoriesChapter())).collect(Collectors.toList()); + String twoNumber = intToRoman(twoCount); + twoNumber = oneNumber+"."+twoNumber; + + //二级标题 + String twoTitle = ""; + if(CutEnum.CN.getValue().equals(cut)){ + twoTitle = monthlyReportTitleTemplateEO.getTitleCn(); + }else{ + twoTitle = monthlyReportTitleTemplateEO.getTitleEn(); + } + if(StringUtils.isNotBlank(twoTitle)){ + WordUtil.exportWord(document, twoNumber+" "+twoTitle, null, ParagraphAlignment.LEFT, + 2, 12, false, true, "Blue Sky Noto Regular","Heading2"); twoCount++; } //二级目录下放--->新征求意见清单模板, 新发布标准清单模板 @@ -794,7 +945,7 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl queryMapTemp = new HashMap<>(); if (key.equals("serial_number")){ + s = s.toLowerCase(); queryMap.put(key, "*" + s + "*"); map.put("wildcard", queryMap); } else { + s = s.toLowerCase(); queryMapTemp.put("query", s); queryMapTemp.put("minimum_should_match", 2); queryMap.put(key, queryMapTemp); @@ -461,6 +463,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Map map25 = new HashMap<>(); Map map45 = new HashMap<>(); map25.put("query", selectValue); + map25.put("fields", fieldList.toArray()); map25.put("allow_leading_wildcard", false); //禁用了前置通配符 map45.put("query_string", map25); queryMapJson.add(map45); @@ -488,6 +491,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Map map25 = new HashMap<>(); Map map45 = new HashMap<>(); map25.put("query", selectValue); + map25.put("fields", fieldList.toArray()); map25.put("allow_leading_wildcard", false); //禁用了前置通配符 map45.put("query_string", map25); queryMapJson.add(map45); @@ -551,15 +555,15 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Map map31 = new HashMap<>(); Map map41 = new HashMap<>(); if("serial_number".equals(field)){ - map31.put("boost",1); + map31.put("boost",10); }else if("title".equals(field)){ - map31.put("boost",1); + map31.put("boost",10); }else if("file_text".equals(field)){ map31.put("boost",0.01); }else if("content".equals(field)){ map31.put("boost",0.01); }else if("file_name".equals(field)){ - map31.put("boost",1); + map31.put("boost",10); } map31.put("value", selectValue); map21.put(field + ".keyword", map31); @@ -571,15 +575,15 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Map map32 = new HashMap<>(); Map map42 = new HashMap<>(); if("serial_number".equals(field)){ - map32.put("boost",1); + map32.put("boost",10); }else if("title".equals(field)){ - map32.put("boost",1); + map32.put("boost",10); }else if("file_text".equals(field)){ map32.put("boost",0.01); }else if("content".equals(field)){ map32.put("boost",0.01); }else if("file_name".equals(field)){ - map32.put("boost",1); + map32.put("boost",10); } map32.put("query", selectValue); map22.put(field, map32); @@ -589,8 +593,21 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { // match分词匹配查询 // 情况举例:用户可能他知道开头的前缀几个字,知道中间的几个字 Map map23 = new HashMap<>(); + Map map33 = new HashMap<>(); Map map43 = new HashMap<>(); - map23.put(field, selectValue); + if("serial_number".equals(field)){ + map33.put("boost",10); + }else if("title".equals(field)){ + map33.put("boost",10); + }else if("file_text".equals(field)){ + map33.put("boost",0.01); + }else if("content".equals(field)){ + map33.put("boost",0.01); + }else if("file_name".equals(field)){ + map33.put("boost",10); + } + map33.put("query", selectValue); + map23.put(field, map33); map43.put("match", map23); queryMapJson.add(map43); @@ -919,8 +936,27 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { */ @Override public IPage getParagraphInfoList(Map map) { + //指定module_type_flag= WDK + JSONArray queryJsonMust = new JSONArray(); + Map mapModule = new HashMap<>(); + Map mapModule1 = new HashMap<>(); + Map mapModule2 = new HashMap<>(); + mapModule.put("query", "WDK"); + mapModule1.put("module_type_flag", mapModule); + mapModule2.put("match", mapModule1); + queryJsonMust.add(mapModule2); + //段落, 有条件的时候,查询的数据中不含有魑的数据 + JSONArray queryJsonMustNot = new JSONArray(); if(ObjectUtils.isEmpty(map.get("mapOne"))){ ((Map) map.get("mapOne")).put("flag",SEARCH_FLAG); + }else{ + Map mapTemp = new HashMap<>(); + Map map1 = new HashMap<>(); + Map map2 = new HashMap<>(); + mapTemp.put("query", SEARCH_FLAG); + map1.put("flag", mapTemp); + map2.put("match", map1); + queryJsonMustNot.add(map2); } String cut = (String) map.get("cut"); //module_type 代表文档库的段落 @@ -956,24 +992,27 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { JSONArray queryMapJsonAll = new JSONArray(); //首次查询条件 if (ObjectUtils.isNotEmpty(mapOne)) { - if(StringUtils.isNotBlank((String)mapOne.get("title")) - || StringUtils.isNotBlank((String)mapOne.get("serial_number"))){ - Map queryMap = new HashMap<>(); - Map queryMapTemp = new HashMap<>(); - queryMapTemp.put("flag",SEARCH_FLAG ); - queryMap.put("match_phrase", queryMapTemp); - queryMapJsonTemp.add(queryMap); - } +// if(StringUtils.isNotBlank((String)mapOne.get("title")) +// || StringUtils.isNotBlank((String)mapOne.get("serial_number"))){ +// Map queryMap = new HashMap<>(); +// Map queryMapTemp = new HashMap<>(); +// queryMapTemp.put("flag",SEARCH_FLAG ); +// queryMap.put("match_phrase", queryMapTemp); +// queryMapJsonTemp.add(queryMap); +// } for (Map.Entry entry : mapOne.entrySet()) { String key = entry.getKey(); String value = (String) entry.getValue(); + if("serial_number".equals(key) || "title".equals(key) || "file_text".equals(key)){ + value = value.toLowerCase(); + } if (ObjectUtils.isNotEmpty(value)) { for (String s : value.split(",")) { Map queryMap = new HashMap<>(); Map queryMapTemp = new HashMap<>(); Map queryMap3 = new HashMap<>(); //特殊处理编号字段 - if (key.equals("serial_number")){ + if (key.equals("serial_number") || key.equals("title") || key.equals("file_text")){ queryMapTemp.put(key, "*" + s + "*"); queryMap.put("wildcard",queryMapTemp); queryMapJson.add(queryMap); @@ -1007,6 +1046,10 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, null, null); queryMapJsonAll.add(jsonObject); } + if(CollectionUtils.isNotEmpty(queryJsonMust)){ + JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryJsonMust, null, null); + queryMapJsonAll.add(jsonObject); + } } String ids = (String) mapTwo.get("ids"); @@ -1113,7 +1156,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { IPage iPage = getiPage(selectValue, selectValueTwo, queryMapJsonAll, mapHighlight1,null, - pageNo, pageSize, paragraphFlag,(String) map.get("cut"),sort,null); + pageNo, pageSize, paragraphFlag,(String) map.get("cut"),sort,queryJsonMustNot); return iPage; } @@ -1489,7 +1532,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Map map31 = new HashMap<>(); Map map41 = new HashMap<>(); if("title".equals(field)){ - map31.put("boost",1); + map31.put("boost",10); }else if("content".equals(field)){ map31.put("boost",0.01); } @@ -1503,7 +1546,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Map map32 = new HashMap<>(); Map map42 = new HashMap<>(); if("title".equals(field)){ - map32.put("boost",1); + map32.put("boost",10); }else if("content".equals(field)){ map32.put("boost",0.01); } @@ -1515,8 +1558,15 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { // match分词匹配查询 // 情况举例:用户可能他知道开头的前缀几个字,知道中间的几个字 Map map23 = new HashMap<>(); + Map map33 = new HashMap<>(); Map map43 = new HashMap<>(); - map23.put(field, selectValue); + if("title".equals(field)){ + map33.put("boost",10); + }else if("content".equals(field)){ + map33.put("boost",0.01); + } + map33.put("query", selectValue); + map23.put(field, map33); map43.put("match", map23); queryMapJson.add(map43); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java index d4fea43f6..960f55799 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java @@ -118,6 +118,7 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea Map map25 = new HashMap<>(); Map map45 = new HashMap<>(); map25.put("query", selectValue); + map25.put("fields", fieldList.toArray()); map25.put("allow_leading_wildcard", false); map45.put("query_string", map25); queryMapJsonTwo.add(map45); @@ -248,7 +249,7 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea Map map31 = new HashMap<>(); Map map41 = new HashMap<>(); if("title".equals(field)){ - map31.put("boost",1); + map31.put("boost",10); }else if("content".equals(field)){ map31.put("boost",0.01); } @@ -262,7 +263,7 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea Map map32 = new HashMap<>(); Map map42 = new HashMap<>(); if("title".equals(field)){ - map32.put("boost",1); + map32.put("boost",10); }else if("content".equals(field)){ map32.put("boost",0.01); } @@ -274,8 +275,15 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea // match分词匹配查询 // 情况举例:用户可能他知道开头的前缀几个字,知道中间的几个字 Map map23 = new HashMap<>(); + Map map33 = new HashMap<>(); Map map43 = new HashMap<>(); - map23.put(field, selectValue); + if("title".equals(field)){ + map33.put("boost",10); + }else if("content".equals(field)){ + map33.put("boost",0.01); + } + map33.put("query", selectValue); + map23.put(field, map33); map43.put("match", map23); queryMapJson.add(map43); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java index 64e066ab9..fd8b1d8e7 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java @@ -165,12 +165,22 @@ public class FileSpiltService { paragraphString = paragraphString.trim(); } if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } paragraphString = paragraphString.replaceAll("\r\n",""); paragraphString = paragraphString.replaceAll("\n",""); paragraphString = paragraphString.trim(); if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } if (StringUtils.isNotEmpty(p.getNumLevelText()) && p.getNumLevelText().indexOf(".") > 0) { @@ -682,12 +692,22 @@ public class FileSpiltService { paragraphString = paragraphString.trim(); } if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } paragraphString = paragraphString.replaceAll("\r\n",""); paragraphString = paragraphString.replaceAll("\n",""); paragraphString = paragraphString.trim(); if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } // if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) { @@ -864,12 +884,22 @@ public class FileSpiltService { paragraphString = paragraphString.trim(); } if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } paragraphString = paragraphString.replaceAll("\r\n",""); paragraphString = paragraphString.replaceAll("\n",""); paragraphString = paragraphString.trim(); if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } // if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) { @@ -1056,12 +1086,22 @@ public class FileSpiltService { paragraphString = paragraphString.trim(); } if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } paragraphString = paragraphString.replaceAll("\r\n",""); paragraphString = paragraphString.replaceAll("\n",""); paragraphString = paragraphString.trim(); if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } // if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) { @@ -1418,12 +1458,22 @@ public class FileSpiltService { paragraphString = paragraphString.trim(); } if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } paragraphString = paragraphString.replaceAll("\r\n",""); paragraphString = paragraphString.replaceAll("\n",""); paragraphString = paragraphString.trim(); if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } // if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) { @@ -1613,12 +1663,22 @@ public class FileSpiltService { paragraphString = paragraphString.trim(); } if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } paragraphString = paragraphString.replaceAll("\r\n",""); paragraphString = paragraphString.replaceAll("\n",""); paragraphString = paragraphString.trim(); if(StringUtils.isEmpty(paragraphString)){ + // 处理当前段落仅为图片的情况 + List imageBundleList = readImageInParagraph((XWPFParagraph) p); + if (CollectionUtils.isNotEmpty(imageBundleList)) { + addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList); + } continue; } @@ -2586,7 +2646,7 @@ public class FileSpiltService { String path = splitUrl+"/jero-boot/sys/split/file/getImage?fileUrl="+filepathandname; CosBootUtil.uploadByte(bytev, filepathandname); String imgCon = path; - String imgConVal = ""; + String imgConVal = ""; message.getItemsCondi().add(imgConVal); message.setItermsConditions(message.getItermsConditions() + imgConVal); itemsValList.add(getSplitItemsValObject(message.getId(), SplitFilePragraTypeEnum.IMG.getValue(), imgCon, message.getItemsCondi().size(), null)); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java index 8b487319b..6b37ba8b2 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java @@ -158,7 +158,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl"; + valContent = ""; // valContent = valEO.getItemContent(); } else if ("TABLE".equals(valEO.getType())) { valContent = valEO.getItemContent(); @@ -233,7 +233,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl"; + valContent = ""; // valContent = valEO.getItemContent(); } else if ("TABLE".equals(valEO.getType())) { valContent = valEO.getItemContent(); @@ -1693,7 +1693,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl> read(File file, List dbfieldList, String[] titles, String cut) throws IOException, InvalidFormatException { + private List> read(File file, List dbfieldList, String[] titles, String cut) throws Exception { //最终返回数据 List> list = new ArrayList<>(); @@ -1702,8 +1702,14 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl map = null; //获得所有数据 - //从第x行开始获取 + //从第3行开始获取,第一行是表头,第二行是填写说明 for (int x = 2; x <= totalRowNum; x++) { map = new HashMap(); //获得第i行对象 @@ -2461,7 +2495,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl"; } else if ("IMG".equals(valEO.getType())) { - valContent += ""; + valContent += ""; // valContent += valEO.getItemContent(); } else if ("TABLE".equals(valEO.getType())) { valContent += valEO.getItemContent(); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/controller/LawsWarnController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/controller/LawsWarnController.java index b1dba1d41..ef7064226 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/controller/LawsWarnController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/controller/LawsWarnController.java @@ -64,8 +64,8 @@ public class LawsWarnController { @ApiOperation(value = "推送") @GetMapping(value = "/warnPullMessage") // @RequiresPermissions("document:pullMessage") - public Result pullMessage(String departIds,String userIds,String documentIds) { - lawsWarnService.warnPullMessage(departIds,userIds,documentIds); + public Result pullMessage(String departIds,String userIds,String documentIds,String flag) { + lawsWarnService.warnPullMessage(departIds,userIds,documentIds,flag); return Result.OK("推送成功"); } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/service/LawsWarnService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/service/LawsWarnService.java index 302b9a27f..beab9d1eb 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/service/LawsWarnService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/warn/service/LawsWarnService.java @@ -338,7 +338,7 @@ public class LawsWarnService { } - public String warnPullMessage(String departIds, String userIds, String documentIds) { + public String warnPullMessage(String departIds, String userIds, String documentIds,String flag) { Set allDepartIds = new HashSet<>(); //查询当前部门下所有部门 if (StringUtils.isNotEmpty(departIds)) { @@ -379,6 +379,25 @@ public class LawsWarnService { List urlList = new ArrayList<>(); List hrefList = new ArrayList<>(); for (Map map : mapList) { + //1-->新车型实施日期, 2-->在产车实施日期 + String timeContent = ""; + if("1".equals(flag)){ + String value = StringUtils.valueOf(map.get("xin1_che1_xing2_shi2_shi1_ri4_qi1")); + if(StringUtils.isNotBlank(value)){ + if(value.contains(" ")){ + value = value.split(" ")[0]; + } + timeContent =" to you as the implementation date of the new model is " +value; + } + }else if("2".equals(flag)){ + String value = StringUtils.valueOf(map.get("implement_time")); + if(StringUtils.isNotBlank(value)){ + if(value.contains(" ")){ + value = value.split(" ")[0]; + } + timeContent =" to you as the implementation date of vehicle production is " +value; + } + } serialNumberList.add(StringUtils.valueOf(map.get("serial_number"))); String url = backUrl + "/docManage/library/detail?id=" + map.get("id") + "&title=" + map.get("title") + @@ -388,13 +407,16 @@ public class LawsWarnService { "&title=" + map.get("title") + "&serial_number=" + map.get("serial_number") + "'" + " target='_blank'>" + map.get("serial_number") + ""; urlList.add(url); - hrefList.add(href); + hrefList.add(href+timeContent); } LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - String content = sysUser.getUsername() + " pushed " + StringUtils.join(serialNumberList, ",") + " to you. Please be reminded to check it out."; - String contentInfo = sysUser.getUsername() + " pushed " + StringUtils.join(hrefList, ",") + " to you. Please be reminded to check it out."; + String content = StringUtils.join(serialNumberList, ",") + " has been shared with you, please check."; + //消息详情模板 + // XXX has pushed GB 7258 to you as the implementation date of vehicle production is XXXX-XX-XX, + // GB 7258 to you as the implementation date of vehicle production is XXXX-XX-XX, Please be reminded to check it out. + String contentInfo = sysUser.getUsername() + " has pushed " + StringUtils.join(hrefList, ",") + ", Please be reminded to check it out."; String title = content; //封装消息的实体类 @@ -409,10 +431,28 @@ public class LawsWarnService { mapList.stream().forEach(e->{ if(s.contains((String)e.get("id"))){ String serialNumber = StringUtils.valueOf(e.get("serial_number")); - list.add(serialNumber); + String timeContent = ""; + if("1".equals(flag)){ + String value = StringUtils.valueOf(e.get("xin1_che1_xing2_shi2_shi1_ri4_qi1")); + if(StringUtils.isNotBlank(value)){ + if(value.contains(" ")){ + value = value.split(" ")[0]; + } + timeContent =" to you as the implementation date of the new model is " +value; + } + }else if("2".equals(flag)){ + String value = StringUtils.valueOf(e.get("implement_time")); + if(StringUtils.isNotBlank(value)){ + if(value.contains(" ")){ + value = value.split(" ")[0]; + } + timeContent =" to you as the implementation date of vehicle production is " +value; + } + } + list.add(serialNumber + timeContent); } }); - String contentTemp = sysUser.getUsername() + " pushed " + StringUtils.join(list, ",") + " to you. Please be reminded to check it out."; + String contentTemp = sysUser.getUsername() + " has pushed " + StringUtils.join(list, ",") + ", Please be reminded to check it out."; iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), contentTemp, MessageTypeEnum.PUSH.getName(), encode); } } catch (IOException e) { @@ -421,4 +461,87 @@ public class LawsWarnService { bussDocumentLibraryEOService.sendWebsocket(documentIds, contentInfo); return "推送成功"; } +// public String warnPullMessage(String departIds, String userIds, String documentIds,String flag) { +// Set allDepartIds = new HashSet<>(); +// //查询当前部门下所有部门 +// if (StringUtils.isNotEmpty(departIds)) { +// String[] departIdArr = departIds.split(","); +// for (String departId : departIdArr) { +// List subDepIdsByDepId = sysDepartService.getSubDepIdsByDepId(departId); +// allDepartIds.addAll(subDepIdsByDepId); +// } +// } +// +// List userIdList = new ArrayList<>(); +// List thirdIdList = new ArrayList<>(); +// if (StringUtils.isNotBlank(departIds)) { +// //查询部门下的人员 +// List userList = new ArrayList<>(); +// if(allDepartIds.size() != 0){ +// userList = sysUserService.getUserListByDepIds(new ArrayList<>(allDepartIds)); +// } +// +// if (userList.size() != 0) { +// userIdList = userList.stream().map(SysUser::getId).distinct().collect(Collectors.toList()); +// thirdIdList = userList.stream().map(SysUser::getThirdId).distinct().collect(Collectors.toList()); +// } +// } +// if(userIdList.size() == 0 && StringUtils.isNotBlank(userIds)){ +// List sysUsers = sysUserService.listByIds(Arrays.asList(userIds.split(","))); +// if(sysUsers.size() != 0){ +// List userId = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList()); +// List thirdId = sysUsers.stream().map(SysUser::getThirdId).collect(Collectors.toList()); +// userIdList.addAll(userId); +// thirdIdList.addAll(thirdId); +// } +// } +// +// //查询文档 +// List> mapList = bussDocumentLibraryEOMapper.selectMapsAll(documentIds); +// List serialNumberList = new ArrayList<>(); +// List urlList = new ArrayList<>(); +// List hrefList = new ArrayList<>(); +// for (Map map : mapList) { +// serialNumberList.add(StringUtils.valueOf(map.get("serial_number"))); +// String url = backUrl + "/docManage/library/detail?id=" + map.get("id") + +// "&title=" + map.get("title") + +// "&serial_number=" + map.get("serial_number"); +// +// String href = "" + map.get("serial_number") + ""; +// urlList.add(url); +// hrefList.add(href); +// } +// +// +// LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); +// String content = sysUser.getUsername() + " pushed " + StringUtils.join(serialNumberList, ",") + " to you. Please be reminded to check it out."; +// String contentInfo = sysUser.getUsername() + " pushed " + StringUtils.join(hrefList, ",") + " to you. Please be reminded to check it out."; +// String title = content; +// +// //封装消息的实体类 +// SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.PUSH.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName()); +// sysAnnouncementService.saveAnnouncement(sysAnnouncement); +// bussDocumentLibraryEOService.sendWebsocket(StringUtils.join(thirdIdList, ","), contentInfo); +// //飞书 +// try { +// for (String s : urlList) { +// String encode = UriEncoder.encode(s); +// List list = new ArrayList<>(); +// mapList.stream().forEach(e->{ +// if(s.contains((String)e.get("id"))){ +// String serialNumber = StringUtils.valueOf(e.get("serial_number")); +// list.add(serialNumber); +// } +// }); +// String contentTemp = sysUser.getUsername() + " pushed " + StringUtils.join(list, ",") + " to you. Please be reminded to check it out."; +// iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), contentTemp, MessageTypeEnum.PUSH.getName(), encode); +// } +// } catch (IOException e) { +// e.printStackTrace(); +// } +// bussDocumentLibraryEOService.sendWebsocket(documentIds, contentInfo); +// return "推送成功"; +// } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java index aa9bdd61b..5cf557492 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java @@ -164,4 +164,10 @@ public interface WorkFlowFeignClient { */ @RequestMapping(value = "/bat-wkflow/deleteProcessInstanceByTaskId",method = RequestMethod.GET) Result deleteProcessInstanceByTaskId(@RequestParam("taskId") String taskId); + + @RequestMapping(value = "/bat-wkflow/task/getLawsOpinionGatherFlowAssigneeList",method = RequestMethod.GET) + List getLawsOpinionGatherFlowAssigneeList(@RequestParam("lawsOpinionGatherId") String lawsOpinionGatherId); + + @RequestMapping(value = "/bat-wkflow/task/getTaskAssigneeListByPrcIds",method = RequestMethod.GET) + List getTaskAssigneeListByPrcIds(@RequestParam("actiProcInstIds") String actiProcInstIds); } diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 9a1c1fede..0f184b54f 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -1281,4 +1281,6 @@ module.exports = { rejectedBy:'Rejected By', rejectionTime:'Rejection Time', rejectReason:'Reject Reason', + collectionLegislativeComments:'Collection of Legislative Comments', + regulatoryAndTechnicalAssessment:'Regulatory and technical assessment', } \ No newline at end of file diff --git a/jero-web/src/common/lang/zh-cn.js b/jero-web/src/common/lang/zh-cn.js index 7d4e9abe7..45c33af9a 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -1383,4 +1383,7 @@ module.exports = { rejectedBy:'拒绝人', rejectionTime:'拒绝时间', rejectReason:'拒绝原因', + collectionLegislativeComments:'法规意见收集', + regulatoryAndTechnicalAssessment:'法规技术评估', + } \ No newline at end of file diff --git a/jero-web/src/components/CollectionType/index.vue b/jero-web/src/components/CollectionType/index.vue index 411eef23b..2f8d6386c 100644 --- a/jero-web/src/components/CollectionType/index.vue +++ b/jero-web/src/components/CollectionType/index.vue @@ -125,7 +125,7 @@
- @@ -690,6 +690,17 @@ }) }, methods: { + selectChange(val){ + this.$nextTick(() => { + let element = document.querySelectorAll( + ".tableclassname .ant-table-expanded-row" + ); + let len = element.length / 2; + for (let i = 0; i < len; i++) { + element[i + len].style.height = element[i].offsetHeight + "px"; + } + }); + }, onInput(r) { let value = r.target.value r.target.value = value.replace(/[^\u4e00-\u9fa5]/g, '') @@ -770,7 +781,9 @@ height: 38px !important; line-height: 38px !important; } - + .ant-select-selection-selected-value{ + height:100%; + } .selectWid .ant-select-selection__rendered { line-height: 36px !important; } @@ -781,9 +794,12 @@ height: calc(100% - 100px); overflow: auto; } -/deep/ .ant-select-allow-clear{ - height: 30px; -} +///deep/ .ant-select-allow-clear{ +// height: 30px; +//} + /deep/.ant-table-row{ + height:69px; + } .text { margin-right: 10px; } diff --git a/jero-web/src/components/ImportFile/index.vue b/jero-web/src/components/ImportFile/index.vue index 43ea9932a..44710eaad 100644 --- a/jero-web/src/components/ImportFile/index.vue +++ b/jero-web/src/components/ImportFile/index.vue @@ -122,7 +122,7 @@ if (this.isTrue) { this.$emit('getList',info.file.response.result) } else { - eventBUs.$emit('searchReset') + eventBUs.$emit('searchGetData') } this.$message.success(this.$t('OperationSuccessful')) } diff --git a/jero-web/src/components/OcrAddForm/index.vue b/jero-web/src/components/OcrAddForm/index.vue index e687fcaf9..c49a84c67 100644 --- a/jero-web/src/components/OcrAddForm/index.vue +++ b/jero-web/src/components/OcrAddForm/index.vue @@ -296,7 +296,7 @@ postAction(url, this.formInline).then((res) => { if (res.success) { this.$message.success(this.$t('OperationSuccessful')) - eventBUs.$emit('searchReset') + eventBUs.$emit('searchGetData') this.$emit('addFormClick') } else { this.$message.warning(this.$t(res.message)) diff --git a/jero-web/src/components/OcrTable/index.vue b/jero-web/src/components/OcrTable/index.vue index eca906c74..ab2772555 100644 --- a/jero-web/src/components/OcrTable/index.vue +++ b/jero-web/src/components/OcrTable/index.vue @@ -124,6 +124,10 @@ this.getData() this.getTableList() }) + eventBUs.$on('searchGetData', target => { + this.getData() + this.getTableList() + }) this.getData() this.getTableList() this.userData = this.userInfo() diff --git a/jero-web/src/components/PersonnelSelectionAll/index.vue b/jero-web/src/components/PersonnelSelectionAll/index.vue new file mode 100644 index 000000000..9a050d228 --- /dev/null +++ b/jero-web/src/components/PersonnelSelectionAll/index.vue @@ -0,0 +1,318 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/components/SplitDetailTable/index.vue b/jero-web/src/components/SplitDetailTable/index.vue index 6d2e41c15..ea4f0014d 100644 --- a/jero-web/src/components/SplitDetailTable/index.vue +++ b/jero-web/src/components/SplitDetailTable/index.vue @@ -136,12 +136,18 @@ this.getData() this.getTableList() }) + eventBUs.$on('searchGetData', target => { + this.selectedRowKeys = [] + this.getData() + this.getTableList() + }) this.getData() this.getTableList() }, beforeDestroy(){ eventBUs.$off('searchQuery') eventBUs.$off('searchReset') + eventBUs.$off('searchGetData') }, methods: { diff --git a/jero-web/src/components/SplitTable/DocTable.vue b/jero-web/src/components/SplitTable/DocTable.vue index dc12b047b..a6746e610 100644 --- a/jero-web/src/components/SplitTable/DocTable.vue +++ b/jero-web/src/components/SplitTable/DocTable.vue @@ -106,7 +106,7 @@ } }, mounted() { - eventBUs.$on('searchQuery', search => { + eventBUs.$on('searchQueryOne', search => { Object.keys(search).forEach(res => { if (search[res] instanceof Array) { search[res] = search[res].join(',') @@ -116,7 +116,7 @@ this.getData() this.getTableList() }) - eventBUs.$on('searchReset', target => { + eventBUs.$on('searchResetOne', target => { this.searchParmes = {} this.selectedRowKeys = [] this.getData() @@ -126,8 +126,8 @@ this.getTableList() }, beforeDestroy(){ - eventBUs.$off('searchQuery') - eventBUs.$off('searchReset') + eventBUs.$off('searchQueryOne') + eventBUs.$off('searchResetOne') }, methods: { diff --git a/jero-web/src/components/SplitTable/index.vue b/jero-web/src/components/SplitTable/index.vue index 10b6a4a38..5b4fbcdeb 100644 --- a/jero-web/src/components/SplitTable/index.vue +++ b/jero-web/src/components/SplitTable/index.vue @@ -129,6 +129,11 @@ this.getData() this.getTableList() }) + eventBUs.$on('searchGetData', target => { + this.selectedRowKeys = [] + this.getData() + this.getTableList() + }) this.getData() this.getTableList() this.userData = this.userInfo() @@ -136,6 +141,7 @@ beforeDestroy(){ eventBUs.$off('searchQuery') eventBUs.$off('searchReset') + eventBUs.$off('searchGetData') }, methods: { ...mapGetters(['userInfo']), diff --git a/jero-web/src/components/libraryAddForm/index.vue b/jero-web/src/components/libraryAddForm/index.vue index 90f7add64..73fae7f9f 100644 --- a/jero-web/src/components/libraryAddForm/index.vue +++ b/jero-web/src/components/libraryAddForm/index.vue @@ -335,7 +335,7 @@ if (this.formInline.id) { eventBUs.$emit('searchGetData') } else { - eventBUs.$emit('searchReset') + eventBUs.$emit('searchGetData') } this.$emit('addFormClick') diff --git a/jero-web/src/components/libraryPush/index.vue b/jero-web/src/components/libraryPush/index.vue index 05d1e547f..b07315fdd 100644 --- a/jero-web/src/components/libraryPush/index.vue +++ b/jero-web/src/components/libraryPush/index.vue @@ -63,15 +63,17 @@ departId: '', defaultExpandedKeys: [], submitLoading: false, - visibleTree: false + visibleTree: false, + flag: '' } }, mounted() { }, methods: { - getPush(data) { + getPush(data, flag) { this.tableKey = data + this.flag = flag this.searchModel = '' this.visible = true this.visibleTree = false @@ -99,10 +101,20 @@ this.visibleTree = false }, handleSubmit() { - let query = { - documentIds: this.tableKey.join(','), - userIds: this.userIds.join(','), - departIds: this.userIds.join(',') + let query = {} + if (this.flag) { + query = { + documentIds: this.tableKey.join(','), + userIds: this.userIds.join(','), + departIds: this.userIds.join(','), + flag: this.flag + } + } else { + query = { + documentIds: this.tableKey.join(','), + userIds: this.userIds.join(','), + departIds: this.userIds.join(',') + } } this.submitLoading = true this.confirmLoading = true diff --git a/jero-web/src/components/search/index.vue b/jero-web/src/components/search/index.vue index cf5a34acc..6184eda9e 100644 --- a/jero-web/src/components/search/index.vue +++ b/jero-web/src/components/search/index.vue @@ -191,7 +191,7 @@ searchQuery() { if (this.isDefault) { let startTime = moment(new Date()).format('YYYY-MM-DD') - let endTime = this.haflYear() + let endTime = this.getNowdate() if (this.queryParam['WarnTime'].length == 0) { this.queryParam['WarnTime'] = [startTime, endTime] } @@ -203,7 +203,8 @@ this.queryParam = {} if (this.isDefault) { let startTime = moment(new Date()).format('YYYY-MM-DD') - let endTime = this.haflYear() + let endTime = this.getNowdate() + console.log(endTime) this.queryParam['WarnTime'] = [startTime, endTime] this.queryParam = { ...this.queryParam } } @@ -225,26 +226,30 @@ } }) }, - haflYear() { - // 先获取当前时间 - var curDate = (new Date()).getTime() - // 将半年的时间单位换算成毫秒 - var halfYear = 365 / 2 * 24 * 3600 * 1000 - // 半年前的时间(毫秒单位) - var pastResult = curDate + halfYear - // 日期函数,定义起点为半年前 - var pastDate = new Date(pastResult) - var pastYear = pastDate.getFullYear() - var pastMonth = pastDate.getMonth() + 1 - var pastDay = pastDate.getDate() - if (pastMonth >= 1 && pastMonth <= 9) { - pastMonth = '0' + pastMonth + getNowdate(){ + var date_now = new Date()//获取当前时间 + var year = date_now.getFullYear()//获取当前时间的年份 + var month = date_now.getMonth()//获取当前时间的月份 + var day = date_now.getDate()//获取当前时间的日 + var days = new Date(year,month,0)//将获取到的年月赋值给days + days = days.getDate()//获取当前年月的日 + var year2 = year + var month2 = parseInt(month+7)//获取当前月份的1一个月以后的月份 + if(month2 > 12){ + year2 = parseInt(year2) + 1 + month2 = parseInt(month2) % 12 + }//考虑到12月要是获取一个月以后,就是一月,年份需要加一 ,一年没有13月,所以%12,取得来年1月 + var day2 = day + var days2 = new Date(year2,month2,0) + days2 = days2.getDate() + if(day2>days2){ + day2 = days2 + }//获取了当前年份的日和6个月以后的日,为的就是判断如果前一个月是有31号,后一个月没有,就将一个月以后的日期取到,赋值给day2 + if(month2 < 10){ + month2 = '0' + month2 } - if (pastDay >= 0 && pastDay <= 9) { - pastDay = '0' + pastDay - } - var endDate = pastYear + '-' + pastMonth + '-' + (pastDay + 1) - return endDate + var time = year2 + '-' + month2 + '-' + day2 + return time }, dateChange(item) { this.queryParam[item] = moment(this.queryParam[item]).format('YYYY-MM-DD') diff --git a/jero-web/src/components/searchalonetext/index.vue b/jero-web/src/components/searchalonetext/index.vue index 323765aa6..fe5d71cf0 100644 --- a/jero-web/src/components/searchalonetext/index.vue +++ b/jero-web/src/components/searchalonetext/index.vue @@ -179,11 +179,11 @@ export default { }, methods: { searchQuery() { - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(this.queryParam))) + eventBUs.$emit('searchQueryOne', JSON.parse(JSON.stringify(this.queryParam))) }, searchReset() { this.queryParam = {} - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(this.queryParam))) + eventBUs.$emit('searchQueryOne', JSON.parse(JSON.stringify(this.queryParam))) }, getSeach() { let params = { diff --git a/jero-web/src/components/tableDate/index.vue b/jero-web/src/components/tableDate/index.vue index 8234abf2b..ceb4c999a 100644 --- a/jero-web/src/components/tableDate/index.vue +++ b/jero-web/src/components/tableDate/index.vue @@ -132,6 +132,7 @@ beforeDestroy() { eventBUs.$off('searchQuery') eventBUs.$off('searchReset') + eventBUs.$off('searchGetData') }, methods: { rowClassName(record) { diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/countryCardRelease.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/countryCardRelease.vue index 99ee4012a..5d123152c 100644 --- a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/countryCardRelease.vue +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/countryCardRelease.vue @@ -96,10 +96,10 @@ {{!record.releaseStatus || record.releaseStatus == 'Draft' ? $t('release') :$t('withdraw')}} {{$t('edit')}} {{$t('delete')}} @@ -279,8 +279,7 @@ let idList = [] let selectedRowKeysRecord = JSON.parse(JSON.stringify(_this.selectedRowKeysRecord)) for (let i = 0; i < selectedRowKeysRecord.length; i++) { - if (selectedRowKeysRecord[i].createBy == _this.userInfo().username && - selectedRowKeysRecord[i].releaseStatus == 'Draft') { + if (selectedRowKeysRecord[i].releaseStatus == 'Draft') { idList.push(selectedRowKeysRecord[i].id) } } diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView.vue index 50b3336ed..4252096b5 100644 --- a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView.vue +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView.vue @@ -228,6 +228,9 @@ id: this.queryForm.praiseEO ? this.queryForm.praiseEO.id : undefined } putAction('/problemKnowledgeBase/problemKnowledgeBasePraiseEO/edit', query).then((res) => { + if (!this.queryForm.collectEO || !this.queryForm.collectEO.id) { + this.queryById() + } }) }, starClick() { @@ -247,6 +250,9 @@ id: this.queryForm.collectEO ? this.queryForm.collectEO.id : undefined } putAction('/problemKnowledgeBase/problemKnowledgeBaseCollectEO/edit', query).then((res) => { + if (!this.queryForm.collectEO || !this.queryForm.collectEO.id) { + this.queryById() + } }) }, clickButtonToUpload(item) { diff --git a/jero-web/src/views/dashboard/components/myList.vue b/jero-web/src/views/dashboard/components/myList.vue index 2ee3cfc6c..48c345398 100644 --- a/jero-web/src/views/dashboard/components/myList.vue +++ b/jero-web/src/views/dashboard/components/myList.vue @@ -10,7 +10,7 @@
- {{item.prcNum}} + {{item.prcName}} {{prcTypeName[item.prcType]}}
@@ -43,7 +43,9 @@ dataSource: [], loading: false, prcTypeName: { - 1: this.$t('taskConfirmationProcess') + 1: this.$t('taskConfirmationProcess'), + 5:this.$t('collectionOfRegulatoryOpinionsProcess'), + 6:this.$t('regulatoryTechnologyAssessmentProcess') } } }, diff --git a/jero-web/src/views/documentManage/collection/components/problemKnowledgeBaseList.vue b/jero-web/src/views/documentManage/collection/components/problemKnowledgeBaseList.vue index b998e89aa..8d9566e23 100644 --- a/jero-web/src/views/documentManage/collection/components/problemKnowledgeBaseList.vue +++ b/jero-web/src/views/documentManage/collection/components/problemKnowledgeBaseList.vue @@ -35,9 +35,9 @@
-
+
- +
@@ -117,7 +117,7 @@ if (value.length > 0) { this.conList.forEach(val => { value.forEach(res => { - if (res === val.id) { + if (res === val.collectEO.id) { val.checked = true } }) @@ -183,7 +183,7 @@ this.$confirm({ content: _this.$t('confirmCancelCollection'), onOk() { - deleteAction(_this.url.deleteBatch, { ids: val.id }).then((res) => { + deleteAction(_this.url.deleteBatch, { ids: val.collectEO.id }).then((res) => { if (res.success) { _this.$message.success(_this.$t('OperationSuccessful')) _this.getList() @@ -216,13 +216,13 @@ } this.loading = true getAction(this.url.getInfoList, query).then((res) => { - if (res.success) { + if (res.success && res.result) { if (res.result.current > 1 && res.result.records.length == 0) { this.pageNo = 1 this.getList() return } - this.conList = res.result.records + this.conList = res.result ? res.result.records : [] if (this.conList && this.conList.length > 0) { this.conList.forEach(val => { if (val.content) { @@ -233,7 +233,7 @@ if (this.checkboxList && this.checkboxList.length > 0) { let contentList = [] for (let j = 0; j < this.conList.length; j++) { - contentList.push(this.conList[j].id) + contentList.push(this.conList[j].collectEO.id) } this.checkboxList = this.checkboxList.filter(val => { return !contentList.join(',').includes(val) diff --git a/jero-web/src/views/documentManage/collection/index.vue b/jero-web/src/views/documentManage/collection/index.vue index 5bb40aa2b..0e0ba89a0 100644 --- a/jero-web/src/views/documentManage/collection/index.vue +++ b/jero-web/src/views/documentManage/collection/index.vue @@ -1,8 +1,8 @@ diff --git a/jero-web/src/views/documentManage/ocr/index.vue b/jero-web/src/views/documentManage/ocr/index.vue index ed28b1112..09d7b89e6 100644 --- a/jero-web/src/views/documentManage/ocr/index.vue +++ b/jero-web/src/views/documentManage/ocr/index.vue @@ -285,7 +285,7 @@ .then( (res) =>{ if (res.data.success) { this.$message.success(this.$t('OperationSuccessful')) - eventBUs.$emit('searchReset') + eventBUs.$emit('searchGetData') }else{ this.$message.warning(this.$t('operationFailed')) } @@ -362,7 +362,7 @@ getAction(`ocr/ocrRecord/delete`,params).then(res=> { if(res.success){ this.$message.success(this.$t('OperationSuccessful')) - eventBUs.$emit('searchReset') + eventBUs.$emit('searchGetData') }else{ this.$message.warning(this.$t('operationFailed')) } diff --git a/jero-web/src/views/documentManage/ocr/modules/DocTable.vue b/jero-web/src/views/documentManage/ocr/modules/DocTable.vue index 48e2e80e8..f0b0627ab 100644 --- a/jero-web/src/views/documentManage/ocr/modules/DocTable.vue +++ b/jero-web/src/views/documentManage/ocr/modules/DocTable.vue @@ -225,7 +225,7 @@ postAction(`ocr/OcrRestful/addOcrRecord`, params).then(res => { if (res.success) { this.$message.success(this.$t('OperationSuccessful')) - eventBUs.$emit('searchReset') + eventBUs.$emit('searchGetData') this.visible = false; this.$emit('visible',false) } else { diff --git a/jero-web/src/views/documentManage/splitting/index.vue b/jero-web/src/views/documentManage/splitting/index.vue index 4a8283bd1..6ca1cbee4 100644 --- a/jero-web/src/views/documentManage/splitting/index.vue +++ b/jero-web/src/views/documentManage/splitting/index.vue @@ -1,39 +1,39 @@ \ No newline at end of file diff --git a/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue b/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue index dc02a0bb9..38a09b877 100644 --- a/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue +++ b/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue @@ -48,6 +48,7 @@
@@ -774,7 +775,7 @@ info_id: this.infoId, } - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam))) + eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam))) // eventBUs.$emit('searchReset') this.$emit('sumber') }else{ diff --git a/jero-web/src/views/documentManage/splitting/modules/SplitDetail.vue b/jero-web/src/views/documentManage/splitting/modules/SplitDetail.vue index b3807a125..0c5a95218 100644 --- a/jero-web/src/views/documentManage/splitting/modules/SplitDetail.vue +++ b/jero-web/src/views/documentManage/splitting/modules/SplitDetail.vue @@ -723,7 +723,7 @@ info_id: this.infoId } - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam))) + eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam))) // eventBUs.$emit('searchReset') } else { this.$message.warning(this.$t('operationFailed')) @@ -771,7 +771,7 @@ } this.loadMenuData() - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam))) + eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam))) } let attIdList = [] if (data && data.length > 0) { @@ -819,7 +819,7 @@ }, //模板下载 handleDownManage() { - let name = this.$t('documentSplitTemplate') + '.xls' + let name = this.$t('documentSplitTemplate') + '.xlsx' downloadFile('split/sarFileSplitItems/exportTemplate', name, {}) }, //合并条款 @@ -853,7 +853,7 @@ info_id: this.infoId } - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam))) + eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam))) // eventBUs.$emit('searchReset') this.selectedRowKeys = [] } else { @@ -895,7 +895,7 @@ info_id: this.infoId } - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam))) + eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam))) }, //批量删除 handleBatCancel() { @@ -934,7 +934,7 @@ info_id: this.infoId } - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam))) + eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam))) this.selectClear() // eventBUs.$emit('searchReset') } else { @@ -1004,7 +1004,7 @@ info_id: this.infoId } - eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam))) + eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam))) // eventBUs.$emit('searchReset') } else { this.$message.warning(this.$t('operationFailed')) diff --git a/jero-web/src/views/documentManage/splitting/modules/SplitText.vue b/jero-web/src/views/documentManage/splitting/modules/SplitText.vue index db7c64dfc..b5108ebad 100644 --- a/jero-web/src/views/documentManage/splitting/modules/SplitText.vue +++ b/jero-web/src/views/documentManage/splitting/modules/SplitText.vue @@ -1,76 +1,81 @@