From 8baa8c52c466e3d940d39a5c5e0bb97da871a160 Mon Sep 17 00:00:00 2001 From: alwaysfrin <39822157+alwaysfrin@users.noreply.github.com> Date: Thu, 4 Apr 2019 11:30:09 +0800 Subject: [PATCH 01/17] =?UTF-8?q?hql=E5=B0=81=E8=A3=85=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DemoDdlPackController.java | 9 +++++++++ .../apiservice/serviceimpl/busi/TestService.java | 23 ++++++++++++++-------- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java index f531ac8..a1a095d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java @@ -6,11 +6,13 @@ import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.base.tool.HqlPack; import cn.estsh.i3plus.pojo.platform.bean.SysUser; +import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; @@ -82,4 +84,11 @@ public class DemoDdlPackController { .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()) .setResultList(list); } + + @GetMapping(value="/testpager") + @ApiOperation(value="ddl测试分页") + public BaseResultBean testDdlPager(SysUser user,Pager pager){ + ListPager listPager = testService.querySysUserByPager(user,pager); + return ResultBean.success("操作成功").setListPager(listPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java index 7d3b262..40d5e4d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java @@ -60,14 +60,21 @@ public class TestService implements ITestService { ListPager list = new ListPager(sysUserRDao.findByHqlWherePage(hqlPack + user.orderBy(), pager), pager); LOGGER.info("size:{},pager:{}",list.getObjectList().size(),list.getObjectPager()); - DdlPackBean packBean = new DdlPackBean(); - DdlPreparedPack.getNumEqualPackOverZero(CommonEnumUtil.IS_VAILD.VAILD.getValue(),"isValid",packBean); - DdlPreparedPack.getNumEqualPackOverZero(user.getDepartmentId(),"departmentId",packBean); - DdlPreparedPack.getNumEqualPackOverZero(user.getUserStatus(),"userStatus",packBean); - DdlPreparedPack.getStringLikerPack(user.getUserName(),"userName",packBean); - DdlPreparedPack.getStringLikerPack(user.getUserLoginName(),"userLoginName",packBean); - DdlPreparedPack.getStringLikerPack(user.getUserEmail(),"userEmail",packBean); - DdlPreparedPack.getStringLikerPack(user.getUserPhone(),"userPhone",packBean); +// DdlPackBean packBean = new DdlPackBean(); +// DdlPreparedPack.getNumEqualPackOverZero(CommonEnumUtil.IS_VAILD.VAILD.getValue(),"isValid",packBean); +// DdlPreparedPack.getNumEqualPackOverZero(user.getDepartmentId(),"departmentId",packBean); +// DdlPreparedPack.getNumEqualPackOverZero(user.getUserStatus(),"userStatus",packBean); +// DdlPreparedPack.getStringLikerPack(user.getUserName(),"userName",packBean); +// DdlPreparedPack.getStringLikerPack(user.getUserLoginName(),"userLoginName",packBean); +// DdlPreparedPack.getStringLikerPack(user.getUserEmail(),"userEmail",packBean); +// DdlPreparedPack.getStringLikerPack(user.getUserPhone(),"userPhone",packBean); + + DdlPackBean packBean = CoreHqlPack.packDdlSysUser(user); + System.out.println("getPackedHql=="+packBean.getPackedHql()); + System.out.println("getPackedHqlAll=="+packBean.getPackedHqlAll()); + System.out.println("getHqlAppend=="+packBean.getHqlAppend()); + System.out.println("getWhereAppend=="+packBean.getWhereAppend()); + System.out.println("getOrderByStr=="+packBean.getOrderByStr()); pager = PagerHelper.getPager(pager, sysUserRDao.findByHqlWhereCount(packBean)); list = new ListPager(sysUserRDao.findByHqlWherePage(packBean, pager), pager); From b8a7bde452f58162bec791418e8c198d2b355aaf Mon Sep 17 00:00:00 2001 From: Silliter Date: Thu, 4 Apr 2019 19:06:42 +0800 Subject: [PATCH 02/17] =?UTF-8?q?=E6=89=93=E5=8D=B0=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/apiservice/serviceimpl/busi/SysLabelTemplateService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java index 61e849d..9f61b03 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java @@ -115,10 +115,10 @@ public class SysLabelTemplateService implements ISysLabelTemplateService { // 更新打印模板 sysLabelTemplateRDao.update(sysLabelTemplate); - int effect = sysLabelTemplateParamRDao.deleteByProperty("templateId", sysLabelTemplate.getId()); + sysLabelTemplateParamRDao.deleteByProperty("templateId", sysLabelTemplate.getId()); // 判断模板参数是否存在,存在就进行数据操作 - if (StringUtils.isNotBlank(sysLabelTemplate.getParamsPack()) && effect > 1) { + if (StringUtils.isNotBlank(sysLabelTemplate.getParamsPack())) { // 更新打印模板参数 SysLabelTemplateParam templateParam; String[] paramArr = sysLabelTemplate.getParamsPack().trim().split(","); From 733d41578c7c3373413af614367caffc26ea7485 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Thu, 4 Apr 2019 18:58:16 +0800 Subject: [PATCH 03/17] =?UTF-8?q?=E8=A1=A8=E5=8D=95=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BC=98=E5=8C=96=20=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=BE=AE=E6=9C=8D=E6=8E=A5=E5=8F=A3=E4=BC=98=E5=8C=96=20?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E5=A1=AB=E5=85=85=E5=8D=95=E5=85=83=E6=B5=8B?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/api/iservice/busi/ISysToolService.java | 14 ++++ .../controller/base/WhiteController.java | 76 ++++++++++++++++++++-- .../serviceimpl/busi/SysToolService.java | 34 +++++++--- .../serviceimpl/busi/TestAutoFillData.java | 54 +++++++++++++++ .../serviceimpl/busi/TestExcelPermission.java | 11 +--- 5 files changed, 167 insertions(+), 22 deletions(-) create mode 100644 modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestAutoFillData.java diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysToolService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysToolService.java index 96447a9..0e4712d 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysToolService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysToolService.java @@ -24,6 +24,20 @@ public interface ISysToolService { SysTool insertSysTool(SysTool tool); /** + * 保存硬件 + * @param tool + */ + @ApiOperation(value = "保存硬件信息") + SysTool saveSysTool(SysTool tool); + + /** + * 保存硬件 + * @param tool + */ + @ApiOperation(value = "保存硬件信息") + SysTool insertTestSysTool(SysTool tool,Boolean autoFill); + + /** * 修改硬件 * @param tool */ diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java index 101cc9e..ec608e9 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java @@ -4,17 +4,22 @@ import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService; import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginService; import cn.estsh.i3plus.core.api.iservice.busi.*; import cn.estsh.i3plus.platform.common.tool.ServletRequestTool; +import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; +import cn.estsh.i3plus.pojo.base.bean.BaseConstWords; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SessionUser; +import cn.estsh.i3plus.pojo.platform.bean.SysDictionary; +import cn.estsh.i3plus.pojo.platform.bean.SysFile; import cn.estsh.i3plus.pojo.platform.bean.SysLogUserLogin; import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; +import cn.estsh.impp.framework.boot.fastdfs.FastDFSClient; import cn.estsh.impp.framework.boot.util.ImppRedis; import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ValidatorBean; @@ -24,10 +29,7 @@ import org.apache.shiro.authc.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -63,6 +65,15 @@ public class WhiteController extends CoreBaseController { @Autowired private ISystemInitService systemInitService; + @Autowired + private ISysFileService sysFileService; + + @Autowired + private ISysDictionaryService dictionaryService; + + @Autowired + private FastDFSClient dfsClient; + @Resource(name="redisRes") private ImppRedis redisRes; @@ -215,4 +226,61 @@ public class WhiteController extends CoreBaseController { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } + + @PostMapping(value = "/sys-file/insert") + @ApiOperation(value = "新增文件资源", notes = "新增文件资源") + public ResultBean insertSysFile(@RequestBody SysFile sysFile){ + try { + // 条件验证 + ValidatorBean.beginValid(sysFile) + .notNull("dfsFileName", sysFile.getDfsFileName()) + .notNull("dfsGroupName", sysFile.getDfsGroupName()) + .notNull("fileSoftType", sysFile.getFileSoftType()) + .notNull("fileOriginalName", sysFile.getFileOriginalName()); + + // 文件类型验证 + SysDictionary dictionary = dictionaryService.getSysDictionaryByParentCodeAndCode(BaseConstWords.DICTIONARY_FILE_TYPE, + StringTool.getStringFileSuffix(sysFile.getFileOriginalName(), false)); + if(dictionary == null){ + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_FORMAT.getCode()) + .setErrorDetail("文件格式不支持") + .setErrorSolution("请到字典管理中添加文件类型") + .build(); + } + + // 初始化数据 + sysFile.setFileTypeId(dictionary.getId()); + sysFile.setFileTypeName(dictionary.getName()); + + sysFile = sysFileService.insertSysFile(sysFile); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysFile); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + /** + * 根据文件代码查询文件信息 + * @param fileCode 文件代码 + * @return 处理结果 + */ + @GetMapping("/sys-file/get-file-code/{code}") + @ApiOperation(value = "根据文件代码查询文件信息") + public ResultBean getSysFileByFileCode(@PathVariable("code") String fileCode) { + try { + // 条件验证 + ValidatorBean.checkNotNull(fileCode, "文件代码不能为空"); + SysFile sysFile = sysFileService.getSysFileByFileCode(fileCode); + + return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysFile); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolService.java index 66dcc19..077fec0 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolService.java @@ -12,6 +12,7 @@ import cn.estsh.i3plus.pojo.platform.repository.SysToolRepository; import cn.estsh.i3plus.pojo.platform.repository.SysToolTypeRepository; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.util.ValidatorBean; +import com.alibaba.fastjson.JSON; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -46,18 +47,35 @@ public class SysToolService implements ISysToolService { @ApiOperation(value = "新增硬件信息") public SysTool insertSysTool(SysTool tool) { // 查询硬件类型名称 - //todo 压测关闭校验提高处理速度 -// LOGGER.info("硬件类型 TOOL_TYPE :{}", tool); -// SysToolType toolType = toolTypeRDao.getById(tool.getToolTypeId()); -// ValidatorBean.checkNotNull(toolType); -// -// tool.setToolTypeNameRdd(toolType.getName()); -// -// LOGGER.info("硬件 TOOL tool:{}",tool); + LOGGER.info("硬件类型 TOOL_TYPE :{}", tool); + SysToolType toolType = toolTypeRDao.getById(tool.getToolTypeId()); + ValidatorBean.checkNotNull(toolType); + + tool.setToolTypeNameRdd(toolType.getName()); + + LOGGER.info("硬件 TOOL tool:{}",tool); return toolRDao.insert(tool); } @Override + public SysTool saveSysTool(SysTool tool) { + return toolRDao.save(tool); + } + + @Override + public SysTool insertTestSysTool(SysTool tool, Boolean autoFill) { + SysTool temp; + if(autoFill == null){ + temp = toolRDao.insert(tool); + } else if (autoFill) { + temp = toolRDao.insert(tool, autoFill); + } else { + temp = toolRDao.insert(tool, autoFill); + } + return temp; + } + + @Override @ApiOperation(value = "删除硬件信息",notes = "根据 ID 删除硬件信息") public int deleteSysToolById(Long id) { LOGGER.info("硬件 TOOL id:{}",id); diff --git a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestAutoFillData.java b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestAutoFillData.java new file mode 100644 index 0000000..fa8316a --- /dev/null +++ b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestAutoFillData.java @@ -0,0 +1,54 @@ +package test.cn.estsh.i3plus.core.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.core.api.iservice.busi.ISysToolService; +import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase; +import cn.estsh.i3plus.pojo.platform.bean.SysTool; +import cn.estsh.i3plus.pojo.platform.repository.SysToolRepository; +import com.alibaba.fastjson.JSON; +import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.annotation.Transient; + +/** + * @Description : + * @Reference : + * @Author : yunhao + * @CreateDate : 2019-04-04 16:53 + * @Modify: + **/ +public class TestAutoFillData extends TestBase { + + @Autowired + private ISysToolService sysToolService; + + @Autowired + private SysToolRepository sysToolRepository; + + @Test + @Transient + public void testAutoFillDataInsert(){ + SysTool sysTool = new SysTool(); + // 自动注入默认值 + System.out.println(JSON.toJSONString(sysTool)); + sysTool = sysToolService.insertTestSysTool(sysTool, true); + System.out.println(JSON.toJSONString(sysTool)); + + // 不注入默认值 + sysTool = new SysTool(); + System.out.println(JSON.toJSONString(sysTool)); + sysTool = sysToolService.insertTestSysTool(sysTool, false); + System.out.println(JSON.toJSONString(sysTool)); + + // 默认insert不显示设置 + sysTool = new SysTool(); + System.out.println(JSON.toJSONString(sysTool)); + sysTool = sysToolService.insertTestSysTool(sysTool,null); + System.out.println(JSON.toJSONString(sysTool)); + } + + public void testAutoFilDataSave(){ + SysTool sysTool = new SysTool(); + sysToolService.saveSysTool(sysTool); + } + +} diff --git a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestExcelPermission.java b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestExcelPermission.java index 55718e7..221660d 100644 --- a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestExcelPermission.java +++ b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestExcelPermission.java @@ -3,23 +3,14 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.platform.common.tool.EncryptTool; import cn.estsh.i3plus.pojo.platform.bean.*; import cn.estsh.i3plus.pojo.platform.repository.*; -import com.alibaba.fastjson.JSON; -import io.swagger.models.auth.In; import org.apache.poi.ss.usermodel.Row; -import org.apache.poi.ss.usermodel.Workbook; -import org.apache.poi.ss.usermodel.WorkbookFactory; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; -import org.jdom2.Document; -import org.jdom2.JDOMException; -import org.jdom2.input.SAXBuilder; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import java.io.File; -import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; @@ -27,7 +18,7 @@ import java.util.List; /** * 系统数据初始化 */ -public class TestExcelPermission extends TestBase { +public class TestExcelPermission extends cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase { //public class TestExcelPermission { public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelPermission.class); From cc0e350e73132df55355da4a39136d0263ea74d3 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Mon, 8 Apr 2019 18:19:02 +0800 Subject: [PATCH 04/17] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/core/api/iservice/busi/ISysUserService.java | 8 ++++++++ .../apiservice/controller/busi/SysConfigController.java | 4 ++-- .../apiservice/controller/busi/SysMessageController.java | 12 ++++++++++++ .../core/apiservice/mq/MessageLetterQueueReceiver.java | 6 ------ .../core/apiservice/mq/MessageMailQueueReceiver.java | 6 +----- .../i3plus/core/apiservice/mq/ScheduleQueueReceiver.java | 14 +++++++++++++- .../core/apiservice/serviceimpl/busi/SysUserService.java | 9 +++++++++ 7 files changed, 45 insertions(+), 14 deletions(-) diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java index 7f3ce33..a32fc86 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java @@ -227,4 +227,12 @@ public interface ISysUserService { */ @ApiOperation(value = "封装用户信息",notes = "封装登录完成后的用户信息(角色、权限、部门、组织、岗位)") SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode); + + /** + * 根据id查询用户信息 + * @param ids 用户id + * @return 查询结果 + */ + @ApiOperation(value = "根据id查询用户信息") + List findSysUserByIds(Long[] ids); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java index fe1e6a6..baf83ce 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java @@ -252,8 +252,8 @@ public class SysConfigController extends CoreBaseController { mailUtil.setTo(mailConfig.getTestTo()); mailUtil.send(); return ResultBean.success("测试邮件已发送").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(MessagingException messageExcep){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(messageExcep); + } catch(MessagingException messageExcep){ + return ResultBean.fail("邮件配置错误:" + messageExcep.getMessage()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); }catch(Exception e){ diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java index b5da61d..9fe97c9 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java @@ -1,6 +1,7 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; @@ -29,6 +30,7 @@ import org.springframework.web.bind.annotation.*; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; +import java.util.stream.Collectors; /** * @Description : 消息管理服务 @@ -46,6 +48,9 @@ public class SysMessageController extends CoreBaseController { @Autowired private ISysMessageService sysMessageService; + @Autowired + private ISysUserService sysUserService; + @PostMapping(value = "/sys-message/insert") @ApiOperation(value = "新增消息",notes = "新增消息") public ResultBean insertSysMessage(SysMessage sysMessage){ @@ -65,6 +70,13 @@ public class SysMessageController extends CoreBaseController { sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue()); sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()); + // 设置收件人名称 + String[] messageReceiver = sysMessage.getMessageReceiversId().split(","); + String receiversName = sysUserService.findSysUserByIds(StringTool.getArrayLong(messageReceiver)) + .stream().map(e -> e.getUserName()).collect(Collectors.joining(",")); + + sysMessage.setMessageReceiversNameRdd(receiversName); + sysMessageService.doSendSysMessage(sysMessage); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java index ca3dc62..ea7ffa5 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java @@ -74,7 +74,6 @@ public class MessageLetterQueueReceiver { List userList = personnelService.findSysUserByIds(StringTool.getArrayLong(userIds)); if(userList != null && userList.size() > 0){ - List names = new ArrayList<>(userList.size()); List insertList = new ArrayList<>(userList.size()); SysRefUserMessage refUserMessage; @@ -90,7 +89,6 @@ public class MessageLetterQueueReceiver { refUserMessage.setReceiverTime(TimeTool.getNowTime(true)); refUserMessage.setIsUrgent(msg.getIsUrgent()); - names.add(user.getUserName()); insertList.add(refUserMessage); } @@ -102,10 +100,6 @@ public class MessageLetterQueueReceiver { MessageWebSocket.sendMessage(userMessage.getReceiverId(), MAPPER.writeValueAsString(userMessage)); } } - - // 更新冗余信息 - msg.setMessageReceiversNameRdd(StringUtils.join(names,",")); - sysMessageService.updateSysMessage(msg); } } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java index 1f6781a..55638d7 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java @@ -56,6 +56,7 @@ public class MessageMailQueueReceiver { if (msg.getMessageSendTime() == null) { msg.setMessageSendTime(TimeTool.getNowTime(true)); } + msg = sysMessageService.insertSysMessage(msg); // 设置邮件主题内容及收件人 @@ -79,14 +80,12 @@ public class MessageMailQueueReceiver { } else if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()) { // 收件人信息 String[] messageReceiver = msg.getMessageReceiversId().split(","); - String[] receiverName = new String[messageReceiver.length]; SysRefUserMessage refUserMessage; SysUser sysUser; for (int i = 0; i < messageReceiver.length; i++) { sysUser = sysUserService.getSysUserById(Long.parseLong(messageReceiver[i])); - receiverName[i] = sysUser.getUserName(); refUserMessage = new SysRefUserMessage(); refUserMessage.setMessageId(msg.getId()); @@ -103,9 +102,6 @@ public class MessageMailQueueReceiver { mailUtil.setTo(sysUser.getUserEmail()); mailUtil.send(); } - - msg.setMessageReceiversNameRdd(StringUtils.join(receiverName, ",")); - sysMessageService.updateSysMessage(msg); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java index 1c55c81..ec2797c 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java @@ -1,6 +1,8 @@ package cn.estsh.i3plus.core.apiservice.mq; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService; +import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; @@ -19,6 +21,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; import org.springframework.stereotype.Component; import java.io.IOException; +import java.util.stream.Collectors; /** * @Description : 定时任务通道业务处理 @@ -37,6 +40,9 @@ public class ScheduleQueueReceiver { private ISysTaskPlanService sysTaskPlanService; @Autowired + private ISysUserService sysUserService; + + @Autowired private RabbitTemplate rabbitTemplate; /** @@ -69,7 +75,7 @@ public class ScheduleQueueReceiver { && CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == taskPlan.getIsNotice()) { // 设置通知邮件内容 SysMessage sysMessage = new SysMessage(); - sysMessage.setMessageType(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue()); + sysMessage.setMessageType(taskPlan.getNoticeMethod()); sysMessage.setMessageSenderNameRdd("系统管理员"); sysMessage.setMessageTitle("任务计划失败通知"); sysMessage.setMessageContent( @@ -86,6 +92,12 @@ public class ScheduleQueueReceiver { sysMessage.setMessageReceiversNameRdd(taskPlan.getNoticeChannel()); }else{ sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()); + // 设置收件人名称 + String[] messageReceiver = taskPlan.getNoticeChannel().split(","); + String receiversName = sysUserService.findSysUserByIds(StringTool.getArrayLong(messageReceiver)) + .stream().map(e -> e.getUserName()).collect(Collectors.joining(",")); + + sysMessage.setMessageReceiversNameRdd(receiversName); } // 发送到对应处理队列 diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java index 521ddd8..74694fc 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java @@ -9,11 +9,13 @@ import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.EncryptTool; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.TimeTool; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.shirotoken.UserToken; +import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.base.tool.HqlPack; import cn.estsh.i3plus.pojo.platform.bean.*; import cn.estsh.i3plus.pojo.platform.repository.*; @@ -550,6 +552,13 @@ public class SysUserService implements ISysUserService { return sessionUser; } + @Override + public List findSysUserByIds(Long[] ids) { + DdlPackBean ddlPackBean = new DdlPackBean(); + DdlPreparedPack.getInPackArray(ids, "id", ddlPackBean); + return sysUserRDao.findByHqlWhere(ddlPackBean); + } + /** * 账号数据排序 * 创建时间 角色升序 From 8b4600606bab7e8f3f3dcc670b1b1dc7c90f0706 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Tue, 9 Apr 2019 17:44:23 +0800 Subject: [PATCH 05/17] =?UTF-8?q?=E7=BB=86=E8=8A=82=E4=BC=98=E5=8C=96=20bu?= =?UTF-8?q?g=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/base/WhiteController.java | 6 ++++- .../apiservice/mq/MessageLetterQueueReceiver.java | 30 +++++++++++----------- .../apiservice/mq/MessageMailQueueReceiver.java | 27 +++++++++---------- .../core/apiservice/mq/ScheduleQueueReceiver.java | 23 +++++++++-------- 4 files changed, 46 insertions(+), 40 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java index ec608e9..99e9173 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java @@ -120,7 +120,11 @@ public class WhiteController extends CoreBaseController { logout(); - SessionUser user = userService.queryUserLogin(loginName,loginPwd.trim(),languageCode); + // 去除前后空格 + loginName = loginName.trim(); + loginPwd = loginPwd.trim(); + + SessionUser user = userService.queryUserLogin(loginName,loginPwd,languageCode); String redisKey = CommonConstWords.USER_LOGIN_ERROR + "_" + user.getUser().getId(); redisCore.deleteKey(redisKey); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java index ea7ffa5..3cbbc8e 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java @@ -12,7 +12,6 @@ import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SysMessage; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage; import cn.estsh.i3plus.pojo.platform.bean.SysUser; -import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.rabbitmq.client.Channel; import org.apache.commons.lang3.StringUtils; @@ -42,10 +41,10 @@ public class MessageLetterQueueReceiver { private static final Logger LOGGER = LoggerFactory.getLogger(MessageLetterQueueReceiver.class); @Autowired - ISysMessageService sysMessageService; + private ISysMessageService sysMessageService; @Autowired - ISysUserService sysUserService; + private ISysUserService sysUserService; @Autowired private IPersonnelService personnelService; @@ -57,27 +56,28 @@ public class MessageLetterQueueReceiver { /** * 站内信处理队列 + * * @param msg * @param channel * @param message 发送:rabbitTemplate.convertAndSend(I3CoreQueueConfig.IMPP_MESSAGE_QUEUE, new SysMessage(....)); */ @RabbitListener(queues = PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE) public void processImppMessage(SysMessage msg, Channel channel, Message message) { - LOGGER.info("【MQ-{}】 数据接收成功:{}",PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, msg); + LOGGER.info("【MQ-{}】 数据接收成功:{}", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, msg); try { msg = sysMessageService.insertSysMessage(msg); if (!StringUtils.isBlank(msg.getMessageReceiversId())) { String[] userIds = msg.getMessageReceiversId().split(","); - if(userIds != null && userIds.length > 0){ + if (userIds != null && userIds.length > 0) { List userList = personnelService.findSysUserByIds(StringTool.getArrayLong(userIds)); - if(userList != null && userList.size() > 0){ + if (userList != null && userList.size() > 0) { List insertList = new ArrayList<>(userList.size()); SysRefUserMessage refUserMessage; - for (SysUser user : userList){ + for (SysUser user : userList) { refUserMessage = new SysRefUserMessage(); refUserMessage.setMessageId(msg.getId()); refUserMessage.setMessageTitleRdd(msg.getMessageTitle()); @@ -95,7 +95,7 @@ public class MessageLetterQueueReceiver { List refList = sysMessageService.insertSysRefUserMessage(insertList); // 站内信使用 Web Socket 推送 - if(refList != null && refList.size() > 0){ + if (refList != null && refList.size() > 0) { for (SysRefUserMessage userMessage : refList) { MessageWebSocket.sendMessage(userMessage.getReceiverId(), MAPPER.writeValueAsString(userMessage)); } @@ -106,21 +106,21 @@ public class MessageLetterQueueReceiver { // 消息处理完成 LOGGER.info("【MQ-{}】站内信{} DeliveryTag:{} 处理成功", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, - msg,message.getMessageProperties().getDeliveryTag()); + msg, message.getMessageProperties().getDeliveryTag()); channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); - }catch (IOException e){ - printErrorMessage(e,Exception.class, msg); + } catch (IOException e) { + printErrorMessage(e, Exception.class, msg); try { // 未成功处理,重新发送 - channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true); + channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, true); } catch (IOException e1) { e1.printStackTrace(); } } } - private void printErrorMessage(Exception e,Class zlass,SysMessage msg){ + private void printErrorMessage(Exception e, Class zlass, SysMessage msg) { Long time = System.currentTimeMillis(); LOGGER.error("【MQ-{}】{} 异常代码:{} 消息内容{},处理出错:{}", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, time, zlass, msg, e.getMessage()); e.printStackTrace(); @@ -129,13 +129,13 @@ public class MessageLetterQueueReceiver { SysMessage sysMessage = new SysMessage(); sysMessage.setMessageSenderNameRdd("系统管理员"); sysMessage.setMessageTitle("【IMPP-MQ异常】站内信消息推送失败"); - sysMessage.setMessageContent("推送站内信["+zlass+"]错误异常代码:"+time); + sysMessage.setMessageContent("推送站内信[" + zlass + "]错误异常代码:" + time); sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue()); sysMessage.setMessageSendTime(TimeTool.getNowTime(true)); sysMessage.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue()); sysMessage.setMessageReceiversNameRdd("yunhao.wang@estsh.com,wei.peng@estsh.com"); - rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage); + rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE, sysMessage); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java index 55638d7..c52872a 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java @@ -35,24 +35,25 @@ public class MessageMailQueueReceiver { private static final Logger LOGGER = LoggerFactory.getLogger(MessageMailQueueReceiver.class); @Autowired - ISysMessageService sysMessageService; + private ISysMessageService sysMessageService; @Autowired - ISysUserService sysUserService; + private ISysUserService sysUserService; @Autowired - ISysConfigService sysConfigService; + private ISysConfigService sysConfigService; @Autowired - MailUtil mailUtil; + private MailUtil mailUtil; /** * 系统邮件处理队列 - * @param msg + * + * @param msg 系统消息信息 * @param channel * @param message */ @RabbitListener(queues = PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE) public void processImppMail(SysMessage msg, Channel channel, Message message) { try { - LOGGER.info("【MQ-IMPP_MESSAGE_MAIL_QUEUE】数据接收成功:{}",msg); + LOGGER.info("【MQ-IMPP_MESSAGE_MAIL_QUEUE】数据接收成功:{}", msg); if (msg.getMessageSendTime() == null) { msg.setMessageSendTime(TimeTool.getNowTime(true)); } @@ -65,16 +66,16 @@ public class MessageMailQueueReceiver { mailUtil.setContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.valueOfDescription(msg.getMessageContentType())); mailUtil.setBody(msg.getMessageContent()); - if(msg.getMessageReceiverType() != null){ - if(msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.URGENT.getValue()){ + if (msg.getMessageReceiverType() != null) { + if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.URGENT.getValue()) { // 判断是否为系统紧急提示 微服注册状态提示 mailUtil.setTo(sysConfigService.getSysConfigByCode(PlatformConstWords.CONTACT_MAIL).getConfigValue()); // 次数过于频繁 // mailUtil.send(); - } else if(msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue()){ + } else if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue()) { //判断是否为外部邮件 - mailUtil.setTo(StringUtils.split(msg.getMessageReceiversNameRdd(),",")); + mailUtil.setTo(StringUtils.split(msg.getMessageReceiversNameRdd(), ",")); mailUtil.send(); } else if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()) { @@ -106,16 +107,16 @@ public class MessageMailQueueReceiver { } //信息已处理 - channel.basicAck(message.getMessageProperties().getDeliveryTag(),false); + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); } catch (Exception e) { - LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错:{}",e.getMessage(),e); + LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错:{}", e.getMessage(), e); //丢弃这条消息 try { // 未成功处理,重新发送 //channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true); //todo 此处对邮件持久化,通过参数设置,是否还需要重复重新发送 // 改为接收成功 - channel.basicAck(message.getMessageProperties().getDeliveryTag(),false); + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); } catch (IOException e1) { e1.printStackTrace(); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java index ec2797c..2e2c397 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java @@ -47,6 +47,7 @@ public class ScheduleQueueReceiver { /** * 定时任务通道处理 + * * @param logTaskTime * @param channel * @param message @@ -54,9 +55,9 @@ public class ScheduleQueueReceiver { @RabbitListener(queues = PlatformConstWords.IMPP_SCHEDULE_QUEUE) public void processSchedule(SysLogTaskTime logTaskTime, Channel channel, Message message) { try { - LOGGER.info("【MQ-IMPP_SCHEDULE_QUEUE】数据接收成功:{}",logTaskTime); + LOGGER.info("【MQ-IMPP_SCHEDULE_QUEUE】数据接收成功:{}", logTaskTime); // 跟新最后执行时间 及 任务状态 - SysTaskPlan taskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(logTaskTime.getName(),logTaskTime.getGroupName()); + SysTaskPlan taskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(logTaskTime.getName(), logTaskTime.getGroupName()); if (taskPlan != null) { taskPlan.setLastRunDateTime(logTaskTime.getCreateDatetime()); taskPlan.setTaskPlanExecNum(taskPlan.getTaskPlanExecNumValue() + 1); @@ -80,7 +81,7 @@ public class ScheduleQueueReceiver { sysMessage.setMessageTitle("任务计划失败通知"); sysMessage.setMessageContent( String.format("

管理员 您好:

任务计划(Name: %s,GroupName: %s)执行失败,详细信息请查看定时任务日志(ID: %s).
", - taskPlan.getName(),taskPlan.getGroupName(),logTaskTime.getId()) + taskPlan.getName(), taskPlan.getGroupName(), logTaskTime.getId()) ); sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue()); sysMessage.setMessageSendTime(TimeTool.getNowTime(true)); @@ -90,7 +91,7 @@ public class ScheduleQueueReceiver { if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == taskPlan.getIsInternalUser()) { sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue()); sysMessage.setMessageReceiversNameRdd(taskPlan.getNoticeChannel()); - }else{ + } else { sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()); // 设置收件人名称 String[] messageReceiver = taskPlan.getNoticeChannel().split(","); @@ -101,22 +102,22 @@ public class ScheduleQueueReceiver { } // 发送到对应处理队列 - if(taskPlan.getNoticeMethod() != null && ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()){ - rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage); - }else{ - rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage); + if (taskPlan.getNoticeMethod() != null && ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()) { + rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE, sysMessage); + } else { + rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, sysMessage); } } } //信息已处理 - channel.basicAck(message.getMessageProperties().getDeliveryTag(),false); + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); } catch (IOException e) { - LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错:{}",e.getMessage(),e); + LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错:{}", e.getMessage(), e); //丢弃这条消息 try { // 未成功处理,重新发送 - channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true); + channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, true); } catch (IOException e1) { e1.printStackTrace(); } From 62b68dfffa452cbf61de7eb685d50c598b1fcde1 Mon Sep 17 00:00:00 2001 From: "wei.peng" Date: Wed, 10 Apr 2019 15:32:35 +0800 Subject: [PATCH 06/17] =?UTF-8?q?Git=20=E8=BF=87=E6=BB=A4=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index c3d6523..183e0fd 100644 --- a/.gitignore +++ b/.gitignore @@ -7,8 +7,8 @@ out gen target .idea -.iml -.jar -.class +*.iml +*.jar +*.class .md -.log \ No newline at end of file +*.log \ No newline at end of file From 52a826058c3045b5d7ccb2ccd6eb34d3b98e2852 Mon Sep 17 00:00:00 2001 From: jiajack Date: Thu, 11 Apr 2019 14:58:23 +0800 Subject: [PATCH 07/17] =?UTF-8?q?=E5=88=A0=E9=99=A4iml=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- i3plus-core.iml | 12 - modules/i3plus-core-api/i3plus-core-api.iml | 95 ------- .../i3plus-core-apiservice.iml | 298 --------------------- 3 files changed, 405 deletions(-) delete mode 100644 i3plus-core.iml delete mode 100644 modules/i3plus-core-api/i3plus-core-api.iml delete mode 100644 modules/i3plus-core-apiservice/i3plus-core-apiservice.iml diff --git a/i3plus-core.iml b/i3plus-core.iml deleted file mode 100644 index f409c0e..0000000 --- a/i3plus-core.iml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/i3plus-core-api/i3plus-core-api.iml b/modules/i3plus-core-api/i3plus-core-api.iml deleted file mode 100644 index f42f64d..0000000 --- a/modules/i3plus-core-api/i3plus-core-api.iml +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/i3plus-core-apiservice/i3plus-core-apiservice.iml b/modules/i3plus-core-apiservice/i3plus-core-apiservice.iml deleted file mode 100644 index ffb866e..0000000 --- a/modules/i3plus-core-apiservice/i3plus-core-apiservice.iml +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file From a44320d7ea311a87e18f522a7cee2a65bd9010ec Mon Sep 17 00:00:00 2001 From: "wei.peng" Date: Fri, 12 Apr 2019 09:19:56 +0800 Subject: [PATCH 08/17] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E8=A1=A8?= =?UTF-8?q?=E5=8D=95=20=E6=95=B0=E6=8D=AE=E6=93=8D=E4=BD=9C=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20DAO=20=E5=B1=82=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/core/apiservice/schedulejob/wms/WmsDualTransStockJob.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/wms/WmsDualTransStockJob.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/wms/WmsDualTransStockJob.java index b269d7b..40e2ca3 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/wms/WmsDualTransStockJob.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/wms/WmsDualTransStockJob.java @@ -1,13 +1,11 @@ package cn.estsh.i3plus.core.apiservice.schedulejob.wms; -import cn.estsh.i3plus.icloud.wms.sdk.IWmsScheduleJobCloud; import cn.estsh.impp.framework.base.schedule.BaseImppScheduleJob; import cn.estsh.impp.framework.boot.init.ApplicationProperties; import io.swagger.annotations.ApiOperation; import org.quartz.JobExecutionContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; /** * @Description : 定时处理库存移动单信息 From b37acbfcabaa824d90ae4ed672d6f2cf0c2f8e33 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Thu, 11 Apr 2019 15:07:49 +0800 Subject: [PATCH 09/17] =?UTF-8?q?=E5=89=8D=E7=AB=AF=E8=81=94=E8=B0=83?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BC=98=E5=8C=96=20=E5=8D=95=E5=8F=B7?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=B7=A5=E5=85=B7=E7=B1=BBbug=E8=A7=A3?= =?UTF-8?q?=E5=86=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java index 4bc4f46..148f249 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java @@ -43,7 +43,7 @@ public class OrderNoMakeUtil { String serialNoFormatStr = MessageFormat.format(PlatformConstWords.SERIAL_NO_FORMAT, orderNoRule.getSerialNoLength()); // 判断是否首次生成(SerialNo初始值-1) - if (orderNoRule.getSerialNo() > 0) { + if (orderNoRule.getSerialNo() > 0 && orderNo.indexOf(PlatformConstWords.SERIAL_NO) != -1) { String newNo = orderNo.substring(0,orderNo.indexOf(PlatformConstWords.SERIAL_NO)); String oldNo = orderNoRule.getOrderNo().substring(0,orderNo.indexOf(PlatformConstWords.SERIAL_NO)); // 前缀(日期)不同后是否重置流水号 From 3f7643f0e89a86407a5e9e01f318896ec096d706 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Fri, 12 Apr 2019 18:45:15 +0800 Subject: [PATCH 10/17] =?UTF-8?q?=E6=9D=83=E9=99=90=E5=88=86=E9=85=8D?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=8E=A5=E5=8F=A3=20=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=B7=BB=E5=8A=A0=E5=BE=AE=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E6=94=AF=E6=8C=81=20=E6=B7=BB=E5=8A=A0sweb=E9=80=9A=E7=9F=A5?= =?UTF-8?q?=E5=A4=84=E7=90=86=E9=98=9F=E5=88=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/busi/SysMessageController.java | 48 +++++++---- .../mq/MessageSWebNoticeQueueReceiver.java | 94 ++++++++++++++++++++++ .../serviceimpl/busi/SysMessageService.java | 32 ++++++-- 3 files changed, 151 insertions(+), 23 deletions(-) create mode 100644 modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java index 9fe97c9..c69bb16 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java @@ -4,6 +4,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.StringTool; +import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; @@ -55,7 +56,6 @@ public class SysMessageController extends CoreBaseController { @ApiOperation(value = "新增消息",notes = "新增消息") public ResultBean insertSysMessage(SysMessage sysMessage){ try { - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 条件校验 ValidatorBean.beginValid(sysMessage) .notNull("messageTitle",sysMessage.getMessageTitle()) @@ -64,18 +64,27 @@ public class SysMessageController extends CoreBaseController { .notNull("messageReceiversId",sysMessage.getMessageReceiversId()); // 设置发件人名称 - sysMessage.setMessageSenderId(getSessionUser().getUser().getId()); - sysMessage.setMessageSenderNameRdd(getSessionUser().getUserName()); - sysMessage.setMessageSendTime(sdf.format(new Date())); - sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue()); - sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()); + if(sysMessage.getMessageSenderId() == null || sysMessage.getMessageSenderNameRdd() == null){ + sysMessage.setMessageSenderId(getSessionUser().getUser().getId()); + sysMessage.setMessageSenderNameRdd(getSessionUser().getUserName()); + } // 设置收件人名称 - String[] messageReceiver = sysMessage.getMessageReceiversId().split(","); - String receiversName = sysUserService.findSysUserByIds(StringTool.getArrayLong(messageReceiver)) - .stream().map(e -> e.getUserName()).collect(Collectors.joining(",")); + if(sysMessage.getMessageReceiversNameRdd() == null){ + String[] messageReceiver = sysMessage.getMessageReceiversId().split(","); + String receiversName = sysUserService.findSysUserByIds(StringTool.getArrayLong(messageReceiver)) + .stream().map(e -> e.getUserName()).collect(Collectors.joining(",")); + + sysMessage.setMessageReceiversNameRdd(receiversName); + } + + // 设置接收人类型 + if(sysMessage.getMessageReceiverType() == null){ + sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()); + } - sysMessage.setMessageReceiversNameRdd(receiversName); + sysMessage.setMessageSendTime(TimeTool.getNowTime(true)); + sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue()); sysMessageService.doSendSysMessage(sysMessage); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); @@ -106,9 +115,6 @@ public class SysMessageController extends CoreBaseController { @ApiOperation(value = "修改信息",notes = "修改信息") public ResultBean updateSysMessage(SysMessage sysMessage){ try { - // 登录用户 - SessionUser user = AuthUtil.getSessionUser(); - // 条件校验 ValidatorBean.beginValid(sysMessage) .notNull("messageTitle",sysMessage.getMessageTitle()) @@ -208,7 +214,7 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/user-message/query-outbox") @ApiOperation(value = "查询用户发件箱,分页,排序") - public ResultBean querySysRefUserMessageByPager(SysMessage sysMessage,Pager pager){ + public ResultBean queryOutboxByPager(SysMessage sysMessage,Pager pager){ try { // 发件人为当前用户 sysMessage.setMessageType(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue()); @@ -307,7 +313,7 @@ public class SysMessageController extends CoreBaseController { @PostMapping(value = "/user-message/insert") @ApiOperation(value = "用户新增消息",notes = "用户新增消息") - public ResultBean insertUserMessage(SysMessage sysMessage){ + public ResultBean insertUserMessage(SysMessage sysMessage) { try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 条件校验 @@ -333,4 +339,16 @@ public class SysMessageController extends CoreBaseController { } } + @GetMapping(value = "/user-message/query") + @ApiOperation(value = "消息复杂查询,分页,排序",notes = "消息复杂查询,分页,排序") + public ResultBean querySysRefUserMessageByPager(SysRefUserMessage sysRefUserMessage, Pager pager){ + try { + ListPager sysMessageListPager = sysMessageService.querySysRefUserMessageByPager(sysRefUserMessage, pager); + return ResultBean.success("操作成功").setListPager(sysMessageListPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java new file mode 100644 index 0000000..f9ea12b --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java @@ -0,0 +1,94 @@ +package cn.estsh.i3plus.core.apiservice.mq; + +import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; +import cn.estsh.i3plus.platform.common.tool.TimeTool; +import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; +import cn.estsh.i3plus.pojo.platform.bean.SysMessage; +import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.rabbitmq.client.Channel; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.amqp.core.Message; +import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +/** + * @Description : SWEB通知处理队列 + * @Reference : + * @Author : yunhao + * @CreateDate : 2018-11-15 22:15 + * @Modify: + **/ +@ConditionalOnExpression("'${impp.mq.queue.sweb.notice}' == 'true'") +@Component +public class MessageSWebNoticeQueueReceiver { + private static final Logger LOGGER = LoggerFactory.getLogger(MessageSWebNoticeQueueReceiver.class); + + @Autowired + private ISysMessageService sysMessageService; + + /** + * SWEB通知处理队列 + * + * @param msg + * @param channel + * @param message + */ + @RabbitListener(queues = PlatformConstWords.SWEB_NOTICE_QUEUE) + public void processImppMail(SysMessage msg, Channel channel, Message message) { + LOGGER.info("【MQ-{}】 数据接收成功:{}", PlatformConstWords.SWEB_NOTICE_QUEUE, msg); + try { + msg = sysMessageService.insertSysMessage(msg); + + if (StringUtils.isNotBlank(msg.getMessageReceiversId())) { + // 获取供应商信息 由string转换为json对象 + JSONObject userJsonObject = JSON.parseObject(msg.getMessageReceiversId()); + + List insertList = new ArrayList<>(userJsonObject.size()); + SysRefUserMessage refUserMessage; + + for (String user : userJsonObject.keySet()) { + refUserMessage = new SysRefUserMessage(); + refUserMessage.setMessageId(msg.getId()); + refUserMessage.setMessageSoftType(CommonEnumUtil.SOFT_TYPE.SWEB.getValue()); + refUserMessage.setMessageTitleRdd(msg.getMessageTitle()); + refUserMessage.setMessageTypeRdd(msg.getMessageType()); + refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd()); + refUserMessage.setReceiverId(Long.parseLong(user)); + refUserMessage.setReceiverNameRdd(userJsonObject.get(user).toString()); + refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()); + refUserMessage.setReceiverTime(TimeTool.getNowTime(true)); + refUserMessage.setIsUrgent(msg.getIsUrgent()); + + insertList.add(refUserMessage); + } + + sysMessageService.insertSysRefUserMessage(insertList); + } + + // 消息处理完成 + LOGGER.info("【MQ-{}】站内信{} DeliveryTag:{} 处理成功", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, + msg, message.getMessageProperties().getDeliveryTag()); + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); + } catch (IOException e) { + try { + // 未成功处理,重新发送 + channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, true); + } catch (IOException e1) { + e1.printStackTrace(); + } + } + } + +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java index 37a1452..305bc8d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java @@ -1,9 +1,9 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; -import cn.estsh.i3plus.core.apiservice.mq.I3CoreQueueConfig; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -27,7 +27,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.HashMap; import java.util.List; /** @@ -107,9 +106,9 @@ public class SysMessageService implements ISysMessageService { pager = PagerHelper.getPager(pager, sysMessageRDao.listCount()); return new ListPager(sysMessageRDao.listPager(pager),pager); }else { - String hqlPack = CoreHqlPack.packHqlSysMessage(sysMessage); + DdlPackBean hqlPack = CoreHqlPack.packHqlSysMessage(sysMessage); pager = PagerHelper.getPager(pager, sysMessageRDao.findByHqlWhereCount(hqlPack)); - return new ListPager(sysMessageRDao.findByHqlWherePage(hqlPack + sysMessage.orderBy(),pager),pager); + return new ListPager(sysMessageRDao.findByHqlWherePage(hqlPack,pager),pager); } } @@ -172,13 +171,30 @@ public class SysMessageService implements ISysMessageService { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) - .setErrorDetail("数据不存在") + .setErrorDetail("用户消息不存在") .build(); } - sysRefUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.READ.getValue()); - sysRefUserMessageRDao.update(sysRefUserMessage); - return sysMessageRDao.getById(sysRefUserMessage.getMessageId()); + SysMessage sysMessage = sysMessageRDao.getById(sysRefUserMessage.getMessageId()); + if (sysMessage == null){ + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) + .setErrorDetail("消息主体不存在") + .build(); + } + + // 更新状态消息状态以及阅读数量 + if(sysRefUserMessage.getMessageStatusValue() == ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()) { + sysRefUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.READ.getValue()); + sysRefUserMessageRDao.update(sysRefUserMessage); + + // 阅读数累加1 + sysMessage.setReadCount(sysMessage.getReadCount() + 1); + sysMessageRDao.update(sysMessage); + } + + return sysMessage; } @Override From dc610d9f005c6729f8c07c6a7b1d5f9bd6a0dfa6 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Fri, 12 Apr 2019 18:48:51 +0800 Subject: [PATCH 11/17] =?UTF-8?q?=E6=B6=88=E6=81=AF=E9=98=9F=E5=88=97?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application-dev.properties | 7 ++++++- .../src/main/resources/application-prod.properties | 7 ++++++- .../src/main/resources/application-test.properties | 7 ++++++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties b/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties index 4a23146..c192f67 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties +++ b/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties @@ -174,6 +174,11 @@ spring.jpa.properties.hibernate.hbm2ddl.auto=update spring.jpa.show-sql=true ################ MQ队列处理 ################ +# 站内信 impp.mq.queue.letter = true +# 邮件 impp.mq.queue.mail = true -impp.mq.queue.schedule = true \ No newline at end of file +# 定时任务 +impp.mq.queue.schedule = true +# SWEB通知处理队列 +impp.mq.queue.sweb.notice = true \ No newline at end of file diff --git a/modules/i3plus-core-apiservice/src/main/resources/application-prod.properties b/modules/i3plus-core-apiservice/src/main/resources/application-prod.properties index de590a9..864acff 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/application-prod.properties +++ b/modules/i3plus-core-apiservice/src/main/resources/application-prod.properties @@ -169,6 +169,11 @@ spring.jpa.properties.hibernate.hbm2ddl.auto=update spring.jpa.show-sql=true ################ MQ队列处理 ################ +# 站内信 impp.mq.queue.letter = true +# 邮件 impp.mq.queue.mail = true -impp.mq.queue.schedule = true \ No newline at end of file +# 定时任务 +impp.mq.queue.schedule = true +# SWEB通知处理队列 +impp.mq.queue.sweb.notice = true \ No newline at end of file diff --git a/modules/i3plus-core-apiservice/src/main/resources/application-test.properties b/modules/i3plus-core-apiservice/src/main/resources/application-test.properties index 9ef273e..a587536 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/application-test.properties +++ b/modules/i3plus-core-apiservice/src/main/resources/application-test.properties @@ -174,6 +174,11 @@ spring.jpa.properties.hibernate.hbm2ddl.auto=update spring.jpa.show-sql=true ################ MQ队列处理 ################ +# 站内信 impp.mq.queue.letter = true +# 邮件 impp.mq.queue.mail = true -impp.mq.queue.schedule = true \ No newline at end of file +# 定时任务 +impp.mq.queue.schedule = true +# SWEB通知处理队列 +impp.mq.queue.sweb.notice = true \ No newline at end of file From afaf6c8f583fb8f613e98adc0239fa6568e38d78 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Fri, 12 Apr 2019 19:58:31 +0800 Subject: [PATCH 12/17] =?UTF-8?q?=E6=B6=88=E6=81=AF=E9=99=84=E4=BB=B6?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/iservice/busi/ISysFileAttachService.java | 46 +++++++++++++++++++ .../mq/MessageSWebNoticeQueueReceiver.java | 25 +++++++++++ .../serviceimpl/busi/SysFileAttachService.java | 52 ++++++++++++++++++++++ .../serviceimpl/busi/SysMessageService.java | 31 +++++++++++-- 4 files changed, 151 insertions(+), 3 deletions(-) create mode 100644 modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileAttachService.java create mode 100644 modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileAttachService.java diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileAttachService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileAttachService.java new file mode 100644 index 0000000..734c995 --- /dev/null +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileAttachService.java @@ -0,0 +1,46 @@ +package cn.estsh.i3plus.core.api.iservice.busi; + +import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach; +import io.swagger.annotations.ApiOperation; + +import java.util.List; + +/** + * @Description : 文件附件接口 + * @Reference : + * @Author : yunhao + * @Date : 2018-10-25 17:10 + * @Modify : + **/ +public interface ISysFileAttachService { + + /** + * 添加附件信息 + * @param sysFileAttach 附件信息 + * @return 添加后的附件信息 + */ + @ApiOperation(value = "添加附件信息") + SysFileAttach insertSysFileAttach(SysFileAttach sysFileAttach); + + /** + * 根据id删除附件信息 + * @param id 附件信息id + */ + @ApiOperation(value = "根据id删除附件信息") + void deleteSysFileAttachById(Long id); + + /** + * 根据RefId查询 + * @param refId 关系id + */ + @ApiOperation(value = "根据id删除附件信息") + List findSysFileAttachByRefId(Long refId); + + /** + * 根据RefId删除 + * @param refId 关系id + */ + @ApiOperation(value = "根据id删除附件信息") + void deleteSysFileAttachByRefId(Long refId); + +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java index f9ea12b..07ada2d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java @@ -1,10 +1,14 @@ package cn.estsh.i3plus.core.apiservice.mq; +import cn.estsh.i3plus.core.api.iservice.busi.ISysFileAttachService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService; import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; +import cn.estsh.i3plus.pojo.platform.bean.SysFile; +import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach; import cn.estsh.i3plus.pojo.platform.bean.SysMessage; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage; import com.alibaba.fastjson.JSON; @@ -38,6 +42,12 @@ public class MessageSWebNoticeQueueReceiver { @Autowired private ISysMessageService sysMessageService; + @Autowired + private ISysFileAttachService sysFileAttachService; + + @Autowired + private ISysFileService sysFileService; + /** * SWEB通知处理队列 * @@ -49,8 +59,23 @@ public class MessageSWebNoticeQueueReceiver { public void processImppMail(SysMessage msg, Channel channel, Message message) { LOGGER.info("【MQ-{}】 数据接收成功:{}", PlatformConstWords.SWEB_NOTICE_QUEUE, msg); try { + // 添加消息 msg = sysMessageService.insertSysMessage(msg); + // 添加附件信息 + if(msg.getSysFileAttachList() != null){ + SysFile sysFile; + for (SysFileAttach sysFileAttach : msg.getSysFileAttachList()) { + sysFile = sysFileService.getSysFileById(sysFileAttach.getFileId()); + if(sysFile == null){ + sysFileAttach.setRefId(msg.getId()); + sysFileAttach.setFileNameRdd(sysFile.getName()); + sysFileAttach.setFilePathRdd(sysFile.getFilePath()); + } + } + } + + // 添加消息明细信息 if (StringUtils.isNotBlank(msg.getMessageReceiversId())) { // 获取供应商信息 由string转换为json对象 JSONObject userJsonObject = JSON.parseObject(msg.getMessageReceiversId()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileAttachService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileAttachService.java new file mode 100644 index 0000000..ce69b8e --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileAttachService.java @@ -0,0 +1,52 @@ +package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.core.api.iservice.busi.ISysFileAttachService; +import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach; +import cn.estsh.i3plus.pojo.platform.repository.SysFileAttachRepository; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @Description : + * @Reference : + * @Author : yunhao + * @CreateDate : 2019-04-12 19:43 + * @Modify: + **/ +@Service +public class SysFileAttachService implements ISysFileAttachService { + + public static final Logger LOGGER = LoggerFactory.getLogger(SysFileAttachService.class); + + @Autowired + private SysFileAttachRepository sysFileAttachRDao; + + @Override + @ApiOperation(value = "添加附件信息") + public SysFileAttach insertSysFileAttach(SysFileAttach sysFileAttach) { + return sysFileAttachRDao.insert(sysFileAttach); + } + + @Override + @ApiOperation(value = "根据id删除附件信息") + public void deleteSysFileAttachById(Long id) { + sysFileAttachRDao.deleteById(id); + } + + @Override + @ApiOperation(value = "根据id删除附件信息") + public List findSysFileAttachByRefId(Long refId) { + return sysFileAttachRDao.findByProperty("refId",refId); + } + + @Override + @ApiOperation(value = "根据id删除附件信息") + public void deleteSysFileAttachByRefId(Long refId) { + sysFileAttachRDao.deleteByProperty("refId",refId); + } +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java index 305bc8d..93dfb65 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java @@ -10,15 +10,16 @@ import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; import cn.estsh.i3plus.pojo.base.tool.HqlPack; +import cn.estsh.i3plus.pojo.platform.bean.SysFile; +import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach; import cn.estsh.i3plus.pojo.platform.bean.SysMessage; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage; -import cn.estsh.i3plus.pojo.platform.repository.SysMessageRepository; -import cn.estsh.i3plus.pojo.platform.repository.SysRefUserMessageRepository; -import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository; +import cn.estsh.i3plus.pojo.platform.repository.*; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ImppRedis; +import com.netflix.discovery.converters.Auto; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,6 +51,12 @@ public class SysMessageService implements ISysMessageService { @Autowired private SysUserRepository sysUserRDao; + @Autowired + private SysFileAttachRepository sysFileAttachRDao; + + @Autowired + private SysFileRepository sysFileRDao; + /** * rabbitMQ队列 */ @@ -74,6 +81,7 @@ public class SysMessageService implements ISysMessageService { public void deleteSysMessageById(Long id) { LOGGER.info("消息 SYS_MESSAGE id:{}",id); sysRefUserMessageRDao.deleteByProperty("messageId",id); + sysFileAttachRDao.deleteByProperty("refId",id); sysMessageRDao.deleteById(id); } @@ -82,6 +90,20 @@ public class SysMessageService implements ISysMessageService { public void updateSysMessage(SysMessage sysMessage){ LOGGER.info("消息 SYS_MESSAGE :{}",sysMessage); sysMessageRDao.update(sysMessage); + + // 更新附件信息 + sysFileAttachRDao.deleteByProperty("refId",sysMessage.getId()); + if(sysMessage.getSysFileAttachList() != null){ + SysFile sysFile; + for (SysFileAttach sysFileAttach : sysMessage.getSysFileAttachList()) { + sysFile = sysFileRDao.getById(sysFileAttach.getFileId()); + if(sysFile == null){ + sysFileAttach.setRefId(sysMessage.getId()); + sysFileAttach.setFileNameRdd(sysFile.getName()); + sysFileAttach.setFilePathRdd(sysFile.getFilePath()); + } + } + } } @Override @@ -194,6 +216,9 @@ public class SysMessageService implements ISysMessageService { sysMessageRDao.update(sysMessage); } + // 查询附件信息 + sysMessage.setSysFileAttachList(sysFileAttachRDao.findByProperty("refId",sysMessage.getId())); + return sysMessage; } From 4ca229997b9615e7e483e376ca59b410d3db0e32 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Sat, 13 Apr 2019 17:02:53 +0800 Subject: [PATCH 13/17] =?UTF-8?q?=E8=A1=A8=E5=8D=95-=E5=B8=83=E5=B1=80?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=A1=8C=E5=88=97=E8=AE=BE=E7=BD=AE=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E6=95=B0=E6=8D=AE=20SWEB=E9=80=9A=E7=9F=A5=E9=99=84?= =?UTF-8?q?=E4=BB=B6=E8=B0=83=E6=95=B4=20=E5=AE=9A=E6=97=B6=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=97=A5=E5=BF=97=E6=B7=BB=E5=8A=A0=E6=89=80=E5=B1=9E?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=20=E6=B6=88=E6=81=AF=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E6=89=80=E5=B1=9E=E6=A8=A1=E5=9D=97=20=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E5=BE=AE=E6=9C=8D=E5=8A=A1=E8=B0=83=E7=94=A8=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apiservice/controller/busi/SysMessageController.java | 14 +++++++++----- .../core/apiservice/mq/MessageLetterQueueReceiver.java | 1 + .../core/apiservice/mq/MessageMailQueueReceiver.java | 3 +++ .../core/apiservice/mq/MessageSWebNoticeQueueReceiver.java | 11 ++++++++--- .../i3plus/core/apiservice/mq/ScheduleQueueReceiver.java | 2 ++ .../apiservice/serviceimpl/busi/SysMessageService.java | 13 +++++++++++-- 6 files changed, 34 insertions(+), 10 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java index c69bb16..e3e53f2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java @@ -11,6 +11,8 @@ import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; +import cn.estsh.i3plus.pojo.model.platform.MessagePagerModel; +import cn.estsh.i3plus.pojo.model.platform.RefUserMessagePagerModel; import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SysMessage; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage; @@ -54,7 +56,7 @@ public class SysMessageController extends CoreBaseController { @PostMapping(value = "/sys-message/insert") @ApiOperation(value = "新增消息",notes = "新增消息") - public ResultBean insertSysMessage(SysMessage sysMessage){ + public ResultBean insertSysMessage(@RequestBody SysMessage sysMessage){ try { // 条件校验 ValidatorBean.beginValid(sysMessage) @@ -162,9 +164,10 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/sys-message/query") @ApiOperation(value = "消息复杂查询,分页,排序",notes = "消息复杂查询,分页,排序") - public ResultBean querySysMessageByPager(SysMessage sysMessage, Pager pager){ + public ResultBean querySysMessageByPager(@RequestBody MessagePagerModel messagePagerModel){ try { - ListPager sysMessageListPager = sysMessageService.querySysMessageByPager(sysMessage,pager); + ListPager sysMessageListPager = sysMessageService.querySysMessageByPager(messagePagerModel.getSysMessage(), + messagePagerModel.getPager()); return ResultBean.success("操作成功").setListPager(sysMessageListPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -341,9 +344,10 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/user-message/query") @ApiOperation(value = "消息复杂查询,分页,排序",notes = "消息复杂查询,分页,排序") - public ResultBean querySysRefUserMessageByPager(SysRefUserMessage sysRefUserMessage, Pager pager){ + public ResultBean querySysRefUserMessageByPager(@RequestBody RefUserMessagePagerModel refUserMessagePagerModel){ try { - ListPager sysMessageListPager = sysMessageService.querySysRefUserMessageByPager(sysRefUserMessage, pager); + ListPager sysMessageListPager = sysMessageService.querySysRefUserMessageByPager( + refUserMessagePagerModel.getSysRefUserMessage(),refUserMessagePagerModel.getPager()); return ResultBean.success("操作成功").setListPager(sysMessageListPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java index 3cbbc8e..50917c6 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java @@ -80,6 +80,7 @@ public class MessageLetterQueueReceiver { for (SysUser user : userList) { refUserMessage = new SysRefUserMessage(); refUserMessage.setMessageId(msg.getId()); + refUserMessage.setMessageSoftType(msg.getMessageSoftType()); refUserMessage.setMessageTitleRdd(msg.getMessageTitle()); refUserMessage.setMessageTypeRdd(msg.getMessageType()); refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java index c52872a..7894d51 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java @@ -6,6 +6,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService; import cn.estsh.i3plus.core.apiservice.util.MailUtil; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SysMessage; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage; @@ -90,6 +91,7 @@ public class MessageMailQueueReceiver { refUserMessage = new SysRefUserMessage(); refUserMessage.setMessageId(msg.getId()); + refUserMessage.setMessageSoftType(msg.getMessageSoftType()); refUserMessage.setMessageTitleRdd(msg.getMessageTitle()); refUserMessage.setMessageTypeRdd(msg.getMessageType()); refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd()); @@ -97,6 +99,7 @@ public class MessageMailQueueReceiver { refUserMessage.setReceiverNameRdd(sysUser.getUserName()); refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()); refUserMessage.setReceiverTime(TimeTool.getNowTime(true)); + refUserMessage.setIsUrgent(msg.getIsUrgent()); sysMessageService.insertSysRefUserMessage(refUserMessage); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java index 07ada2d..d3113f4 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageSWebNoticeQueueReceiver.java @@ -3,6 +3,7 @@ package cn.estsh.i3plus.core.apiservice.mq; import cn.estsh.i3plus.core.api.iservice.busi.ISysFileAttachService; import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService; import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; +import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; @@ -67,10 +68,14 @@ public class MessageSWebNoticeQueueReceiver { SysFile sysFile; for (SysFileAttach sysFileAttach : msg.getSysFileAttachList()) { sysFile = sysFileService.getSysFileById(sysFileAttach.getFileId()); - if(sysFile == null){ + if(sysFile != null){ sysFileAttach.setRefId(msg.getId()); - sysFileAttach.setFileNameRdd(sysFile.getName()); + sysFileAttach.setFileNameRdd(sysFile.getFileOriginalName()); sysFileAttach.setFilePathRdd(sysFile.getFilePath()); + // 初始数据 + ConvertBean.serviceModelInitialize(sysFileAttach, msg.getCreateUser()); + + sysFileAttachService.insertSysFileAttach(sysFileAttach); } } } @@ -86,7 +91,7 @@ public class MessageSWebNoticeQueueReceiver { for (String user : userJsonObject.keySet()) { refUserMessage = new SysRefUserMessage(); refUserMessage.setMessageId(msg.getId()); - refUserMessage.setMessageSoftType(CommonEnumUtil.SOFT_TYPE.SWEB.getValue()); + refUserMessage.setMessageSoftType(msg.getMessageSoftType()); refUserMessage.setMessageTitleRdd(msg.getMessageTitle()); refUserMessage.setMessageTypeRdd(msg.getMessageType()); refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java index 2e2c397..3e65da5 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/ScheduleQueueReceiver.java @@ -67,6 +67,7 @@ public class ScheduleQueueReceiver { // 添加定时任务日志 logTaskTime.setTaskPlanId(taskPlan.getId()); + logTaskTime.setTaskSoftTypeRdd(taskPlan.getTaskSoftTypeRdd()); logTaskTime.setTaskCycleNameRdd(taskPlan.getTaskCycleNameRdd()); logTaskTime.setTaskCycleExpsRdd(taskPlan.getTaskCycleExpsRdd()); sysTaskPlanService.logInsertSysLogTaskTime(logTaskTime); @@ -76,6 +77,7 @@ public class ScheduleQueueReceiver { && CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == taskPlan.getIsNotice()) { // 设置通知邮件内容 SysMessage sysMessage = new SysMessage(); + sysMessage.setMessageSoftType(logTaskTime.getTaskSoftTypeRdd()); sysMessage.setMessageType(taskPlan.getNoticeMethod()); sysMessage.setMessageSenderNameRdd("系统管理员"); sysMessage.setMessageTitle("任务计划失败通知"); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java index 93dfb65..989ef3d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java @@ -157,11 +157,20 @@ public class SysMessageService implements ISysMessageService { @ApiOperation(value = "添加消息并发送") public void doSendSysMessage(SysMessage sysMessage) { // 判断消息类型推送到对应的队列 - if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == sysMessage.getMessageType().intValue()){ + if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == sysMessage.getMessageTypeValue()){ rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage); - }else{ + }else if(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue() == sysMessage.getMessageTypeValue()){ rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage); rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE_BAK,sysMessage); + } else if(ImppEnumUtil.MESSAGE_TYPE.SWEB_NOTICE.getValue() == sysMessage.getMessageTypeValue()){ + rabbitTemplate.convertAndSend(PlatformConstWords.SWEB_NOTICE_QUEUE,sysMessage); + } else { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) + .setErrorDetail("消息类型不存在") + .setErrorSolution("请重新设置消息类型") + .build(); } } From 132e4e341a5122e93b391f61d59257f911ac039f Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Mon, 15 Apr 2019 09:37:03 +0800 Subject: [PATCH 14/17] =?UTF-8?q?=E6=B6=88=E6=81=AF=E5=BE=AE=E6=9C=8D?= =?UTF-8?q?=E8=B0=83=E7=94=A8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/busi/SysMessageController.java | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java index e3e53f2..edd887c 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java @@ -56,7 +56,7 @@ public class SysMessageController extends CoreBaseController { @PostMapping(value = "/sys-message/insert") @ApiOperation(value = "新增消息",notes = "新增消息") - public ResultBean insertSysMessage(@RequestBody SysMessage sysMessage){ + public ResultBean insertSysMessage(@RequestBody SysMessage sysMessage){ try { // 条件校验 ValidatorBean.beginValid(sysMessage) @@ -147,7 +147,7 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/sys-message/get/{id}") @ApiOperation(value = "根据id查询消息",notes = "根据id查询消息") - public ResultBean getSysMessageById(@PathVariable("id") String idStr){ + public ResultBean getSysMessageById(@PathVariable("id") String idStr){ try { SysMessage sysMessage = sysMessageService.getSysMessageById(Long.parseLong(idStr)); if (sysMessage != null) { @@ -164,7 +164,7 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/sys-message/query") @ApiOperation(value = "消息复杂查询,分页,排序",notes = "消息复杂查询,分页,排序") - public ResultBean querySysMessageByPager(@RequestBody MessagePagerModel messagePagerModel){ + public ResultBean querySysMessageByPager(@RequestBody MessagePagerModel messagePagerModel){ try { ListPager sysMessageListPager = sysMessageService.querySysMessageByPager(messagePagerModel.getSysMessage(), messagePagerModel.getPager()); @@ -200,7 +200,7 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/user-message/query-inbox") @ApiOperation(value = "查询用户收件箱,分页,排序") - public ResultBean queryInboxByPager(SysRefUserMessage sysRefUserMessage,Pager pager){ + public ResultBean queryInboxByPager(SysRefUserMessage sysRefUserMessage,Pager pager){ try { // 设置消息类型为站内信 sysRefUserMessage.setMessageTypeRdd(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue()); @@ -217,7 +217,7 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/user-message/query-outbox") @ApiOperation(value = "查询用户发件箱,分页,排序") - public ResultBean queryOutboxByPager(SysMessage sysMessage,Pager pager){ + public ResultBean queryOutboxByPager(SysMessage sysMessage,Pager pager){ try { // 发件人为当前用户 sysMessage.setMessageType(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue()); @@ -234,10 +234,10 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/user-message/find-unread") @ApiOperation(value = "查看用户未读站内信") - public ResultBean findUnreadUserMessage(){ + public ResultBean findUnreadUserMessage(){ try { - List userMessageList = sysMessageService.findSysRefUserMessageByUserIdAndStatus(getSessionUser().getUser().getId(), - ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()); + List userMessageList = sysMessageService.findSysRefUserMessageByUserIdAndStatus( + getSessionUser().getUser().getId(), ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()); return ResultBean.success("操作成功").setResultList(userMessageList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -248,7 +248,7 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/user-message/get/{id}") @ApiOperation(value = "根据id查询消息",notes = "根据id查询消息") - public ResultBean getUserMessageById(@PathVariable("id") String idStr){ + public ResultBean getUserMessageById(@PathVariable("id") String idStr){ try { ValidatorBean.checkNotNull(idStr,"id"); @@ -344,7 +344,7 @@ public class SysMessageController extends CoreBaseController { @GetMapping(value = "/user-message/query") @ApiOperation(value = "消息复杂查询,分页,排序",notes = "消息复杂查询,分页,排序") - public ResultBean querySysRefUserMessageByPager(@RequestBody RefUserMessagePagerModel refUserMessagePagerModel){ + public ResultBean querySysRefUserMessageByPager(@RequestBody RefUserMessagePagerModel refUserMessagePagerModel){ try { ListPager sysMessageListPager = sysMessageService.querySysRefUserMessageByPager( refUserMessagePagerModel.getSysRefUserMessage(),refUserMessagePagerModel.getPager()); From cb36356667d4a37c4d18f45bdf2b1d6cbae1ff4d Mon Sep 17 00:00:00 2001 From: Silliter Date: Tue, 16 Apr 2019 14:24:28 +0800 Subject: [PATCH 15/17] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=89=93=E5=8D=B0?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=EF=BC=8C=E5=BC=80=E5=8F=91=E7=A6=81=E7=94=A8?= =?UTF-8?q?=E5=90=AF=E7=94=A8=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/iservice/busi/ISysLabelTemplateService.java | 10 ++++++++++ .../controller/busi/SysLabelTemplateController.java | 18 ++++++++++++++++++ .../serviceimpl/busi/SysLabelTemplateService.java | 13 +++++++++++++ 3 files changed, 41 insertions(+) diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLabelTemplateService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLabelTemplateService.java index 02abcf0..f32dd3e 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLabelTemplateService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLabelTemplateService.java @@ -3,6 +3,7 @@ package cn.estsh.i3plus.core.api.iservice.busi; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.model.platform.LabelTemplateModel; +import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplate; import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplateParam; import io.swagger.annotations.ApiOperation; @@ -72,4 +73,13 @@ public interface ISysLabelTemplateService { */ @ApiOperation(value = "根据模板编号查询模板信息") LabelTemplateModel getLabelTemplateInfoById(String labelTemplateId); + + /** + * 修改打印模板状态 + * @param id 任务ID + * @param status 模板状态 + * @param user 当前会话用户 + */ + @ApiOperation(value = "修改打印模板状态",notes = "修改打印模板状态") + void updateSysLabelTemplateStatus(Long id, int status, SessionUser user); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLabelTemplateController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLabelTemplateController.java index 501d4f9..9628b40 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLabelTemplateController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLabelTemplateController.java @@ -197,4 +197,22 @@ public class SysLabelTemplateController extends CoreBaseController { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } + + @PutMapping(value = "/status") + @ApiOperation(value = "根据编号修改打印模板状态",notes = "根据编号修改打印模板状态") + public ResultBean updateSysLabelTemplateByStatus(String id, int status){ + try { + // 登录用户 + SessionUser user = AuthUtil.getSessionUser(); + + ValidatorBean.checkNotNull(id, "打印模板编号不能为空"); + + sysLabelTemplateService.updateSysLabelTemplateStatus(Long.parseLong(id), status, getSessionUser()); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java index 9f61b03..9c27d4f 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLabelTemplateService.java @@ -8,6 +8,7 @@ import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.tool.HqlPack; import cn.estsh.i3plus.pojo.model.platform.LabelTemplateModel; +import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplate; import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplateParam; import cn.estsh.i3plus.pojo.platform.repository.SysLabelTemplateParamRepository; @@ -175,4 +176,16 @@ public class SysLabelTemplateService implements ISysLabelTemplateService { templateModel.setTemplateParamList(listSysLabelTemplateParam(labelTemplateId)); return templateModel; } + + @Override + @ApiOperation(value = "修改打印模板状态",notes = "修改打印模板状态") + public void updateSysLabelTemplateStatus(Long id, int status, SessionUser user) { + SysLabelTemplate sysLabelTemplate = sysLabelTemplateRDao.getById(id); + sysLabelTemplate.setIsValid(status); + sysLabelTemplate.setModifyUser(user.getUserName()); + + //添加初始化 + ConvertBean.modelUpdate(sysLabelTemplate, user); + sysLabelTemplateRDao.update(sysLabelTemplate); + } } From 601cc4edd88e4d8c2ae99b1620242443af2613a7 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Tue, 16 Apr 2019 19:51:31 +0800 Subject: [PATCH 16/17] =?UTF-8?q?=E5=B9=B3=E5=8F=B0-=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=E7=BB=84=E7=BB=87=E4=BF=AE=E6=94=B9=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20=E8=A1=A8=E5=8D=95-=E6=8B=A6=E6=88=AA=E5=99=A8?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=A7=E8=A1=8C=E9=A1=BA=E5=BA=8F=20?= =?UTF-8?q?=E8=A1=A8=E5=8D=95-=E5=8A=9F=E8=83=BD=E6=98=8E=E7=BB=86?= =?UTF-8?q?=E5=89=8D=E5=90=8E=E7=AB=AF=E8=81=94=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/busi/SysTaskCycleController.java | 15 ++++++- .../controller/busi/SysUserController.java | 17 ++++++++ .../serviceimpl/busi/SysTaskPlanService.java | 49 ++++++++++++---------- 3 files changed, 57 insertions(+), 24 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysTaskCycleController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysTaskCycleController.java index 06edc88..f0568a4 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysTaskCycleController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysTaskCycleController.java @@ -24,11 +24,14 @@ import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.quartz.impl.triggers.CronTriggerImpl; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.text.ParseException; +import java.util.Date; import java.util.List; /** @@ -87,11 +90,17 @@ public class SysTaskCycleController extends CoreBaseController{ .notNull("name", sysTaskCycle.getName()) .notNull("taskCycleExps", sysTaskCycle.getTaskCycleExps()); + CronTriggerImpl trigger = new CronTriggerImpl(); + trigger.setCronExpression(sysTaskCycle.getTaskCycleExps()); + trigger.computeFirstFireTime(null); + sysTaskCycleService.insertSysTaskCycle(sysTaskCycle); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); - }catch(Exception e){ + } catch (ParseException parseException){ + return ResultBean.fail("表达式错误"); + } catch(Exception e){ return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } @@ -106,6 +115,10 @@ public class SysTaskCycleController extends CoreBaseController{ .notNull("name", sysTaskCycle.getName()) .notNull("taskCycleExps", sysTaskCycle.getTaskCycleExps()); + CronTriggerImpl trigger = new CronTriggerImpl(); + trigger.setCronExpression(sysTaskCycle.getTaskCycleExps()); + trigger.computeFirstFireTime(null); + sysTaskCycleService.updateSysTaskCycle(sysTaskCycle); // 查询关联任务计划信息,并进行修改 diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java index e41dd95..a322bca 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java @@ -449,5 +449,22 @@ public class SysUserController extends CoreBaseController{ } } + @PutMapping("/update-organize") + @ApiOperation(value = "修改用户操作组织id") + public ResultBean updateSysUserOrganize(String idStr, String organizeIdStr){ + try{ + ValidatorBean.checkNotNull(idStr, "id不能为空"); + SysUser sysUser = sysUserService.getSysUserById(Long.parseLong(idStr)); + ValidatorBean.checkNotNull(sysUser, "用户不存在"); + + sysUser.setOrganizeId(Long.parseLong(organizeIdStr)); + sysUserService.updateSysUser(sysUser); + return null; + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java index a7e5fa0..35dc88f 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java @@ -1,6 +1,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService; +import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -13,6 +14,7 @@ import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogTaskTimeRepositor import cn.estsh.i3plus.pojo.platform.repository.SysRefTaskCyclePlanRepository; import cn.estsh.i3plus.pojo.platform.repository.SysTaskPlanRepository; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; +import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ValidatorBean; @@ -75,34 +77,35 @@ public class SysTaskPlanService implements ISysTaskPlanService { @Override @ApiOperation(value = "修改任务计划", notes = "修改任务计划") public void updateSysTaskPlan(SysTaskPlan sysTaskPlan) { - SysTaskPlan oldSysTaskPlan = sysTaskPlanRDao.getById(sysTaskPlan.getId()); + SysTaskPlan originSysTaskPlan = sysTaskPlanRDao.getById(sysTaskPlan.getId()); // 更新关系表 sysRefTaskCyclePlanRDao.updateByProperties(new String[]{"taskPlanName", "taskPlanGroupName"}, - new String[]{oldSysTaskPlan.getName(), oldSysTaskPlan.getGroupName()}, - "taskCycleId", oldSysTaskPlan.getTaskCycleId() + new String[]{originSysTaskPlan.getName(), originSysTaskPlan.getGroupName()}, + "taskCycleId", originSysTaskPlan.getTaskCycleId() ); - oldSysTaskPlan.setTaskCycleId(sysTaskPlan.getTaskCycleId()); - oldSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd()); - oldSysTaskPlan.setTaskCycleExpsRdd(sysTaskPlan.getTaskCycleExpsRdd()); - oldSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd()); - oldSysTaskPlan.setTaskPlanExecNum(sysTaskPlan.getTaskPlanExecNum()); - oldSysTaskPlan.setTaskMethodType(sysTaskPlan.getTaskMethodType()); - oldSysTaskPlan.setTaskId(sysTaskPlan.getTaskId()); - oldSysTaskPlan.setTaskNameRdd(sysTaskPlan.getTaskNameRdd()); - oldSysTaskPlan.setTaskSoftTypeRdd(sysTaskPlan.getTaskSoftTypeRdd()); - oldSysTaskPlan.setTaskPlanParam(sysTaskPlan.getTaskPlanParam()); - oldSysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskPlan.getTaskCycleStartDateTimeRdd()); - oldSysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskPlan.getTaskCycleEndDateTimeRdd()); - oldSysTaskPlan.setTaskPlanDescription(sysTaskPlan.getTaskPlanDescription()); - oldSysTaskPlan.setLastRunDateTime(sysTaskPlan.getLastRunDateTime()); - oldSysTaskPlan.setIsNotice(sysTaskPlan.getIsNotice()); - oldSysTaskPlan.setIsInternalUser(sysTaskPlan.getIsInternalUser()); - oldSysTaskPlan.setNoticeChannel(sysTaskPlan.getNoticeChannel()); - oldSysTaskPlan.setNoticeMethod(sysTaskPlan.getNoticeMethod()); - oldSysTaskPlan.setTaskPlanStatus(sysTaskPlan.getTaskPlanStatus()); - sysTaskPlanRDao.update(oldSysTaskPlan); + originSysTaskPlan.setTaskCycleId(sysTaskPlan.getTaskCycleId()); + originSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd()); + originSysTaskPlan.setTaskCycleExpsRdd(sysTaskPlan.getTaskCycleExpsRdd()); + originSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd()); + originSysTaskPlan.setTaskPlanExecNum(sysTaskPlan.getTaskPlanExecNum()); + originSysTaskPlan.setTaskMethodType(sysTaskPlan.getTaskMethodType()); + originSysTaskPlan.setTaskId(sysTaskPlan.getTaskId()); + originSysTaskPlan.setTaskNameRdd(sysTaskPlan.getTaskNameRdd()); + originSysTaskPlan.setTaskSoftTypeRdd(sysTaskPlan.getTaskSoftTypeRdd()); + originSysTaskPlan.setTaskPlanParam(sysTaskPlan.getTaskPlanParam()); + originSysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskPlan.getTaskCycleStartDateTimeRdd()); + originSysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskPlan.getTaskCycleEndDateTimeRdd()); + originSysTaskPlan.setTaskPlanDescription(sysTaskPlan.getTaskPlanDescription()); + originSysTaskPlan.setLastRunDateTime(sysTaskPlan.getLastRunDateTime()); + originSysTaskPlan.setIsNotice(sysTaskPlan.getIsNotice()); + originSysTaskPlan.setIsInternalUser(sysTaskPlan.getIsInternalUser()); + originSysTaskPlan.setNoticeChannel(sysTaskPlan.getNoticeChannel()); + originSysTaskPlan.setNoticeMethod(sysTaskPlan.getNoticeMethod()); + + + sysTaskPlanRDao.update(originSysTaskPlan); } @Override From 115e3e64b2025d8eb4338c4d825c0d4f81a44ed3 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Wed, 17 Apr 2019 18:54:48 +0800 Subject: [PATCH 17/17] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E8=A1=A8=E5=8D=95?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/core/apiservice/controller/busi/SysMessageController.java | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java index edd887c..700449a 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java @@ -87,6 +87,7 @@ public class SysMessageController extends CoreBaseController { sysMessage.setMessageSendTime(TimeTool.getNowTime(true)); sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue()); + sysMessage.setReadCount(0L); sysMessageService.doSendSysMessage(sysMessage); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());