diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index 04aabbf38f..e12787cc3b 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -37,7 +37,13 @@ public enum EpmetErrorCode { MOBILE_GET_CODE_ERROR(8104,"获取验证码失败"), MESSAGE_SMS_SEND_ERROR(8105, "短信发送失败"), NOT_DEL_GRID(8106,"该网格存在工作人员,不允许删除"), + ORG_IS_NOT_NULL(8107,"党组织关系不能为空"), + CANNOT_DELETE_PARTY_BRANCH(8108,"当前支部存在党员,不允许删除"), + IDCARDNO_ALREADY_EXITS(8109,"系统已存在相同身份证号码,请重新输入"), + IDCARDNO_ERROR(8110,"身份证号格式错误,请重新输入"), + CANNOT_DELETE_PARTY_MEMBER(8111,"该用户已注册党员,不允许删除"), + CANNOT_AUDIT_WARM(8201, "请完善居民信息"), NOT_DEL_AGENCY(8202, "该机关存在下级机关,不允许删除"), @@ -89,7 +95,7 @@ public enum EpmetErrorCode { return epmetErrorCodeEnum.getMsg(); } } - return null; + return EpmetErrorCode.SERVER_ERROR.getMsg(); } public int getCode(){ diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/validator/IdCardNoValidatorUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/validator/IdCardNoValidatorUtils.java new file mode 100644 index 0000000000..cc93d9f3a8 --- /dev/null +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/validator/IdCardNoValidatorUtils.java @@ -0,0 +1,19 @@ +package com.epmet.commons.tools.validator; + +/** + * 描述一下 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/18 9:59 + */ +public class IdCardNoValidatorUtils { + //判断身份证号是否正确 + public static boolean checkIsIdCardNo(String idCardNo){ + return true; + } + + //根据身份证号判断性别 + public static String getGender(String idCard) { + return "1"; + } +} diff --git a/epmet-module/gov-grid/gov-grid-client/pom.xml b/epmet-module/gov-grid/gov-grid-client/pom.xml index 297cb07121..5c477c501f 100644 --- a/epmet-module/gov-grid/gov-grid-client/pom.xml +++ b/epmet-module/gov-grid/gov-grid-client/pom.xml @@ -19,6 +19,12 @@ org.projectlombok lombok + + com.epmet + epmet-commons-tools + 2.0.0 + compile + diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchAddFormDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchAddFormDTO.java new file mode 100644 index 0000000000..29ac589a4f --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchAddFormDTO.java @@ -0,0 +1,51 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 添加党支部入参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 12:35 + */ +@Data +public class PartyBranchAddFormDTO implements Serializable { + private static final long serialVersionUID = -8102877381223078842L; + + public interface AddUserInternalGroup { + } + + public interface AddUserShowGroup extends CustomerClientShowGroup { + } + + /** + * 客户id + */ + @NotBlank(message = "客户id不能为空", groups = {AddUserInternalGroup.class}) + private String customerId; + + /** + * 网格id + */ + @NotBlank(message = "网格id不能为空", groups = {AddUserInternalGroup.class}) + private String gridId; + + /** + * 党支部名称 + */ + @NotBlank(message = "请输入支部名称", groups = {AddUserShowGroup.class}) + @Length(max = 20, message = "支部名称不能超过20个字", groups = AddUserShowGroup.class) + private String partyBranchName; + + /** + * 党支部概要信息 + */ + @NotBlank(message = "请输入支部概要信息", groups = {AddUserShowGroup.class}) + @Length(max = 500, message = "支部概要信息不能超过500个字", groups = AddUserShowGroup.class) + private String profile; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchEditFormDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchEditFormDTO.java new file mode 100644 index 0000000000..d4f03416a6 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchEditFormDTO.java @@ -0,0 +1,40 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 修改党支部信息入参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 14:00 + */ +@Data +public class PartyBranchEditFormDTO implements Serializable { + private static final long serialVersionUID = -6739109166420798965L; + public interface AddUserInternalGroup { + } + + public interface AddUserShowGroup extends CustomerClientShowGroup { + } + + @NotBlank(message = "党支部id不能为空", groups = {AddUserInternalGroup.class}) + private String partyBranchId; + /** + * 党支部名称 + */ + @NotBlank(message = "请输入支部名称", groups = {AddUserShowGroup.class}) + @Length(max = 20, message = "支部名称不能超过20个字", groups = AddUserShowGroup.class) + private String partyBranchName; + + /** + * 党支部概要信息 + */ + @NotBlank(message = "请输入支部概要信息", groups = {AddUserShowGroup.class}) + @Length(max = 500, message = "支部概要信息不能超过500个字", groups = AddUserShowGroup.class) + private String profile; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchIdFormDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchIdFormDTO.java new file mode 100644 index 0000000000..1849a8481b --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchIdFormDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 党支部id + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 17:02 + */ +@Data +public class PartyBranchIdFormDTO implements Serializable { + private static final long serialVersionUID = 5321430865413383354L; + public interface AddUserInternalGroup { + } + /** + * 党支部id + */ + @NotBlank(message = "党支部id不能为空",groups = {AddUserInternalGroup.class}) + private String partyBranchId; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchListFormDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchListFormDTO.java new file mode 100644 index 0000000000..5f1c8681e4 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/PartyBranchListFormDTO.java @@ -0,0 +1,29 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 3、党支部列表查询入参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 16:11 + */ +@Data +public class PartyBranchListFormDTO implements Serializable { + public interface AddUserInternalGroup { + } + /** + * 客户id + */ + @NotBlank(message = "客户id不能为空", groups = {PartyBranchListFormDTO.AddUserInternalGroup.class}) + private String customerId; + + /** + * 网格id + */ + @NotBlank(message = "网格id不能为空", groups = {PartyBranchListFormDTO.AddUserInternalGroup.class}) + private String gridId; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/SaveOrUpdateParyMemberFormDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/SaveOrUpdateParyMemberFormDTO.java new file mode 100644 index 0000000000..3414805602 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/SaveOrUpdateParyMemberFormDTO.java @@ -0,0 +1,42 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 新增、修改党员入参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 22:15 + */ +@Data +public class SaveOrUpdateParyMemberFormDTO implements Serializable { + private static final long serialVersionUID = -6896349967046364830L; + + public interface UpdatePatyMemberGroup { + } + + public interface SavePatyMemberGroup { + } + + public interface AddUserShowGroup extends CustomerClientShowGroup { + } + + @NotBlank(message = "党支部id不能为空", groups = {SavePatyMemberGroup.class}) + private String partyBranchId; + + @NotBlank(message = "姓名不能为空", groups = {AddUserShowGroup.class}) + private String name; + + @NotBlank(message = "身份证不能为空", groups = {AddUserShowGroup.class}) + private String idCard; + + @NotBlank(message = "手机号不能为空", groups = {AddUserShowGroup.class}) + private String mobile; + + @NotBlank(message = "党员id不能为空", groups = {UpdatePatyMemberGroup.class}) + private String partyMemberId; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchAddResultDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchAddResultDTO.java new file mode 100644 index 0000000000..a959eb8e1a --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchAddResultDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 添加党支部返参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 12:45 + */ +@Data +public class PartyBranchAddResultDTO implements Serializable { + private static final long serialVersionUID = 5610858988982913682L; + /** + * 党支部id + */ + private String partyBranchId; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchInfoResultDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchInfoResultDTO.java new file mode 100644 index 0000000000..dad717fc22 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchInfoResultDTO.java @@ -0,0 +1,41 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 党支部详情信息返参 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 21:45 + */ +@Data +public class PartyBranchInfoResultDTO implements Serializable { + private static final long serialVersionUID = 1184531127569286576L; + + /** + * 党支部id + */ + private String partyBranchId; + + /** + * 党支部名称 + */ + private String partyBranchName; + + /** + * 党支部概要 + */ + private String profile; + + /** + * 党支部所属网格名称 + */ + private String gridName; + + /** + * 党支部所属网格id + */ + private String gridId; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchListResultDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchListResultDTO.java new file mode 100644 index 0000000000..01920b0819 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyBranchListResultDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 3、党支部列表查询返参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 16:13 + */ +@Data +public class PartyBranchListResultDTO implements Serializable { + private static final long serialVersionUID = 8342529186641647970L; + /** + * 支部id + */ + private String partyBranchId; + /** + * 支部名称 + */ + private String partyBranchName; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyMemberIdResultDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyMemberIdResultDTO.java new file mode 100644 index 0000000000..09f2e6b1a9 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyMemberIdResultDTO.java @@ -0,0 +1,17 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 党员id:添加党员后返参、修改党员后返参 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 22:13 + */ +@Data +public class PartyMemberIdResultDTO implements Serializable { + private static final long serialVersionUID = 7467454908831748131L; + private String partyMemberId; +} diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyMemberInfoResultDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyMemberInfoResultDTO.java new file mode 100644 index 0000000000..7f812531c5 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/PartyMemberInfoResultDTO.java @@ -0,0 +1,30 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 党员列表返参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/18 10:04 + */ +@Data +public class PartyMemberInfoResultDTO implements Serializable { + private static final long serialVersionUID = 627412197353847930L; + /** + * 党员id + */ + private String partyMemberId; + + /** + * 姓名 + */ + private String name; + + /** + * 性别1男2女0未知 + */ + private String gender; +} diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/PartyBranchManageController.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/PartyBranchManageController.java new file mode 100644 index 0000000000..477aac3df7 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/PartyBranchManageController.java @@ -0,0 +1,144 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.service.PartyBranchManageService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * 基层治理-支部管理 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 12:25 + */ +@RestController +@RequestMapping("partybranch") +public class PartyBranchManageController { + @Autowired + private PartyBranchManageService partyBranchManageService; + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 添加党支部 + * @Date 2020/6/17 12:47 + **/ + @PostMapping("add") + public Result addPartyBranch(@RequestBody PartyBranchAddFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, PartyBranchAddFormDTO.AddUserShowGroup.class, PartyBranchAddFormDTO.AddUserInternalGroup.class); + PartyBranchAddResultDTO partyBranchAddResultDTO = partyBranchManageService.addPartyBranch(formDTO); + return new Result().ok(partyBranchAddResultDTO); + } + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 修改党支部信息 + * @Date 2020/6/17 15:31 + **/ + @PostMapping("edit") + public Result editPartyBranch(@RequestBody PartyBranchEditFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, PartyBranchEditFormDTO.AddUserShowGroup.class, PartyBranchEditFormDTO.AddUserInternalGroup.class); + partyBranchManageService.editPartyBranch(formDTO); + PartyBranchAddResultDTO partyBranchAddResultDTO = new PartyBranchAddResultDTO(); + partyBranchAddResultDTO.setPartyBranchId(formDTO.getPartyBranchId()); + return new Result().ok(partyBranchAddResultDTO); + } + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result> + * @author yinzuomei + * @description 党支部列表查询 + * @Date 2020/6/17 16:15 + **/ + @PostMapping("list") + public Result> listPartyBranch(@RequestBody PartyBranchListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, PartyBranchListFormDTO.AddUserInternalGroup.class); + return new Result>().ok(partyBranchManageService.listPartyBranch(formDTO)); + } + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 删除党支部 + * @Date 2020/6/17 18:23 + **/ + @PostMapping("delete") + public Result deleteBranch(@RequestBody PartyBranchIdFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + partyBranchManageService.deleteBranch(formDTO.getPartyBranchId()); + return new Result(); + } + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 5、党支部详情信息查询 + * @Date 2020/6/17 21:49 + **/ + @PostMapping("info") + public Result queryPartyBranchInfo(@RequestBody PartyBranchIdFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO,PartyBranchIdFormDTO.AddUserInternalGroup.class); + PartyBranchInfoResultDTO partyBranchInfoResultDTO = partyBranchManageService.queryPartyBranchInfo(formDTO.getPartyBranchId()); + return new Result().ok(partyBranchInfoResultDTO); + } + + /** + * @return com.epmet.commons.tools.utils.Result + * @param formDTO + * @author yinzuomei + * @description 6、党员列表查询 + * @Date 2020/6/18 0:17 + **/ + @PostMapping("/partymember/list") + public Result> listPartyMember(@RequestBody PartyBranchIdFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO,PartyBranchIdFormDTO.AddUserInternalGroup.class); + List list=partyBranchManageService.listPartyMember(formDTO.getPartyBranchId()); + return new Result>().ok(list); + } + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 7、添加党员 + * @Date 2020/6/17 22:25 + **/ + @PostMapping("/partymember/add") + public Result addPartyMember(@RequestBody SaveOrUpdateParyMemberFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, SaveOrUpdateParyMemberFormDTO.AddUserShowGroup.class + , SaveOrUpdateParyMemberFormDTO.SavePatyMemberGroup.class); + PartyMemberIdResultDTO partyMemberIdResultDTO = new PartyMemberIdResultDTO(); + partyMemberIdResultDTO.setPartyMemberId(partyBranchManageService.addPartyMember(formDTO)); + return new Result().ok(partyMemberIdResultDTO); + } + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 8、编辑党员 + * @Date 2020/6/17 23:29 + **/ + @PostMapping("/partymember/edit") + public Result editPartyMember(@RequestBody SaveOrUpdateParyMemberFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, SaveOrUpdateParyMemberFormDTO.AddUserShowGroup.class + , SaveOrUpdateParyMemberFormDTO.UpdatePatyMemberGroup.class); + PartyMemberIdResultDTO partyMemberIdResultDTO = new PartyMemberIdResultDTO(); + partyMemberIdResultDTO.setPartyMemberId(partyBranchManageService.editPartyMember(formDTO)); + return new Result().ok(partyMemberIdResultDTO); + } +} diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/PartyBranchManageService.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/PartyBranchManageService.java new file mode 100644 index 0000000000..c9693eddb4 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/PartyBranchManageService.java @@ -0,0 +1,92 @@ +package com.epmet.service; + +import com.epmet.dto.form.PartyBranchAddFormDTO; +import com.epmet.dto.form.PartyBranchEditFormDTO; +import com.epmet.dto.form.PartyBranchListFormDTO; +import com.epmet.dto.form.SaveOrUpdateParyMemberFormDTO; +import com.epmet.dto.result.PartyBranchAddResultDTO; +import com.epmet.dto.result.PartyBranchInfoResultDTO; +import com.epmet.dto.result.PartyBranchListResultDTO; +import com.epmet.dto.result.PartyMemberInfoResultDTO; + +import java.util.List; + +/** + * 基层治理-支部管理 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 12:47 + */ +public interface PartyBranchManageService { + /** + * @param formDTO + * @return com.epmet.dto.result.PartyBranchAddResultDTO + * @author yinzuomei + * @description 添加党支部 + * @Date 2020/6/17 13:24 + **/ + PartyBranchAddResultDTO addPartyBranch(PartyBranchAddFormDTO formDTO); + + /** + * @param formDTO + * @return com.epmet.dto.result.PartyBranchAddResultDTO + * @author yinzuomei + * @description 修改党支部信息 + * @Date 2020/6/17 14:30 + **/ + void editPartyBranch(PartyBranchEditFormDTO formDTO); + + /** + * @param formDTO + * @return java.util.List + * @author yinzuomei + * @description 党支部列表查询 + * @Date 2020/6/17 16:15 + **/ + List listPartyBranch(PartyBranchListFormDTO formDTO); + + /** + * @return void + * @param partyBranchId + * @author yinzuomei + * @description 删除党支部 + * @Date 2020/6/17 17:04 + **/ + void deleteBranch(String partyBranchId); + + /** + * @return com.epmet.dto.result.PartyBranchInfoResultDTO + * @param partyBranchId + * @author yinzuomei + * @description 5、党支部详情信息查询 + * @Date 2020/6/17 21:49 + **/ + PartyBranchInfoResultDTO queryPartyBranchInfo(String partyBranchId); + + /** + * @return java.util.List + * @param partyBranchId + * @author yinzuomei + * @description 党员列表查询 + * @Date 2020/6/18 10:06 + **/ + List listPartyMember(String partyBranchId); + + /** + * @return java.lang.String + * @param formDTO + * @author yinzuomei + * @description 7、添加党员 + * @Date 2020/6/17 22:26 + **/ + String addPartyMember(SaveOrUpdateParyMemberFormDTO formDTO); + + /** + * @return java.lang.String + * @param formDTO + * @author yinzuomei + * @description 8、编辑党员 + * @Date 2020/6/17 23:29 + **/ + String editPartyMember(SaveOrUpdateParyMemberFormDTO formDTO); +} diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/PartyBranchManageServiceImpl.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/PartyBranchManageServiceImpl.java new file mode 100644 index 0000000000..ae2ea9469c --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/PartyBranchManageServiceImpl.java @@ -0,0 +1,183 @@ +package com.epmet.service.impl; + +import com.alibaba.fastjson.JSON; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.CustomerPartyBranchDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.feign.GovOrgOpenFeignClient; +import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; +import com.epmet.resi.partymember.dto.partymember.form.PartyMemberBaseInfoAddFormDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartymemberBaseInfoResultDTO; +import com.epmet.resi.partymember.feign.ResiPartyMemberOpenFeignClient; +import com.epmet.service.PartyBranchManageService; +import org.apache.commons.lang3.StringUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * 基层治理-支部管理 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 13:23 + */ +@Service +public class PartyBranchManageServiceImpl implements PartyBranchManageService { + private Logger logger = LogManager.getLogger(PartyBranchManageServiceImpl.class); + @Autowired + private GovOrgOpenFeignClient govOrgOpenFeignClient; + @Autowired + private ResiPartyMemberOpenFeignClient resiPartyMemberOpenFeignClient; + + @Override + public PartyBranchAddResultDTO addPartyBranch(PartyBranchAddFormDTO formDTO) { + CustomerPartyBranchDTO customerPartyBranchDTO = ConvertUtils.sourceToTarget(formDTO, CustomerPartyBranchDTO.class); + customerPartyBranchDTO.setTotalPartyMember(0); + PartyBranchAddResultDTO partyBranchAddResultDTO = new PartyBranchAddResultDTO(); + Result result = govOrgOpenFeignClient.savePartyBranch(customerPartyBranchDTO); + if (result.success()) { + partyBranchAddResultDTO.setPartyBranchId(result.getData()); + } else { + logger.error("添加党支部错误,调用gov-org-server接口返回失败"); + } + return partyBranchAddResultDTO; + } + + @Override + public void editPartyBranch(PartyBranchEditFormDTO formDTO) { + CustomerPartyBranchDTO customerPartyBranchDTO = ConvertUtils.sourceToTarget(formDTO, CustomerPartyBranchDTO.class); + customerPartyBranchDTO.setId(formDTO.getPartyBranchId()); + Result result = govOrgOpenFeignClient.updatePartyBranch(customerPartyBranchDTO); + if (result.success()) { + logger.info("修改党支部信息成功"); + } + } + + @Override + public List listPartyBranch(PartyBranchListFormDTO formDTO) { + ListPartyBranchFormDTO listPartyBranchFormDTO = ConvertUtils.sourceToTarget(formDTO, ListPartyBranchFormDTO.class); + Result> result = govOrgOpenFeignClient.listPartyBranch(listPartyBranchFormDTO); + List resultList=result.getData(); + if (result.success()) { + List list = ConvertUtils.sourceToTarget(resultList, PartyBranchListResultDTO.class); + return list; + } else { + logger.error(String.format("党支部列表查询失败入参:"), JSON.toJSONString(formDTO)); + } + return new ArrayList<>(); + } + + @Override + public void deleteBranch(String partyBranchId) { + Result customerPartyBranchDTOResult = govOrgOpenFeignClient.getPartyBranchById(partyBranchId); + if (!customerPartyBranchDTOResult.success()||null==customerPartyBranchDTOResult.getData()) { + logger.error(String.format("查询党支部信息失败入参:partyBranchId=%s",partyBranchId)); + return; + }else{ + if (null != customerPartyBranchDTOResult.getData() && customerPartyBranchDTOResult.getData().getTotalPartyMember() > 0) { + throw new RenException(EpmetErrorCode.CANNOT_DELETE_PARTY_BRANCH.getCode()); + } + } + Result delteResult=govOrgOpenFeignClient.deletePartyBranchById(partyBranchId); + if(!delteResult.success()){ + logger.error(String.format("删除党支部失败入参:partyBranchId=%s",partyBranchId)); + } + } + + @Override + public PartyBranchInfoResultDTO queryPartyBranchInfo(String partyBranchId) { + PartyBranchInfoResultDTO partyBranchInfo = new PartyBranchInfoResultDTO(); + Result customerPartyBranchDTOResult = govOrgOpenFeignClient.getPartyBranchById(partyBranchId); + if (!customerPartyBranchDTOResult.success() || null == customerPartyBranchDTOResult.getData()) { + logger.error(String.format("党支部详情信息查询异常,partyBranchId=%s", partyBranchId)); + return partyBranchInfo; + } + partyBranchInfo.setPartyBranchId(partyBranchId); + partyBranchInfo.setPartyBranchName(customerPartyBranchDTOResult.getData().getPartyBranchName()); + partyBranchInfo.setProfile(customerPartyBranchDTOResult.getData().getProfile()); + partyBranchInfo.setGridId(customerPartyBranchDTOResult.getData().getGridId()); + Result gridInfoResult = govOrgOpenFeignClient.queryGridInfo(customerPartyBranchDTOResult.getData().getGridId()); + if (gridInfoResult.success() && null != gridInfoResult.getData() && StringUtils.isNotBlank(gridInfoResult.getData().getParentAgencyName())) { + partyBranchInfo.setGridName(String.format("%s-%s", gridInfoResult.getData().getParentAgencyName(), gridInfoResult.getData().getGridName())); + } else { + logger.error(String.format("查询网格基本信息失败,gridId=%s", customerPartyBranchDTOResult.getData().getGridId())); + } + return partyBranchInfo; + } + + @Override + public List listPartyMember(String partyBranchId) { + Result> result = resiPartyMemberOpenFeignClient.listPartyMemberBaseInfo(partyBranchId); + if (result.success()) { + List list = ConvertUtils.sourceToTarget(result.getData(), PartyMemberInfoResultDTO.class); + return list; + } + logger.error("党员列表查询失败"); + return new ArrayList<>(); + } + + @Override + public String addPartyMember(SaveOrUpdateParyMemberFormDTO formDTO) { + //1、查询党支部信息 + Result customerPartyBranchResult = govOrgOpenFeignClient.getPartyBranchById(formDTO.getPartyBranchId()); + if (!customerPartyBranchResult.success() || null == customerPartyBranchResult.getData()) { + throw new RenException("党支部信息获取失败"); + } + //2、构造党员入参 + CustomerPartyBranchDTO customerPartyBranch = customerPartyBranchResult.getData(); + PartyMemberBaseInfoAddFormDTO partyMemberBaseInfoAddFormDTO = this.getPartyMemberBaseInfoAddFormDTO(formDTO, customerPartyBranch); + Result result = resiPartyMemberOpenFeignClient.addPartyMemberBaseInfo(partyMemberBaseInfoAddFormDTO); + //3、党支部总人数+1 + if (result.success() && StringUtils.isNotBlank(result.getData())) { + //党支部总人数+1 + customerPartyBranch.setTotalPartyMember(customerPartyBranch.getTotalPartyMember() + 1); + Result updatePartyBranchResult = govOrgOpenFeignClient.updatePartyBranch(customerPartyBranch); + if (updatePartyBranchResult.success()) { + logger.info(String.format("党支部(%s)总人数+1", formDTO.getPartyBranchId())); + } + } else { + logger.error("添加党员异常"); + throw new RenException(result.getCode()); + } + return result.getData(); + } + + @Override + public String editPartyMember(SaveOrUpdateParyMemberFormDTO formDTO) { + PartymemberBaseInfoDTO partymemberBaseInfoDTO = new PartymemberBaseInfoDTO(); + partymemberBaseInfoDTO.setIdCard(formDTO.getIdCard().trim()); + partymemberBaseInfoDTO.setName(formDTO.getName().trim()); + partymemberBaseInfoDTO.setMobile(formDTO.getMobile().trim()); + partymemberBaseInfoDTO.setId(formDTO.getPartyMemberId()); + Result updateResult = resiPartyMemberOpenFeignClient.update(partymemberBaseInfoDTO); + if (updateResult.success() && StringUtils.isNotBlank(updateResult.getData())) { + logger.info("修改党员信息成功"); + return updateResult.getData(); + }else{ + logger.error("修改党员信息失败"); + throw new RenException(updateResult.getCode()); + } + } + + private PartyMemberBaseInfoAddFormDTO getPartyMemberBaseInfoAddFormDTO(SaveOrUpdateParyMemberFormDTO formDTO, + CustomerPartyBranchDTO customerPartyBranchDTO) { + PartyMemberBaseInfoAddFormDTO partyMemberBaseInfoAddFormDTO=new PartyMemberBaseInfoAddFormDTO(); + partyMemberBaseInfoAddFormDTO.setBranchId(formDTO.getPartyBranchId()); + partyMemberBaseInfoAddFormDTO.setIdCard(formDTO.getIdCard().trim()); + partyMemberBaseInfoAddFormDTO.setMobile(formDTO.getMobile().trim()); + partyMemberBaseInfoAddFormDTO.setName(formDTO.getName().trim()); + + partyMemberBaseInfoAddFormDTO.setBranch(customerPartyBranchDTO.getPartyBranchName()); + partyMemberBaseInfoAddFormDTO.setOrganization(customerPartyBranchDTO.getAgencyName()); + partyMemberBaseInfoAddFormDTO.setCustomerId(customerPartyBranchDTO.getCustomerId()); + return partyMemberBaseInfoAddFormDTO; + } +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerPartyBranchDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerPartyBranchDTO.java new file mode 100644 index 0000000000..960e01450e --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerPartyBranchDTO.java @@ -0,0 +1,106 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +public class CustomerPartyBranchDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 支部名称 + */ + private String partyBranchName; + + /** + * 概要 + */ + private String profile; + + /** + * 党支部所属网格id + */ + private String gridId; + + /** + * 客户id + */ + private String customerId; + + /** + * 党员总数 + */ + private Integer totalPartyMember; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + + /** + * 网格所属机关id + */ + private String agencyId; + + /** + * 网格所属机关名字 + */ + private String agencyName; +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/ListPartyBranchFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/ListPartyBranchFormDTO.java new file mode 100644 index 0000000000..ede50112e5 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/ListPartyBranchFormDTO.java @@ -0,0 +1,29 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 党支部列表查询 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 16:27 + */ +@Data +public class ListPartyBranchFormDTO implements Serializable { + private static final long serialVersionUID = -5693132528876149747L; + + /** + * 客户id + */ + @NotBlank(message = "客户id不能为空") + private String customerId; + + /** + * 网格id + */ + @NotBlank(message = "网格id不能为空") + private String gridId; +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridInfoResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridInfoResultDTO.java index fff7b43caf..83bf82bfbf 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridInfoResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridInfoResultDTO.java @@ -77,5 +77,15 @@ public class GridInfoResultDTO implements Serializable { * 省级组织名称 */ private String proviceName; + + /** + * 网格所属机关id + */ + private String parentAgencyId; + + /** + * 网格所属机关名称 + */ + private String parentAgencyName; } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ListPartyBranchResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ListPartyBranchResultDTO.java new file mode 100644 index 0000000000..ae84fd8030 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ListPartyBranchResultDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 党支部列表查询返参 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 16:30 + */ +@Data +public class ListPartyBranchResultDTO implements Serializable { + private static final long serialVersionUID = 2306892144298853581L; + /** + * 支部id + */ + private String partyBranchId; + /** + * 支部名称 + */ + private String partyBranchName; +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java index ff0a23f716..4d3c71959b 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java @@ -1,16 +1,20 @@ package com.epmet.feign; +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.CustomerPartyBranchDTO; +import com.epmet.dto.form.ListPartyBranchFormDTO; import com.epmet.dto.result.ArticleGridResultDTO; +import com.epmet.dto.result.GridInfoResultDTO; +import com.epmet.dto.result.ListPartyBranchResultDTO; import com.epmet.dto.result.PublishAgencyListResultDTO; +import com.epmet.feign.fallback.GovOrgOpenFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.*; -import com.epmet.commons.tools.constant.ServiceConstant; -import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.CustomerAgencyDTO; -import com.epmet.feign.fallback.GovOrgOpenFeignClientFallback; +import java.util.List; /** * 本服务对外开放的API,其他服务通过引用此client调用该服务 @@ -18,14 +22,13 @@ import com.epmet.feign.fallback.GovOrgOpenFeignClientFallback; * @author yinzuomei@elink-cn.com * @date 2020/6/4 13:37 */ -// @FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgOpenFeignClientFallback.class, url = -// "localhost:8092") +// @FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgOpenFeignClientFallback.class, url = "localhost:8092") @FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgOpenFeignClientFallback.class) public interface GovOrgOpenFeignClient { /** * 根据Id查询agency - * + * * @param agencyId * @return */ @@ -34,7 +37,7 @@ public interface GovOrgOpenFeignClient { /** * 根据staffId查询所属的组织机构 - * + * * @param staffId * @return */ @@ -58,4 +61,64 @@ public interface GovOrgOpenFeignClient { **/ @PostMapping(value = "gov/org/customeragency/getpublishagencylist/{staffId}", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) Result getPublishAgencyList(@PathVariable("staffId") String staffId); + + /** + * @param customerPartyBranchDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 添加党支部 + * @Date 2020/6/17 13:36 + **/ + @PostMapping(value = "gov/org/customerpartybranch/save", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result savePartyBranch(@RequestBody CustomerPartyBranchDTO customerPartyBranchDTO); + + /** + * @param customerPartyBranchDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 修改党支部信息 + * @Date 2020/6/17 15:31 + **/ + @PutMapping(value = "gov/org/customerpartybranch/update", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result updatePartyBranch(@RequestBody CustomerPartyBranchDTO customerPartyBranchDTO); + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 根据客户id、网格id查询党支部列表 + * @Date 2020/6/17 16:28 + **/ + @PostMapping(value = "gov/org/customerpartybranch/listpartybranch", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result> listPartyBranch(@RequestBody ListPartyBranchFormDTO formDTO); + + /** + * @param partyBranchId + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 根据党支部id,查询党支部信息 + * @Date 2020/6/17 18:01 + **/ + @GetMapping(value = "gov/org/customerpartybranch/get/{id}") + Result getPartyBranchById(@PathVariable("id") String partyBranchId); + + /** + * @return com.epmet.commons.tools.utils.Result + * @param partyBranchId + * @author yinzuomei + * @description 根据党支部id,删除党支部(存在党员的不允许删除) + * @Date 2020/6/17 18:08 + **/ + @GetMapping(value = "gov/org/customerpartybranch/delete/{id}") + Result deletePartyBranchById(@PathVariable("id") String partyBranchId); + + /** + * @param gridId + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 根据网格id查询所属组织信息 + * @Date 2020/4/26 23:16 + **/ + @GetMapping("/gov/org/customergrid/getGridInfo/{gridId}") + Result queryGridInfo(@PathVariable("gridId") String gridId); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java index 8f6c108a7d..8de4fa49f9 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java @@ -4,11 +4,17 @@ import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.CustomerPartyBranchDTO; +import com.epmet.dto.form.ListPartyBranchFormDTO; import com.epmet.dto.result.ArticleGridResultDTO; +import com.epmet.dto.result.GridInfoResultDTO; +import com.epmet.dto.result.ListPartyBranchResultDTO; import com.epmet.dto.result.PublishAgencyListResultDTO; import com.epmet.feign.GovOrgOpenFeignClient; import org.springframework.stereotype.Component; +import java.util.List; + /** * 本服务对外开放的API,其他服务通过引用此client调用该服务 * @@ -37,4 +43,33 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getPublishAgencyList", staffId); } + @Override + public Result savePartyBranch(CustomerPartyBranchDTO customerPartyBranchDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "save", customerPartyBranchDTO); + } + + @Override + public Result updatePartyBranch(CustomerPartyBranchDTO customerPartyBranchDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "update", customerPartyBranchDTO); + } + + @Override + public Result> listPartyBranch(ListPartyBranchFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "listpartybranch", formDTO); + } + + @Override + public Result getPartyBranchById(String partyBranchId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "get", partyBranchId); + } + + @Override + public Result deletePartyBranchById(String partyBranchId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "deleteById", partyBranchId); + } + + @Override + public Result queryGridInfo(String gridId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridInfo",gridId); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerPartyBranchController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerPartyBranchController.java new file mode 100644 index 0000000000..ffa9af68ab --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerPartyBranchController.java @@ -0,0 +1,119 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.controller; + +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.dto.CustomerPartyBranchDTO; +import com.epmet.dto.form.ListPartyBranchFormDTO; +import com.epmet.dto.result.ListPartyBranchResultDTO; +import com.epmet.excel.CustomerPartyBranchExcel; +import com.epmet.service.CustomerPartyBranchService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@RestController +@RequestMapping("customerpartybranch") +public class CustomerPartyBranchController { + + @Autowired + private CustomerPartyBranchService customerPartyBranchService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = customerPartyBranchService.page(params); + return new Result>().ok(page); + } + + @GetMapping("get/{id}") + public Result get(@PathVariable("id") String id){ + CustomerPartyBranchDTO data = customerPartyBranchService.get(id); + return new Result().ok(data); + } + + @PostMapping("save") + public Result save(@RequestBody CustomerPartyBranchDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + return new Result().ok(customerPartyBranchService.save(dto)); + } + + @PutMapping("update") + public Result update(@RequestBody CustomerPartyBranchDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + customerPartyBranchService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + customerPartyBranchService.delete(ids); + return new Result(); + } + + @GetMapping("delete/{id}") + public Result deleteById(@PathVariable("id") String id){ + CustomerPartyBranchDTO data = customerPartyBranchService.get(id); + if(null!=data&&data.getTotalPartyMember()>0){ + throw new RenException(EpmetErrorCode.CANNOT_DELETE_PARTY_BRANCH.getCode()); + } + customerPartyBranchService.deleteById(id); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = customerPartyBranchService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, CustomerPartyBranchExcel.class); + } + + /** + * @return com.epmet.commons.tools.utils.Result> + * @param formDTO + * @author yinzuomei + * @description 党支部列表查询,供gov-grid服务调用 + * @Date 2020/6/17 16:33 + **/ + @PostMapping("listpartybranch") + public Result> listpartybranch(@RequestBody ListPartyBranchFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO); + return new Result>().ok(customerPartyBranchService.listpartybranch(formDTO)); + } +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerPartyBranchDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerPartyBranchDao.java new file mode 100644 index 0000000000..100ddbc86e --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerPartyBranchDao.java @@ -0,0 +1,38 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.form.ListPartyBranchFormDTO; +import com.epmet.dto.result.ListPartyBranchResultDTO; +import com.epmet.entity.CustomerPartyBranchEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Mapper +public interface CustomerPartyBranchDao extends BaseDao { + //根据客户id、网格id查询党支部列表 + List selectListPartyBranchResultDTO(ListPartyBranchFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerPartyBranchEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerPartyBranchEntity.java new file mode 100644 index 0000000000..98610e75f7 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerPartyBranchEntity.java @@ -0,0 +1,66 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("customer_party_branch") +public class CustomerPartyBranchEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 支部名称 + */ + private String partyBranchName; + + /** + * 概要 + */ + private String profile; + + /** + * 党支部所属网格id + */ + private String gridId; + + /** + * 客户id + */ + private String customerId; + + /** + * 党员总数 + */ + private Integer totalPartyMember; + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/CustomerPartyBranchExcel.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/CustomerPartyBranchExcel.java new file mode 100644 index 0000000000..7766ed1260 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/CustomerPartyBranchExcel.java @@ -0,0 +1,71 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +public class CustomerPartyBranchExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "支部名称") + private String partyBranchName; + + @Excel(name = "概要") + private String profile; + + @Excel(name = "党支部所属网格id") + private String gridId; + + @Excel(name = "客户id") + private String customerId; + + @Excel(name = "党员总数") + private Integer totalPartymember; + + @Excel(name = "删除标识") + private String delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/CustomerPartyBranchRedis.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/CustomerPartyBranchRedis.java new file mode 100644 index 0000000000..e5d8d70e5e --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/CustomerPartyBranchRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Component +public class CustomerPartyBranchRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerPartyBranchService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerPartyBranchService.java new file mode 100644 index 0000000000..d25e849751 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerPartyBranchService.java @@ -0,0 +1,106 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.CustomerPartyBranchDTO; +import com.epmet.dto.form.ListPartyBranchFormDTO; +import com.epmet.dto.result.ListPartyBranchResultDTO; +import com.epmet.entity.CustomerPartyBranchEntity; + +import java.util.List; +import java.util.Map; + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +public interface CustomerPartyBranchService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-06-17 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-06-17 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return CustomerPartyBranchDTO + * @author generator + * @date 2020-06-17 + */ + CustomerPartyBranchDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-06-17 + */ + String save(CustomerPartyBranchDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-06-17 + */ + void update(CustomerPartyBranchDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-06-17 + */ + void delete(String[] ids); + + /** + * @return java.util.List + * @param formDTO + * @author yinzuomei + * @description 党支部列表查询,供gov-grid服务调用 + * @Date 2020/6/17 16:33 + **/ + List listpartybranch(ListPartyBranchFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java index bcc4ecf11c..00436e9b59 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java @@ -27,7 +27,6 @@ import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.CustomerGridConstant; import com.epmet.dao.CustomerAgencyDao; @@ -452,6 +451,8 @@ public class CustomerGridServiceImpl extends BaseServiceImpl + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.dao.CustomerPartyBranchDao; +import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.CustomerPartyBranchDTO; +import com.epmet.dto.form.ListPartyBranchFormDTO; +import com.epmet.dto.result.ListPartyBranchResultDTO; +import com.epmet.entity.CustomerPartyBranchEntity; +import com.epmet.redis.CustomerPartyBranchRedis; +import com.epmet.service.CustomerAgencyService; +import com.epmet.service.CustomerGridService; +import com.epmet.service.CustomerPartyBranchService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 党支部信息 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Service +public class CustomerPartyBranchServiceImpl extends BaseServiceImpl implements CustomerPartyBranchService { + + @Autowired + private CustomerPartyBranchRedis customerPartyBranchRedis; + @Autowired + private CustomerGridService customerGridService; + @Autowired + private CustomerAgencyService customerAgencyService; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, CustomerPartyBranchDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, CustomerPartyBranchDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public CustomerPartyBranchDTO get(String id) { + CustomerPartyBranchEntity entity = baseDao.selectById(id); + CustomerPartyBranchDTO customerPartyBranchDTO=ConvertUtils.sourceToTarget(entity, CustomerPartyBranchDTO.class); + if(null!=customerPartyBranchDTO){ + CustomerGridDTO customerGridDTO=customerGridService.get(entity.getGridId()); + if(null!=customerGridDTO){ + CustomerAgencyDTO customerAgencyDTO=customerAgencyService.get(customerGridDTO.getPid()); + if(null!=customerAgencyDTO){ + customerPartyBranchDTO.setAgencyId(customerAgencyDTO.getId()); + customerPartyBranchDTO.setAgencyName(customerAgencyDTO.getOrganizationName()); + } + } + } + return customerPartyBranchDTO; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public String save(CustomerPartyBranchDTO dto) { + CustomerPartyBranchEntity entity = ConvertUtils.sourceToTarget(dto, CustomerPartyBranchEntity.class); + insert(entity); + return entity.getId(); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(CustomerPartyBranchDTO dto) { + CustomerPartyBranchEntity entity = ConvertUtils.sourceToTarget(dto, CustomerPartyBranchEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + public List listpartybranch(ListPartyBranchFormDTO formDTO) { + return baseDao.selectListPartyBranchResultDTO(formDTO); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerPartyBranchDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerPartyBranchDao.xml new file mode 100644 index 0000000000..a7d2b9338f --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerPartyBranchDao.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartyBranchMembersDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartyBranchMembersDTO.java new file mode 100644 index 0000000000..946e0ea1fa --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartyBranchMembersDTO.java @@ -0,0 +1,81 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.resi.partymember.dto.partymember; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +public class PartyBranchMembersDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 党支部id,customer_party_branch.id + */ + private String branchId; + + /** + * 党员库表主键,partymember_base_info.id + */ + private String partymemberBaseInfoId; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberAuthRecordDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberAuthRecordDTO.java new file mode 100644 index 0000000000..9c3f0334e6 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberAuthRecordDTO.java @@ -0,0 +1,101 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.resi.partymember.dto.partymember; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +public class PartymemberAuthRecordDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * partymember_base_info.id + */ + private String partymemberBaseInfoId; + + /** + * 认证居民id + */ + private String userId; + + /** + * 认证时间(和partymember_info表时间一致) + */ + private Date authTime; + + /** + * 认证网格id + */ + private String gridId; + + /** + * 认证客户id + */ + private String customerId; + + /** + * 认证的描述:账户于2020年10月30号在海泊桥社区-第一网格激活 + */ + private String authDesc; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/form/PartyMemberBaseInfoAddFormDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/form/PartyMemberBaseInfoAddFormDTO.java new file mode 100644 index 0000000000..0ed42ab876 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/form/PartyMemberBaseInfoAddFormDTO.java @@ -0,0 +1,64 @@ +package com.epmet.resi.partymember.dto.partymember.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 添加党员入参DTO + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/17 22:42 + */ +@Data +public class PartyMemberBaseInfoAddFormDTO implements Serializable { + public interface AddUserInternalGroup { + } + + public interface AddUserShowGroup extends CustomerClientShowGroup { + } + + /** + * 客户Id (customer.id) + */ + @NotBlank(message = "客户id不能为空", groups = {AddUserInternalGroup.class}) + private String customerId; + + /** + * 党支部id + */ + @NotBlank(message = "党支部id不能为空", groups = {AddUserInternalGroup.class}) + private String branchId; + + /** + * 姓名 + */ + @NotBlank(message = "姓名不能为空", groups = {AddUserShowGroup.class}) + private String name; + + /** + * 身份证号 + */ + @NotBlank(message = "身份证号不能为空", groups = {AddUserShowGroup.class}) + private String idCard; + + /** + * 手机号 + */ + @NotBlank(message = "手机号不能为空", groups = {AddUserShowGroup.class}) + private String mobile; + + /** + * 所在党组织(网格直属机关的名字) + */ + @NotBlank(message = "党组织不能为空", groups = {AddUserShowGroup.class}) + private String organization; + + /** + * 所在党支部 + */ + @NotBlank(message = "党支部名称不能为空", groups = {AddUserShowGroup.class}) + private String branch; +} diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/PartymemberBaseInfoResultDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/PartymemberBaseInfoResultDTO.java new file mode 100644 index 0000000000..0dd6a85a7d --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/PartymemberBaseInfoResultDTO.java @@ -0,0 +1,31 @@ +package com.epmet.resi.partymember.dto.partymember.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 党员列表 + * + * @author yinzuomei@elink-cn.com + * @date 2020/6/18 10:15 + */ +@Data +public class PartymemberBaseInfoResultDTO implements Serializable { + private static final long serialVersionUID = 8406798885012269801L; + + /** + * 党员id + */ + private String partyMemberId; + + /** + * 党员姓名 + */ + private String name; + + /** + * 性别 + */ + private String gender; +} diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/ResiPartyMemberOpenFeignClient.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/ResiPartyMemberOpenFeignClient.java index ef7105186d..cebb86940a 100644 --- a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/ResiPartyMemberOpenFeignClient.java +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/ResiPartyMemberOpenFeignClient.java @@ -1,9 +1,16 @@ package com.epmet.resi.partymember.feign; -import org.springframework.cloud.openfeign.FeignClient; - import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; +import com.epmet.resi.partymember.dto.partymember.form.PartyMemberBaseInfoAddFormDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartymemberBaseInfoResultDTO; import com.epmet.resi.partymember.feign.fallback.ResiPartyMemberOpenFeignClientFallback; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 本服务对外开放的API,其他服务通过引用此client调用该服务 @@ -13,4 +20,34 @@ import com.epmet.resi.partymember.feign.fallback.ResiPartyMemberOpenFeignClientF */ @FeignClient(name = ServiceConstant.RESI_PARTYMEMBER_SERVER, fallback = ResiPartyMemberOpenFeignClientFallback.class) public interface ResiPartyMemberOpenFeignClient { + + /** + * @param dto + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 更新党员库信息 + * @Date 2020/6/17 23:36 + **/ + @PutMapping(value = "/resi/partymember/partymemberbaseinfo", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result update(@RequestBody PartymemberBaseInfoDTO dto); + + /** + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @description 添加党员 + * @Date 2020/6/17 23:00 + **/ + @PostMapping(value = "/resi/partymember/partymemberbaseinfo/addPartyMemberBaseInfo", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result addPartyMemberBaseInfo(@RequestBody PartyMemberBaseInfoAddFormDTO formDTO); + + /** + * @return com.epmet.commons.tools.utils.Result> + * @param partyBranchId + * @author yinzuomei + * @description 根据党支部id,查询党员列表 + * @Date 2020/6/18 10:12 + **/ + @GetMapping(value = "resi/partymember/partymemberbaseinfo/listPartyMemberBaseInfo/{partyBranchId}") + Result> listPartyMemberBaseInfo(@PathVariable("partyBranchId") String partyBranchId); } diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/fallback/ResiPartyMemberOpenFeignClientFallback.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/fallback/ResiPartyMemberOpenFeignClientFallback.java index cdcbbcbc92..af3e36dd79 100644 --- a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/fallback/ResiPartyMemberOpenFeignClientFallback.java +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/feign/fallback/ResiPartyMemberOpenFeignClientFallback.java @@ -1,8 +1,16 @@ package com.epmet.resi.partymember.feign.fallback; +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.ModuleUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; +import com.epmet.resi.partymember.dto.partymember.form.PartyMemberBaseInfoAddFormDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartymemberBaseInfoResultDTO; import com.epmet.resi.partymember.feign.ResiPartyMemberOpenFeignClient; import org.springframework.stereotype.Component; +import java.util.List; + /** * 本服务对外开放的API,其他服务通过引用此client调用该服务 * @@ -11,4 +19,19 @@ import org.springframework.stereotype.Component; */ @Component public class ResiPartyMemberOpenFeignClientFallback implements ResiPartyMemberOpenFeignClient { + + @Override + public Result update(PartymemberBaseInfoDTO partymemberBaseInfoDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "update", partymemberBaseInfoDTO); + } + + @Override + public Result addPartyMemberBaseInfo(PartyMemberBaseInfoAddFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "addPartyMemberBaseInfo", formDTO); + } + + @Override + public Result> listPartyMemberBaseInfo(String partyBranchId) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "listPartyMemberBaseInfo", partyBranchId); + } } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyBranchMembersController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyBranchMembersController.java new file mode 100644 index 0000000000..9fc1a5c0ff --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyBranchMembersController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.controller; + +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.modules.partymember.excel.PartyBranchMembersExcel; +import com.epmet.modules.partymember.service.PartyBranchMembersService; +import com.epmet.resi.partymember.dto.partymember.PartyBranchMembersDTO; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@RestController +@RequestMapping("partybranchmembers") +public class PartyBranchMembersController { + + @Autowired + private PartyBranchMembersService partyBranchMembersService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = partyBranchMembersService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + PartyBranchMembersDTO data = partyBranchMembersService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody PartyBranchMembersDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + partyBranchMembersService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody PartyBranchMembersDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + partyBranchMembersService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + partyBranchMembersService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = partyBranchMembersService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, PartyBranchMembersExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberAuthRecordController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberAuthRecordController.java new file mode 100644 index 0000000000..295a615e48 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberAuthRecordController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.controller; + +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.modules.partymember.excel.PartymemberAuthRecordExcel; +import com.epmet.modules.partymember.service.PartymemberAuthRecordService; +import com.epmet.resi.partymember.dto.partymember.PartymemberAuthRecordDTO; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@RestController +@RequestMapping("partymemberauthrecord") +public class PartymemberAuthRecordController { + + @Autowired + private PartymemberAuthRecordService partymemberAuthRecordService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = partymemberAuthRecordService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + PartymemberAuthRecordDTO data = partymemberAuthRecordService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody PartymemberAuthRecordDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + partymemberAuthRecordService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody PartymemberAuthRecordDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + partymemberAuthRecordService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + partymemberAuthRecordService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = partymemberAuthRecordService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, PartymemberAuthRecordExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberBaseInfoController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberBaseInfoController.java index 438594f0b3..1c8c521963 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberBaseInfoController.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberBaseInfoController.java @@ -28,15 +28,16 @@ import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.modules.partymember.excel.PartymemberBaseInfoExcel; import com.epmet.modules.partymember.service.PartymemberBaseInfoService; import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; +import com.epmet.resi.partymember.dto.partymember.form.PartyMemberBaseInfoAddFormDTO; import com.epmet.resi.partymember.dto.partymember.form.ReviewedParyMemberFormDTO; import com.epmet.resi.partymember.dto.partymember.form.UnderReviewParyMemberFormDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartymemberBaseInfoResultDTO; import com.epmet.resi.partymember.dto.partymember.result.ReviewedParyMemberResultDTO; import com.epmet.resi.partymember.dto.partymember.result.UnderReviewParyMemberResultDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; -import javax.validation.Valid; import java.util.List; import java.util.Map; @@ -75,11 +76,11 @@ public class PartymemberBaseInfoController { } @PutMapping - public Result update(@RequestBody PartymemberBaseInfoDTO dto){ + public Result update(@RequestBody PartymemberBaseInfoDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); partymemberBaseInfoService.update(dto); - return new Result(); + return new Result().ok(dto.getId()); } @DeleteMapping @@ -121,4 +122,31 @@ public class PartymemberBaseInfoController { ValidatorUtils.validateEntity(formDTO); return partymemberBaseInfoService.audited(formDTO); } + + /** + * @return com.epmet.commons.tools.utils.Result + * @param formDTO + * @author yinzuomei + * @description 添加党员 + * @Date 2020/6/17 22:47 + **/ + @PostMapping("addPartyMemberBaseInfo") + public Result addPartyMemberBaseInfo(@RequestBody PartyMemberBaseInfoAddFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO); + String partyMemberId=partymemberBaseInfoService.addPartyMemberBaseInfo(formDTO); + return new Result().ok(partyMemberId); + } + + /** + * @param partyBranchId + * @return com.epmet.commons.tools.utils.Result> + * @author yinzuomei + * @description 根据党支部id, 查询党员列表 + * @Date 2020/6/18 10:18 + **/ + @GetMapping("listPartyMemberBaseInfo/{partyBranchId}") + public Result> listPartyMemberBaseInfo(@PathVariable("partyBranchId") String partyBranchId) { + return new Result>().ok(partymemberBaseInfoService.listPartyMemberBaseInfo(partyBranchId)); + } + } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartyBranchMembersDao.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartyBranchMembersDao.java new file mode 100644 index 0000000000..f9a567fde2 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartyBranchMembersDao.java @@ -0,0 +1,33 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.modules.partymember.entity.PartyBranchMembersEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Mapper +public interface PartyBranchMembersDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberAuthRecordDao.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberAuthRecordDao.java new file mode 100644 index 0000000000..b49ca7552f --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberAuthRecordDao.java @@ -0,0 +1,41 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.modules.partymember.entity.PartymemberAuthRecordEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Mapper +public interface PartymemberAuthRecordDao extends BaseDao { + + /** + * @return com.epmet.modules.partymember.entity.PartymemberAuthRecordEntity + * @param partymemberBaseInfoId + * @author yinzuomei + * @description 根据党员库id,查询党员认证信息 + * @Date 2020/6/18 0:04 + **/ + PartymemberAuthRecordEntity selectByPartyMemberBaseInfoId(String partymemberBaseInfoId); +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java index 6c614045fb..161745918e 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java @@ -25,6 +25,7 @@ import com.epmet.resi.partymember.dto.partymember.form.UnderReviewParyMemberForm import com.epmet.resi.partymember.dto.partymember.result.ReviewedParyMemberResultDTO; import com.epmet.resi.partymember.dto.partymember.result.UnderReviewParyMemberResultDTO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -78,4 +79,22 @@ public interface PartymemberBaseInfoDao extends BaseDao selectListReviewedParyMember(ReviewedParyMemberFormDTO formDTO); + + /** + * @return com.epmet.modules.partymember.entity.PartymemberBaseInfoEntity + * @param idCard + * @author yinzuomei + * @description 根据身份证号查询党员库 + * @Date 2020/6/17 23:49 + **/ + List selectByIdCard(@Param("idCard") String idCard,@Param("id")String id); + + /** + * @return java.util.List + * @param partyBranchId + * @author yinzuomei + * @description 根据党支部id,查询党员列表 + * @Date 2020/6/18 11:05 + **/ + List selectListPartyMemberBaseInfo(String partyBranchId); } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartyBranchMembersEntity.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartyBranchMembersEntity.java new file mode 100644 index 0000000000..4ab74c40bc --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartyBranchMembersEntity.java @@ -0,0 +1,51 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("party_branch_members") +public class PartyBranchMembersEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 党支部id,customer_party_branch.id + */ + private String branchId; + + /** + * 党员库表主键,partymember_base_info.id + */ + private String partymemberBaseInfoId; + +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberAuthRecordEntity.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberAuthRecordEntity.java new file mode 100644 index 0000000000..8639d00ea1 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberAuthRecordEntity.java @@ -0,0 +1,71 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("partymember_auth_record") +public class PartymemberAuthRecordEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * partymember_base_info.id + */ + private String partymemberBaseInfoId; + + /** + * 认证居民id + */ + private String userId; + + /** + * 认证时间(和partymember_info表时间一致) + */ + private Date authTime; + + /** + * 认证网格id + */ + private String gridId; + + /** + * 认证客户id + */ + private String customerId; + + /** + * 认证的描述:账户于2020年10月30号在海泊桥社区-第一网格激活 + */ + private String authDesc; + +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartyBranchMembersExcel.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartyBranchMembersExcel.java new file mode 100644 index 0000000000..5a5eec75c8 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartyBranchMembersExcel.java @@ -0,0 +1,62 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +public class PartyBranchMembersExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "党支部id,customer_party_branch.id") + private String branchId; + + @Excel(name = "党员库表主键,partymember_base_info.id") + private String partymemberBaseInfoId; + + @Excel(name = "删除标识") + private String delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberAuthRecordExcel.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberAuthRecordExcel.java new file mode 100644 index 0000000000..d75dc1d6e7 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberAuthRecordExcel.java @@ -0,0 +1,74 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Data +public class PartymemberAuthRecordExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "partymember_base_info.id") + private String partymemberBaseInfoId; + + @Excel(name = "认证居民id") + private String userId; + + @Excel(name = "认证时间(和partymember_info表时间一致)") + private Date authTime; + + @Excel(name = "认证网格id") + private String gridId; + + @Excel(name = "认证客户id") + private String customerId; + + @Excel(name = "认证的描述:账户于2020年10月30号在海泊桥社区-第一网格激活") + private String authDesc; + + @Excel(name = "删除标识") + private String delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/redis/PartyBranchMembersRedis.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/redis/PartyBranchMembersRedis.java new file mode 100644 index 0000000000..b437b564a2 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/redis/PartyBranchMembersRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Component +public class PartyBranchMembersRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/redis/PartymemberAuthRecordRedis.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/redis/PartymemberAuthRecordRedis.java new file mode 100644 index 0000000000..53193bdd59 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/redis/PartymemberAuthRecordRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Component +public class PartymemberAuthRecordRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartyBranchMembersService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartyBranchMembersService.java new file mode 100644 index 0000000000..348102f417 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartyBranchMembersService.java @@ -0,0 +1,95 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.modules.partymember.entity.PartyBranchMembersEntity; +import com.epmet.resi.partymember.dto.partymember.PartyBranchMembersDTO; + +import java.util.List; +import java.util.Map; + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +public interface PartyBranchMembersService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-06-17 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-06-17 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return PartyBranchMembersDTO + * @author generator + * @date 2020-06-17 + */ + PartyBranchMembersDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-06-17 + */ + void save(PartyBranchMembersDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-06-17 + */ + void update(PartyBranchMembersDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-06-17 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberAuthRecordService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberAuthRecordService.java new file mode 100644 index 0000000000..e0a3245038 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberAuthRecordService.java @@ -0,0 +1,95 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.modules.partymember.entity.PartymemberAuthRecordEntity; +import com.epmet.resi.partymember.dto.partymember.PartymemberAuthRecordDTO; + +import java.util.List; +import java.util.Map; + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +public interface PartymemberAuthRecordService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-06-17 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-06-17 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return PartymemberAuthRecordDTO + * @author generator + * @date 2020-06-17 + */ + PartymemberAuthRecordDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-06-17 + */ + void save(PartymemberAuthRecordDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-06-17 + */ + void update(PartymemberAuthRecordDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-06-17 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java index e317427c92..056833ac1c 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java @@ -24,8 +24,10 @@ import com.epmet.modules.partymember.entity.PartymemberBaseInfoEntity; import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberConfirmAutoDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; +import com.epmet.resi.partymember.dto.partymember.form.PartyMemberBaseInfoAddFormDTO; import com.epmet.resi.partymember.dto.partymember.form.ReviewedParyMemberFormDTO; import com.epmet.resi.partymember.dto.partymember.form.UnderReviewParyMemberFormDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartymemberBaseInfoResultDTO; import com.epmet.resi.partymember.dto.partymember.result.ReviewedParyMemberResultDTO; import com.epmet.resi.partymember.dto.partymember.result.UnderReviewParyMemberResultDTO; @@ -125,4 +127,22 @@ public interface PartymemberBaseInfoService extends BaseService> audited(ReviewedParyMemberFormDTO formDTO); + + /** + * @return java.lang.String + * @param formDTO + * @author yinzuomei + * @description 添加党员 + * @Date 2020/6/17 22:50 + **/ + String addPartyMemberBaseInfo(PartyMemberBaseInfoAddFormDTO formDTO); + + /** + * @return java.util.List + * @param partyBranchId + * @author yinzuomei + * @description 根据党支部id,查询党员列表 + * @Date 2020/6/18 10:17 + **/ + List listPartyMemberBaseInfo(String partyBranchId); } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyBranchMembersServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyBranchMembersServiceImpl.java new file mode 100644 index 0000000000..9297c47fbc --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyBranchMembersServiceImpl.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.modules.partymember.dao.PartyBranchMembersDao; +import com.epmet.modules.partymember.entity.PartyBranchMembersEntity; +import com.epmet.modules.partymember.redis.PartyBranchMembersRedis; +import com.epmet.modules.partymember.service.PartyBranchMembersService; +import com.epmet.resi.partymember.dto.partymember.PartyBranchMembersDTO; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 党支部党员关系表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Service +public class PartyBranchMembersServiceImpl extends BaseServiceImpl implements PartyBranchMembersService { + + @Autowired + private PartyBranchMembersRedis partyBranchMembersRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, PartyBranchMembersDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, PartyBranchMembersDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public PartyBranchMembersDTO get(String id) { + PartyBranchMembersEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, PartyBranchMembersDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(PartyBranchMembersDTO dto) { + PartyBranchMembersEntity entity = ConvertUtils.sourceToTarget(dto, PartyBranchMembersEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(PartyBranchMembersDTO dto) { + PartyBranchMembersEntity entity = ConvertUtils.sourceToTarget(dto, PartyBranchMembersEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberAuthRecordServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberAuthRecordServiceImpl.java new file mode 100644 index 0000000000..8c303050d4 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberAuthRecordServiceImpl.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.modules.partymember.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.modules.partymember.dao.PartymemberAuthRecordDao; +import com.epmet.modules.partymember.entity.PartymemberAuthRecordEntity; +import com.epmet.modules.partymember.redis.PartymemberAuthRecordRedis; +import com.epmet.modules.partymember.service.PartymemberAuthRecordService; +import com.epmet.resi.partymember.dto.partymember.PartymemberAuthRecordDTO; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 党员认证记录表 + * + * @author yinzuomei yinzuomei@elink-cn.com + * @since v1.0.0 2020-06-17 + */ +@Service +public class PartymemberAuthRecordServiceImpl extends BaseServiceImpl implements PartymemberAuthRecordService { + + @Autowired + private PartymemberAuthRecordRedis partymemberAuthRecordRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, PartymemberAuthRecordDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, PartymemberAuthRecordDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public PartymemberAuthRecordDTO get(String id) { + PartymemberAuthRecordEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, PartymemberAuthRecordDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(PartymemberAuthRecordDTO dto) { + PartymemberAuthRecordEntity entity = ConvertUtils.sourceToTarget(dto, PartymemberAuthRecordEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(PartymemberAuthRecordDTO dto) { + PartymemberAuthRecordEntity entity = ConvertUtils.sourceToTarget(dto, PartymemberAuthRecordEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java index f91dc23fe7..e1e498c555 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java @@ -22,24 +22,33 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.IdCardNoValidatorUtils; +import com.epmet.commons.tools.validator.PhoneValidatorUtils; import com.epmet.constant.PartyMemberConstant; import com.epmet.dto.form.UserResiInfoListFormDTO; import com.epmet.dto.result.GridInfoResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.feign.GovOrgFeignClient; +import com.epmet.modules.partymember.dao.PartymemberAuthRecordDao; import com.epmet.modules.partymember.dao.PartymemberBaseInfoDao; import com.epmet.modules.partymember.entity.PartymemberBaseInfoEntity; import com.epmet.modules.partymember.redis.PartymemberBaseInfoRedis; +import com.epmet.modules.partymember.service.PartyBranchMembersService; import com.epmet.modules.partymember.service.PartymemberBaseInfoService; +import com.epmet.resi.partymember.dto.partymember.PartyBranchMembersDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberConfirmAutoDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; +import com.epmet.resi.partymember.dto.partymember.form.PartyMemberBaseInfoAddFormDTO; import com.epmet.resi.partymember.dto.partymember.form.ReviewedParyMemberFormDTO; import com.epmet.resi.partymember.dto.partymember.form.UnderReviewParyMemberFormDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartymemberBaseInfoResultDTO; import com.epmet.resi.partymember.dto.partymember.result.ReviewedParyMemberResultDTO; import com.epmet.resi.partymember.dto.partymember.result.UnderReviewParyMemberResultDTO; import info.debatty.java.stringsimilarity.Levenshtein; @@ -68,6 +77,10 @@ public class PartymemberBaseInfoServiceImpl extends BaseServiceImpl partymemberBaseInfoEntityList = baseDao.selectByIdCard(idCardNo, partymemberBaseInfoId); + if (null != partymemberBaseInfoEntityList&&partymemberBaseInfoEntityList.size()>0) { + throw new RenException(EpmetErrorCode.IDCARDNO_ALREADY_EXITS.getCode()); + } + } + @Override @Transactional(rollbackFor = Exception.class) public void delete(String[] ids) { @@ -354,6 +392,36 @@ public class PartymemberBaseInfoServiceImpl extends BaseServiceImpl>().ok(list); } + @Override + public String addPartyMemberBaseInfo(PartyMemberBaseInfoAddFormDTO formDTO) { + //校验数据 + this.checkPartymemberBaseInfoDTO(formDTO.getIdCard(),formDTO.getMobile(),null); + //插入党员库记录 + PartymemberBaseInfoEntity entity = ConvertUtils.sourceToTarget(formDTO, PartymemberBaseInfoEntity.class); + insert(entity); + //插入党支部-党员关系记录 + PartyBranchMembersDTO partyBranchMembersDTO=new PartyBranchMembersDTO(); + partyBranchMembersDTO.setBranchId(formDTO.getBranchId()); + partyBranchMembersDTO.setPartymemberBaseInfoId(entity.getId()); + partyBranchMembersService.save(partyBranchMembersDTO); + return entity.getId(); + } + + @Override + public List listPartyMemberBaseInfo(String partyBranchId) { + List resultDTOList=new ArrayList<>(); + if(StringUtils.isNotBlank(partyBranchId)){ + List entityList=baseDao.selectListPartyMemberBaseInfo(partyBranchId); + for(PartymemberBaseInfoEntity entity:entityList){ + PartymemberBaseInfoResultDTO partymemberBaseInfoResultDTO=new PartymemberBaseInfoResultDTO(); + partymemberBaseInfoResultDTO.setName(entity.getName()); + partymemberBaseInfoResultDTO.setPartyMemberId(entity.getId()); + partymemberBaseInfoResultDTO.setGender(IdCardNoValidatorUtils.getGender(entity.getIdCard())); + resultDTOList.add(partymemberBaseInfoResultDTO); + } + } + return resultDTOList; + } /** * 生成返回结果 diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartyBranchMembersDao.xml b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartyBranchMembersDao.xml new file mode 100644 index 0000000000..e815a57e2c --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartyBranchMembersDao.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberAuthRecordDao.xml b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberAuthRecordDao.xml new file mode 100644 index 0000000000..f61badbc80 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberAuthRecordDao.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml index 2cbad32ae0..6e6f16e42d 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml @@ -120,4 +120,29 @@ applyTime DESC LIMIT #{pageNo},#{pageSize} + + + + + + \ No newline at end of file