feat: 迁移国内标准法规部分3 修改国内标准法规

This commit is contained in:
super_liu
2021-06-03 13:59:17 +08:00
parent 4caa481d31
commit aded9a3e47
4 changed files with 146 additions and 2 deletions
@@ -154,4 +154,19 @@ public class SarStandardsInfoController extends BaseController<SarStandardsInfo>
return Result.success("0", "添加成功", sarStandardsInfoEO);
}
@ApiOperation(value = "|SarStandardsInfoEO|修改")
@PostMapping(value = "/updateSarStandardsInfo")
//401问题2021-03-31暂时注释掉 liuhuiwen
// @RequiresPermissions("lawss:sarStandardsInfo:updateSarStandardsInfo")
public ResponseMessage<SarStandardsInfo> updateSarStandardsInfo(@RequestBody SarStandardsInfo sarStandardsInfoEO) throws Exception {
int result = sarStandardsInfoEOService.updateSarStandardsInfo(sarStandardsInfoEO);
if (result > 0) {
return Result.success("", "修改成功", sarStandardsInfoEO);
} else {
return Result.error("修改失败");
}
}
}
@@ -6,6 +6,7 @@ import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfoEOPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import javax.annotation.Resource;
import java.util.List;
/**
@@ -16,6 +17,7 @@ import java.util.List;
* @author super_liu
* @since 2021-05-31
*/
@Resource
public interface SarStandardsInfoDao extends BaseMapper<SarStandardsInfo> {
List<SarStandardsInfo> getSarStandardsInfoPage(SarStandardsInfoEOPage page);
@@ -23,8 +23,8 @@ public interface ISarStandardsInfoService extends IService<SarStandardsInfo> {
List<SarStandardsInfo> getSarStandardsInfoPage(SarStandardsInfoEOPage page) throws Exception;
void createSarStandardsInfo(SarStandardsInfo sarStandardsInfoEO) throws Exception;
//
// int updateSarStandardsInfo(SarStandardsInfo sarStandardsInfoEO) throws Exception;
int updateSarStandardsInfo(SarStandardsInfo sarStandardsInfoEO) throws Exception;
//
// int deleteSarStandards(String ids);
//
@@ -814,4 +814,131 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl<SarStandardsInfoDao
}
sarStandardsInfoEO.setStandState(resultState);
}
/***
* @Description: 修改标准
* @Author: yangxuenan
* @Date: 2020/9/14 14:41
* @Param: [sarStandardsInfoEO]
* @Return: com.adc.da.util.http.ResponseMessage<com.adc.da.lawss.entity.SarStandardsInfoEO>
*/
public int updateSarStandardsInfo(SarStandardsInfo sarStandardsInfoEO) throws Exception {
String standId = sarStandardsInfoEO.getId();
// 查询修改前数据信息,为修改代替标准号使用
SarStandardsInfo beforeSarStandardsInfo = dao.selectById(standId);
attrInfoDetails(beforeSarStandardsInfo);
sarStandardsInfoEO.setModifyTime(new Date());
// 根据其他字段,生成标准状态
// updateStandState(sarStandardsInfoEO,beforeSarStandardsInfo.getStandState());
int result = dao.updateById(sarStandardsInfoEO);
//先删除标准关联表,然后插入数据
sarStandValEODao.deleteDataByStandid(standId);
//删除文件详情表数据
sarStandFileEODao.deleteByStandId(standId);
SarStandFile sarStandFileEO = new SarStandFile();
sarStandFileEO.setStandId(sarStandardsInfoEO.getId());
Map map = (Map) JSONObject.fromObject(sarStandardsInfoEO.getSarStandAttrEOStr());
sarStandFileEO.setIdlist(null);
List<SarStandFile> listFile = sarStandFileEODao.selectFileByStandIdAndId(sarStandFileEO);
// if (listFile != null) {
// if (!listFile.isEmpty()) {
// for (int f = 0; f < listFile.size(); f++) {
// //删除文件信息表数据
// sarFileInfoEODao.deleteByfileId(listFile.get(f).getId());
// //删除转换表ot_convert数据
// otConvertEODao.deleteByAttId(listFile.get(f).getAttId());
// }
// }
// }
sarStandPutTimeEODao.deleteByStandId(standId);
// 修改属性表数据
sarStandAttrInfoEODao.deleteStandAttrByStandId(standId);
createStandAttrInfo(sarStandardsInfoEO);
//编写预警信息
// writeWarnings(sarStandardsInfoEO);
//修改标准过程中,重新修改代替标准号对应的标准的被代替标准号
// updateReplacedNumber(sarStandardsInfoEO,beforeSarStandardsInfo);
// 根据引用标准修改其他被引用标准
updateCiteStand(sarStandardsInfoEO,beforeSarStandardsInfo,"DTBJH","BDTBZBH");
updateCiteStand(sarStandardsInfoEO,beforeSarStandardsInfo,"YYBJ","BYYBJ");
// 根据对应其他标准修改其他对应其他标准
updateRelateStand(sarStandardsInfoEO,"CBBH");
// 根据代替标准号修改被代替的标准的状态 修改为已修订状态
replaseStandState(sarStandardsInfoEO);
// 记录修改日志
saveUpdateLog(sarStandardsInfoEO,beforeSarStandardsInfo);
// if(elasflag) {
// createStandMQService.sendStandMQ(sarStandardsInfoEO,"update");
// List<String> bhs = new ArrayList<>(Arrays.asList(String.valueOf(map.get("DTBJH")).split(",")));
// for (String bh :bhs) {
// SarStandardsInfoEOPage page = new SarStandardsInfoEOPage();
// int countStand = 10000;
// int countSuccess = 0;
// page.setValidFlag("0");
// page.setPageSize(countStand);
// page.setMenuId("nomenu");
// page.setStandType("ALL");
// page.setStandNumber(bh);
// List<SarStandardsInfo> rowsStand = dao.selectStandardsInfoBynumber(page);
// for (SarStandardsInfo sarStandardsInfo : rowsStand) {
// List<SarStandardsInfo> sarStandardsInfoEOS = new ArrayList<>();
// sarStandardsInfoEOS.add(sarStandardsInfo);
// attrInfo(sarStandardsInfoEOS);
// if (sarStandardsInfoEOS.size()>0) {
// sarStandardsInfo = sarStandardsInfoEOS.get(0);
// countSuccess++;
// if (sarStandardsInfo.getAttrInfoMap() != null) {
// if (sarStandardsInfo.getAttrInfoMap().containsKey("BDTBZBH")){
// String bdtbh = String.valueOf(sarStandardsInfo.getAttrInfoMap().get("BDTBZBH"));
// sarStandardsInfo.getAttrInfoMap().put("BDTBH", bdtbh);
// sarStandardsInfo.setSarStandAttrEOStr(com.alibaba.fastjson.JSONObject.toJSONString(sarStandardsInfo.getAttrInfoMap()));
// }
//
// }
// createStandMQService.sendStandMQ(sarStandardsInfo, "update");
// }
// }
// }
// }
return result;
}
public void saveUpdateLog(SarStandardsInfo sarStandardsInfoEO,SarStandardsInfo beforeSarStandardsInfo) throws Exception{
Map<String,Object> newMap = new HashMap<>();
Map<String,Object> oldMap = beforeSarStandardsInfo.getAttrInfoMap();
String attrStr = sarStandardsInfoEO.getSarStandAttrEOStr();
if (StringUtils.isNotBlank(attrStr)) {
newMap = JSONObject.fromObject(attrStr);
}
newMap = changeMap(sarStandardsInfoEO,newMap);
oldMap = changeMap(beforeSarStandardsInfo,oldMap);
// 增加关联事件
String number = sarStandardsInfoEO.getStandSort() + " " + sarStandardsInfoEO.getStandNumber();
if (StringUtils.isNotBlank(sarStandardsInfoEO.getStandYear())) {
number += "-" + sarStandardsInfoEO.getStandYear();
}
String content = number + "" + sarStandardsInfoEO.getStandName() + "";
sarUpdLogEOService.createUpdateLog(sarStandardsInfoEO.getStandType()+"_STAND",sarStandardsInfoEO.getId(),oldMap,newMap,content);
}
public Map<String,Object> changeMap (SarStandardsInfo sarStandardsInfoEO,Map<String,Object> map) {
map.put("country",sarStandardsInfoEO.getCountry());
map.put("isRelateAccess",sarStandardsInfoEO.getIsRelateAccess());
map.put("standSort",sarStandardsInfoEO.getStandSort());
map.put("standNumber",sarStandardsInfoEO.getStandNumber());
map.put("standYear",sarStandardsInfoEO.getStandYear());
map.put("standName",sarStandardsInfoEO.getStandName());
map.put("standEnName",sarStandardsInfoEO.getStandEnName());
map.put("standNature",sarStandardsInfoEO.getStandNature());
map.put("standState",sarStandardsInfoEO.getStandState());
// if (sarStandardsInfoEO.getIssueTime() != null) {
// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
// String issueStr = format.format(sarStandardsInfoEO.getIssueTime());
//
// }
map.put("issueTime",sarStandardsInfoEO.getIssueTime());
map.put("synopsis",sarStandardsInfoEO.getSynopsis());
return map;
}
}