diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java index 4a8d915..362678c 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java @@ -1,15 +1,16 @@ package com.casic.missiles.modular.system.model; -import java.io.Serializable; +import com.alibaba.fastjson.annotation.JSONField; +import com.baomidou.mybatisplus.annotations.*; +import com.baomidou.mybatisplus.enums.IdType; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.annotations.MetaDataBean; +import com.casic.missiles.core.base.model.DataMetaModel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.io.Serializable; import java.util.Date; -import com.baomidou.mybatisplus.annotations.TableId; -import com.baomidou.mybatisplus.annotations.TableField; -import com.baomidou.mybatisplus.activerecord.Model; -import com.baomidou.mybatisplus.annotations.TableName; -import com.casic.missiles.modular.metadata.base.DataMetaModel; - -import java.io.Serializable; /** *

@@ -19,16 +20,18 @@ * @author lwh123 * @since 2019-12-03 */ +@Data +@MetaDataBean(name = "SysPersonExt") @TableName("sys_person") public class Person extends DataMetaModel { private static final long serialVersionUID = 1L; - - @TableId("ID") + @TableId(value = "ID", type = IdType.ID_WORKER) private Long id; /** * 状态(0:有效 1:删除) */ + @TableLogic @TableField("DELFLAG") private String delflag; /** @@ -59,8 +62,8 @@ /** * 身份证号 */ - @TableField("ID_CARD") - private String idCard; + @TableField("ID_CARD_NO") + private String idCardNo; /** * 备注信息 */ @@ -71,88 +74,22 @@ */ @TableField("PERSON_TYPE") private String personType; - - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getDelflag() { - return delflag; - } - - public void setDelflag(String delflag) { - this.delflag = delflag; - } - - public Date getCreatetime() { - return createtime; - } - - public void setCreatetime(Date createtime) { - this.createtime = createtime; - } - - public Date getUpdatetime() { - return updatetime; - } - - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getSex() { - return sex; - } - - public void setSex(String sex) { - this.sex = sex; - } - - public Long getDeptid() { - return deptid; - } - - public void setDeptid(Long deptid) { - this.deptid = deptid; - } - - public String getIdCard() { - return idCard; - } - - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getPersonType() { - return personType; - } - - public void setPersonType(String personType) { - this.personType = personType; - } - + /** + * 人员编码 + */ + @TableField("PERSON_CODE") + private String personCode; + @TableField("OPRATION_ID") + private Long oprationId; + //人员编码 + @TableField(exist = false) + private String deptName; + @TableField(exist = false) + private String personTypeName; + @TableField(exist = false) + private String sexName; + @TableField(exist = false) + private String oprationName; @Override protected Serializable pkVal() { return this.id; @@ -161,16 +98,16 @@ @Override public String toString() { return "Person{" + - "id=" + id + - ", delflag=" + delflag + - ", createtime=" + createtime + - ", updatetime=" + updatetime + - ", name=" + name + - ", sex=" + sex + - ", deptid=" + deptid + - ", idCard=" + idCard + - ", remarks=" + remarks + - ", personType=" + personType + - "}"; + "id=" + id + + ", delflag=" + delflag + + ", createtime=" + createtime + + ", updatetime=" + updatetime + + ", name=" + name + + ", sex=" + sex + + ", deptid=" + deptid + + ", idCardNo=" + idCardNo + + ", remarks=" + remarks + + ", personType=" + personType + + "}"; } } diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java index 4a8d915..362678c 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java @@ -1,15 +1,16 @@ package com.casic.missiles.modular.system.model; -import java.io.Serializable; +import com.alibaba.fastjson.annotation.JSONField; +import com.baomidou.mybatisplus.annotations.*; +import com.baomidou.mybatisplus.enums.IdType; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.annotations.MetaDataBean; +import com.casic.missiles.core.base.model.DataMetaModel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.io.Serializable; import java.util.Date; -import com.baomidou.mybatisplus.annotations.TableId; -import com.baomidou.mybatisplus.annotations.TableField; -import com.baomidou.mybatisplus.activerecord.Model; -import com.baomidou.mybatisplus.annotations.TableName; -import com.casic.missiles.modular.metadata.base.DataMetaModel; - -import java.io.Serializable; /** *

@@ -19,16 +20,18 @@ * @author lwh123 * @since 2019-12-03 */ +@Data +@MetaDataBean(name = "SysPersonExt") @TableName("sys_person") public class Person extends DataMetaModel { private static final long serialVersionUID = 1L; - - @TableId("ID") + @TableId(value = "ID", type = IdType.ID_WORKER) private Long id; /** * 状态(0:有效 1:删除) */ + @TableLogic @TableField("DELFLAG") private String delflag; /** @@ -59,8 +62,8 @@ /** * 身份证号 */ - @TableField("ID_CARD") - private String idCard; + @TableField("ID_CARD_NO") + private String idCardNo; /** * 备注信息 */ @@ -71,88 +74,22 @@ */ @TableField("PERSON_TYPE") private String personType; - - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getDelflag() { - return delflag; - } - - public void setDelflag(String delflag) { - this.delflag = delflag; - } - - public Date getCreatetime() { - return createtime; - } - - public void setCreatetime(Date createtime) { - this.createtime = createtime; - } - - public Date getUpdatetime() { - return updatetime; - } - - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getSex() { - return sex; - } - - public void setSex(String sex) { - this.sex = sex; - } - - public Long getDeptid() { - return deptid; - } - - public void setDeptid(Long deptid) { - this.deptid = deptid; - } - - public String getIdCard() { - return idCard; - } - - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getPersonType() { - return personType; - } - - public void setPersonType(String personType) { - this.personType = personType; - } - + /** + * 人员编码 + */ + @TableField("PERSON_CODE") + private String personCode; + @TableField("OPRATION_ID") + private Long oprationId; + //人员编码 + @TableField(exist = false) + private String deptName; + @TableField(exist = false) + private String personTypeName; + @TableField(exist = false) + private String sexName; + @TableField(exist = false) + private String oprationName; @Override protected Serializable pkVal() { return this.id; @@ -161,16 +98,16 @@ @Override public String toString() { return "Person{" + - "id=" + id + - ", delflag=" + delflag + - ", createtime=" + createtime + - ", updatetime=" + updatetime + - ", name=" + name + - ", sex=" + sex + - ", deptid=" + deptid + - ", idCard=" + idCard + - ", remarks=" + remarks + - ", personType=" + personType + - "}"; + "id=" + id + + ", delflag=" + delflag + + ", createtime=" + createtime + + ", updatetime=" + updatetime + + ", name=" + name + + ", sex=" + sex + + ", deptid=" + deptid + + ", idCardNo=" + idCardNo + + ", remarks=" + remarks + + ", personType=" + personType + + "}"; } } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java index c58c236..1e4f7bc 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java @@ -1,8 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.service.IService; +import java.util.List; + /** *

* 人员数据表 服务类 @@ -12,5 +17,10 @@ * @since 2019-12-03 */ public interface IPersonService extends IService { - + /** + * 查询最大的人员编码 + * @return + */ + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper); } diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java index 4a8d915..362678c 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java @@ -1,15 +1,16 @@ package com.casic.missiles.modular.system.model; -import java.io.Serializable; +import com.alibaba.fastjson.annotation.JSONField; +import com.baomidou.mybatisplus.annotations.*; +import com.baomidou.mybatisplus.enums.IdType; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.annotations.MetaDataBean; +import com.casic.missiles.core.base.model.DataMetaModel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.io.Serializable; import java.util.Date; -import com.baomidou.mybatisplus.annotations.TableId; -import com.baomidou.mybatisplus.annotations.TableField; -import com.baomidou.mybatisplus.activerecord.Model; -import com.baomidou.mybatisplus.annotations.TableName; -import com.casic.missiles.modular.metadata.base.DataMetaModel; - -import java.io.Serializable; /** *

@@ -19,16 +20,18 @@ * @author lwh123 * @since 2019-12-03 */ +@Data +@MetaDataBean(name = "SysPersonExt") @TableName("sys_person") public class Person extends DataMetaModel { private static final long serialVersionUID = 1L; - - @TableId("ID") + @TableId(value = "ID", type = IdType.ID_WORKER) private Long id; /** * 状态(0:有效 1:删除) */ + @TableLogic @TableField("DELFLAG") private String delflag; /** @@ -59,8 +62,8 @@ /** * 身份证号 */ - @TableField("ID_CARD") - private String idCard; + @TableField("ID_CARD_NO") + private String idCardNo; /** * 备注信息 */ @@ -71,88 +74,22 @@ */ @TableField("PERSON_TYPE") private String personType; - - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getDelflag() { - return delflag; - } - - public void setDelflag(String delflag) { - this.delflag = delflag; - } - - public Date getCreatetime() { - return createtime; - } - - public void setCreatetime(Date createtime) { - this.createtime = createtime; - } - - public Date getUpdatetime() { - return updatetime; - } - - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getSex() { - return sex; - } - - public void setSex(String sex) { - this.sex = sex; - } - - public Long getDeptid() { - return deptid; - } - - public void setDeptid(Long deptid) { - this.deptid = deptid; - } - - public String getIdCard() { - return idCard; - } - - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getPersonType() { - return personType; - } - - public void setPersonType(String personType) { - this.personType = personType; - } - + /** + * 人员编码 + */ + @TableField("PERSON_CODE") + private String personCode; + @TableField("OPRATION_ID") + private Long oprationId; + //人员编码 + @TableField(exist = false) + private String deptName; + @TableField(exist = false) + private String personTypeName; + @TableField(exist = false) + private String sexName; + @TableField(exist = false) + private String oprationName; @Override protected Serializable pkVal() { return this.id; @@ -161,16 +98,16 @@ @Override public String toString() { return "Person{" + - "id=" + id + - ", delflag=" + delflag + - ", createtime=" + createtime + - ", updatetime=" + updatetime + - ", name=" + name + - ", sex=" + sex + - ", deptid=" + deptid + - ", idCard=" + idCard + - ", remarks=" + remarks + - ", personType=" + personType + - "}"; + "id=" + id + + ", delflag=" + delflag + + ", createtime=" + createtime + + ", updatetime=" + updatetime + + ", name=" + name + + ", sex=" + sex + + ", deptid=" + deptid + + ", idCardNo=" + idCardNo + + ", remarks=" + remarks + + ", personType=" + personType + + "}"; } } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java index c58c236..1e4f7bc 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java @@ -1,8 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.service.IService; +import java.util.List; + /** *

* 人员数据表 服务类 @@ -12,5 +17,10 @@ * @since 2019-12-03 */ public interface IPersonService extends IService { - + /** + * 查询最大的人员编码 + * @return + */ + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java index 4eb8734..b6f1862 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java @@ -1,10 +1,23 @@ package com.casic.missiles.modular.system.service.impl; -import com.casic.missiles.modular.system.model.Person; -import com.casic.missiles.modular.system.dao.PersonMapper; -import com.casic.missiles.modular.system.service.IPersonService; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.enums.MetaTypeEnums; +import com.casic.missiles.core.util.DateUtil; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.system.dao.PersonMapper; +import com.casic.missiles.modular.system.enums.PersonTypeEnums; +import com.casic.missiles.modular.system.model.Person; +import com.casic.missiles.modular.system.service.IPersonService; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; /** *

@@ -16,5 +29,57 @@ */ @Service public class PersonServiceImpl extends ServiceImpl implements IPersonService { + @Value("${casic.base.personPrefix:}") + private String personPrefix; + + @MetaData + @Override + public List selectList(Wrapper wrapper) { + return super.selectList(wrapper); + } + + @MetaData + @Override + public Page selectPage(Page page, Wrapper wrapper) { + return super.selectPage(page, wrapper); + } + + @Transactional + @Override + public boolean insert(@MetaData(type = MetaTypeEnums.INSERT) Person entity) { + //查询最大人员编码 + if (ToolUtil.isEmpty(entity.getPersonCode())) { + String currDay = DateUtil.getDays(); + String personCode = this.selectMaxPersonCode(entity.getPersonType(), currDay); + String code = PersonTypeEnums.typeOf(entity.getPersonType()).getCode(); + String prefix = ToolUtil.isEmpty(code)?personPrefix:code; + personCode = personCode.replaceAll(prefix, ""); + if (!"0".equals(personCode)) { + personCode = personCode.substring(8); + } + entity.setPersonCode(prefix.concat(currDay).concat(String.format("%06d", Integer.valueOf(personCode) + 1))); + } + return super.insert(entity); + } + + @Transactional + @Override + public boolean updateById(@MetaData(type = MetaTypeEnums.UPDATE) Person entity) { + return super.updateById(entity); + } + + @Override + public String selectMaxPersonCode(String personType, String currDay) { + return baseMapper.selectMaxPersonCode(personType, currDay); + } + + @Override + public List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper) { + return baseMapper.selectDataScopePerson(page,dataScope,wrapper); + } + + public static void main(String[] args) { + System.out.println(PersonTypeEnums.valueOf("1")); + } } diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java index 4a8d915..362678c 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java @@ -1,15 +1,16 @@ package com.casic.missiles.modular.system.model; -import java.io.Serializable; +import com.alibaba.fastjson.annotation.JSONField; +import com.baomidou.mybatisplus.annotations.*; +import com.baomidou.mybatisplus.enums.IdType; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.annotations.MetaDataBean; +import com.casic.missiles.core.base.model.DataMetaModel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.io.Serializable; import java.util.Date; -import com.baomidou.mybatisplus.annotations.TableId; -import com.baomidou.mybatisplus.annotations.TableField; -import com.baomidou.mybatisplus.activerecord.Model; -import com.baomidou.mybatisplus.annotations.TableName; -import com.casic.missiles.modular.metadata.base.DataMetaModel; - -import java.io.Serializable; /** *

@@ -19,16 +20,18 @@ * @author lwh123 * @since 2019-12-03 */ +@Data +@MetaDataBean(name = "SysPersonExt") @TableName("sys_person") public class Person extends DataMetaModel { private static final long serialVersionUID = 1L; - - @TableId("ID") + @TableId(value = "ID", type = IdType.ID_WORKER) private Long id; /** * 状态(0:有效 1:删除) */ + @TableLogic @TableField("DELFLAG") private String delflag; /** @@ -59,8 +62,8 @@ /** * 身份证号 */ - @TableField("ID_CARD") - private String idCard; + @TableField("ID_CARD_NO") + private String idCardNo; /** * 备注信息 */ @@ -71,88 +74,22 @@ */ @TableField("PERSON_TYPE") private String personType; - - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getDelflag() { - return delflag; - } - - public void setDelflag(String delflag) { - this.delflag = delflag; - } - - public Date getCreatetime() { - return createtime; - } - - public void setCreatetime(Date createtime) { - this.createtime = createtime; - } - - public Date getUpdatetime() { - return updatetime; - } - - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getSex() { - return sex; - } - - public void setSex(String sex) { - this.sex = sex; - } - - public Long getDeptid() { - return deptid; - } - - public void setDeptid(Long deptid) { - this.deptid = deptid; - } - - public String getIdCard() { - return idCard; - } - - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getPersonType() { - return personType; - } - - public void setPersonType(String personType) { - this.personType = personType; - } - + /** + * 人员编码 + */ + @TableField("PERSON_CODE") + private String personCode; + @TableField("OPRATION_ID") + private Long oprationId; + //人员编码 + @TableField(exist = false) + private String deptName; + @TableField(exist = false) + private String personTypeName; + @TableField(exist = false) + private String sexName; + @TableField(exist = false) + private String oprationName; @Override protected Serializable pkVal() { return this.id; @@ -161,16 +98,16 @@ @Override public String toString() { return "Person{" + - "id=" + id + - ", delflag=" + delflag + - ", createtime=" + createtime + - ", updatetime=" + updatetime + - ", name=" + name + - ", sex=" + sex + - ", deptid=" + deptid + - ", idCard=" + idCard + - ", remarks=" + remarks + - ", personType=" + personType + - "}"; + "id=" + id + + ", delflag=" + delflag + + ", createtime=" + createtime + + ", updatetime=" + updatetime + + ", name=" + name + + ", sex=" + sex + + ", deptid=" + deptid + + ", idCardNo=" + idCardNo + + ", remarks=" + remarks + + ", personType=" + personType + + "}"; } } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java index c58c236..1e4f7bc 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java @@ -1,8 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.service.IService; +import java.util.List; + /** *

* 人员数据表 服务类 @@ -12,5 +17,10 @@ * @since 2019-12-03 */ public interface IPersonService extends IService { - + /** + * 查询最大的人员编码 + * @return + */ + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java index 4eb8734..b6f1862 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java @@ -1,10 +1,23 @@ package com.casic.missiles.modular.system.service.impl; -import com.casic.missiles.modular.system.model.Person; -import com.casic.missiles.modular.system.dao.PersonMapper; -import com.casic.missiles.modular.system.service.IPersonService; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.enums.MetaTypeEnums; +import com.casic.missiles.core.util.DateUtil; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.system.dao.PersonMapper; +import com.casic.missiles.modular.system.enums.PersonTypeEnums; +import com.casic.missiles.modular.system.model.Person; +import com.casic.missiles.modular.system.service.IPersonService; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; /** *

@@ -16,5 +29,57 @@ */ @Service public class PersonServiceImpl extends ServiceImpl implements IPersonService { + @Value("${casic.base.personPrefix:}") + private String personPrefix; + + @MetaData + @Override + public List selectList(Wrapper wrapper) { + return super.selectList(wrapper); + } + + @MetaData + @Override + public Page selectPage(Page page, Wrapper wrapper) { + return super.selectPage(page, wrapper); + } + + @Transactional + @Override + public boolean insert(@MetaData(type = MetaTypeEnums.INSERT) Person entity) { + //查询最大人员编码 + if (ToolUtil.isEmpty(entity.getPersonCode())) { + String currDay = DateUtil.getDays(); + String personCode = this.selectMaxPersonCode(entity.getPersonType(), currDay); + String code = PersonTypeEnums.typeOf(entity.getPersonType()).getCode(); + String prefix = ToolUtil.isEmpty(code)?personPrefix:code; + personCode = personCode.replaceAll(prefix, ""); + if (!"0".equals(personCode)) { + personCode = personCode.substring(8); + } + entity.setPersonCode(prefix.concat(currDay).concat(String.format("%06d", Integer.valueOf(personCode) + 1))); + } + return super.insert(entity); + } + + @Transactional + @Override + public boolean updateById(@MetaData(type = MetaTypeEnums.UPDATE) Person entity) { + return super.updateById(entity); + } + + @Override + public String selectMaxPersonCode(String personType, String currDay) { + return baseMapper.selectMaxPersonCode(personType, currDay); + } + + @Override + public List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper) { + return baseMapper.selectDataScopePerson(page,dataScope,wrapper); + } + + public static void main(String[] args) { + System.out.println(PersonTypeEnums.valueOf("1")); + } } diff --git "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" index 9656df2..0b03730 100644 --- "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" +++ "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" @@ -1,4 +1,4 @@ @echo off -title 智慧城管 -java -jar guns-web-1.0.0-SNAPSHOT.jar +title �ǻ۳ǹ� +java -jar casic-web-1.0.0-SNAPSHOT.jar @pause diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java index 4a8d915..362678c 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java @@ -1,15 +1,16 @@ package com.casic.missiles.modular.system.model; -import java.io.Serializable; +import com.alibaba.fastjson.annotation.JSONField; +import com.baomidou.mybatisplus.annotations.*; +import com.baomidou.mybatisplus.enums.IdType; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.annotations.MetaDataBean; +import com.casic.missiles.core.base.model.DataMetaModel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.io.Serializable; import java.util.Date; -import com.baomidou.mybatisplus.annotations.TableId; -import com.baomidou.mybatisplus.annotations.TableField; -import com.baomidou.mybatisplus.activerecord.Model; -import com.baomidou.mybatisplus.annotations.TableName; -import com.casic.missiles.modular.metadata.base.DataMetaModel; - -import java.io.Serializable; /** *

@@ -19,16 +20,18 @@ * @author lwh123 * @since 2019-12-03 */ +@Data +@MetaDataBean(name = "SysPersonExt") @TableName("sys_person") public class Person extends DataMetaModel { private static final long serialVersionUID = 1L; - - @TableId("ID") + @TableId(value = "ID", type = IdType.ID_WORKER) private Long id; /** * 状态(0:有效 1:删除) */ + @TableLogic @TableField("DELFLAG") private String delflag; /** @@ -59,8 +62,8 @@ /** * 身份证号 */ - @TableField("ID_CARD") - private String idCard; + @TableField("ID_CARD_NO") + private String idCardNo; /** * 备注信息 */ @@ -71,88 +74,22 @@ */ @TableField("PERSON_TYPE") private String personType; - - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getDelflag() { - return delflag; - } - - public void setDelflag(String delflag) { - this.delflag = delflag; - } - - public Date getCreatetime() { - return createtime; - } - - public void setCreatetime(Date createtime) { - this.createtime = createtime; - } - - public Date getUpdatetime() { - return updatetime; - } - - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getSex() { - return sex; - } - - public void setSex(String sex) { - this.sex = sex; - } - - public Long getDeptid() { - return deptid; - } - - public void setDeptid(Long deptid) { - this.deptid = deptid; - } - - public String getIdCard() { - return idCard; - } - - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getPersonType() { - return personType; - } - - public void setPersonType(String personType) { - this.personType = personType; - } - + /** + * 人员编码 + */ + @TableField("PERSON_CODE") + private String personCode; + @TableField("OPRATION_ID") + private Long oprationId; + //人员编码 + @TableField(exist = false) + private String deptName; + @TableField(exist = false) + private String personTypeName; + @TableField(exist = false) + private String sexName; + @TableField(exist = false) + private String oprationName; @Override protected Serializable pkVal() { return this.id; @@ -161,16 +98,16 @@ @Override public String toString() { return "Person{" + - "id=" + id + - ", delflag=" + delflag + - ", createtime=" + createtime + - ", updatetime=" + updatetime + - ", name=" + name + - ", sex=" + sex + - ", deptid=" + deptid + - ", idCard=" + idCard + - ", remarks=" + remarks + - ", personType=" + personType + - "}"; + "id=" + id + + ", delflag=" + delflag + + ", createtime=" + createtime + + ", updatetime=" + updatetime + + ", name=" + name + + ", sex=" + sex + + ", deptid=" + deptid + + ", idCardNo=" + idCardNo + + ", remarks=" + remarks + + ", personType=" + personType + + "}"; } } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java index c58c236..1e4f7bc 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java @@ -1,8 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.service.IService; +import java.util.List; + /** *

* 人员数据表 服务类 @@ -12,5 +17,10 @@ * @since 2019-12-03 */ public interface IPersonService extends IService { - + /** + * 查询最大的人员编码 + * @return + */ + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java index 4eb8734..b6f1862 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java @@ -1,10 +1,23 @@ package com.casic.missiles.modular.system.service.impl; -import com.casic.missiles.modular.system.model.Person; -import com.casic.missiles.modular.system.dao.PersonMapper; -import com.casic.missiles.modular.system.service.IPersonService; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.enums.MetaTypeEnums; +import com.casic.missiles.core.util.DateUtil; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.system.dao.PersonMapper; +import com.casic.missiles.modular.system.enums.PersonTypeEnums; +import com.casic.missiles.modular.system.model.Person; +import com.casic.missiles.modular.system.service.IPersonService; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; /** *

@@ -16,5 +29,57 @@ */ @Service public class PersonServiceImpl extends ServiceImpl implements IPersonService { + @Value("${casic.base.personPrefix:}") + private String personPrefix; + + @MetaData + @Override + public List selectList(Wrapper wrapper) { + return super.selectList(wrapper); + } + + @MetaData + @Override + public Page selectPage(Page page, Wrapper wrapper) { + return super.selectPage(page, wrapper); + } + + @Transactional + @Override + public boolean insert(@MetaData(type = MetaTypeEnums.INSERT) Person entity) { + //查询最大人员编码 + if (ToolUtil.isEmpty(entity.getPersonCode())) { + String currDay = DateUtil.getDays(); + String personCode = this.selectMaxPersonCode(entity.getPersonType(), currDay); + String code = PersonTypeEnums.typeOf(entity.getPersonType()).getCode(); + String prefix = ToolUtil.isEmpty(code)?personPrefix:code; + personCode = personCode.replaceAll(prefix, ""); + if (!"0".equals(personCode)) { + personCode = personCode.substring(8); + } + entity.setPersonCode(prefix.concat(currDay).concat(String.format("%06d", Integer.valueOf(personCode) + 1))); + } + return super.insert(entity); + } + + @Transactional + @Override + public boolean updateById(@MetaData(type = MetaTypeEnums.UPDATE) Person entity) { + return super.updateById(entity); + } + + @Override + public String selectMaxPersonCode(String personType, String currDay) { + return baseMapper.selectMaxPersonCode(personType, currDay); + } + + @Override + public List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper) { + return baseMapper.selectDataScopePerson(page,dataScope,wrapper); + } + + public static void main(String[] args) { + System.out.println(PersonTypeEnums.valueOf("1")); + } } diff --git "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" index 9656df2..0b03730 100644 --- "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" +++ "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" @@ -1,4 +1,4 @@ @echo off -title 智慧城管 -java -jar guns-web-1.0.0-SNAPSHOT.jar +title �ǻ۳ǹ� +java -jar casic-web-1.0.0-SNAPSHOT.jar @pause diff --git a/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java b/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java index 274647f..6689124 100644 --- a/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java +++ b/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java @@ -1,8 +1,19 @@ package com.casic.missiles.controller; +import com.baomidou.mybatisplus.toolkit.IdWorker; import com.casic.missiles.core.base.controller.BaseController; +import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.modular.metadata.service.IMetadataCommonService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.Map; /** * 仅为mock登录使用 @@ -10,14 +21,12 @@ @Controller @RequestMapping("/test") public class TableTestController extends BaseController { - /* private static final Logger logger = LoggerFactory.getLogger(TableTestController.class); + private static final Logger logger = LoggerFactory.getLogger(TableTestController.class); @Autowired private IMetadataCommonService metadataCommonService; - *//** - * 获取mockToken - *//* + @PostMapping("/add") @ResponseBody public Object add(@RequestParam Map map) { @@ -39,6 +48,6 @@ @ResponseBody public Object detail(Long id) { return ResponseData.success(metadataCommonService.selectOneMetaData("SysPersonExt", id)); - }*/ + } } diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java index 4a8d915..362678c 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java @@ -1,15 +1,16 @@ package com.casic.missiles.modular.system.model; -import java.io.Serializable; +import com.alibaba.fastjson.annotation.JSONField; +import com.baomidou.mybatisplus.annotations.*; +import com.baomidou.mybatisplus.enums.IdType; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.annotations.MetaDataBean; +import com.casic.missiles.core.base.model.DataMetaModel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.io.Serializable; import java.util.Date; -import com.baomidou.mybatisplus.annotations.TableId; -import com.baomidou.mybatisplus.annotations.TableField; -import com.baomidou.mybatisplus.activerecord.Model; -import com.baomidou.mybatisplus.annotations.TableName; -import com.casic.missiles.modular.metadata.base.DataMetaModel; - -import java.io.Serializable; /** *

@@ -19,16 +20,18 @@ * @author lwh123 * @since 2019-12-03 */ +@Data +@MetaDataBean(name = "SysPersonExt") @TableName("sys_person") public class Person extends DataMetaModel { private static final long serialVersionUID = 1L; - - @TableId("ID") + @TableId(value = "ID", type = IdType.ID_WORKER) private Long id; /** * 状态(0:有效 1:删除) */ + @TableLogic @TableField("DELFLAG") private String delflag; /** @@ -59,8 +62,8 @@ /** * 身份证号 */ - @TableField("ID_CARD") - private String idCard; + @TableField("ID_CARD_NO") + private String idCardNo; /** * 备注信息 */ @@ -71,88 +74,22 @@ */ @TableField("PERSON_TYPE") private String personType; - - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getDelflag() { - return delflag; - } - - public void setDelflag(String delflag) { - this.delflag = delflag; - } - - public Date getCreatetime() { - return createtime; - } - - public void setCreatetime(Date createtime) { - this.createtime = createtime; - } - - public Date getUpdatetime() { - return updatetime; - } - - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getSex() { - return sex; - } - - public void setSex(String sex) { - this.sex = sex; - } - - public Long getDeptid() { - return deptid; - } - - public void setDeptid(Long deptid) { - this.deptid = deptid; - } - - public String getIdCard() { - return idCard; - } - - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getPersonType() { - return personType; - } - - public void setPersonType(String personType) { - this.personType = personType; - } - + /** + * 人员编码 + */ + @TableField("PERSON_CODE") + private String personCode; + @TableField("OPRATION_ID") + private Long oprationId; + //人员编码 + @TableField(exist = false) + private String deptName; + @TableField(exist = false) + private String personTypeName; + @TableField(exist = false) + private String sexName; + @TableField(exist = false) + private String oprationName; @Override protected Serializable pkVal() { return this.id; @@ -161,16 +98,16 @@ @Override public String toString() { return "Person{" + - "id=" + id + - ", delflag=" + delflag + - ", createtime=" + createtime + - ", updatetime=" + updatetime + - ", name=" + name + - ", sex=" + sex + - ", deptid=" + deptid + - ", idCard=" + idCard + - ", remarks=" + remarks + - ", personType=" + personType + - "}"; + "id=" + id + + ", delflag=" + delflag + + ", createtime=" + createtime + + ", updatetime=" + updatetime + + ", name=" + name + + ", sex=" + sex + + ", deptid=" + deptid + + ", idCardNo=" + idCardNo + + ", remarks=" + remarks + + ", personType=" + personType + + "}"; } } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java index c58c236..1e4f7bc 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java @@ -1,8 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.service.IService; +import java.util.List; + /** *

* 人员数据表 服务类 @@ -12,5 +17,10 @@ * @since 2019-12-03 */ public interface IPersonService extends IService { - + /** + * 查询最大的人员编码 + * @return + */ + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java index 4eb8734..b6f1862 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java @@ -1,10 +1,23 @@ package com.casic.missiles.modular.system.service.impl; -import com.casic.missiles.modular.system.model.Person; -import com.casic.missiles.modular.system.dao.PersonMapper; -import com.casic.missiles.modular.system.service.IPersonService; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.enums.MetaTypeEnums; +import com.casic.missiles.core.util.DateUtil; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.system.dao.PersonMapper; +import com.casic.missiles.modular.system.enums.PersonTypeEnums; +import com.casic.missiles.modular.system.model.Person; +import com.casic.missiles.modular.system.service.IPersonService; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; /** *

@@ -16,5 +29,57 @@ */ @Service public class PersonServiceImpl extends ServiceImpl implements IPersonService { + @Value("${casic.base.personPrefix:}") + private String personPrefix; + + @MetaData + @Override + public List selectList(Wrapper wrapper) { + return super.selectList(wrapper); + } + + @MetaData + @Override + public Page selectPage(Page page, Wrapper wrapper) { + return super.selectPage(page, wrapper); + } + + @Transactional + @Override + public boolean insert(@MetaData(type = MetaTypeEnums.INSERT) Person entity) { + //查询最大人员编码 + if (ToolUtil.isEmpty(entity.getPersonCode())) { + String currDay = DateUtil.getDays(); + String personCode = this.selectMaxPersonCode(entity.getPersonType(), currDay); + String code = PersonTypeEnums.typeOf(entity.getPersonType()).getCode(); + String prefix = ToolUtil.isEmpty(code)?personPrefix:code; + personCode = personCode.replaceAll(prefix, ""); + if (!"0".equals(personCode)) { + personCode = personCode.substring(8); + } + entity.setPersonCode(prefix.concat(currDay).concat(String.format("%06d", Integer.valueOf(personCode) + 1))); + } + return super.insert(entity); + } + + @Transactional + @Override + public boolean updateById(@MetaData(type = MetaTypeEnums.UPDATE) Person entity) { + return super.updateById(entity); + } + + @Override + public String selectMaxPersonCode(String personType, String currDay) { + return baseMapper.selectMaxPersonCode(personType, currDay); + } + + @Override + public List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper) { + return baseMapper.selectDataScopePerson(page,dataScope,wrapper); + } + + public static void main(String[] args) { + System.out.println(PersonTypeEnums.valueOf("1")); + } } diff --git "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" index 9656df2..0b03730 100644 --- "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" +++ "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" @@ -1,4 +1,4 @@ @echo off -title 智慧城管 -java -jar guns-web-1.0.0-SNAPSHOT.jar +title �ǻ۳ǹ� +java -jar casic-web-1.0.0-SNAPSHOT.jar @pause diff --git a/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java b/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java index 274647f..6689124 100644 --- a/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java +++ b/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java @@ -1,8 +1,19 @@ package com.casic.missiles.controller; +import com.baomidou.mybatisplus.toolkit.IdWorker; import com.casic.missiles.core.base.controller.BaseController; +import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.modular.metadata.service.IMetadataCommonService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.Map; /** * 仅为mock登录使用 @@ -10,14 +21,12 @@ @Controller @RequestMapping("/test") public class TableTestController extends BaseController { - /* private static final Logger logger = LoggerFactory.getLogger(TableTestController.class); + private static final Logger logger = LoggerFactory.getLogger(TableTestController.class); @Autowired private IMetadataCommonService metadataCommonService; - *//** - * 获取mockToken - *//* + @PostMapping("/add") @ResponseBody public Object add(@RequestParam Map map) { @@ -39,6 +48,6 @@ @ResponseBody public Object detail(Long id) { return ResponseData.success(metadataCommonService.selectOneMetaData("SysPersonExt", id)); - }*/ + } } diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 251a8df..11ccdf3 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -5,7 +5,7 @@ datasource: url: jdbc:mysql://192.168.8.201:3306/casic_iris?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull username: root - password: root + password: Casic203 initial-size: 2 min-idle: 1 #flowable数据源和多数据源配置 diff --git a/casic-iris-acs/pom.xml b/casic-iris-acs/pom.xml index 92a10e1..d7cb377 100644 --- a/casic-iris-acs/pom.xml +++ b/casic-iris-acs/pom.xml @@ -32,7 +32,11 @@ casic-metadata-core ${casic.version} - + + com.casic + casic-metadata-support + ${casic.version} + com.casic casic-export-support diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java index 882434e..fc7f86b 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/controller/PersonController.java @@ -5,6 +5,8 @@ import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.system.model.Person; import com.casic.missiles.modular.system.service.IPersonService; import org.springframework.beans.factory.annotation.Autowired; @@ -21,8 +23,8 @@ @RestController @RequestMapping("/person") public class PersonController extends BaseController { - - + @Autowired + private ICommonPermissionService permissionService; @Autowired private IPersonService personService; @@ -30,10 +32,10 @@ /** * 获取人员管理列表 */ - @RequestMapping(value = "/list") + @GetMapping(value = "/list") @ResponseBody public Object list(String condition) { - return personService.selectList(null); + return ResponseData.success(personService.selectList(null)); } /** @@ -41,20 +43,43 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String condition) { + public Object listPage(String keywords, String sex, String duty, String deptId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); - page = personService.selectPage(page,query); - return super.packForBT(page); + + if(ToolUtil.isNotEmpty(duty)){ + query.eq("a.DUTY",duty); + } + if (ToolUtil.isNotEmpty(deptId)) { + query.eq("a.DEPTID", deptId); + } + if (ToolUtil.isNotEmpty(sex)) { + query.eq("a.SEX", sex); + } + query.eq("a.DELFLAG", 0); + if(ToolUtil.isNotEmpty(keywords)){ + query.andNew().like("a.NAME",keywords).or().like("a.ID_CARD_NO",keywords); + } + List scopePersons = personService.selectDataScopePerson(page,permissionService.getCurrUserDataScope(), query); + page.setRecords(scopePersons); + //展示数据封装 + page.getRecords().forEach(person -> { + person.setDeptName(permissionService.getDeptName(person.getDeptid())); + person.setSexName(permissionService.getDictNameByCode("sysSex", person.getSex())); + person.setPersonTypeName(permissionService.getDictNameByCode("personType", person.getSex())); + }); + + return ResponseData.success(super.packForBT(page)); } + /** * 新增人员管理 */ @RequestMapping(value = "/add") @ResponseBody - public Object add(Person person) { - personService.insert(person); - return ResponseData.success(); + public Object add(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); + return ResponseData.success(personService.insert(person)); } /** @@ -62,7 +87,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody - public Object delete(@RequestParam String personId) { + public Object delete(@RequestParam Long personId) { personService.deleteById(personId); return ResponseData.success(); } @@ -72,7 +97,7 @@ */ @RequestMapping(value = "/batchDelete") @ResponseBody - public Object delete(@RequestParam("personIds") List personIds) { + public Object delete(@RequestParam("ids") List personIds) { personService.deleteBatchIds(personIds); return ResponseData.success(); } @@ -82,7 +107,8 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(Person person) { + public Object update(@RequestBody Person person) { + person.setOprationId(permissionService.getCurrLoginUser().getId()); personService.updateById(person); return ResponseData.success(); } @@ -95,4 +121,5 @@ public Object detail(@PathVariable("personId") String personId) { return ResponseData.success(personService.selectById(personId)); } + } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java index c2a324b..bb13777 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/PersonMapper.java @@ -1,7 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -12,5 +19,8 @@ * @since 2019-12-03 */ public interface PersonMapper extends BaseMapper { + @Select({"SELECT IFNULL(max(PERSON_CODE),0) AS personCode FROM sys_person where PERSON_TYPE = #{personType} and CREATETIME > #{currDay} "}) + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("ew") EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml index f556815..295c59a 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/dao/mapping/PersonMapper.xml @@ -4,21 +4,33 @@ - - - - - - - - - - + + + + + + + + + + - ID AS id, DELFLAG AS delflag, CREATETIME AS createtime, UPDATETIME AS updatetime, NAME AS name, SEX AS sex, DEPTID AS deptid, ID_CARD AS idCard, REMARKS AS remarks, PERSON_TYPE AS personType + a.ID AS id, a.DELFLAG AS delflag, a.CREATETIME AS createtime, a.UPDATETIME AS updatetime, a.NAME AS name, a.SEX AS sex, a.DEPTID AS deptid, a.ID_CARD_NO AS idCard, a.REMARKS AS remarks, a.PERSON_TYPE AS personType + ,a.DUTY + diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java new file mode 100644 index 0000000..a139b9a --- /dev/null +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/enums/PersonTypeEnums.java @@ -0,0 +1,53 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by Fernflower decompiler) +// + +package com.casic.missiles.modular.system.enums; + +public enum PersonTypeEnums { + VISITOR("0", "FK", "添加"), + STAFF("1", "", "删除"); + + private String value; + private String code; + private String name; + + private PersonTypeEnums(String value, String code, String name) { + this.value = value; + this.code = code; + this.name = name; + } + + public String getCode() { + return this.code; + } + + public void setCode(String code) { + this.code = code; + } + + 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; + } + + public static PersonTypeEnums typeOf(String value){ + switch (value){ + case "0": + return VISITOR; + default: return STAFF; + } + } +} diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java index 4a8d915..362678c 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/model/Person.java @@ -1,15 +1,16 @@ package com.casic.missiles.modular.system.model; -import java.io.Serializable; +import com.alibaba.fastjson.annotation.JSONField; +import com.baomidou.mybatisplus.annotations.*; +import com.baomidou.mybatisplus.enums.IdType; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.annotations.MetaDataBean; +import com.casic.missiles.core.base.model.DataMetaModel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.io.Serializable; import java.util.Date; -import com.baomidou.mybatisplus.annotations.TableId; -import com.baomidou.mybatisplus.annotations.TableField; -import com.baomidou.mybatisplus.activerecord.Model; -import com.baomidou.mybatisplus.annotations.TableName; -import com.casic.missiles.modular.metadata.base.DataMetaModel; - -import java.io.Serializable; /** *

@@ -19,16 +20,18 @@ * @author lwh123 * @since 2019-12-03 */ +@Data +@MetaDataBean(name = "SysPersonExt") @TableName("sys_person") public class Person extends DataMetaModel { private static final long serialVersionUID = 1L; - - @TableId("ID") + @TableId(value = "ID", type = IdType.ID_WORKER) private Long id; /** * 状态(0:有效 1:删除) */ + @TableLogic @TableField("DELFLAG") private String delflag; /** @@ -59,8 +62,8 @@ /** * 身份证号 */ - @TableField("ID_CARD") - private String idCard; + @TableField("ID_CARD_NO") + private String idCardNo; /** * 备注信息 */ @@ -71,88 +74,22 @@ */ @TableField("PERSON_TYPE") private String personType; - - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getDelflag() { - return delflag; - } - - public void setDelflag(String delflag) { - this.delflag = delflag; - } - - public Date getCreatetime() { - return createtime; - } - - public void setCreatetime(Date createtime) { - this.createtime = createtime; - } - - public Date getUpdatetime() { - return updatetime; - } - - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getSex() { - return sex; - } - - public void setSex(String sex) { - this.sex = sex; - } - - public Long getDeptid() { - return deptid; - } - - public void setDeptid(Long deptid) { - this.deptid = deptid; - } - - public String getIdCard() { - return idCard; - } - - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getPersonType() { - return personType; - } - - public void setPersonType(String personType) { - this.personType = personType; - } - + /** + * 人员编码 + */ + @TableField("PERSON_CODE") + private String personCode; + @TableField("OPRATION_ID") + private Long oprationId; + //人员编码 + @TableField(exist = false) + private String deptName; + @TableField(exist = false) + private String personTypeName; + @TableField(exist = false) + private String sexName; + @TableField(exist = false) + private String oprationName; @Override protected Serializable pkVal() { return this.id; @@ -161,16 +98,16 @@ @Override public String toString() { return "Person{" + - "id=" + id + - ", delflag=" + delflag + - ", createtime=" + createtime + - ", updatetime=" + updatetime + - ", name=" + name + - ", sex=" + sex + - ", deptid=" + deptid + - ", idCard=" + idCard + - ", remarks=" + remarks + - ", personType=" + personType + - "}"; + "id=" + id + + ", delflag=" + delflag + + ", createtime=" + createtime + + ", updatetime=" + updatetime + + ", name=" + name + + ", sex=" + sex + + ", deptid=" + deptid + + ", idCardNo=" + idCardNo + + ", remarks=" + remarks + + ", personType=" + personType + + "}"; } } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java index c58c236..1e4f7bc 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/IPersonService.java @@ -1,8 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.Person; import com.baomidou.mybatisplus.service.IService; +import java.util.List; + /** *

* 人员数据表 服务类 @@ -12,5 +17,10 @@ * @since 2019-12-03 */ public interface IPersonService extends IService { - + /** + * 查询最大的人员编码 + * @return + */ + String selectMaxPersonCode(String personType,String currDay); + List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper); } diff --git a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java index 4eb8734..b6f1862 100644 --- a/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java +++ b/casic-iris-acs/src/main/java/com/casic/missiles/modular/system/service/impl/PersonServiceImpl.java @@ -1,10 +1,23 @@ package com.casic.missiles.modular.system.service.impl; -import com.casic.missiles.modular.system.model.Person; -import com.casic.missiles.modular.system.dao.PersonMapper; -import com.casic.missiles.modular.system.service.IPersonService; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.casic.missiles.core.annotations.MetaData; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.enums.MetaTypeEnums; +import com.casic.missiles.core.util.DateUtil; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.system.dao.PersonMapper; +import com.casic.missiles.modular.system.enums.PersonTypeEnums; +import com.casic.missiles.modular.system.model.Person; +import com.casic.missiles.modular.system.service.IPersonService; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; /** *

@@ -16,5 +29,57 @@ */ @Service public class PersonServiceImpl extends ServiceImpl implements IPersonService { + @Value("${casic.base.personPrefix:}") + private String personPrefix; + + @MetaData + @Override + public List selectList(Wrapper wrapper) { + return super.selectList(wrapper); + } + + @MetaData + @Override + public Page selectPage(Page page, Wrapper wrapper) { + return super.selectPage(page, wrapper); + } + + @Transactional + @Override + public boolean insert(@MetaData(type = MetaTypeEnums.INSERT) Person entity) { + //查询最大人员编码 + if (ToolUtil.isEmpty(entity.getPersonCode())) { + String currDay = DateUtil.getDays(); + String personCode = this.selectMaxPersonCode(entity.getPersonType(), currDay); + String code = PersonTypeEnums.typeOf(entity.getPersonType()).getCode(); + String prefix = ToolUtil.isEmpty(code)?personPrefix:code; + personCode = personCode.replaceAll(prefix, ""); + if (!"0".equals(personCode)) { + personCode = personCode.substring(8); + } + entity.setPersonCode(prefix.concat(currDay).concat(String.format("%06d", Integer.valueOf(personCode) + 1))); + } + return super.insert(entity); + } + + @Transactional + @Override + public boolean updateById(@MetaData(type = MetaTypeEnums.UPDATE) Person entity) { + return super.updateById(entity); + } + + @Override + public String selectMaxPersonCode(String personType, String currDay) { + return baseMapper.selectMaxPersonCode(personType, currDay); + } + + @Override + public List selectDataScopePerson(Page page, DataScope dataScope, EntityWrapper wrapper) { + return baseMapper.selectDataScopePerson(page,dataScope,wrapper); + } + + public static void main(String[] args) { + System.out.println(PersonTypeEnums.valueOf("1")); + } } diff --git "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" index 9656df2..0b03730 100644 --- "a/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" +++ "b/casic-web/src/main/bin/\350\231\271\350\206\234\351\227\250\347\246\201.bat" @@ -1,4 +1,4 @@ @echo off -title 智慧城管 -java -jar guns-web-1.0.0-SNAPSHOT.jar +title �ǻ۳ǹ� +java -jar casic-web-1.0.0-SNAPSHOT.jar @pause diff --git a/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java b/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java index 274647f..6689124 100644 --- a/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java +++ b/casic-web/src/main/java/com/casic/missiles/controller/TableTestController.java @@ -1,8 +1,19 @@ package com.casic.missiles.controller; +import com.baomidou.mybatisplus.toolkit.IdWorker; import com.casic.missiles.core.base.controller.BaseController; +import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.modular.metadata.service.IMetadataCommonService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.Map; /** * 仅为mock登录使用 @@ -10,14 +21,12 @@ @Controller @RequestMapping("/test") public class TableTestController extends BaseController { - /* private static final Logger logger = LoggerFactory.getLogger(TableTestController.class); + private static final Logger logger = LoggerFactory.getLogger(TableTestController.class); @Autowired private IMetadataCommonService metadataCommonService; - *//** - * 获取mockToken - *//* + @PostMapping("/add") @ResponseBody public Object add(@RequestParam Map map) { @@ -39,6 +48,6 @@ @ResponseBody public Object detail(Long id) { return ResponseData.success(metadataCommonService.selectOneMetaData("SysPersonExt", id)); - }*/ + } } diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 251a8df..11ccdf3 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -5,7 +5,7 @@ datasource: url: jdbc:mysql://192.168.8.201:3306/casic_iris?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull username: root - password: root + password: Casic203 initial-size: 2 min-idle: 1 #flowable数据源和多数据源配置 diff --git a/pom.xml b/pom.xml index b74d442..2e7a9b0 100644 --- a/pom.xml +++ b/pom.xml @@ -61,7 +61,6 @@ casic-admin-support ${casic.version} - com.casic casic-core @@ -69,7 +68,9 @@ + + com.casic casic-iris-acs