Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH

This commit is contained in:
高嵩
2023-03-30 11:19:55 +08:00
3 changed files with 104 additions and 28 deletions
@@ -236,7 +236,6 @@ public class AuthDummyInventoryInfoEOController extends JeroController<AuthDummy
@ApiOperation(value="认证虚拟清单调取认证虚拟清单添加数据", notes="认证虚拟清单调取认证虚拟清单添加数据")
@PostMapping(value = "/acquireAdd")
public Result<?> acquireAdd(@RequestBody JSONObject json) {
this.authDummyInventoryInfoEOService.acquireAdd(json);
return Result.OK("调取成功!");
return this.authDummyInventoryInfoEOService.acquireAdd(json);
}
}
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import com.jero.common.api.vo.Result;
import com.jero.modules.authDummy.entity.AuthDummyInventoryInfoEO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
import com.jero.modules.system.entity.SysCategory;
import org.springframework.web.multipart.MultipartFile;
@@ -141,5 +142,7 @@ public interface IAuthDummyInventoryInfoEOService extends IService<AuthDummyInve
*/
void disposeDataToEn(List<AuthDummyInventoryInfoEO> infoListCopy);
void acquireAdd(JSONObject json);
Result<?> acquireAdd(JSONObject json);
List<AuthDummyInventoryInfoEO> dataUniqueCheck(List<AuthDummyInventoryInfoEO> addList, String cut, List<String> result, String authDummyInventoryBaseId);
}
@@ -1074,33 +1074,43 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
@Override
public Result<?> batchAdd(JSONObject json) {
String serialNumber = json.getString("serialNumber");
String cut = json.getString("cut");
String wvtaId = json.getString("wvtaId");
String dutyTerritory = json.getString("dutyTerritory");
String bussDocumentLibraryId = json.getString("bussDocumentLibraryId");
String authDummyInventoryBaseId = json.getString("authDummyInventoryBaseId");
List<String> result = new ArrayList<>();
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
result.add("添加成功!");
}else {
result.add("Successfully added!");
}
List<AuthDummyInventoryInfoEO> authDummyInventoryInfoEOList = new ArrayList<>();
JSONArray dataList = json.getJSONArray("dataList");
AuthDummyInventoryInfoEO authDummyInventoryInfoEO = null;
for (Object data : dataList) {
authDummyInventoryInfoEO = JSONObject.parseObject(JSONObject.toJSONString(data), AuthDummyInventoryInfoEO.class);
authDummyInventoryInfoEO.setSerialNumber(serialNumber);
authDummyInventoryInfoEO.setWvtaId(wvtaId);
authDummyInventoryInfoEO.setBussDocumentLibraryId(bussDocumentLibraryId);
authDummyInventoryInfoEO.setDutyTerritory(dutyTerritory);
authDummyInventoryInfoEO.setAuthDummyInventoryBaseId(authDummyInventoryBaseId);
authDummyInventoryInfoEOList.add(authDummyInventoryInfoEO);
}
List<AuthDummyInventoryInfoEO> saveDataList = this.dataUniqueCheck(authDummyInventoryInfoEOList, cut, result, authDummyInventoryBaseId);
try {
String serialNumber = json.getString("serialNumber");
String wvtaId = json.getString("wvtaId");
String dutyTerritory = json.getString("dutyTerritory");
String bussDocumentLibraryId = json.getString("bussDocumentLibraryId");
String authDummyInventoryBaseId = json.getString("authDummyInventoryBaseId");
List<AuthDummyInventoryInfoEO> authDummyInventoryInfoEOList = new ArrayList<>();
JSONArray dataList = json.getJSONArray("dataList");
AuthDummyInventoryInfoEO authDummyInventoryInfoEO = null;
for (Object data : dataList) {
authDummyInventoryInfoEO = JSONObject.parseObject(JSONObject.toJSONString(data), AuthDummyInventoryInfoEO.class);
authDummyInventoryInfoEO.setSerialNumber(serialNumber);
authDummyInventoryInfoEO.setWvtaId(wvtaId);
authDummyInventoryInfoEO.setBussDocumentLibraryId(bussDocumentLibraryId);
authDummyInventoryInfoEO.setDutyTerritory(dutyTerritory);
authDummyInventoryInfoEO.setAuthDummyInventoryBaseId(authDummyInventoryBaseId);
authDummyInventoryInfoEOList.add(authDummyInventoryInfoEO);
}
if(CollectionUtils.isNotEmpty(authDummyInventoryInfoEOList)){
this.saveBatch(authDummyInventoryInfoEOList);
if(CollectionUtils.isNotEmpty(saveDataList)){
this.saveBatch(saveDataList);
//更新log
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String username = sysUser.getUsername();
String serialNumber1 = authDummyInventoryInfoEOList.stream().map(e->e.getSerialNumber()).collect(Collectors.joining(","));
String serialNumber1 = saveDataList.stream().map(e->e.getSerialNumber()).collect(Collectors.joining(","));
String contentLog = username+"向清单中添加了“"+serialNumber1+"";
String enContentLog = username+" added “"+serialNumber1+"” to the list.";
authDummyLogService.updateLog(contentLog, authDummyInventoryInfoEO.getAuthDummyInventoryBaseId(),CutEnum.CN.getValue());
@@ -1109,7 +1119,7 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
}catch (Exception ex){
throw new JeroBootException("添加失败!");
}
return Result.OK("添加成功!");
return Result.OK(result);
}
private String fieldConvert(String field){
if (field == null) return null;
@@ -1533,10 +1543,16 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
}
@Override
public void acquireAdd(JSONObject json) {
public Result<?> acquireAdd(JSONObject json) {
String authDummyInventoryBaseId = json.getString("authDummyInventoryBaseId");
String ids = json.getString("ids");
String cut = json.getString("cut");
List<String> result = new ArrayList<>();
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
result.add("调取成功!");
}else {
result.add("Successfully retrieved!");
}
//检查虚拟清单是否存在
QueryWrapper<AuthDummyInventoryBaseEO> baseQueryWrap = new QueryWrapper<>();
@@ -1558,7 +1574,10 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
authDummyInventoryInfoEOTemp.setUpdateTime(new Date());
addList.add(authDummyInventoryInfoEOTemp);
}
this.saveBatch(addList);
List<AuthDummyInventoryInfoEO> saveDataList = this.dataUniqueCheck(addList, cut, result, authDummyInventoryBaseId);
this.saveBatch(saveDataList);
//更新log
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
@@ -1576,5 +1595,60 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
throw new JeroBootException("The virtual list does not exist, and adding failed.");
}
}
return Result.OK(result);
}
@Override
public List<AuthDummyInventoryInfoEO> dataUniqueCheck(List<AuthDummyInventoryInfoEO> addList, String cut, List<String> result, String authDummyInventoryBaseId) {
List<AuthDummyInventoryInfoEO> adiiSaveList = new ArrayList<>();
QueryWrapper<AuthDummyInventoryInfoEO> pciQueryWrap = new QueryWrapper<>();
pciQueryWrap.lambda().eq(AuthDummyInventoryInfoEO::getAuthDummyInventoryBaseId,authDummyInventoryBaseId);
List<AuthDummyInventoryInfoEO> allDataList = this.list(pciQueryWrap);
// 重复数据数组
List<AuthDummyInventoryInfoEO> duplicateDataList = allDataList.stream().filter(data -> {
boolean flag = false;
for (AuthDummyInventoryInfoEO aiiEo : addList) {
boolean categoryFlag = StringUtils.equals(aiiEo.getCategory(), data.getCategory());
boolean inspectionItemFlag = StringUtils.equals(aiiEo.getInspectionItem(), data.getInspectionItem());
boolean configItemFlag = StringUtils.equals(aiiEo.getConfigItem(), data.getConfigItem());
boolean serialNumberFlag = StringUtils.equals(aiiEo.getSerialNumber(), data.getSerialNumber());
boolean dutyTerritoryFlag = StringUtils.equals(aiiEo.getDutyTerritory(), data.getDutyTerritory());
// 类别+检验项目+配置项+编号+责任领域 作为唯一检验
if(categoryFlag && inspectionItemFlag && configItemFlag && serialNumberFlag && dutyTerritoryFlag){
flag = true;
}
}
return flag;
}).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(duplicateDataList)){
if (StringUtils.equals(cut, CutEnum.CN.getValue())) {
result.add("您所选的数据中包含当前项目中已包含的条目信息,已为您过滤添加。");
}else {
result.add("The data you have selected contains item information already included in the current project, which has been filtered and added for you.");
}
}
// 过滤重复的数据
adiiSaveList = addList.stream().filter(aiiEo -> {
boolean flag = true;
for (AuthDummyInventoryInfoEO allData : allDataList) {
boolean categoryFlag = StringUtils.equals(aiiEo.getCategory(), allData.getCategory());
boolean inspectionItemFlag = StringUtils.equals(aiiEo.getInspectionItem(), allData.getInspectionItem());
boolean configItemFlag = StringUtils.equals(aiiEo.getConfigItem(), allData.getConfigItem());
boolean serialNumberFlag = StringUtils.equals(aiiEo.getSerialNumber(), allData.getSerialNumber());
boolean dutyTerritoryFlag = StringUtils.equals(aiiEo.getDutyTerritory(), allData.getDutyTerritory());
// 类别+检验项目+配置项+编号+责任领域 作为唯一检验
if(categoryFlag && inspectionItemFlag && configItemFlag && serialNumberFlag && dutyTerritoryFlag){
flag = false;
break;
}
}
return flag;
}).collect(Collectors.toList());
return adiiSaveList;
}
}