主数据上传

This commit is contained in:
lvleigang 2024-05-16 08:43:54 +08:00
parent 561e69b6f5
commit 5cda40a03b
7 changed files with 497 additions and 252 deletions

View File

@ -12,6 +12,7 @@ public class MdmDistributeDto {
private String id;
private List<MdmModuleDistributeEntity> mdmModuleDistributeEntities;
public List<MdmModuleDistributeEntity> getMdmModuleDistributeEntities() {

View File

@ -0,0 +1,53 @@
package com.hzya.frame.mdm.entity;
import com.hzya.frame.web.entity.BaseEntity;
public class MdmDistributeEntity extends BaseEntity {
private String tableName;
private String formmainId;
private String appId;
private String status;//1发送成功 2发送中 3发送失败 4未发送
private String msg;
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public String getFormmainId() {
return formmainId;
}
public void setFormmainId(String formmainId) {
this.formmainId = formmainId;
}
public String getAppId() {
return appId;
}
public void setAppId(String appId) {
this.appId = appId;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}

View File

@ -1,6 +1,7 @@
package com.hzya.frame.mdm.mdmModule.dao;
import com.hzya.frame.mdm.entity.MdmDataDto;
import com.hzya.frame.mdm.entity.MdmDistributeEntity;
import com.hzya.frame.mdm.entity.MdmDto;
import com.hzya.frame.mdm.entity.MdmQuery;
import com.hzya.frame.mdm.entity.MdmVo;
@ -49,5 +50,9 @@ public interface IMdmModuleDao extends IBaseDao<MdmModuleEntity, String> {
List<HashMap<String, Object>> querySelectData(MdmDto entity);
Integer deleteChilder(FormmainDeleteDto formmainDeleteDto);
Integer saveDistribute(MdmDistributeEntity mdmDistributeEntity);
Integer updateDistribute(MdmDistributeEntity mdmDistributeEntity);
}

View File

@ -1,6 +1,7 @@
package com.hzya.frame.mdm.mdmModule.dao.impl;
import com.hzya.frame.mdm.entity.MdmDataDto;
import com.hzya.frame.mdm.entity.MdmDistributeEntity;
import com.hzya.frame.mdm.entity.MdmDto;
import com.hzya.frame.mdm.entity.MdmQuery;
import com.hzya.frame.mdm.entity.MdmVo;
@ -123,6 +124,17 @@ public class MdmModuleDaoImpl extends MybatisGenericDao<MdmModuleEntity, String>
}
@Override
public Integer saveDistribute(MdmDistributeEntity mdmDistributeEntity) {
Integer o = super.insert(getSqlIdPrifx() + "saveDistribute", mdmDistributeEntity);
return o;
}
@Override
public Integer updateDistribute(MdmDistributeEntity mdmDistributeEntity) {
Integer o = super.update(getSqlIdPrifx() + "updateDistribute", mdmDistributeEntity);
return o;
}
@Override
public HashMap<String, Object> queryTemplateDataOne(MdmDto entity) {
HashMap<String, Object> o = (HashMap<String, Object>) super.selectOne(getSqlIdPrifx() + "queryTemplateDataOne", entity);

View File

@ -696,5 +696,58 @@ where id = #{id}
</trim>
order by sorts asc
</select>
<insert id="saveDistribute" parameterType="com.hzya.frame.mdm.entity.MdmDistributeEntity" >
insert into ${tableName}(
<trim suffix="" suffixOverrides=",">
<if test="id != null and id != ''">id ,</if>
<if test="formmainId != null and formmainId != ''">formmain_id ,</if>
<if test="appId != null and appId != ''">app_id ,</if>
<if test="status != null and status != ''">status ,</if>
<if test="msg != null and msg != ''">msg ,</if>
<if test="sorts != null">sorts ,</if>
<if test="create_user_id != null and create_user_id != ''">create_user_id ,</if>
<if test="create_time != null">create_time ,</if>
<if test="modify_user_id != null and modify_user_id != ''">modify_user_id ,</if>
<if test="modify_time != null">modify_time ,</if>
<if test="sts != null and sts != ''">sts ,</if>
<if test="org_id != null and org_id != ''">org_id ,</if>
<if test="companyId != null and companyId != ''">company_id ,</if>
<if test="sts == null ">sts,</if>
</trim>
)values(
<trim suffix="" suffixOverrides=",">
<if test="id != null and id != ''">#{id} ,</if>
<if test="formmainId != null and formmainId != ''">#{formmainId} ,</if>
<if test="appId != null and appId != ''">#{appId} ,</if>
<if test="status != null and status != ''">#{status} ,</if>
<if test="msg != null and msg != ''">#{msg} ,</if>
<if test="sorts != null">#{sorts} ,</if>
<if test="create_user_id != null and create_user_id != ''">#{create_user_id} ,</if>
<if test="create_time != null">#{create_time} ,</if>
<if test="modify_user_id != null and modify_user_id != ''">#{modify_user_id} ,</if>
<if test="modify_time != null">#{modify_time} ,</if>
<if test="sts != null and sts != ''">#{sts} ,</if>
<if test="org_id != null and org_id != ''">#{org_id} ,</if>
<if test="companyId != null and companyId != ''">#{companyId} ,</if>
<if test="sts == null ">'Y',</if>
</trim>
)
</insert>
<update id="updateDistribute" parameterType="com.hzya.frame.mdm.entity.MdmDistributeEntity">
update ${tableName} set
<trim suffix="" suffixOverrides=",">
<if test="formmainId != null and formmainId != ''">formmain_id = #{formmainId},</if>
<if test="appId != null and appId != ''">app_id = #{appId},</if>
<if test="status != null ">status = #{status},</if>
<if test="msg != null and msg != ''">msg = #{msg},</if>
<if test="modify_user_id != null and modify_user_id != ''">modify_user_id = #{modify_user_id},</if>
<if test="modify_time != null">modify_time = #{modify_time},</if>
<if test="sts != null and sts != ''">sts = #{sts},</if>
<if test="org_id != null and org_id != ''">org_id = #{org_id},</if>
</trim>
where id = #{id}
</update>
</mapper>

View File

@ -13,6 +13,7 @@ import com.hzya.frame.mdm.entity.MdmDbFiledVo;
import com.hzya.frame.mdm.entity.MdmDbVo;
import com.hzya.frame.mdm.entity.MdmDetailViewVo;
import com.hzya.frame.mdm.entity.MdmDistributeDto;
import com.hzya.frame.mdm.entity.MdmDistributeEntity;
import com.hzya.frame.mdm.entity.MdmDistributeVo;
import com.hzya.frame.mdm.entity.MdmDto;
import com.hzya.frame.mdm.entity.MdmModuleViewDto;
@ -58,6 +59,8 @@ import com.hzya.frame.sys.roleModule.dao.IRoleModuleMapper;
import com.hzya.frame.sys.roleModule.entity.RoleModule;
import com.hzya.frame.sys.userRole.dao.IUserRoleMapper;
import com.hzya.frame.sys.userRole.entity.UserRole;
import com.hzya.frame.sysnew.application.plugin.dao.ISysApplicationPluginDao;
import com.hzya.frame.sysnew.application.plugin.entity.SysApplicationPluginEntity;
import com.hzya.frame.sysnew.buttonConfig.dao.ISysButtonConfigDao;
import com.hzya.frame.sysnew.buttonConfig.entity.SysButtonConfigEntity;
import com.hzya.frame.sysnew.menuConfig.dao.ISysMenuConfigDao;
@ -66,6 +69,8 @@ import com.hzya.frame.util.PluginUtils;
import com.hzya.frame.uuid.UUIDUtils;
import com.hzya.frame.web.entity.BaseResult;
import com.hzya.frame.web.entity.JsonResultEntity;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@ -83,6 +88,8 @@ import java.util.stream.Collectors;
*/
@Service(value = "mdmService")
public class MdmServiceImpl implements IMdmService {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
@Resource
protected IModuleMapper moduleMapper;
@Resource
@ -114,11 +121,12 @@ public class MdmServiceImpl implements IMdmService {
@Resource
private IMdmTableCodeRuleDao mdmTableCodeRuleDao;//模版数据表编码规则表
@Resource
protected IUserRoleMapper userRoleMapper;
protected ISysApplicationPluginDao sysApplicationPluginDao;
@Resource
private ISysMenuConfigDao sysMenuConfigDao;
@Resource
private ISysButtonConfigDao sysButtonConfigDao;
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -315,7 +323,6 @@ public class MdmServiceImpl implements IMdmService {
}
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -734,11 +741,11 @@ public class MdmServiceImpl implements IMdmService {
}
/**
* @param
* @return java.util.List<com.hzya.frame.mdm.entity.DbFiledsDto>
* @Author lvleigang
* @Description 设置分发表字段
* @Date 8:49 上午 2023/11/9
* @param
* @return java.util.List<com.hzya.frame.mdm.entity.DbFiledsDto>
**/
private List<DbFiledsDto> getDistribute() {
List<DbFiledsDto> dbFiledsDtos = new ArrayList<>();
@ -1894,6 +1901,7 @@ public class MdmServiceImpl implements IMdmService {
}
return BaseResult.getSuccessMessageEntity("查询数据成功", returnData);
}
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -1924,6 +1932,7 @@ public class MdmServiceImpl implements IMdmService {
return BaseResult.getSuccessMessageEntity("查询数据成功", mapList);
}
}
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -2074,6 +2083,7 @@ public class MdmServiceImpl implements IMdmService {
}
return returnList;
}
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -2240,7 +2250,6 @@ public class MdmServiceImpl implements IMdmService {
mdmViewVo.setSublistMdmModuleDb(mdmModuleDb);
} else {
mdmViewVo.setMainMdmModuleDb(mainMdmModuleDb);
mdmViewVo.setSublistMdmModuleDb(sublistMdmModuleDb);
@ -2346,7 +2355,6 @@ public class MdmServiceImpl implements IMdmService {
mdmModuleDbFiledsEntityList.add(statusFiled);
//msg
MdmModuleDbFiledsEntity msgFiled = new MdmModuleDbFiledsEntity();
msgFiled.setChName("描述");
@ -2494,7 +2502,6 @@ public class MdmServiceImpl implements IMdmService {
}
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -2539,7 +2546,6 @@ public class MdmServiceImpl implements IMdmService {
}
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -2672,7 +2678,6 @@ public class MdmServiceImpl implements IMdmService {
}
/**
* @param object
* @return com.hzya.frame.web.entity.JsonResultEntity
@ -2696,34 +2701,150 @@ public class MdmServiceImpl implements IMdmService {
if (!checkData(jsonObject, "dataType")) {
return BaseResult.getFailureMessageEntity("请先传递要删除的数据");
}
//TODO 后续完成下发或者删除业务
if("2".equals(jsonObject.getString("dataType"))){
boolean flag = false;
//1根据服务名查询分发数据
MdmModuleEntity mdmModuleEntity = new MdmModuleEntity();
mdmModuleEntity.setMdmCode(jsonObject.getInteger("mdmCode"));
mdmModuleEntity.setSts("Y");
List<MdmModuleEntity> mdmModuleEntities = mdmModuleDao.queryBase(mdmModuleEntity);
//if
if (mdmModuleEntities != null && mdmModuleEntities.size() == 1) {
MdmModuleDbEntity mdmModuleDbEntity = new MdmModuleDbEntity();
mdmModuleDbEntity.setMdmId(mdmModuleEntities.get(0).getId());
mdmModuleDbEntity.setDbType("1");
mdmModuleDbEntity.setSts("Y");
List<MdmModuleDbEntity> mdmModuleDbEntities = mdmModuleDbDao.queryBase(mdmModuleDbEntity);
if (mdmModuleDbEntities != null && mdmModuleDbEntities.size() == 1) {
mdmModuleDbEntity = mdmModuleDbEntities.get(0);
}
MdmModuleDistributeEntity mdmModuleDistributeEntity = new MdmModuleDistributeEntity();
//mdmModuleDistributeEntity
//mdmModuleDistributeDao.
mdmModuleDistributeEntity.setAppId(jsonObject.getString("appID"));
mdmModuleDistributeEntity.setMdmId(mdmModuleEntities.get(0).getId());
List<MdmModuleDistributeEntity> mdmModuleDistributeEntities = mdmModuleDistributeDao.queryBase(mdmModuleDistributeEntity);
if (mdmModuleDistributeEntities != null && mdmModuleDistributeEntities.size() == 1) {
if (mdmModuleDistributeEntities.get(0).getAddType() != null && "1".equals(mdmModuleDistributeEntities.get(0).getAddType())) {
//2查找插件
if (mdmModuleDistributeEntities.get(0).getAddPlug() != null && !"".equals(mdmModuleDistributeEntities.get(0).getAddPlug())) {
//2查找插件
SysApplicationPluginEntity sysApplicationPluginEntity = sysApplicationPluginDao.get(mdmModuleDistributeEntities.get(0).getAddPlug());
if(sysApplicationPluginEntity.getPluginCode() != null && !"".equals(sysApplicationPluginEntity.getPluginCode())){
//3调用插件
//PluginBaseEntity pluginBaseEntity = PluginUtils.getPluginsById(jsonObjectStr.getString("plug_id"));
//JsonResultEntity s = pluginBaseEntity.executeBusiness(jsonObjectStr);
PluginBaseEntity pluginBaseEntity = PluginUtils.getPluginsById(sysApplicationPluginEntity.getPluginCode());
try {
JsonResultEntity s = pluginBaseEntity.executeBusiness(jsonObject);
flag = true;
} catch (Exception e) {
logger.error("插件处理失败"+e.getMessage());
}
}
}
} else {
//TODO 连线
flag = true;
}
}
if(mdmModuleDbEntity.getDbName()!= null && !"".equals(mdmModuleDbEntity.getDbName())) {
MdmDistributeEntity mdmDistributeEntity = new MdmDistributeEntity();
mdmDistributeEntity.setCreate();
mdmDistributeEntity.setTableName(mdmModuleDbEntity.getDbName()+"_distribute");
mdmDistributeEntity.setFormmainId(jsonObject.getString("id"));
mdmDistributeEntity.setAppId(jsonObject.getString("appID"));
mdmDistributeEntity.setStatus("1");
mdmDistributeEntity.setMsg("发送成功");
if (!flag) {
mdmDistributeEntity.setStatus("3");
mdmDistributeEntity.setMsg("发送失败");
}
mdmModuleDao.saveDistribute(mdmDistributeEntity);
return BaseResult.getSuccessMessageEntity("下发数据成功");
}else {
return BaseResult.getFailureMessageEntity("系统错误");
}
}else {
return BaseResult.getFailureMessageEntity("系统错误");
}
}else {
if (!checkData(jsonObject, "distributeID")) {
return BaseResult.getFailureMessageEntity("请先传递分发数据");
}
boolean flag = false;
//1根据服务名查询分发数据
MdmModuleEntity mdmModuleEntity = new MdmModuleEntity();
mdmModuleEntity.setMdmCode(jsonObject.getInteger("mdmCode"));
mdmModuleEntity.setSts("Y");
List<MdmModuleEntity> mdmModuleEntities = mdmModuleDao.queryBase(mdmModuleEntity);
if (mdmModuleEntities != null && mdmModuleEntities.size() == 1) {
MdmModuleDbEntity mdmModuleDbEntity = new MdmModuleDbEntity();
mdmModuleDbEntity.setMdmId(mdmModuleEntities.get(0).getId());
mdmModuleDbEntity.setDbType("1");
mdmModuleDbEntity.setSts("Y");
List<MdmModuleDbEntity> mdmModuleDbEntities = mdmModuleDbDao.queryBase(mdmModuleDbEntity);
if (mdmModuleDbEntities != null && mdmModuleDbEntities.size() == 1) {
mdmModuleDbEntity = mdmModuleDbEntities.get(0);
}
MdmModuleDistributeEntity mdmModuleDistributeEntity = new MdmModuleDistributeEntity();
mdmModuleDistributeEntity.setAppId(jsonObject.getString("appID"));
mdmModuleDistributeEntity.setMdmId(mdmModuleEntities.get(0).getId());
List<MdmModuleDistributeEntity> mdmModuleDistributeEntities = mdmModuleDistributeDao.queryBase(mdmModuleDistributeEntity);
if (mdmModuleDistributeEntities != null && mdmModuleDistributeEntities.size() == 1) {
if (mdmModuleDistributeEntities.get(0).getDeleteType() != null && "1".equals(mdmModuleDistributeEntities.get(0).getDeleteType())) {
//2查找插件
if (mdmModuleDistributeEntities.get(0).getDeletePlug() != null && !"".equals(mdmModuleDistributeEntities.get(0).getDeletePlug())) {
//2查找插件
SysApplicationPluginEntity sysApplicationPluginEntity = sysApplicationPluginDao.get(mdmModuleDistributeEntities.get(0).getDeletePlug());
if(sysApplicationPluginEntity.getPluginCode() != null && !"".equals(sysApplicationPluginEntity.getPluginCode())){
//3调用插件
PluginBaseEntity pluginBaseEntity = PluginUtils.getPluginsById(sysApplicationPluginEntity.getPluginCode());
try {
JsonResultEntity s = pluginBaseEntity.executeBusiness(jsonObject);
flag = true;
} catch (Exception e) {
logger.error("插件处理失败"+e.getMessage());
}
}
}
} else {
//TODO 连线
flag = true;
}
}
if(mdmModuleDbEntity.getDbName()!= null && !"".equals(mdmModuleDbEntity.getDbName())) {
//删除数据
MdmDistributeEntity mdmDistributeEntity = new MdmDistributeEntity();
mdmDistributeEntity.setId(jsonObject.getString("distributeID"));
mdmDistributeEntity.setTableName(mdmModuleDbEntity.getDbName()+"_distribute");
mdmDistributeEntity.setFormmainId(jsonObject.getString("id"));
mdmDistributeEntity.setAppId(jsonObject.getString("appID"));
mdmDistributeEntity.setStatus("1");
mdmDistributeEntity.setMsg("删除成功");
if (!flag) {
mdmDistributeEntity.setStatus("3");
mdmDistributeEntity.setMsg("删除失败");
}
mdmModuleDao.updateDistribute(mdmDistributeEntity);
return BaseResult.getSuccessMessageEntity("删除数据成功");
}else {
return BaseResult.getFailureMessageEntity("系统错误");
}
}else {
return BaseResult.getFailureMessageEntity("系统错误");
}
}
return BaseResult.getSuccessMessageEntity("处理分发数据成功");
}
/**
* @Author lvleigang
* @Description 校验数据
* @Date 11:20 上午 2023/11/6
* @param mdmCode
* @param saveData
* @param mdmModuleEntity
* @param mdmModuleDbEntityList
* @param flag 修改 新增
* @return java.lang.String
* @Author lvleigang
* @Description 校验数据
* @Date 11:20 上午 2023/11/6
**/
private String checkDataOnly(Integer mdmCode, JSONObject saveData, boolean flag, MdmModuleEntity mdmModuleEntity, List<MdmModuleDbEntity> mdmModuleDbEntityList) {
StringBuffer str = new StringBuffer();

View File

@ -115,7 +115,7 @@
<if test="companyId != null and companyId != ''">and company_id like concat('%',#{companyId},'%')</if>
and sts='Y'
</trim>
<if test=" sort == null or sort == ''.toString() ">order by sorts asc</if>
<if test=" sort == null or sort == ''.toString() ">order by sorts desc</if>
<if test=" sort !='' and sort!=null and order !='' and order!=null ">order by ${sort} ${order}</if>
</select>