parent
7438069201
commit
1cd26a247a
|
@ -1,14 +1,12 @@
|
||||||
package com.hzya.frame.finance.conf.message.controller;
|
package com.hzya.frame.finance.conf.message.controller;
|
||||||
|
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.hzya.frame.finance.conf.billtemplate.entity.FeConfBillTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.message.service.IFeConfMessageTemplateService;
|
import com.hzya.frame.finance.conf.message.service.IFeConfMessageTemplateService;
|
||||||
import com.hzya.frame.web.entity.JsonResultEntity;
|
import com.hzya.frame.web.entity.JsonResultEntity;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -29,6 +27,7 @@ public class MessageController {
|
||||||
PageInfo pageInfo = iFeConfMessageTemplateService.queryMessagePaged(feConfMessageTemplateEntity);
|
PageInfo pageInfo = iFeConfMessageTemplateService.queryMessagePaged(feConfMessageTemplateEntity);
|
||||||
return new JsonResultEntity("查询成功",true,pageInfo);
|
return new JsonResultEntity("查询成功",true,pageInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询消息模板
|
* 查询消息模板
|
||||||
*/
|
*/
|
||||||
|
@ -80,7 +79,6 @@ public class MessageController {
|
||||||
@RequestMapping(value = "/updateStatus", method = RequestMethod.POST)
|
@RequestMapping(value = "/updateStatus", method = RequestMethod.POST)
|
||||||
public JsonResultEntity updateStatus(@RequestBody FeConfMessageTemplateEntity feConfMessageTemplateEntity) throws Exception {
|
public JsonResultEntity updateStatus(@RequestBody FeConfMessageTemplateEntity feConfMessageTemplateEntity) throws Exception {
|
||||||
FeConfMessageTemplateEntity update = iFeConfMessageTemplateService.updateStatus(feConfMessageTemplateEntity);
|
FeConfMessageTemplateEntity update = iFeConfMessageTemplateService.updateStatus(feConfMessageTemplateEntity);
|
||||||
|
|
||||||
return new JsonResultEntity("修改成功",true,update);
|
return new JsonResultEntity("修改成功",true,update);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -95,4 +93,16 @@ public class MessageController {
|
||||||
iFeConfMessageTemplateService.logicRemove(feConfMessageTemplateEntity);
|
iFeConfMessageTemplateService.logicRemove(feConfMessageTemplateEntity);
|
||||||
return new JsonResultEntity("删除成功",true,null);
|
return new JsonResultEntity("删除成功",true,null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据mdm_id和mdm_name查询消息模板
|
||||||
|
*/
|
||||||
|
@PostMapping("/queryTemplate")
|
||||||
|
public JsonResultEntity queryTemplate(@RequestBody FeConfBillTemplateEntity feConfBillTemplateEntity) throws Exception {
|
||||||
|
List<FeConfMessageTemplateEntity> feConfMessageTemplateEntities = iFeConfMessageTemplateService.queryTemplate(feConfBillTemplateEntity);
|
||||||
|
return new JsonResultEntity("查询成功",true,feConfMessageTemplateEntities);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,5 +17,8 @@ public interface IFeConfMessageTemplateDao extends IBaseDao<FeConfMessageTemplat
|
||||||
|
|
||||||
|
|
||||||
List<FeConfMessageTemplateEntity> page(FeConfMessageTemplateEntity feConfMessageTemplateEntity);
|
List<FeConfMessageTemplateEntity> page(FeConfMessageTemplateEntity feConfMessageTemplateEntity);
|
||||||
|
|
||||||
|
|
||||||
|
List<FeConfMessageTemplateEntity> queryTemplate(String mdmId, String mdmName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@ package com.hzya.frame.finance.conf.message.dao.impl;
|
||||||
|
|
||||||
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.message.dao.IFeConfMessageTemplateDao;
|
import com.hzya.frame.finance.conf.message.dao.IFeConfMessageTemplateDao;
|
||||||
import org.apache.ibatis.session.SqlSession;
|
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
import com.hzya.frame.basedao.dao.MybatisGenericDao;
|
import com.hzya.frame.basedao.dao.MybatisGenericDao;
|
||||||
|
|
||||||
|
@ -35,5 +34,16 @@ public class FeConfMessageTemplateDaoImpl extends MybatisGenericDao<FeConfMessag
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<FeConfMessageTemplateEntity> queryTemplate(String mdmId, String mdmName) {
|
||||||
|
FeConfMessageTemplateEntity feConfMessageTemplateEntity = new FeConfMessageTemplateEntity();
|
||||||
|
feConfMessageTemplateEntity.setMdmId(mdmId);
|
||||||
|
feConfMessageTemplateEntity.setMdmName(mdmName);
|
||||||
|
List<FeConfMessageTemplateEntity> objects = (List<FeConfMessageTemplateEntity>) this.selectList("com.hzya.frame.finance.conf.message.dao.impl.FeConfMessageTemplateDaoImpl.queryTemplate", feConfMessageTemplateEntity);
|
||||||
|
return objects;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -53,6 +53,15 @@
|
||||||
,mdm_id
|
,mdm_id
|
||||||
,mdm_name
|
,mdm_name
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<select id="queryTemplate" resultMap="get-FeConfMessageTemplateEntity-result" parameterType = "com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity">
|
||||||
|
select *
|
||||||
|
from fe_conf_message_template
|
||||||
|
where mdm_id = #{mdmId}
|
||||||
|
and mdm_name = #{mdmName}
|
||||||
|
</select>
|
||||||
<!-- 查询 采用==查询 -->
|
<!-- 查询 采用==查询 -->
|
||||||
<select id="entity_list_base" resultMap="get-FeConfMessageTemplateEntity-result" parameterType = "com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity">
|
<select id="entity_list_base" resultMap="get-FeConfMessageTemplateEntity-result" parameterType = "com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity">
|
||||||
select
|
select
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package com.hzya.frame.finance.conf.message.service;
|
package com.hzya.frame.finance.conf.message.service;
|
||||||
|
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.hzya.frame.finance.conf.billtemplate.entity.FeConfBillTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
||||||
import com.hzya.frame.basedao.service.IBaseService;
|
import com.hzya.frame.basedao.service.IBaseService;
|
||||||
|
|
||||||
|
@ -20,4 +21,8 @@ public interface IFeConfMessageTemplateService extends IBaseService<FeConfMessag
|
||||||
void delete(FeConfMessageTemplateEntity feConfMessageTemplateEntity) throws Exception;
|
void delete(FeConfMessageTemplateEntity feConfMessageTemplateEntity) throws Exception;
|
||||||
|
|
||||||
PageInfo queryMessagePaged(FeConfMessageTemplateEntity feConfMessageTemplateEntity);
|
PageInfo queryMessagePaged(FeConfMessageTemplateEntity feConfMessageTemplateEntity);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
List<FeConfMessageTemplateEntity> queryTemplate(FeConfBillTemplateEntity feConfBillTemplateEntity);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,11 @@
|
||||||
package com.hzya.frame.finance.conf.message.service.impl;
|
package com.hzya.frame.finance.conf.message.service.impl;
|
||||||
|
|
||||||
import com.github.pagehelper.Page;
|
|
||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.hzya.frame.finance.conf.billtemplate.entity.FeConfBillTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.message.dao.IFeConfMessageTemplateDao;
|
import com.hzya.frame.finance.conf.message.dao.IFeConfMessageTemplateDao;
|
||||||
import com.hzya.frame.finance.conf.message.service.IFeConfMessageTemplateService;
|
import com.hzya.frame.finance.conf.message.service.IFeConfMessageTemplateService;
|
||||||
import com.hzya.frame.page.PageAttribute;
|
|
||||||
import org.junit.Assert;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import com.hzya.frame.basedao.service.impl.BaseService;
|
import com.hzya.frame.basedao.service.impl.BaseService;
|
||||||
|
@ -50,12 +48,14 @@ public class FeConfMessageTemplateServiceImpl extends BaseService<FeConfMessageT
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public FeConfMessageTemplateEntity updateStatus(FeConfMessageTemplateEntity feConfMessageTemplateEntity) throws Exception {
|
public FeConfMessageTemplateEntity updateStatus(FeConfMessageTemplateEntity feConfMessageTemplateEntity) throws Exception {
|
||||||
if(feConfMessageTemplateEntity == null){
|
|
||||||
throw new Exception("参数不能为空");
|
|
||||||
}
|
|
||||||
if(feConfMessageTemplateEntity.getId() == null){
|
if(feConfMessageTemplateEntity.getId() == null){
|
||||||
throw new Exception("id不能为空");
|
throw new Exception("id不能为空");
|
||||||
}
|
}
|
||||||
|
List<FeConfMessageTemplateEntity> feConfMessageTemplate = feConfMessageTemplateDao.query(feConfMessageTemplateEntity);
|
||||||
|
if(feConfMessageTemplate == null){
|
||||||
|
throw new Exception("该记录不存在");
|
||||||
|
}
|
||||||
if(feConfMessageTemplateEntity.getSts().equals("N")){
|
if(feConfMessageTemplateEntity.getSts().equals("N")){
|
||||||
throw new Exception("该记录已删除,无法修改");
|
throw new Exception("该记录已删除,无法修改");
|
||||||
}
|
}
|
||||||
|
@ -91,4 +91,14 @@ public class FeConfMessageTemplateServiceImpl extends BaseService<FeConfMessageT
|
||||||
List<FeConfMessageTemplateEntity> query = feConfMessageTemplateDao.page(feConfMessageTemplateEntity);
|
List<FeConfMessageTemplateEntity> query = feConfMessageTemplateDao.page(feConfMessageTemplateEntity);
|
||||||
return new PageInfo(query);
|
return new PageInfo(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<FeConfMessageTemplateEntity> queryTemplate(FeConfBillTemplateEntity feConfBillTemplateEntity) {
|
||||||
|
String mdmId = feConfBillTemplateEntity.getId();
|
||||||
|
String mdmName = feConfBillTemplateEntity.getName();
|
||||||
|
return feConfMessageTemplateDao.queryTemplate(mdmId,mdmName);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
package com.hzya.frame.finance.conf.notificationRules.controller;
|
package com.hzya.frame.finance.conf.notificationRules.controller;
|
||||||
|
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.hzya.frame.finance.conf.billtemplate.entity.FeConfBillTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
import com.hzya.frame.finance.conf.message.entity.FeConfMessageTemplateEntity;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.dao.impl.FeConfNotificationRulesDaoImpl;
|
import com.hzya.frame.finance.conf.notificationRules.dao.impl.FeConfNotificationRulesDaoImpl;
|
||||||
|
import com.hzya.frame.finance.conf.notificationRules.entity.BillTypeVO;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.service.IFeConfNotificationRulesService;
|
import com.hzya.frame.finance.conf.notificationRules.service.IFeConfNotificationRulesService;
|
||||||
import com.hzya.frame.web.entity.JsonResultEntity;
|
import com.hzya.frame.web.entity.JsonResultEntity;
|
||||||
|
@ -77,4 +79,21 @@ public class NotificationRulesController {
|
||||||
return new JsonResultEntity("删除成功",true,null);
|
return new JsonResultEntity("删除成功",true,null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据mdm_id和mdm_name查询通知规则
|
||||||
|
*/
|
||||||
|
@PostMapping("/query")
|
||||||
|
public JsonResultEntity query(@RequestBody FeConfBillTemplateEntity feConfBillTemplateEntity) {
|
||||||
|
List<FeConfNotificationRulesEntity> feConfNotificationRulesEntityList = iFeConfNotificationRulesService.queryFeConfNotificationRulesEntity(feConfBillTemplateEntity);
|
||||||
|
return new JsonResultEntity("查询成功",true,feConfNotificationRulesEntityList);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询单据类型列表
|
||||||
|
*/
|
||||||
|
@PostMapping("/queryBillType")
|
||||||
|
public JsonResultEntity queryBillType() {
|
||||||
|
List<BillTypeVO> billTypeVOS = iFeConfNotificationRulesService.queryFeConfBillTypeEntity();
|
||||||
|
return new JsonResultEntity("查询成功",true,billTypeVOS);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package com.hzya.frame.finance.conf.notificationRules.dao;
|
package com.hzya.frame.finance.conf.notificationRules.dao;
|
||||||
|
|
||||||
|
import com.hzya.frame.finance.conf.notificationRules.entity.BillTypeVO;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
||||||
import com.hzya.frame.basedao.dao.IBaseDao;
|
import com.hzya.frame.basedao.dao.IBaseDao;
|
||||||
|
|
||||||
|
@ -18,5 +19,9 @@ public interface IFeConfNotificationRulesDao extends IBaseDao<FeConfNotification
|
||||||
FeConfNotificationRulesEntity queryById(String id);
|
FeConfNotificationRulesEntity queryById(String id);
|
||||||
|
|
||||||
int updateStatus(FeConfNotificationRulesEntity feConfNotificationRulesEntity);
|
int updateStatus(FeConfNotificationRulesEntity feConfNotificationRulesEntity);
|
||||||
|
|
||||||
|
List<FeConfNotificationRulesEntity> queryFeConfNotificationRulesEntity(String mdmId, String mdmName);
|
||||||
|
|
||||||
|
List<BillTypeVO> queryFeConfBillTypeEntity();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package com.hzya.frame.finance.conf.notificationRules.dao.impl;
|
package com.hzya.frame.finance.conf.notificationRules.dao.impl;
|
||||||
|
|
||||||
|
import com.hzya.frame.finance.conf.notificationRules.entity.BillTypeVO;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.dao.IFeConfNotificationRulesDao;
|
import com.hzya.frame.finance.conf.notificationRules.dao.IFeConfNotificationRulesDao;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
@ -34,6 +35,21 @@ public class FeConfNotificationRulesDaoImpl extends MybatisGenericDao<FeConfNoti
|
||||||
return update;
|
return update;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<FeConfNotificationRulesEntity> queryFeConfNotificationRulesEntity(String mdmId, String mdmName) {
|
||||||
|
FeConfNotificationRulesEntity feConfNotificationRulesEntity = new FeConfNotificationRulesEntity();
|
||||||
|
feConfNotificationRulesEntity.setMdmId(mdmId);
|
||||||
|
feConfNotificationRulesEntity.setMdmName(mdmName);
|
||||||
|
List<FeConfNotificationRulesEntity> feConfNotificationRulesEntities = (List<FeConfNotificationRulesEntity>) this.selectList("com.hzya.frame.finance.conf.notificationRules.dao.impl.FeConfNotificationRulesDaoImpl.queryFeConfNotificationRulesEntity", feConfNotificationRulesEntity);
|
||||||
|
return feConfNotificationRulesEntities;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<BillTypeVO> queryFeConfBillTypeEntity() {
|
||||||
|
List<BillTypeVO> billTypeVOs = (List<BillTypeVO>) this.selectList("com.hzya.frame.finance.conf.notificationRules.dao.impl.FeConfNotificationRulesDaoImpl.queryBillType",null);
|
||||||
|
return billTypeVOs;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
package com.hzya.frame.finance.conf.notificationRules.entity;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
|
public class BillTypeVO {
|
||||||
|
private String pkBilltypeid;
|
||||||
|
private String pkBilltypecode;
|
||||||
|
private String pkBilltypename;
|
||||||
|
}
|
|
@ -265,8 +265,21 @@
|
||||||
and sts='Y'
|
and sts='Y'
|
||||||
</trim>
|
</trim>
|
||||||
|
|
||||||
|
</select>
|
||||||
|
<select id="queryFeConfNotificationRulesEntity" resultMap="get-FeConfNotificationRulesEntity-result" parameterType = "com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity">
|
||||||
|
select *
|
||||||
|
from fe_conf_notification_rules
|
||||||
|
where mdm_id = #{mdmId} and mdm_name = #{mdmName}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="queryBillType" resultType="com.hzya.frame.finance.conf.notificationRules.entity.BillTypeVO">
|
||||||
|
select
|
||||||
|
pk_billtypeid as pkBilltypeid,
|
||||||
|
pk_billtypecode as pkBilltypecode,
|
||||||
|
billtypename as pkBilltypename
|
||||||
|
from mdm_bd_bd_billtype
|
||||||
|
</select>
|
||||||
<!-- 查询列表 字段采用or格式 -->
|
<!-- 查询列表 字段采用or格式 -->
|
||||||
<select id="FeConfNotificationRulesentity_list_or" resultMap="get-FeConfNotificationRulesEntity-result" parameterType = "com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity">
|
<select id="FeConfNotificationRulesentity_list_or" resultMap="get-FeConfNotificationRulesEntity-result" parameterType = "com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity">
|
||||||
select
|
select
|
||||||
|
@ -396,6 +409,7 @@
|
||||||
</trim>
|
</trim>
|
||||||
)
|
)
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
<!-- 批量新增 -->
|
<!-- 批量新增 -->
|
||||||
<insert id="entityInsertBatch" keyProperty="id" useGeneratedKeys="true">
|
<insert id="entityInsertBatch" keyProperty="id" useGeneratedKeys="true">
|
||||||
insert into fe_conf_notification_rules(code, name, mdm_id, mdm_name, pk_billtypeid, pk_billtypecode, pk_billtypename, notification_methodid, notification_methodcode, notification_methodname, notification_strategy, notification_targetid, notification_targetcode, notification_targetname, message_templateid, message_templatecode, message_templatename, enablestate, remark, def1, def2, def3, def4, def5, def6, def7, def8, def9, def10, create_time, create_user, modify_time, modify_user, sts, sts)
|
insert into fe_conf_notification_rules(code, name, mdm_id, mdm_name, pk_billtypeid, pk_billtypecode, pk_billtypename, notification_methodid, notification_methodcode, notification_methodname, notification_strategy, notification_targetid, notification_targetcode, notification_targetname, message_templateid, message_templatecode, message_templatename, enablestate, remark, def1, def2, def3, def4, def5, def6, def7, def8, def9, def10, create_time, create_user, modify_time, modify_user, sts, sts)
|
||||||
|
|
|
@ -1,8 +1,13 @@
|
||||||
package com.hzya.frame.finance.conf.notificationRules.service;
|
package com.hzya.frame.finance.conf.notificationRules.service;
|
||||||
|
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.hzya.frame.finance.conf.billtemplate.entity.FeConfBillTemplateEntity;
|
||||||
|
import com.hzya.frame.finance.conf.notificationRules.entity.BillTypeVO;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
||||||
import com.hzya.frame.basedao.service.IBaseService;
|
import com.hzya.frame.basedao.service.IBaseService;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通知规则表(FeConfNotificationRules)表服务接口
|
* 通知规则表(FeConfNotificationRules)表服务接口
|
||||||
*
|
*
|
||||||
|
@ -17,4 +22,8 @@ public interface IFeConfNotificationRulesService extends IBaseService<FeConfNoti
|
||||||
FeConfNotificationRulesEntity updateStatus(FeConfNotificationRulesEntity feConfNotificationRulesEntity);
|
FeConfNotificationRulesEntity updateStatus(FeConfNotificationRulesEntity feConfNotificationRulesEntity);
|
||||||
|
|
||||||
FeConfNotificationRulesEntity updateFeConfNotificationRulesEntity(FeConfNotificationRulesEntity feConfNotificationRulesEntity) throws Exception;
|
FeConfNotificationRulesEntity updateFeConfNotificationRulesEntity(FeConfNotificationRulesEntity feConfNotificationRulesEntity) throws Exception;
|
||||||
|
|
||||||
|
List<FeConfNotificationRulesEntity> queryFeConfNotificationRulesEntity(FeConfBillTemplateEntity feConfBillTemplateEntity);
|
||||||
|
|
||||||
|
List<BillTypeVO> queryFeConfBillTypeEntity();
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,8 @@ package com.hzya.frame.finance.conf.notificationRules.service.impl;
|
||||||
|
|
||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.hzya.frame.finance.conf.billtemplate.entity.FeConfBillTemplateEntity;
|
||||||
|
import com.hzya.frame.finance.conf.notificationRules.entity.BillTypeVO;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
import com.hzya.frame.finance.conf.notificationRules.entity.FeConfNotificationRulesEntity;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.dao.IFeConfNotificationRulesDao;
|
import com.hzya.frame.finance.conf.notificationRules.dao.IFeConfNotificationRulesDao;
|
||||||
import com.hzya.frame.finance.conf.notificationRules.service.IFeConfNotificationRulesService;
|
import com.hzya.frame.finance.conf.notificationRules.service.IFeConfNotificationRulesService;
|
||||||
|
@ -99,4 +101,21 @@ public class FeConfNotificationRulesServiceImpl extends BaseService<FeConfNotifi
|
||||||
FeConfNotificationRulesEntity update = feConfNotificationRulesDao.update(feConfNotificationRulesEntity);
|
FeConfNotificationRulesEntity update = feConfNotificationRulesDao.update(feConfNotificationRulesEntity);
|
||||||
return update;
|
return update;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据mdm_id和mdm_name查询通知规则
|
||||||
|
* @param feConfBillTemplateEntity
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<FeConfNotificationRulesEntity> queryFeConfNotificationRulesEntity(FeConfBillTemplateEntity feConfBillTemplateEntity) {
|
||||||
|
String mdmId = feConfBillTemplateEntity.getId();
|
||||||
|
String mdmName = feConfBillTemplateEntity.getName();
|
||||||
|
return feConfNotificationRulesDao.queryFeConfNotificationRulesEntity(mdmId,mdmName);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<BillTypeVO> queryFeConfBillTypeEntity() {
|
||||||
|
return feConfNotificationRulesDao.queryFeConfBillTypeEntity();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -129,9 +129,10 @@ public class ImportExcelController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/importDataTemplate")
|
@PostMapping("/importDataTemplate")
|
||||||
public JsonResultEntity importExcel(@RequestParam("file") MultipartFile file,@RequestParam("mdmCode") Long mdmCode,@RequestParam("dbName")String dbName) throws IOException {
|
public JsonResultEntity importExcel(@RequestParam("file") MultipartFile file,@RequestParam("mdmCode") Long mdmCode,@RequestParam("dbName")String dbName) throws IOException {
|
||||||
iMdmService.importDataTemplate(file,mdmCode,dbName);
|
iMdmService.importDataTemplateBatch(file,mdmCode,dbName);
|
||||||
return new JsonResultEntity("导入模版成功",true,200);
|
return new JsonResultEntity("导入模版成功",true,200);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,4 +159,13 @@ public interface IMdmService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
void importDataTemplate(MultipartFile file, Long mdmCode, String dbName);
|
void importDataTemplate(MultipartFile file, Long mdmCode, String dbName);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量导入数据模版
|
||||||
|
* @param file
|
||||||
|
* @param mdmCode
|
||||||
|
* @param dbName
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
void importDataTemplateBatch(MultipartFile file, Long mdmCode, String dbName);
|
||||||
}
|
}
|
||||||
|
|
|
@ -74,6 +74,7 @@ import java.io.InputStream;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -81,6 +82,7 @@ import java.util.*;
|
||||||
*/
|
*/
|
||||||
@Service(value = "mdmService")
|
@Service(value = "mdmService")
|
||||||
public class MdmServiceImpl implements IMdmService {
|
public class MdmServiceImpl implements IMdmService {
|
||||||
|
|
||||||
private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
|
@ -128,6 +130,8 @@ public class MdmServiceImpl implements IMdmService {
|
||||||
@Value("${zt.url}")
|
@Value("${zt.url}")
|
||||||
private String url;
|
private String url;
|
||||||
|
|
||||||
|
// 批量导入数据
|
||||||
|
private static final int BATCH_SIZE = 200;
|
||||||
/**
|
/**
|
||||||
* @param object
|
* @param object
|
||||||
* @return com.hzya.frame.web.entity.JsonResultEntity
|
* @return com.hzya.frame.web.entity.JsonResultEntity
|
||||||
|
@ -3132,6 +3136,7 @@ public class MdmServiceImpl implements IMdmService {
|
||||||
}
|
}
|
||||||
// 存储动态表头信息
|
// 存储动态表头信息
|
||||||
List<String> dynamicHeaders = new ArrayList<>();
|
List<String> dynamicHeaders = new ArrayList<>();
|
||||||
|
List<Map<String, Object>> batchDataList = new ArrayList<>(BATCH_SIZE);
|
||||||
try (InputStream inputStream = file.getInputStream()) {
|
try (InputStream inputStream = file.getInputStream()) {
|
||||||
// 使用EasyExcel读取,不指定实体类,用Map接收动态数据
|
// 使用EasyExcel读取,不指定实体类,用Map接收动态数据
|
||||||
EasyExcel.read(inputStream)
|
EasyExcel.read(inputStream)
|
||||||
|
@ -3229,6 +3234,154 @@ public class MdmServiceImpl implements IMdmService {
|
||||||
return json;
|
return json;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量导入数据
|
||||||
|
* @param file
|
||||||
|
* @param mdmCode
|
||||||
|
* @param dbName
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void importDataTemplateBatch(MultipartFile file, Long mdmCode, String dbName) {
|
||||||
|
// 校验文件合法性
|
||||||
|
if (file == null || file.isEmpty()) {
|
||||||
|
throw new IllegalArgumentException("导入文件不能为空");
|
||||||
|
}
|
||||||
|
// 校验文件格式
|
||||||
|
String fileName = file.getOriginalFilename();
|
||||||
|
if (fileName == null || (!fileName.endsWith(".xlsx") && !fileName.endsWith(".xls"))) {
|
||||||
|
throw new IllegalArgumentException("请上传Excel格式文件(.xlsx或.xls)");
|
||||||
|
}
|
||||||
|
// 存储动态表头信息
|
||||||
|
List<String> dynamicHeaders = new ArrayList<>();
|
||||||
|
// 批量数据缓存
|
||||||
|
List<Map<String, Object>> batchDataList = new ArrayList<>(BATCH_SIZE);
|
||||||
|
|
||||||
|
try (InputStream inputStream = file.getInputStream()) {
|
||||||
|
EasyExcel.read(inputStream)
|
||||||
|
.sheet(0) // 读取第一个sheet
|
||||||
|
.headRowNumber(1) // 表头所在行(从1开始)
|
||||||
|
.autoTrim(true) // 自动去除空格
|
||||||
|
.registerReadListener(new AnalysisEventListener<Map<Integer, Object>>() {
|
||||||
|
// 存储表头索引与字段名的映射关系
|
||||||
|
private Map<Integer, String> headerIndexMap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理表头信息
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
|
||||||
|
this.headerIndexMap = headMap;
|
||||||
|
// 转换为有序的表头列表
|
||||||
|
if (!headMap.isEmpty()) {
|
||||||
|
int maxIndex = headMap.keySet().stream()
|
||||||
|
.mapToInt(Integer::intValue)
|
||||||
|
.max()
|
||||||
|
.orElse(-1);
|
||||||
|
for (int i = 0; i <= maxIndex; i++) {
|
||||||
|
String headerName = headMap.getOrDefault(i, "").trim();
|
||||||
|
dynamicHeaders.add(headerName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理每行数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void invoke(Map<Integer, Object> rowData, AnalysisContext context) {
|
||||||
|
int rowNum = context.readRowHolder().getRowIndex() + 1; // 行号从1开始
|
||||||
|
|
||||||
|
try {
|
||||||
|
// 将索引映射的行数据转换为表头字段映射的Map
|
||||||
|
Map<String, Object> dataMap = convertRowData(rowData, rowNum);
|
||||||
|
batchDataList.add(dataMap);
|
||||||
|
|
||||||
|
// 达到批量阈值时处理
|
||||||
|
if (batchDataList.size() >= BATCH_SIZE) {
|
||||||
|
processBatchData(batchDataList, mdmCode, dbName, rowNum - BATCH_SIZE + 1, rowNum);
|
||||||
|
batchDataList.clear();
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new RuntimeException("处理第" + rowNum + "行数据失败:" + e.getMessage(), e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所有数据解析完成后处理剩余数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
|
||||||
|
if (!batchDataList.isEmpty()) {
|
||||||
|
int startRow = analysisContext.readRowHolder().getRowIndex() - batchDataList.size() + 2;
|
||||||
|
int endRow = analysisContext.readRowHolder().getRowIndex() + 1;
|
||||||
|
processBatchData(batchDataList, mdmCode, dbName, startRow, endRow);
|
||||||
|
batchDataList.clear();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 转换行数据为字段映射Map
|
||||||
|
*/
|
||||||
|
private Map<String, Object> convertRowData(Map<Integer, Object> rowData, int rowNum) {
|
||||||
|
Map<String, Object> dataMap = new HashMap<>(16);
|
||||||
|
rowData.forEach((index, value) -> {
|
||||||
|
String name = headerIndexMap.getOrDefault(index, "");
|
||||||
|
String headerName = name.contains("/")
|
||||||
|
? name.substring(name.lastIndexOf("/") + 1).trim()
|
||||||
|
: name.trim();
|
||||||
|
|
||||||
|
String cellValue = convertCellValue(value);
|
||||||
|
dataMap.put(headerName, cellValue);
|
||||||
|
});
|
||||||
|
return dataMap;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.doRead();
|
||||||
|
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException("文件读取失败:" + e.getMessage(), e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void processBatchData(List<Map<String, Object>> batchData, Long mdmCode, String dbName, int i, int rowNum) {
|
||||||
|
List<JSONObject> batchJsonList = batchData.stream()
|
||||||
|
.map(dataMap -> {
|
||||||
|
JSONObject dataObject = new JSONObject();
|
||||||
|
dataObject.put(dbName, dataMap);
|
||||||
|
JSONObject result = new JSONObject();
|
||||||
|
result.put("mdmCode", mdmCode);
|
||||||
|
result.put("data", dataObject);
|
||||||
|
return getStrObj("jsonStr", result);
|
||||||
|
})
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
for (JSONObject jsonObject : batchJsonList) {
|
||||||
|
saveMdmShowDetailsData(jsonObject);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 转换单元格值为字符串
|
||||||
|
*/
|
||||||
|
private String convertCellValue(Object value) {
|
||||||
|
if (value == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (value instanceof Date) {
|
||||||
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
|
return sdf.format((Date) value);
|
||||||
|
} else if (value instanceof Boolean) {
|
||||||
|
return ((Boolean) value) ? "Y" : "N";
|
||||||
|
} else if (value instanceof Number) {
|
||||||
|
return new BigDecimal(value.toString()).toPlainString();
|
||||||
|
} else {
|
||||||
|
return value.toString().trim();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param jsonObject
|
* @param jsonObject
|
||||||
|
|
Loading…
Reference in New Issue