完善市场法规库清单详情

This commit is contained in:
梁琦涛
2024-07-04 14:48:48 +08:00
parent ee8d6f541a
commit 1dd0eff573
@@ -19,6 +19,10 @@ import com.jero.modules.laws.marketStandard.mapper.LawsMarketStandardMapper;
import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardDetailService;
import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardService;
import com.jero.modules.sys.entity.LawsWorkingGroupUserImport;
import com.jero.modules.system.entity.SysDict;
import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.service.ISysDictItemService;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.formula.functions.T;
@@ -30,6 +34,7 @@ import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
@@ -58,6 +63,10 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
private ILawsMarketStandardDetailService lawsMarketStandardDetailService;
@Resource
private ISysBaseAPI sysBaseAPI;
@Resource
private ISysDictService sysDictService;
@Resource
private ISysDictItemService sysDictItemService;
public static final String CLASS = "entity";
public static final String PARAMS = "params";
@@ -94,11 +103,13 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
}
@Override
@Transactional
public synchronized void add(MarketStandardDetailVO marketStandardDetailVO) {
LawsMarketStandard manifest = marketStandardDetailVO.getManifest();
manifest.setManifestStatus(MarketStandardConstants.MANIFEST_STATUS_NOT_PUBLISH);
// 设置清单编号
manifest.setManifestNo(this.generateManifestNo(manifest.getCountry()));
manifest.setManifestVersion("V1.0");
save(manifest);
List<LawsMarketStandardDetail> lists = marketStandardDetailVO.getLists();
lists.forEach(e -> e.setManifestId(manifest.getId()));
@@ -111,15 +122,34 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
* @return
*/
private String generateManifestNo(String country) {
// TODO 生成清单编号
return "BZFG" + "01";
// 生成清单编号
String s = "BZFG-" + country.replace(",","") + "-";
QueryWrapper<LawsMarketStandard> queryLawsMarketStandard = new QueryWrapper<>();
queryLawsMarketStandard.select("max(manifest_no) as manifest_no");
queryLawsMarketStandard.likeRight("manifest_no",s);
LawsMarketStandard lawsMarketStandard = getOne(queryLawsMarketStandard,false);
if(Objects.isNull(lawsMarketStandard)){
return s + "01";
}
String num = lawsMarketStandard.getManifestNo().substring(lawsMarketStandard.getManifestNo().length() - 2);
int m = Integer.parseInt(num);
return s + (m >= 10 ? (m + 1) : "0" + (m + 1));
}
@Override
public void edit(MarketStandardDetailVO marketStandardDetailVO) {
public synchronized void edit(MarketStandardDetailVO marketStandardDetailVO) {
// todo 状态为已发布需要生成新数据,版本号等
// 修改清单信息
LawsMarketStandard manifest = marketStandardDetailVO.getManifest();
LawsMarketStandard lawsMarketStandardOld = getById(manifest.getId());
if(Objects.isNull(lawsMarketStandardOld)){
throw new JeroBootException("数据不存在");
}
List<String> listCountry = Arrays.stream(manifest.getCountry().split(",")).sorted().collect(Collectors.toList());
List<String> listOldCountry = Arrays.stream(lawsMarketStandardOld.getCountry().split(",")).sorted().collect(Collectors.toList());;
if(!Objects.equals(listCountry,listOldCountry)){
manifest.setManifestNo(generateManifestNo(manifest.getCountry()));
}
updateById(manifest);
// 删除旧数据
LambdaQueryWrapper<LawsMarketStandardDetail> wrapper = new LambdaQueryWrapper<>();