From d207eac94a37e0a64fac0806b4ff393a25a7b219 Mon Sep 17 00:00:00 2001 From: wxy <1229384355@qq.com> Date: Wed, 3 Aug 2022 09:55:19 +0800 Subject: [PATCH] 添加根据身份证号、学校、家庭住址、重点关注原因、性别、年龄范围查询 --- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/handle/service/SparkEtlService.java | 4 ++-- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/AnalyzeController.java | 4 +--- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/MinorController.java | 32 +++++++++++++------------------- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Family.java | 5 ++++- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Minor.java | 11 +++++++++-- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/MinorMapper.java | 4 +++- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/xml/MinorMapper.xml | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++++- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/IMinorService.java | 3 ++- juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/MinorServiceImpl.java | 45 ++++++++++++++++++++------------------------- juvenile-prosecution-vue/src/views/business/MinorList.vue | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------- 10 files changed, 183 insertions(+), 72 deletions(-) diff --git a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/handle/service/SparkEtlService.java b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/handle/service/SparkEtlService.java index b137a55..f4f4329 100644 --- a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/handle/service/SparkEtlService.java +++ b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/handle/service/SparkEtlService.java @@ -88,8 +88,8 @@ public class SparkEtlService implements Serializable { //家庭成员数据 List families = new ArrayList(); for (Minor minor : minors) { - if (null != minor.getFamilies() && !minor.getFamilies().isEmpty()) { - families.addAll(minor.getFamilies()); + if (null != minor.getFamilyList() && !minor.getFamilyList().isEmpty()) { + families.addAll(minor.getFamilyList()); } } this.saveMinor(minors); diff --git a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/AnalyzeController.java b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/AnalyzeController.java index d0c26dd..d7c4c1b 100644 --- a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/AnalyzeController.java +++ b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/AnalyzeController.java @@ -742,9 +742,7 @@ public class AnalyzeController extends JeecgController guardians = new HashMap<>(); Date createTime = new Date(); if (oConvertUtils.isNotEmpty(gaHouseholds)) { - getRandomId idWorker = new getRandomId(0, 0); for (Map.Entry m : gaHouseholds.entrySet()) { - long id = idWorker.nextId(); String mapKey = m.getKey(); Family family = m.getValue(); if (oConvertUtils.isNotEmpty(family)) { @@ -830,7 +828,7 @@ public class AnalyzeController extends JeecgController queryPageList(Minor minor, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, - HttpServletRequest req) { + HttpServletRequest req,@RequestParam(name = "column", defaultValue = "age") String column, + @RequestParam(name = "order", defaultValue = "asc") String order) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(minor, req.getParameterMap()); Page page = new Page(pageNo, pageSize); // IPage pageList = minorService.page(page, queryWrapper); @@ -111,32 +112,23 @@ public class MinorController { // if(oConvertUtils.isNotEmpty(minor) && oConvertUtils.isNotEmpty(minor.getIsReason()) && minor.getIsReason().equals("1")){ // isReason=minor.getIsReason(); // } - IPage pageList = minorService.queryPageList(page,minor.getName(),sysOrgCode,minor.getIsReason()); + IPage pageList = minorService.queryPageList(page,minor.getName(),sysOrgCode,minor.getIsReason(),minor.getIdentity(),minor.getSchoolName(), + minor.getGender(),minor.getReason(),minor.getAddress(),minor.getAge(),column,order); return Result.OK(pageList); } /** * 添加 * - * @param minorPage + * @param minor * @return */ @AutoLog(value = "未成年人-添加") @ApiOperation(value = "未成年人-添加", notes = "未成年人-添加") @PostMapping(value = "/add") - public Result add(@RequestBody MinorPage minorPage) { -// Integer count=0; -// if(oConvertUtils.isNotEmpty(minorPage) && oConvertUtils.isNotEmpty(minorPage.getIdentity())){ -// count=minorService.getMinorByIdCard(minorPage.getIdentity()); -// } -// if(count==0){ - Minor minor = new Minor(); - BeanUtils.copyProperties(minorPage, minor); - minorService.saveMain(minor, minorPage.getFamilyList()); + public Result add(@RequestBody Minor minor) { + minorService.saveMain(minor, minor.getFamilyList()); return Result.OK("添加成功!"); -// }else { -// return Result.error("身份证号重复!"); -// } } /** @@ -151,7 +143,7 @@ public class MinorController { public Result edit(@RequestBody MinorPage minorPage) { Minor minor = new Minor(); BeanUtils.copyProperties(minorPage, minor); - Minor minorEntity = minorService.getById(minor.getId()); + Minor minorEntity = minorService.getById(minorPage.getId()); if (minorEntity == null) { return Result.error("未找到对应数据"); } @@ -215,7 +207,7 @@ public class MinorController { @ApiOperation(value = "家庭成员表主表householdNum查询", notes = "家庭成员表-通主表householdNum查询") @GetMapping(value = "/queryFamilyByMainId") public Result queryFamilyListByMainId(@RequestParam(name = "householdNum", required = true) String householdNum) { - List familyList = familyService.selectByHouseholdNum(householdNum); + List familyList = familyService.getFamilysByHouseholdNum(householdNum); return Result.OK(familyList); } @@ -241,7 +233,8 @@ public class MinorController { */ @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, Minor minor, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, - @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,@RequestParam(name = "column", defaultValue = "age") String column, + @RequestParam(name = "order", defaultValue = "asc") String order) { // Step.1 组装查询条件查询数据 // 过滤选中数据 String selections = request.getParameter("selections"); @@ -258,7 +251,8 @@ public class MinorController { if(oConvertUtils.isNotEmpty(sysUser) && oConvertUtils.isNotEmpty(sysUser.getOrgCode())){ sysOrgCode=sysUser.getOrgCode(); } - IPage pageList = minorService.queryPageList(page,minor.getName(),sysOrgCode,minor.getIsReason()); + IPage pageList = minorService.queryPageList(page,minor.getName(),sysOrgCode,minor.getIsReason(),minor.getIdentity(),minor.getSchoolName(), + minor.getGender(),minor.getReason(),minor.getAddress(),minor.getAge(),column,order); //Step.2 获取导出数据 List queryList = pageList.getRecords(); List minorList = new ArrayList(); diff --git a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Family.java b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Family.java index c70139e..04a2bc0 100644 --- a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Family.java +++ b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Family.java @@ -13,6 +13,9 @@ import org.jeecgframework.poi.excel.annotation.Excel; import java.util.Date; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import shaded.parquet.com.fasterxml.jackson.databind.annotation.JsonSerialize; +import shaded.parquet.com.fasterxml.jackson.databind.ser.std.ToStringSerializer; + import java.io.UnsupportedEncodingException; /** @@ -32,7 +35,7 @@ public class Family implements Serializable { @TableId(type = IdType.NONE) @ApiModelProperty(value = "主键") - private Long id; + private String id; /**创建人*/ @ApiModelProperty(value = "创建人") private String createBy; diff --git a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Minor.java b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Minor.java index 5b8919c..6bc6253 100644 --- a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Minor.java +++ b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Minor.java @@ -43,8 +43,9 @@ public class Minor implements Serializable { /**主键*/ @TableId(type = IdType.NONE) + @JsonFormat(shape = JsonFormat.Shape.STRING) @ApiModelProperty(value = "主键") - private Long id; + private String id; /**创建人*/ @ApiModelProperty(value = "创建人") private String createBy; @@ -135,11 +136,17 @@ public class Minor implements Serializable { private String division; @TableField(exist = false) - private List families; + private List familyList; @TableField(exist = false) private String age; @TableField(exist = false) private String isReason; + + @TableField(exist = false) + private String column; + + @TableField(exist = false) + private String order; } diff --git a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/MinorMapper.java b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/MinorMapper.java index ef73942..7f3b254 100644 --- a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/MinorMapper.java +++ b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/MinorMapper.java @@ -26,7 +26,9 @@ public interface MinorMapper extends BaseMapper { * @param page * @return */ - IPage queryPageList(Page page,@Param("name") String name,@Param("sysOrgCode") String sysOrgCode,@Param("isReason")String isReason); + IPage queryPageList(Page page,@Param("name") String name,@Param("sysOrgCode") String sysOrgCode,@Param("isReason")String isReason, + @Param("identity") String identity,@Param("schoolName") String schoolName,@Param("gender")Integer gender,@Param("reason") String reason, + @Param("address") String address,@Param("age")String age,@Param("column") String column,@Param("order")String order); /** * 根据身份证号查询总数 diff --git a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/xml/MinorMapper.xml b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/xml/MinorMapper.xml index 2af2d75..93dd5f7 100644 --- a/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/xml/MinorMapper.xml +++ b/juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/xml/MinorMapper.xml @@ -40,6 +40,21 @@ and name like concat('%',#{name},'%') + + and identity =#{identity} + + + and school_name like concat('%',#{schoolName},'%') + + + and gender =#{gender} + + + and reason like concat('%',#{reason},'%') + + + and address like concat('%',#{address},'%') + and sys_org_code like concat(#{sysOrgCode},'%') @@ -54,7 +69,44 @@ - ORDER BY create_time desc + + + and ((timestampdiff(year, substring(identity, 7, 8), now())) =]]> 0 and (timestampdiff(year, substring(identity, 7, 8), now())) 6) + + + and ((timestampdiff(year, substring(identity, 7, 8), now())) =]]> 6 and (timestampdiff(year, substring(identity, 7, 8), now())) 12) + + + and ((timestampdiff(year, substring(identity, 7, 8), now())) =]]> 12 and (timestampdiff(year, substring(identity, 7, 8), now())) 18) + + + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) asc + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) desc + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) asc,school_name asc + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) asc,school_name desc + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) asc,address asc + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) asc,address desc + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) asc,reason asc + + + ORDER BY (timestampdiff(year, substring(identity, 7, 8), now())) asc,reason desc + + +