diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysTableTemplateService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysTableTemplateService.java new file mode 100644 index 0000000..c0916d8 --- /dev/null +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysTableTemplateService.java @@ -0,0 +1,57 @@ +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.platform.bean.SysTableTemplate; + +import java.util.List; + +/** + * @author ns + * @create 2022/3/17 0017 上午 10:52 + */ +public interface ISysTableTemplateService { + + /** + * 根据条件分页查询 + * @param sysTableTemplate + * @param pager + * @return + */ + ListPager findSysTableTemplateByPage(SysTableTemplate sysTableTemplate, Pager pager); + + /** + * 根据条件查询 + * @param sysTableTemplate + * @return + */ + List findSysTableTemplate(SysTableTemplate sysTableTemplate); + + /** + * 更新table模板,如果不存在,则新增对应的模板 + * @param sysTableTemplate + * @return + */ + Boolean saveSysTableTemplate(SysTableTemplate sysTableTemplate); + + /** + * 插入table模板 + * @param sysTableTemplate + * @return + */ + SysTableTemplate insertSysTableTemplate(SysTableTemplate sysTableTemplate); + + /** + * 更新table模板 + * @param sysTableTemplate + * @return + */ + Boolean updateSysTableTemplate(SysTableTemplate sysTableTemplate); + + /** + * 判断模板是否存在 + * @param sysTableTemplate + * @return + */ + Boolean isExistSysTableTemplate(SysTableTemplate sysTableTemplate); +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/RedisInfoController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/RedisInfoController.java index 6c25916..8fd85ae 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/RedisInfoController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/RedisInfoController.java @@ -1,284 +1,286 @@ -//package cn.estsh.i3plus.core.apiservice.controller.base; -// -//import cn.estsh.i3plus.platform.common.util.CommonConstWords; -//import cn.estsh.i3plus.platform.common.util.PlatformConstWords; -//import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; -//import cn.estsh.impp.framework.boot.auth.AuthUtil; -//import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -//import cn.estsh.impp.framework.boot.util.ImppRedis; -//import cn.estsh.impp.framework.boot.util.ResultBean; -//import com.alibaba.fastjson.JSON; -//import com.alibaba.fastjson.JSONObject; -//import io.swagger.annotations.Api; -//import io.swagger.annotations.ApiOperation; -//import lombok.extern.slf4j.Slf4j; -//import org.apache.logging.log4j.util.Strings; -//import org.springframework.web.bind.annotation.*; -// -//import javax.annotation.Resource; -//import java.io.UnsupportedEncodingException; -//import java.net.URLDecoder; -//import java.util.*; -// -///** -// * @Description :获取Redis信息展示,类似RDM -// * @Reference : -// * @Author : Castle -// * @CreateDate : 2022/2/24 9:55 -// * @Modify: -// **/ -//@Slf4j -//@Api(tags = "redis信息") -//@RestController -//@RequestMapping(PlatformConstWords.BASE_URL + "/redis") -//public class RedisInfoController { -// /** -// * redis db0 resource -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_RES) -// private ImppRedis redisRes; -// -// /** -// * redis db1 sessionDb -// * -// * @return -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_SESSION) -// private ImppRedis redisSession; -// -// -// /** -// * redis db2 coreDb -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_CORE) -// private ImppRedis redisCore; -// -// /** -// * redis db3 redisWms -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_WMS) -// private ImppRedis redisWms; -// -// /** -// * redis db4 redisMes -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_MES) -// private ImppRedis redisMes; -// /** -// * redis db5 redisMesPcn -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_MES_PCN) -// private ImppRedis redisMesPcn; -// -// /** -// * redis db6 redisMes -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_SWEB) -// private ImppRedis redisSweb; -// -// /** -// * redis db7 redisAndon -// */ -// @Resource(name = CommonConstWords.IMPP_REDIS_ANDON) -// private ImppRedis redisAndon; -// -// /** -// * redis db8 lacDb -// */ -// -// @Resource(name = CommonConstWords.IMPP_REDIS_LAC) -// private ImppRedis redisLac; -// -// /** -// * redis db9 blockDb; -// */ -// -// @Resource(name = CommonConstWords.IMPP_REDIS_BLOCK) -// private ImppRedis redisBlock; -// -// /** -// * redis db10 ptl -// */ -// -// @Resource(name = CommonConstWords.IMPP_REDIS_PTL) -// private ImppRedis redisPtl; -// -// /** -// * redis db11 ptl_pcn -// */ -// -// @Resource(name = CommonConstWords.IMPP_REDIS_PTL_PCN) -// private ImppRedis redisPtlPcn; -// -// /** -// * redis db12 mdm -// */ -// -// @Resource(name = CommonConstWords.IMPP_REDIS_MDM) -// private ImppRedis redisMdm; -// /** -// * redis db13 eam -// */ -// -// @Resource(name = CommonConstWords.IMPP_REDIS_EAM) -// private ImppRedis redisEam; -// -// /** -// * redis db15 qms -// */ -// -// @Resource(name = CommonConstWords.IMPP_REDIS_QMS) -// private ImppRedis redisQms; -// -// -// @ApiOperation(value = "获取redis的keyspace信息", notes = "获取redis的keyspace信息") -// @GetMapping("/info") -// public ResultBean getInfo() { -// Map keys = new HashMap<>(16); -// //获取所有的数据库信息 -// Properties infos = redisRes.getRedisConnectionInfo("keyspace"); -// //分解infos信息 -// for (int i = 0; i < 16; i++) { -// // info信息db0=keys=19510,expires=0,avg_ttl=0, -// String key = "db" + i; -// String info = infos.getProperty(key); -// if (Strings.isNotBlank(info)) { -// JSONObject infoJson = JSON.parseObject(("{" + info + "}").replaceAll("=", ":")); -// keys.put(key, Integer.parseInt(infoJson.get("keys").toString())); -// } else { -// keys.put(key, 0); -// } -// } -// return ResultBean.success("查询成功").setResultMap(keys); -// } -// -// @ApiOperation(value = "获取指定数据库的所有keys", notes = "获取指定数据库的所有keys") -// @GetMapping("/db/{id}") -// public ResultBean getDbKeys(@PathVariable("id") Integer id) { -// //根据id获取所有的key -// ImppRedis redis = getRedis(id); -// Set keySet = redis.findKeySet("*"); -// return ResultBean.success("查询成功").setResultList(new ArrayList<>(keySet)); -// } -// -// @ApiOperation(value = "根据key获取redis对应的值", notes = "根据key获取redis对应的值") -// @GetMapping("/get/{id}/{key}") -// public ResultBean getValue(@PathVariable("id") Integer id, @PathVariable("key") String key) { -// ImppRedis redis = getRedis(id); -// try { -// key = URLDecoder.decode(key, "UTF-8"); -// } catch (UnsupportedEncodingException e) { -// throw ImppExceptionBuilder.newInstance().setErrorDetail("redisDb:{},key:{}解码失败", id, key).build(); -// } -// String keyType = redis.getKeyType(key).toLowerCase(); -// Object result; -// switch (keyType) { -// case "string": -// result = redis.getObject(key); -// break; -// case "hash": -// result = redis.getHashMap(key); -// break; -// case "list": -// result = redis.getList(key, 0, -1); -// break; -// case "set": -// result = redis.getSet(key); -// break; -// case "zset": -// result = null; -// break; -// default: -// throw ImppExceptionBuilder.newInstance().setErrorDetail("无效的key类型,请检查传入的key").build(); -// } -// return ResultBean.success("查询成功").setResultObject(result); -// } -// -// @ApiOperation(value = "删除对应key的值", notes = "删除对应key的值") -// @DeleteMapping("/del/{id}/{key}") -// public ResultBean deleteKey(@PathVariable("id") Integer id, @PathVariable("key") String key) { -// ImppRedis redis = getRedis(id); -// try { -// key = URLDecoder.decode(key, "UTF-8"); -// } catch (UnsupportedEncodingException e) { -// throw ImppExceptionBuilder.newInstance().setErrorDetail("redisDb:{},key:{}解码失败", id, key).build(); -// } -// String keyType = redis.getKeyType(key).toLowerCase(); -// switch (keyType) { -// case "string": -// redis.deleteKey(key); -// break; -// case "hash": -// redis.deleteHash(key); -// break; -// case "list": -// redis.removeList(key,0,null); -// break; -// default: -// throw ImppExceptionBuilder.newInstance().setErrorDetail("暂不支持的key类型").build(); -// } -// -// log.info("sysUser:{}, delete key:{}", AuthUtil.getSessionUser().getUserName(), key); -// return ResultBean.success("删除成功"); -// } -// -// /** -// * 根据DB选取不同的redis链接实例 -// * -// * @param indexDb -// * @return -// */ -// private ImppRedis getRedis(Integer indexDb) { -// ImppRedis redis; -// switch (indexDb) { -// case 0: -// redis = redisRes; -// break; -// case 1: -// redis = redisSession; -// break; -// case 2: -// redis = redisCore; -// break; -// case 3: -// redis = redisWms; -// break; -// case 4: -// redis = redisMes; -// break; -// case 5: -// redis = redisMesPcn; -// break; -// case 6: -// redis = redisSweb; -// break; -// case 7: -// redis = redisAndon; -// break; -// case 8: -// redis = redisLac; -// break; -// case 9: -// redis = redisBlock; -// break; -// case 10: -// redis = redisPtl; -// break; -// case 11: -// redis = redisPtlPcn; -// break; -// case 12: -// redis = redisMdm; -// break; -// case 13: -// redis = redisEam; -// break; -// case 15: -// redis = redisQms; -// break; -// default: -// redis = redisRes; -// } -// return redis; -// } -//} +package cn.estsh.i3plus.core.apiservice.controller.base; + +import cn.estsh.i3plus.platform.common.util.CommonConstWords; +import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.impp.framework.boot.auth.AuthUtil; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.util.ImppRedis; +import cn.estsh.impp.framework.boot.util.ResultBean; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.logging.log4j.util.Strings; +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import java.util.*; + +/** + * @Description :获取Redis信息展示,类似RDM + * @Reference : + * @Author : Castle + * @CreateDate : 2022/2/24 9:55 + * @Modify: + **/ +@Slf4j +@Api(tags = "redis信息") +@RestController +@RequestMapping(PlatformConstWords.BASE_URL + "/redis") +@ConditionalOnExpression("'${impp.redis.info.controller:false}' == 'true'") +public class RedisInfoController { + /** + * redis db0 resource + */ + @Resource(name = CommonConstWords.IMPP_REDIS_RES) + private ImppRedis redisRes; + + /** + * redis db1 sessionDb + * + * @return + */ + @Resource(name = CommonConstWords.IMPP_REDIS_SESSION) + private ImppRedis redisSession; + + + /** + * redis db2 coreDb + */ + @Resource(name = CommonConstWords.IMPP_REDIS_CORE) + private ImppRedis redisCore; + + /** + * redis db3 redisWms + */ + @Resource(name = CommonConstWords.IMPP_REDIS_WMS) + private ImppRedis redisWms; + + /** + * redis db4 redisMes + */ + @Resource(name = CommonConstWords.IMPP_REDIS_MES) + private ImppRedis redisMes; + /** + * redis db5 redisMesPcn + */ + @Resource(name = CommonConstWords.IMPP_REDIS_MES_PCN) + private ImppRedis redisMesPcn; + + /** + * redis db6 redisMes + */ + @Resource(name = CommonConstWords.IMPP_REDIS_SWEB) + private ImppRedis redisSweb; + + /** + * redis db7 redisAndon + */ + @Resource(name = CommonConstWords.IMPP_REDIS_ANDON) + private ImppRedis redisAndon; + + /** + * redis db8 lacDb + */ + + @Resource(name = CommonConstWords.IMPP_REDIS_LAC) + private ImppRedis redisLac; + + /** + * redis db9 blockDb; + */ + + @Resource(name = CommonConstWords.IMPP_REDIS_BLOCK) + private ImppRedis redisBlock; + + /** + * redis db10 ptl + */ + + @Resource(name = CommonConstWords.IMPP_REDIS_PTL) + private ImppRedis redisPtl; + + /** + * redis db11 ptl_pcn + */ + + @Resource(name = CommonConstWords.IMPP_REDIS_PTL_PCN) + private ImppRedis redisPtlPcn; + + /** + * redis db12 mdm + */ + + @Resource(name = CommonConstWords.IMPP_REDIS_MDM) + private ImppRedis redisMdm; + /** + * redis db13 eam + */ + + @Resource(name = CommonConstWords.IMPP_REDIS_EAM) + private ImppRedis redisEam; + + /** + * redis db15 qms + */ + + @Resource(name = CommonConstWords.IMPP_REDIS_QMS) + private ImppRedis redisQms; + + + @ApiOperation(value = "获取redis的keyspace信息", notes = "获取redis的keyspace信息") + @GetMapping("/info") + public ResultBean getInfo() { + Map keys = new HashMap<>(16); + //获取所有的数据库信息 + Properties infos = redisRes.getRedisConnectionInfo("keyspace"); + //分解infos信息 + for (int i = 0; i < 16; i++) { + // info信息db0=keys=19510,expires=0,avg_ttl=0, + String key = "db" + i; + String info = infos.getProperty(key); + if (Strings.isNotBlank(info)) { + JSONObject infoJson = JSON.parseObject(("{" + info + "}").replaceAll("=", ":")); + keys.put(key, Integer.parseInt(infoJson.get("keys").toString())); + } else { + keys.put(key, 0); + } + } + return ResultBean.success("查询成功").setResultMap(keys); + } + + @ApiOperation(value = "获取指定数据库的所有keys", notes = "获取指定数据库的所有keys") + @GetMapping("/db/{id}") + public ResultBean getDbKeys(@PathVariable("id") Integer id) { + //根据id获取所有的key + ImppRedis redis = getRedis(id); + Set keySet = redis.findKeySet("*"); + return ResultBean.success("查询成功").setResultList(new ArrayList<>(keySet)); + } + + @ApiOperation(value = "根据key获取redis对应的值", notes = "根据key获取redis对应的值") + @GetMapping("/get/{id}/{key}") + public ResultBean getValue(@PathVariable("id") Integer id, @PathVariable("key") String key) { + ImppRedis redis = getRedis(id); + try { + key = URLDecoder.decode(key, "UTF-8"); + } catch (UnsupportedEncodingException e) { + throw ImppExceptionBuilder.newInstance().setErrorDetail("redisDb:{},key:{}解码失败", id, key).build(); + } + String keyType = redis.getKeyType(key).toLowerCase(); + Object result; + switch (keyType) { + case "string": + result = redis.getObject(key); + break; + case "hash": + result = redis.getHashMap(key); + break; + case "list": + result = redis.getList(key, 0, -1); + break; + case "set": + result = redis.getSet(key); + break; + case "zset": + result = null; + break; + default: + throw ImppExceptionBuilder.newInstance().setErrorDetail("无效的key类型,请检查传入的key").build(); + } + return ResultBean.success("查询成功").setResultObject(result); + } + + @ApiOperation(value = "删除对应key的值", notes = "删除对应key的值") + @DeleteMapping("/del/{id}/{key}") + public ResultBean deleteKey(@PathVariable("id") Integer id, @PathVariable("key") String key) { + ImppRedis redis = getRedis(id); + try { + key = URLDecoder.decode(key, "UTF-8"); + } catch (UnsupportedEncodingException e) { + throw ImppExceptionBuilder.newInstance().setErrorDetail("redisDb:{},key:{}解码失败", id, key).build(); + } + String keyType = redis.getKeyType(key).toLowerCase(); + switch (keyType) { + case "string": + redis.deleteKey(key); + break; + case "hash": + redis.deleteHash(key); + break; + case "list": + redis.removeList(key,0,null); + break; + default: + throw ImppExceptionBuilder.newInstance().setErrorDetail("暂不支持的key类型").build(); + } + + log.info("sysUser:{}, delete key:{}", AuthUtil.getSessionUser().getUserName(), key); + return ResultBean.success("删除成功"); + } + + /** + * 根据DB选取不同的redis链接实例 + * + * @param indexDb + * @return + */ + private ImppRedis getRedis(Integer indexDb) { + ImppRedis redis; + switch (indexDb) { + case 0: + redis = redisRes; + break; + case 1: + redis = redisSession; + break; + case 2: + redis = redisCore; + break; + case 3: + redis = redisWms; + break; + case 4: + redis = redisMes; + break; + case 5: + redis = redisMesPcn; + break; + case 6: + redis = redisSweb; + break; + case 7: + redis = redisAndon; + break; + case 8: + redis = redisLac; + break; + case 9: + redis = redisBlock; + break; + case 10: + redis = redisPtl; + break; + case 11: + redis = redisPtlPcn; + break; + case 12: + redis = redisMdm; + break; + case 13: + redis = redisEam; + break; + case 15: + redis = redisQms; + break; + default: + redis = redisRes; + } + return redis; + } +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysTableTemplateController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysTableTemplateController.java new file mode 100644 index 0000000..1f725e5 --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysTableTemplateController.java @@ -0,0 +1,106 @@ +package cn.estsh.i3plus.core.apiservice.controller.busi; + +import cn.estsh.i3plus.core.api.iservice.busi.ISysTableTemplateService; +import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.platform.bean.SysTableTemplate; +import cn.estsh.impp.framework.boot.auth.AuthUtil; +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.springframework.util.ObjectUtils; +import org.springframework.web.bind.annotation.*; + +/** + * @author ns + * @create 2022/3/17 0017 上午 11:39 + */ +@RestController +@RequestMapping(PlatformConstWords.BASE_URL + "/sys-table-template") +@Api(tags = "前端表格模板") +public class SysTableTemplateController { + + private ISysTableTemplateService iSysTableTemplateService; + + public SysTableTemplateController(ISysTableTemplateService sysTableTemplateService) { + this.iSysTableTemplateService = sysTableTemplateService; + } + + @ApiOperation("新增系统模板") + @PostMapping("/insert") + public ResultBean insertSysTableTemplate(SysTableTemplate sysTableTemplate) throws NoSuchFieldException { + //条件验证 + ValidatorBean.beginValid(sysTableTemplate) + .notNull("softType", sysTableTemplate.getSoftType()) + .notNull("templateData", sysTableTemplate.getTemplateData()) + .notNull("page", sysTableTemplate.getPage()) + .notNull("templateType", sysTableTemplate.getTemplateType()); + if (CommonEnumUtil.USER_TYPE.ADMIN.equals(AuthUtil.getUserType())) { + return ResultBean.success().setResultObject(iSysTableTemplateService.insertSysTableTemplate((sysTableTemplate))); + } + return ResultBean.fail("当前用户不是管理员,不能新增"); + + } + + @ApiOperation("修改系统模板") + @PutMapping("/update") + public ResultBean updateSysTableTemplate(SysTableTemplate sysTableTemplate) throws NoSuchFieldException { + //条件验证 + ValidatorBean.beginValid(sysTableTemplate) + .notNull("id", sysTableTemplate.getId()); + if (CommonEnumUtil.USER_TYPE.ADMIN.equals(AuthUtil.getUserType())) { + return ResultBean.success().setResultObject(iSysTableTemplateService.updateSysTableTemplate((sysTableTemplate))); + } + return ResultBean.fail("当前用户不是管理员,不能修改"); + } + + @ApiOperation("修改系统模板,如果不存在则新增模板") + @PutMapping("/putIfAbsent") + public ResultBean putIfSysTableTemplateAbsent(SysTableTemplate sysTableTemplate) throws NoSuchFieldException { + //条件验证 + + if (!CommonEnumUtil.USER_TYPE.ADMIN.equals(AuthUtil.getUserType())) { + return ResultBean.fail("当前用户不是管理员,不能修改"); + } + ValidatorBean validatorBean = ValidatorBean.beginValid(sysTableTemplate); + if (ObjectUtils.isEmpty(sysTableTemplate.getId())) { + validatorBean + .notNull("softType", sysTableTemplate.getSoftType()) + .notNull("templateData", sysTableTemplate.getTemplateData()) + .notNull("page", sysTableTemplate.getPage()) + .notNull("templateType", sysTableTemplate.getTemplateType()); + return ResultBean.success().setResultObject(iSysTableTemplateService.insertSysTableTemplate((sysTableTemplate))); + } + return ResultBean.success().setResultObject(iSysTableTemplateService.updateSysTableTemplate((sysTableTemplate))); + } + + @ApiOperation("查询系统模板") + @GetMapping("/find") + public ResultBean findSysTableTemplate(SysTableTemplate sysTableTemplate) throws NoSuchFieldException { + if (ObjectUtils.isEmpty(sysTableTemplate)) { + return ResultBean.fail("查询条件不能为空"); + } + if (ObjectUtils.isEmpty(sysTableTemplate.getId()) + && ObjectUtils.isEmpty(sysTableTemplate.getPage()) + && ObjectUtils.isEmpty(sysTableTemplate.getSoftType()) + && ObjectUtils.isEmpty(sysTableTemplate.getTemplateType())) { + return ResultBean.fail("查询条件不能为空"); + } + return ResultBean.success().setResultObject(iSysTableTemplateService.findSysTableTemplate((sysTableTemplate))); + + } + + + @ApiOperation("分页查询系统模板") + @GetMapping("/findBypage") + public ResultBean findSysTableTemplateByPage(SysTableTemplate sysTableTemplate, Pager pager) throws NoSuchFieldException { + if (ObjectUtils.isEmpty(pager)) { + pager = Pager.defaultPager(); + } + return ResultBean.success().setResultObject(iSysTableTemplateService.findSysTableTemplateByPage(sysTableTemplate, pager)); + + } + +} 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 84f9814..532d7b4 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 @@ -167,6 +167,9 @@ public class MessageMailQueueReceiver { refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()); refUserMessage.setReceiverTime(TimeTool.getNowTime(true)); refUserMessage.setIsUrgent(msg.getIsUrgent()); + if (StringUtils.isNotBlank(msg.getOrganizeCode())){ + refUserMessage.setOrganizeCode(msg.getOrganizeCode()); + } 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 9bebaca..f6a3a33 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 @@ -123,6 +123,10 @@ public class MessageSWebNoticeQueueReceiver { refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()); refUserMessage.setReceiverTime(TimeTool.getNowTime(true)); refUserMessage.setIsUrgent(msg.getIsUrgent()); + + if (StringUtils.isNotBlank(msg.getOrganizeCode())){ + refUserMessage.setOrganizeCode(msg.getOrganizeCode()); + } // 初始数据 ConvertBean.serviceModelInitialize(refUserMessage, msg.getCreateUser()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTableTemplateService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTableTemplateService.java new file mode 100644 index 0000000..1343ab6 --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTableTemplateService.java @@ -0,0 +1,70 @@ +package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.core.api.iservice.busi.ISysTableTemplateService; +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.tool.DdlPreparedPack; +import cn.estsh.i3plus.pojo.platform.bean.SysTableTemplate; +import cn.estsh.i3plus.pojo.platform.repository.SysTableTemplateRepository; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author ns + * @create 2022/3/17 0017 上午 11:09 + */ +@Service +public class SysTableTemplateService implements ISysTableTemplateService { + + private SysTableTemplateRepository sysTableTemplateRepository; + + public SysTableTemplateService(SysTableTemplateRepository sysTableTemplateRepository) { + this.sysTableTemplateRepository = sysTableTemplateRepository; + } + + @Override + public ListPager findSysTableTemplateByPage(SysTableTemplate sysTableTemplate, Pager pager) { + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(sysTableTemplate.getOrganizeCode()); + DdlPreparedPack.getNumEqualPack(sysTableTemplate.getSoftType(), "softType", ddlPackBean); + DdlPreparedPack.getStringLikerPack(sysTableTemplate.getPage(), "page", ddlPackBean); + DdlPreparedPack.getStringEqualPack(sysTableTemplate.getTemplateType(), "templateType", ddlPackBean); + pager = PagerHelper.getPager(pager, sysTableTemplateRepository.findByHqlWhereCount(ddlPackBean)); + return new ListPager(sysTableTemplateRepository.findByHqlWherePage(ddlPackBean, pager), pager); + } + + @Override + public List findSysTableTemplate(SysTableTemplate sysTableTemplate) { + DdlPackBean result = DdlPackBean.getDdlPackBean(sysTableTemplate.getOrganizeCode()); + DdlPreparedPack.getNumEqualPack(sysTableTemplate.getSoftType(), "softType", result); + DdlPreparedPack.getStringLikerPack(sysTableTemplate.getPage(), "page", result); + DdlPreparedPack.getStringEqualPack(sysTableTemplate.getTemplateType(), "templateType", result); + DdlPreparedPack.getNumEqualPack(sysTableTemplate.getId(), "id", result); + return sysTableTemplateRepository.findByHqlWhere(result); + } + + @Override + public Boolean saveSysTableTemplate(SysTableTemplate sysTableTemplate) { + return null; + } + + @Override + public SysTableTemplate insertSysTableTemplate(SysTableTemplate sysTableTemplate) { + return sysTableTemplateRepository.insert(sysTableTemplate); + } + + @Override + public Boolean updateSysTableTemplate(SysTableTemplate sysTableTemplate) { + sysTableTemplateRepository.update(sysTableTemplate); + return true; + } + + @Override + public Boolean isExistSysTableTemplate(SysTableTemplate sysTableTemplate) { + DdlPackBean ddlPack = DdlPackBean.getDdlPackBean(sysTableTemplate.getOrganizeCode()); + DdlPreparedPack.getNumEqualPack(sysTableTemplate.getId(), "id", ddlPack); + return sysTableTemplateRepository.isExitByHql(ddlPack); + } +}