update 标签管理迁移表

This commit is contained in:
lijiarao
2023-08-18 17:34:22 +08:00
parent 8046654ad5
commit 13c7e83205
17 changed files with 839 additions and 902 deletions
@@ -25,4 +25,12 @@ public class UserUtils {
} }
return userId; return userId;
} }
/**
* 获取当前登录用户
*
*/
public static LoginUser getLoginUser() {
return (LoginUser) SecurityUtils.getSubject().getPrincipal();
}
} }
@@ -61,8 +61,8 @@ import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl; import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
import com.jero.modules.system.util.MyStringUtils; import com.jero.modules.system.util.MyStringUtils;
import com.jero.modules.system.util.PDFUtils; import com.jero.modules.system.util.PDFUtils;
import com.jero.modules.tag.entity.OnlCgformArea; import com.jero.modules.tag.entity.LawsArea;
import com.jero.modules.tag.service.impl.OnlCgformAreaServiceImpl; import com.jero.modules.tag.service.impl.LawsAreaServiceImpl;
import lombok.SneakyThrows; import lombok.SneakyThrows;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.map.HashedMap; import org.apache.commons.collections.map.HashedMap;
@@ -109,7 +109,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
@Autowired @Autowired
private OnlCgformFieldServiceImpl onlCgformFieldService; private OnlCgformFieldServiceImpl onlCgformFieldService;
@Autowired @Autowired
private OnlCgformAreaServiceImpl onlCgformAreaServiceImpl; private LawsAreaServiceImpl onlCgformAreaServiceImpl;
@Resource @Resource
private BussDocumentLibraryEOMapper bussDocumentLibraryEOMapper; private BussDocumentLibraryEOMapper bussDocumentLibraryEOMapper;
@Autowired @Autowired
@@ -583,10 +583,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
*/ */
@Override @Override
public List<Map<String, Object>> getAddForm(String flag, String cut, String type) { public List<Map<String, Object>> getAddForm(String flag, String cut, String type) {
OnlCgformArea onlCgformArea = new OnlCgformArea(); LawsArea lawsArea = new LawsArea();
onlCgformArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue()); lawsArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue());
//区域管理 //区域管理
List<OnlCgformArea> areaList = onlCgformAreaServiceImpl.queryList(onlCgformArea); List<LawsArea> areaList = onlCgformAreaServiceImpl.queryList(lawsArea);
//字段属性 //字段属性
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag); List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
//文件类型字段 //文件类型字段
@@ -613,18 +613,18 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
params.put("cut",cut); params.put("cut",cut);
List<SysCategoryTreeVO> sysCategoryTree = sysCategoryService.getSysCategoryTree(null,params); List<SysCategoryTreeVO> sysCategoryTree = sysCategoryService.getSysCategoryTree(null,params);
List<Map<String, Object>> resultTemp = new ArrayList<>(); List<Map<String, Object>> resultTemp = new ArrayList<>();
for (OnlCgformArea onlCgformAreaTemp : areaList) { for (LawsArea lawsAreaTemp : areaList) {
List<Map<String, Object>> Results = new ArrayList<>(); List<Map<String, Object>> Results = new ArrayList<>();
Map<String, Object> mapTemp = new HashMap<>(); Map<String, Object> mapTemp = new HashMap<>();
String areaName = ""; String areaName = "";
if (LanguageEnum.CN.getValue().equals(cut)) { if (LanguageEnum.CN.getValue().equals(cut)) {
areaName = onlCgformAreaTemp.getShowArea(); areaName = lawsAreaTemp.getShowArea();
} else { } else {
areaName = onlCgformAreaTemp.getEnName(); areaName = lawsAreaTemp.getEnName();
} }
List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> onlCgformAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList()); List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> lawsAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList());
for (OnlCgformField onlCgformField : fieldListTemp) { for (OnlCgformField onlCgformField : fieldListTemp) {
if (onlCgformAreaTemp.getId().equals(onlCgformField.getShowArea())) { if (lawsAreaTemp.getId().equals(onlCgformField.getShowArea())) {
String dictId = onlCgformField.getDictId(); String dictId = onlCgformField.getDictId();
List<SysCategoryTreeVO> sysCategoryTreeVOList = new ArrayList<>(); List<SysCategoryTreeVO> sysCategoryTreeVOList = new ArrayList<>();
if (StringUtils.isNotBlank(dictId)) { if (StringUtils.isNotBlank(dictId)) {
@@ -643,9 +643,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
} }
} }
if (LanguageEnum.CN.getValue().equals(cut)) { if (LanguageEnum.CN.getValue().equals(cut)) {
mapTemp.put(onlCgformAreaTemp.getShowArea(), Results); mapTemp.put(lawsAreaTemp.getShowArea(), Results);
} else { } else {
mapTemp.put(onlCgformAreaTemp.getEnName(), Results); mapTemp.put(lawsAreaTemp.getEnName(), Results);
} }
resultTemp.add(mapTemp); resultTemp.add(mapTemp);
} }
@@ -658,10 +658,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
* @return * @return
*/ */
public List<Map<String, Object>> getField(String flag, String cut, String type) { public List<Map<String, Object>> getField(String flag, String cut, String type) {
OnlCgformArea onlCgformArea = new OnlCgformArea(); LawsArea lawsArea = new LawsArea();
onlCgformArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue()); lawsArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue());
//区域管理 //区域管理
List<OnlCgformArea> areaList = onlCgformAreaServiceImpl.queryList(onlCgformArea); List<LawsArea> areaList = onlCgformAreaServiceImpl.queryList(lawsArea);
//字段属性 //字段属性
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag); List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
//过滤出字段为树形结构的 //过滤出字段为树形结构的
@@ -685,14 +685,14 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
params.put("cut",cut); params.put("cut",cut);
List<SysCategoryTreeVO> sysCategoryTree = sysCategoryService.getSysCategoryTree(null,params); List<SysCategoryTreeVO> sysCategoryTree = sysCategoryService.getSysCategoryTree(null,params);
List<Map<String, Object>> Results = new ArrayList<>(); List<Map<String, Object>> Results = new ArrayList<>();
for (OnlCgformArea onlCgformAreaTemp : areaList) { for (LawsArea lawsAreaTemp : areaList) {
String areaName = ""; String areaName = "";
if (LanguageEnum.CN.getValue().equals(cut)) { if (LanguageEnum.CN.getValue().equals(cut)) {
areaName = onlCgformAreaTemp.getShowArea(); areaName = lawsAreaTemp.getShowArea();
} else { } else {
areaName = onlCgformAreaTemp.getEnName(); areaName = lawsAreaTemp.getEnName();
} }
List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> onlCgformAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList()); List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> lawsAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList());
/*OnlCgformField phasedOnlCgformField = new OnlCgformField(); /*OnlCgformField phasedOnlCgformField = new OnlCgformField();
phasedOnlCgformField.setId(UUID.randomUUID().toString().replace("-", "")); phasedOnlCgformField.setId(UUID.randomUUID().toString().replace("-", ""));
phasedOnlCgformField.setDbFieldTxt("分阶段实施详情"); phasedOnlCgformField.setDbFieldTxt("分阶段实施详情");
@@ -834,21 +834,21 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<Map<String, Object>> Results = new ArrayList<>(); // 要返回的结果 List<Map<String, Object>> Results = new ArrayList<>(); // 要返回的结果
//区域管理 //区域管理
OnlCgformArea onlCgformArea = new OnlCgformArea(); LawsArea lawsArea = new LawsArea();
onlCgformArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue()); lawsArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue());
List<OnlCgformArea> areaList = onlCgformAreaServiceImpl.queryList(onlCgformArea); List<LawsArea> areaList = onlCgformAreaServiceImpl.queryList(lawsArea);
for (OnlCgformArea onlCgformAreaTemp : areaList) { for (LawsArea lawsAreaTemp : areaList) {
String areaName = ""; String areaName = "";
if (LanguageEnum.CN.getValue().equals(cut)) { if (LanguageEnum.CN.getValue().equals(cut)) {
areaName = onlCgformAreaTemp.getShowArea(); areaName = lawsAreaTemp.getShowArea();
} else { } else {
areaName = onlCgformAreaTemp.getEnName(); areaName = lawsAreaTemp.getEnName();
} }
Map<String, Object> menuMap = new HashMap<>(); Map<String, Object> menuMap = new HashMap<>();
menuMap.put("name",areaName); menuMap.put("name",areaName);
Results.add(menuMap); Results.add(menuMap);
// List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> onlCgformAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList()); // List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> lawsAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList());
// for (OnlCgformField onlCgformField : fieldListTemp) { // for (OnlCgformField onlCgformField : fieldListTemp) {
// //字段 // //字段
// String dbFieldName = onlCgformField.getDbFieldName(); // String dbFieldName = onlCgformField.getDbFieldName();
@@ -896,9 +896,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<Map<String, Object>> mapList = bussDocumentLibraryEOMapper.selectMapsAll(null); List<Map<String, Object>> mapList = bussDocumentLibraryEOMapper.selectMapsAll(null);
//区域管理 //区域管理
OnlCgformArea onlCgformArea = new OnlCgformArea(); LawsArea lawsArea = new LawsArea();
onlCgformArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue()); lawsArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue());
List<OnlCgformArea> areaList = onlCgformAreaServiceImpl.queryList(onlCgformArea); List<LawsArea> areaList = onlCgformAreaServiceImpl.queryList(lawsArea);
//过滤出下拉选 //过滤出下拉选
List<OnlCgformField> onlCgformFieldList = fieldList.stream() List<OnlCgformField> onlCgformFieldList = fieldList.stream()
@@ -938,16 +938,16 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
//过滤出表单字段(is_show_form-->表单是否显示0否 1是) //过滤出表单字段(is_show_form-->表单是否显示0否 1是)
fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(MyStringUtils.valueOf(e.getIsShowForm()))).collect(Collectors.toList()); fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(MyStringUtils.valueOf(e.getIsShowForm()))).collect(Collectors.toList());
} }
for (OnlCgformArea onlCgformAreaTemp : areaList) { for (LawsArea lawsAreaTemp : areaList) {
String areaName = ""; String areaName = "";
if (LanguageEnum.CN.getValue().equals(cut)) { if (LanguageEnum.CN.getValue().equals(cut)) {
areaName = onlCgformAreaTemp.getShowArea(); areaName = lawsAreaTemp.getShowArea();
} else { } else {
areaName = onlCgformAreaTemp.getEnName(); areaName = lawsAreaTemp.getEnName();
} }
Map<String, Object> mapTemp = new HashMap<>(); Map<String, Object> mapTemp = new HashMap<>();
List<Map<String, Object>> resultTemp = new ArrayList<>(); List<Map<String, Object>> resultTemp = new ArrayList<>();
List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> onlCgformAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList()); List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> lawsAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList());
if(LanguageEnum.CN.getValue().equals(cut)){ if(LanguageEnum.CN.getValue().equals(cut)){
fieldListTemp.removeIf(new Predicate<OnlCgformField>() { fieldListTemp.removeIf(new Predicate<OnlCgformField>() {
@Override @Override
@@ -992,7 +992,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
//处理文件 //处理文件
if (FieldTypeEnum.FILE.getValue().equals(fieldShowType)) { if (FieldTypeEnum.FILE.getValue().equals(fieldShowType)) {
//处理文本信息和关联信息区域之外的区域中文件类型字段返归结果格式 //处理文本信息和关联信息区域之外的区域中文件类型字段返归结果格式
if(!"文本信息".equals(onlCgformAreaTemp.getShowArea()) && !"关联信息".equals(onlCgformAreaTemp.getShowArea())){ if(!"文本信息".equals(lawsAreaTemp.getShowArea()) && !"关联信息".equals(lawsAreaTemp.getShowArea())){
List<OSSFile> fileInfos = iOSSFileService.getFileInfosByConnectId(value); List<OSSFile> fileInfos = iOSSFileService.getFileInfosByConnectId(value);
List<String> fileIdList = fileInfos.stream().map(OSSFile::getId).collect(Collectors.toList()); List<String> fileIdList = fileInfos.stream().map(OSSFile::getId).collect(Collectors.toList());
Map<String, Object> mapNew = new HashMap<>(); Map<String, Object> mapNew = new HashMap<>();
@@ -1082,10 +1082,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
} }
} }
if (LanguageEnum.CN.getValue().equals(cut)) { if (LanguageEnum.CN.getValue().equals(cut)) {
areaName = onlCgformAreaTemp.getShowArea(); areaName = lawsAreaTemp.getShowArea();
mapTemp.put(areaName, resultTemp); mapTemp.put(areaName, resultTemp);
} else { } else {
areaName = onlCgformAreaTemp.getEnName(); areaName = lawsAreaTemp.getEnName();
mapTemp.put(areaName, resultTemp); mapTemp.put(areaName, resultTemp);
} }
Results.add(mapTemp); Results.add(mapTemp);
@@ -7,9 +7,9 @@ import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.constant.enums.LanguageEnum; import com.jero.common.constant.enums.LanguageEnum;
import com.jero.common.system.base.controller.JeroController; import com.jero.common.system.base.controller.JeroController;
import com.jero.modules.system.service.ISysDictItemService; import com.jero.modules.system.service.ISysDictItemService;
import com.jero.modules.tag.entity.OnlCgformArea; import com.jero.modules.tag.entity.LawsArea;
import com.jero.modules.tag.service.IOnlCgformAreaService; import com.jero.modules.tag.service.ILawsAreaService;
import com.jero.modules.tag.service.IOnlCgformTagService; import com.jero.modules.tag.service.ILawsTagService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -34,15 +34,15 @@ import java.util.Map;
*/ */
@Api(tags="区域管理表") @Api(tags="区域管理表")
@RestController @RestController
@RequestMapping("/tag/onlCgformArea") @RequestMapping("/tag/LawsArea")
@Slf4j @Slf4j
public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlCgformAreaService> { public class LawsAreaController extends JeroController<LawsArea, ILawsAreaService> {
@Autowired @Autowired
private IOnlCgformAreaService onlCgformAreaService; private ILawsAreaService lawsAreaService;
@Autowired @Autowired
private ISysDictItemService sysDictItemService; private ISysDictItemService sysDictItemService;
@Autowired @Autowired
private IOnlCgformTagService onlCgformTagService; private ILawsTagService lawsTagService;
/** /**
* 分页列表查询 * 分页列表查询
* *
@@ -53,7 +53,7 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
@PostMapping(value = "/page") @PostMapping(value = "/page")
//@RequiresPermissions("area:page") //@RequiresPermissions("area:page")
public Result<?> queryPageList(@RequestBody Map<String,Object> params) { public Result<?> queryPageList(@RequestBody Map<String,Object> params) {
IPage<OnlCgformArea> pageList=onlCgformAreaService.queryPageList(params); IPage<LawsArea> pageList= lawsAreaService.queryPageList(params);
return Result.OK(pageList); return Result.OK(pageList);
} }
@@ -65,8 +65,8 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
@AutoLog(value = "区域管理表-列表查询") @AutoLog(value = "区域管理表-列表查询")
@ApiOperation(value="区域管理表-列表查询", notes="区域管理表-列表查询") @ApiOperation(value="区域管理表-列表查询", notes="区域管理表-列表查询")
@GetMapping(value = "/list") @GetMapping(value = "/list")
public Result<List<OnlCgformArea>> queryList(OnlCgformArea onlCgformArea){ public Result<List<LawsArea>> queryList(LawsArea lawsArea){
List<OnlCgformArea> list = onlCgformAreaService.queryList(onlCgformArea); List<LawsArea> list = lawsAreaService.queryList(lawsArea);
return Result.OK(list); return Result.OK(list);
} }
@@ -78,33 +78,33 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
@AutoLog(value = "区域管理表-查询展示区域") @AutoLog(value = "区域管理表-查询展示区域")
@ApiOperation(value="区域管理表-查询展示区域", notes="区域管理表-查询展示区域") @ApiOperation(value="区域管理表-查询展示区域", notes="区域管理表-查询展示区域")
@GetMapping(value = "/queryShowArea") @GetMapping(value = "/queryShowArea")
public Result<List<OnlCgformArea>> queryShowArea(@RequestParam(name = "cut") String cut, OnlCgformArea onlCgformArea){ public Result<List<LawsArea>> queryShowArea(@RequestParam(name = "cut") String cut, LawsArea lawsArea){
List<OnlCgformArea> list = onlCgformAreaService.queryShowArea(cut,onlCgformArea); List<LawsArea> list = lawsAreaService.queryShowArea(cut, lawsArea);
return Result.OK(list); return Result.OK(list);
} }
/** /**
* 添加 * 添加
* *
* @param onlCgformArea * @param lawsArea
* @return * @return
*/ */
@AutoLog(value = "区域管理表-添加") @AutoLog(value = "区域管理表-添加")
@ApiOperation(value="区域管理表-添加", notes="区域管理表-添加") @ApiOperation(value="区域管理表-添加", notes="区域管理表-添加")
@PostMapping(value = "/add") @PostMapping(value = "/add")
@RequiresPermissions("area:add") @RequiresPermissions("area:add")
public Result<?> add(@Validated @RequestBody OnlCgformArea onlCgformArea) { public Result<?> add(@Validated @RequestBody LawsArea lawsArea) {
int count=onlCgformAreaService.queryExitAreaName(onlCgformArea); int count= lawsAreaService.queryExitAreaName(lawsArea);
if (count > 0) { if (count > 0) {
// TODO Cut属性一定能拿到?拿不到的时候显示中文还是英文?现在对吗?测试了吗? // TODO Cut属性一定能拿到?拿不到的时候显示中文还是英文?现在对吗?测试了吗?
//中英切换提示语 //中英切换提示语
if(LanguageEnum.CN.getValue().equals(onlCgformArea.getCut())) { if(LanguageEnum.CN.getValue().equals(lawsArea.getCut())) {
return Result.error("同一所属模块下,展示区域名称不能重复!"); return Result.error("同一所属模块下,展示区域名称不能重复!");
}else{ }else{
return Result.error("Under the same module, the display area name cannot be duplicate!"); return Result.error("Under the same module, the display area name cannot be duplicate!");
} }
}else { }else {
onlCgformAreaService.add(onlCgformArea); lawsAreaService.add(lawsArea);
return Result.OK("添加成功!"); return Result.OK("添加成功!");
} }
} }
@@ -112,27 +112,27 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
/** /**
* 编辑 * 编辑
* *
* @param onlCgformArea * @param lawsArea
* @return * @return
*/ */
@AutoLog(value = "区域管理表-编辑") @AutoLog(value = "区域管理表-编辑")
@ApiOperation(value="区域管理表-编辑", notes="区域管理表-编辑") @ApiOperation(value="区域管理表-编辑", notes="区域管理表-编辑")
@PutMapping(value = "/edit") @PutMapping(value = "/edit")
@RequiresPermissions("area:edit") @RequiresPermissions("area:edit")
public Result<?> edit(@Validated @RequestBody OnlCgformArea onlCgformArea) { public Result<?> edit(@Validated @RequestBody LawsArea lawsArea) {
// TODO 编辑的时候不考虑ID?不试试现在还能编辑成功? // TODO 编辑的时候不考虑ID?不试试现在还能编辑成功?
QueryWrapper<OnlCgformArea> queryWrapper=new QueryWrapper<>(); QueryWrapper<LawsArea> queryWrapper=new QueryWrapper<>();
queryWrapper.eq("show_area", onlCgformArea.getShowArea()).eq("is_model", onlCgformArea.getIsModel()); queryWrapper.eq("show_area", lawsArea.getShowArea()).eq("is_model", lawsArea.getIsModel());
List<OnlCgformArea> existAreaList=onlCgformAreaService.list(queryWrapper); List<LawsArea> existAreaList= lawsAreaService.list(queryWrapper);
if(!existAreaList.isEmpty()){//有同名数据 if(!existAreaList.isEmpty()){//有同名数据
if(existAreaList.get(0).getId().equals(onlCgformArea.getId())) {//已存在同名的数据,就是正在编辑的这个 if(existAreaList.get(0).getId().equals(lawsArea.getId())) {//已存在同名的数据,就是正在编辑的这个
onlCgformAreaService.editById(onlCgformArea); lawsAreaService.editById(lawsArea);
return Result.OK("编辑成功!"); return Result.OK("编辑成功!");
}else { }else {
//中英切换提示语 //中英切换提示语
// TODO Cut属性一定能拿到?拿不到的时候显示中文还是英文?现在对吗?测试了吗? // TODO Cut属性一定能拿到?拿不到的时候显示中文还是英文?现在对吗?测试了吗?
if (LanguageEnum.CN.getValue().equals(onlCgformArea.getCut())) { if (LanguageEnum.CN.getValue().equals(lawsArea.getCut())) {
return Result.error("同一所属模块下,展示区域名称不能重复!"); return Result.error("同一所属模块下,展示区域名称不能重复!");
} else { } else {
@@ -140,7 +140,7 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
} }
} }
}else { }else {
onlCgformAreaService.editById(onlCgformArea); lawsAreaService.editById(lawsArea);
return Result.OK("编辑成功!"); return Result.OK("编辑成功!");
} }
} }
@@ -157,8 +157,8 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
@RequiresPermissions("area:delete") @RequiresPermissions("area:delete")
public Result<?> delete(@RequestParam(name="id",required=true) String id, public Result<?> delete(@RequestParam(name="id",required=true) String id,
@RequestParam(name="cut",required=true) String cut) { @RequestParam(name="cut",required=true) String cut) {
OnlCgformArea onlCgformArea = onlCgformAreaService.queryById(id); LawsArea lawsArea = lawsAreaService.queryById(id);
int count=onlCgformTagService.queryExitArea(onlCgformArea); int count= lawsTagService.queryExitArea(lawsArea);
if (count > 0) { if (count > 0) {
//中英切换提示语 //中英切换提示语
// TODO 只改一半?编辑和新增改了,删除不改? // TODO 只改一半?编辑和新增改了,删除不改?
@@ -168,7 +168,7 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
return Result.error("This exhibition area has associated data and cannot be deleted!"); return Result.error("This exhibition area has associated data and cannot be deleted!");
} }
}else { }else {
onlCgformAreaService.deleteById(id); lawsAreaService.deleteById(id);
return Result.OK("删除成功!"); return Result.OK("删除成功!");
} }
} }
@@ -184,7 +184,7 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
@ApiOperation(value="区域管理表-批量删除", notes="区域管理表-批量删除") @ApiOperation(value="区域管理表-批量删除", notes="区域管理表-批量删除")
@GetMapping(value = "/deleteBatch") @GetMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) { public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.onlCgformAreaService.deleteByIds(Arrays.asList(ids.split(","))); this.lawsAreaService.deleteByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!"); return Result.OK("批量删除成功!");
} }
@@ -198,27 +198,27 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
@ApiOperation(value="区域管理表-通过id查询", notes="区域管理表-通过id查询") @ApiOperation(value="区域管理表-通过id查询", notes="区域管理表-通过id查询")
@GetMapping(value = "/queryById") @GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) { public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
OnlCgformArea onlCgformArea = onlCgformAreaService.queryById(id); LawsArea lawsArea = lawsAreaService.queryById(id);
if(onlCgformArea==null) { if(lawsArea ==null) {
//中英切换提示语 //中英切换提示语
if(LanguageEnum.CN.getValue().equals(onlCgformArea.getCut())) { if(LanguageEnum.CN.getValue().equals(lawsArea.getCut())) {
return Result.error("未找到对应数据"); return Result.error("未找到对应数据");
}else{ }else{
return Result.error("No corresponding data was found."); return Result.error("No corresponding data was found.");
} }
} }
return Result.OK(onlCgformArea); return Result.OK(lawsArea);
} }
/** /**
* 导出excel * 导出excel
* *
* @param request * @param request
* @param onlCgformArea * @param lawsArea
*/ */
@RequestMapping(value = "/exportXls") @RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, OnlCgformArea onlCgformArea) { public ModelAndView exportXls(HttpServletRequest request, LawsArea lawsArea) {
return super.exportXls(request, onlCgformArea, OnlCgformArea.class, "区域管理表"); return super.exportXls(request, lawsArea, LawsArea.class, "区域管理表");
} }
/** /**
@@ -230,7 +230,7 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
*/ */
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, OnlCgformArea.class); return super.importExcel(request, response, LawsArea.class);
} }
/** /**
@@ -243,15 +243,15 @@ public class OnlCgformAreaController extends JeroController<OnlCgformArea, IOnlC
@ApiOperation(value="区域管理表-展示区域查询", notes="区域管理表-展示区域查询") @ApiOperation(value="区域管理表-展示区域查询", notes="区域管理表-展示区域查询")
@GetMapping(value = "/selectShowAreaById") @GetMapping(value = "/selectShowAreaById")
public Result<?> selectShowAreaById(@RequestParam(name="id",required=true) String id) { public Result<?> selectShowAreaById(@RequestParam(name="id",required=true) String id) {
OnlCgformArea onlCgformArea = (OnlCgformArea) onlCgformAreaService.selectShowAreaById(id); LawsArea lawsArea = (LawsArea) lawsAreaService.selectShowAreaById(id);
if(onlCgformArea==null) { if(lawsArea ==null) {
//中英切换提示语 //中英切换提示语
if(LanguageEnum.CN.getValue().equals(onlCgformArea.getCut())) { if(LanguageEnum.CN.getValue().equals(lawsArea.getCut())) {
return Result.error("未找到对应数据"); return Result.error("未找到对应数据");
}else{ }else{
return Result.error("No corresponding data was found."); return Result.error("No corresponding data was found.");
} }
} }
return Result.OK(onlCgformArea); return Result.OK(lawsArea);
} }
} }
@@ -0,0 +1,310 @@
package com.jero.modules.tag.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.enums.LanguageEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.enums.FixedFieldEnum;
import com.jero.modules.tag.entity.LawsTag;
import com.jero.modules.tag.entity.LawsArea;
import com.jero.modules.tag.enums.FileTableIdEnum;
import com.jero.modules.tag.service.ILawsTagService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
/**
* @Description: 标签管理
* @Author: jero-boot
* @Date: 2022-02-12
* @Version: V1.0
*/
@Api(tags="标签管理")
@RestController
@RequestMapping("/tag/lawsTag")
@Slf4j
public class LawsTagController extends JeroController<LawsTag, ILawsTagService> {
@Autowired
private ILawsTagService lawsTagService;
//@Autowired
//private OnlCgformApiController onlCgformApiController;
/**
* 分页列表查询
*
* @return
*/
@AutoLog(value = "标签管理-分页列表查询")
@ApiOperation(value="标签管理-分页列表查询", notes="标签管理-分页列表查询")
@RequiresPermissions("tag:page")
@PostMapping(value = "/page")
public Result<?> queryPageList(@RequestBody Map<String,Object> params) {
IPage<LawsTag> pageList= lawsTagService.queryPageList(params);
return Result.OK(pageList);
}
/**
* 列表查询
*
* @return
*/
@AutoLog(value = "标签管理-列表查询")
@ApiOperation(value="标签管理-列表查询", notes="标签管理-列表查询")
@GetMapping(value = "/list")
public Result<List<LawsTag>> queryList(@Validated @RequestBody LawsArea lawsArea) {
List<LawsTag> list = lawsTagService.queryList(lawsArea);
return Result.OK(list);
}
/**
* 添加
*
* @param lawsTag
* @return
*/
@AutoLog(value = "标签管理-添加")
@ApiOperation(value="标签管理-添加", notes="标签管理-添加")
@PostMapping(value = "/add")
@RequiresPermissions("tag:add")
public Result<?> add(@Validated @RequestBody LawsTag lawsTag) {
Result<LawsTag> result=new Result<>();
//校验--不能向数据库添加重复数据
QueryWrapper<LawsTag> queryWrapper = new QueryWrapper<>();
//查询同一模块下,同名数据
queryWrapper.eq("db_field_txt", lawsTag.getDbFieldTxt()).eq("is_model", lawsTag.getIsModel());
List<LawsTag> existCgformTagList = this.lawsTagService.list(queryWrapper);
if(!existCgformTagList.isEmpty()){
LawsTag lawsTagDB = existCgformTagList.get(0);
//存在重复同名标签,且已删
if(lawsTagDB.getIsDelete() == CommonConstant.DEL_FLAG_1){
//判断属性类型是否一样
if (lawsTagDB.getFieldShowType().equals(lawsTag.getFieldShowType())){
//属性类型一样,恢复
this.lawsTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_0, lawsTagDB.getId());
lawsTag.setId(lawsTagDB.getId());
this.lawsTagService.editById(lawsTag);//更新数据
}else{
//类不同, 删除原标签,同步数据库.再加回来新的,再同步
this.lawsTagService.deleteById(lawsTagDB.getId());
if(lawsTag.getIsModel().equals(FileTableIdEnum.DOMESTIC_REGULATIONS.getValue())) {//同步文档库
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
this.lawsTagService.add(lawsTag);
}
if(lawsTag.getIsModel().equals(FileTableIdEnum.DOMESTIC_REGULATIONS.getValue())) {//同步文档库
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}else{
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(lawsTag.getCut())) {
throw new JeroBootException("属性已存在,请检查");
}else{
throw new JeroBootException("Attribute already exists, please check!");
}
}
}else {
lawsTagService.add(lawsTag);
if(lawsTag.getIsModel().equals(FileTableIdEnum.DOMESTIC_REGULATIONS.getValue())) {//同步文档库
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
return result.success("添加成功!");
}
return result;
}
/**
* 编辑
*
* @param lawsTag
* @return
*/
@AutoLog(value = "标签管理-编辑")
@ApiOperation(value="标签管理-编辑", notes="标签管理-编辑")
@PutMapping(value = "/edit")
@RequiresPermissions("tag:edit")
public Result<?> edit(@Validated @RequestBody LawsTag lawsTag) {
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(lawsTag.getIsReadOnly()) || FixedFieldEnum.CONFIGURABLE_FIELD.getValue().equals(lawsTag.getIsReadOnly())) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(lawsTag.getCut())) {
return Result.error("固定字段,不可修改");
}else{
return Result.error("Fixed field, which cannot be modified.");
}
}else {
QueryWrapper<LawsTag> queryWrapper=new QueryWrapper<>();
//查询同一模块下,同名数据
queryWrapper.eq("db_Field_txt", lawsTag.getDbFieldTxt()).eq("is_model", lawsTag.getIsModel());
List<LawsTag> existCgformTagList= lawsTagService.list(queryWrapper);
if(!existCgformTagList.isEmpty()){//有同名数据
if(existCgformTagList.get(0).getId().equals(lawsTag.getId())){//已存在同名的数据,就是正在编辑的这个
lawsTagService.editById(lawsTag);
if(lawsTag.getIsModel().equals(FileTableIdEnum.DOMESTIC_REGULATIONS.getValue())) {//同步文档库
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}else{//已存在同名的数据,不是正在编辑的这个
LawsTag lawsTagDB = existCgformTagList.get(0);
if(lawsTagDB.getIsDelete()==CommonConstant.DEL_FLAG_1){//有已删数据,恢复
lawsTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_0, lawsTagDB.getId());
lawsTag.setId(lawsTagDB.getId());
lawsTagService.editById(lawsTag);
if(lawsTag.getIsModel().equals(FileTableIdEnum.DOMESTIC_REGULATIONS.getValue())) {//同步文档库
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}else {//有未删数据,报错
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(lawsTag.getCut())) {
return Result.error("属性已存在,请检查");
}else{
return Result.error("Attribute already exists, please check!");
}
}
}
}else{
lawsTagService.editById(lawsTag);
if(lawsTag.getIsModel().equals(FileTableIdEnum.DOMESTIC_REGULATIONS.getValue())) {//同步文档库
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
//this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}
return Result.OK("编辑成功!");
}
}
/**
* 逻辑删除
*(0非固定字段 1固定字段 2字段固定,内部可配)
* @param id
* @return
*/
@AutoLog(value = "标签管理-通过id删除")
@ApiOperation(value="标签管理-通过id删除", notes="标签管理-通过id删除")
@GetMapping(value = "/logicDelete")
@RequiresPermissions("tag:logicDelete")
public Result<String> logicDelete(@RequestParam(name="id",required=true) String id) {
Result<String> result = new Result<>();
LawsTag lawsTag = lawsTagService.queryById(id);
if(StringUtils.isNotBlank(String.valueOf(lawsTag.getIsReadOnly()))) {
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(lawsTag.getIsReadOnly()) || FixedFieldEnum.CONFIGURABLE_FIELD.getValue().equals(lawsTag.getIsReadOnly())) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(lawsTag.getCut())) {
result.error500("固定字段,不可删除");
}else{
result.error500("Fixed field, cannot be deleted.");
}
} else {
lawsTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_1,id);
////onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID),"normal");//逻辑删除-->改变状态,数据库不删
return Result.OK("删除成功!");
}
}
return result;
}
/**
* 批量逻辑删除
*
* @param ids
* @return
*/
@AutoLog(value = "标签管理-批量删除")
@ApiOperation(value="标签管理-批量删除", notes="标签管理-批量删除")
@GetMapping(value = "/logicDeleteBatch")
@RequiresPermissions("tag:logicDeleteBatch")
public Result<?> logicDeleteBatch(@RequestParam(name="ids",required=true) String ids) {
Result<LawsTag> result = new Result<LawsTag>();
List<String> idList = Arrays.asList(ids.split(","));
for(String list:idList){
LawsTag midTag= lawsTagService.getById(list);
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(String.valueOf(midTag.getIsReadOnly())) || FixedFieldEnum.CONFIGURABLE_FIELD.getValue().equals(String.valueOf(midTag.getIsReadOnly()))) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(midTag.getCut())) {
result.error500("包含固定字段,不可删除");
}else{
result.error500("It contains fixed fields and cannot be deleted.");
}
}else {
if (StringUtils.isNotBlank(String.valueOf(midTag.getIsReadOnly()))) {
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(String.valueOf(midTag.getIsReadOnly()))) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(midTag.getCut())) {
result.error500("包含固定字段,不可删除");
}else{
result.error500("It contains fixed fields and cannot be deleted.");
}
} else {
lawsTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_1, midTag.getId());
////onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID),"normal");//逻辑删除-->改变状态,数据库不删
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(midTag.getCut())) {
result.success("批量删除成功!");
}else{
result.success("Batch deletion succeeded!");
}
}
}
}
}
return result;
}
/**
* 通过id查询
*
* @param id
* @return
*/
@AutoLog(value = "标签管理-通过id查询")
@ApiOperation(value="标签管理-通过id查询", notes="标签管理-通过id查询")
@GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
LawsTag lawsTag = lawsTagService.queryById(id);
if(lawsTag ==null) {
return Result.error("未找到对应数据");
}
return Result.OK(lawsTag);
}
/**
* 导出excel
*
* @param request
* @param lawsTag
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, LawsTag lawsTag) {
return super.exportXls(request, lawsTag, LawsTag.class, "标签管理");
}
}
@@ -1,367 +0,0 @@
package com.jero.modules.tag.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.enums.LanguageEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.vo.LoginUser;
import com.jero.generater.modules.online.cgform.controller.OnlCgformApiController;
import com.jero.modules.enums.FixedFieldEnum;
import com.jero.modules.tag.entity.OnlCgformArea;
import com.jero.modules.tag.entity.OnlCgformTag;
import com.jero.modules.tag.enums.FileTableIdEnum;
import com.jero.modules.tag.service.IOnlCgformTagService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
/**
* @Description: 标签管理
* @Author: jero-boot
* @Date: 2022-02-12
* @Version: V1.0
*/
@Api(tags="标签管理")
@RestController
@RequestMapping("/tag/onlCgformTag")
@Slf4j
public class OnlCgformTagController extends JeroController<OnlCgformTag, IOnlCgformTagService> {
@Autowired
private IOnlCgformTagService onlCgformTagService;
@Autowired
private OnlCgformApiController onlCgformApiController;
/**
* 分页列表查询
*
* @return
*/
@AutoLog(value = "标签管理-分页列表查询")
@ApiOperation(value="标签管理-分页列表查询", notes="标签管理-分页列表查询")
@RequiresPermissions("tag:page")
@PostMapping(value = "/page")
public Result<?> queryPageList(@RequestBody Map<String,Object> params) {
IPage<OnlCgformTag> pageList= onlCgformTagService.queryPageList(params);
return Result.OK(pageList);
}
/**
* 列表查询
*
* @return
*/
@AutoLog(value = "标签管理-列表查询")
@ApiOperation(value="标签管理-列表查询", notes="标签管理-列表查询")
@GetMapping(value = "/list")
public Result<List<OnlCgformTag>> queryList(@Validated @RequestBody OnlCgformArea onlCgformArea) {
List<OnlCgformTag> list = onlCgformTagService.queryList(onlCgformArea);
return Result.OK(list);
}
/**
* 添加
*
* @param onlCgformTag
* @return
*/
@AutoLog(value = "标签管理-添加")
@ApiOperation(value="标签管理-添加", notes="标签管理-添加")
@PostMapping(value = "/add")
@RequiresPermissions("tag:add")
public Result<?> add(@Validated @RequestBody OnlCgformTag onlCgformTag) {
checkData();
Result<OnlCgformTag> result=new Result<>();
//校验--不能向数据库添加重复数据
QueryWrapper<OnlCgformTag> queryWrapper = new QueryWrapper<>();
//查询同一模块下,同名数据
queryWrapper.eq("db_field_txt",onlCgformTag.getDbFieldTxt()).eq("is_model",onlCgformTag.getIsModel());
List<OnlCgformTag> existCgformTagList = this.onlCgformTagService.list(queryWrapper);
if(!existCgformTagList.isEmpty()){
OnlCgformTag onlCgformTagDB = existCgformTagList.get(0);
//存在重复同名标签,且已删
if(onlCgformTagDB.getIsDelete() == CommonConstant.DEL_FLAG_1){
//判断属性类型是否一样
if (onlCgformTagDB.getFieldShowType().equals(onlCgformTag.getFieldShowType())){
//属性类型一样,恢复
this.onlCgformTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_0, onlCgformTagDB.getId());
onlCgformTag.setId(onlCgformTagDB.getId());
this.onlCgformTagService.editById(onlCgformTag);//更新数据
}else{
//类不同, 删除原标签,同步数据库.再加回来新的,再同步
this.onlCgformTagService.deleteById(onlCgformTagDB.getId());
if(onlCgformTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//同步文档库
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
this.onlCgformTagService.add(onlCgformTag);
}
if(onlCgformTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//同步文档库
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}else{
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(onlCgformTag.getCut())) {
throw new JeroBootException("属性已存在,请检查");
}else{
throw new JeroBootException("Attribute already exists, please check!");
}
}
}else {
onlCgformTagService.add(onlCgformTag);
if(onlCgformTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//同步文档库
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
return result.success("添加成功!");
}
return result;
}
/**
* 编辑
*
* @param onlCgformTag
* @return
*/
@AutoLog(value = "标签管理-编辑")
@ApiOperation(value="标签管理-编辑", notes="标签管理-编辑")
@PutMapping(value = "/edit")
@RequiresPermissions("tag:edit")
public Result<?> edit(@Validated @RequestBody OnlCgformTag onlCgformTag) {
checkData();
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(onlCgformTag.getIsReadOnly()) || FixedFieldEnum.CONFIGURABLE_FIELD.getValue().equals(onlCgformTag.getIsReadOnly())) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(onlCgformTag.getCut())) {
return Result.error("固定字段,不可修改");
}else{
return Result.error("Fixed field, which cannot be modified.");
}
}else {
QueryWrapper<OnlCgformTag> queryWrapper=new QueryWrapper<>();
//查询同一模块下,同名数据
queryWrapper.eq("db_Field_txt",onlCgformTag.getDbFieldTxt()).eq("is_model",onlCgformTag.getIsModel());
List<OnlCgformTag> existCgformTagList=onlCgformTagService.list(queryWrapper);
if(!existCgformTagList.isEmpty()){//有同名数据
if(existCgformTagList.get(0).getId().equals(onlCgformTag.getId())){//已存在同名的数据,就是正在编辑的这个
onlCgformTagService.editById(onlCgformTag);
if(onlCgformTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//同步文档库
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}else{//已存在同名的数据,不是正在编辑的这个
OnlCgformTag onlCgformTagDB = existCgformTagList.get(0);
if(onlCgformTagDB.getIsDelete()==CommonConstant.DEL_FLAG_1){//有已删数据,恢复
onlCgformTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_0,onlCgformTagDB.getId());
onlCgformTag.setId(onlCgformTagDB.getId());
onlCgformTagService.editById(onlCgformTag);
if(onlCgformTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//同步文档库
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}else {//有未删数据,报错
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(onlCgformTag.getCut())) {
return Result.error("属性已存在,请检查");
}else{
return Result.error("Attribute already exists, please check!");
}
}
}
}else{
onlCgformTagService.editById(onlCgformTag);
if(onlCgformTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//同步文档库
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID.getValue()), "normal");
}else {//同步文档拆分
this.onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_SPLIT_ID.getValue()), "normal");
}
}
return Result.OK("编辑成功!");
}
}
/**
* 逻辑删除
*(0非固定字段 1固定字段 2字段固定,内部可配)
* @param id
* @return
*/
@AutoLog(value = "标签管理-通过id删除")
@ApiOperation(value="标签管理-通过id删除", notes="标签管理-通过id删除")
@GetMapping(value = "/logicDelete")
@RequiresPermissions("tag:logicDelete")
public Result<OnlCgformTag> logicDelete(@RequestParam(name="id",required=true) String id) {
checkData();
Result<OnlCgformTag> result = new Result<>();
OnlCgformTag onlCgformTag = onlCgformTagService.queryById(id);
if(StringUtils.isNotBlank(String.valueOf(onlCgformTag.getIsReadOnly()))) {
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(onlCgformTag.getIsReadOnly()) || FixedFieldEnum.CONFIGURABLE_FIELD.getValue().equals(onlCgformTag.getIsReadOnly())) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(onlCgformTag.getCut())) {
result.error500("固定字段,不可删除");
}else{
result.error500("Fixed field, cannot be deleted.");
}
} else {
onlCgformTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_1,id);
//onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID),"normal");//逻辑删除-->改变状态,数据库不删
result.OK("删除成功!");
}
}
return result;
}
/**
* 批量删除
*
* @param ids
* @return
*/
/* @AutoLog(value = "标签管理-批量删除")
@ApiOperation(value="标签管理-批量删除", notes="标签管理-批量删除")
@DeleteMapping(value = "/deleteBatch")
@RequiresPermissions("tag:deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
Result<OnlCgformTag> result = new Result<OnlCgformTag>();
List<String> idList = Arrays.asList(ids.split(","));
for (String list : idList) {
OnlCgformTag midTag = onlCgformTagService.getById(list);
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(midTag.getIsReadOnly()) || FixedFieldEnum.CONFIGURABLE_FIELD.getValue().equals(midTag.getIsReadOnly())) {
return result.error500("包含固定字段,不可删除");
} else {
this.onlCgformTagService.deleteByIds(Arrays.asList(ids.split(",")));
onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID), "normal");
return result.success("批量删除成功!");
}
}
return result;
}*/
/**
* 批量逻辑删除
*
* @param ids
* @return
*/
@AutoLog(value = "标签管理-批量删除")
@ApiOperation(value="标签管理-批量删除", notes="标签管理-批量删除")
@GetMapping(value = "/logicDeleteBatch")
@RequiresPermissions("tag:logicDeleteBatch")
public Result<?> logicDeleteBatch(@RequestParam(name="ids",required=true) String ids) {
checkData();
Result<OnlCgformTag> result = new Result<OnlCgformTag>();
List<String> idList = Arrays.asList(ids.split(","));
for(String list:idList){
OnlCgformTag midTag=onlCgformTagService.getById(list);
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(String.valueOf(midTag.getIsReadOnly())) || FixedFieldEnum.CONFIGURABLE_FIELD.getValue().equals(String.valueOf(midTag.getIsReadOnly()))) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(midTag.getCut())) {
result.error500("包含固定字段,不可删除");
}else{
result.error500("It contains fixed fields and cannot be deleted.");
}
}else {
if (StringUtils.isNotBlank(String.valueOf(midTag.getIsReadOnly()))) {
if (FixedFieldEnum.FIXED_FIELD_ENUM.getValue().equals(String.valueOf(midTag.getIsReadOnly()))) {
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(midTag.getCut())) {
result.error500("包含固定字段,不可删除");
}else{
result.error500("It contains fixed fields and cannot be deleted.");
}
} else {
onlCgformTagService.updateDictDelFlag(CommonConstant.DEL_FLAG_1, midTag.getId());
//onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID),"normal");//逻辑删除-->改变状态,数据库不删
//中英切换提示语
if(LanguageEnum.CN.getValue().equals(midTag.getCut())) {
result.success("批量删除成功!");
}else{
result.success("Batch deletion succeeded!");
}
}
}
}
}
return result;
}
/**
* 通过id查询
*
* @param id
* @return
*/
@AutoLog(value = "标签管理-通过id查询")
@ApiOperation(value="标签管理-通过id查询", notes="标签管理-通过id查询")
@GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
OnlCgformTag onlCgformTag = onlCgformTagService.queryById(id);
if(onlCgformTag==null) {
return Result.error("未找到对应数据");
}
return Result.OK(onlCgformTag);
}
/**
* 导出excel
*
* @param request
* @param onlCgformTag
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, OnlCgformTag onlCgformTag) {
return super.exportXls(request, onlCgformTag, OnlCgformTag.class, "标签管理");
}
/* *//**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*//*
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, OnlCgformTag.class);
}*/
/**
* 验证数据
*/
public void checkData(){
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String userId =null;
try {
userId = sysUser.getId();
} catch (Exception e) {
e.printStackTrace();
}
if(Objects.isNull(userId)){
throw new JeroBootException("无法获取当前登录人信息,请重新登录!");
}
}
}
@@ -21,11 +21,10 @@ import java.io.Serializable;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("onl_cgform_area") @TableName("laws_area")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
//@ApiModel(value="onl_cgform_area对象", description="区域管理表") public class LawsArea implements Serializable {
public class OnlCgformArea implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**主键*/ /**主键*/
@@ -21,11 +21,10 @@ import java.io.Serializable;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("onl_cgform_field") @TableName("laws_tag")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
//@ApiModel(value="onl_cgform_tag对象", description="标签项管理") public class LawsTag implements Serializable {
public class OnlCgformTag implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**主键*/ /**主键*/
@@ -148,6 +147,6 @@ public class OnlCgformTag implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private String cut; private String cut;
public OnlCgformTag() { public LawsTag() {
} }
} }
@@ -1,33 +1,21 @@
package com.jero.modules.tag.enums; package com.jero.modules.tag.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public enum FileTableIdEnum { public enum FileTableIdEnum {
FILE_TABLE_ID("文档库表id","48308196e7b04761b533dc31bc899707"), /**
FILE_TABLE_IS_MODEL("文档库所属模块值","1"), *
FILE_SPLIT_ID("文档拆分表id","c998a34ea4b84089932197ed0705c757"), */
FILE_SPLIT_IS_MODEL("文档拆分所属模块值","0"), DOMESTIC_REGULATIONS("国内法规","laws_basic_info","1"),
FOREIGN_REGULATIONS("国外法规","laws_basic_info","2"),
ENTERPRISE_STANDARDS("企业标准","laws_basic_info","3")
; ;
String name; String name;
String table_name;
String value; String value;
FileTableIdEnum(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
} }
@@ -3,7 +3,7 @@ package com.jero.modules.tag.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.modules.tag.entity.OnlCgformArea; import com.jero.modules.tag.entity.LawsArea;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
@@ -15,7 +15,7 @@ import java.util.Map;
* @Date: 2022-01-24 * @Date: 2022-01-24
* @Version: V1.0 * @Version: V1.0
*/ */
public interface OnlCgformAreaMapper extends BaseMapper<OnlCgformArea> { public interface LawsAreaMapper extends BaseMapper<LawsArea> {
/** /**
* 分页列表查询 * 分页列表查询
* *
@@ -26,5 +26,5 @@ public interface OnlCgformAreaMapper extends BaseMapper<OnlCgformArea> {
"from onl_cgform_area as a left join sys_dict_item as i \n" + "from onl_cgform_area as a left join sys_dict_item as i \n" +
"on a.is_model=i.item_value \n" + "on a.is_model=i.item_value \n" +
"where i.dict_id=1493096744092102657 order by a.sort ") "where i.dict_id=1493096744092102657 order by a.sort ")
IPage<OnlCgformArea> queryPageList(IPage page, @Param("params") Map<String,Object> params); IPage<LawsArea> queryPageList(IPage page, @Param("params") Map<String,Object> params);
} }
@@ -2,7 +2,7 @@ package com.jero.modules.tag.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.modules.tag.entity.OnlCgformTag; import com.jero.modules.tag.entity.LawsTag;
import org.apache.ibatis.annotations.Update; import org.apache.ibatis.annotations.Update;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
@@ -14,13 +14,13 @@ import java.util.Map;
* @Date: 2022-02-12 * @Date: 2022-02-12
* @Version: V1.0 * @Version: V1.0
*/ */
public interface OnlCgformTagMapper extends BaseMapper<OnlCgformTag> { public interface LawsTagMapper extends BaseMapper<LawsTag> {
/** /**
* 分页列表查询 * 分页列表查询
* *
* @return * @return
*/ */
IPage<OnlCgformTag> queryPageList(IPage page,@Param("params") Map<String,Object> params); IPage<LawsTag> queryPageList(IPage page, @Param("params") Map<String,Object> params);
/** /**
* 修改状态值 * 修改状态值
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jero.modules.tag.mapper.OnlCgformAreaMapper"> <mapper namespace="com.jero.modules.tag.mapper.LawsAreaMapper">
<resultMap id="OnlCgformAreaResultMap" type="com.jero.modules.tag.entity.OnlCgformArea"> <resultMap id="OnlCgformAreaResultMap" type="com.jero.modules.tag.entity.LawsArea">
<id column="id" property="id" /> <id column="id" property="id" />
<result column="create_by" property="createBy" /> <result column="create_by" property="createBy" />
<result column="create_time" property="createTime" /> <result column="create_time" property="createTime" />
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jero.modules.tag.mapper.OnlCgformTagMapper"> <mapper namespace="com.jero.modules.tag.mapper.LawsTagMapper">
<resultMap id="OnlCgformTagResultMap" type="com.jero.modules.tag.entity.OnlCgformTag"> <resultMap id="OnlCgformTagResultMap" type="com.jero.modules.tag.entity.LawsTag">
<id column="id" property="id" /> <id column="id" property="id" />
<result column="create_by" property="createBy" /> <result column="create_by" property="createBy" />
<result column="create_time" property="createTime" /> <result column="create_time" property="createTime" />
@@ -26,7 +26,7 @@
<result column="is_show_search" property="isShowSearch" /> <result column="is_show_search" property="isShowSearch" />
<result column="is_delete" property="isDelete" /> <result column="is_delete" property="isDelete" />
</resultMap> </resultMap>
<select id="queryPageList" resultType="com.jero.modules.tag.entity.OnlCgformTag"> <select id="queryPageList" resultType="com.jero.modules.tag.entity.LawsTag">
select f.id,f.create_by,f.create_time,f.update_by,f.update_time,f.cgform_head_id, select f.id,f.create_by,f.create_time,f.update_by,f.update_time,f.cgform_head_id,
f.is_model,f.db_field_txt,f.db_field_en_name, f.is_model,f.db_field_txt,f.db_field_en_name,
f.field_show_type,i.item_text as field_show_type_name, f.field_show_type,i.item_text as field_show_type_name,
@@ -2,7 +2,7 @@ package com.jero.modules.tag.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.tag.entity.OnlCgformArea; import com.jero.modules.tag.entity.LawsArea;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -13,23 +13,23 @@ import java.util.Map;
* @Date: 2022-01-24 * @Date: 2022-01-24
* @Version: V1.0 * @Version: V1.0
*/ */
public interface IOnlCgformAreaService extends IService<OnlCgformArea> { public interface ILawsAreaService extends IService<LawsArea> {
/** /**
* 保存 * 保存
* *
* @param onlCgformArea * @param lawsArea
* @return * @return
*/ */
void add(OnlCgformArea onlCgformArea); void add(LawsArea lawsArea);
/** /**
* 更新 * 更新
* *
* @param onlCgformArea * @param lawsArea
* @return * @return
*/ */
void editById(OnlCgformArea onlCgformArea); void editById(LawsArea lawsArea);
/** /**
* 通过id删除 * 通过id删除
@@ -53,21 +53,21 @@ public interface IOnlCgformAreaService extends IService<OnlCgformArea> {
* @param id * @param id
* @return * @return
*/ */
OnlCgformArea queryById(String id); LawsArea queryById(String id);
/** /**
* 列表查询 * 列表查询
* *
* @return * @return
*/ */
List<OnlCgformArea> queryList(OnlCgformArea onlCgformArea); List<LawsArea> queryList(LawsArea lawsArea);
/** /**
* 查询展示区域 * 查询展示区域
* *
* @return * @return
*/ */
List<OnlCgformArea> queryShowArea(String cut, OnlCgformArea onlCgformArea); List<LawsArea> queryShowArea(String cut, LawsArea lawsArea);
/** /**
* 展示区域查询 * 展示区域查询
@@ -75,19 +75,19 @@ public interface IOnlCgformAreaService extends IService<OnlCgformArea> {
* @param id * @param id
* @return * @return
*/ */
List<OnlCgformArea> selectShowAreaById(String id); List<LawsArea> selectShowAreaById(String id);
/** /**
* 分页列表查询 * 分页列表查询
* *
* @return * @return
*/ */
IPage<OnlCgformArea> queryPageList(Map<String, Object> params); IPage<LawsArea> queryPageList(Map<String, Object> params);
/** /**
* 同一所属模块下,展示区域名称不能重复 * 同一所属模块下,展示区域名称不能重复
* *
* @return * @return
*/ */
Integer queryExitAreaName(OnlCgformArea onlCgformArea); Integer queryExitAreaName(LawsArea lawsArea);
} }
@@ -2,8 +2,8 @@ package com.jero.modules.tag.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.tag.entity.OnlCgformArea; import com.jero.modules.tag.entity.LawsArea;
import com.jero.modules.tag.entity.OnlCgformTag; import com.jero.modules.tag.entity.LawsTag;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -14,23 +14,23 @@ import java.util.Map;
* @Date: 2022-02-12 * @Date: 2022-02-12
* @Version: V1.0 * @Version: V1.0
*/ */
public interface IOnlCgformTagService extends IService<OnlCgformTag> { public interface ILawsTagService extends IService<LawsTag> {
/** /**
* 保存 * 保存
* *
* @param onlCgformTag * @param lawsTag
* @return * @return
*/ */
void add(OnlCgformTag onlCgformTag); void add(LawsTag lawsTag);
/** /**
* 更新 * 更新
* *
* @param onlCgformTag * @param lawsTag
* @return * @return
*/ */
void editById(OnlCgformTag onlCgformTag); void editById(LawsTag lawsTag);
/** /**
* 通过id删除 * 通过id删除
@@ -54,14 +54,14 @@ public interface IOnlCgformTagService extends IService<OnlCgformTag> {
* @param id * @param id
* @return * @return
*/ */
OnlCgformTag queryById(String id); LawsTag queryById(String id);
/** /**
* 分页列表查询 * 分页列表查询
* *
* @return * @return
*/ */
IPage<OnlCgformTag> queryPageList(Map<String, Object> params); IPage<LawsTag> queryPageList(Map<String, Object> params);
/** /**
* 修改delFlag * 修改delFlag
@@ -75,14 +75,14 @@ public interface IOnlCgformTagService extends IService<OnlCgformTag> {
* *
* @return * @return
*/ */
List<OnlCgformTag> queryList(OnlCgformArea onlCgformArea); List<LawsTag> queryList(LawsArea lawsArea);
/** /**
* 根据所属模块、属性名称、英文名称是否一致还原数据 * 根据所属模块、属性名称、英文名称是否一致还原数据
* *
* @return * @return
*/ */
Integer queryExitData(OnlCgformTag onlCgformTag) ; Integer queryExitData(LawsTag lawsTag) ;
/** /**
@@ -90,6 +90,6 @@ public interface IOnlCgformTagService extends IService<OnlCgformTag> {
* *
* @return * @return
*/ */
Integer queryExitArea(OnlCgformArea onlCgformArea); Integer queryExitArea(LawsArea lawsArea);
} }
@@ -0,0 +1,343 @@
package com.jero.modules.tag.service.impl;
import cn.hutool.core.lang.Validator;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.enums.LanguageEnum;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.system.vo.LoginUser;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
import com.jero.modules.document.enums.FieldTypeEnum;
import com.jero.modules.enums.FixedFieldEnum;
import com.jero.modules.system.service.impl.SysDictServiceImpl;
import com.jero.modules.system.util.HanYuPinYinUtil;
import com.jero.modules.tag.entity.LawsArea;
import com.jero.modules.tag.entity.LawsTag;
import com.jero.modules.tag.enums.FileTableIdEnum;
import com.jero.modules.tag.mapper.LawsTagMapper;
import com.jero.modules.tag.service.ILawsTagService;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @Description: 标签管理
* @Author: jero-boot
* @Date: 2022-02-12
* @Version: V1.0
*/
@Service
public class ILawsTagServiceImpl extends ServiceImpl<LawsTagMapper, LawsTag> implements ILawsTagService {
@Autowired
private LawsTagMapper lawsTagMapper;
@Autowired
private OnlCgformFieldServiceImpl onlCgformFieldService;
@Autowired
private LawsAreaServiceImpl onlCgformAreaService;
@Autowired
private SysDictServiceImpl sysDictService;
/**
* 保存
*
* @param lawsTag
* @return
*/
@Override
public void add(LawsTag lawsTag) {
//校验--逻辑删除
Integer count=queryExitData(lawsTag);
if (count > 0) {
lawsTag.setIsDelete(CommonConstant.DEL_FLAG_0);
} else {
Integer inputOrderNum = lawsTag.getOrderNum();
//查询展示顺序相同的
QueryWrapper<LawsTag> queryWrapper= new QueryWrapper<>();
queryWrapper.eq("is_model", lawsTag.getIsModel())
.eq("is_delete",CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
queryWrapper.eq("order_num", inputOrderNum);
Integer orderNumCount = lawsTagMapper.selectCount(queryWrapper);
if(orderNumCount > 0) {//有重复展示顺序的,后面的号全+1
//设置排序
QueryWrapper<LawsTag> orderNumQueryWrapper = new QueryWrapper<>();
orderNumQueryWrapper.ge("order_num", inputOrderNum)
.eq("is_model", lawsTag.getIsModel())
.eq("is_delete", CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
List<LawsTag> geOrderNumList = list(orderNumQueryWrapper);
//判断相邻的序号,去掉不邻的
for(int i = 0 ; i < geOrderNumList.size() ; i++) {
if (geOrderNumList.size() == 1){
break;
}else if(i+1 >= geOrderNumList.size()){
break;
}else if (geOrderNumList.get(i + 1).getOrderNum() - geOrderNumList.get(i).getOrderNum() > 1) {
int deleteStart = geOrderNumList.get(i+1).getOrderNum();
geOrderNumList = geOrderNumList.stream().filter(e->e.getOrderNum() < deleteStart).collect(Collectors.toList());
break;
}
}
geOrderNumList.stream().forEach(e -> e.setOrderNum(e.getOrderNum() + 1));
saveOrUpdateBatch(geOrderNumList);
}
//处理DBLength为null的情况,默认为100
if (lawsTag.getDbLength() == null){
lawsTag.setDbLength(100);
}
//设置标签存入数据库的字段类型
if(lawsTag.getFieldShowType().equals(FieldTypeEnum.TEXT_NUMBER.getValue())){
lawsTag.setDbType("Double");
}else if(lawsTag.getFieldShowType().equals(FieldTypeEnum.DATE_SINGLE.getValue())){
lawsTag.setDbType("Date");
}else{
lawsTag.setDbType("String");
if(lawsTag.getFieldShowType().equals(FieldTypeEnum.PULL_SINGLE.getValue())){
lawsTag.setDbLength(36); //单个ID的最大长度是36,所以单选默认设置为36
}else if(lawsTag.getFieldShowType().equals(FieldTypeEnum.PULL_MORE.getValue())){
lawsTag.setDbLength(2000); // 多选默认设置为2000,即可选择2000/36=55个属性
}
}
lawsTag.setIsDelete(CommonConstant.DEL_FLAG_0);
//if(lawsTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//设置文档库-表id
// lawsTag.setCgformHeadId(FileTableIdEnum.FILE_TABLE_ID.getValue());
//}else {//设置文档拆分-表id
// lawsTag.setCgformHeadId(FileTableIdEnum.FILE_SPLIT_ID.getValue());
//}
lawsTag.setDbIsKey(Integer.valueOf(YesOrNoEnum.NO.getValue()));
lawsTag.setDbIsNull(Integer.valueOf(YesOrNoEnum.YES.getValue()));
//lawsTag.setDbPointLength(0); //默认为0
lawsTag.setIsReadOnly(Integer.valueOf(FixedFieldEnum.NON_FIXED_FIELD_ENUM.getValue()));
lawsTag.setIsShowForm(Integer.valueOf(YesOrNoEnum.YES.getValue()));
Date now = new Date();
lawsTag.setCreateTime(now);
lawsTag.setUpdateTime(now);
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
lawsTag.setCreateBy(sysUser.getUsername());
lawsTag.setUpdateBy(sysUser.getUsername());
String pinYin = HanYuPinYinUtil.changeToNumberPinYin(lawsTag.getDbFieldTxt());
lawsTag.setDbFieldName(pinYin.replace(" ","_"));
// 数据库的字段名称必须以字母开头,若不以字母开头加上固定的grp前缀
if (!Validator.isMatchRegex("^[a-zA-Z].*$", lawsTag.getDbFieldName())){
lawsTag.setDbFieldName("grp_" + lawsTag.getDbFieldName());
}
}
save(lawsTag);
}
/**
* 更新
*
* @param lawsTag
* @return
*/
@Override
public void editById(LawsTag lawsTag) {
Integer inputOrderNum = lawsTag.getOrderNum();
//查询展示顺序相同的
QueryWrapper<LawsTag> queryWrapper= new QueryWrapper<>();
queryWrapper.eq("is_model", lawsTag.getIsModel())
.eq("is_delete",CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
Integer orderNumData = list(queryWrapper).stream().filter(e->e.getId().equals(lawsTag.getId()))
.map(e -> e.getOrderNum()).collect(Collectors.toList()).get(0);
queryWrapper.eq("order_num", inputOrderNum);
Integer orderNumCount = lawsTagMapper.selectCount(queryWrapper);
if(orderNumCount > 0 && !orderNumData.equals(inputOrderNum)) {//有重复展示顺序的,后面的号全+1
//设置排序
QueryWrapper<LawsTag> orderNumQueryWrapper = new QueryWrapper<>();
orderNumQueryWrapper.ge("order_num", inputOrderNum)
.eq("is_model", lawsTag.getIsModel())
.eq("is_delete", CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
List<LawsTag> geOrderNumList = list(orderNumQueryWrapper);
//判断相邻的序号,去掉不邻的
for(int i = 0 ; i < geOrderNumList.size() ; i++) {
if (geOrderNumList.size()==1){
break;
}else if(i+1 >= geOrderNumList.size()){
break;
}else if (geOrderNumList.get(i + 1).getOrderNum() - geOrderNumList.get(i).getOrderNum() > 1) {
int deleteStart = geOrderNumList.get(i+1).getOrderNum();
geOrderNumList = geOrderNumList.stream().filter(e->e.getOrderNum() < deleteStart).collect(Collectors.toList());
break;
}
}
geOrderNumList.stream().forEach(e -> e.setOrderNum(e.getOrderNum() + 1));
saveOrUpdateBatch(geOrderNumList);
}
//字段名称设置成拼音+下划线,存入数据库
String pinYin = HanYuPinYinUtil.changeToNumberPinYin(lawsTag.getDbFieldTxt());
lawsTag.setDbFieldName(pinYin.replace(" ","_"));
//处理DBLength为null的情况,默认为100
if (lawsTag.getDbLength() == null){
lawsTag.setDbLength(100);
}
Date now = new Date();
lawsTag.setUpdateTime(now);
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
lawsTag.setUpdateBy(sysUser.getRealname());
//设置标签存入数据库的字段类型
if(lawsTag.getFieldShowType().equals(FieldTypeEnum.TEXT_NUMBER.getValue())){
lawsTag.setDbType("Double");
}else if(lawsTag.getFieldShowType().equals(FieldTypeEnum.DATE_SINGLE.getValue())){
lawsTag.setDbType("Date");
}else{
lawsTag.setDbType("String");
if(lawsTag.getFieldShowType().equals(FieldTypeEnum.PULL_SINGLE.getValue())){
lawsTag.setDbLength(36); //单个ID的最大长度是36,所以单选默认设置为36
}else if(lawsTag.getFieldShowType().equals(FieldTypeEnum.PULL_MORE.getValue())){
lawsTag.setDbLength(2000); // 多选默认设置为2000,即可选择2000/36=55个属性
}
}
lawsTag.setIsDelete(CommonConstant.DEL_FLAG_0);
lawsTag.setDbIsKey(Integer.valueOf(YesOrNoEnum.NO.getValue()));
lawsTag.setDbIsNull(Integer.valueOf(YesOrNoEnum.YES.getValue()));
//lawsTag.setDbPointLength(0); //默认为0
lawsTag.setIsReadOnly(Integer.valueOf(FixedFieldEnum.NON_FIXED_FIELD_ENUM.getValue()));
lawsTag.setIsShowForm(Integer.valueOf(YesOrNoEnum.YES.getValue()));
// 数据库的字段名称必须以字母开头,若不以字母开头加上固定的grp前缀
if (!Validator.isMatchRegex("^[a-zA-Z].*$", lawsTag.getDbFieldName())){
lawsTag.setDbFieldName("grp_" + lawsTag.getDbFieldName());
}
saveOrUpdate(lawsTag);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
public LawsTag queryById(String id) {
return getById(id);
}
/**
* 修改delFlag
* @param isDelete
* @param id
*/
@Override
public void updateDictDelFlag(int isDelete, String id) {
baseMapper.updateDictDelFlag(isDelete,id);
}
/**
* 分页查询
*
* @param params
* @return
*/
@Override
public IPage<LawsTag> queryPageList(Map<String,Object> params) {
Integer pageNo = Integer.parseInt(params.get("pageNo").toString());
Integer pageSize = Integer.parseInt(params.get("pageSize").toString());
IPage page = new Page(pageNo, pageSize);
IPage<LawsTag> result = lawsTagMapper.queryPageList(page, params);
List<LawsTag> records = result.getRecords();
String cut = (String) params.get("cut");
//中英切换-属性类型+展示区域列
if(LanguageEnum.EN.getValue().equals(cut)){
for(LawsTag data:records){
data.setFieldShowTypeName(data.getFieldShowTypeEnName());
data.setShowAreaName(data.getShowAreaEnName());
}
}
return result;
}
/**
* 列表查询
*
* @return
*/
@Override
public List<LawsTag> queryList(LawsArea lawsArea) {
UpdateWrapper<LawsTag> updateWrapper=new UpdateWrapper<>();
updateWrapper.set("area_id", lawsArea.getId());
updateWrapper.set("is_model", lawsArea.getIsModel());
return list(updateWrapper);
}
/**
* 根据所属模块、属性名称、英文名称是否一致还原数据
*
* @return
*/
@Override
public Integer queryExitData(LawsTag lawsTag) {
LambdaQueryWrapper<LawsTag> queryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(lawsTag.getIsModel())) {
queryWrapper.eq(LawsTag::getIsModel, lawsTag.getIsModel())
.eq(LawsTag::getDbFieldTxt, lawsTag.getDbFieldTxt())
.eq(LawsTag::getDbFieldEnName, lawsTag.getDbFieldEnName())
.eq(LawsTag::getIsDelete,0);
}
Integer count = lawsTagMapper.selectCount(queryWrapper);
return count;
}
/**
* 若区域下有标签字段 则无法删除
*
* @return
*/
@Override
public Integer queryExitArea(LawsArea lawsArea) {
LambdaQueryWrapper<LawsTag> queryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(lawsArea.getShowArea())) {
queryWrapper.select(LawsTag::getShowArea)
.eq(LawsTag::getShowArea, lawsArea.getId())
.eq(LawsTag::getIsDelete,0);
}
Integer count = lawsTagMapper.selectCount(queryWrapper);
return count;
}
}
@@ -7,9 +7,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.LanguageEnum; import com.jero.common.constant.enums.LanguageEnum;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl; import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
import com.jero.modules.tag.entity.OnlCgformArea; import com.jero.modules.tag.entity.LawsArea;
import com.jero.modules.tag.mapper.OnlCgformAreaMapper; import com.jero.modules.tag.mapper.LawsAreaMapper;
import com.jero.modules.tag.service.IOnlCgformAreaService; import com.jero.modules.tag.service.ILawsAreaService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -26,36 +26,36 @@ import java.util.stream.Collectors;
* @Version: V1.0 * @Version: V1.0
*/ */
@Service @Service
public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, OnlCgformArea> implements IOnlCgformAreaService { public class LawsAreaServiceImpl extends ServiceImpl<LawsAreaMapper, LawsArea> implements ILawsAreaService {
@Autowired @Autowired
private OnlCgformFieldServiceImpl onlCgformFieldService; private OnlCgformFieldServiceImpl onlCgformFieldService;
@Autowired @Autowired
private OnlCgformAreaServiceImpl onlCgformAreaService; private LawsAreaServiceImpl onlCgformAreaService;
@Autowired @Autowired
private OnlCgformAreaMapper onlCgformAreaMapper; private LawsAreaMapper lawsAreaMapper;
/** /**
* 保存 * 保存
* *
* @param onlCgformArea * @param lawsArea
* @return * @return
*/ */
@Override @Override
public void add(OnlCgformArea onlCgformArea) { public void add(LawsArea lawsArea) {
Integer inputSort = onlCgformArea.getSort(); Integer inputSort = lawsArea.getSort();
//查询展示顺序相同的 //查询展示顺序相同的
QueryWrapper<OnlCgformArea> queryWrapper= new QueryWrapper<>(); QueryWrapper<LawsArea> queryWrapper= new QueryWrapper<>();
queryWrapper.orderByAsc("sort"); queryWrapper.orderByAsc("sort");
queryWrapper.eq("sort", inputSort); queryWrapper.eq("sort", inputSort);
Integer orderNumCount = onlCgformAreaMapper.selectCount(queryWrapper); Integer orderNumCount = lawsAreaMapper.selectCount(queryWrapper);
if(orderNumCount > 0) {//有重复展示顺序的,后面的号全+1 if(orderNumCount > 0) {//有重复展示顺序的,后面的号全+1
//设置排序 //设置排序
QueryWrapper<OnlCgformArea> orderNumQueryWrapper = new QueryWrapper<>(); QueryWrapper<LawsArea> orderNumQueryWrapper = new QueryWrapper<>();
orderNumQueryWrapper.ge("sort", inputSort) orderNumQueryWrapper.ge("sort", inputSort)
.orderByAsc("sort"); .orderByAsc("sort");
List<OnlCgformArea> geSortList = list(orderNumQueryWrapper); List<LawsArea> geSortList = list(orderNumQueryWrapper);
//判断相邻的序号,去掉不邻的 //判断相邻的序号,去掉不邻的
for(int i = 0 ; i <= geSortList.size() ; i++) { for(int i = 0 ; i <= geSortList.size() ; i++) {
@@ -73,9 +73,9 @@ public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, O
} }
Date now = new Date(); Date now = new Date();
onlCgformArea.setCreateTime(now); lawsArea.setCreateTime(now);
onlCgformArea.setUpdateTime(now); lawsArea.setUpdateTime(now);
save(onlCgformArea); save(lawsArea);
} }
/** /**
* 同一所属模块下,展示区域名称不能重复 * 同一所属模块下,展示区域名称不能重复
@@ -83,37 +83,37 @@ public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, O
* @return * @return
*/ */
@Override @Override
public Integer queryExitAreaName(OnlCgformArea onlCgformArea) { public Integer queryExitAreaName(LawsArea lawsArea) {
LambdaQueryWrapper<OnlCgformArea> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<LawsArea> queryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(onlCgformArea.getShowArea())) { if (StringUtils.isNotBlank(lawsArea.getShowArea())) {
queryWrapper.eq(OnlCgformArea::getShowArea, onlCgformArea.getShowArea()) queryWrapper.eq(LawsArea::getShowArea, lawsArea.getShowArea())
.eq(OnlCgformArea::getIsModel, onlCgformArea.getIsModel()); .eq(LawsArea::getIsModel, lawsArea.getIsModel());
} }
Integer count = onlCgformAreaMapper.selectCount(queryWrapper); Integer count = lawsAreaMapper.selectCount(queryWrapper);
return count; return count;
} }
/** /**
* 更新 * 更新
* *
* @param onlCgformArea * @param lawsArea
* @return * @return
*/ */
@Override @Override
public void editById(OnlCgformArea onlCgformArea) { public void editById(LawsArea lawsArea) {
Integer inputSort = onlCgformArea.getSort(); Integer inputSort = lawsArea.getSort();
//查询展示顺序相同的 //查询展示顺序相同的
QueryWrapper<OnlCgformArea> queryWrapper= new QueryWrapper<>(); QueryWrapper<LawsArea> queryWrapper= new QueryWrapper<>();
queryWrapper.orderByAsc("sort"); queryWrapper.orderByAsc("sort");
Integer orderNumData = list(queryWrapper).stream().filter(e->e.getId().equals(onlCgformArea.getId())) Integer orderNumData = list(queryWrapper).stream().filter(e->e.getId().equals(lawsArea.getId()))
.map(e -> e.getSort()).collect(Collectors.toList()).get(0); .map(e -> e.getSort()).collect(Collectors.toList()).get(0);
queryWrapper.eq("sort", inputSort); queryWrapper.eq("sort", inputSort);
Integer orderNumCount = onlCgformAreaMapper.selectCount(queryWrapper); Integer orderNumCount = lawsAreaMapper.selectCount(queryWrapper);
if(orderNumCount > 0 && !orderNumData.equals(inputSort)) {//有重复展示顺序的,后面的号全+1 if(orderNumCount > 0 && !orderNumData.equals(inputSort)) {//有重复展示顺序的,后面的号全+1
//设置排序 //设置排序
QueryWrapper<OnlCgformArea> orderNumQueryWrapper = new QueryWrapper<>(); QueryWrapper<LawsArea> orderNumQueryWrapper = new QueryWrapper<>();
orderNumQueryWrapper.ge("sort", inputSort) orderNumQueryWrapper.ge("sort", inputSort)
.orderByAsc("sort"); .orderByAsc("sort");
List<OnlCgformArea> geSortList = list(orderNumQueryWrapper); List<LawsArea> geSortList = list(orderNumQueryWrapper);
//判断相邻的序号,去掉不邻的 //判断相邻的序号,去掉不邻的
for(int i = 0 ; i <= geSortList.size() ; i++) { for(int i = 0 ; i <= geSortList.size() ; i++) {
@@ -130,8 +130,8 @@ public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, O
saveOrUpdateBatch(geSortList); saveOrUpdateBatch(geSortList);
} }
Date now = new Date(); Date now = new Date();
onlCgformArea.setUpdateTime(now); lawsArea.setUpdateTime(now);
saveOrUpdate(onlCgformArea); saveOrUpdate(lawsArea);
} }
/** /**
@@ -163,7 +163,7 @@ public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, O
* @return * @return
*/ */
@Override @Override
public OnlCgformArea queryById(String id) { public LawsArea queryById(String id) {
return getById(id); return getById(id);
} }
@@ -173,12 +173,12 @@ public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, O
* @return * @return
*/ */
@Override @Override
public List<OnlCgformArea> queryList(OnlCgformArea onlCgformArea) { public List<LawsArea> queryList(LawsArea lawsArea) {
LambdaQueryWrapper<OnlCgformArea> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<LawsArea> lambdaQueryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(onlCgformArea.getIsModel())) { if (StringUtils.isNotBlank(lawsArea.getIsModel())) {
lambdaQueryWrapper.eq(OnlCgformArea::getIsModel, onlCgformArea.getIsModel()); lambdaQueryWrapper.eq(LawsArea::getIsModel, lawsArea.getIsModel());
} }
lambdaQueryWrapper.orderByAsc(OnlCgformArea::getSort); lambdaQueryWrapper.orderByAsc(LawsArea::getSort);
return list(lambdaQueryWrapper); return list(lambdaQueryWrapper);
} }
@@ -188,14 +188,14 @@ public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, O
* @return * @return
*/ */
@Override @Override
public List<OnlCgformArea> queryShowArea(String cut, OnlCgformArea onlCgformArea) { public List<LawsArea> queryShowArea(String cut, LawsArea lawsArea) {
QueryWrapper<OnlCgformArea> queryWrapper = new QueryWrapper<>(); QueryWrapper<LawsArea> queryWrapper = new QueryWrapper<>();
if (LanguageEnum.CN.getValue().equals(cut)) { if (LanguageEnum.CN.getValue().equals(cut)) {
queryWrapper.select("id", "show_area").orderByAsc("sort"); queryWrapper.select("id", "show_area").orderByAsc("sort");
return list(queryWrapper); return list(queryWrapper);
} else { } else {
queryWrapper.select("id", "en_name").orderByAsc("sort"); queryWrapper.select("id", "en_name").orderByAsc("sort");
List<OnlCgformArea> resetlist = list(queryWrapper); List<LawsArea> resetlist = list(queryWrapper);
resetlist.stream().forEach(f -> f.setShowArea(f.getEnName())); resetlist.stream().forEach(f -> f.setShowArea(f.getEnName()));
return resetlist; return resetlist;
} }
@@ -206,22 +206,22 @@ public class OnlCgformAreaServiceImpl extends ServiceImpl<OnlCgformAreaMapper, O
* *
* @return * @return
*/ */
public List<OnlCgformArea> selectShowAreaById(String id) { public List<LawsArea> selectShowAreaById(String id) {
QueryWrapper<OnlCgformArea> list = new QueryWrapper<OnlCgformArea>().select(id, "showArea"); QueryWrapper<LawsArea> list = new QueryWrapper<LawsArea>().select(id, "showArea");
return list(list); return list(list);
} }
@Override @Override
public IPage<OnlCgformArea> queryPageList(Map<String, Object> params) { public IPage<LawsArea> queryPageList(Map<String, Object> params) {
Integer pageNo = Integer.parseInt(params.get("pageNo").toString()); Integer pageNo = Integer.parseInt(params.get("pageNo").toString());
Integer pageSize = Integer.parseInt(params.get("pageSize").toString()); Integer pageSize = Integer.parseInt(params.get("pageSize").toString());
IPage page = new Page(pageNo, pageSize); IPage page = new Page(pageNo, pageSize);
IPage<OnlCgformArea> result = onlCgformAreaMapper.queryPageList(page, params); IPage<LawsArea> result = lawsAreaMapper.queryPageList(page, params);
List<OnlCgformArea> records = result.getRecords(); List<LawsArea> records = result.getRecords();
String cut = (String) params.get("cut"); String cut = (String) params.get("cut");
//中英切换-所属模块 //中英切换-所属模块
if(LanguageEnum.EN.getValue().equals(cut)){ if(LanguageEnum.EN.getValue().equals(cut)){
for(OnlCgformArea data:records){ for(LawsArea data:records){
data.setIsModelName(data.getIsModelEnName()); data.setIsModelName(data.getIsModelEnName());
} }
} }
@@ -1,343 +0,0 @@
package com.jero.modules.tag.service.impl;
import cn.hutool.core.lang.Validator;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.enums.LanguageEnum;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.system.vo.LoginUser;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
import com.jero.modules.document.enums.FieldTypeEnum;
import com.jero.modules.enums.FixedFieldEnum;
import com.jero.modules.system.service.impl.SysDictServiceImpl;
import com.jero.modules.system.util.HanYuPinYinUtil;
import com.jero.modules.tag.entity.OnlCgformArea;
import com.jero.modules.tag.entity.OnlCgformTag;
import com.jero.modules.tag.enums.FileTableIdEnum;
import com.jero.modules.tag.mapper.OnlCgformTagMapper;
import com.jero.modules.tag.service.IOnlCgformTagService;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @Description: 标签管理
* @Author: jero-boot
* @Date: 2022-02-12
* @Version: V1.0
*/
@Service
public class OnlCgformTagServiceImpl extends ServiceImpl<OnlCgformTagMapper, OnlCgformTag> implements IOnlCgformTagService {
@Autowired
private OnlCgformTagMapper onlCgformTagMapper;
@Autowired
private OnlCgformFieldServiceImpl onlCgformFieldService;
@Autowired
private OnlCgformAreaServiceImpl onlCgformAreaService;
@Autowired
private SysDictServiceImpl sysDictService;
/**
* 保存
*
* @param onlCgformTag
* @return
*/
@Override
public void add(OnlCgformTag onlCgformTag) {
//校验--逻辑删除
Integer count=queryExitData(onlCgformTag);
if (count > 0) {
onlCgformTag.setIsDelete(CommonConstant.DEL_FLAG_0);
} else {
Integer inputOrderNum = onlCgformTag.getOrderNum();
//查询展示顺序相同的
QueryWrapper<OnlCgformTag> queryWrapper= new QueryWrapper<>();
queryWrapper.eq("is_model",onlCgformTag.getIsModel())
.eq("is_delete",CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
queryWrapper.eq("order_num", inputOrderNum);
Integer orderNumCount = onlCgformTagMapper.selectCount(queryWrapper);
if(orderNumCount > 0) {//有重复展示顺序的,后面的号全+1
//设置排序
QueryWrapper<OnlCgformTag> orderNumQueryWrapper = new QueryWrapper<>();
orderNumQueryWrapper.ge("order_num", inputOrderNum)
.eq("is_model", onlCgformTag.getIsModel())
.eq("is_delete", CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
List<OnlCgformTag> geOrderNumList = list(orderNumQueryWrapper);
//判断相邻的序号,去掉不邻的
for(int i = 0 ; i < geOrderNumList.size() ; i++) {
if (geOrderNumList.size() == 1){
break;
}else if(i+1 >= geOrderNumList.size()){
break;
}else if (geOrderNumList.get(i + 1).getOrderNum() - geOrderNumList.get(i).getOrderNum() > 1) {
int deleteStart = geOrderNumList.get(i+1).getOrderNum();
geOrderNumList = geOrderNumList.stream().filter(e->e.getOrderNum() < deleteStart).collect(Collectors.toList());
break;
}
}
geOrderNumList.stream().forEach(e -> e.setOrderNum(e.getOrderNum() + 1));
saveOrUpdateBatch(geOrderNumList);
}
//处理DBLength为null的情况,默认为100
if (onlCgformTag.getDbLength() == null){
onlCgformTag.setDbLength(100);
}
//设置标签存入数据库的字段类型
if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.TEXT_NUMBER.getValue())){
onlCgformTag.setDbType("Double");
}else if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.DATE_SINGLE.getValue())){
onlCgformTag.setDbType("Date");
}else{
onlCgformTag.setDbType("String");
if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.PULL_SINGLE.getValue())){
onlCgformTag.setDbLength(36); //单个ID的最大长度是36,所以单选默认设置为36
}else if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.PULL_MORE.getValue())){
onlCgformTag.setDbLength(2000); // 多选默认设置为2000,即可选择2000/36=55个属性
}
}
onlCgformTag.setIsDelete(CommonConstant.DEL_FLAG_0);
if(onlCgformTag.getIsModel().equals(FileTableIdEnum.FILE_TABLE_IS_MODEL.getValue())) {//设置文档库-表id
onlCgformTag.setCgformHeadId(FileTableIdEnum.FILE_TABLE_ID.getValue());
}else {//设置文档拆分-表id
onlCgformTag.setCgformHeadId(FileTableIdEnum.FILE_SPLIT_ID.getValue());
}
onlCgformTag.setDbIsKey(Integer.valueOf(YesOrNoEnum.NO.getValue()));
onlCgformTag.setDbIsNull(Integer.valueOf(YesOrNoEnum.YES.getValue()));
//onlCgformTag.setDbPointLength(0); //默认为0
onlCgformTag.setIsReadOnly(Integer.valueOf(FixedFieldEnum.NON_FIXED_FIELD_ENUM.getValue()));
onlCgformTag.setIsShowForm(Integer.valueOf(YesOrNoEnum.YES.getValue()));
Date now = new Date();
onlCgformTag.setCreateTime(now);
onlCgformTag.setUpdateTime(now);
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
onlCgformTag.setCreateBy(sysUser.getUsername());
onlCgformTag.setUpdateBy(sysUser.getUsername());
String pinYin = HanYuPinYinUtil.changeToNumberPinYin(onlCgformTag.getDbFieldTxt());
onlCgformTag.setDbFieldName(pinYin.replace(" ","_"));
// 数据库的字段名称必须以字母开头,若不以字母开头加上固定的grp前缀
if (!Validator.isMatchRegex("^[a-zA-Z].*$", onlCgformTag.getDbFieldName())){
onlCgformTag.setDbFieldName("grp_" + onlCgformTag.getDbFieldName());
}
}
save(onlCgformTag);
}
/**
* 更新
*
* @param onlCgformTag
* @return
*/
@Override
public void editById(OnlCgformTag onlCgformTag) {
Integer inputOrderNum = onlCgformTag.getOrderNum();
//查询展示顺序相同的
QueryWrapper<OnlCgformTag> queryWrapper= new QueryWrapper<>();
queryWrapper.eq("is_model",onlCgformTag.getIsModel())
.eq("is_delete",CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
Integer orderNumData = list(queryWrapper).stream().filter(e->e.getId().equals(onlCgformTag.getId()))
.map(e -> e.getOrderNum()).collect(Collectors.toList()).get(0);
queryWrapper.eq("order_num", inputOrderNum);
Integer orderNumCount = onlCgformTagMapper.selectCount(queryWrapper);
if(orderNumCount > 0 && !orderNumData.equals(inputOrderNum)) {//有重复展示顺序的,后面的号全+1
//设置排序
QueryWrapper<OnlCgformTag> orderNumQueryWrapper = new QueryWrapper<>();
orderNumQueryWrapper.ge("order_num", inputOrderNum)
.eq("is_model", onlCgformTag.getIsModel())
.eq("is_delete", CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
List<OnlCgformTag> geOrderNumList = list(orderNumQueryWrapper);
//判断相邻的序号,去掉不邻的
for(int i = 0 ; i < geOrderNumList.size() ; i++) {
if (geOrderNumList.size()==1){
break;
}else if(i+1 >= geOrderNumList.size()){
break;
}else if (geOrderNumList.get(i + 1).getOrderNum() - geOrderNumList.get(i).getOrderNum() > 1) {
int deleteStart = geOrderNumList.get(i+1).getOrderNum();
geOrderNumList = geOrderNumList.stream().filter(e->e.getOrderNum() < deleteStart).collect(Collectors.toList());
break;
}
}
geOrderNumList.stream().forEach(e -> e.setOrderNum(e.getOrderNum() + 1));
saveOrUpdateBatch(geOrderNumList);
}
//字段名称设置成拼音+下划线,存入数据库
String pinYin = HanYuPinYinUtil.changeToNumberPinYin(onlCgformTag.getDbFieldTxt());
onlCgformTag.setDbFieldName(pinYin.replace(" ","_"));
//处理DBLength为null的情况,默认为100
if (onlCgformTag.getDbLength() == null){
onlCgformTag.setDbLength(100);
}
Date now = new Date();
onlCgformTag.setUpdateTime(now);
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
onlCgformTag.setUpdateBy(sysUser.getRealname());
//设置标签存入数据库的字段类型
if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.TEXT_NUMBER.getValue())){
onlCgformTag.setDbType("Double");
}else if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.DATE_SINGLE.getValue())){
onlCgformTag.setDbType("Date");
}else{
onlCgformTag.setDbType("String");
if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.PULL_SINGLE.getValue())){
onlCgformTag.setDbLength(36); //单个ID的最大长度是36,所以单选默认设置为36
}else if(onlCgformTag.getFieldShowType().equals(FieldTypeEnum.PULL_MORE.getValue())){
onlCgformTag.setDbLength(2000); // 多选默认设置为2000,即可选择2000/36=55个属性
}
}
onlCgformTag.setIsDelete(CommonConstant.DEL_FLAG_0);
onlCgformTag.setDbIsKey(Integer.valueOf(YesOrNoEnum.NO.getValue()));
onlCgformTag.setDbIsNull(Integer.valueOf(YesOrNoEnum.YES.getValue()));
//onlCgformTag.setDbPointLength(0); //默认为0
onlCgformTag.setIsReadOnly(Integer.valueOf(FixedFieldEnum.NON_FIXED_FIELD_ENUM.getValue()));
onlCgformTag.setIsShowForm(Integer.valueOf(YesOrNoEnum.YES.getValue()));
// 数据库的字段名称必须以字母开头,若不以字母开头加上固定的grp前缀
if (!Validator.isMatchRegex("^[a-zA-Z].*$", onlCgformTag.getDbFieldName())){
onlCgformTag.setDbFieldName("grp_" + onlCgformTag.getDbFieldName());
}
saveOrUpdate(onlCgformTag);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
public OnlCgformTag queryById(String id) {
return getById(id);
}
/**
* 修改delFlag
* @param isDelete
* @param id
*/
@Override
public void updateDictDelFlag(int isDelete, String id) {
baseMapper.updateDictDelFlag(isDelete,id);
}
/**
* 分页查询
*
* @param params
* @return
*/
@Override
public IPage<OnlCgformTag> queryPageList(Map<String,Object> params) {
Integer pageNo = Integer.parseInt(params.get("pageNo").toString());
Integer pageSize = Integer.parseInt(params.get("pageSize").toString());
IPage page = new Page(pageNo, pageSize);
IPage<OnlCgformTag> result = onlCgformTagMapper.queryPageList(page, params);
List<OnlCgformTag> records = result.getRecords();
String cut = (String) params.get("cut");
//中英切换-属性类型+展示区域列
if(LanguageEnum.EN.getValue().equals(cut)){
for(OnlCgformTag data:records){
data.setFieldShowTypeName(data.getFieldShowTypeEnName());
data.setShowAreaName(data.getShowAreaEnName());
}
}
return result;
}
/**
* 列表查询
*
* @return
*/
@Override
public List<OnlCgformTag> queryList(OnlCgformArea onlCgformArea) {
UpdateWrapper<OnlCgformTag> updateWrapper=new UpdateWrapper<>();
updateWrapper.set("area_id",onlCgformArea.getId());
updateWrapper.set("is_model",onlCgformArea.getIsModel());
return list(updateWrapper);
}
/**
* 根据所属模块、属性名称、英文名称是否一致还原数据
*
* @return
*/
@Override
public Integer queryExitData(OnlCgformTag onlCgformTag) {
LambdaQueryWrapper<OnlCgformTag> queryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(onlCgformTag.getIsModel())) {
queryWrapper.eq(OnlCgformTag::getIsModel, onlCgformTag.getIsModel())
.eq(OnlCgformTag::getDbFieldTxt, onlCgformTag.getDbFieldTxt())
.eq(OnlCgformTag::getDbFieldEnName, onlCgformTag.getDbFieldEnName())
.eq(OnlCgformTag::getIsDelete,0);
}
Integer count = onlCgformTagMapper.selectCount(queryWrapper);
return count;
}
/**
* 若区域下有标签字段 则无法删除
*
* @return
*/
@Override
public Integer queryExitArea(OnlCgformArea onlCgformArea) {
LambdaQueryWrapper<OnlCgformTag> queryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(onlCgformArea.getShowArea())) {
queryWrapper.select(OnlCgformTag::getShowArea)
.eq(OnlCgformTag::getShowArea, onlCgformArea.getId())
.eq(OnlCgformTag::getIsDelete,0);
}
Integer count = onlCgformTagMapper.selectCount(queryWrapper);
return count;
}
}