diff --git a/epmet-auth/src/main/java/com/epmet/controller/GovLoginController.java b/epmet-auth/src/main/java/com/epmet/controller/GovLoginController.java index fbc883c70f..477195041b 100644 --- a/epmet-auth/src/main/java/com/epmet/controller/GovLoginController.java +++ b/epmet-auth/src/main/java/com/epmet/controller/GovLoginController.java @@ -40,7 +40,8 @@ public class GovLoginController { @PostMapping(value = "/loginwxmp/loginbywxcode") public Result loginByWxCode(@RequestBody GovWxmpFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); - return govLoginService.loginByWxCode(formDTO); + UserTokenResultDTO userTokenResultDTO=govLoginService.loginByWxCode(formDTO); + return new Result().ok(userTokenResultDTO); } /** @@ -53,7 +54,8 @@ public class GovLoginController { @PostMapping(value = "/loginwxmp/sendsmscode") public Result sendSmsCode(@RequestBody SendSmsCodeFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); - return govLoginService.sendSmsCode(formDTO); + govLoginService.sendSmsCode(formDTO); + return new Result(); } /** @@ -66,7 +68,8 @@ public class GovLoginController { @PostMapping(value = "/loginwxmp/getmyorg") public Result> getmyorg(@RequestBody StaffOrgsFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); - return govLoginService.getMyOrg(formDTO); + List staffOrgs=govLoginService.getMyOrg(formDTO); + return new Result>().ok(staffOrgs); } /** @@ -79,7 +82,8 @@ public class GovLoginController { @PostMapping(value = "/loginwxmp/enterorg") public Result enterOrg(@RequestBody GovWxmpEnteOrgFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); - return govLoginService.enterOrg(formDTO); + UserTokenResultDTO userTokenResultDTO=govLoginService.enterOrg(formDTO); + return new Result().ok(userTokenResultDTO); } /** @@ -91,7 +95,8 @@ public class GovLoginController { **/ @PostMapping("/loginwxmp/loginout") public Result loginOut(@LoginUser TokenDto tokenDto) { - return govLoginService.loginOut(tokenDto); + govLoginService.loginOut(tokenDto); + return new Result(); } } diff --git a/epmet-auth/src/main/java/com/epmet/service/GovLoginService.java b/epmet-auth/src/main/java/com/epmet/service/GovLoginService.java index f61e9c8fab..37b78533b5 100644 --- a/epmet-auth/src/main/java/com/epmet/service/GovLoginService.java +++ b/epmet-auth/src/main/java/com/epmet/service/GovLoginService.java @@ -24,7 +24,7 @@ public interface GovLoginService { * @Description 政府端微信小程序登录-发送验证码 * @Date 2020/4/18 10:59 **/ - Result sendSmsCode(SendSmsCodeFormDTO formDTO); + void sendSmsCode(SendSmsCodeFormDTO formDTO); /** * @param formDTO @@ -33,7 +33,7 @@ public interface GovLoginService { * @Description 3、手机验证码获取组织 * @Date 2020/4/18 21:11 **/ - Result> getMyOrg(StaffOrgsFormDTO formDTO); + List getMyOrg(StaffOrgsFormDTO formDTO); /** * @param formDTO @@ -42,7 +42,7 @@ public interface GovLoginService { * @Description 政府端小程序根据wxCode获取上一次登录信息,返回token * @Date 2020/4/20 11:23 **/ - Result loginByWxCode(GovWxmpFormDTO formDTO); + UserTokenResultDTO loginByWxCode(GovWxmpFormDTO formDTO); /** * @param formDTO @@ -51,7 +51,7 @@ public interface GovLoginService { * @Description 4、选择组织,进入首页 * @Date 2020/4/20 13:08 **/ - Result enterOrg(GovWxmpEnteOrgFormDTO formDTO); + UserTokenResultDTO enterOrg(GovWxmpEnteOrgFormDTO formDTO); /** * @return com.epmet.commons.tools.utils.Result @@ -60,5 +60,5 @@ public interface GovLoginService { * @Description 政府端工作人员退出登录 * @Date 2020/4/21 22:08 **/ - Result loginOut(TokenDto tokenDto); + void loginOut(TokenDto tokenDto); } diff --git a/epmet-auth/src/main/java/com/epmet/service/impl/GovLoginServiceImpl.java b/epmet-auth/src/main/java/com/epmet/service/impl/GovLoginServiceImpl.java index 7ad0fae480..b7023b0f37 100644 --- a/epmet-auth/src/main/java/com/epmet/service/impl/GovLoginServiceImpl.java +++ b/epmet-auth/src/main/java/com/epmet/service/impl/GovLoginServiceImpl.java @@ -2,6 +2,7 @@ package com.epmet.service.impl; import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; import com.epmet.common.token.constant.LoginConstant; +import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.ExceptionUtils; import com.epmet.commons.tools.exception.RenException; @@ -67,28 +68,27 @@ public class GovLoginServiceImpl implements GovLoginService { * @Date 2020/4/18 10:59 **/ @Override - public Result sendSmsCode(SendSmsCodeFormDTO formDTO) { + public void sendSmsCode(SendSmsCodeFormDTO formDTO) { //1、校验手机号是否符合规范 if (!PhoneValidatorUtils.isMobile(formDTO.getMobile())) { logger.error(String.format(SEND_SMS_CODE_ERROR, formDTO.getMobile(), EpmetErrorCode.ERROR_PHONE.getCode(), EpmetErrorCode.ERROR_PHONE.getMsg())); - return new Result().error(EpmetErrorCode.ERROR_PHONE.getCode()); + throw new RenException(EpmetErrorCode.ERROR_PHONE.getCode()); } //2、根据手机号校验用户是否存在 Result> customerStaffResult = epmetUserFeignClient.checkCustomerStaff(formDTO.getMobile()); if (!customerStaffResult.success()) { logger.error(String.format(SEND_SMS_CODE_ERROR, formDTO.getMobile(), customerStaffResult.getCode(), customerStaffResult.getMsg())); - return new Result().error(customerStaffResult.getCode()); + throw new RenException(customerStaffResult.getCode()); } //3、发送短信验证码 Result> smsCodeResult = messageFeignClient.sendSmsCaptcha(formDTO.getMobile()); if (!smsCodeResult.success()) { logger.error(String.format(SEND_SMS_CODE_ERROR, formDTO.getMobile(), smsCodeResult.getCode(), smsCodeResult.getMsg())); - return new Result().error(smsCodeResult.getCode()); + throw new RenException(smsCodeResult.getCode()); } //4、保存短信验证码(删除现有短信验证码、将新的短信验证码存入Redis) captchaRedis.saveSmsCode(formDTO, smsCodeResult.getData().get("code")); logger.info(String.format("发送短信验证码成功,手机号[%s]", formDTO.getMobile())); - return new Result(); } /** @@ -99,18 +99,18 @@ public class GovLoginServiceImpl implements GovLoginService { * @Date 2020/4/18 21:11 **/ @Override - public Result> getMyOrg(StaffOrgsFormDTO formDTO) { + public List getMyOrg(StaffOrgsFormDTO formDTO) { //1、根据手机号查询到用户信息 Result> customerStaffResult = epmetUserFeignClient.checkCustomerStaff(formDTO.getMobile()); if (!customerStaffResult.success()) { logger.error(String.format("手机验证码登录异常,手机号[%s],code[%s],msg[%s]", formDTO.getMobile(), customerStaffResult.getCode(), customerStaffResult.getMsg())); - return new Result().error(customerStaffResult.getCode()); + throw new RenException(customerStaffResult.getCode()); } //2、验证码是否正确 String rightSmsCode = captchaRedis.getSmsCode(formDTO.getMobile()); if (!formDTO.getSmsCode().equals(rightSmsCode)) { logger.error(String.format("验证码错误code[%s],msg[%s]",EpmetErrorCode.MOBILE_CODE_ERROR.getCode(),EpmetErrorCode.MOBILE_CODE_ERROR.getMsg())); - return new Result>().error(EpmetErrorCode.MOBILE_CODE_ERROR.getCode()); + throw new RenException(EpmetErrorCode.MOBILE_CODE_ERROR.getCode()); } //3、查询用户所有的组织信息 List customerIdList = new ArrayList<>(); @@ -120,11 +120,15 @@ public class GovLoginServiceImpl implements GovLoginService { StaffOrgFormDTO staffOrgFormDTO = new StaffOrgFormDTO(); staffOrgFormDTO.setCustomerIdList(customerIdList); Result> result = govOrgFeignClient.getStaffOrgList(staffOrgFormDTO); - return result; + if(result.success()&&null!=result.getData()){ + return result.getData(); + } + logger.error(String .format("手机验证码获取组织,调用%s服务失败,入参手机号%s,验证码%s,返回错误码%s,错误提示信息%s", ServiceConstant.GOV_ORG_SERVER,formDTO.getMobile(),formDTO.getSmsCode(),result.getCode(),result.getMsg())); + return new ArrayList<>(); } @Override - public Result loginByWxCode(GovWxmpFormDTO formDTO) { + public UserTokenResultDTO loginByWxCode(GovWxmpFormDTO formDTO) { //1、解析微信用户 WxMaJscode2SessionResult wxMaJscode2SessionResult = loginService.getWxMaUser(formDTO.getApp(), formDTO.getWxCode()); if(null!=wxMaJscode2SessionResult){ @@ -133,7 +137,7 @@ public class GovLoginServiceImpl implements GovLoginService { Result latestStaffWechat = epmetUserFeignClient.getLatestStaffWechatLoginRecord(wxMaJscode2SessionResult.getOpenid()); if (!latestStaffWechat.success() || null == latestStaffWechat.getData()) { logger.error(String.format("没有获取到用户最近一次登录账户信息,code[%s],msg[%s]", EpmetErrorCode.PLEASE_LOGIN.getCode(), EpmetErrorCode.PLEASE_LOGIN.getMsg())); - return new Result().error(EpmetErrorCode.PLEASE_LOGIN.getCode()); + throw new RenException(EpmetErrorCode.PLEASE_LOGIN.getCode()); } StaffLatestAgencyResultDTO staffLatestAgencyResultDTO = latestStaffWechat.getData(); //2、记录staff_wechat @@ -146,7 +150,7 @@ public class GovLoginServiceImpl implements GovLoginService { this.saveLatestGovTokenDto(staffLatestAgencyResultDTO, wxMaJscode2SessionResult, token); UserTokenResultDTO userTokenResultDTO = new UserTokenResultDTO(); userTokenResultDTO.setToken(token); - return new Result().ok(userTokenResultDTO); + return userTokenResultDTO; } //保存tokenDto到redis @@ -244,7 +248,7 @@ public class GovLoginServiceImpl implements GovLoginService { } @Override - public Result enterOrg(GovWxmpEnteOrgFormDTO formDTO) { + public UserTokenResultDTO enterOrg(GovWxmpEnteOrgFormDTO formDTO) { //1、需要校验要登录的客户,是否被禁用 CustomerStaffFormDTO customerStaffFormDTO = new CustomerStaffFormDTO(); customerStaffFormDTO.setCustomerId(formDTO.getCustomerId()); @@ -252,7 +256,7 @@ public class GovLoginServiceImpl implements GovLoginService { Result customerStaffDTOResult = epmetUserFeignClient.getCustomerStaffInfo(customerStaffFormDTO); if (!customerStaffDTOResult.success() || null == customerStaffDTOResult.getData()) { logger.error(String.format("获取工作人员信息失败,手机号[%s],客户id:[%s],code[%s],msg[%s]", formDTO.getMobile(), formDTO.getCustomerId(), customerStaffDTOResult.getCode(), customerStaffDTOResult.getMsg())); - return new Result().error(customerStaffDTOResult.getCode()); + throw new RenException(customerStaffDTOResult.getCode()); } CustomerStaffDTO customerStaff = customerStaffDTOResult.getData(); //2、解析微信用户 @@ -267,17 +271,16 @@ public class GovLoginServiceImpl implements GovLoginService { this.saveGovTokenDto(formDTO.getRootAgencyId(), formDTO.getCustomerId(), customerStaff.getUserId(), wxMaJscode2SessionResult, token); UserTokenResultDTO userTokenResultDTO = new UserTokenResultDTO(); userTokenResultDTO.setToken(token); - return new Result().ok(userTokenResultDTO); + return userTokenResultDTO; } @Override - public Result loginOut(TokenDto tokenDto) { + public void loginOut(TokenDto tokenDto) { if(null == tokenDto){ logger.error("token解析失败,直接跳转重新登录即可"); throw new RenException("当前用户信息获取失败"); } cpUserDetailRedis.logout(tokenDto.getApp() , tokenDto.getClient() , tokenDto.getUserId()); - return new Result(); } //保存登录日志 diff --git a/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java b/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java index fcd85b0c0e..1b9215e22a 100644 --- a/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java +++ b/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java @@ -61,7 +61,7 @@ public class FieldMetaObjectHandler implements MetaObjectHandler { setFieldValByName(FieldConstant.DEL_FLAG_HUMP, EpmetDelFlagEnum.NORMAL.value(), metaObject); // 数据权限标志 //setInsertFieldValByName(DEPT_ID, deptId, metaObject); - } else { + } else if (metaObject.getOriginalObject() instanceof BaseEntity) { UserDetail user = SecurityUser.getUser(); // renren自带的 if (user == null) { diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java index 5fd9af0bd1..c6b5591ff0 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java @@ -98,4 +98,9 @@ public interface ServiceConstant { * 政府端项目跟踪(项目管理) */ String GOV_PROJECT_SERVER="gov-project-server"; + + /** + * 共通 + */ + String EPMET_COMMON_SERVICE = "epmet-common-service"; } diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java index 878d3ef1d4..1e7e8d4016 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java @@ -9,15 +9,20 @@ public enum RequirePermissionEnum { /** * 工作-基层治理-群组管理 */ - WORK_GRASSROOTS_GROUP_AUDITINGLIST("work_grassroots_group_auditinglist", "基层治理:群组管理:待审核列表", "基层治理:群组管理:待审核列表"), - WORK_GRASSROOTS_GROUP_AUDIT("work_grassroots_group_audit", "基层治理:群组管理:审核建组", "基层治理:群组管理:审核建组"), - WORK_GRASSROOTS_GROUP_GROUPSINTHEGRID("work_grassroots_group_groupsinthegrid", "基层治理:群组管理:本网格小组列表", "基层治理:群组管理:本网格小组列表"), + WORK_GRASSROOTS_GROUP_AUDITINGLIST("work_grassroots_group_auditinglist", "基层治理:群组管理:待审核列表", "基层治理:群组管理:待审核列表查询"), + WORK_GRASSROOTS_GROUP_GROUPSINTHEGRID("work_grassroots_group_groupsinthegrid", "基层治理:群组管理:本网格小组列表", "基层治理:群组管理:本网格小组列表查询"), + WORK_GRASSROOTS_GROUP_AUDIT("work_grassroots_group_audit", "基层治理:群组管理:审核建组", "基层治理:群组管理:审核建组(通过或驳回)"), + WORK_GRASSROOTS_GROUP_AUDITED("work_grassroots_group_audited", "基层治理:群组管理:审核历史", "基层治理:群组管理:审核历史列表查询"), + WORK_GRASSROOTS_GROUP_APPLY_DETAIL("work_grassroots_group_apply_detail", "基层治理:群组管理:建组申请", "基层治理:群组管理:建组申请详情"), + /** * 工作-基层治理-居民管理 */ WORK_GRASSROOTS_RESI_WARMHEARTED_AUDITINGLIST("work_grassroots_resi_warmhearted_auditinglist", "基层治理:居民管理:热心居民待审核列表", "基层治理:居民管理:热心居民待审核列表"), WORK_GRASSROOTS_RESI_WARMHEARTED_AUDITHISTORYLIST("work_grassroots_resi_warmhearted_audithistorylist", "基层治理:居民管理:热心审核历史", "基层治理:居民管理:热心审核历史"), WORK_GRASSROOTS_RESI_WARMHEARTED_AUDIT("work_grassroots_resi_warmhearted_audit", "基层治理:居民管理:热心居民审核", "基层治理:居民管理:热心居民审核"), + WORK_GRASSROOTS_RESI_WARMHEARTED_APPLY_DETAIL("work_grassroots_resi_warmhearted_apply_detail", "基层治理:居民管理:热心居民申请详情", "基层治理:居民管理:查看热心居民申请详情"), + /** * 工作-基层治理-党员认证 */ @@ -25,6 +30,9 @@ public enum RequirePermissionEnum { WORK_PARTYAUTH_AUDITEDLIST("work_partyauth_auditedlist","基层治理:党员认证:已认证列表","基层治理:党员认证:已认证列表"), WORK_PARTYAUTH_AUDITHISTORY("work_partyauth_audithistory","基层治理:党员认证:审核历史","基层治理:党员认证:审核历史"), WORK_PARTYAUTH_AUDITSUBMIT("work_partyauth_auditsubmit","基层治理:党员认证:审核","基层治理:党员认证:审核"), + WORK_PARTYAUTH_AUDITED_DETAIL("work_partyauth_audited_detail", "基层治理:党员认证:已认证详情", "基层治理:党员认证:查看已认证党员详情"), + WORK_PARTYAUTH_AUDITING_DETAIL("work_partyauth_auditing_detail","基层治理:党员认证:待审核详情","基层治理:党员认证:查看待审核详情"), + WORK_PARTYAUTH_AUDITHISTORY_DETAIL("work_partyauth_audithistory_detail","基层治理:党员认证:审核历史详情","基层治理:党员认证:查看审核历史详情(自动审核失败、拒绝的)"), /** * 组织-机关单位 @@ -34,6 +42,7 @@ public enum RequirePermissionEnum { ORG_SUBAGENCY_LIST("org_subagency_list", "组织:下级机关:列表", "组织:下级机关:列表"), ORG_SUBAGENCY_CREATE("org_subagency_create", "组织:下级机关:新增", "组织:下级机关:新增"), ORG_SUBAGENCY_DELETE("org_subagency_delete", "组织:下级机关:删除", "组织:下级机关:删除"), + /** * 组织-工作人员 */ @@ -42,6 +51,7 @@ public enum RequirePermissionEnum { ORG_STAFF_CREATE("org_staff_create", "组织:工作人员:新增", "组织:工作人员:新增"), ORG_STAFF_UPDATE("org_staff_update", "组织:工作人员:编辑", "组织:工作人员:编辑"), ORG_STAFF_FORBIDDEN("org_staff_forbidden", "组织:工作人员:禁用", "组织:工作人员:禁用"), + /** * 组织-部门 */ @@ -61,7 +71,29 @@ public enum RequirePermissionEnum { ORG_GRID_DELETE("org_grid_delete", "组织:治理网格:删除", "组织:治理网格:删除"), ORG_GRID_STAFF_ADD("org_grid_staff_add", "组织:治理网格:新增网格工作人员", "组织:治理网格:新增网格工作人员"), ORG_GRID_STAFF_REMOVE("org_grid_staff_remove", "组织:治理网格:移除网格工作人员", "组织:治理网格:移除网格工作人员"), - ORG_PARTYMEMBER_SUMMARY("org_partymember_summary", "组织:党员:汇总信息", "组织:党员:汇总信息"); + ORG_PARTYMEMBER_SUMMARY("org_partymember_summary", "组织:党员:汇总信息", "组织:党员:汇总信息"), + + /** + * 基层治理-议题管理 + */ + WORK_GRASSROOTS_ISSUE_VOTINGLIST("work_grassroots_issue_voting_list","表决中列","表决中议题列表查询"), + WORK_GRASSROOTS_ISSUE_SHIFTED_PROJECT_LIST("work_grassroots_issue_shifted_project_list", "已转项目列表查询","已转项目议题列表查询"), + WORK_GRASSROOTS_ISSUE_CLOSED_LIST("work_grassroots_issue_closed_list","已关闭","已关闭议题列表查询"), + WORK_GRASSROOTS_ISSUE_DETAIL("work_grassroots_issue_detail", "议题详情","议题详情界面所有的api添加此校验"), + WORK_GRASSROOTS_ISSUE_SHIFT_PROJECT("work_grassroots_issue_shift_project", "转项目","转项目(选择处理部门api也需要添加此校验)"), + WORK_GRASSROOTS_ISSUE_CLOSE("work_grassroots_issue_close","关闭议题","关闭议题"), + + /** + * 工作-项目跟踪 + */ + WORK_PROJECT_TRACE_PENDING_LIST("work_project_trace_pending_list","待处理","待处理的项目,列表查询"), + WORK_PROJECT_TRACE_CREATED_LIST("work_project_trace_created_list","我发起","我发起的项目,列表查询"), + WORK_PROJECT_TRACE_INVOLVED_LIST("work_project_trace_involved_list","我参与","我参与的项目,列表查询"), + WORK_PROJECT_TRACE_DETAIL("work_project_trace_detail","项目详情","项目详情界面所有的api添加此校验"), + WORK_PROJECT_TRACE_CLOSE("work_project_trace_close","结案","结案"), + WORK_PROJECT_TRACE_TRANSFER("work_project_trace_transfer","转其他部门","转其他部门(选择处理部门api也需要添加此校验)"), + WORK_PROJECT_TRACE_RETURN("work_project_trace_return","退回","退回"); + private String key; private String name; 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 8aa19240ca..78f66e9330 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 @@ -40,7 +40,10 @@ public enum EpmetErrorCode { MOBILE_USED(8402,"该手机号已注册"), STAFF_ADD_FAILED(8403,"人员添加失败"), STAFF_EDIT_FAILED(8404,"人员编辑失败"), - CANNOT_DISABLE_YOURSELF(8405,"您不能禁用自己"),; + CANNOT_DISABLE_YOURSELF(8405,"您不能禁用自己"), + + ALREADY_EVALUATE(8501,"您已评价"), + ALREADY_VOTE(8502,"您已表态"); private int code; private String msg; diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java index d90feff39e..3670e1f9a6 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java @@ -174,28 +174,6 @@ public class RedisKeys { return rootPrefix.concat("resiregister:confirm:").concat(userId).concat("-").concat(mobile).concat("-*"); } - /** - * @Description 小组缓存信息key - * @Param 组Id - * @return epmet:resi:group:groupId - * @Author wangc - * @Date 2020.04.13 11:27 - **/ - public static String getResiGroupInfoKey(String groupId){ - return rootPrefix.concat("resi:group:").concat(groupId); - } - - /** - * @Description 组成员信息缓存key - * @Param 组Id 用户Id - * @return epmet:resi:group:member:groupId:userId - * @Author wangc - * @Date 2020.04.13 13:40 - **/ - public static String getResiGroupMemberInfoKey(String groupId, String userId){ - return rootPrefix.concat("resi:group:member:").concat(groupId).concat(":").concat(userId); - } - /** * @param phone 手机号 * @param smsCode 短信验证码 diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java index b68418626a..921a7e5576 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java @@ -13,6 +13,7 @@ import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactor import org.springframework.data.redis.core.HashOperations; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.StringRedisTemplate; +import org.springframework.data.redis.support.atomic.RedisAtomicLong; import org.springframework.stereotype.Component; import java.util.Collection; @@ -210,4 +211,34 @@ public class RedisUtils { setString(key, value, DEFAULT_EXPIRE); } + /** + * @param key + * @return java.lang.Long + * @Author yinzuomei + * @Description 将 key 中储存的数字值+1 ,返回结果 + * @Date 2020/5/12 18:55 + **/ + public Long incrementAndGet(String key) { + RedisAtomicLong entityIdCounter = new RedisAtomicLong(key, redisTemplate.getConnectionFactory()); + //前者,先+1,再返回 + Long count = entityIdCounter.incrementAndGet(); + if (count == 0) { + System.out.println("返回值=0"); + count = entityIdCounter.incrementAndGet(); + } + return count; + } + + /** + * @param key + * @return java.lang.Long + * @Author yinzuomei + * @Description 将key中储存的数字值-1 ,返回结果 + * @Date 2020/5/13 9:39 + **/ + public Long decrementAndGet(String key) { + RedisAtomicLong entityIdCounter = new RedisAtomicLong(key, redisTemplate.getConnectionFactory()); + Long count = entityIdCounter.decrementAndGet(); + return count; + } } diff --git a/epmet-gateway/pom.xml b/epmet-gateway/pom.xml index 3be266ac62..cb815914c2 100644 --- a/epmet-gateway/pom.xml +++ b/epmet-gateway/pom.xml @@ -174,6 +174,9 @@ lb://gov-project-server + + http://127.0.0.1:8103 + @@ -244,6 +247,8 @@ lb://gov-issue-server lb://gov-project-server + + lb://common-service-server @@ -312,6 +317,8 @@ lb://gov-issue-server lb://gov-project-server + + lb://common-service-server diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index 112369073e..a009c0c628 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -224,6 +224,14 @@ spring: filters: - StripPrefix=1 - CpAuth=true + #政府工作端项目管理 + - id: common-service-server + uri: @gateway.routes.common-service-server.uri@ + order: 23 + predicates: + - Path=${server.servlet.context-path}/commonservice/** + filters: + - StripPrefix=1 nacos: discovery: server-addr: @nacos.server-addr@ diff --git a/epmet-module/epmet-common-service/common-service-client/pom.xml b/epmet-module/epmet-common-service/common-service-client/pom.xml new file mode 100644 index 0000000000..d8b8c6d070 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-client/pom.xml @@ -0,0 +1,35 @@ + + + 4.0.0 + + + com.epmet + epmet-common-service + 2.0.0 + + + common-service-client + jar + + + + com.epmet + epmet-commons-tools + 2.0.0 + + + io.springfox + springfox-swagger2 + + + io.springfox + springfox-swagger-ui + + + + + ${project.artifactId} + + + diff --git a/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/CalenderDTO.java b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/CalenderDTO.java new file mode 100644 index 0000000000..220ec8ef12 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/CalenderDTO.java @@ -0,0 +1,137 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class CalenderDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 0表示成功,其他为失败 + */ + private Integer retCode; + + /** + * 查询的日期:20200510 + */ + private String day; + + /** + * 查询的日期:20200510 + */ + @JsonFormat(pattern="yyyy-MM-dd") + private Date queryDate; + + /** + * 星期几的数字 + */ + private Integer weekday; + + /** + * 节日或周末开始时间,如果是工作日,此字段为空串 + */ + @Length(max = 8) + private String begin; + + /** + * 节日或周末结束时间,如果是工作日,此字段为空串 + */ + @Length(max = 8) + private String end; + + /** + * 节日备注 + */ + private String holidayRemark; + + /** + * 1为工作日,2为周末,3为节假日 + */ + private String type; + + /** + * 工作日,周末,节假日 + */ + private String typeName; + + /** + * 节日名称,工作日时显示“无”,周末时显示“周末”,节日时显示节日名称 + */ + private String holiday; + + /** + * 星期几的英文名 + */ + private String en; + + /** + * 星期几的中文名 + */ + private String cn; + + /** + * 是否删除,0:未删除,1:已删除 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建者id + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新者id + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/CalenderFormDTO.java b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/CalenderFormDTO.java new file mode 100644 index 0000000000..e2e8ab6512 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/CalenderFormDTO.java @@ -0,0 +1,68 @@ +package com.epmet.dto.form; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description TODO + * @Author yinzuomei + * @Date 2020/5/12 14:09 + */ +@Data +public class CalenderFormDTO implements Serializable { + private static final long serialVersionUID = -62868343447396944L; + + /** + * 查询的日期:20200510 + */ + @JsonFormat(pattern="yyyy-MM-dd") + private Date queryDate; + + /** + * 星期几的数字 + */ + private Integer weekday; + + /** + * 节日或周末开始时间,如果是工作日,此字段为空串 + */ + @Length(max = 8) + private String begin; + + /** + * 节日或周末结束时间,如果是工作日,此字段为空串 + */ + @Length(max = 8) + private String end; + + /** + * 节日备注 + */ + private String holidayRemark; + + /** + * 1为工作日,2为周末,3为节假日 + */ + private String type; + + /** + * 节日名称,工作日时显示“无”,周末时显示“周末”,节日时显示节日名称 + */ + private String holiday; + + /** + * 星期几的英文名 + */ + private String en; + + /** + * 星期几的中文名 + */ + private String cn; + +} + diff --git a/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/WorkDayFormDTO.java b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/WorkDayFormDTO.java new file mode 100644 index 0000000000..3442f81481 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/WorkDayFormDTO.java @@ -0,0 +1,31 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 工作日计算入参 + * @Author yinzuomei + * @Date 2020/5/11 21:53 + */ +@Data +public class WorkDayFormDTO implements Serializable { + private static final long serialVersionUID = 5018009446003442250L; + + /** + * key + */ + private String id; + + /** + * 起始日期 + */ + private String startDate; + + /** + * 终止日期 + */ + private String endDate; +} + diff --git a/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/result/WorkDayResultDTO.java b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/result/WorkDayResultDTO.java new file mode 100644 index 0000000000..8c594b1298 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/result/WorkDayResultDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 工作日计算返参 + * @Author yinzuomei + * @Date 2020/5/11 21:48 + */ +@Data +public class WorkDayResultDTO implements Serializable { + private static final long serialVersionUID = 4578531109651717997L; + + /** + * key + */ + private String id; + + /** + * 起始日期 + */ + private String startDate; + + /** + * 终止日期 + */ + private String endDate; + + /** + * 已滞留工作日 + */ + private String detentionDays; +} + diff --git a/epmet-module/epmet-common-service/common-service-server/Dockerfile b/epmet-module/epmet-common-service/common-service-server/Dockerfile new file mode 100644 index 0000000000..456b190e80 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/Dockerfile @@ -0,0 +1,11 @@ +FROM java:8 + +RUN export LANG="zh_CN.UTF-8" +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime +RUN echo 'Asia/Shanghai' > /etc/timezone + +COPY ./target/*.jar ./app.jar + +EXPOSE 8103 + +ENTRYPOINT ["java","-Xms32m","-Xmx200m","-jar","./app.jar"] \ No newline at end of file diff --git a/epmet-module/epmet-common-service/common-service-server/docker-compose.yml b/epmet-module/epmet-common-service/common-service-server/docker-compose.yml new file mode 100644 index 0000000000..9af8426d0d --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/docker-compose.yml @@ -0,0 +1,15 @@ +version: "3.7" +services: + common-service-server: + container_name: common-service-server-dev + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-dev/common-service-server:0.3.0 + ports: + - "8103:8103" + network_mode: host # 使用现有网络 + volumes: + - "/opt/epmet-cloud-logs/dev:/logs" + deploy: + resources: + limits: + cpus: '0.1' + memory: 250M \ No newline at end of file diff --git a/epmet-module/epmet-common-service/common-service-server/pom.xml b/epmet-module/epmet-common-service/common-service-server/pom.xml new file mode 100644 index 0000000000..933a40b48d --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/pom.xml @@ -0,0 +1,150 @@ + + + 4.0.0 + 0.3.0 + + com.epmet + epmet-common-service + 2.0.0 + + common-service-server + jar + + + + com.epmet + common-service-client + 2.0.0 + + + com.epmet + epmet-commons-tools + 2.0.0 + + + com.epmet + epmet-commons-mybatis + 2.0.0 + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework + spring-context-support + + + org.springframework.boot + spring-boot-starter-actuator + + + de.codecentric + spring-boot-admin-starter-client + ${spring.boot.admin.version} + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + io.github.openfeign + feign-httpclient + 10.3.0 + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + ${project.basedir}/src/main/java + + + true + ${basedir}/src/main/resources + + + + + + dev-local + + true + + + 8103 + dev + + + + + + + + epmet_common_service_user + EpmEt-db-UsEr + + 0 + 192.168.1.130 + 6379 + 123456 + + false + 122.152.200.70:8848 + fcd6fc8f-ca3a-4b01-8026-2b05cdc5976b + + + false + + + + + dev + + + 8103 + dev + + + + + + epmet + elink@833066 + + 0 + r-m5eoz5b6tkx09y6bpz.redis.rds.aliyuncs.com + 6379 + EpmEtrEdIs!q@w + + true + 192.168.10.150:8848 + 67e3c350-533e-4d7c-9f8f-faf1b4aa82ae + + + false + + + + + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/EpmetCommonServiceApplication.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/EpmetCommonServiceApplication.java new file mode 100644 index 0000000000..238b8546d4 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/EpmetCommonServiceApplication.java @@ -0,0 +1,31 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + * + * https://www.renren.io + * + * 版权所有,侵权必究! + */ + +package com.epmet; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.client.discovery.EnableDiscoveryClient; +import org.springframework.cloud.openfeign.EnableFeignClients; + +/** + * 模块 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +@SpringBootApplication +@EnableDiscoveryClient +@EnableFeignClients +public class EpmetCommonServiceApplication { + + public static void main(String[] args) { + SpringApplication.run(EpmetCommonServiceApplication.class, args); + } + +} diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/config/ModuleConfigImpl.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/config/ModuleConfigImpl.java new file mode 100644 index 0000000000..6fbaa47ba2 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/config/ModuleConfigImpl.java @@ -0,0 +1,26 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + * + * https://www.renren.io + * + * 版权所有,侵权必究! + */ + +package com.epmet.config; + +import com.epmet.commons.tools.config.ModuleConfig; +import org.springframework.stereotype.Service; + +/** + * 模块配置信息 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +@Service +public class ModuleConfigImpl implements ModuleConfig { + @Override + public String getName() { + return "commonservice"; + } +} diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/constant/ShowApiConstant.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/constant/ShowApiConstant.java new file mode 100644 index 0000000000..69799d4fde --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/constant/ShowApiConstant.java @@ -0,0 +1,36 @@ +package com.epmet.constant; + +/** + * @Description 万维易源API + * @Author yinzuomei + * @Date 2020/5/11 16:56 + */ +public interface ShowApiConstant { + /** + * showapi_appid + */ + String SHOWAPI_APPID = "222733"; + + /** + * secret + */ + String SHOWAPI_SIGN = "ada451c248454d4eaf2db178482f14a7"; + + /** + * 2020年我国节假日查询,持续更新中...... + * api:https://route.showapi.com/894-5 + * 第一个参数:showapi_appidshowapi_appid + * 第二个参数:showapi_sign=secret + * 第三个参数:输入格式yyyyMMdd。如果不输入,则默认是当天。 + */ + String QUERY_HOLIDAY_V2020 = "http://route.showapi.com/894-5?showapi_appid=%s&showapi_sign=%s&day=%s"; + + /** + * 根据年份查询当年的节假日列表 + * api:https://route.showapi.com/894-5 + * 第一个参数:showapi_appidshowapi_appid + * 第二个参数:showapi_sign=secret + * 第三个参数:year需要查询的年份,默认查询2019年的节假日列表 + */ + String HOLIDAY_LIST = "http://route.showapi.com/894-4?showapi_appid=%s&showapi_sign=%s&year=%s"; +} diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/CalenderController.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/CalenderController.java new file mode 100644 index 0000000000..80d0062bec --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/CalenderController.java @@ -0,0 +1,86 @@ +/** + * 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.page.PageData; +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.dto.CalenderDTO; +import com.epmet.dto.form.CalenderFormDTO; +import com.epmet.service.CalenderService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("calender") +public class CalenderController { + + @Autowired + private CalenderService calenderService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = calenderService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + CalenderDTO data = calenderService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody CalenderFormDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + calenderService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody CalenderDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + calenderService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + calenderService.delete(ids); + return new Result(); + } + + +} \ No newline at end of file diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/ShowApiController.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/ShowApiController.java new file mode 100644 index 0000000000..7b01acac0c --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/ShowApiController.java @@ -0,0 +1,74 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.service.ShowApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Description 工作日信息维护 + * @Author yinzuomei + * @Date 2020/5/11 21:39 + */ +@RestController +@RequestMapping("holiday") +public class ShowApiController { + + @Autowired + private ShowApiService showApiService; + + /** + * @param year + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 初始化日历插入数据库 + * @Date 2020/5/11 23:23 + **/ + @PostMapping("init/{year}") + public Result initYearCalender(@PathVariable("year") String year) { + showApiService.initYearCalender(year); + return new Result(); + } + + /** + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 2020年我国节假日查询 + * @Date 2020/5/11 23:24 + **/ + @PostMapping("initWorkDayList/{year}") + public Result initWorkDayList(@PathVariable("year") String year) { + showApiService.initWorkDayList(year); + return new Result(); + } + + /** + * @param year + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 根据年份查询当年的节假日列表(调用api同步到本地) + * @Date 2020/5/11 23:24 + **/ + @PostMapping("holidayList/{year}") + public Result holidayList(@PathVariable("year") String year) { + showApiService.holidayList(year); + return new Result(); + } + + /** + * @param day yyyyMMdd + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 拉取某一天的日历详情 + * @Date 2020/5/12 14:45 + **/ + @PostMapping("initWorkDay/{day}") + public Result initWorkDay(@PathVariable("day") String day) { + showApiService.initWorkDay(day); + return new Result(); + } +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/WorkDayController.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/WorkDayController.java new file mode 100644 index 0000000000..0d975a0c31 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/WorkDayController.java @@ -0,0 +1,40 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.WorkDayFormDTO; +import com.epmet.dto.result.WorkDayResultDTO; +import com.epmet.service.WorkDayService; +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; + +/** + * @Description 工作日计算 + * @Author yinzuomei + * @Date 2020/5/12 0:27 + */ +@RestController +@RequestMapping("workday") +public class WorkDayController { + + @Autowired + private WorkDayService workDayService; + + /** + * @return com.epmet.commons.tools.utils.Result> + * @param formDTO + * @Author yinzuomei + * @Description 根据每一组起止时间,计算工作日 + * @Date 2020/5/12 2:08 + **/ + @PostMapping("detentiondays") + public Result> detentionDays(@RequestBody List formDTO) { + List list = workDayService.detentionDays(formDTO); + return new Result>().ok(list); + } +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/dao/CalenderDao.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/dao/CalenderDao.java new file mode 100644 index 0000000000..2d18e22648 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/dao/CalenderDao.java @@ -0,0 +1,44 @@ +/** + * 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.entity.CalenderEntity; +import com.epmet.result.HolidayDetailDTO; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface CalenderDao extends BaseDao { + + int updateHoliday(HolidayDetailDTO holidayDetail); + + List selectByDay(String day); + + List selectList(String year); + + List selectByStartAndEnd(@Param("begin")String startDateStr, @Param("end")String endDateStr); +} \ No newline at end of file diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/entity/CalenderEntity.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/entity/CalenderEntity.java new file mode 100644 index 0000000000..831b102b38 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/entity/CalenderEntity.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.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("calender") +public class CalenderEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 0表示成功,其他为失败 + */ + private Integer retCode; + + /** + * 查询的日期:20200510 + */ + private String day; + + /** + * 查询的日期:20200510 + */ + private Date queryDate; + + /** + * 星期几的数字 + */ + private Integer weekday; + + /** + * 节日或周末开始时间,如果是工作日,此字段为空串 + */ + private String begin; + + /** + * 节日或周末结束时间,如果是工作日,此字段为空串 + */ + private String end; + + /** + * 节日备注 + */ + private String holidayRemark; + + /** + * 1为工作日,2为周末,3为节假日 + */ + private String type; + + /** + * 工作日,周末,节假日 + */ + private String typeName; + + /** + * 节日名称,工作日时显示“无”,周末时显示“周末”,节日时显示节日名称 + */ + private String holiday; + + /** + * 星期几的英文名 + */ + private String en; + + /** + * 星期几的中文名 + */ + private String cn; + +} diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/exception/ModuleErrorCode.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/exception/ModuleErrorCode.java new file mode 100644 index 0000000000..1206c71b9a --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/exception/ModuleErrorCode.java @@ -0,0 +1,25 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + * + * https://www.renren.io + * + * 版权所有,侵权必究! + */ + +package com.epmet.exception; + + +import com.epmet.commons.tools.exception.ErrorCode; + +/** + * 模块错误编码,由9位数字组成,前6位为模块编码,后3位为业务编码 + *

+ * 如:100001001(100001代表模块,001代表业务代码) + *

+ * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +public interface ModuleErrorCode extends ErrorCode { + +} diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/DayDetailResultDTO.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/DayDetailResultDTO.java new file mode 100644 index 0000000000..827a27fcf9 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/DayDetailResultDTO.java @@ -0,0 +1,77 @@ +package com.epmet.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 2020年我国节假日查询返参 + * @Author yinzuomei + * @Date 2020/5/11 21:27 + */ +@Data +public class DayDetailResultDTO implements Serializable { + /*{ + "ret_code": 0, + "day": "20200511", + "weekDay": 1, + "begin": "", + "end": "", + "holiday_remark": "", + "type": "1", + "holiday": "无", + "en": "Monday", + "cn": "周一" + }*/ + + /** + * 0表示成功,其他为失败 + */ + private Integer ret_code; + + /** + * 查询的日期20200510 + */ + private String day; + + /** + * 星期几的数字 + */ + private Integer weekDay; + + /** + * 节日或周末开始时间,如果是工作日,此字段为空串 + */ + private String begin; + + /** + * 节日或周末结束时间,如果是工作日,此字段为空串 + */ + private String end; + + /** + * 节日备注 + */ + private String holiday_remark; + + /** + * 1为工作日,2为周末,3为节假日 + */ + private String type; + + /** + * 节日名称,工作日时显示“无”,周末时显示“周末”,节日时显示节日名称 + */ + private String holiday; + + /** + * 星期几(英文文) + */ + private String en; + + /** + * 星期几(中文) + */ + private String cn; +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/HolidayDetailDTO.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/HolidayDetailDTO.java new file mode 100644 index 0000000000..d47713fc3a --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/HolidayDetailDTO.java @@ -0,0 +1,44 @@ +package com.epmet.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description TODO + * @Author yinzuomei + * @Date 2020/5/11 22:55 + */ +@Data +public class HolidayDetailDTO implements Serializable { + private static final long serialVersionUID = -3840795046551145292L; + + /*{ + "holiday": "元旦", + "holiday_remark": "2020年1月1日放假,共1天。", + "end": "20200101", + "begin": "20200101" + }*/ + + /** + * 节假日名称:中秋节 + */ + private String holiday; + + /** + * 节假日描述:共放假3天,周末连休,不需要调休。 + */ + private String holiday_remark; + + /** + * 节假日的结束时间:20190915 + */ + private String end; + + /** + * 节假日的开始时间:20190913 + */ + private String begin; + +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/HolidayResultDTO.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/HolidayResultDTO.java new file mode 100644 index 0000000000..c75adf0cbd --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/HolidayResultDTO.java @@ -0,0 +1,27 @@ +package com.epmet.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description 根据年份查询当年的节假日列表返参 + * @Author yinzuomei + * @Date 2020/5/11 21:27 + */ +@Data +public class HolidayResultDTO implements Serializable { + + /** + * 接口调用是否成功,0表示成功,其他值默认失败 + */ + private Integer ret_code; + + /** + * 整年的节假日列表 + */ + private List data; + +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/ShowApiResult.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/ShowApiResult.java new file mode 100644 index 0000000000..fbba994ece --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/result/ShowApiResult.java @@ -0,0 +1,74 @@ +package com.epmet.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 万维易源-api返参 + * @Author yinzuomei + * @Date 2020/5/11 16:36 + */ +@Data +public class ShowApiResult implements Serializable { + +// { +// "showapi_res_error": "", +// "showapi_res_id": "5eb90db28d57baae12d8d42d", +// "showapi_res_code": 0, +// "showapi_res_body": {"ret_code":0,"day":"20200511","weekDay":1,"begin":"","end":"","holiday_remark":"","type":"1","holiday":"无","en":"Monday","cn":"周一"} +// } + + /** + *易源返回标志,0为成功,其他为失败。 + * 0成功 + * -1,系统调用错误 + * -2,可调用次数或金额为0 + * -3,读取超时 + * -4,服务端返回数据解析错误 + * -5,后端服务器DNS解析错误 + * -6,服务不存在或未上线 + * -7, API创建者的网关资源不足 + * -1000,系统维护 + * -1002,showapi_appid字段必传 + * -1003,showapi_sign字段必传 + * -1004,签名sign验证有误 + * -1005,showapi_timestamp无效 + * -1006,app无权限调用接口 + * -1007,没有订购套餐 + * -1008,服务商关闭对您的调用权限 + * -1009,调用频率受限 + * -1010,找不到您的应用 + * -1011,子授权app_child_id无效 + * -1012,子授权已过期或失效 + * -1013,子授权ip受限 + * -1014,token权限无效 + */ + private int showapi_res_code=0; + + /** + * 错误信息的展示 demo:用户输入有误! + */ + private String showapi_res_error; + + /** + * 本次请求id demo:ce135f6739294c63be0c021b76b6fbff + */ + private String showapi_res_id; + + /** + * 消息体的JSON封装,所有应用级的返回参数将嵌入此对象 。 demo:{"city":"昆明","prov":"云南"} + */ + private String showapi_res_body; + + @Override + public String toString() { + return "ShowApiResult{" + + "showapi_res_code=" + showapi_res_code + + ", showapi_res_error='" + showapi_res_error + '\'' + + ", showapi_res_id='" + showapi_res_id + '\'' + + ", showapi_res_body='" + showapi_res_body + '\'' + + '}'; + } +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/CalenderService.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/CalenderService.java new file mode 100644 index 0000000000..0f4fac02b8 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/CalenderService.java @@ -0,0 +1,96 @@ +/** + * 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.CalenderDTO; +import com.epmet.dto.form.CalenderFormDTO; +import com.epmet.entity.CalenderEntity; + +import java.util.List; +import java.util.Map; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface CalenderService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return CalenderDTO + * @author generator + * @date 2020-05-11 + */ + CalenderDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(CalenderFormDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(CalenderDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/ShowApiService.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/ShowApiService.java new file mode 100644 index 0000000000..b5dc546c2b --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/ShowApiService.java @@ -0,0 +1,20 @@ +package com.epmet.service; + +import java.util.Date; + +/** + * @Description 工作日信息维护 + * @Author yinzuomei + * @Date 2020/5/11 21:55 + */ +public interface ShowApiService { + + void initYearCalender(String year); + + void initWorkDayList(String year); + + void holidayList(String year); + + void initWorkDay(String currentDate); + +} diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/WorkDayService.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/WorkDayService.java new file mode 100644 index 0000000000..7433b154c1 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/WorkDayService.java @@ -0,0 +1,16 @@ +package com.epmet.service; + +import com.epmet.dto.form.WorkDayFormDTO; +import com.epmet.dto.result.WorkDayResultDTO; + +import java.util.List; +import java.util.Set; + +/** + * @Description 工作日计算 + * @Author yinzuomei + * @Date 2020/5/12 0:27 + */ +public interface WorkDayService { + List detentionDays(List formDTO); +} diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/CalenderServiceImpl.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/CalenderServiceImpl.java new file mode 100644 index 0000000000..518577e6c0 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/CalenderServiceImpl.java @@ -0,0 +1,187 @@ +/** + * 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.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.dao.CalenderDao; +import com.epmet.dto.CalenderDTO; +import com.epmet.dto.form.CalenderFormDTO; +import com.epmet.entity.CalenderEntity; +import com.epmet.service.CalenderService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.text.SimpleDateFormat; +import java.util.Arrays; +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class CalenderServiceImpl extends BaseServiceImpl implements CalenderService { + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, CalenderDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, CalenderDTO.class); + } + + private QueryWrapper getWrapper(Map params) { + String id = (String) params.get(FieldConstant.ID_HUMP); + String day = (String) params.get("day"); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id) + .like(StringUtils.isNotBlank(day),"day",day); + wrapper.orderByAsc("QUERY_DATE"); + + return wrapper; + } + + @Override + public CalenderDTO get(String id) { + CalenderEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, CalenderDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(CalenderFormDTO dto) { + CalenderEntity entity = ConvertUtils.sourceToTarget(dto, CalenderEntity.class); + SimpleDateFormat format=new SimpleDateFormat("yyyyMMdd"); + entity.setDay(format.format(dto.getQueryDate())); + entity.setTypeName(this.getTypeName(dto.getType())); + entity.setCn(this.getCnValue(dto.getWeekday())); + entity.setEn(this.getEnValue(dto.getWeekday())); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(CalenderDTO dto) { + dto.setTypeName(this.getTypeName(dto.getType())); + dto.setCn(this.getCnValue(dto.getWeekday())); + dto.setEn(this.getEnValue(dto.getWeekday())); + + CalenderEntity entity = ConvertUtils.sourceToTarget(dto, CalenderEntity.class); + updateById(entity); + } + + private String getCnValue(Integer weekday) { + String cn=""; + switch(weekday) + { + case 1: + cn="周一"; + break; + case 2: + cn="周二"; + break; + case 3: + cn="周三"; + break; + case 4: + cn="周四"; + break; + case 5: + cn="周五"; + break; + case 6: + cn="周六"; + break; + case 7: + cn="周日"; + break; + default: + System.out.println("default"); + break; + } + return cn; + } + + private String getEnValue(Integer weekday) { + String en=""; + switch(weekday) + { + case 1: + en="Monday"; + break; + case 2: + en="Tuesday"; + break; + case 3: + en="Wednesday"; + break; + case 4: + en="Thursday"; + break; + case 5: + en="Friday"; + break; + case 6: + en="Saturday"; + break; + case 7: + en="Sunday"; + break; + default: + System.out.println("default"); + break; + } + return en; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + private String getTypeName(String type) { + //1为工作日,2为周末,3为节假日 + String typeName = ""; + if ("1".equals(type)) { + typeName = "工作日"; + } else if ("2".equals(type)) { + typeName = "周末"; + } else if ("3".equals(type)) { + typeName = "节假日"; + } + return typeName; + } +} \ No newline at end of file diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/ShowApiServiceImpl.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/ShowApiServiceImpl.java new file mode 100644 index 0000000000..fbe6f7bb5b --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/ShowApiServiceImpl.java @@ -0,0 +1,268 @@ +package com.epmet.service.impl; + +import com.epmet.commons.tools.exception.RenException; +import com.epmet.dao.CalenderDao; +import com.epmet.entity.CalenderEntity; +import com.epmet.result.DayDetailResultDTO; +import com.epmet.result.HolidayDetailDTO; +import com.epmet.result.HolidayResultDTO; +import com.epmet.service.ShowApiService; +import com.epmet.utils.ShowApiUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.text.Format; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +/** + * @Description 工作日信息维护 + * @Author yinzuomei + * @Date 2020/5/11 21:55 + */ +@Service +public class ShowApiServiceImpl implements ShowApiService { + + private static Logger logger = LoggerFactory.getLogger(ShowApiServiceImpl.class); + private static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + private static SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd"); + @Autowired + private CalenderDao calenderDao; + + @Override + public void initYearCalender(String year) { + String dateStart = String.format("%s-01-01", year); + String dateEnd = String.format("%s-12-31", year); + long startTime = 0;//start + try { + startTime = dateFormat.parse(dateStart).getTime(); + long endTime = dateFormat.parse(dateEnd).getTime();//end + long day = 1000 * 60 * 60 * 24; + for (long i = startTime; i <= endTime; i += day) { + List calenderList = calenderDao.selectByDay(simpleDateFormat.format(new Date(i))); + if (null == calenderList || calenderList.size() < 1) { + logger.info("日期:" + dateFormat.format(new Date(i))); + CalenderEntity calenderEntity = new CalenderEntity(); + calenderEntity.setQueryDate(new Date(i)); + calenderEntity.setDay(simpleDateFormat.format(new Date(i))); + calenderEntity.setEn(dateToWeekEn(dateFormat.format(new Date(i)))); + calenderEntity.setCn(dateToWeekCn(dateFormat.format(new Date(i)))); + calenderEntity.setWeekday(dateToWeek(dateFormat.format(new Date(i)))); + if (calenderEntity.getWeekday() >= 1 && calenderEntity.getWeekday() <= 5) { + calenderEntity.setTypeName("工作日"); + calenderEntity.setType("1"); + } else { + calenderEntity.setTypeName("周末"); + calenderEntity.setType("2"); + } + calenderDao.insert(calenderEntity); + } else { + logger.info(String.format("数据库存在日期:%s的记录", dateFormat.format(new Date(i)))); + } + } + } catch (ParseException e) { + e.printStackTrace(); + } + } + + @Override + public void initWorkDayList(String year) { + try { + List entityList = calenderDao.selectList(year); + if (null != entityList && entityList.size() > 0) { + CalenderEntity calenderEntity = entityList.get(0); + logger.info("要查询的日期:" + calenderEntity.getDay()); + DayDetailResultDTO dayDetailResultDTO = ShowApiUtil.queryHolidayV2020(calenderEntity.getDay()); + if (0 == dayDetailResultDTO.getRet_code()) { + calenderEntity.setRetCode(dayDetailResultDTO.getRet_code()); + calenderEntity.setWeekday(dayDetailResultDTO.getWeekDay()); + calenderEntity.setBegin(dayDetailResultDTO.getBegin()); + calenderEntity.setEnd(dayDetailResultDTO.getEnd()); + calenderEntity.setHoliday(dayDetailResultDTO.getHoliday()); + calenderEntity.setHolidayRemark(dayDetailResultDTO.getHoliday_remark()); + calenderEntity.setEn(dayDetailResultDTO.getEn()); + calenderEntity.setCn(dayDetailResultDTO.getCn()); + calenderEntity.setType(dayDetailResultDTO.getType()); + //1为工作日,2为周末,3为节假日 + if ("1".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("工作日"); + } else if ("2".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("周末"); + } else if ("3".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("节假日"); + } + calenderDao.updateById(calenderEntity); + } + + } else { + logger.info("无需更新"); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + @Override + public void holidayList(String year) { + HolidayResultDTO holidayResultDTO = null; + try { + holidayResultDTO = ShowApiUtil.holidayList(year); + if (0 != holidayResultDTO.getRet_code()) { + throw new RenException("根据年份查询当年的节假日列表API【https://route.showapi.com/894-4】查询失败"); + } + for (HolidayDetailDTO holidayDetail : holidayResultDTO.getData()) { + calenderDao.updateHoliday(holidayDetail); + } + } catch (Exception e) { + e.printStackTrace(); + throw new RenException("根据年份查询当年的节假日列表API【https://route.showapi.com/894-4】查询异常"); + } + } + + @Override + public void initWorkDay(String currentDate) { + DayDetailResultDTO dayDetailResultDTO = null; + try { + dayDetailResultDTO = ShowApiUtil.queryHolidayV2020(currentDate); + } catch (Exception e) { + e.printStackTrace(); + } + List list = calenderDao.selectByDay(currentDate); + if(null!=list&&list.size()>0){ + if (null != dayDetailResultDTO && 0 == dayDetailResultDTO.getRet_code()) { + for (CalenderEntity calenderEntity : list) { + calenderEntity.setRetCode(dayDetailResultDTO.getRet_code()); + calenderEntity.setWeekday(dayDetailResultDTO.getWeekDay()); + calenderEntity.setBegin(dayDetailResultDTO.getBegin()); + calenderEntity.setEnd(dayDetailResultDTO.getEnd()); + calenderEntity.setHoliday(dayDetailResultDTO.getHoliday()); + calenderEntity.setHolidayRemark(dayDetailResultDTO.getHoliday_remark()); + calenderEntity.setEn(dayDetailResultDTO.getEn()); + calenderEntity.setCn(dayDetailResultDTO.getCn()); + calenderEntity.setType(dayDetailResultDTO.getType()); + //1为工作日,2为周末,3为节假日 + if ("1".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("工作日"); + } else if ("2".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("周末"); + } else if ("3".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("节假日"); + } + calenderDao.updateById(calenderEntity); + } + } + }else { + calenderDao.insert(getCalenderEntity(dayDetailResultDTO)); + } + } + + public CalenderEntity getCalenderEntity(DayDetailResultDTO dayDetailResultDTO) { + CalenderEntity calenderEntity = new CalenderEntity(); + calenderEntity.setDay(dayDetailResultDTO.getDay()); + try { + Date queryDate=simpleDateFormat.parse(dayDetailResultDTO.getDay()); + calenderEntity.setQueryDate(queryDate); + } catch (ParseException e) { + logger.error("QUERY_DATE 赋值 错误"); + e.printStackTrace(); + } + calenderEntity.setRetCode(dayDetailResultDTO.getRet_code()); + calenderEntity.setWeekday(dayDetailResultDTO.getWeekDay()); + calenderEntity.setBegin(dayDetailResultDTO.getBegin()); + calenderEntity.setEnd(dayDetailResultDTO.getEnd()); + calenderEntity.setHoliday(dayDetailResultDTO.getHoliday()); + calenderEntity.setHolidayRemark(dayDetailResultDTO.getHoliday_remark()); + calenderEntity.setEn(dayDetailResultDTO.getEn()); + calenderEntity.setCn(dayDetailResultDTO.getCn()); + calenderEntity.setType(dayDetailResultDTO.getType()); + //1为工作日,2为周末,3为节假日 + if ("1".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("工作日"); + } else if ("2".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("周末"); + } else if ("3".equals(dayDetailResultDTO.getType())) { + calenderEntity.setTypeName("节假日"); + } + return calenderEntity; + } + /* public static void main(String[] args) throws ParseException { + String dateStart = "2020-01-01"; + String dateEnd = "2020-12-31"; + SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); + long startTime = date.parse(dateStart).getTime();//start + long endTime = date.parse(dateEnd).getTime();//end + long day = 1000 * 60 * 60 * 24; + for (long i = startTime; i <= endTime; i += day) { + System.out.println(date.format(new Date(i))); + } + }*/ + + /** + * 根据日期获取当天是周几 + * + * @param datetime 日期 + * @return 周几 + */ + public static String dateToWeekCn(String datetime) { +// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String[] weekDays = {"周日", "周一", "周二", "周三", "周四", "周五", "周六"}; + Calendar cal = Calendar.getInstance(); + Date date; + try { + date = dateFormat.parse(datetime); + cal.setTime(date); + } catch (ParseException e) { + e.printStackTrace(); + } + int w = cal.get(Calendar.DAY_OF_WEEK) - 1; + return weekDays[w]; + } + + /** + * 根据日期获取当天是周几 + * + * @param datetime 日期 + * @return 周几英文 + */ + public static String dateToWeekEn(String datetime) { +// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String[] weekDays = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}; + Calendar cal = Calendar.getInstance(); + Date date; + try { + date = dateFormat.parse(datetime); + cal.setTime(date); + } catch (ParseException e) { + e.printStackTrace(); + } + int w = cal.get(Calendar.DAY_OF_WEEK) - 1; + return weekDays[w]; + } + + /** + * 根据日期获取当天是周几 + * + * @param datetime 日期 + * @return 周几数字 + */ + public static Integer dateToWeek(String datetime) { +// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + int[] weekDays = {7, 1, 2, 3, 4, 5, 6}; + Calendar cal = Calendar.getInstance(); + Date date; + try { + date = dateFormat.parse(datetime); + cal.setTime(date); + } catch (ParseException e) { + e.printStackTrace(); + } + int w = cal.get(Calendar.DAY_OF_WEEK) - 1; + return weekDays[w]; + } +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/WorkDayServiceImpl.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/WorkDayServiceImpl.java new file mode 100644 index 0000000000..25ede12e88 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/WorkDayServiceImpl.java @@ -0,0 +1,82 @@ +package com.epmet.service.impl; + +import com.epmet.commons.tools.exception.RenException; +import com.epmet.dao.CalenderDao; +import com.epmet.dto.form.WorkDayFormDTO; +import com.epmet.dto.result.WorkDayResultDTO; +import com.epmet.entity.CalenderEntity; +import com.epmet.service.WorkDayService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * @Description 工作日计算 + * @Author yinzuomei + * @Date 2020/5/12 0:27 + */ +@Service +public class WorkDayServiceImpl implements WorkDayService { + private static Logger logger = LoggerFactory.getLogger(WorkDayServiceImpl.class); + @Autowired + private CalenderDao calenderDao; + + @Override + public List detentionDays(List workDayFormDTO) { + List list = new ArrayList<>(); + if (workDayFormDTO.isEmpty()) { + throw new RenException("起始时间、终止时间不能为空"); + } + Iterator it = workDayFormDTO.iterator(); + while (it.hasNext()) { + WorkDayResultDTO workDayResult = new WorkDayResultDTO(); + WorkDayFormDTO workDayDTO = (WorkDayFormDTO) it.next(); + workDayResult.setId(workDayDTO.getId()); + workDayResult.setStartDate(workDayDTO.getStartDate()); + workDayResult.setEndDate(workDayDTO.getEndDate()); + workDayResult.setDetentionDays(this.caculateDetentionDays(workDayDTO.getStartDate(), workDayResult.getEndDate())); + list.add(workDayResult); + } + return list; + } + + //公式: 当前日期 - 被吹日期 - 期间的节假日 + private String caculateDetentionDays(String startDateStr, String endDateStr) { + if (startDateStr.equals(endDateStr)) { + logger.info(String.format("%s-%s起止时间一致,返回<1,",startDateStr,endDateStr)); + return "<1"; + } + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd"); + try { + Date startDate = simpleDateFormat.parse(startDateStr); + Date endDate = simpleDateFormat.parse(endDateStr); + long day = (endDate.getTime() - startDate.getTime()) / (24 * 60 * 60 * 1000); + logger.info(String.format("当前日期[%s]-被吹日期[%s]=%s", endDateStr, startDateStr, day)); + List list = calenderDao.selectByStartAndEnd(startDateStr, endDateStr); + + long totalHoliday = 0; + for (CalenderEntity calenderEntity : list) { + if (!"1".equals(calenderEntity.getType())) { + totalHoliday += 1; + } + } + logger.info(String.format("期间的节假日[%s-%s]=%s", endDateStr, startDateStr, totalHoliday)); + long detentionDay = day - totalHoliday; + logger.info(String.format("当前日期[%s]-被吹日期[%s]-期间的节假日[%s]=%s", endDateStr, startDateStr, totalHoliday, detentionDay)); + if (detentionDay < 1) { + return "<1"; + } + return String.valueOf(detentionDay); + } catch (Exception e) { + e.printStackTrace(); + } + return "-1"; + } + + +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/MultithreadScheduleTask.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/MultithreadScheduleTask.java new file mode 100644 index 0000000000..8485f229cb --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/MultithreadScheduleTask.java @@ -0,0 +1,38 @@ +package com.epmet.task; + +import org.springframework.scheduling.annotation.Async; +import org.springframework.scheduling.annotation.EnableAsync; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.time.LocalDateTime; + +/** + * @Description TODO + * @Author yinzuomei + * @Date 2020/5/12 0:04 + */ +//@Component注解用于对那些比较中立的类进行注释; +//相对与在持久层、业务层和控制层分别采用 @Repository、@Service 和 @Controller 对分层中的类进行注释 +//@Component +//@EnableScheduling // 1.开启定时任务 +//@EnableAsync // 2.开启多线程 +public class MultithreadScheduleTask { + + @Async + @Scheduled(fixedDelay = 1000) //间隔1秒 + public void first() throws InterruptedException { + System.out.println("第一个定时任务开始 : " + LocalDateTime.now().toLocalTime() + "\r\n线程 : " + Thread.currentThread().getName()); + System.out.println(); + Thread.sleep(1000 * 10); + } + + @Async + @Scheduled(fixedDelay = 2000) + public void second() { + System.out.println("第二个定时任务开始 : " + LocalDateTime.now().toLocalTime() + "\r\n线程 : " + Thread.currentThread().getName()); + System.out.println(); + } +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/WorkDayScheduleTask.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/WorkDayScheduleTask.java new file mode 100644 index 0000000000..b26ab24cb7 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/WorkDayScheduleTask.java @@ -0,0 +1,33 @@ +package com.epmet.task; + +import com.epmet.service.ShowApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.Scheduled; + +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.util.Date; + +/** + * @Description 定时任务 + * @Author yinzuomei + * @Date 2020/5/12 0:01 + */ +@Configuration //1.主要用于标记配置类,兼备Component的效果。 +@EnableScheduling // 2.开启定时任务 +public class WorkDayScheduleTask { + @Autowired + private ShowApiService showApiService; + + //每天晚上00:00:01执行{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)} + @Scheduled(cron = "1 0 0 * * ?") + private void configureTasks() { + Date nowDate = new Date(); + SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); + showApiService.initWorkDay(format.format(nowDate)); + System.err.println("执行静态定时任务时间: " + LocalDateTime.now()); + } +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/ShowApiUtil.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/ShowApiUtil.java new file mode 100644 index 0000000000..8e4c8f4de3 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/ShowApiUtil.java @@ -0,0 +1,106 @@ +package com.epmet.utils; + +import com.alibaba.fastjson.JSONObject; +import com.epmet.constant.ShowApiConstant; +import com.epmet.result.DayDetailResultDTO; +import com.epmet.result.HolidayResultDTO; +import com.epmet.result.ShowApiResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.net.URL; + +/** + * @Description 万维易源-api工具类 + * @Author yinzuomei + * @Date 2020/5/11 15:55 + */ +public class ShowApiUtil { + private static Logger logger = LoggerFactory.getLogger(ShowApiUtil.class); + + /** + * @return com.epmet.result.showapi.ShowApiResult + * @param day 输入格式yyyyMMdd。如果不输入,则默认是当天 + * @Author yinzuomei + * @Description 2020年我国节假日查询 + * @Date 2020/5/11 21:20 + **/ + public static DayDetailResultDTO queryHolidayV2020(String day) throws Exception { + String url=String.format(ShowApiConstant.QUERY_HOLIDAY_V2020,ShowApiConstant.SHOWAPI_APPID,ShowApiConstant.SHOWAPI_SIGN,day); + logger.info(String.format("(1)QUERY_HOLIDAY_V2020入参:%s",url)); + URL u = new URL(url); + InputStream in = u.openStream(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + try { + byte buf[] = new byte[1024]; + int read = 0; + while ((read = in .read(buf)) > 0) { + out.write(buf, 0, read); + } + } finally { + if ( in != null) { + in .close(); + } + } + byte b[] = out.toByteArray(); + String resultStr=new String(b, "utf-8"); + logger.info(String.format("(2)QUERY_HOLIDAY_V2020返参:%s",resultStr)); + JSONObject jsonobject = JSONObject.parseObject(resultStr); + ShowApiResult showApiResult= (ShowApiResult)JSONObject.toJavaObject(jsonobject, ShowApiResult.class); + logger.info(showApiResult.toString()); + + JSONObject holidayJsonObject = JSONObject.parseObject(showApiResult.getShowapi_res_body()); + DayDetailResultDTO dayDetailResultDTO= (DayDetailResultDTO)JSONObject.toJavaObject(holidayJsonObject, DayDetailResultDTO.class); + logger.info(String.format("(3)QUERY_HOLIDAY_V2020返参:%s",dayDetailResultDTO.toString())); + return dayDetailResultDTO; + } + + + /** + * @return com.epmet.result.HolidayResultDTO + * @param year + * @Author yinzuomei + * @Description 根据年份查询当年的节假日列表 + * @Date 2020/5/11 22:58 + **/ + public static HolidayResultDTO holidayList(String year) throws Exception { + String url=String.format(ShowApiConstant.HOLIDAY_LIST,ShowApiConstant.SHOWAPI_APPID,ShowApiConstant.SHOWAPI_SIGN,year); + logger.info(String.format("(1)HOLIDAY_LIST入参:%s",url)); + URL u = new URL(url); + InputStream in = u.openStream(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + try { + byte buf[] = new byte[1024]; + int read = 0; + while ((read = in .read(buf)) > 0) { + out.write(buf, 0, read); + } + } finally { + if ( in != null) { + in .close(); + } + } + byte b[] = out.toByteArray(); + String resultStr=new String(b, "utf-8"); + logger.info(String.format("(2)HOLIDAY_LIST返参:%s",resultStr)); + JSONObject jsonobject = JSONObject.parseObject(resultStr); + ShowApiResult showApiResult= (ShowApiResult)JSONObject.toJavaObject(jsonobject, ShowApiResult.class); + logger.info(showApiResult.toString()); + + JSONObject holidayJsonObject = JSONObject.parseObject(showApiResult.getShowapi_res_body()); + HolidayResultDTO holidayResultDTO= (HolidayResultDTO)JSONObject.toJavaObject(holidayJsonObject, HolidayResultDTO.class); + logger.info(String.format("(3)HOLIDAY_LIST返参:%s",holidayResultDTO.toString())); + return holidayResultDTO; + } + public static void main(String[] args) { + try { +// queryHolidayV2020("20200503"); + holidayList("2020"); + } catch (Exception e) { + e.printStackTrace(); + } + } +} + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/resources/bootstrap.yml b/epmet-module/epmet-common-service/common-service-server/src/main/resources/bootstrap.yml new file mode 100644 index 0000000000..15b337db7c --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/resources/bootstrap.yml @@ -0,0 +1,106 @@ +server: + port: @server.port@ + servlet: + context-path: /commonservice + +spring: + main: + allow-bean-definition-overriding: true + application: + name: common-service-server + #环境 dev|test|prod + profiles: + active: dev + messages: + encoding: UTF-8 + basename: i18n/messages,i18n/messages_common + jackson: + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss + redis: + database: @spring.redis.index@ + host: @spring.redis.host@ + port: @spring.redis.port@ + password: @spring.redis.password@ + timeout: 30s + datasource: + druid: + #MySQL + driver-class-name: com.mysql.cj.jdbc.Driver + url: @spring.datasource.druid.url@ + username: @spring.datasource.druid.username@ + password: @spring.datasource.druid.password@ + cloud: + nacos: + discovery: + server-addr: @nacos.server-addr@ + #nacos的命名空间ID,默认是public + namespace: @nacos.discovery.namespace@ + #不把自己注册到注册中心的地址 + register-enabled: @nacos.register-enabled@ + ip: @nacos.ip@ + config: + enabled: @nacos.config-enabled@ + server-addr: @nacos.server-addr@ + namespace: @nacos.config.namespace@ + group: @nacos.config.group@ + file-extension: yaml + #指定共享配置,且支持动态刷新 +# ext-config: +# - data-id: datasource.yaml +# group: ${spring.cloud.nacos.config.group} +# refresh: true +# - data-id: common.yaml +# group: ${spring.cloud.nacos.config.group} +# refresh: true +management: + endpoints: + web: + exposure: + include: "*" + endpoint: + health: + show-details: ALWAYS + +mybatis-plus: + mapper-locations: classpath:/mapper/**/*.xml + #实体扫描,多个package用逗号或者分号分隔 + typeAliasesPackage: com.epmet.modules.*.entity + global-config: + #数据库相关配置 + db-config: + #主键类型 AUTO:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID"; + id-type: ID_WORKER + #字段策略 IGNORED:"忽略判断",NOT_NULL:"非 NULL 判断"),NOT_EMPTY:"非空判断" + field-strategy: NOT_NULL + #驼峰下划线转换 + column-underline: true + banner: false + #原生配置 + configuration: + map-underscore-to-camel-case: true + cache-enabled: false + call-setters-on-nulls: true + jdbc-type-for-null: 'null' + +feign: + hystrix: + enabled: true + client: + config: + default: + loggerLevel: BASIC + httpclient: + enabled: true + +hystrix: + command: + default: + execution: + isolation: + thread: + timeoutInMilliseconds: 60000 #缺省为1000 + +ribbon: + ReadTimeout: 300000 + ConnectTimeout: 300000 diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/resources/db/migration/epmet_common_service.sql b/epmet-module/epmet-common-service/common-service-server/src/main/resources/db/migration/epmet_common_service.sql new file mode 100644 index 0000000000..1e2005a491 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/resources/db/migration/epmet_common_service.sql @@ -0,0 +1,418 @@ +/* + Navicat Premium Data Transfer + + Source Server : 党群e事通开发库!!!!! + Source Server Type : MySQL + Source Server Version : 50728 + Source Host : 192.168.1.130:3306 + Source Schema : epmet_common_service + + Target Server Type : MySQL + Target Server Version : 50728 + File Encoding : 65001 + + Date: 12/05/2020 15:55:09 +*/ +CREATE DATABASE `epmet_common_service` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci'; + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for calender +-- ---------------------------- +DROP TABLE IF EXISTS `calender`; +CREATE TABLE `calender` ( + `ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键', + `RET_CODE` int(11) DEFAULT NULL COMMENT '0表示成功,其他为失败', + `DAY` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '查询的日期:20200510', + `QUERY_DATE` date NOT NULL COMMENT '查询的日期:2020-05-10', + `WEEKDAY` int(11) DEFAULT NULL COMMENT '星期几的数字', + `BEGIN` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '节日或周末开始时间,如果是工作日,此字段为空串', + `END` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '节日或周末结束时间,如果是工作日,此字段为空串', + `HOLIDAY_REMARK` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '节日备注', + `TYPE` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '1为工作日,2为周末,3为节假日', + `TYPE_NAME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '工作日,周末,节假日', + `HOLIDAY` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '节日名称,工作日时显示“无”,周末时显示“周末”,节日时显示节日名称', + `EN` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '星期几的英文名', + `CN` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '星期几的中文名', + `DEL_FLAG` tinyint(1) DEFAULT NULL COMMENT '是否删除,0:未删除,1:已删除', + `REVISION` int(10) DEFAULT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建者id', + `CREATED_TIME` datetime(0) DEFAULT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '更新者id', + `UPDATED_TIME` datetime(0) DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of calender +-- ---------------------------- +INSERT INTO `calender` VALUES ('00772611b7a8b243e7483ac969069ad7', 0, '20200127', '2020-01-27', 1, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:38'); +INSERT INTO `calender` VALUES ('015563ec89e212d364f68f4f3403c5d5', 0, '20200923', '2020-09-23', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:53'); +INSERT INTO `calender` VALUES ('01e663161394a1f140492a5f7d8b97eb', 0, '20201003', '2020-10-03', 6, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:03'); +INSERT INTO `calender` VALUES ('04086dfd9da61e4458a707e3acd0332d', 0, '20201126', '2020-11-26', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:08:57'); +INSERT INTO `calender` VALUES ('043fbcccb3041e7bdb91f39ec1a034d0', 0, '20201218', '2020-12-18', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:19'); +INSERT INTO `calender` VALUES ('04c71d105ee141fdbdf861a3bd6909a8', 0, '20200920', '2020-09-20', 7, '20200919', '20200920', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:50'); +INSERT INTO `calender` VALUES ('0557c67c004e2fceb263710a83085b9c', 0, '20200530', '2020-05-30', 6, '20200530', '20200531', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:47'); +INSERT INTO `calender` VALUES ('05f13378cf30526a739ba4a106a1afdf', 0, '20200625', '2020-06-25', 4, '20200625', '20200627', '6月25日至27日放假调休,共3天。6月28日(星期日)上班。', '3', '节假日', '端午节', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:13'); +INSERT INTO `calender` VALUES ('0618e52ca29f63a1ea3abf379616212b', 0, '20200713', '2020-07-13', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:34'); +INSERT INTO `calender` VALUES ('07a46691ca6a6d7e3976066a4f7f34a5', 0, '20201204', '2020-12-04', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:05'); +INSERT INTO `calender` VALUES ('07a71b25734c80c43a45e950d3fa2e0c', 0, '20200622', '2020-06-22', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:10'); +INSERT INTO `calender` VALUES ('07e47b290d4406e5ebd3febe83c487b6', 0, '20200727', '2020-07-27', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:55'); +INSERT INTO `calender` VALUES ('083ecab55950baf3d88ae1f74cafc0ba', 0, '20201022', '2020-10-22', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:22'); +INSERT INTO `calender` VALUES ('08dbe97e3bc9093aa5c4ff86f1684bc0', 0, '20201012', '2020-10-12', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:12'); +INSERT INTO `calender` VALUES ('0a864c30779ddb5bc8a745a48c3bf3c9', 0, '20201010', '2020-10-10', 6, '', '', '调休', '1', '工作日', '无', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:10'); +INSERT INTO `calender` VALUES ('0b4aacfe39f3a811cfd155aa260cecee', 0, '20200324', '2020-03-24', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:35'); +INSERT INTO `calender` VALUES ('0b827ba3f7378db479ff1a7ab903e078', 0, '20200429', '2020-04-29', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:16'); +INSERT INTO `calender` VALUES ('0b8fb4322ecd09d860d86b2c58c43a39', 0, '20200115', '2020-01-15', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:26'); +INSERT INTO `calender` VALUES ('0c9f5fa23d92635f5ed11a7bf6cae56e', 0, '20200909', '2020-09-09', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:39'); +INSERT INTO `calender` VALUES ('0e63308f0414891105084a474d8c769e', 0, '20201127', '2020-11-27', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:08:58'); +INSERT INTO `calender` VALUES ('0f5c75c7e3e1e5ee5c2bd194c90c9871', 0, '20201211', '2020-12-11', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:12'); +INSERT INTO `calender` VALUES ('0fd9e1f8cb216b88c30e1a59ccbda280', 0, '20200219', '2020-02-19', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:01'); +INSERT INTO `calender` VALUES ('1101f3fced7c928de1084da60149ad6e', 0, '20200216', '2020-02-16', 7, '20200215', '20200216', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:58'); +INSERT INTO `calender` VALUES ('11287964df15adc3686181b09d73413c', 0, '20200415', '2020-04-15', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:02'); +INSERT INTO `calender` VALUES ('117d392a4b50198fcc04904783884258', 0, '20200627', '2020-06-27', 6, '20200625', '20200627', '6月25日至27日放假调休,共3天。6月28日(星期日)上班。', '3', '节假日', '端午节', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:15'); +INSERT INTO `calender` VALUES ('11b71e4b502cda8ac2ec1639b34ae7ba', 0, '20200210', '2020-02-10', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:52'); +INSERT INTO `calender` VALUES ('120c79f65227a5e4f6b1eb250ee582d4', 0, '20200402', '2020-04-02', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:44'); +INSERT INTO `calender` VALUES ('1315ab74554c2eada60f990648c727a2', 0, '20200520', '2020-05-20', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:37'); +INSERT INTO `calender` VALUES ('14c0af69f33054a1908b74dcd0014ccc', 0, '20200914', '2020-09-14', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:44'); +INSERT INTO `calender` VALUES ('15788edb4a2b74f6184d09b4bdedc744', 0, '20200618', '2020-06-18', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:06'); +INSERT INTO `calender` VALUES ('15eb046a77104526826011455885ed1e', 0, '20201030', '2020-10-30', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:30'); +INSERT INTO `calender` VALUES ('16ffbe75a5e481b8db707f27cf311938', 0, '20200621', '2020-06-21', 7, '20200620', '20200621', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:09'); +INSERT INTO `calender` VALUES ('177c471557a6f1b166aa0f95154cbdc4', 0, '20200608', '2020-06-08', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:56'); +INSERT INTO `calender` VALUES ('17abef8746f124276dbdfc030ff61242', 0, '20200218', '2020-02-18', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:00'); +INSERT INTO `calender` VALUES ('1beeb2e463a26e9ce9b646ec6f957d46', 0, '20200409', '2020-04-09', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:56'); +INSERT INTO `calender` VALUES ('1ddc589480effe59966c8921648e0b35', 0, '20200701', '2020-07-01', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:19'); +INSERT INTO `calender` VALUES ('1e61f63af7016b8be15d61d7e0234423', 0, '20200620', '2020-06-20', 6, '20200620', '20200621', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:08'); +INSERT INTO `calender` VALUES ('1e6cc5df300bb7b92d46195993f98b18', 0, '20201124', '2020-11-24', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:08:55'); +INSERT INTO `calender` VALUES ('1edc7bcaca576ad95b3a02ae86912fd4', 0, '20200313', '2020-03-13', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:24'); +INSERT INTO `calender` VALUES ('200d6379adf4ffbec93401c740402cb6', 0, '20201109', '2020-11-09', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:40'); +INSERT INTO `calender` VALUES ('2088057fcddf14eb8745f6256bc1dac7', 0, '20201203', '2020-12-03', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:04'); +INSERT INTO `calender` VALUES ('235023dcae390acc4e7321c4e181d704', 0, '20200525', '2020-05-25', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:42'); +INSERT INTO `calender` VALUES ('23e4ecb7cc8a14278a3b290df6d2a25f', 0, '20200616', '2020-06-16', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:04'); +INSERT INTO `calender` VALUES ('24316d9923eff4145bcec276e77c4799', 0, '20201002', '2020-10-02', 5, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:02'); +INSERT INTO `calender` VALUES ('2435690c26aaf4501da48d1e4822621e', 0, '20200802', '2020-08-02', 7, '20200801', '20200802', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:01'); +INSERT INTO `calender` VALUES ('250a13d98c6505c40e4101b75bdf18bc', 0, '20200112', '2020-01-12', 7, '20200111', '20200112', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:23'); +INSERT INTO `calender` VALUES ('25186aec5e48d8271439015d36851953', 0, '20200528', '2020-05-28', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:45'); +INSERT INTO `calender` VALUES ('253d7cbe2043adb6f991764f63b4e40d', 0, '20200812', '2020-08-12', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:11'); +INSERT INTO `calender` VALUES ('260ba059b8beb21bd859e33b709e761f', 0, '20200821', '2020-08-21', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:20'); +INSERT INTO `calender` VALUES ('2639911071b61a79495a9d2b6407dff6', 0, '20200617', '2020-06-17', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:05'); +INSERT INTO `calender` VALUES ('26576a2b746a8ec8d143728d4221aa9e', 0, '20201217', '2020-12-17', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:18'); +INSERT INTO `calender` VALUES ('26d7b7234c6fb53bb18e4177410bd3d9', 0, '20201004', '2020-10-04', 7, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:04'); +INSERT INTO `calender` VALUES ('280714eb7ffab1a0acbe41209cd7dc01', 0, '20200507', '2020-05-07', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:24'); +INSERT INTO `calender` VALUES ('284c8b466b6ac1fd4d362b0ae05e9e2a', 0, '20201206', '2020-12-06', 7, '20201205', '20201206', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:07'); +INSERT INTO `calender` VALUES ('287b7c1aa0790162598f10dbc8346e1c', 0, '20200908', '2020-09-08', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:38'); +INSERT INTO `calender` VALUES ('289838dfb96ddf77a6cfc879474ca8ab', 0, '20201108', '2020-11-08', 7, '20201107', '20201108', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:39'); +INSERT INTO `calender` VALUES ('28bd0ae01f313542f4e46bdbe5aa9409', 0, '20200714', '2020-07-14', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:35'); +INSERT INTO `calender` VALUES ('28ea70a7fef8c4eb9f17b28e29bc817c', 0, '20200205', '2020-02-05', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:47'); +INSERT INTO `calender` VALUES ('2935651d95ad7e4deeda0d382648c25e', 0, '20200910', '2020-09-10', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:40'); +INSERT INTO `calender` VALUES ('295271c37d6000964c0001d131862c1d', 0, '20200420', '2020-04-20', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:07'); +INSERT INTO `calender` VALUES ('2a5c2946835dcf2ee1defe93c3c78a7b', 0, '20200404', '2020-04-04', 6, '20200404', '20200406', '4月4日至6日放假调休,共3天。', '3', '节假日', '清明节', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:46'); +INSERT INTO `calender` VALUES ('2a866f98885a810387e6c3ee61a8741f', 0, '20200213', '2020-02-13', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:55'); +INSERT INTO `calender` VALUES ('2acfc102d2d9d75938ac5df07e106acd', 0, '20201111', '2020-11-11', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:42'); +INSERT INTO `calender` VALUES ('2aea7d3e6fbcc129b62dba7de380ed51', 0, '20200206', '2020-02-06', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:48'); +INSERT INTO `calender` VALUES ('2b0192a253a17e826bbd1d4b03ffe193', 0, '20200221', '2020-02-21', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:03'); +INSERT INTO `calender` VALUES ('2b1b42fa7780f15dc37674f209a029c7', 0, '20200628', '2020-06-28', 7, '', '', '调休', '1', '工作日', '无', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:16'); +INSERT INTO `calender` VALUES ('2b41b96f3a0ab22d51ae44fecf3bcd96', 0, '20201222', '2020-12-22', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:23'); +INSERT INTO `calender` VALUES ('2baba2f670b4c163c5caf4265d57abb3', 0, '20201031', '2020-10-31', 6, '20201031', '20201101', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:31'); +INSERT INTO `calender` VALUES ('2c379162cb1722267b3e476fddeb6635', 0, '20200105', '2020-01-05', 7, '20200104', '20200105', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:16'); +INSERT INTO `calender` VALUES ('2cdabfe51f604876a593080fd774f00b', 0, '20200508', '2020-05-08', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:25'); +INSERT INTO `calender` VALUES ('2da80e1e1b742bff640dbd6ddc34dd0f', 0, '20200422', '2020-04-22', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:09'); +INSERT INTO `calender` VALUES ('2e2391d3a4e48028d544e59df58b957f', 0, '20200117', '2020-01-17', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:28'); +INSERT INTO `calender` VALUES ('31e9754502ee9536d4f7a538db562441', 0, '20200817', '2020-08-17', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:16'); +INSERT INTO `calender` VALUES ('32333db31fe5f85734cccf6de4de3306', 0, '20200629', '2020-06-29', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:17'); +INSERT INTO `calender` VALUES ('325ff6deeab73321c6414bab9d0f92c8', 0, '20201123', '2020-11-23', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:08:54'); +INSERT INTO `calender` VALUES ('32c29f3f2a7357ef1fda873463ce2d51', 0, '20200524', '2020-05-24', 7, '20200523', '20200524', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:41'); +INSERT INTO `calender` VALUES ('3338470760bd4a130d4ca00b48f1a307', 0, '20200228', '2020-02-28', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:10'); +INSERT INTO `calender` VALUES ('3400841da13e6120a07d38e85f69b09a', 0, '20201013', '2020-10-13', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:13'); +INSERT INTO `calender` VALUES ('373ea083f70ec4983b59b444ea89b5d6', 0, '20200114', '2020-01-14', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:25'); +INSERT INTO `calender` VALUES ('37bb0ba68b6c078976749b0e6c864fac', 0, '20201212', '2020-12-12', 6, '20201212', '20201213', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:13'); +INSERT INTO `calender` VALUES ('37d2de5e0bbfebc54132b6cc9717ba19', 0, '20200109', '2020-01-09', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:20'); +INSERT INTO `calender` VALUES ('37f2113f4305b0507400b745e94b2e25', 0, '20200720', '2020-07-20', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:48'); +INSERT INTO `calender` VALUES ('381483f9bb8f6bd2f0f74b8626e151ca', 0, '20200131', '2020-01-31', 5, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:42'); +INSERT INTO `calender` VALUES ('388c1e01adf0e544056f99d2aa14554b', 0, '20200911', '2020-09-11', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:41'); +INSERT INTO `calender` VALUES ('399c52c96937cfb5b8e33806c81bf7df', 0, '20201006', '2020-10-06', 2, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:06'); +INSERT INTO `calender` VALUES ('3a79f5f0d110f04ffd2cf63074722cf8', 0, '20201209', '2020-12-09', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:10'); +INSERT INTO `calender` VALUES ('3b15fed402667e5d6c9e36dfee52402e', 0, '20201130', '2020-11-30', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:01'); +INSERT INTO `calender` VALUES ('3c2540b55ef42725a194204c9fe00ed7', 0, '20200927', '2020-09-27', 7, '', '', '调休', '1', '工作日', '无', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:57'); +INSERT INTO `calender` VALUES ('3e5edafa4fdeecea63a8b3c816a9c5da', 0, '20200411', '2020-04-11', 6, '20200411', '20200412', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:58'); +INSERT INTO `calender` VALUES ('3e942bd8b06010b4d4d93d0ab4f2359b', 0, '20200417', '2020-04-17', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:04'); +INSERT INTO `calender` VALUES ('3ef43497b5de651f4e68571a2025f84d', 0, '20200425', '2020-04-25', 6, '20200425', '20200426', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:12'); +INSERT INTO `calender` VALUES ('405c8b61fff45de8c43e4ad159e0bcf9', 0, '20200406', '2020-04-06', 1, '20200404', '20200406', '4月4日至6日放假调休,共3天。', '3', '节假日', '清明节', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:54'); +INSERT INTO `calender` VALUES ('41ac7c37cd7c785cbd367efaf7c0a8d9', 0, '20200905', '2020-09-05', 6, '20200905', '20200906', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:35'); +INSERT INTO `calender` VALUES ('41b172f48b8f899f3079c53740d91959', 0, '20200410', '2020-04-10', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:57'); +INSERT INTO `calender` VALUES ('425504d92c453c4816de11faaaf46fa8', 0, '20201121', '2020-11-21', 6, '20201121', '20201122', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:52'); +INSERT INTO `calender` VALUES ('4333496d67495985712be0e415b540bf', 0, '20200825', '2020-08-25', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:24'); +INSERT INTO `calender` VALUES ('43a4c8acfce501e1bb93fe94470b4365', 0, '20200102', '2020-01-02', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:13'); +INSERT INTO `calender` VALUES ('43b90b7dfecb085965e93e5f266c0080', 0, '20200119', '2020-01-19', 7, '', '', '调休', '1', '工作日', '无', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:30'); +INSERT INTO `calender` VALUES ('45ab33adabf4c310cb87aa9263f9984f', 0, '20200930', '2020-09-30', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:00'); +INSERT INTO `calender` VALUES ('466174553709b06c8f5d3cc423c706d6', 0, '20200501', '2020-05-01', 5, '20200501', '20200505', '5月1日至5日放假调休,共5天。4月26日(星期日)、5月9日(星期六)上班。', '3', '节假日', '劳动节', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:00', 'fa5e50ca724911eab9c900163e08c0f9', '2020-05-12 13:25:40'); +INSERT INTO `calender` VALUES ('497a55e25d4873f5834277675f455949', 0, '20200814', '2020-08-14', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:13'); +INSERT INTO `calender` VALUES ('49b966643f4e462dabf84f0794252dfb', 0, '20200421', '2020-04-21', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:08'); +INSERT INTO `calender` VALUES ('4abe3faa45c1f2f742f74685fcef3396', 0, '20201014', '2020-10-14', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:14'); +INSERT INTO `calender` VALUES ('4bedb3e95445daeee80e81465404e1a1', 0, '20200222', '2020-02-22', 6, '20200222', '20200223', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:04'); +INSERT INTO `calender` VALUES ('4c07241907b8191fd072d119c0de1499', 0, '20200726', '2020-07-26', 7, '20200725', '20200726', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:54'); +INSERT INTO `calender` VALUES ('4d5ffbc450704e0c34c2937e232327e8', 0, '20200209', '2020-02-09', 7, '20200208', '20200209', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:51'); +INSERT INTO `calender` VALUES ('4d96c864299c75af30bf1ef8abda79c0', 0, '20200907', '2020-09-07', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:37'); +INSERT INTO `calender` VALUES ('4e9708999d7f1c44474a9566f6ef87a3', 0, '20201007', '2020-10-07', 3, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:07'); +INSERT INTO `calender` VALUES ('4ea0549e3df1f00a01d4ed47b6505806', 0, '20201216', '2020-12-16', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:17'); +INSERT INTO `calender` VALUES ('4eaabd3b9a2d7d41bad412f799287a8b', 0, '20200917', '2020-09-17', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:47'); +INSERT INTO `calender` VALUES ('4f44c462d822633211a01f2414dff6b2', 0, '20200719', '2020-07-19', 7, '20200718', '20200719', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:47'); +INSERT INTO `calender` VALUES ('4f771427c832f53dca43d8e12ba5d9f3', 0, '20200706', '2020-07-06', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:24'); +INSERT INTO `calender` VALUES ('4f8e34a9114a839f138cabb7608cd1f9', 0, '20200427', '2020-04-27', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:14'); +INSERT INTO `calender` VALUES ('503739a1645e5c3abd3fc11f32d1f5bc', 0, '20201228', '2020-12-28', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:29'); +INSERT INTO `calender` VALUES ('528b4f7a35799bba7ebcece0c467f5c7', 0, '20201225', '2020-12-25', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:26'); +INSERT INTO `calender` VALUES ('5456c30f69404e853f359afaa2125aed', 0, '20200816', '2020-08-16', 7, '20200815', '20200816', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:15'); +INSERT INTO `calender` VALUES ('55e3cd4240f91ec5ba48f3c4eaa6109a', 0, '20200510', '2020-05-10', 7, '20200509', '20200510', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:27'); +INSERT INTO `calender` VALUES ('5695115b49fad95392b89f921836d50f', 0, '20200808', '2020-08-08', 6, '20200808', '20200809', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:07'); +INSERT INTO `calender` VALUES ('56bccf7bc2544f4af86ac20aa8fa19a3', 0, '20200724', '2020-07-24', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:52'); +INSERT INTO `calender` VALUES ('572647c501e6d4b1872f16e962f33396', 0, '20201229', '2020-12-29', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:30'); +INSERT INTO `calender` VALUES ('574df73fc7f7f71cbd0c99756e611fe3', 0, '20200413', '2020-04-13', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:00'); +INSERT INTO `calender` VALUES ('578a1bfdf1157fdf6e25ea055d0d2fc0', 0, '20201027', '2020-10-27', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:27'); +INSERT INTO `calender` VALUES ('5799f19de34ce3cc709572a3e95637c8', 0, '20200929', '2020-09-29', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:59'); +INSERT INTO `calender` VALUES ('579a9b8b394683fb859d0d678a0a911f', 0, '20200122', '2020-01-22', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:33'); +INSERT INTO `calender` VALUES ('57c0d73f761c533561d7a02e06b7334a', 0, '20201113', '2020-11-13', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:44'); +INSERT INTO `calender` VALUES ('5829c9a0cf12a74c18f88dd365aceb0a', 0, '20201129', '2020-11-29', 7, '20201128', '20201129', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:00'); +INSERT INTO `calender` VALUES ('5a9addfc372e1b260d1469e441941e1e', 0, '20201028', '2020-10-28', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:28'); +INSERT INTO `calender` VALUES ('5c2ea6d391dea3fc37204df982cc0085', 0, '20200830', '2020-08-30', 7, '20200829', '20200830', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:29'); +INSERT INTO `calender` VALUES ('5c6a4083b28afe7bcb5d7c77af36f7db', 0, '20200601', '2020-06-01', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:49'); +INSERT INTO `calender` VALUES ('5e2c90dd98b0e1c5da3834fdcf06041b', 0, '20200613', '2020-06-13', 6, '20200613', '20200614', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:01'); +INSERT INTO `calender` VALUES ('5e3577c73f5222322473a422467720a3', 0, '20200702', '2020-07-02', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:20'); +INSERT INTO `calender` VALUES ('5ee07ad9dd5cc393059670189656fb56', 0, '20200405', '2020-04-05', 7, '20200404', '20200406', '4月4日至6日放假调休,共3天。', '3', '节假日', '清明节', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:47'); +INSERT INTO `calender` VALUES ('5f36c0eb792ba6df86fbf1904757723b', 0, '20200604', '2020-06-04', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:52'); +INSERT INTO `calender` VALUES ('5fe174bb9d525769c189d4533eba68ae', 0, '20200813', '2020-08-13', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:12'); +INSERT INTO `calender` VALUES ('5fe27a25bcb9b7700c2abb1457125a96', 0, '20200315', '2020-03-15', 7, '20200314', '20200315', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:26'); +INSERT INTO `calender` VALUES ('602b1df285eb9ed688fa72bd550c080e', 0, '20200818', '2020-08-18', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:17'); +INSERT INTO `calender` VALUES ('60b4e174c6678fd476f0c7216f33c737', 0, '20200605', '2020-06-05', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:53'); +INSERT INTO `calender` VALUES ('6183f599f32bba424f0ad2412c6de8fa', 0, '20200217', '2020-02-17', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:59'); +INSERT INTO `calender` VALUES ('61b69da6b60c57ad9b04e60548f94738', 0, '20200309', '2020-03-09', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:20'); +INSERT INTO `calender` VALUES ('62286591902fe09200caaf0c96fd3c32', 0, '20200722', '2020-07-22', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:50'); +INSERT INTO `calender` VALUES ('627101bb1e345917fa876bf0b3059ca2', 0, '20200311', '2020-03-11', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:22'); +INSERT INTO `calender` VALUES ('638699eec96c32ca687ec14ed69bd9b5', 0, '20200314', '2020-03-14', 6, '20200314', '20200315', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:25'); +INSERT INTO `calender` VALUES ('639ad0b81360034a767bcc6f1fc2da8d', 0, '20200301', '2020-03-01', 7, '20200229', '20200301', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:12'); +INSERT INTO `calender` VALUES ('63d607d61d097a75ce89070129996c52', 0, '20200823', '2020-08-23', 7, '20200822', '20200823', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:22'); +INSERT INTO `calender` VALUES ('63f0c4adefad4300739b0154f97d5fb0', 0, '20200906', '2020-09-06', 7, '20200905', '20200906', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:36'); +INSERT INTO `calender` VALUES ('63fecd4c197a5df375c5e1a19d792bf9', 0, '20200805', '2020-08-05', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:04'); +INSERT INTO `calender` VALUES ('6423caaf3807ff6ac86ab8f6d118cc56', 0, '20200822', '2020-08-22', 6, '20200822', '20200823', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:21'); +INSERT INTO `calender` VALUES ('643d46399faa6923f376464ff9476e8e', 0, '20200318', '2020-03-18', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:29'); +INSERT INTO `calender` VALUES ('650d6c705a0bdec2f1e41500834bdd3d', 0, '20200916', '2020-09-16', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:46'); +INSERT INTO `calender` VALUES ('65afbf89b4a18c263fbc82748782dad1', 0, '20201021', '2020-10-21', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:21'); +INSERT INTO `calender` VALUES ('65ecd41d0d8fc4481cf453195f69602c', 0, '20200928', '2020-09-28', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:58'); +INSERT INTO `calender` VALUES ('66d928d9ab3a6308827572f696173aa7', 0, '20201208', '2020-12-08', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:09'); +INSERT INTO `calender` VALUES ('677c9a5f08ef2e4cead832fb34a50507', 0, '20200913', '2020-09-13', 7, '20200912', '20200913', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:43'); +INSERT INTO `calender` VALUES ('67eb65a1f399bf18efa389761841b8e3', 0, '20200926', '2020-09-26', 6, '20200926', '20200927', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:56'); +INSERT INTO `calender` VALUES ('69a42744623b380b6f93f0a4ee25a012', 0, '20200407', '2020-04-07', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:54'); +INSERT INTO `calender` VALUES ('6acb73aa51e2e6a4c2c7542b2d6da65c', 0, '20200214', '2020-02-14', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:56'); +INSERT INTO `calender` VALUES ('6aec4a9d14bb264f360e0d5404cce0e4', 0, '20200513', '2020-05-13', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:30'); +INSERT INTO `calender` VALUES ('6b782599cb98a39c885e9bc981b8cb8d', 0, '20201024', '2020-10-24', 6, '20201024', '20201025', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:24'); +INSERT INTO `calender` VALUES ('6ca72d609d74eaada1a1f78c58b6bf8a', 0, '20200207', '2020-02-07', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:49'); +INSERT INTO `calender` VALUES ('6d435cb2af1d32985d9cb4648356bc3a', 0, '20200116', '2020-01-16', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:27'); +INSERT INTO `calender` VALUES ('6e9d5b2323b457108b17268a2aa15727', 0, '20201213', '2020-12-13', 7, '20201212', '20201213', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:14'); +INSERT INTO `calender` VALUES ('6ff46ba71c64fb5ab07fb3170966e807', 0, '20200527', '2020-05-27', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:44'); +INSERT INTO `calender` VALUES ('70936a4d29c398e5056aeae3ad3f7bee', 0, '20201017', '2020-10-17', 6, '20201017', '20201018', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:17'); +INSERT INTO `calender` VALUES ('711f8295c0c724983542b49232f32f1b', 0, '20201112', '2020-11-12', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:43'); +INSERT INTO `calender` VALUES ('713cef5cea8098aa265216a067413df1', 0, '20200211', '2020-02-11', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:53'); +INSERT INTO `calender` VALUES ('7167b3c5a72fc825c45ff0c40b005ff2', 0, '20200304', '2020-03-04', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:15'); +INSERT INTO `calender` VALUES ('722ce498729fbaf200815e69ce40fb8e', 0, '20200506', '2020-05-06', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:23'); +INSERT INTO `calender` VALUES ('727131cfdbed81741c64ec6c37dfe0ab', 0, '20201226', '2020-12-26', 6, '20201226', '20201227', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:27'); +INSERT INTO `calender` VALUES ('72b063e24e0a248571062abf7b54a008', 0, '20200709', '2020-07-09', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:30'); +INSERT INTO `calender` VALUES ('74477c2f229cc5b97186858a93e94ca7', 0, '20200828', '2020-08-28', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:27'); +INSERT INTO `calender` VALUES ('74a40753287c8dbbcd336b337642bec1', 0, '20200118', '2020-01-18', 6, '20200118', '20200119', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:29'); +INSERT INTO `calender` VALUES ('7541358d6048f240b9dc7e736240d214', 0, '20200416', '2020-04-16', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:03'); +INSERT INTO `calender` VALUES ('75e091dccff0d94d6cce9baeb3a4fd88', 0, '20201223', '2020-12-23', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:24'); +INSERT INTO `calender` VALUES ('77fb505be58a4faa56005e9745d2ffbf', 0, '20201016', '2020-10-16', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:16'); +INSERT INTO `calender` VALUES ('77fe0cbba30685282bd732b45e0c478d', 0, '20201119', '2020-11-19', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:50'); +INSERT INTO `calender` VALUES ('7834e6a35a8de08c7091f39d5960368f', 0, '20200321', '2020-03-21', 6, '20200321', '20200322', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:32'); +INSERT INTO `calender` VALUES ('7af0abffbcf9a9cbd2c19bf84208dd0c', 0, '20201202', '2020-12-02', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:03'); +INSERT INTO `calender` VALUES ('7bfbdb63ef08e278de7d27b5df3320bf', 0, '20200225', '2020-02-25', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:07'); +INSERT INTO `calender` VALUES ('7d73458d55241b8d463626189344dc0f', 0, '20200731', '2020-07-31', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:59'); +INSERT INTO `calender` VALUES ('7e93d473eb0660db990425f1f66d0d89', 0, '20201221', '2020-12-21', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:22'); +INSERT INTO `calender` VALUES ('7ec9ba846980898696189790f44b12f9', 0, '20200522', '2020-05-22', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:39'); +INSERT INTO `calender` VALUES ('7f994602a59a4eae7319a7bfe1b0842b', 0, '20201009', '2020-10-09', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:09'); +INSERT INTO `calender` VALUES ('8160bc4a4ddb02dd1ed50d4810b1afd0', 0, '20201214', '2020-12-14', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:15'); +INSERT INTO `calender` VALUES ('82615c65b4719ba5ddb3ff50e51cbbab', 0, '20200801', '2020-08-01', 6, '20200801', '20200802', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:00'); +INSERT INTO `calender` VALUES ('84cb6529a88b9042aaf2d6ff24f24242', 0, '20201120', '2020-11-20', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:51'); +INSERT INTO `calender` VALUES ('8525e5587c3b0e993f9cb7318fbe9069', 0, '20200414', '2020-04-14', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:01'); +INSERT INTO `calender` VALUES ('894e892afc0fa37ef2d04b97f59197e3', 0, '20200223', '2020-02-23', 7, '20200222', '20200223', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:05'); +INSERT INTO `calender` VALUES ('89a5585272d7f73536e7f94f8d466b60', 0, '20200208', '2020-02-08', 6, '20200208', '20200209', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:50'); +INSERT INTO `calender` VALUES ('8a345d642de6a7599b7793912e7d0dc6', 0, '20201104', '2020-11-04', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:35'); +INSERT INTO `calender` VALUES ('8a9375f65b259543b92262ef09cef9a6', 0, '20200922', '2020-09-22', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:52'); +INSERT INTO `calender` VALUES ('8fd168963beed42c166e89068b2356aa', 0, '20200302', '2020-03-02', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:13'); +INSERT INTO `calender` VALUES ('9003359311238972047df6792ae036b1', 0, '20200918', '2020-09-18', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:48'); +INSERT INTO `calender` VALUES ('9018aed1fb8bab39ef8b0d890cb917c3', 0, '20201107', '2020-11-07', 6, '20201107', '20201108', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:38'); +INSERT INTO `calender` VALUES ('905c4a507f375f4982d1899e7af08d92', 0, '20200526', '2020-05-26', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:43'); +INSERT INTO `calender` VALUES ('911212b3d29c571198b06485e4e22abb', 0, '20200227', '2020-02-27', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:09'); +INSERT INTO `calender` VALUES ('9291313a667d094d501c47dee9bf4a1a', 0, '20200915', '2020-09-15', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:45'); +INSERT INTO `calender` VALUES ('93e4caa95884e65d47d49074cad1fa07', 0, '20200815', '2020-08-15', 6, '20200815', '20200816', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:14'); +INSERT INTO `calender` VALUES ('957a5fd2df242bc4e8e7b6eb4d155894', 0, '20200305', '2020-03-05', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:16'); +INSERT INTO `calender` VALUES ('957c9224115ba031b9bc5ef8263378e2', 0, '20201103', '2020-11-03', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:34'); +INSERT INTO `calender` VALUES ('962ea61a07c55ab064f3cea26a5f04e3', 0, '20201224', '2020-12-24', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:25'); +INSERT INTO `calender` VALUES ('965b2c9ea31049e79f8083af4b158b1f', 0, '20200104', '2020-01-04', 6, '20200104', '20200105', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:15'); +INSERT INTO `calender` VALUES ('96b159463a35806414a361e65d18d75f', 0, '20201011', '2020-10-11', 7, '20201010', '20201011', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:11'); +INSERT INTO `calender` VALUES ('972dce32107b1d4544d1cbcbe080fdda', 0, '20201125', '2020-11-25', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:08:56'); +INSERT INTO `calender` VALUES ('9747a58c8b33a35fc5b17cafe0007089', 0, '20200419', '2020-04-19', 7, '20200418', '20200419', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:06'); +INSERT INTO `calender` VALUES ('97a6ae19ff9ff2080e3466fe2f64d0d6', 0, '20200229', '2020-02-29', 6, '20200229', '20200301', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:11'); +INSERT INTO `calender` VALUES ('98cb573a23f892db776cb051edf770a8', 0, '20200312', '2020-03-12', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:23'); +INSERT INTO `calender` VALUES ('9944c3a188f8a511c556da17e90c99e6', 0, '20201220', '2020-12-20', 7, '20201219', '20201220', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:21'); +INSERT INTO `calender` VALUES ('996d36d081ba61239fd8c972016a30bf', 0, '20200723', '2020-07-23', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:51'); +INSERT INTO `calender` VALUES ('99a15f8af7817ccaa311d20c5114d5b3', 0, '20200716', '2020-07-16', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:44'); +INSERT INTO `calender` VALUES ('9a2ec07e2e3a9a4a6a5368073bd3b85e', 0, '20201101', '2020-11-01', 7, '20201031', '20201101', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:32'); +INSERT INTO `calender` VALUES ('9ad9626d555a3a8140ef0e1d5d02ce76', 0, '20201015', '2020-10-15', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:15'); +INSERT INTO `calender` VALUES ('9c2542eb5ef7c08d3f82cce32e7e0c18', 0, '20200107', '2020-01-07', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:18'); +INSERT INTO `calender` VALUES ('9c4b4bc32bb61d9da24c9a90fa524d77', 0, '20200602', '2020-06-02', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:50'); +INSERT INTO `calender` VALUES ('9c9ac3c629ae1b5b370e0963a8449f54', 0, '20200226', '2020-02-26', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:08'); +INSERT INTO `calender` VALUES ('9d0f767f9d0393389a7c077737d07784', 0, '20200804', '2020-08-04', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:03'); +INSERT INTO `calender` VALUES ('9de2dfaf07e74819a60e1d52e0de8155', 0, '20200121', '2020-01-21', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:32'); +INSERT INTO `calender` VALUES ('9f61e0b49c7d46bb5fe926b9fd09d049', 0, '20200824', '2020-08-24', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:23'); +INSERT INTO `calender` VALUES ('a1f25a7e1f9c72e1e041ea0b0f4baabb', 0, '20200531', '2020-05-31', 7, '20200530', '20200531', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:48'); +INSERT INTO `calender` VALUES ('a220f73c1e4c1a8949c3e0b3f6588113', 0, '20201117', '2020-11-17', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:48'); +INSERT INTO `calender` VALUES ('a26694dba8bc36ac7d2f005976c66682', 0, '20200715', '2020-07-15', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:44'); +INSERT INTO `calender` VALUES ('a2f3859d691ba6e2e20eeaf50a2ac2e8', 0, '20201116', '2020-11-16', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:47'); +INSERT INTO `calender` VALUES ('a38af258bd29555cf080683ae15afa25', 0, '20200212', '2020-02-12', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:54'); +INSERT INTO `calender` VALUES ('a39fb936fcb1c921185b9576fe6deec3', 0, '20200712', '2020-07-12', 7, '20200711', '20200712', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:33'); +INSERT INTO `calender` VALUES ('a3c483ade5847a2fc1134fa7623d8299', 0, '20201001', '2020-10-01', 4, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:01'); +INSERT INTO `calender` VALUES ('a4422d3af0500379a2e50de1e17ed777', 0, '20200113', '2020-01-13', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:24'); +INSERT INTO `calender` VALUES ('a6e84df4f6ba1e4226a26a6ec866dd0c', 0, '20200707', '2020-07-07', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:25'); +INSERT INTO `calender` VALUES ('a6e890984e034c980287720f9d0fcaf3', 0, '20200329', '2020-03-29', 7, '20200328', '20200329', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:40'); +INSERT INTO `calender` VALUES ('a7192be90a5771777b4b45ae8ce3f81a', 0, '20200106', '2020-01-06', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:17'); +INSERT INTO `calender` VALUES ('a74e5bd1c6c789686444f821ca41ecfd', 0, '20200327', '2020-03-27', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:38'); +INSERT INTO `calender` VALUES ('a8a42e37b75deb49a8e9ec5d5e447420', 0, '20200220', '2020-02-20', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:02'); +INSERT INTO `calender` VALUES ('a8e78ba44f004579851bef77937169ff', 0, '20200919', '2020-09-19', 6, '20200919', '20200920', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:49'); +INSERT INTO `calender` VALUES ('a988f55221d30358ebd514800f18a729', 0, '20200704', '2020-07-04', 6, '20200704', '20200705', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:22'); +INSERT INTO `calender` VALUES ('a9a8f9d624a7c4fd69edf3d74147694b', 0, '20200623', '2020-06-23', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:11'); +INSERT INTO `calender` VALUES ('ab979f394ce5d92518f3bc19d7717533', 0, '20200128', '2020-01-28', 2, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:39'); +INSERT INTO `calender` VALUES ('abd19dddb8395cb60a6a86101bfe1e37', 0, '20200514', '2020-05-14', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:31'); +INSERT INTO `calender` VALUES ('acaca3af51abaf9e27809f496c5526d8', 0, '20201020', '2020-10-20', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:20'); +INSERT INTO `calender` VALUES ('ad20289feb817e89c88eefd2e32eb8e7', 0, '20200512', '2020-05-12', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 15:13:00', 'APP_USER', '2020-05-12 15:20:16'); +INSERT INTO `calender` VALUES ('ad43595b890c2506f0395701872dbd28', 0, '20201025', '2020-10-25', 7, '20201024', '20201025', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:25'); +INSERT INTO `calender` VALUES ('ad4cef1494372f2916e615e33a9786b2', 0, '20200319', '2020-03-19', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:30'); +INSERT INTO `calender` VALUES ('ae219cfaf884e87bcfe43169351c376e', 0, '20201227', '2020-12-27', 7, '20201226', '20201227', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:28'); +INSERT INTO `calender` VALUES ('ae7abb91187d64643028e15d565a8af5', 0, '20200322', '2020-03-22', 7, '20200321', '20200322', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:33'); +INSERT INTO `calender` VALUES ('aefdc740c53135b161bb1cf856182c82', 0, '20200323', '2020-03-23', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:34'); +INSERT INTO `calender` VALUES ('af558b6871e0bbc9f7849d753834d743', 0, '20200310', '2020-03-10', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:21'); +INSERT INTO `calender` VALUES ('af5c4970e8c2ebc91b3dc3e8c86a6685', 0, '20201128', '2020-11-28', 6, '20201128', '20201129', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:08:59'); +INSERT INTO `calender` VALUES ('af92d34b56bd10bb4053d748c7369afe', 0, '20200607', '2020-06-07', 7, '20200606', '20200607', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:55'); +INSERT INTO `calender` VALUES ('b001a9d059daf65591410098e01ab9fc', 0, '20200624', '2020-06-24', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:12'); +INSERT INTO `calender` VALUES ('b1cdcd8ae1a8d664bef145d22748ca12', 0, '20201207', '2020-12-07', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:08'); +INSERT INTO `calender` VALUES ('b3a48d7a40374388c3fbe8ce334fff79', 0, '20200108', '2020-01-08', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:19'); +INSERT INTO `calender` VALUES ('b50e17770f2d938b07592556975c6fae', 0, '20200921', '2020-09-21', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:51'); +INSERT INTO `calender` VALUES ('b5626f521fd021963129722902b8eed5', 0, '20200320', '2020-03-20', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:31'); +INSERT INTO `calender` VALUES ('b569b83a1ac18c0946cb497af732462e', 0, '20200328', '2020-03-28', 6, '20200328', '20200329', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:39'); +INSERT INTO `calender` VALUES ('b6002c882de5667ad1cfd209a3f6470e', 0, '20201205', '2020-12-05', 6, '20201205', '20201206', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:06'); +INSERT INTO `calender` VALUES ('b72f5e80d3af1c0b304c852677911f9a', 0, '20201102', '2020-11-02', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:33'); +INSERT INTO `calender` VALUES ('b7e0b1301db848599b7f795f5df43bc8', 0, '20200201', '2020-02-01', 6, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:43'); +INSERT INTO `calender` VALUES ('b7eaea10818d42112597e33f9a4eda43', 0, '20200827', '2020-08-27', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:26'); +INSERT INTO `calender` VALUES ('b802c436d0a48141936a24cada58790d', 0, '20200326', '2020-03-26', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:37'); +INSERT INTO `calender` VALUES ('b80adb6cbd61dae541d1f1ca44e610ea', 0, '20200519', '2020-05-19', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:36'); +INSERT INTO `calender` VALUES ('ba39168e4dbd363f0f7d37dd5a5d0559', 0, '20200703', '2020-07-03', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:21'); +INSERT INTO `calender` VALUES ('bbd1953264041dcd491e3b87b533b985', 0, '20200202', '2020-02-02', 7, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:44'); +INSERT INTO `calender` VALUES ('bca5f780c44b64cf9fd6a78017fc9c76', 0, '20200502', '2020-05-02', 6, '20200501', '20200505', '5月1日至5日放假调休,共5天。4月26日(星期日)、5月9日(星期六)上班。', '3', '节假日', '劳动节', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:19'); +INSERT INTO `calender` VALUES ('bd4bf9f82d91d2196757ebba7bc5e15c', 0, '20200826', '2020-08-26', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:25'); +INSERT INTO `calender` VALUES ('bdb5fcb7b59f12d0f7099568ec5c110b', 0, '20201110', '2020-11-10', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:41'); +INSERT INTO `calender` VALUES ('bec5e8e884c96ecb38338cc525dd2596', 0, '20201019', '2020-10-19', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:19'); +INSERT INTO `calender` VALUES ('bf4111aa99a4f7fa514df2b017c16751', 0, '20200403', '2020-04-03', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:45'); +INSERT INTO `calender` VALUES ('c12e129828fccc5b04ccce4c0e018fbf', 0, '20200401', '2020-04-01', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:43'); +INSERT INTO `calender` VALUES ('c17f20250a118441752664a8f067a6cf', 0, '20200708', '2020-07-08', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:29'); +INSERT INTO `calender` VALUES ('c1e31cdac72e2e9e029540cca8bdfdba', 0, '20200717', '2020-07-17', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:45'); +INSERT INTO `calender` VALUES ('c29792f840935b31d96a009fcdb727c0', 0, '20201018', '2020-10-18', 7, '20201017', '20201018', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:18'); +INSERT INTO `calender` VALUES ('c37e020ddc1b41bba979403c99d4a30e', 0, '20201231', '2020-12-31', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:32'); +INSERT INTO `calender` VALUES ('c49971e3825c6dcac005512de1ee9fb3', 0, '20200619', '2020-06-19', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:07'); +INSERT INTO `calender` VALUES ('c4c446b4eebe9601abcf49ea38fda2af', 0, '20200204', '2020-02-04', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:46'); +INSERT INTO `calender` VALUES ('c539bdbfa0890f009f4621cdb163eb84', 0, '20200718', '2020-07-18', 6, '20200718', '20200719', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:46'); +INSERT INTO `calender` VALUES ('c5acee5c1223adb9cd2c0163355329ad', 0, '20200518', '2020-05-18', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:35'); +INSERT INTO `calender` VALUES ('c65763e6f67bcd9aa5017683582c9e67', 0, '20200412', '2020-04-12', 7, '20200411', '20200412', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:59'); +INSERT INTO `calender` VALUES ('c68ffa615ab4935a01562dadbf2d4164', 0, '20200331', '2020-03-31', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:42'); +INSERT INTO `calender` VALUES ('c6ee81702bbe1766969dfa0cbc978755', 0, '20200511', '2020-05-11', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:28'); +INSERT INTO `calender` VALUES ('c702f672cb824f7b18f7efb0ef6d8535', 0, '20200307', '2020-03-07', 6, '20200307', '20200308', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:18'); +INSERT INTO `calender` VALUES ('c7e5ba7dd3e1e235f0ba35a198491886', 0, '20200408', '2020-04-08', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:55'); +INSERT INTO `calender` VALUES ('c7fd43d7bc3bed38f7f822436ec3fca6', 0, '20201215', '2020-12-15', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:16'); +INSERT INTO `calender` VALUES ('c8407ba7fdfad2ab0f800a2d81ae6e7c', 0, '20201106', '2020-11-06', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:37'); +INSERT INTO `calender` VALUES ('c983a79355646c357231d75bc4ee6325', 0, '20200725', '2020-07-25', 6, '20200725', '20200726', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:53'); +INSERT INTO `calender` VALUES ('c9a8708b7e06862bb54d299bbe93ed7b', 0, '20200103', '2020-01-03', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:14'); +INSERT INTO `calender` VALUES ('c9af06bda9dad8c1c95323c516144f0c', 0, '20200303', '2020-03-03', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:14'); +INSERT INTO `calender` VALUES ('c9c34f244eedd2d6531e69b64e972c4c', 0, '20200626', '2020-06-26', 5, '20200625', '20200627', '6月25日至27日放假调休,共3天。6月28日(星期日)上班。', '3', '节假日', '端午节', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:14'); +INSERT INTO `calender` VALUES ('c9d71d90951d24c0b6c2473bd64e997f', 0, '20200615', '2020-06-15', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:03'); +INSERT INTO `calender` VALUES ('ca2cbd7a8fca795523f036bc556dd9c8', 0, '20200819', '2020-08-19', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:18'); +INSERT INTO `calender` VALUES ('ca91ce6d49f32351936625a782048f37', 0, '20200418', '2020-04-18', 6, '20200418', '20200419', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:05'); +INSERT INTO `calender` VALUES ('caeb4101a59994f4d6c5f9fc2abf7d85', 0, '20200523', '2020-05-23', 6, '20200523', '20200524', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:40'); +INSERT INTO `calender` VALUES ('cb2f8f5feb2b53beb656ae79f19a5e0a', 0, '20200110', '2020-01-10', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:21'); +INSERT INTO `calender` VALUES ('cc3e4ed16b2618e77f6388e05cf1ac3b', 0, '20200829', '2020-08-29', 6, '20200829', '20200830', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:28'); +INSERT INTO `calender` VALUES ('cc702f50b9969de7ce7848dbc7bbb9f7', 0, '20200428', '2020-04-28', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:15'); +INSERT INTO `calender` VALUES ('cce60aad407c8c81f9fc201047ff9bc1', 0, '20200426', '2020-04-26', 7, '', '', '调休', '1', '工作日', '无', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:13'); +INSERT INTO `calender` VALUES ('cd028fff99e9ac69bab3d61388016d43', 0, '20200809', '2020-08-09', 7, '20200808', '20200809', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:08'); +INSERT INTO `calender` VALUES ('cd565b415036df24075d4de19ef5a7cb', 0, '20200306', '2020-03-06', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:17'); +INSERT INTO `calender` VALUES ('cdc332fb34673a8b3d0c21be380314b6', 0, '20201029', '2020-10-29', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:29'); +INSERT INTO `calender` VALUES ('cdd673d1816f5e6831f54075ec26d9c4', 0, '20201201', '2020-12-01', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:02'); +INSERT INTO `calender` VALUES ('cde81c3d82e8a44c268e736d6dfaa9aa', 0, '20200729', '2020-07-29', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:57'); +INSERT INTO `calender` VALUES ('cf8129d0a7d4ee8c2a8bd00a8de2552d', 0, '20200330', '2020-03-30', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:41'); +INSERT INTO `calender` VALUES ('d0b8b7fde6e0a0e76a49108c11f8f8a1', 0, '20200924', '2020-09-24', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:54'); +INSERT INTO `calender` VALUES ('d0da8d5ae49f15fac5922e852b24ff35', 0, '20200224', '2020-02-24', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:06'); +INSERT INTO `calender` VALUES ('d10e7145a8a9a5668072f6e772775554', 0, '20201118', '2020-11-18', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:49'); +INSERT INTO `calender` VALUES ('d11f4c89b5fbed55298f79b2fc5d67b6', 0, '20200203', '2020-02-03', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:45'); +INSERT INTO `calender` VALUES ('d18bf8256f1144cd56fbae9bee2e333a', 0, '20200807', '2020-08-07', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:06'); +INSERT INTO `calender` VALUES ('d18c5725a73f6053b9f77410b6bea392', 0, '20201008', '2020-10-08', 4, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:08'); +INSERT INTO `calender` VALUES ('d26f0417bfbdf7cadaac7e8ce4b5f4a5', 0, '20200925', '2020-09-25', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:55'); +INSERT INTO `calender` VALUES ('d50647890023f9d8161a0e3835caeb04', 0, '20200129', '2020-01-29', 3, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:40'); +INSERT INTO `calender` VALUES ('d5eaba89a103b378d24fad69a24e8a0c', 0, '20201219', '2020-12-19', 6, '20201219', '20201220', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:20'); +INSERT INTO `calender` VALUES ('d5ede55a05374c0fc31ac3aee1a714ab', 0, '20200609', '2020-06-09', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:57'); +INSERT INTO `calender` VALUES ('d64c473a123605fa1442f4ef2322ced5', 0, '20200529', '2020-05-29', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:46'); +INSERT INTO `calender` VALUES ('d765cf0bcaa3679bc41524f9706ffe72', 0, '20200612', '2020-06-12', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:00'); +INSERT INTO `calender` VALUES ('d7fa163e01713d5d500ebf8f83db2395', 0, '20200503', '2020-05-03', 7, '20200501', '20200505', '5月1日至5日放假调休,共5天。4月26日(星期日)、5月9日(星期六)上班。', '3', '节假日', '劳动节', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:20'); +INSERT INTO `calender` VALUES ('d8bd7296f660a3bf16de959b4431341a', 0, '20200517', '2020-05-17', 7, '20200516', '20200517', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:34'); +INSERT INTO `calender` VALUES ('d90e6be07881b5899d57882b07461c62', 0, '20200125', '2020-01-25', 6, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:36'); +INSERT INTO `calender` VALUES ('da255693a2012a4c3e79b257eadb9deb', 0, '20200614', '2020-06-14', 7, '20200613', '20200614', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:02'); +INSERT INTO `calender` VALUES ('db4018d06ab9e21759892b18d4f0a90d', 0, '20200705', '2020-07-05', 7, '20200704', '20200705', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:23'); +INSERT INTO `calender` VALUES ('dc66f6a90771ee625c68cb35bd12caaa', 0, '20200111', '2020-01-11', 6, '20200111', '20200112', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:22'); +INSERT INTO `calender` VALUES ('dc734aa279bc49d095e9943d4aaa926a', 0, '20200504', '2020-05-04', 1, '20200501', '20200505', '5月1日至5日放假调休,共5天。4月26日(星期日)、5月9日(星期六)上班。', '3', '节假日', '劳动节', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:21'); +INSERT INTO `calender` VALUES ('dcd679675734164f9a42c11ee42f37df', 0, '20200515', '2020-05-15', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:32'); +INSERT INTO `calender` VALUES ('dd57752897902f2d36ae7e2530d6a0bc', 0, '20200831', '2020-08-31', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:30'); +INSERT INTO `calender` VALUES ('dd90ae4c03f15a7623300dee293af6d7', 0, '20201230', '2020-12-30', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:31'); +INSERT INTO `calender` VALUES ('ddf4c93eb9a52a31a2c132c9b71d5ae9', 0, '20200611', '2020-06-11', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:59'); +INSERT INTO `calender` VALUES ('df53b975c872875e564f237e892a7f45', 0, '20200606', '2020-06-06', 6, '20200606', '20200607', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:54'); +INSERT INTO `calender` VALUES ('df772282ee6f8e0062fb5cc6e97ae90d', 0, '20200803', '2020-08-03', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:02'); +INSERT INTO `calender` VALUES ('e182ab81b8a209acc50e0a64549aca88', 0, '20200325', '2020-03-25', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:36'); +INSERT INTO `calender` VALUES ('e1ca27bc239520538806abf727bfc200', 0, '20201026', '2020-10-26', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:26'); +INSERT INTO `calender` VALUES ('e2f0428aafcb13bf08e65bea14419a66', 0, '20200710', '2020-07-10', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:31'); +INSERT INTO `calender` VALUES ('e3967c80b22f8a37d9c025b0e56e5834', 0, '20200903', '2020-09-03', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:33'); +INSERT INTO `calender` VALUES ('e3f3e1f7a18c0239ac47980c8ca278ec', 0, '20200730', '2020-07-30', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:58'); +INSERT INTO `calender` VALUES ('e4a873788c057b427e5fbf5feca8efdc', 0, '20200130', '2020-01-30', 4, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:41'); +INSERT INTO `calender` VALUES ('e510c73bf124435322c309b64bf4e962', 0, '20201122', '2020-11-22', 7, '20201121', '20201122', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:53'); +INSERT INTO `calender` VALUES ('e520597165e33e4153c3d1f413ae21a1', 0, '20201115', '2020-11-15', 7, '20201114', '20201115', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:46'); +INSERT INTO `calender` VALUES ('e629863ed9e816ef5f7dddcf8c58fe5e', 0, '20200123', '2020-01-23', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:34'); +INSERT INTO `calender` VALUES ('e6374c05c6971018d931c67359fa1535', 0, '20200215', '2020-02-15', 6, '20200215', '20200216', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:57'); +INSERT INTO `calender` VALUES ('e701c2bfc6364efe9d0192a54a371202', 0, '20201114', '2020-11-14', 6, '20201114', '20201115', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:45'); +INSERT INTO `calender` VALUES ('e8ce8b627acff52e69de7eaf43a69d4e', 0, '20200630', '2020-06-30', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:18'); +INSERT INTO `calender` VALUES ('ea12f27e6f7c334883c5fc3cd6c9e2a7', 0, '20200120', '2020-01-20', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:31'); +INSERT INTO `calender` VALUES ('ea42c692fa8b41a63a2bad81581eeed2', 0, '20200806', '2020-08-06', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:05'); +INSERT INTO `calender` VALUES ('ead79d70f88de33eb312d685543ca39f', 0, '20200317', '2020-03-17', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:28'); +INSERT INTO `calender` VALUES ('ec9cc81dc46a38b05e6c9d6111b5a747', 0, '20200610', '2020-06-10', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:58'); +INSERT INTO `calender` VALUES ('ecb2989db7e4947262e26fc391078d91', 0, '20200124', '2020-01-24', 5, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:35'); +INSERT INTO `calender` VALUES ('eccc0c1b98d1c2fe893e034b63949a1e', 0, '20200721', '2020-07-21', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:49'); +INSERT INTO `calender` VALUES ('ecd5cec32212253b2e75206f48109aa6', 0, '20200811', '2020-08-11', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:10'); +INSERT INTO `calender` VALUES ('ed64f2920a350691ba8e35e4be53efe2', 0, '20200820', '2020-08-20', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:19'); +INSERT INTO `calender` VALUES ('edc0394f130c6541c9929902428e920f', 0, '20200505', '2020-05-05', 2, '20200501', '20200505', '5月1日至5日放假调休,共5天。4月26日(星期日)、5月9日(星期六)上班。', '3', '节假日', '劳动节', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:22'); +INSERT INTO `calender` VALUES ('edc0b603d0180d7a7d458729207d321c', 0, '20200423', '2020-04-23', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:10'); +INSERT INTO `calender` VALUES ('ee4ee5fe78a69c126df116db0469eb49', 0, '20201105', '2020-11-05', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:36'); +INSERT INTO `calender` VALUES ('f211b321e826467d855312b2990c3ab6', 0, '20200810', '2020-08-10', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:09'); +INSERT INTO `calender` VALUES ('f2feb01264e6514b3b302f0cc1ec24f0', 0, '20200316', '2020-03-16', 1, '', '', '', '1', '工作日', '无', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:27'); +INSERT INTO `calender` VALUES ('f38bd5ad9aa6b4e729aff1a0a3d99bd6', 0, '20200904', '2020-09-04', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:34'); +INSERT INTO `calender` VALUES ('f3fb39f3eeeceebdbd57ede89623cb28', 0, '20200430', '2020-04-30', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:17'); +INSERT INTO `calender` VALUES ('f4317a5304c4753a8ea3d70efab3ecaa', 0, '20200516', '2020-05-16', 6, '20200516', '20200517', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:33'); +INSERT INTO `calender` VALUES ('f447b913d68dd9ff3de429e7b531bede', 0, '20200901', '2020-09-01', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:31'); +INSERT INTO `calender` VALUES ('f51d1825b43afe99f478664bfc179f1f', 0, '20200728', '2020-07-28', 2, '', '', '', '1', '工作日', '无', 'Tuesday', '周二', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:56'); +INSERT INTO `calender` VALUES ('f6b262efde2bb391bfe1ca3db9a56472', 0, '20201210', '2020-12-10', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:27', 'APP_USER', '2020-05-12 10:09:11'); +INSERT INTO `calender` VALUES ('f762a73ff252cb0eb9e05534ad849d1e', 0, '20200521', '2020-05-21', 4, '', '', '', '1', '工作日', '无', 'Thursday', '周四', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:38'); +INSERT INTO `calender` VALUES ('f806b608c775f98ee4bc398b7725d3ad', 0, '20200308', '2020-03-08', 7, '20200307', '20200308', '', '2', '周末', '周末', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:04:19'); +INSERT INTO `calender` VALUES ('fa73f2294e0a4eee0c69615c974168cb', 0, '20200912', '2020-09-12', 6, '20200912', '20200913', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:42'); +INSERT INTO `calender` VALUES ('fae8a185567ae608b0817da8344ae306', 0, '20200126', '2020-01-26', 7, '20200124', '20200202', '1月24日至2月2日放假,共8天。1月19日(星期日)上班。', '3', '节假日', '春节', 'Sunday', '周日', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:03:37'); +INSERT INTO `calender` VALUES ('fb90507b253c954641fa5c12d40fd8fa', 0, '20200509', '2020-05-09', 6, '', '', '调休', '1', '工作日', '无', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:26'); +INSERT INTO `calender` VALUES ('fcee0731147e0d43a3c9ec9753177943', 0, '20200603', '2020-06-03', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:05:51'); +INSERT INTO `calender` VALUES ('fd059c1e43782ca8cc076f0ad49df900', 0, '20201005', '2020-10-05', 1, '20201001', '20201008', '10月1日至8日放假调休,共8天。9月27日(星期日)、10月10日(星期六)上班。', '3', '节假日', '国庆节、中秋节', 'Monday', '周一', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:05'); +INSERT INTO `calender` VALUES ('fd1845c5ac1eb3ca2e1ddb3cc85f7f54', 0, '20201023', '2020-10-23', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:08:23'); +INSERT INTO `calender` VALUES ('fd4a1e46c44e492c460fab94c1071452', 0, '20200902', '2020-09-02', 3, '', '', '', '1', '工作日', '无', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:07:32'); +INSERT INTO `calender` VALUES ('fe45e48535e36660744c5856def4b64d', 0, '20200101', '2020-01-01', 3, '20200101', '20200101', '2020年1月1日放假,共1天。', '3', '节假日', '元旦', 'Wednesday', '周三', 0, 0, 'APP_USER', '2020-05-12 01:32:00', 'fa5e50ca724911eab9c900163e08c0f9', '2020-05-12 13:48:50'); +INSERT INTO `calender` VALUES ('ff7e08ece3008eeb1661a2b1d8b4e20e', 0, '20200711', '2020-07-11', 6, '20200711', '20200712', '', '2', '周末', '周末', 'Saturday', '周六', 0, 0, 'APP_USER', '2020-05-12 01:32:26', 'APP_USER', '2020-05-12 10:06:32'); +INSERT INTO `calender` VALUES ('ffe45e7059c67874f88498cfcfd19b4c', 0, '20200424', '2020-04-24', 5, '', '', '', '1', '工作日', '无', 'Friday', '周五', 0, 0, 'APP_USER', '2020-05-12 01:32:25', 'APP_USER', '2020-05-12 10:05:11'); + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/resources/logback-spring.xml b/epmet-module/epmet-common-service/common-service-server/src/main/resources/logback-spring.xml new file mode 100644 index 0000000000..e3cfdd0927 --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/resources/logback-spring.xml @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + debug + + + ${CONSOLE_LOG_PATTERN} + + UTF-8 + + + + + + + + ${log.path}/debug.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + ${log.path}/debug-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + debug + ACCEPT + DENY + + + + + + + ${log.path}/info.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + ${log.path}/info-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + info + ACCEPT + DENY + + + + + + + ${log.path}/warn.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/warn-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + warn + ACCEPT + DENY + + + + + + + ${log.path}/error.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/error-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + ERROR + ACCEPT + DENY + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/resources/mapper/CalenderDao.xml b/epmet-module/epmet-common-service/common-service-server/src/main/resources/mapper/CalenderDao.xml new file mode 100644 index 0000000000..b1a3ab8e8d --- /dev/null +++ b/epmet-module/epmet-common-service/common-service-server/src/main/resources/mapper/CalenderDao.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + UPDATE calender + SET type = '3', + TYPE_NAME = '节假日', + HOLIDAY_REMARK = #{holiday_remark}, + HOLIDAY = #{holiday} + WHERE + DEL_FLAG = '0' + AND QUERY_DATE BETWEEN #{begin} + AND #{end} + + + + + + \ No newline at end of file diff --git a/epmet-module/epmet-common-service/pom.xml b/epmet-module/epmet-common-service/pom.xml new file mode 100644 index 0000000000..7882f594f0 --- /dev/null +++ b/epmet-module/epmet-common-service/pom.xml @@ -0,0 +1,21 @@ + + + 4.0.0 + + + com.epmet + epmet-module + 2.0.0 + + + com.epmet + epmet-common-service + pom + + + common-service-client + common-service-server + + + diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/RedDotFormDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/RedDotFormDTO.java new file mode 100644 index 0000000000..52b9d21b44 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/RedDotFormDTO.java @@ -0,0 +1,29 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 待办提醒(红点)入参 + * @Author yinzuomei + * @Date 2020/5/13 14:22 + */ +@Data +public class RedDotFormDTO implements Serializable { + private static final long serialVersionUID = -3108932695005624852L; + + /** + * token中获取,不能为空 + */ + @NotBlank(message = "staffId不能为空(异常:TokenDto中userId为空)") + private String staffId; + + /** + * 网格ID + */ + @NotBlank(message = "网格id不能为空") + private String gridId; +} + diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/GridProcessingCountResultDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/GridProcessingCountResultDTO.java new file mode 100644 index 0000000000..3d5a599425 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/GridProcessingCountResultDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 政府端基层治理群组管理、议题管理、居民管理、党员认证查询待办数量feign统一返参 + * @Author yinzuomei + * @Date 2020/5/13 21:43 + */ +@Data +public class GridProcessingCountResultDTO implements Serializable { + /** + * 网格id + */ + private String gridId; + + /** + * 待审核的小组总数 + */ + private Long count; +} + diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/RedDotResultDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/RedDotResultDTO.java new file mode 100644 index 0000000000..9255f78771 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/RedDotResultDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description 待办提醒(红点)返参 + * @Author yinzuomei + * @Date 2020/5/13 14:23 + */ +@Data +public class RedDotResultDTO implements Serializable { + + private static final long serialVersionUID = -7872984015211318329L; + + /** + * 其它网格是否有待办事项true,false + */ + private Boolean otherGridRedDot; + + /** + * 需要显示的功能key(群组管理:work_grassroots_group,居民管理:work_grassroots_resi,党员认证:work_grassroots_partyauth,议题管理:work_grassroots_issue) + */ + private List functionList; +} + diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java new file mode 100644 index 0000000000..1e52667fff --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java @@ -0,0 +1,30 @@ +package com.epmet.constant; + +/** + * @Description 基层治理菜单key,用于是否显示红点提示 待办提醒(红点)接口反参用 + * @Author yinzuomei + * @Date 2020/5/13 14:47 + */ +public class WorkGrassRootsFunctionConstant { + + /** + * 群组管理 + */ + public static final String WORK_GRASSROOTS_GROUP="work_grassroots_group"; + + /** + * 居民管理 + */ + public static final String WORK_GRASSROOTS_RESI="work_grassroots_resi"; + + /** + * 党员认证 + */ + public static final String WORK_GRASSROOTS_PARTYAUTH="work_grassroots_partyauth"; + + /** + * 议题管理 + */ + public static final String WORK_GRASSROOTS_ISSUE="work_grassroots_issue"; +} + diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/RemindController.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/RemindController.java new file mode 100644 index 0000000000..894fa60ab7 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/RemindController.java @@ -0,0 +1,48 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.form.RedDotFormDTO; +import com.epmet.dto.result.RedDotResultDTO; +import com.epmet.service.RemindService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * @Description 基层治理待办事项提醒 + * @Author yinzuomei + * @Date 2020/5/13 14:17 + */ +@RestController +@RequestMapping("remind") +public class RemindController { + @Autowired + private RemindService remindService; + + /** + * @return com.epmet.commons.tools.utils.Result + * @param formDTO + * @Author yinzuomei + * @Description 根据网格id,查询基层治理下网格各功能菜单是否显示红点,以及除当前网格外,其他网格是否有待办事项 + * @Date 2020/5/13 14:28 + **/ + @PostMapping("reddot") + public Result queryGridRedDot(@LoginUser TokenDto tokenDto, @RequestBody RedDotFormDTO formDTO){ + formDTO.setStaffId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(formDTO); + RedDotResultDTO redDotResultDTO=remindService.queryGridRedDot(formDTO); + return new Result().ok(redDotResultDTO); + } + + @GetMapping("test") + public Result test( ){ + TestFormDTO1 testFormDTO1=new TestFormDTO1(); + testFormDTO1.setId("111"); + testFormDTO1.setName("啊啊啊"); + TestResultDTO1 testResultDTO1=remindService.test(testFormDTO1); + return new Result().ok(testResultDTO1); + } +} + diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiGroupController.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiGroupController.java index c520c9bd86..207ce24099 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiGroupController.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiGroupController.java @@ -38,6 +38,7 @@ public class ResiGroupController { * @return */ @PostMapping("audited") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_GROUP_AUDITED) public Result> audited(@RequestBody GroupAuditedFromDTO formDTO) { return resiGroupService.audited(formDTO); } @@ -90,6 +91,7 @@ public class ResiGroupController { * @Date 2020.04.20 14:08 **/ @PostMapping("applygroupdetail") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_GROUP_APPLY_DETAIL) public Result applyGroupDetail(@LoginUser TokenDto tokenDto, @RequestBody CommonGroupIdFromDTO groupIdFromDTO){ groupIdFromDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(groupIdFromDTO); diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiPartyMemberController.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiPartyMemberController.java index 1ac93d3c4f..5b7fbdf89f 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiPartyMemberController.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiPartyMemberController.java @@ -51,7 +51,9 @@ public class ResiPartyMemberController { @PostMapping("auditing") @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTYAUTH_AUDITINGLIST) public Result> auditing(@RequestBody AuditingPartyMemberFormDTO formDTO) { - return resiPartyMemberService.auditing(formDTO); + ValidatorUtils.validateEntity(formDTO); + List list=resiPartyMemberService.auditing(formDTO); + return new Result>().ok(list); } /** @@ -64,7 +66,9 @@ public class ResiPartyMemberController { @PostMapping("audited") @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTYAUTH_AUDITHISTORY) public Result> audited(@RequestBody AuditedPartyMemberFormDTO formDTO) { - return resiPartyMemberService.audited(formDTO); + ValidatorUtils.validateEntity(formDTO); + List list=resiPartyMemberService.audited(formDTO); + return new Result>().ok(list); } /** @@ -89,6 +93,7 @@ public class ResiPartyMemberController { * @CreatedTime 2020/4/27 13:54 */ @PostMapping(value = "/certifieddetail") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTYAUTH_AUDITED_DETAIL) public Result certifiedDetail(@RequestBody CertifiedDetailFormDTO formDTO){ return new Result().ok(resiPartyMemberService.certifiedDetail(formDTO)); } @@ -115,6 +120,7 @@ public class ResiPartyMemberController { * @author zhaoqifeng */ @PostMapping("auditingdetail") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTYAUTH_AUDITING_DETAIL) public Result auditingDetail(@RequestBody AuditingDetailFromDTO fromDTO) { return resiPartyMemberService.auditingDetail(fromDTO); } @@ -127,6 +133,7 @@ public class ResiPartyMemberController { * @author zhaoqifeng */ @PostMapping("autofaileddetail") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTYAUTH_AUDITHISTORY_DETAIL) public Result autoFailedDetail(@RequestBody AutoFailedDetailFromDTO fromDTO) { return resiPartyMemberService.autoFailedDetail(fromDTO); } @@ -139,6 +146,7 @@ public class ResiPartyMemberController { * @author zhaoqifeng */ @PostMapping("rejecteddetail") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTYAUTH_AUDITHISTORY_DETAIL) public Result rejectedDetail(@RequestBody RejectedDetailFromDTO fromDTO) { return resiPartyMemberService.rejectedDetail(fromDTO); } diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiWarmheartedController.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiWarmheartedController.java index d2c5ae81ef..79bd26adcc 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiWarmheartedController.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiWarmheartedController.java @@ -37,9 +37,9 @@ public class ResiWarmheartedController { * @param formDTO 参数 * @return */ - @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_RESI_WARMHEARTED_AUDITHISTORYLIST) @PostMapping("audited") - public Result> audited(@RequestBody ResiWarmheartedAuditedFromDTO formDTO) { + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_RESI_WARMHEARTED_AUDITHISTORYLIST) + public Result> audited(@RequestBody ResiWarmheartedAuditedFromDTO formDTO) { return resiWarmheartedService.audited(formDTO); } @@ -85,6 +85,7 @@ public class ResiWarmheartedController { * @Description 政府端-热心居民申请详情信息 **/ @PostMapping("getdetail") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_RESI_WARMHEARTED_APPLY_DETAIL) public Result getDetail(@LoginUser TokenDto tokenDTO, @RequestBody ResiWarmGetDetailFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return resiWarmheartedService.getDetail(formDTO); diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/TestFormDTO1.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/TestFormDTO1.java new file mode 100644 index 0000000000..564ca8426a --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/TestFormDTO1.java @@ -0,0 +1,15 @@ +package com.epmet.controller; + +import lombok.Data; + +/** + * @Description 测试feign + * @Author yinzuomei + * @Date 2020/5/13 18:23 + */ +@Data +public class TestFormDTO1 { + private String id; + private String name; +} + diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/TestResultDTO1.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/TestResultDTO1.java new file mode 100644 index 0000000000..04348391bc --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/TestResultDTO1.java @@ -0,0 +1,15 @@ +package com.epmet.controller; + +import lombok.Data; + +/** + * @Description 测试feign + * @Author yinzuomei + * @Date 2020/5/13 18:23 + */ +@Data +public class TestResultDTO1 { + private String resultId; + private String resultName; +} + diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java new file mode 100644 index 0000000000..1b7642c82a --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java @@ -0,0 +1,29 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.feign.fallback.GovIssueFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @Description 议题管理服务 + * @Author yinzuomei + * @Date 2020/5/13 15:45 + */ +@FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER, fallback = GovIssueFeignClientFallBack.class) +public interface GovIssueFeignClient { + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下表决中的议题 + * @Date 2020/5/13 15:47 + **/ + @PostMapping(value = "/gov/issue/issue/queryvotingissuecount",consumes = MediaType.APPLICATION_JSON_VALUE) + Result queryVotingIssueCount(@RequestBody List gridIdList); +} diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java new file mode 100644 index 0000000000..97c3ce6b7f --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java @@ -0,0 +1,29 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.CustomerGridByUserIdResultDTO; +import com.epmet.feign.fallback.GovOrgFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; + +import java.util.List; + +/** + * @Description + * @Author sun + */ +@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class) +public interface GovOrgFeignClient { + + /** + * @param userId + * @return + * @Description 根据userId查询该用户涉及的所有网格列表 + * @Author sun + */ + @GetMapping(value = "/gov/org/customergrid/getmygrids/{userId}") + Result> getMyGrids(@PathVariable("userId") String userId); + +} diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java index 4449e64962..18815b635a 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java @@ -2,20 +2,22 @@ package com.epmet.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; +import com.epmet.controller.TestFormDTO1; +import com.epmet.controller.TestResultDTO1; +import com.epmet.dto.result.GridProcessingCountResultDTO; import com.epmet.feign.fallback.ResiGroupFeignClientFallBack; import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO; import com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO; -import com.epmet.resi.group.dto.group.form.GovGroupSummarizeFromDTO; -import com.epmet.resi.group.dto.group.form.GroupAuditedFromDTO; -import com.epmet.resi.group.dto.group.result.*; import com.epmet.resi.group.dto.group.form.*; +import com.epmet.resi.group.dto.group.result.*; import com.epmet.resi.group.dto.topic.form.ResiTopicDetailFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.PostMapping; - +import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -137,4 +139,16 @@ public interface ResiGroupFeignClient { @PostMapping("/resi/group/comment/getcommentlistoftopicgov") Result> getCommentListOfTopicGov(ResiQueryCommentFormDTO queryCommentFormDTO); - } + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下待审核的小组总数 + * @Date 2020/5/13 15:49 + **/ + @PostMapping(value = "/resi/group/group/groupprocessingcount",consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryGroupProcessingCount(@RequestBody List gridIdList); + + @PostMapping(value = "/resi/group/group/test",consumes = MediaType.APPLICATION_JSON_VALUE) + Result test(@RequestBody TestFormDTO1 testFormDTO1); +} diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiPartymemberFeignClient.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiPartymemberFeignClient.java index c5be8fc73a..9d4cd796fa 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiPartymemberFeignClient.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiPartymemberFeignClient.java @@ -6,6 +6,7 @@ import com.epmet.dto.form.CertifiedDetailFormDTO; import com.epmet.dto.form.CertifiedFormDTO; import com.epmet.dto.result.CertifiedDetailResultDTO; import com.epmet.dto.result.CertifiedResultDTO; +import com.epmet.dto.result.GridProcessingCountResultDTO; import com.epmet.feign.fallback.ResiPartymemberFeignClientFallBack; import com.epmet.resi.partymember.dto.partymember.form.*; import com.epmet.resi.partymember.dto.partymember.result.*; @@ -148,4 +149,24 @@ public interface ResiPartymemberFeignClient { @PostMapping("/resi/partymember/confirm/rejecteddetail") Result rejectedDetail(@RequestBody RejectedDetailFromDTO fromDTO); + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下待审核的热心居民数 + * @Date 2020/5/13 15:41 + **/ + @PostMapping(value = "/resi/partymember/resiwarmheartedapply/queryresiprocessingcount",consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryResiProcessingCount(@RequestBody List gridIdList); + + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下待审核的党员数 + * @Date 2020/5/13 15:41 + **/ + @PostMapping(value = "/resi/partymember/partymemberbaseinfo/getworkgrassrootspartyauth",consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryPartyMemberProcessingCount(@RequestBody List gridIdList); + } diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java new file mode 100644 index 0000000000..3a1ccf8714 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java @@ -0,0 +1,23 @@ +package com.epmet.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.feign.GovIssueFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description 议题管理服务 + * @Author yinzuomei + * @Date 2020/5/13 15:45 + */ +@Component +public class GovIssueFeignClientFallBack implements GovIssueFeignClient { + @Override + public Result queryVotingIssueCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "queryVotingIssueCount", gridIdList); + } +} + diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java new file mode 100644 index 0000000000..bfb238d29a --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java @@ -0,0 +1,27 @@ +package com.epmet.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.dto.CustomerAgencyDTO; +import com.epmet.dto.form.LatestGridFormDTO; +import com.epmet.dto.result.CustomerGridByUserIdResultDTO; +import com.epmet.dto.result.LatestCustomerResultDTO; +import com.epmet.feign.GovOrgFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description + * @Author sun + */ +@Component +public class GovOrgFeignClientFallBack implements GovOrgFeignClient { + + @Override + public Result> getMyGrids(String userId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getMyGrids", userId); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java index b4fe70ea34..588142a4f0 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java @@ -3,6 +3,9 @@ package com.epmet.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.controller.TestFormDTO1; +import com.epmet.controller.TestResultDTO1; +import com.epmet.dto.result.GridProcessingCountResultDTO; import com.epmet.feign.ResiGroupFeignClient; import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO; import com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO; @@ -107,4 +110,14 @@ public class ResiGroupFeignClientFallBack implements ResiGroupFeignClient { public Result> getCommentListOfTopicGov(ResiQueryCommentFormDTO queryCommentFormDTO) { return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "getCommentListOfTopicGov", queryCommentFormDTO); } + + @Override + public Result> queryGroupProcessingCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "queryGroupProcessingCount", gridIdList); + } + + @Override + public Result test(TestFormDTO1 testFormDTO1) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "test", testFormDTO1); + } } diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiPartymemberFeignClientFallBack.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiPartymemberFeignClientFallBack.java index acab85141f..17d8e6f0d6 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiPartymemberFeignClientFallBack.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/fallback/ResiPartymemberFeignClientFallBack.java @@ -7,6 +7,7 @@ import com.epmet.dto.form.CertifiedDetailFormDTO; import com.epmet.dto.form.CertifiedFormDTO; import com.epmet.dto.result.CertifiedDetailResultDTO; import com.epmet.dto.result.CertifiedResultDTO; +import com.epmet.dto.result.GridProcessingCountResultDTO; import com.epmet.feign.ResiPartymemberFeignClient; import com.epmet.resi.partymember.dto.partymember.form.*; import com.epmet.resi.partymember.dto.partymember.result.*; @@ -89,4 +90,14 @@ public class ResiPartymemberFeignClientFallBack implements ResiPartymemberFeignC return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "rejectedDetail", fromDTO); } + @Override + public Result> queryResiProcessingCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "queryResiProcessingCount", gridIdList); + } + + @Override + public Result> queryPartyMemberProcessingCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "queryPartyMemberProcessingCount", gridIdList); + } + } diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/RemindService.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/RemindService.java new file mode 100644 index 0000000000..95c577b5ca --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/RemindService.java @@ -0,0 +1,24 @@ +package com.epmet.service; + +import com.epmet.controller.TestFormDTO1; +import com.epmet.controller.TestResultDTO1; +import com.epmet.dto.form.RedDotFormDTO; +import com.epmet.dto.result.RedDotResultDTO; + +/** + * @Description 基层治理待办事项提醒 + * @Author yinzuomei + * @Date 2020/5/13 14:26 + */ +public interface RemindService { + /** + * @return com.epmet.dto.result.RedDotResultDTO + * @param formDTO + * @Author yinzuomei + * @Description 根据网格id,查询基层治理下网格各功能菜单是否显示红点,以及除当前网格外,其他网格是否有待办事项 + * @Date 2020/5/13 14:34 + **/ + RedDotResultDTO queryGridRedDot(RedDotFormDTO formDTO); + + TestResultDTO1 test(TestFormDTO1 testFormDTO1); +} diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/ResiPartyMemberService.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/ResiPartyMemberService.java index f0a2bdb58e..3a04d1c64b 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/ResiPartyMemberService.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/ResiPartyMemberService.java @@ -37,7 +37,7 @@ public interface ResiPartyMemberService { * @Description 待审核列表 * @Date 2020/4/26 16:04 **/ - Result> auditing(AuditingPartyMemberFormDTO formDTO); + List auditing(AuditingPartyMemberFormDTO formDTO); /** * @return com.epmet.commons.tools.utils.Result> * @param formDTO @@ -45,7 +45,7 @@ public interface ResiPartyMemberService { * @Description 党员认证-审核历史列表(审核历史:只包括自动审核失败和拒绝的审核失败:居民未填写补充信息。) * @Date 2020/4/26 23:32 **/ - Result> audited(AuditedPartyMemberFormDTO formDTO); + List audited(AuditedPartyMemberFormDTO formDTO); /** * diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java new file mode 100644 index 0000000000..f9dea745a0 --- /dev/null +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java @@ -0,0 +1,174 @@ +package com.epmet.service.impl; + +import com.alibaba.fastjson.JSON; +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.constant.WorkGrassRootsFunctionConstant; +import com.epmet.controller.TestFormDTO1; +import com.epmet.controller.TestResultDTO1; +import com.epmet.dto.form.RedDotFormDTO; +import com.epmet.dto.result.CustomerGridByUserIdResultDTO; +import com.epmet.dto.result.GridProcessingCountResultDTO; +import com.epmet.dto.result.RedDotResultDTO; +import com.epmet.feign.GovIssueFeignClient; +import com.epmet.feign.GovOrgFeignClient; +import com.epmet.feign.ResiGroupFeignClient; +import com.epmet.feign.ResiPartymemberFeignClient; +import com.epmet.service.RemindService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Description 基层治理待办事项提醒 + * @Author yinzuomei + * @Date 2020/5/13 14:27 + */ +@Service +public class RemindServiceImpl implements RemindService { + private Logger logger = LoggerFactory.getLogger(getClass()); + + @Autowired + private ResiGroupFeignClient resiGroupFeignClient; + + @Autowired + private ResiPartymemberFeignClient resiPartymemberFeignClient; + + @Autowired + private GovOrgFeignClient govOrgFeignClient; + + @Autowired + private GovIssueFeignClient govIssueFeignClient; + + @Override + public RedDotResultDTO queryGridRedDot(RedDotFormDTO formDTO) { + RedDotResultDTO redDotResultDTO = new RedDotResultDTO(); + redDotResultDTO.setOtherGridRedDot(false); + redDotResultDTO.setFunctionList(getRedDotFunctionList(formDTO.getGridId())); + Result> govOrgResult = govOrgFeignClient.getMyGrids(formDTO.getStaffId()); + if (!govOrgResult.success()) { + logger.error(String.format("调用gov-org-server服务查询工作人员网格列表失败返回结果", govOrgResult.toString())); + } + List gridList = govOrgResult.getData(); + for (CustomerGridByUserIdResultDTO gridInfo : gridList) { + if(formDTO.getGridId().equals(gridInfo)){ + //查询非当前网格的 + break; + } + //其他网格,只要存在有待办事项的网格,就需要在工作首页网格名称后面显示红点 + List functionList = this.getRedDotFunctionList(gridInfo.getGridId()); + if (null != functionList && functionList.size() > 0) { + redDotResultDTO.setOtherGridRedDot(true); + break; + } + } + return redDotResultDTO; + + } + + public List getRedDotFunctionList(String gridId) { + List functionList = new ArrayList<>(); + List gridIdList = new ArrayList<>(); + gridIdList.add(gridId); + if (this.getWorkGrassRootsGroup(gridIdList)) { + functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_GROUP); + } + if (this.getWorkGrassRootsResi(gridIdList)) { + functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_RESI); + } + if (getWorkGrassRootsPartyAuth(gridIdList)) { + functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_PARTYAUTH); + } + if (getWorkGrassRootsIssue(gridIdList)) { + functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_ISSUE); + } + return functionList; + } + + + //群组管理: work_grassroots_group + public Boolean getWorkGrassRootsGroup(List gridIdList) { + Result> groupProcessingCountResult = resiGroupFeignClient.queryGroupProcessingCount(gridIdList); + if (groupProcessingCountResult.success()) { + for (String gridId : gridIdList) { + for (GridProcessingCountResultDTO GridProcessingCountResultDTO : groupProcessingCountResult.getData()) { + if (gridId.equals(GridProcessingCountResultDTO.getGridId()) && GridProcessingCountResultDTO.getCount() > 0) { + return true; + } + } + } + } + logger.error(String.format("调用%s服务,查询网格%s待审核小组数失败code%s,msg:", ServiceConstant.RESI_GROUP_SERVER, gridIdList.get(0), groupProcessingCountResult.getCode(), + groupProcessingCountResult.getMsg())); + return false; + } + + //居民管理:work_grassroots_resi, + //查询网格下 + public Boolean getWorkGrassRootsResi(List gridIdList) { + Result> resiGroupProcessingCountResult = resiPartymemberFeignClient.queryResiProcessingCount(gridIdList); + if (resiGroupProcessingCountResult.success()) { + for (String gridId : gridIdList) { + for (GridProcessingCountResultDTO GridProcessingCountResultDTO : resiGroupProcessingCountResult.getData()) { + if (gridId.equals(GridProcessingCountResultDTO.getGridId()) && GridProcessingCountResultDTO.getCount() > 0) { + return true; + } + } + } + } + logger.error(String.format("调用%s服务,查询网格%s待审核热心居民数失败code%s,msg:", ServiceConstant.RESI_PARTYMEMBER_SERVER, gridIdList.get(0), resiGroupProcessingCountResult.getCode(), + resiGroupProcessingCountResult.getMsg())); + return false; + } + + //党员认证:work_grassroots_partyauth, + //查询网格下是否存在待审核的党员 + public Boolean getWorkGrassRootsPartyAuth(List gridIdList) { + Result> partyMemberProcessingCountResult = resiPartymemberFeignClient.queryPartyMemberProcessingCount(gridIdList); + if (partyMemberProcessingCountResult.success()) { + for (String gridId : gridIdList) { + for (GridProcessingCountResultDTO GridProcessingCountResultDTO : partyMemberProcessingCountResult.getData()) { + if (gridId.equals(GridProcessingCountResultDTO.getGridId()) && GridProcessingCountResultDTO.getCount() > 0) { + return true; + } + } + } + } + logger.error(String.format("调用%s服务,查询网格%s待审核党员数失败code%s,msg:", ServiceConstant.RESI_PARTYMEMBER_SERVER, gridIdList.get(0), partyMemberProcessingCountResult.getCode(), + partyMemberProcessingCountResult.getMsg())); + return false; + } + + //议题管理: work_grassroots_issue + //查询网格下是否存在表决中的议题 + public Boolean getWorkGrassRootsIssue(List gridIdList) { + Result> issueResult = govIssueFeignClient.queryVotingIssueCount(gridIdList); + if (issueResult.success()) { + for (String gridId : gridIdList) { + for (GridProcessingCountResultDTO GridProcessingCountResultDTO : issueResult.getData()) { + if (gridId.equals(GridProcessingCountResultDTO.getGridId()) && GridProcessingCountResultDTO.getCount() > 0) { + return true; + } + } + } + } + logger.error(String.format("调用%s服务,查询网格%s表决中议题总数失败code%s,msg:", ServiceConstant.GOV_ISSUE_SERVER, gridIdList.get(0), issueResult.getCode(), + issueResult.getMsg())); + return false; + } + + @Override + public TestResultDTO1 test(TestFormDTO1 testFormDTO1) { + Result resultDTO1Result = resiGroupFeignClient.test(testFormDTO1); + if (resultDTO1Result.success()) { + logger.info("gov-grid服务,接收返参:" + JSON.toJSONString(resultDTO1Result.getData())); + return resultDTO1Result.getData(); + } + return new TestResultDTO1(); + } +} + diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiPartyMemberServiceImpl.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiPartyMemberServiceImpl.java index 68482892fb..d2f4ccc899 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiPartyMemberServiceImpl.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiPartyMemberServiceImpl.java @@ -1,5 +1,6 @@ package com.epmet.service.impl; +import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.ConvertUtils; @@ -39,37 +40,37 @@ public class ResiPartyMemberServiceImpl implements ResiPartyMemberService { private ResiPartymemberFeignClient resiPartymemberFeignClient; @Override - public Result> auditing(AuditingPartyMemberFormDTO formDTO) { - UnderReviewParyMemberFormDTO underReviewParyMemberFormDTO = ConvertUtils.sourceToTarget(formDTO, UnderReviewParyMemberFormDTO.class); + public List auditing(AuditingPartyMemberFormDTO formDTO) { List list = new ArrayList<>(); + UnderReviewParyMemberFormDTO underReviewParyMemberFormDTO = ConvertUtils.sourceToTarget(formDTO, UnderReviewParyMemberFormDTO.class); Result> result = resiPartymemberFeignClient.auditingPartyMember(underReviewParyMemberFormDTO); if (!result.success()) { - logger.error(String.format("调用resi-partymember-server模块失败,错误提示%s", result.getMsg())); + logger.error(String.format("调用%s服务查询单元认证-待审核列表失败,入参网格id[%s],错误码%s,错误提示%s", ServiceConstant.RESI_PARTYMEMBER_SERVER, formDTO.getGridId(), result.getCode(), result.getMsg())); throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode()); } if (null == result.getData() || result.getData().isEmpty()) { - logger.info(String.format("网格id[%s],待审核党员列表查询为空", formDTO.getGridId())); - return new Result>().ok(list); + logger.info(String.format("调用%s服务查询党员认证-待审核列表,入参网格id[%s],待审核党员列表查询为空", ServiceConstant.RESI_PARTYMEMBER_SERVER, formDTO.getGridId())); + return list; } list = ConvertUtils.sourceToTarget(result.getData(), AuditingPartyMemberResultDTO.class); - return new Result>().ok(list); + return list; } @Override - public Result> audited(AuditedPartyMemberFormDTO formDTO) { - ReviewedParyMemberFormDTO reviewedParyMemberFormDTO = ConvertUtils.sourceToTarget(formDTO, ReviewedParyMemberFormDTO.class); + public List audited(AuditedPartyMemberFormDTO formDTO) { List list = new ArrayList<>(); + ReviewedParyMemberFormDTO reviewedParyMemberFormDTO = ConvertUtils.sourceToTarget(formDTO, ReviewedParyMemberFormDTO.class); Result> result = resiPartymemberFeignClient.auditedPartyMember(reviewedParyMemberFormDTO); if (!result.success()) { - logger.error(String.format("调用resi-partymember-server模块失败,错误提示%s", result.getMsg())); + logger.error(String.format("调用%s服务查询党员认证-审核历史列表失败,入参网格id[%s],错误码%s,错误提示%s", ServiceConstant.RESI_PARTYMEMBER_SERVER, formDTO.getGridId(), result.getCode(), result.getMsg())); throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode()); } if (null == result.getData() || result.getData().isEmpty()) { - logger.info(String.format("网格id[%s],待审核党员列表查询为空", formDTO.getGridId())); - return new Result>().ok(list); + logger.info(String.format("调用%s服务查询党员认证-审核历史列表为空,入参网格id[%s],待审核党员列表查询为空", ServiceConstant.RESI_PARTYMEMBER_SERVER, formDTO.getGridId())); + return list; } list = ConvertUtils.sourceToTarget(result.getData(), AuditedPartyMemberResultDTO.class); - return new Result>().ok(list); + return list; } /** diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/EvaluateInfoDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/EvaluateInfoDTO.java new file mode 100644 index 0000000000..6dd8446aef --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/EvaluateInfoDTO.java @@ -0,0 +1,26 @@ +package com.epmet.dto; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 评价信息 + */ +@Data +public class EvaluateInfoDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueCustomerParameterDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueCustomerParameterDTO.java new file mode 100644 index 0000000000..1d713b3b12 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueCustomerParameterDTO.java @@ -0,0 +1,96 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题客户参数定制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueCustomerParameterDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 客户ID + */ + private String customerId; + + /** + * 参数键 eg:voting_time_limit + */ + private String parameterKey; + + /** + * 参数名 eg:表决期限 + */ + private String parameterName; + + /** + * 参数值 eg:10(天) + */ + private String parameterValue; + + /** + * 参数说明 eg:这个客户下所有的网格议题表决期限都是10天 + */ + private String description; + + /** + * 删除标志 0:未删除,1:已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueDTO.java new file mode 100644 index 0000000000..fe12ca4a76 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueDTO.java @@ -0,0 +1,146 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题详情表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String id; + + /** + * 议题状态 表决中:voting 已转项目:shift_project 已关闭:closed + */ + private String issueStatus; + + /** + * 来源类型 eg:resi_topic + */ + private String sourceType; + + /** + * 来源ID eg:2223232(当SOURCE_TYPE为"resi_topic"时,这里指话题的ID) + */ + private String sourceId; + + /** + * 关闭理由 【未关闭时可以为空】关闭议题时必填的理由,转项目后而且已经结案,这个字段不回写 + */ + private String closeReason; + + /** + * 解决类型 【未关闭时可以为空】已解决resloved、未解决unresloved,对应在关闭议题时所选的checkbox,转项目后而且已经结案,这个字段不回写 + */ + private String resolveType; + + /** + * 议题名称 最多20字 + */ + private String issueTitle; + + /** + * 建议 最多1000字 + */ + private String suggestion; + + /** + * 客户ID + */ + private String customerId; + + /** + * 网格ID 居民端议题对应一个网格Id + */ + private String gridId; + + /** + * 所属机关 【数据权限-非必填】11:22:33(agencyId)数据权限控制 + */ + private String orgIdPath; + + /** + * 组织ID 【数据权限-非必填】agencyId + */ + private String orgId; + + /** + * 表决截止日期 + */ + private Date votingDeadline; + + /** + * 表决发起日期(转议题日期) + */ + private Date decidedTime; + + /** + * 转项目日期 (服务间调用日期一致性) + */ + private Date shiftedTime; + + /** + * 关闭日期 + */ + private Date closedTime; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueProcessDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueProcessDTO.java new file mode 100644 index 0000000000..a0eeb2df09 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueProcessDTO.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.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题进展记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueProcessDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 操作状态 - 表决中:voting 已转项目:shift_project 已关闭:closed + */ + private String issueStatus; + + /** + * 组织类型 操作人所属机构类型(机构:agency | 部门:dept | 网格:grid)操作人可能来源于居民端和政府段,但是只有在“转议题”的时候才是居民端拥有组长权限的人操作,所以当这条记录是转议题时,该记录为grid,ORD_ID相应的也为GRID_ID + */ + private String orgType; + + /** + * 组织ID 操作人所属机构ID(对应的有网格ID、部门ID、机构ID) + */ + private String orgId; + + /** + * 操作说明 (节点的说明文案,包含三个节点的文案说明【转议题】、【已关闭】、【转项目】) + */ + private String operationExplain; + + /** + * 组织名称 + * */ + private String orgName; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueProjectRelationDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueProjectRelationDTO.java new file mode 100644 index 0000000000..dc58cbb60c --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueProjectRelationDTO.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.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题项目关系表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueProjectRelationDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID 主键ID + */ + private String id; + + /** + * 议题ID 议题ID + */ + private String issueId; + + /** + * 项目ID 项目ID + */ + private String projectId; + + /** + * 删除标识 0:未删除1:已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSatisfactionDetailDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSatisfactionDetailDTO.java new file mode 100644 index 0000000000..ddf04a4ece --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSatisfactionDetailDTO.java @@ -0,0 +1,86 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueSatisfactionDetailDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 评论 - 最多300字 + */ + private String comment; + + /** + * 满意度 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSatisfactionStatisticalDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSatisfactionStatisticalDTO.java new file mode 100644 index 0000000000..935feef5cd --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSatisfactionStatisticalDTO.java @@ -0,0 +1,91 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题满意度调查统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueSatisfactionStatisticalDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 一般满意数 + */ + private Integer goodCount; + + /** + * 非常满意数 + */ + private Integer perfectCount; + + /** + * 不满意数 + */ + private Integer badCount; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteDetailDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteDetailDTO.java new file mode 100644 index 0000000000..777f2dfbbc --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteDetailDTO.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.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题表决记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueVoteDetailDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 态度 - opposition(反对)support(赞成) + */ + private String attitude; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDTO.java new file mode 100644 index 0000000000..3c25a4dcd5 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDTO.java @@ -0,0 +1,91 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题表决统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueVoteStatisticalDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 支持数 + */ + private Integer supportCount; + + /** + * 反对数 + */ + private Integer oppositionCount; + + /** + * 应表决数 + */ + private Integer votableCount; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 删除标识 0未删除、1已删除 + */ + private String delFlag; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDailyDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDailyDTO.java new file mode 100644 index 0000000000..1434cef2db --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDailyDTO.java @@ -0,0 +1,116 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题表决按天统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-12 + */ +@Data +public class IssueVoteStatisticalDailyDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 统计日期 yyyy-MM-dd + */ + private Date statisticalDate; + + /** + * 到该日的总赞成数 + */ + private Integer supportCount; + + /** + * 到该日的总反对数 + */ + private Integer oppositionCount; + + /** + * 到该日的总票数 + */ + private Integer totalCount; + + /** + * 该日增量 + */ + private Integer todayIncrement; + + /** + * 该日赞成增量 + */ + private Integer supportIncrement; + + /** + * 该日反对增量 + */ + private Integer oppositionIncrement; + + /** + * 到该日的应表决数 + */ + private Integer votableCount; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/PolyLineDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/PolyLineDTO.java new file mode 100644 index 0000000000..975971e403 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/PolyLineDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 投票折线数据 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class PolyLineDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 投票日期 + */ + private Long voteDtae; + + /** + * 当日赞成票数量 + */ + private Integer supportIncrement; + + /** + * 当日反对票数量 + */ + private Integer oppositionIncrement; + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/TopicInfoDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/TopicInfoDTO.java new file mode 100644 index 0000000000..6dcf993139 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/TopicInfoDTO.java @@ -0,0 +1,43 @@ +package com.epmet.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * 话题详情(议题详情中的) + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class TopicInfoDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 话题id + */ + private String topicId; + + /** + * 话题内容 + */ + private String topicContent; + + /** + * 图片列表 + */ + private List topicImgs; + + /** + * 话题发表人(山东路168-尹女士) + */ + private String publishedUser; + + /** + * 话题发表时间 (时间戳 毫秒级) + */ + private Long publishedTime; + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CloseIssueFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CloseIssueFormDTO.java new file mode 100644 index 0000000000..d633a49564 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CloseIssueFormDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.form; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 议题管理-关闭议题-接口入参 + * @Author sun + */ +@Data +public class CloseIssueFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214502427L; + + @NotBlank(message = "议题Id不能为空") + private String issueId; + + @NotBlank(message = "解决状态不能为空") + private String resolveType; + + @NotBlank(message = "关闭理由不能为空") + @Length(max=1000,message = "手机号不能超过1000位") + private String closeReason; +} + diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java deleted file mode 100644 index fc93172558..0000000000 --- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.epmet.dto.form; - -import lombok.Data; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; - -/** - * @Description 测试入参 - * @Author yinzuomei - * @Date 2020/5/8 10:00 - */ -@Data -public class DemoTestFormDTO implements Serializable { - private static final long serialVersionUID = 4859779755214502427L; - @NotBlank(message = "客户id不能为空") - private String customerId; - @NotBlank(message = "网格id不能为空") - private String gridId; -} - diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluateFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluateFormDTO.java new file mode 100644 index 0000000000..541b1c6f58 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluateFormDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 提交满意度评价 + */ +@Data +public class EvaluateFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String IssueId; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价内容 + */ + private String comment; + + /** + * 用户id + */ + private String userId; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java new file mode 100644 index 0000000000..11c8bc0d5e --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已关闭 + */ +@Data +public class EvaluationListFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String IssueId; + + /** + * 页码 + */ + private Integer pageNo; + + /** + * 每页数量 + */ + private Integer pageSize; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/InitEvaluationFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/InitEvaluationFormDTO.java new file mode 100644 index 0000000000..c61af4f268 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/InitEvaluationFormDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class InitEvaluationFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String IssueId; + + /** + * 创建人 + */ + private String userId; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/IssueDetailFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/IssueDetailFormDTO.java new file mode 100644 index 0000000000..84b0d8f5e6 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/IssueDetailFormDTO.java @@ -0,0 +1,21 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 议题详情入参 + * @Author zxc + * @Date 2020/5/11 9:30 + */ +@Data +public class IssueDetailFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214503489L; + + @NotBlank(message = "议题id不能为空") + private String issueId; + +} + diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/IssueIdFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/IssueIdFormDTO.java new file mode 100644 index 0000000000..6b16e733ec --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/IssueIdFormDTO.java @@ -0,0 +1,21 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 议题Id + * @Author zxc + * @Date 2020/5/11 9:30 + */ +@Data +public class IssueIdFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214503489L; + + @NotBlank(message = "议题id不能为空") + private String issueId; + +} + diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/UserResiInfoListFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/UserResiInfoListFormDTO.java new file mode 100644 index 0000000000..1a5fe5274c --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/UserResiInfoListFormDTO.java @@ -0,0 +1,22 @@ +package com.epmet.dto.form; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description userId集合 + * @Author yinzuomei + * @Date 2020/4/7 18:20 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class UserResiInfoListFormDTO implements Serializable { + private static final long serialVersionUID = -4454561042197166135L; + + private List userIdList; +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java new file mode 100644 index 0000000000..126257e37d --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 表决中 支持、反对 投票 + */ +@Data +public class VoteFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 话题Id + */ + private String IssueId; + + /** + * 态度 - opposition(反对)support(赞成) + */ + private String attitude; + + /** + * 创建人 + */ + private String createdBy; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java new file mode 100644 index 0000000000..0a286112d7 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java @@ -0,0 +1,47 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已关闭 + */ +@Data +public class EvaluationListResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价用户Id + */ + private String userId; + + /** + * 评价用户(山东路168-尹女士) + */ + private String userNickName; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价时间 + */ + private Long evaluateTime; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 用户头像 + */ + private String userHeadPhoto; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/GridVotingIssueCountResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/GridVotingIssueCountResultDTO.java new file mode 100644 index 0000000000..61a4aecfbc --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/GridVotingIssueCountResultDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 网格下表决中的议题总数列表 + * @Author yinzuomei + * @Date 2020/5/13 22:49 + */ +@Data +public class GridVotingIssueCountResultDTO implements Serializable { + /** + * 网格id + */ + private String gridId; + + /** + * 表决中的议题总数 + */ + private Long count; +} + diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/InitEvaluationResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/InitEvaluationResultDTO.java new file mode 100644 index 0000000000..09d9f16635 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/InitEvaluationResultDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.result; + +import com.epmet.dto.EvaluateInfoDTO; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class InitEvaluationResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价状态:true已评价,false未评价 + */ + private Boolean status; + + /** + * 评价信息 + */ + private EvaluateInfoDTO evaluateInfo; + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueDetailResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueDetailResultDTO.java new file mode 100644 index 0000000000..8769c93e5b --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueDetailResultDTO.java @@ -0,0 +1,49 @@ +package com.epmet.dto.result; + +import com.epmet.dto.TopicInfoDTO; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 议题详情回参 + * @CreateTime 2020/5/11 9:31 + */ +@Data +public class IssueDetailResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 议题标题 + */ + private String issueTitle; + + /** + * 议题状态(voting 已转项目:shift_project 已关闭:closed) + */ + private String issueStatus; + + /** + * 话题信息 + */ + private TopicInfoDTO topicInfo; + + /** + * 议题建议 + */ + private String issueSuggestion; + + /** + * 所属网格(网格所属机关单位名称-网格名称) + */ + private String belongsGridName; + + /** + * 议题发起人(山东路168-尹女士) + */ + private String issueInitiator; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueResultDTO.java new file mode 100644 index 0000000000..b278b9f585 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueResultDTO.java @@ -0,0 +1,48 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 议题详情回参 + * @CreateTime 2020/5/11 9:31 + */ +@Data +public class IssueResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 议题标题 + */ + private String issueTitle; + + /** + * 议题状态(voting 已转项目:shift_project 已关闭:closed) + */ + private String issueStatus; + + /** + * 议题建议 + */ + private String issueSuggestion; + + /** + * 网格Id + */ + private String gridId; + + /** + * 用户id + */ + private String userId; + + /** + * 话题Id + */ + private String topicId; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/UserResiInfoResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/UserResiInfoResultDTO.java new file mode 100644 index 0000000000..6bdc1f6d2f --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/UserResiInfoResultDTO.java @@ -0,0 +1,64 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 用户注册信息返参DTO + * @Author yinzuomei + * @Date 2020/4/7 18:45 + */ +@Data +public class UserResiInfoResultDTO implements Serializable { + + /** + * 唯一标识 + */ + private String id; + + /** + * 用户Id(主键) user.id + */ + private String userId; + + /** + * 手机号(注册手机号) + */ + private String regMobile; + + /** + * 姓氏 + */ + private String surname; + + /** + * 名称 + */ + private String name; + + /** + * 街道 + */ + private String street; + + /** + * 小区名称 + */ + private String district; + + /** + * 楼栋单元 + */ + private String buildingAddress; + + /** + * 用户显示名称 + */ + private String showName; + + /** + * 用户头像 + */ + private String headPhoto; +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/VoteResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/VoteResultDTO.java new file mode 100644 index 0000000000..3d4db2594e --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/VoteResultDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 表决中议题详情——支持、反对数 + */ +@Data +public class VoteResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 表决状态:true已表决 false未表决 + */ + private Boolean voteFlag; + + /** + * 支持数量 + */ + private Integer supportCount; + + /** + * 反对数量 + */ + private Integer oppositionCount; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/VotingTrendResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/VotingTrendResultDTO.java new file mode 100644 index 0000000000..4718a4f2f0 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/VotingTrendResultDTO.java @@ -0,0 +1,44 @@ +package com.epmet.dto.result; + +import com.epmet.dto.PolyLineDTO; +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * 议题表决折线图 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class VotingTrendResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 应表决数量 + */ + private Integer shouldVoteCount; + + /** + * 实际表决数量 + */ + private Integer realityVoteCount; + + /** + * 截至今日赞成票总数 + */ + private Integer supportAmount; + + /** + * 截至今日反对票总数 + */ + private Integer oppositionAmount; + + /** + * 投票折线数据 + */ + private List polyLine; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/pom.xml b/epmet-module/gov-issue/gov-issue-server/pom.xml index 7a1cb980f7..f56d9e6b38 100644 --- a/epmet-module/gov-issue/gov-issue-server/pom.xml +++ b/epmet-module/gov-issue/gov-issue-server/pom.xml @@ -60,6 +60,24 @@ feign-httpclient 10.3.0 + + com.epmet + gov-org-client + 2.0.0 + compile + + + com.epmet + resi-group-client + 2.0.0 + compile + + + com.epmet + epmet-message-client + 2.0.0 + compile + diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/GovIssueRedisKeys.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/GovIssueRedisKeys.java new file mode 100644 index 0000000000..1da3dc7911 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/GovIssueRedisKeys.java @@ -0,0 +1,22 @@ +package com.epmet.constant; + +/** + * @Description gov-issue-server模块redis key + * @Author yinzuomei + * @Date 2020/5/13 23:00 + */ +public class GovIssueRedisKeys { + /** + * 党群e事通redis前缀 + */ + private static String rootPrefix = "epmet:"; + + + /** + * 政府工作段小程序:基层治理-议题管理(表决中议题总数)红点key + */ + public static String getWorkGrassrootsIssueRedDotKey(String gridId) { + return rootPrefix.concat(String.format("gov:wxmp:work:grassroots:issue:%s",gridId)); + } +} + diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java new file mode 100644 index 0000000000..c5170b7e79 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java @@ -0,0 +1,57 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + *

+ * https://www.renren.io + *

+ * 版权所有,侵权必究! + */ + +package com.epmet.constant; + +/** + * 常量 + * @author sun + * @since 1.0.0 + */ +public interface IssueConstant { + /** + * 议题状态-表决中 + */ + String ISSUE_VOTING = "voting"; + /** + * 议题状态-已转项目 + */ + String ISSUE_SHIFT_PROJECT = "shift_project"; + /** + * 议题状态-已关闭 + */ + String ISSUE_CLOSED = "closed"; + /** + * 议题解决类型-已解决 + */ + String ISSUE_RESLOVED = "resloved"; + /** + * 议题解决类型-未解决 + */ + String ISSUE_UNRESLOVED = "unresloved"; + + String SELECT_EXCEPTION = "获取议题详情数据失败"; + String UPPDATE_EXCEPTION = "议题详情表数据更新失败"; + + /** + * 议题来源类型类型-话题 + */ + String ISSUE_RESI_TOPIC = "resi_topic"; + + String SELECT_TOPIC_EXCEPTION = "获取话题数据失败"; + String SAVE_MSG_EXCEPTION = "关闭议题时给用户发送消息失败"; + + /** + * 议题管理-操作人所属机构类型(机构:agency | 部门:dept | 网格:grid) + */ + String ISSUE_AGENCY = "agency"; + String ISSUE_DEPT = "dept"; + String ISSUE_GRID = "grid"; + + String SELECT_USERINFO_EXCEPTION = "获取用户昵称、头像失败"; +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/UserMessageConstant.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/UserMessageConstant.java new file mode 100644 index 0000000000..ccbb7faa87 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/UserMessageConstant.java @@ -0,0 +1,25 @@ +package com.epmet.constant; + +/** + * @Description 议题管理模块消息通知 + * @Author sun + */ +public interface UserMessageConstant { + + /** + * 消息标题 + */ + String ISSUE_TITLE = "您有一条议题消息"; + + /** + * 议题关闭时,选择已解决 + */ + String ISSUE_RESLOVED_MSG = "您好,您发表的话题\"%s\"问题已解决,解决方案是:%s"; + + /** + * 议题关闭时,选择无需解决 + */ + String ISSUE_UNRESLOVED_MSG = "您好,您发表的话题\"%s\"问题无需解决,原因:%s"; + + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/GovIssueDemoController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/GovIssueDemoController.java deleted file mode 100644 index 219426566f..0000000000 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/GovIssueDemoController.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.epmet.controller; - -import com.epmet.commons.tools.utils.Result; -import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.dto.form.DemoTestFormDTO; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.web.bind.annotation.*; - -/** - * @Description 测试 - * @Author yinzuomei - * @Date 2020/5/7 22:47 - */ -@RestController -@RequestMapping("demo") -public class GovIssueDemoController { - private static final Logger logger = LoggerFactory.getLogger(GovIssueDemoController.class); - - @PostMapping("test") - public Result test(@RequestBody DemoTestFormDTO formDTO) { - ValidatorUtils.validateEntity(formDTO); - logger.info(String.format("请求成功客户id[%s],网格id[%s]",formDTO.getCustomerId(),formDTO.getGridId())); - return new Result().ok("gov-issue-server请求成功"); - } -} - diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java new file mode 100644 index 0000000000..506a70ec9d --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java @@ -0,0 +1,52 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.IssueDetailFormDTO; +import com.epmet.dto.result.GridVotingIssueCountResultDTO; +import com.epmet.dto.result.IssueResultDTO; +import com.epmet.service.IssueService; +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; + +/** + * @Description 居民端党群议事 + * @Author yinzuomei + * @Date 2020/5/11 9:04 + */ +@RestController +@RequestMapping("issue") +public class IssueController { + + @Autowired + private IssueService issueService; + + /** + * @Description 议题详情 + * @param issueDetail + * @author zxc + * @date 2020/5/11 9:42 + */ + @PostMapping(value = "detail") + public Result detail(@RequestBody IssueDetailFormDTO issueDetail){ + return new Result().ok(issueService.detail(issueDetail)); + } + + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 传入网格id列表,查询出每个网格下表决中的议题总数 + * @Date 2020/5/13 22:52 + **/ + @PostMapping("queryvotingissuecount") + public Result> queryVotingIssueCount(@RequestBody List gridIdList) { + List list = issueService.queryVotingIssueCount(gridIdList); + return new Result>().ok(list); + } +} + diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueCustomerParameterController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueCustomerParameterController.java new file mode 100644 index 0000000000..7371c32666 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueCustomerParameterController.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.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.dto.IssueCustomerParameterDTO; +import com.epmet.excel.IssueCustomerParameterExcel; +import com.epmet.service.IssueCustomerParameterService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issuecustomerparameter") +public class IssueCustomerParameterController { + + @Autowired + private IssueCustomerParameterService issueCustomerParameterService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueCustomerParameterService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueCustomerParameterDTO data = issueCustomerParameterService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueCustomerParameterDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueCustomerParameterService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueCustomerParameterDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueCustomerParameterService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueCustomerParameterService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueCustomerParameterService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueCustomerParameterExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java new file mode 100644 index 0000000000..ce1bfd584f --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java @@ -0,0 +1,86 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.annotation.RequirePermission; +import com.epmet.commons.tools.enums.RequirePermissionEnum; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.form.*; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.VotingTrendResultDTO; +import com.epmet.service.IssueService; +import com.epmet.service.IssueVoteStatisticalService; +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; + +/** + * @Description 政府端-基层治理-议题管理 + * @Author yinzuomei + * @Date 2020/5/11 9:06 + */ +@RestController +@RequestMapping("manage") +public class IssueManageController { + + @Autowired + private IssueService issueService; + @Autowired + private IssueVoteStatisticalService issueVoteStatisticalService; + + /** + * @param formDTO + * @return + * @Author sun + * @Description 议题管理-关闭议题 + **/ + @PostMapping("closeissue") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_CLOSE) + public Result closeIssue(@LoginUser TokenDto tokenDTO, @RequestBody CloseIssueFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + issueService.closeIssue(formDTO); + return new Result(); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 议题管理-部门人员选择 + **/ + @PostMapping("departmentstafflist") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_SHIFT_PROJECT) + public Result departmentStaffList(@LoginUser TokenDto tokenDTO, @RequestBody DepartmentStaffListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + return new Result().ok(issueService.departmentStaffList(formDTO)); + } + + /** + * @Description 详情折线图 + * @param issueId + * @author zxc + */ + @PostMapping("votingtrend") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result votingTrend(@RequestBody IssueIdFormDTO issueId){ + return new Result().ok(issueVoteStatisticalService.votingTrend(issueId)); + } + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + @PostMapping("evaluationlist") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result> evaluationList(@RequestBody EvaluationListFormDTO formDTO){ + return new Result>().ok(issueVoteStatisticalService.evaluationList(formDTO)); + } +} + diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProcessController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProcessController.java new file mode 100644 index 0000000000..bf6c57f863 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProcessController.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.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.dto.IssueProcessDTO; +import com.epmet.excel.IssueProcessExcel; +import com.epmet.service.IssueProcessService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issueprocess") +public class IssueProcessController { + + @Autowired + private IssueProcessService issueProcessService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueProcessService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueProcessDTO data = issueProcessService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueProcessDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueProcessService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueProcessDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueProcessService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueProcessService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueProcessService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueProcessExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectRelationController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectRelationController.java new file mode 100644 index 0000000000..7efd1b1394 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectRelationController.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.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.dto.IssueProjectRelationDTO; +import com.epmet.excel.IssueProjectRelationExcel; +import com.epmet.service.IssueProjectRelationService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issueprojectrelation") +public class IssueProjectRelationController { + + @Autowired + private IssueProjectRelationService issueProjectRelationService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueProjectRelationService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueProjectRelationDTO data = issueProjectRelationService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueProjectRelationDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueProjectRelationService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueProjectRelationDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueProjectRelationService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueProjectRelationService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueProjectRelationService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueProjectRelationExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSatisfactionDetailController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSatisfactionDetailController.java new file mode 100644 index 0000000000..4eb362bec6 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSatisfactionDetailController.java @@ -0,0 +1,130 @@ +/** + * 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.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.dto.IssueSatisfactionDetailDTO; +import com.epmet.dto.form.EvaluateFormDTO; +import com.epmet.dto.form.EvaluationListFormDTO; +import com.epmet.dto.form.InitEvaluationFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.InitEvaluationResultDTO; +import com.epmet.excel.IssueSatisfactionDetailExcel; +import com.epmet.service.IssueSatisfactionDetailService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issuesatisfactiondetail") +public class IssueSatisfactionDetailController { + + @Autowired + private IssueSatisfactionDetailService issueSatisfactionDetailService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueSatisfactionDetailService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueSatisfactionDetailDTO data = issueSatisfactionDetailService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueSatisfactionDetailDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueSatisfactionDetailService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueSatisfactionDetailDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueSatisfactionDetailService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueSatisfactionDetailService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueSatisfactionDetailService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueSatisfactionDetailExcel.class); + } + + /** + * @Description 满意度评价初始化 + * @param formDTO + * @author zxc + */ + @PostMapping("initevaluation") + public Result initEvaluation(@RequestBody InitEvaluationFormDTO formDTO){ + return new Result().ok(issueSatisfactionDetailService.initEvaluation(formDTO)); + } + + /** + * @Description 提交满意度评价——已关闭 + * @param formDTO + * @author zxc + */ + @PostMapping("evaluate") + public Result evaluate(@RequestBody EvaluateFormDTO formDTO){ + issueSatisfactionDetailService.evaluate(formDTO); + return new Result(); + } + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + @PostMapping("evaluationlist") + public Result> evaluationList(@RequestBody EvaluationListFormDTO formDTO){ + return new Result>().ok(issueSatisfactionDetailService.evaluationList(formDTO)); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSatisfactionStatisticalController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSatisfactionStatisticalController.java new file mode 100644 index 0000000000..f9412e0996 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSatisfactionStatisticalController.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.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.dto.IssueSatisfactionStatisticalDTO; +import com.epmet.excel.IssueSatisfactionStatisticalExcel; +import com.epmet.service.IssueSatisfactionStatisticalService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issuesatisfactionstatistical") +public class IssueSatisfactionStatisticalController { + + @Autowired + private IssueSatisfactionStatisticalService issueSatisfactionStatisticalService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueSatisfactionStatisticalService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueSatisfactionStatisticalDTO data = issueSatisfactionStatisticalService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueSatisfactionStatisticalDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueSatisfactionStatisticalService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueSatisfactionStatisticalDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueSatisfactionStatisticalService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueSatisfactionStatisticalService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueSatisfactionStatisticalService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueSatisfactionStatisticalExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteDetailController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteDetailController.java new file mode 100644 index 0000000000..d7a6153418 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteDetailController.java @@ -0,0 +1,107 @@ +/** + * 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.annotation.LoginUser; +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.dto.IssueVoteDetailDTO; +import com.epmet.dto.form.VoteFormDTO; +import com.epmet.excel.IssueVoteDetailExcel; +import com.epmet.service.IssueVoteDetailService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issuevotedetail") +public class IssueVoteDetailController { + + @Autowired + private IssueVoteDetailService issueVoteDetailService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueVoteDetailService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueVoteDetailDTO data = issueVoteDetailService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueVoteDetailDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueVoteDetailService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueVoteDetailDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueVoteDetailService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueVoteDetailService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueVoteDetailService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueVoteDetailExcel.class); + } + + /** + * @Description 表决中 反对、支持 投票 + * @param formDTO + * @author zxc + */ + @PostMapping("vote") + public Result vote(@RequestBody VoteFormDTO formDTO){ + issueVoteDetailService.vote(formDTO); + return new Result(); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalController.java new file mode 100644 index 0000000000..a1d69e59d9 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalController.java @@ -0,0 +1,121 @@ +/** + * 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.annotation.LoginUser; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; +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.dto.IssueVoteStatisticalDTO; +import com.epmet.dto.form.IssueIdFormDTO; +import com.epmet.dto.result.VoteResultDTO; +import com.epmet.dto.result.VotingTrendResultDTO; +import com.epmet.excel.IssueVoteStatisticalExcel; +import com.epmet.service.IssueVoteStatisticalService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issuevotestatistical") +public class IssueVoteStatisticalController { + + @Autowired + private IssueVoteStatisticalService issueVoteStatisticalService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueVoteStatisticalService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueVoteStatisticalDTO data = issueVoteStatisticalService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueVoteStatisticalDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueVoteStatisticalService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueVoteStatisticalDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueVoteStatisticalService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueVoteStatisticalService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueVoteStatisticalService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueVoteStatisticalExcel.class); + } + + /** + * @Description 表决中议题详情——支持、反对数 + * @param tokenDto + * @param formDTO + * @author zxc + */ + @PostMapping("votecount") + public Result voteCount(@LoginUser TokenDto tokenDto, @RequestBody IssueIdFormDTO formDTO){ + return new Result().ok(issueVoteStatisticalService.voteCount(tokenDto,formDTO)); + } + + + /** + * @Description 议题表决折线图 + * @param formDTO + * @author zxc + */ + @PostMapping("votingtrend") + public Result votingTrend(@RequestBody IssueIdFormDTO formDTO){ + return new Result().ok(issueVoteStatisticalService.votingTrend(formDTO)); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalDailyController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalDailyController.java new file mode 100644 index 0000000000..7e5506354a --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalDailyController.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.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.dto.IssueVoteStatisticalDailyDTO; +import com.epmet.excel.IssueVoteStatisticalDailyExcel; +import com.epmet.service.IssueVoteStatisticalDailyService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("issuevotestatisticaldaily") +public class IssueVoteStatisticalDailyController { + + @Autowired + private IssueVoteStatisticalDailyService issueVoteStatisticalDailyService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = issueVoteStatisticalDailyService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + IssueVoteStatisticalDailyDTO data = issueVoteStatisticalDailyService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody IssueVoteStatisticalDailyDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + issueVoteStatisticalDailyService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody IssueVoteStatisticalDailyDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + issueVoteStatisticalDailyService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + issueVoteStatisticalDailyService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = issueVoteStatisticalDailyService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IssueVoteStatisticalDailyExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueCustomerParameterDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueCustomerParameterDao.java new file mode 100644 index 0000000000..48fa1e3491 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueCustomerParameterDao.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.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IssueCustomerParameterEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 议题客户参数定制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueCustomerParameterDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java new file mode 100644 index 0000000000..8c601bd3ca --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java @@ -0,0 +1,43 @@ +/** + * 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.IssueDetailFormDTO; +import com.epmet.dto.result.IssueResultDTO; +import com.epmet.entity.IssueEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 议题详情 关联话题,转议题时间必须要和话题转议题时间一致、关闭时间必须要和操作记录表的关闭记录时间一致、转项目时间必须要和项目记录生成时间一致,注意服务间调用的时间一致性。每个议题最后总会被关闭。 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueDao extends BaseDao { + + /** + * @Description 议题详情 + * @param formDTO + * @author zxc + * @date 2020/5/11 10:11 + */ + IssueResultDTO issueDetail(IssueDetailFormDTO formDTO); + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProcessDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProcessDao.java new file mode 100644 index 0000000000..26603169ae --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProcessDao.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.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IssueProcessEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 议题进展记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueProcessDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectRelationDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectRelationDao.java new file mode 100644 index 0000000000..430dc74741 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectRelationDao.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.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IssueProjectRelationEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 议题项目关系表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueProjectRelationDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSatisfactionDetailDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSatisfactionDetailDao.java new file mode 100644 index 0000000000..b8152ad1d3 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSatisfactionDetailDao.java @@ -0,0 +1,53 @@ +/** + * 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.EvaluateInfoDTO; +import com.epmet.dto.form.EvaluationListFormDTO; +import com.epmet.dto.form.InitEvaluationFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.entity.IssueSatisfactionDetailEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 议题满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueSatisfactionDetailDao extends BaseDao { + + /** + * @Description 满意度评价初始化 + * @param formDTO + * @author zxc + */ + EvaluateInfoDTO checkSatisfaction(InitEvaluationFormDTO formDTO); + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + List evaluationList(EvaluationListFormDTO formDTO); + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSatisfactionStatisticalDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSatisfactionStatisticalDao.java new file mode 100644 index 0000000000..e3eeabb823 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSatisfactionStatisticalDao.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.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IssueSatisfactionStatisticalEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 议题满意度调查统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueSatisfactionStatisticalDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java new file mode 100644 index 0000000000..1b0b35cd83 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.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.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.form.VoteFormDTO; +import com.epmet.entity.IssueVoteDetailEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 议题表决记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueVoteDetailDao extends BaseDao { + + /** + * @Description 支持、反对校验 + * @param formDTO + * @author zxc + */ + Integer checkoutVote(VoteFormDTO formDTO); + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDailyDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDailyDao.java new file mode 100644 index 0000000000..06cfea984f --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDailyDao.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.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IssueVoteStatisticalDailyEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 议题表决按天统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueVoteStatisticalDailyDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDao.java new file mode 100644 index 0000000000..f6aa7956ee --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDao.java @@ -0,0 +1,69 @@ +/** + * 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.PolyLineDTO; +import com.epmet.dto.form.IssueIdFormDTO; +import com.epmet.dto.result.VoteResultDTO; +import com.epmet.dto.result.VotingTrendResultDTO; +import com.epmet.entity.IssueVoteStatisticalEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 议题表决统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface IssueVoteStatisticalDao extends BaseDao { + + /** + * @Description 表决中议题详情——支持、反对数 + * @param issueId + * @author zxc + */ + VoteResultDTO voteCount(IssueIdFormDTO issueId); + + /** + * @Description 校验是否投票(表决中详情——支持、反对) + * @param issueId + * @param userId + * @author zxc + */ + Integer checkVote(@Param("issueId")String issueId,@Param("userId")String userId); + + /** + * @Description 议题表决折线图 + * @param issueId + * @author zxc + */ + VotingTrendResultDTO votingTrend(IssueIdFormDTO issueId); + + /** + * @Description 获取折线每天的支持、反对数量 + * @param issueId + * @author zxc + */ + List polyLineData(IssueIdFormDTO issueId); + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueCustomerParameterEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueCustomerParameterEntity.java new file mode 100644 index 0000000000..72e7769da7 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueCustomerParameterEntity.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_customer_parameter") +public class IssueCustomerParameterEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户ID + */ + private String customerId; + + /** + * 参数键 eg:voting_time_limit + */ + private String parameterKey; + + /** + * 参数名 eg:表决期限 + */ + private String parameterName; + + /** + * 参数值 eg:10(天) + */ + private String parameterValue; + + /** + * 参数说明 eg:这个客户下所有的网格议题表决期限都是10天 + */ + private String description; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueEntity.java new file mode 100644 index 0000000000..cfa9b8c046 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueEntity.java @@ -0,0 +1,116 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue") +public class IssueEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题状态 表决中:voting 已转项目:shift_project 已关闭:closed + */ + private String issueStatus; + + /** + * 来源类型 eg:resi_topic + */ + private String sourceType; + + /** + * 来源ID eg:2223232(当SOURCE_TYPE为"resi_topic"时,这里指话题的ID) + */ + private String sourceId; + + /** + * 关闭理由 【未关闭时可以为空】关闭话题时必填的理由,转项目后而且已经结案,这个字段不回写 + */ + private String closeReason; + + /** + * 解决类型 【未关闭时可以为空】已解决resloved、未解决unresloved,对应在关闭议题时所选的checkbox,转项目后而且已经结案,这个字段不回写 + */ + private String resolveType; + + /** + * 议题名称 最多20字 + */ + private String issueTitle; + + /** + * 建议 建议 + */ + private String suggestion; + + /** + * 客户ID 客户ID + */ + private String customerId; + + /** + * 网格ID 居民端议题对应一个网格iId + */ + private String gridId; + + /** + * 所属机关 【数据权限-非必填】11:22:33(agencyId)数据权限控制 + */ + private String orgIdPath; + + /** + * 组织ID 【数据权限-非必填】agencyId + */ + private String orgId; + + /** + * 表决截止日期 表决截止日期 + */ + private Date votingDeadline; + + /** + * 表决发起日期(转议题日期) 表决发起日期(转议题日期) + */ + private Date decidedTime; + + /** + * 转项目日期 转项目日期(服务间调用日期一致性) + */ + private Date shiftedTime; + + /** + * 关闭日期 关闭日期 + */ + private Date closedTime; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueProcessEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueProcessEntity.java new file mode 100644 index 0000000000..3dceb5a1e3 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueProcessEntity.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.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_process") +public class IssueProcessEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String issueId; + + /** + * 操作状态 - 表决中:voting 已转项目:shift_project 已关闭:closed + */ + private String issueStatus; + + /** + * 组织类型 操作人所属机构类型(机构:agency | 部门:dept | 网格:grid)操作人可能来源于居民端和政府段,但是只有在“转议题”的时候才是居民端拥有组长权限的人操作,所以当这条记录是转议题时,该记录为grid,ORD_ID相应的也为GRID_ID + */ + private String orgType; + + /** + * 组织ID 操作人所属机构ID(对应的有网格ID、部门ID、机构ID) + */ + private String orgId; + + /** + * 操作说明 (节点的说明文案,包含三个节点的文案说明【转议题】、【已关闭】、【转项目】) + */ + private String operationExplain; + + /** + * 组织名称 + * */ + private String orgName; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueProjectRelationEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueProjectRelationEntity.java new file mode 100644 index 0000000000..c1fcf5f579 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueProjectRelationEntity.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.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_project_relation") +public class IssueProjectRelationEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID 议题ID + */ + private String issueId; + + /** + * 项目ID 项目ID + */ + private String projectId; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSatisfactionDetailEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSatisfactionDetailEntity.java new file mode 100644 index 0000000000..d36fdababc --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSatisfactionDetailEntity.java @@ -0,0 +1,56 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_satisfaction_detail") +public class IssueSatisfactionDetailEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String issueId; + + /** + * 评论 - 最多300字 + */ + private String comment; + + /** + * 满意度 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSatisfactionStatisticalEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSatisfactionStatisticalEntity.java new file mode 100644 index 0000000000..243b1e441a --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSatisfactionStatisticalEntity.java @@ -0,0 +1,61 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_satisfaction_statistical") +public class IssueSatisfactionStatisticalEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String issueId; + + /** + * 一般满意数 + */ + private Integer goodCount; + + /** + * 非常满意数 + */ + private Integer perfectCount; + + /** + * 不满意数 + */ + private Integer badCount; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteDetailEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteDetailEntity.java new file mode 100644 index 0000000000..1f3381b687 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteDetailEntity.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.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_vote_detail") +public class IssueVoteDetailEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String issueId; + + /** + * 态度 - opposition(反对)support(赞成) + */ + private String attitude; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteStatisticalDailyEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteStatisticalDailyEntity.java new file mode 100644 index 0000000000..92feff0236 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteStatisticalDailyEntity.java @@ -0,0 +1,86 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_vote_statistical_daily") +public class IssueVoteStatisticalDailyEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String issueId; + + /** + * 统计日期 yyyy-MM-dd + */ + private Date statisticalDate; + + /** + * 到该日的总赞成数 + */ + private Integer supportCount; + + /** + * 到该日的总反对数 + */ + private Integer oppositionCount; + + /** + * 到该日的总票数 + */ + private Integer totalCount; + + /** + * 该日增量 + */ + private Integer todayIncrement; + + /** + * 该日赞成增量 + */ + private Integer supportIncrement; + + /** + * 该日反对增量 + */ + private Integer oppositionIncrement; + + /** + * 到该日的应表决数 + */ + private Integer votableCount; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteStatisticalEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteStatisticalEntity.java new file mode 100644 index 0000000000..d287eddf27 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueVoteStatisticalEntity.java @@ -0,0 +1,61 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("issue_vote_statistical") +public class IssueVoteStatisticalEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String issueId; + + /** + * 支持数 + */ + private Integer supportCount; + + /** + * 反对数 + */ + private Integer oppositionCount; + + /** + * 应表决数 + */ + private Integer votableCount; + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueCustomerParameterExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueCustomerParameterExcel.java new file mode 100644 index 0000000000..9ede57879c --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueCustomerParameterExcel.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueCustomerParameterExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "客户ID") + private String customerId; + + @Excel(name = "参数键 eg:voting_time_limit") + private String parameterKey; + + @Excel(name = "参数名 eg:表决期限") + private String parameterName; + + @Excel(name = "参数值 eg:10(天)") + private String parameterValue; + + @Excel(name = "参数说明 eg:这个客户下所有的网格议题表决期限都是10天") + private String description; + + @Excel(name = "删除标志 0:未删除,1:已删除") + 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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueExcel.java new file mode 100644 index 0000000000..e012192a3f --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueExcel.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.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 议题详情表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueExcel { + + @Excel(name = "议题ID") + private String id; + + @Excel(name = "议题状态 表决中:voting 已转项目:shift_project 已关闭:closed") + private String issueStatus; + + @Excel(name = "来源类型 eg:resi_topic") + private String sourceType; + + @Excel(name = "来源ID eg:2223232(当SOURCE_TYPE为 resi_topic 时,这里指话题的ID)") + private String sourceId; + + @Excel(name = "关闭理由 【未关闭时可以为空】关闭议题时必填的理由,转项目后而且已经结案,这个字段不回写") + private String closeReason; + + @Excel(name = "解决类型 【未关闭时可以为空】已解决resloved、未解决unresloved,对应在关闭议题时所选的checkbox,转项目后而且已经结案,这个字段不回写") + private String resolveType; + + @Excel(name = "议题名称 最多20字") + private String issueTitle; + + @Excel(name = "建议 最多1000字") + private String suggestion; + + @Excel(name = "客户ID") + private String customerId; + + @Excel(name = "网格ID 居民端议题对应一个网格Id") + private String gridId; + + @Excel(name = "所属机关 【数据权限-非必填】11:22:33(agencyId)数据权限控制") + private String orgIdPath; + + @Excel(name = "组织ID 【数据权限-非必填】agencyId") + private String orgId; + + @Excel(name = "表决截止日期") + private Date votingDeadline; + + @Excel(name = "表决发起日期(转议题日期)") + private Date decidedTime; + + @Excel(name = "转项目日期 (服务间调用日期一致性)") + private Date shiftedTime; + + @Excel(name = "关闭日期") + private Date closedTime; + + @Excel(name = "删除标识 0未删除、1已删除") + 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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueProcessExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueProcessExcel.java new file mode 100644 index 0000000000..0873d88c68 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueProcessExcel.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.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 议题进展记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueProcessExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "议题ID") + private String issueId; + + @Excel(name = "操作状态") + private String issueStatus; + + @Excel(name = "组织类型 ") + private String orgType; + + @Excel(name = "组织ID 操作人所属机构ID(对应的有网格ID、部门ID、机构ID)") + private String orgId; + + @Excel(name = "部门名称") + private String orgName; + + @Excel(name = "操作说明 ") + private String operationExplain; + + @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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueProjectRelationExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueProjectRelationExcel.java new file mode 100644 index 0000000000..620eee36c1 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueProjectRelationExcel.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.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 议题项目关系表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueProjectRelationExcel { + + @Excel(name = "主键ID 主键ID") + private String id; + + @Excel(name = "议题ID 议题ID") + private String issueId; + + @Excel(name = "项目ID 项目ID") + private String projectId; + + @Excel(name = "删除标识 0:未删除1:已删除") + 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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueSatisfactionDetailExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueSatisfactionDetailExcel.java new file mode 100644 index 0000000000..804d0bbacc --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueSatisfactionDetailExcel.java @@ -0,0 +1,65 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueSatisfactionDetailExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "议题ID") + private String issueId; + + @Excel(name = "评论 - 最多300字") + private String comment; + + @Excel(name = "满意度 满意度 - 不满意:bad、基本满意:good、非常满意:perfect") + private String satisfaction; + + @Excel(name = "删除标识 0未删除、1已删除") + 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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueSatisfactionStatisticalExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueSatisfactionStatisticalExcel.java new file mode 100644 index 0000000000..be2b748413 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueSatisfactionStatisticalExcel.java @@ -0,0 +1,68 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueSatisfactionStatisticalExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "议题ID") + private String issueId; + + @Excel(name = "一般满意数") + private Integer goodCount; + + @Excel(name = "非常满意数") + private Integer perfectCount; + + @Excel(name = "不满意数") + private Integer badCount; + + @Excel(name = "删除标识 0未删除、1已删除") + 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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteDetailExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteDetailExcel.java new file mode 100644 index 0000000000..5ea0c106a3 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteDetailExcel.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.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 议题表决记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueVoteDetailExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "议题ID") + private String issueId; + + @Excel(name = "态度 - opposition(反对)support(赞成)") + private String attitude; + + @Excel(name = "删除标识 0未删除、1已删除") + 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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteStatisticalDailyExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteStatisticalDailyExcel.java new file mode 100644 index 0000000000..deafe9f0b9 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteStatisticalDailyExcel.java @@ -0,0 +1,83 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueVoteStatisticalDailyExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "议题ID") + private String issueId; + + @Excel(name = "统计日期 yyyy-MM-dd") + private Date statisticalDate; + + @Excel(name = "到该日的总赞成数") + private Integer supportCount; + + @Excel(name = "到该日的总反对数") + private Integer oppositionCount; + + @Excel(name = "到该日的总票数") + private Integer totalCount; + + @Excel(name = "该日增量") + private Integer todayIncrement; + + @Excel(name = "该日赞成增量") + private Integer supportIncrement; + + @Excel(name = "该日反对增量") + private Integer oppositionIncrement; + + @Excel(name = "到该日的应表决数") + private Integer votableCount; + + @Excel(name = "删除标识 0未删除、1已删除") + 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-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteStatisticalExcel.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteStatisticalExcel.java new file mode 100644 index 0000000000..ffa83424a8 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/excel/IssueVoteStatisticalExcel.java @@ -0,0 +1,68 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueVoteStatisticalExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "议题ID") + private String issueId; + + @Excel(name = "支持数") + private Integer supportCount; + + @Excel(name = "反对数") + private Integer oppositionCount; + + @Excel(name = "应表决数") + private Integer votableCount; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "删除标识 0未删除、1已删除") + private String delFlag; + + @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-issue/gov-issue-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java new file mode 100644 index 0000000000..dd7dd564dc --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java @@ -0,0 +1,32 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.feign.fallback.EpmetUserFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @author zxc + * @dscription + * @date 2020/5/11 10:32 + */ +//url = "localhost:8087" +@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class) +public interface EpmetUserFeignClient { + + /** + * @Description 查询评价人和评价人头像 + * @param formDTO + * @author zxc + */ + @PostMapping("/epmetuser/userresiinfo/getuserresiinfolist") + Result> getUserResiInfoList(@RequestBody UserResiInfoListFormDTO formDTO); + + +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java new file mode 100644 index 0000000000..448afc2e58 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java @@ -0,0 +1,38 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.form.CustomerGridFormDTO; +import com.epmet.dto.result.AgencyGridResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.feign.fallback.GovOrgFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @Description 调用gov-org服务 + * @Author sun + * , url = "localhost:8092" + */ +@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class) +public interface GovOrgFeignClient { + /** + * @param + * @return + * @Author sun + * @Description 根据组织Id、网格Id查询组织、网格名称 + **/ + @PostMapping("/gov/org/customergrid/getcustomergridbygridid") + Result getAgencyAndGrid(AgencyGridResultDTO agencyGridResultDTO); + + /** + * @param agencyId + * @return + * @Author sun + * @Description 查询组织下人员,组织下部门人员,组织下网格人员列表信息 + **/ + @PostMapping(value = "/gov/org/customeragency/departmentstafflist/{agencyId}") + Result departmentStaffList(@PathVariable("agencyId") String agencyId); +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/MessageFeignClient.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/MessageFeignClient.java new file mode 100644 index 0000000000..3c994298c5 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/MessageFeignClient.java @@ -0,0 +1,29 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.UserMessageFormDTO; +import com.epmet.feign.fallback.MessageFeignClientFallback; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PostMapping; + +import java.util.List; + +/** + * @Description 调用epmet-message服务 + * @Author sun + * , url = "localhost:8085" + */ +@FeignClient(name = ServiceConstant.EPMET_MESSAGE_SERVER, fallback = MessageFeignClientFallback.class) +public interface MessageFeignClient { + + /** + * @param msgList + * @return com.epmet.commons.tools.utils.Result + * @Author sun + * @Description 关闭议题给话题创建人和议题发起人发送消息 + **/ + @PostMapping(value = "message/usermessage/saveusermessagelist", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result saveUserMessageList(List msgList); +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java new file mode 100644 index 0000000000..6ca577ec34 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java @@ -0,0 +1,28 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.AgencyGridResultDTO; +import com.epmet.feign.fallback.ResiGroupFeignClientFallBack; +import com.epmet.resi.group.dto.topic.ResiTopicDTO; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @Description 调用resi-group服务 + * @Author sun + * , url = "localhost:8095" + */ +@FeignClient(name = ServiceConstant.RESI_GROUP_SERVER, fallback = ResiGroupFeignClientFallBack.class) +public interface ResiGroupFeignClient { + + /** + * @param + * @return + * @Author sun + * @Description 根据话题Id查询话题信息 + **/ + @PostMapping("/resi/group/topic/gettopicbyid/{topicId}") + Result getTopicById(@PathVariable("topicId") String topicId); +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java new file mode 100644 index 0000000000..8dd1e31196 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java @@ -0,0 +1,24 @@ +package com.epmet.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.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.feign.EpmetUserFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Auther zxc + * @Create 2020-05-11 10:33 + */ +@Component +public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { + + @Override + public Result> getUserResiInfoList(UserResiInfoListFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getUserResiInfoList", formDTO); + } +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java new file mode 100644 index 0000000000..336832326b --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java @@ -0,0 +1,27 @@ +package com.epmet.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.dto.result.AgencyGridResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.feign.GovOrgFeignClient; +import org.springframework.stereotype.Component; + +/** + * @Description 调用gov-org服务 + * @Author sun + */ +@Component +public class GovOrgFeignClientFallBack implements GovOrgFeignClient { + + @Override + public Result getAgencyAndGrid(AgencyGridResultDTO agencyGridResultDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getagencyandgrid", agencyGridResultDTO); + } + + @Override + public Result departmentStaffList(String agencyId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "departmentStaffList", agencyId); + } +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/MessageFeignClientFallback.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/MessageFeignClientFallback.java new file mode 100644 index 0000000000..bb5491ea78 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/MessageFeignClientFallback.java @@ -0,0 +1,23 @@ +package com.epmet.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.dto.form.UserMessageFormDTO; +import com.epmet.feign.MessageFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description 调用epmet-message服务 + * @Author sun + */ +@Component +public class MessageFeignClientFallback implements MessageFeignClient { + + @Override + public Result saveUserMessageList(List msgList) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_MESSAGE_SERVER, "saveUserMessageList", msgList); + } +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java new file mode 100644 index 0000000000..6f09e42b89 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java @@ -0,0 +1,21 @@ +package com.epmet.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.dto.result.AgencyGridResultDTO; +import com.epmet.feign.ResiGroupFeignClient; +import com.epmet.resi.group.dto.topic.ResiTopicDTO; +import org.springframework.stereotype.Component; + +/** + * @Description 调用resi-group服务 + * @Author sun + */ +@Component +public class ResiGroupFeignClientFallBack implements ResiGroupFeignClient { + @Override + public Result getTopicById(String topicId) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "gettopicbyid", topicId); + } +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/GovIssueRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/GovIssueRedis.java new file mode 100644 index 0000000000..1dacca6b18 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/GovIssueRedis.java @@ -0,0 +1,80 @@ +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import com.epmet.constant.GovIssueRedisKeys; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * @Description gov-issue-server模块redis + * @Author yinzuomei + * @Date 2020/5/13 22:57 + */ +@Component +public class GovIssueRedis { + private Logger logger = LoggerFactory.getLogger(getClass()); + @Autowired + private RedisUtils redisUtils; + + /** + * @return java.lang.Long + * @param gridId + * @Author yinzuomei + * @Description 居民端,组长将话题转为议题成功后,调用此方法,该网格下表决中的议题数量+1 + * @Date 2020/5/14 10:12 + **/ + public Long addWorkGrassrootsIssueRedDotValue(String gridId){ + Long votingIssueCount = 0L; + try { + String workGrassrootsIssueRedDotKey = GovIssueRedisKeys.getWorkGrassrootsIssueRedDotKey(gridId); + votingIssueCount = redisUtils.incrementAndGet(workGrassrootsIssueRedDotKey); + logger.info(String.format("居民端话题转议题提交,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsIssueRedDotKey, votingIssueCount)); + } catch (Exception e) { + logger.error(String.format("居民端话题转议题提交,更新redis-reddot值异常%s",e.getMessage())); + e.printStackTrace(); + } + return votingIssueCount; + } + + /** + * @return java.lang.Long + * @param gridId + * @Author yinzuomei + * @Description 政府端工作人员关闭议题或者将议题转项目成功后,需要调用此方法,将网格下表决中的议题数量-1 + * @Date 2020/5/14 10:12 + **/ + public Long subtractWorkGrassrootsIssueRedDotValue(String gridId){ + Long votingIssueCount = 0L; + try { + String workGrassrootsIssueRedDotKey = GovIssueRedisKeys.getWorkGrassrootsIssueRedDotKey(gridId); + votingIssueCount = redisUtils.decrementAndGet(workGrassrootsIssueRedDotKey); + logger.info(String.format("政府端(关闭议题、议题转项目)提交,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsIssueRedDotKey, votingIssueCount)); + } catch (Exception e) { + logger.error(String.format("政府端(关闭议题、议题转项目)提交,更新redis-reddot值异常%s",e.getMessage())); + e.printStackTrace(); + } + return votingIssueCount; + } + + /** + * @return java.lang.Long + * @param gridId + * @Author yinzuomei + * @Description 获取某网格下表决中的议题总数 + * @Date 2020/5/14 9:40 + **/ + public Long queryVotingIssueCount(String gridId) { + Long auditingGroupCount = 0L; + try { + String workGrassrootsGroupRedDotKey = GovIssueRedisKeys.getWorkGrassrootsIssueRedDotKey(gridId); + auditingGroupCount = (Long) redisUtils.get(workGrassrootsGroupRedDotKey); + } catch (Exception e) { + logger.error(String.format("网格id%s,查询网格下表决中议题总数异常%s", gridId, e.getMessage())); + e.printStackTrace(); + } + return auditingGroupCount; + } +} + diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueCustomerParameterRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueCustomerParameterRedis.java new file mode 100644 index 0000000000..1152ccab05 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueCustomerParameterRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueCustomerParameterRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueProcessRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueProcessRedis.java new file mode 100644 index 0000000000..d550f5bf5e --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueProcessRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueProcessRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueProjectRelationRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueProjectRelationRedis.java new file mode 100644 index 0000000000..75ec7d9d0d --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueProjectRelationRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueProjectRelationRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueRedis.java new file mode 100644 index 0000000000..cfed63cb4d --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueSatisfactionDetailRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueSatisfactionDetailRedis.java new file mode 100644 index 0000000000..706304b1ff --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueSatisfactionDetailRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueSatisfactionDetailRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueSatisfactionStatisticalRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueSatisfactionStatisticalRedis.java new file mode 100644 index 0000000000..6d5d8ec0dc --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueSatisfactionStatisticalRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueSatisfactionStatisticalRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteDetailRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteDetailRedis.java new file mode 100644 index 0000000000..89c8f04994 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteDetailRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueVoteDetailRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteStatisticalDailyRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteStatisticalDailyRedis.java new file mode 100644 index 0000000000..852ff4a3e7 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteStatisticalDailyRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueVoteStatisticalDailyRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteStatisticalRedis.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteStatisticalRedis.java new file mode 100644 index 0000000000..c9c928f08f --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteStatisticalRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class IssueVoteStatisticalRedis { + @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-issue/gov-issue-server/src/main/java/com/epmet/service/IssueCustomerParameterService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueCustomerParameterService.java new file mode 100644 index 0000000000..941d8efde9 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueCustomerParameterService.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.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.IssueCustomerParameterDTO; +import com.epmet.entity.IssueCustomerParameterEntity; + +import java.util.List; +import java.util.Map; + +/** + * 议题客户参数定制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueCustomerParameterService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueCustomerParameterDTO + * @author generator + * @date 2020-05-11 + */ + IssueCustomerParameterDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueCustomerParameterDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueCustomerParameterDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProcessService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProcessService.java new file mode 100644 index 0000000000..fa285655aa --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProcessService.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.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.IssueProcessDTO; +import com.epmet.entity.IssueProcessEntity; + +import java.util.List; +import java.util.Map; + +/** + * 议题进展记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueProcessService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueProcessDTO + * @author generator + * @date 2020-05-11 + */ + IssueProcessDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueProcessDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueProcessDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectRelationService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectRelationService.java new file mode 100644 index 0000000000..1381151c65 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectRelationService.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.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.IssueProjectRelationDTO; +import com.epmet.entity.IssueProjectRelationEntity; + +import java.util.List; +import java.util.Map; + +/** + * 议题项目关系表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueProjectRelationService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueProjectRelationDTO + * @author generator + * @date 2020-05-11 + */ + IssueProjectRelationDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueProjectRelationDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueProjectRelationDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSatisfactionDetailService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSatisfactionDetailService.java new file mode 100644 index 0000000000..a8fafa08a0 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSatisfactionDetailService.java @@ -0,0 +1,122 @@ +/** + * 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.IssueSatisfactionDetailDTO; +import com.epmet.dto.form.EvaluateFormDTO; +import com.epmet.dto.form.EvaluationListFormDTO; +import com.epmet.dto.form.InitEvaluationFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.InitEvaluationResultDTO; +import com.epmet.entity.IssueSatisfactionDetailEntity; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; +import java.util.Map; + +/** + * 议题满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueSatisfactionDetailService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueSatisfactionDetailDTO + * @author generator + * @date 2020-05-11 + */ + IssueSatisfactionDetailDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueSatisfactionDetailDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueSatisfactionDetailDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + * @Description 满意度评价初始化——已关闭 + * @param formDTO + * @author zxc + */ + InitEvaluationResultDTO initEvaluation(InitEvaluationFormDTO formDTO); + + /** + * @Description 提交满意度评价——已关闭 + * @param formDTO + * @author zxc + */ + void evaluate(EvaluateFormDTO formDTO); + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + List evaluationList(@RequestBody EvaluationListFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSatisfactionStatisticalService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSatisfactionStatisticalService.java new file mode 100644 index 0000000000..0d21c0cc99 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSatisfactionStatisticalService.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.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.IssueSatisfactionStatisticalDTO; +import com.epmet.entity.IssueSatisfactionStatisticalEntity; + +import java.util.List; +import java.util.Map; + +/** + * 议题满意度调查统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueSatisfactionStatisticalService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueSatisfactionStatisticalDTO + * @author generator + * @date 2020-05-11 + */ + IssueSatisfactionStatisticalDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueSatisfactionStatisticalDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueSatisfactionStatisticalDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java new file mode 100644 index 0000000000..d29223015f --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java @@ -0,0 +1,51 @@ +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.dto.form.CloseIssueFormDTO; +import com.epmet.dto.form.DepartmentStaffListFormDTO; +import com.epmet.dto.form.IssueDetailFormDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.dto.result.GridVotingIssueCountResultDTO; +import com.epmet.dto.result.IssueResultDTO; +import com.epmet.entity.IssueEntity; + +import java.util.List; + +/** + * @Author zxc + * @CreateTime 2020/5/11 9:44 + */ +public interface IssueService extends BaseService { + + /** + * @Description 议题详情 + * @param issueDetail + * @author zxc + * @date 2020/5/11 10:04 + */ + IssueResultDTO detail(IssueDetailFormDTO issueDetail); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 议题管理-关闭议题 + **/ + void closeIssue(CloseIssueFormDTO formDTO); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 议题管理-部门人员选择 + **/ + DepartmentStaffListResultDTO departmentStaffList(DepartmentStaffListFormDTO formDTO); + /** + * @param gridIdList + * @return java.util.List + * @Author yinzuomei + * @Description 传入网格id列表,查询出每个网格下表决中的议题总数 + * @Date 2020/5/13 22:53 + **/ + List queryVotingIssueCount(List gridIdList); +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteDetailService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteDetailService.java new file mode 100644 index 0000000000..da5ca53f7a --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteDetailService.java @@ -0,0 +1,103 @@ +/** + * 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.IssueVoteDetailDTO; +import com.epmet.dto.form.VoteFormDTO; +import com.epmet.entity.IssueVoteDetailEntity; + +import java.util.List; +import java.util.Map; + +/** + * 议题表决记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueVoteDetailService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueVoteDetailDTO + * @author generator + * @date 2020-05-11 + */ + IssueVoteDetailDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueVoteDetailDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueVoteDetailDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + * @Description 表决中 反对、支持 投票 + * @param formDTO + * @author zxc + */ + void vote(VoteFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalDailyService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalDailyService.java new file mode 100644 index 0000000000..c40851887d --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalDailyService.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.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.IssueVoteStatisticalDailyDTO; +import com.epmet.entity.IssueVoteStatisticalDailyEntity; + +import java.util.List; +import java.util.Map; + +/** + * 议题表决按天统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueVoteStatisticalDailyService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueVoteStatisticalDailyDTO + * @author generator + * @date 2020-05-11 + */ + IssueVoteStatisticalDailyDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueVoteStatisticalDailyDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueVoteStatisticalDailyDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalService.java new file mode 100644 index 0000000000..39e65850e8 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalService.java @@ -0,0 +1,124 @@ +/** + * 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.commons.tools.security.dto.TokenDto; +import com.epmet.dto.IssueVoteStatisticalDTO; +import com.epmet.dto.form.EvaluationListFormDTO; +import com.epmet.dto.form.IssueIdFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.VoteResultDTO; +import com.epmet.dto.result.VotingTrendResultDTO; +import com.epmet.entity.IssueVoteStatisticalEntity; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; +import java.util.Map; + +/** + * 议题表决统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface IssueVoteStatisticalService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IssueVoteStatisticalDTO + * @author generator + * @date 2020-05-11 + */ + IssueVoteStatisticalDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(IssueVoteStatisticalDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(IssueVoteStatisticalDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + * @Description 表决中议题详情——支持、反对数 + * @param issueId + * @author zxc + */ + VoteResultDTO voteCount(TokenDto tokenDto,IssueIdFormDTO issueId); + + + /** + * @Description 议题表决折线图 + * @param issueId + * @author zxc + */ + VotingTrendResultDTO votingTrend(IssueIdFormDTO issueId); + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + List evaluationList(EvaluationListFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/db.migration/.gitkeep b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/.gitkeep similarity index 100% rename from epmet-module/gov-issue/gov-issue-server/src/main/resources/db.migration/.gitkeep rename to epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/.gitkeep diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueCustomerParameterServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueCustomerParameterServiceImpl.java new file mode 100644 index 0000000000..1a751ab574 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueCustomerParameterServiceImpl.java @@ -0,0 +1,99 @@ +/** + * 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.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.dao.IssueCustomerParameterDao; +import com.epmet.dto.IssueCustomerParameterDTO; +import com.epmet.entity.IssueCustomerParameterEntity; +import com.epmet.service.IssueCustomerParameterService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 议题客户参数定制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueCustomerParameterServiceImpl extends BaseServiceImpl implements IssueCustomerParameterService { + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueCustomerParameterDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueCustomerParameterDTO.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 IssueCustomerParameterDTO get(String id) { + IssueCustomerParameterEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueCustomerParameterDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueCustomerParameterDTO dto) { + IssueCustomerParameterEntity entity = ConvertUtils.sourceToTarget(dto, IssueCustomerParameterEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueCustomerParameterDTO dto) { + IssueCustomerParameterEntity entity = ConvertUtils.sourceToTarget(dto, IssueCustomerParameterEntity.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/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProcessServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProcessServiceImpl.java new file mode 100644 index 0000000000..fad2ebfb01 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProcessServiceImpl.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.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.dao.IssueProcessDao; +import com.epmet.dto.IssueProcessDTO; +import com.epmet.entity.IssueProcessEntity; +import com.epmet.redis.IssueProcessRedis; +import com.epmet.service.IssueProcessService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueProcessServiceImpl extends BaseServiceImpl implements IssueProcessService { + + @Autowired + private IssueProcessRedis issueProcessRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueProcessDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueProcessDTO.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 IssueProcessDTO get(String id) { + IssueProcessEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueProcessDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueProcessDTO dto) { + IssueProcessEntity entity = ConvertUtils.sourceToTarget(dto, IssueProcessEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueProcessDTO dto) { + IssueProcessEntity entity = ConvertUtils.sourceToTarget(dto, IssueProcessEntity.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/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProjectRelationServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProjectRelationServiceImpl.java new file mode 100644 index 0000000000..2b40a83079 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProjectRelationServiceImpl.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.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.dao.IssueProjectRelationDao; +import com.epmet.dto.IssueProjectRelationDTO; +import com.epmet.entity.IssueProjectRelationEntity; +import com.epmet.redis.IssueProjectRelationRedis; +import com.epmet.service.IssueProjectRelationService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueProjectRelationServiceImpl extends BaseServiceImpl implements IssueProjectRelationService { + + @Autowired + private IssueProjectRelationRedis issueProjectRelationRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueProjectRelationDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueProjectRelationDTO.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 IssueProjectRelationDTO get(String id) { + IssueProjectRelationEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueProjectRelationDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueProjectRelationDTO dto) { + IssueProjectRelationEntity entity = ConvertUtils.sourceToTarget(dto, IssueProjectRelationEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueProjectRelationDTO dto) { + IssueProjectRelationEntity entity = ConvertUtils.sourceToTarget(dto, IssueProjectRelationEntity.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/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSatisfactionDetailServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSatisfactionDetailServiceImpl.java new file mode 100644 index 0000000000..4b7bc5d837 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSatisfactionDetailServiceImpl.java @@ -0,0 +1,165 @@ +/** + * 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.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.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.constant.FieldConstant; +import com.epmet.dao.IssueSatisfactionDetailDao; +import com.epmet.dto.EvaluateInfoDTO; +import com.epmet.dto.IssueSatisfactionDetailDTO; +import com.epmet.dto.form.EvaluateFormDTO; +import com.epmet.dto.form.EvaluationListFormDTO; +import com.epmet.dto.form.InitEvaluationFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.InitEvaluationResultDTO; +import com.epmet.entity.IssueSatisfactionDetailEntity; +import com.epmet.redis.IssueSatisfactionDetailRedis; +import com.epmet.service.IssueSatisfactionDetailService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueSatisfactionDetailServiceImpl extends BaseServiceImpl implements IssueSatisfactionDetailService { + + @Autowired + private IssueSatisfactionDetailRedis issueSatisfactionDetailRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueSatisfactionDetailDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueSatisfactionDetailDTO.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 IssueSatisfactionDetailDTO get(String id) { + IssueSatisfactionDetailEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueSatisfactionDetailDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueSatisfactionDetailDTO dto) { + IssueSatisfactionDetailEntity entity = ConvertUtils.sourceToTarget(dto, IssueSatisfactionDetailEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueSatisfactionDetailDTO dto) { + IssueSatisfactionDetailEntity entity = ConvertUtils.sourceToTarget(dto, IssueSatisfactionDetailEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + /** + * @Description 满意度评价初始化 + * @param formDTO + * @author zxc + */ + @Override + public InitEvaluationResultDTO initEvaluation(InitEvaluationFormDTO formDTO) { + InitEvaluationResultDTO resultDTO = new InitEvaluationResultDTO(); + EvaluateInfoDTO evaluateInfoDTO = baseDao.checkSatisfaction(formDTO); + if (evaluateInfoDTO!=null){ + resultDTO.setStatus(true);//已评价 + resultDTO.setEvaluateInfo(evaluateInfoDTO); + }else { + resultDTO.setStatus(false); + EvaluateInfoDTO evaluateInfo = new EvaluateInfoDTO(); + evaluateInfo.setEvaluateContent(""); + evaluateInfo.setSatisfaction(""); + resultDTO.setEvaluateInfo(evaluateInfo); + } + return resultDTO; + } + + /** + * @Description 提交满意度评价——已关闭 + * @param formDTO + * @author zxc + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void evaluate(EvaluateFormDTO formDTO) { + IssueSatisfactionDetailEntity entity = new IssueSatisfactionDetailEntity(); + BeanUtils.copyProperties(formDTO,entity); + InitEvaluationFormDTO initEvaluation = new InitEvaluationFormDTO(); + BeanUtils.copyProperties(formDTO,initEvaluation); + EvaluateInfoDTO evaluateInfoDTO = baseDao.checkSatisfaction(initEvaluation); + if (evaluateInfoDTO!=null){ + throw new RenException(EpmetErrorCode.ALREADY_EVALUATE.getCode()); + } + baseDao.insert(entity); + } + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + @Override + public List evaluationList(EvaluationListFormDTO formDTO) { + return baseDao.evaluationList(formDTO); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSatisfactionStatisticalServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSatisfactionStatisticalServiceImpl.java new file mode 100644 index 0000000000..f912e4d4c9 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSatisfactionStatisticalServiceImpl.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.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.dao.IssueSatisfactionStatisticalDao; +import com.epmet.dto.IssueSatisfactionStatisticalDTO; +import com.epmet.entity.IssueSatisfactionStatisticalEntity; +import com.epmet.redis.IssueSatisfactionStatisticalRedis; +import com.epmet.service.IssueSatisfactionStatisticalService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueSatisfactionStatisticalServiceImpl extends BaseServiceImpl implements IssueSatisfactionStatisticalService { + + @Autowired + private IssueSatisfactionStatisticalRedis issueSatisfactionStatisticalRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueSatisfactionStatisticalDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueSatisfactionStatisticalDTO.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 IssueSatisfactionStatisticalDTO get(String id) { + IssueSatisfactionStatisticalEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueSatisfactionStatisticalDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueSatisfactionStatisticalDTO dto) { + IssueSatisfactionStatisticalEntity entity = ConvertUtils.sourceToTarget(dto, IssueSatisfactionStatisticalEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueSatisfactionStatisticalDTO dto) { + IssueSatisfactionStatisticalEntity entity = ConvertUtils.sourceToTarget(dto, IssueSatisfactionStatisticalEntity.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/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java new file mode 100644 index 0000000000..6b93c7607b --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java @@ -0,0 +1,172 @@ +package com.epmet.service.impl; + +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.AppClientConstant; +import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.utils.Result; +import com.epmet.constant.IssueConstant; +import com.epmet.constant.ReadFlagConstant; +import com.epmet.constant.UserMessageConstant; +import com.epmet.dao.IssueDao; +import com.epmet.dao.IssueProcessDao; +import com.epmet.dto.form.CloseIssueFormDTO; +import com.epmet.dto.form.DepartmentStaffListFormDTO; +import com.epmet.dto.form.IssueDetailFormDTO; +import com.epmet.dto.form.UserMessageFormDTO; +import com.epmet.dto.result.AgencyGridResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.dto.result.GridVotingIssueCountResultDTO; +import com.epmet.dto.result.IssueResultDTO; +import com.epmet.entity.IssueEntity; +import com.epmet.entity.IssueProcessEntity; +import com.epmet.feign.GovOrgFeignClient; +import com.epmet.feign.MessageFeignClient; +import com.epmet.feign.ResiGroupFeignClient; +import com.epmet.redis.GovIssueRedis; +import com.epmet.resi.group.dto.topic.ResiTopicDTO; +import com.epmet.service.IssueService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @Author zxc + * @CreateTime 2020/5/11 9:46 + */ +@Service +public class IssueServiceImpl extends BaseServiceImpl implements IssueService { + + @Autowired + private IssueDao issueDao; + @Autowired + private GovOrgFeignClient govOrgFeignClient; + @Autowired + private IssueProcessDao issueProcessDao; + @Autowired + private ResiGroupFeignClient resiGroupFeignClient; + @Autowired + private MessageFeignClient messageFeignClient; + @Autowired + private GovIssueRedis govIssueRedis; + + /** + * @Description 议题详情 + * @param issueDetail + * @author zxc + * @date 2020/5/11 10:04 + */ + @Override + public IssueResultDTO detail(IssueDetailFormDTO issueDetail) { + //议题信息 + IssueResultDTO issueResult = issueDao.issueDetail(issueDetail); + return issueResult; + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 议题管理-关闭议题 + **/ + @Override + @Transactional(rollbackFor = Exception.class) + public void closeIssue(CloseIssueFormDTO formDTO) { + Date date = new Date(); + //1:更新议题详情表数据 + IssueEntity entity = baseDao.selectById(formDTO.getIssueId()); + if (null == entity) { + throw new RenException(IssueConstant.SELECT_EXCEPTION); + } + entity.setIssueStatus(IssueConstant.ISSUE_CLOSED); + entity.setCloseReason(formDTO.getCloseReason()); + entity.setResolveType(formDTO.getResolveType()); + entity.setVotingDeadline(date); + entity.setClosedTime(date); + if (baseDao.updateById(entity) < NumConstant.ONE) { + throw new RenException(IssueConstant.UPPDATE_EXCEPTION); + } + //2:调用gov-org服务,查询组织网格名称 + AgencyGridResultDTO agencyGridResultDTO = new AgencyGridResultDTO(); + agencyGridResultDTO.setAgencyId(entity.getOrgId()); + agencyGridResultDTO.setGridId(entity.getGridId()); + Result resultDTO = govOrgFeignClient.getAgencyAndGrid(agencyGridResultDTO); + agencyGridResultDTO = resultDTO.getData(); + //3:议题进展记录表新增数据 + IssueProcessEntity processEntity = new IssueProcessEntity(); + processEntity.setIssueId(formDTO.getIssueId()); + processEntity.setIssueStatus(IssueConstant.ISSUE_CLOSED); + processEntity.setOrgType(IssueConstant.ISSUE_GRID); + processEntity.setOrgId(entity.getOrgId()); + processEntity.setOperationExplain(formDTO.getCloseReason()); + processEntity.setOrgName(agencyGridResultDTO.getAgencyName()+"-"+agencyGridResultDTO.getGridName()); + issueProcessDao.insert(processEntity); + //4:调用epmet-message服务,给居民端话题创建人和议题发起人发送消息 + if(!saveUserMessageList(formDTO, entity).success()){ + throw new RenException(IssueConstant.SAVE_MSG_EXCEPTION); + } + } + + @Override + public List queryVotingIssueCount(List gridIdList) { + List list=new ArrayList<>(); + for(String gridId:gridIdList){ + GridVotingIssueCountResultDTO gridVotingIssueCountResultDTO=new GridVotingIssueCountResultDTO(); + gridVotingIssueCountResultDTO.setGridId(gridId); + Long auditingCount=govIssueRedis.queryVotingIssueCount(gridId); + gridVotingIssueCountResultDTO.setCount(auditingCount); + list.add(gridVotingIssueCountResultDTO); + } + return list; + } + + /** + * @Description 关闭议题给话题创建人和议题发起人发送消息 + * @author sun + */ + private Result saveUserMessageList(CloseIssueFormDTO formDTO, IssueEntity entity){ + //1:调用resi-group查询话题创建人数据(目前议题来源只有来自话题) + Result resultTopicDTO = resiGroupFeignClient.getTopicById(entity.getSourceId()); + if (!resultTopicDTO.success() || null == resultTopicDTO.getData()) { + throw new RenException(IssueConstant.SELECT_TOPIC_EXCEPTION); + } + ResiTopicDTO topicDTO = resultTopicDTO.getData(); + //2:分别给话题创建人、议题发起人发送消息 + List msgList = new ArrayList<>(); + UserMessageFormDTO msgDTO = new UserMessageFormDTO(); + msgDTO.setCustomerId(entity.getCustomerId()); + msgDTO.setGridId(entity.getGridId()); + msgDTO.setApp(AppClientConstant.APP_RESI); + msgDTO.setTitle(UserMessageConstant.ISSUE_TITLE); + String messageContent = ""; + if (IssueConstant.ISSUE_RESLOVED.equals(formDTO.getResolveType())) { + messageContent = String.format(UserMessageConstant.ISSUE_RESLOVED_MSG, topicDTO.getTopicContent(), formDTO.getCloseReason()); + } else if (IssueConstant.ISSUE_UNRESLOVED.equals(formDTO.getResolveType())) { + messageContent = String.format(UserMessageConstant.ISSUE_UNRESLOVED_MSG, topicDTO.getTopicContent(), formDTO.getCloseReason()); + } + msgDTO.setMessageContent(messageContent); + msgDTO.setReadFlag(ReadFlagConstant.UN_READ); + msgDTO.setUserId(topicDTO.getCreatedBy()); + msgList.add(msgDTO); + msgDTO.setUserId(entity.getCreatedBy()); + msgList.add(msgDTO); + return messageFeignClient.saveUserMessageList(msgList); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 议题管理-部门人员选择 + **/ + @Override + public DepartmentStaffListResultDTO departmentStaffList(DepartmentStaffListFormDTO formDTO) { + //1:调用gov-org服务,分别查询组织下人员,组织下部门人员,组织下网格人员列表信息 + Result resultDTOResult = govOrgFeignClient.departmentStaffList(formDTO.getAgencyId()); + return resultDTOResult.getData(); + } +} diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java new file mode 100644 index 0000000000..656e8460d7 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java @@ -0,0 +1,126 @@ +/** + * 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.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.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.constant.FieldConstant; +import com.epmet.dao.IssueVoteDetailDao; +import com.epmet.dto.IssueVoteDetailDTO; +import com.epmet.dto.form.VoteFormDTO; +import com.epmet.entity.IssueVoteDetailEntity; +import com.epmet.redis.IssueVoteDetailRedis; +import com.epmet.service.IssueVoteDetailService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueVoteDetailServiceImpl extends BaseServiceImpl implements IssueVoteDetailService { + + @Autowired + private IssueVoteDetailRedis issueVoteDetailRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueVoteDetailDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueVoteDetailDTO.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 IssueVoteDetailDTO get(String id) { + IssueVoteDetailEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueVoteDetailDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueVoteDetailDTO dto) { + IssueVoteDetailEntity entity = ConvertUtils.sourceToTarget(dto, IssueVoteDetailEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueVoteDetailDTO dto) { + IssueVoteDetailEntity entity = ConvertUtils.sourceToTarget(dto, IssueVoteDetailEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + /** + * @Description 表决中 反对、支持 投票 + * @param formDTO + * @author zxc + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void vote(VoteFormDTO formDTO) { + IssueVoteDetailEntity entity = new IssueVoteDetailEntity(); + BeanUtils.copyProperties(formDTO,entity); + Integer checkoutVoteCount = baseDao.checkoutVote(formDTO); + if (checkoutVoteCount==0){ + baseDao.insert(entity); + }else { + throw new RenException(EpmetErrorCode.ALREADY_VOTE.getCode()); + } + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalDailyServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalDailyServiceImpl.java new file mode 100644 index 0000000000..e356e2fa0a --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalDailyServiceImpl.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.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.dao.IssueVoteStatisticalDailyDao; +import com.epmet.dto.IssueVoteStatisticalDailyDTO; +import com.epmet.entity.IssueVoteStatisticalDailyEntity; +import com.epmet.redis.IssueVoteStatisticalDailyRedis; +import com.epmet.service.IssueVoteStatisticalDailyService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueVoteStatisticalDailyServiceImpl extends BaseServiceImpl implements IssueVoteStatisticalDailyService { + + @Autowired + private IssueVoteStatisticalDailyRedis issueVoteStatisticalDailyRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueVoteStatisticalDailyDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueVoteStatisticalDailyDTO.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 IssueVoteStatisticalDailyDTO get(String id) { + IssueVoteStatisticalDailyEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueVoteStatisticalDailyDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueVoteStatisticalDailyDTO dto) { + IssueVoteStatisticalDailyEntity entity = ConvertUtils.sourceToTarget(dto, IssueVoteStatisticalDailyEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueVoteStatisticalDailyDTO dto) { + IssueVoteStatisticalDailyEntity entity = ConvertUtils.sourceToTarget(dto, IssueVoteStatisticalDailyEntity.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/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java new file mode 100644 index 0000000000..5058c84832 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java @@ -0,0 +1,194 @@ +/** + * 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.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.NumConstant; +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.constant.FieldConstant; +import com.epmet.constant.IssueConstant; +import com.epmet.dao.IssueSatisfactionDetailDao; +import com.epmet.dao.IssueVoteStatisticalDao; +import com.epmet.dto.IssueVoteStatisticalDTO; +import com.epmet.dto.PolyLineDTO; +import com.epmet.dto.form.EvaluationListFormDTO; +import com.epmet.dto.form.IssueIdFormDTO; +import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.dto.result.VoteResultDTO; +import com.epmet.dto.result.VotingTrendResultDTO; +import com.epmet.entity.IssueVoteStatisticalEntity; +import com.epmet.feign.EpmetUserFeignClient; +import com.epmet.redis.IssueVoteStatisticalRedis; +import com.epmet.service.IssueVoteStatisticalService; +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.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * 议题表决统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl implements IssueVoteStatisticalService { + + @Autowired + private IssueVoteStatisticalRedis issueVoteStatisticalRedis; + @Autowired + private IssueVoteStatisticalDao issueVoteStatisticalDao; + @Autowired + private IssueSatisfactionDetailDao issueSatisfactionDetailDao; + @Autowired + private EpmetUserFeignClient userFeignClient; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IssueVoteStatisticalDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IssueVoteStatisticalDTO.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 IssueVoteStatisticalDTO get(String id) { + IssueVoteStatisticalEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IssueVoteStatisticalDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IssueVoteStatisticalDTO dto) { + IssueVoteStatisticalEntity entity = ConvertUtils.sourceToTarget(dto, IssueVoteStatisticalEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IssueVoteStatisticalDTO dto) { + IssueVoteStatisticalEntity entity = ConvertUtils.sourceToTarget(dto, IssueVoteStatisticalEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + /** + * @Description 表决中议题详情——支持、反对数 + * @param issueId + * @author zxc + */ + @Override + public VoteResultDTO voteCount(TokenDto tokenDto,IssueIdFormDTO issueId) { + VoteResultDTO voteResultDTO = issueVoteStatisticalDao.voteCount(issueId); + //校验是否已经投票 + Integer voteStatus = issueVoteStatisticalDao.checkVote(issueId.getIssueId(), tokenDto.getUserId()); + if (voteResultDTO!=null){ + if (voteStatus==0){ + voteResultDTO.setVoteFlag(false); + }else { + voteResultDTO.setVoteFlag(true); + } + } + return voteResultDTO; + } + + + /** + * @Description 议题表决折线图 + * @param issueId + * @author zxc + */ + @Override + public VotingTrendResultDTO votingTrend(IssueIdFormDTO issueId) { + //应表决数暂时从issue_vote_statistical查询 + VotingTrendResultDTO votingTrendResultDTO = issueVoteStatisticalDao.votingTrend(issueId); + if (votingTrendResultDTO!=null){ + List polyLineDTOS = issueVoteStatisticalDao.polyLineData(issueId); + votingTrendResultDTO.setPolyLine(polyLineDTOS); + } + return votingTrendResultDTO; + } + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + @Override + public List evaluationList(EvaluationListFormDTO formDTO) { + int pageIndex = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize(); + formDTO.setPageNo(pageIndex); + List data = issueSatisfactionDetailDao.evaluationList(formDTO); + if (data.size()==NumConstant.ZERO||data==null){ + return new ArrayList<>(); + } + //获取头像和昵称 eg:山东路168号-周先生 + List userIds = data.stream().map(EvaluationListResultDTO::getUserId).collect(Collectors.toList()); + UserResiInfoListFormDTO userResiInfo = new UserResiInfoListFormDTO(); + userResiInfo.setUserIdList(userIds); + List userResiInfoList = userFeignClient.getUserResiInfoList(userResiInfo).getData(); + if (null == userResiInfoList || userResiInfoList.size() < NumConstant.ONE) { + throw new RenException(IssueConstant.SELECT_USERINFO_EXCEPTION); + } + List resultList = data.stream().flatMap(evaluation -> userResiInfoList.stream().filter(user -> + evaluation.getUserId().equals(user.getUserId())).map(userInfo -> { + EvaluationListResultDTO resultDTO = ConvertUtils.sourceToTarget(evaluation, EvaluationListResultDTO.class); + resultDTO.setUserNickName(null == userInfo.getShowName() ? "" : userInfo.getShowName()); + resultDTO.setUserHeadPhoto(null == userInfo.getHeadPhoto() ? "" : userInfo.getHeadPhoto()); + return resultDTO; + })).collect(Collectors.toList()); + return resultList; + } + +} \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/db.migration/epmet_gov_issue.sql b/epmet-module/gov-issue/gov-issue-server/src/main/resources/db.migration/epmet_gov_issue.sql new file mode 100644 index 0000000000..85fc5c249e --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/db.migration/epmet_gov_issue.sql @@ -0,0 +1,216 @@ +-- @Date 2020-05-12 11:16 +-- @Author wangc +-- @Description 数据库epmet_gov_issue中的表,db语句: +CREATE DATABASE `epmet_gov_issue` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci'; + +/* + Navicat Premium Data Transfer + + Source Server : 党群e事通开发库!!!!! + Source Server Type : MySQL + Source Server Version : 50728 + Source Host : 192.168.1.130:3306 + Source Schema : epmet_gov_issue + + Target Server Type : MySQL + Target Server Version : 50728 + File Encoding : 65001 + + Date: 11/05/2020 13:15:11 +*/ + + +-- ---------------------------- +-- Table structure for issue +-- ---------------------------- +DROP TABLE IF EXISTS `issue`; +CREATE TABLE `issue` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID', + `ISSUE_STATUS` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题状态 表决中:voting 已转项目:shift_project 已关闭:closed', + `SOURCE_TYPE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '来源类型 eg:resi_topic', + `SOURCE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '来源ID eg:2223232(当SOURCE_TYPE为\"resi_topic\"时,这里指话题的ID)', + `CLOSE_REASON` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '关闭理由 【未关闭时可以为空】关闭议题时必填的理由,转项目后而且已经结案,这个字段不回写', + `RESOLVE_TYPE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '解决类型 【未关闭时可以为空】已解决resloved、未解决unresloved,对应在关闭议题时所选的checkbox,转项目后而且已经结案,这个字段不回写', + `ISSUE_TITLE` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题名称 最多20字', + `SUGGESTION` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '建议 最多1000字', + `CUSTOMER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户ID', + `GRID_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '网格ID 居民端议题对应一个网格Id', + `ORG_ID_PATH` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '所属机关 【数据权限-非必填】11:22:33(agencyId)数据权限控制', + `ORG_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '组织ID 【数据权限-非必填】agencyId', + `VOTING_DEADLINE` date DEFAULT NULL COMMENT '表决截止日期', + `DECIDED_TIME` date NOT NULL COMMENT '表决发起日期(转议题日期)', + `SHIFTED_TIME` date DEFAULT NULL COMMENT '转项目日期 (服务间调用日期一致性)', + `CLOSED_TIME` date DEFAULT NULL COMMENT '关闭日期', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题详情表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_customer_parameter +-- ---------------------------- +DROP TABLE IF EXISTS `issue_customer_parameter`; +CREATE TABLE `issue_customer_parameter` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `CUSTOMER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户ID', + `PARAMETER_KEY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '参数键 eg:voting_time_limit', + `PARAMETER_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '参数名 eg:表决期限', + `PARAMETER_VALUE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '参数值 eg:10(天)', + `DESCRIPTION` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '参数说明 eg:这个客户下所有的网格议题表决期限都是10天', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标志 0:未删除,1:已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题客户参数定制表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_process +-- ---------------------------- +DROP TABLE IF EXISTS `issue_process`; +CREATE TABLE `issue_process` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `ISSUE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID', + `ISSUE_STATUS` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '操作状态 - 表决中:voting 已转项目:shift_project 已关闭:closed', + `ORG_TYPE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织类型 操作人所属机构类型(机构:agency | 部门:dept | 网格:grid)操作人可能来源于居民端和政府段,但是只有在“转议题”的时候才是居民端拥有组长权限的人操作,所以当这条记录是转议题时,该记录为grid,ORD_ID相应的也为GRID_ID', + `ORG_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID 操作人所属机构ID(对应的有网格ID、部门ID、机构ID)', + `OPERATION_EXPLAIN` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '操作说明 (节点的说明文案,包含三个节点的文案说明【转议题】、【已关闭】、【转项目】)', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题进展记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_project_relation +-- ---------------------------- +DROP TABLE IF EXISTS `issue_project_relation`; +CREATE TABLE `issue_project_relation` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID 主键ID', + `ISSUE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID 议题ID', + `PROJECT_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '项目ID 项目ID', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0:未删除1:已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间 议题转项目时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题项目关系表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_satisfaction_detail +-- ---------------------------- +DROP TABLE IF EXISTS `issue_satisfaction_detail`; +CREATE TABLE `issue_satisfaction_detail` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `ISSUE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID', + `COMMENT` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '评论 - 最多300字', + `SATISFACTION` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '满意度 满意度 - 不满意:bad、基本满意:good、非常满意:perfect', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题满意度调查记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_satisfaction_statistical +-- ---------------------------- +DROP TABLE IF EXISTS `issue_satisfaction_statistical`; +CREATE TABLE `issue_satisfaction_statistical` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `ISSUE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID', + `GOOD_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '一般满意数', + `PERFECT_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '非常满意数', + `BAD_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '不满意数', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题满意度调查统计表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_vote_detail +-- ---------------------------- +DROP TABLE IF EXISTS `issue_vote_detail`; +CREATE TABLE `issue_vote_detail` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `ISSUE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID', + `ATTITUDE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '态度 - opposition(反对)support(赞成)', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题表决记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_vote_statistical +-- ---------------------------- +DROP TABLE IF EXISTS `issue_vote_statistical`; +CREATE TABLE `issue_vote_statistical` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `ISSUE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID', + `SUPPORT_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '支持数', + `OPPOSITION_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '反对数', + `VOTABLE_COUNT` int(11) DEFAULT NULL COMMENT '应表决数', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题表决统计表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for issue_vote_statistical_daily +-- ---------------------------- +DROP TABLE IF EXISTS `issue_vote_statistical_daily`; +CREATE TABLE `issue_vote_statistical_daily` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `ISSUE_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '议题ID', + `STATISTICAL_DATE` date NOT NULL COMMENT '统计日期 yyyy-MM-dd', + `SUPPORT_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '到该日的总赞成数', + `OPPOSITION_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '到该日的总反对数', + `TOTAL_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '到该日的总票数', + `TODAY_INCREMENT` int(11) NOT NULL DEFAULT 0 COMMENT '该日增量', + `SUPPORT_INCREMENT` int(11) NOT NULL DEFAULT 0 COMMENT '该日赞成增量', + `OPPOSITION_INCREMENT` int(11) NOT NULL DEFAULT 0 COMMENT '该日反对增量', + `VOTABLE_COUNT` int(11) NOT NULL COMMENT '到该日的应表决数', + `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '议题表决按天统计表' ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1; + +-- @Date 2020-05-12 10:00 +-- @Author wangc +-- @Description 数据库epmet_gov_issue中的ISSUE_PROCESS(议题进展表)表新增一个字段,db语句: +ALTER TABLE ISSUE_PROCESS ADD ( + ORG_NAME varchar(128) NOT NULL COMMENT '议题当前处理进度所在的部门名称,因为有存储Id,无需担心部门之后有修改名称的可能' + ); + + diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueCustomerParameterDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueCustomerParameterDao.xml new file mode 100644 index 0000000000..d0934a775e --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueCustomerParameterDao.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml new file mode 100644 index 0000000000..e06616107a --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProcessDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProcessDao.xml new file mode 100644 index 0000000000..baadaa6e9e --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProcessDao.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectRelationDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectRelationDao.xml new file mode 100644 index 0000000000..d7188c1811 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectRelationDao.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSatisfactionDetailDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSatisfactionDetailDao.xml new file mode 100644 index 0000000000..9f3644db84 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSatisfactionDetailDao.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSatisfactionStatisticalDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSatisfactionStatisticalDao.xml new file mode 100644 index 0000000000..ccc9f115c6 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSatisfactionStatisticalDao.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml new file mode 100644 index 0000000000..6e6166601b --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDailyDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDailyDao.xml new file mode 100644 index 0000000000..fc9b69d379 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDailyDao.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDao.xml new file mode 100644 index 0000000000..5fe5c88507 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDao.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-mine/gov-mine-client/src/main/java/com/epmet/dto/result/GridProcessingCountResultDTO.java b/epmet-module/gov-mine/gov-mine-client/src/main/java/com/epmet/dto/result/GridProcessingCountResultDTO.java new file mode 100644 index 0000000000..3d5a599425 --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-client/src/main/java/com/epmet/dto/result/GridProcessingCountResultDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 政府端基层治理群组管理、议题管理、居民管理、党员认证查询待办数量feign统一返参 + * @Author yinzuomei + * @Date 2020/5/13 21:43 + */ +@Data +public class GridProcessingCountResultDTO implements Serializable { + /** + * 网格id + */ + private String gridId; + + /** + * 待审核的小组总数 + */ + private Long count; +} + diff --git a/epmet-module/gov-mine/gov-mine-client/src/main/java/com/epmet/dto/result/StaffGridResultDTO.java b/epmet-module/gov-mine/gov-mine-client/src/main/java/com/epmet/dto/result/StaffGridResultDTO.java new file mode 100644 index 0000000000..06c76761c8 --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-client/src/main/java/com/epmet/dto/result/StaffGridResultDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 政府端工作人员的所有网格返参 + * @Author yinzuomei + * @Date 2020/5/13 13:45 + */ +@Data +public class StaffGridResultDTO implements Serializable { + + private static final long serialVersionUID = 5576720099807706663L; + /** + * 网格直属组织ID + */ + private String agencyId; + + /** + * 网格ID + */ + private String gridId; + + /** + * 网格名称 + */ + private String gridName; + + /** + * 待办事项标记:true显示,false不显示 + */ + private Boolean redDot; + +} + diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/controller/StaffAgencyController.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/controller/StaffAgencyController.java index 3c77f93e23..329d12ef4b 100644 --- a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/controller/StaffAgencyController.java +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/controller/StaffAgencyController.java @@ -25,6 +25,7 @@ import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.form.SwitchGridFormDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; import com.epmet.dto.result.LatestCustomerResultDTO; +import com.epmet.dto.result.StaffGridResultDTO; import com.epmet.service.StaffAgencyService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -54,8 +55,9 @@ public class StaffAgencyController { * @Author sun */ @PostMapping("getmygrids") - public Result> getMyGrids(@LoginUser TokenDto tokenDTO) { - return staffAgencyService.getMyGrids(tokenDTO); + public Result> getMyGrids(@LoginUser TokenDto tokenDTO) { + List list=staffAgencyService.getMyGrids(tokenDTO.getUserId()); + return new Result>().ok(list); } /** @@ -80,7 +82,8 @@ public class StaffAgencyController { public Result switchGrid(@LoginUser TokenDto tokenDto, @RequestBody SwitchGridFormDTO switchGridFormDTO) { switchGridFormDTO.setStaffId(tokenDto.getUserId()); ValidatorUtils.validateEntity(switchGridFormDTO); - return staffAgencyService.switchGrid(switchGridFormDTO); + staffAgencyService.switchGrid(switchGridFormDTO); + return new Result(); } /** diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java new file mode 100644 index 0000000000..1b7642c82a --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java @@ -0,0 +1,29 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.feign.fallback.GovIssueFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @Description 议题管理服务 + * @Author yinzuomei + * @Date 2020/5/13 15:45 + */ +@FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER, fallback = GovIssueFeignClientFallBack.class) +public interface GovIssueFeignClient { + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下表决中的议题 + * @Date 2020/5/13 15:47 + **/ + @PostMapping(value = "/gov/issue/issue/queryvotingissuecount",consumes = MediaType.APPLICATION_JSON_VALUE) + Result queryVotingIssueCount(@RequestBody List gridIdList); +} diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java new file mode 100644 index 0000000000..43a1ac2ad9 --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java @@ -0,0 +1,30 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.GridProcessingCountResultDTO; +import com.epmet.feign.fallback.ResiGroupFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/4/17 15:24 + */ +@FeignClient(name = ServiceConstant.RESI_GROUP_SERVER, fallback = ResiGroupFeignClientFallBack.class) +public interface ResiGroupFeignClient { + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下待审核的小组总数 + * @Date 2020/5/13 15:49 + **/ + @PostMapping(value = "/resi/group/group/groupprocessingcount",consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryGroupProcessingCount(@RequestBody List gridIdList); +} diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/ResiPartymemberFeignClient.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/ResiPartymemberFeignClient.java new file mode 100644 index 0000000000..cb7c2eceed --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/ResiPartymemberFeignClient.java @@ -0,0 +1,41 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.GridProcessingCountResultDTO; +import com.epmet.feign.fallback.ResiPartymemberFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * 调用epmet-user服务 + * + * @author 赵奇风 + */ +@FeignClient(name = ServiceConstant.RESI_PARTYMEMBER_SERVER, fallback = ResiPartymemberFeignClientFallBack.class) +public interface ResiPartymemberFeignClient { + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下待审核的热心居民数 + * @Date 2020/5/13 15:41 + **/ + @PostMapping(value = "/resi/partymember/resiwarmheartedapply/queryresiprocessingcount",consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryResiProcessingCount(@RequestBody List gridIdList); + + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询网格下待审核的党员数 + * @Date 2020/5/13 15:41 + **/ + @PostMapping(value = "/resi/partymember/partymemberbaseinfo/getworkgrassrootspartyauth",consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryPartyMemberProcessingCount(@RequestBody List gridIdList); + +} diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java new file mode 100644 index 0000000000..3a1ccf8714 --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java @@ -0,0 +1,23 @@ +package com.epmet.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.feign.GovIssueFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description 议题管理服务 + * @Author yinzuomei + * @Date 2020/5/13 15:45 + */ +@Component +public class GovIssueFeignClientFallBack implements GovIssueFeignClient { + @Override + public Result queryVotingIssueCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "queryVotingIssueCount", gridIdList); + } +} + diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java new file mode 100644 index 0000000000..8afd447147 --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java @@ -0,0 +1,25 @@ +package com.epmet.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.dto.result.GridProcessingCountResultDTO; +import com.epmet.feign.ResiGroupFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/4/17 15:27 + */ +@Component +public class ResiGroupFeignClientFallBack implements ResiGroupFeignClient { + + @Override + public Result> queryGroupProcessingCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "queryGroupProcessingCount", gridIdList); + } + +} diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/ResiPartymemberFeignClientFallBack.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/ResiPartymemberFeignClientFallBack.java new file mode 100644 index 0000000000..747c715e96 --- /dev/null +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/feign/fallback/ResiPartymemberFeignClientFallBack.java @@ -0,0 +1,29 @@ +package com.epmet.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.dto.result.GridProcessingCountResultDTO; +import com.epmet.feign.ResiPartymemberFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/4/16 17:01 + */ +@Component +public class ResiPartymemberFeignClientFallBack implements ResiPartymemberFeignClient { + @Override + public Result> queryResiProcessingCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "queryResiProcessingCount", gridIdList); + } + + @Override + public Result> queryPartyMemberProcessingCount(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "queryPartyMemberProcessingCount", gridIdList); + } + +} diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/StaffAgencyService.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/StaffAgencyService.java index 2530c956a4..d6ee5eeb3c 100644 --- a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/StaffAgencyService.java +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/StaffAgencyService.java @@ -23,6 +23,7 @@ import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.form.SwitchGridFormDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; import com.epmet.dto.result.LatestCustomerResultDTO; +import com.epmet.dto.result.StaffGridResultDTO; import java.util.List; @@ -34,12 +35,12 @@ import java.util.List; public interface StaffAgencyService { /** - * @param tokenDTO + * @param staffId * @return - * @Description 根据userId查询该用户涉及的所有网格列表 + * @Description 根据staffId查询该工作人员的所有网格列表 * @Author sun */ - Result> getMyGrids(TokenDto tokenDTO); + List getMyGrids(String staffId); /** * 获取最近一次登录的客户信息 @@ -56,7 +57,7 @@ public interface StaffAgencyService { * @Description 切换网格 * @Date 2020/4/23 10:49 **/ - Result switchGrid(SwitchGridFormDTO switchGridFormDTO); + void switchGrid(SwitchGridFormDTO switchGridFormDTO); /** * @Description 得到工作人员最后一次登录的网格 diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/StaffAgencyServiceImpl.java b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/StaffAgencyServiceImpl.java index adc8807690..c150e6baaa 100644 --- a/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/StaffAgencyServiceImpl.java +++ b/epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/StaffAgencyServiceImpl.java @@ -25,10 +25,10 @@ import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.form.StaffGridVisitedFormDTO; import com.epmet.dto.form.SwitchGridFormDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; +import com.epmet.dto.result.GridProcessingCountResultDTO; import com.epmet.dto.result.LatestCustomerResultDTO; -import com.epmet.feign.EpmetUserFeignClient; -import com.epmet.feign.GovOrgFeignClient; -import com.epmet.service.AccessService; +import com.epmet.dto.result.StaffGridResultDTO; +import com.epmet.feign.*; import com.epmet.service.StaffAgencyService; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -36,6 +36,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -51,27 +52,153 @@ public class StaffAgencyServiceImpl implements StaffAgencyService { @Autowired private EpmetUserFeignClient epmetUserFeignClient; @Autowired - private AccessService accessService; + private ResiGroupFeignClient resiGroupFeignClient; + @Autowired + private ResiPartymemberFeignClient resiPartymemberFeignClient; + @Autowired + private GovIssueFeignClient govIssueFeignClient; + /** - * @param tokenDTO + * @param staffId * @return * @Description 根据userId查询该用户涉及的所有网格列表 * @Author sun */ @Override - public Result> getMyGrids(TokenDto tokenDTO) { - return govOrgFeignClient.getMyGrids(tokenDTO.getUserId()); + public List getMyGrids(String staffId) { + //1、获取拥有的所有网格 + Result> govOrgResult = govOrgFeignClient.getMyGrids(staffId); + if (!govOrgResult.success() || (null == govOrgResult.getData() || govOrgResult.getData().size() < 1)) { + logger.error(String.format("调用gov-org-server服务查询工作人员网格列表失败返回结果", govOrgResult.toString())); + return new ArrayList<>(); + } + List gridList = ConvertUtils.sourceToTarget(govOrgResult.getData(), StaffGridResultDTO.class); + if (null == gridList || gridList.isEmpty()) { + return gridList; + } + //2、获取网格id列表 + List gridIds = new ArrayList<>(); + for (StaffGridResultDTO staffGridResultDTO : gridList) { + //默认不显示红点 + staffGridResultDTO.setRedDot(false); + gridIds.add(staffGridResultDTO.getGridId()); + } + //获取各个网格每个菜单的待办数量 + List groupProcessingList = this.getGroupCountList(gridIds); + List resiProcessingList = this.getResiCountList(gridIds); + List partyMemberProcessingList = this.getPartyMemberCountList(gridIds); + List issueProcessingList = this.getIssueCountList(gridIds); + for (StaffGridResultDTO staffGridInfo : gridList) { + if (this.checkGroupProcessing(staffGridInfo.getGridId(), groupProcessingList)) { + staffGridInfo.setRedDot(true); + break; + } + if (this.checkResiProcessing(staffGridInfo.getGridId(), resiProcessingList)) { + staffGridInfo.setRedDot(true); + break; + } + if (this.checkPartyMemberProcessing(staffGridInfo.getGridId(), partyMemberProcessingList)) { + staffGridInfo.setRedDot(true); + break; + } + if (this.checkIssueProcessing(staffGridInfo.getGridId(), issueProcessingList)) { + staffGridInfo.setRedDot(true); + break; + } + } + return gridList; + } + + private boolean checkIssueProcessing(String gridId, List issueProcessingList) { + boolean flag = false; + for (GridProcessingCountResultDTO gridProcessingCountResultDTO : issueProcessingList) { + if (gridId.equals(gridProcessingCountResultDTO.getGridId()) && gridProcessingCountResultDTO.getCount() > 0) { + flag = true; + break; + } + } + return flag; + } + + private boolean checkPartyMemberProcessing(String gridId, List partyMemberProcessingList) { + boolean flag = false; + for (GridProcessingCountResultDTO gridProcessingCountResultDTO : partyMemberProcessingList) { + if (gridId.equals(gridProcessingCountResultDTO.getGridId()) && gridProcessingCountResultDTO.getCount() > 0) { + flag = true; + break; + } + } + return flag; + } + + private boolean checkResiProcessing(String gridId, List resiProcessingList) { + boolean flag = false; + for (GridProcessingCountResultDTO gridProcessingCountResultDTO : resiProcessingList) { + if (gridId.equals(gridProcessingCountResultDTO.getGridId()) && gridProcessingCountResultDTO.getCount() > 0) { + flag = true; + break; + } + } + return flag; + } + + private boolean checkGroupProcessing(String gridId, List groupProcessingList) { + boolean flag = false; + for (GridProcessingCountResultDTO gridProcessingCountResultDTO : groupProcessingList) { + if (gridId.equals(gridProcessingCountResultDTO.getGridId()) && gridProcessingCountResultDTO.getCount() > 0) { + flag = true; + break; + } + } + return flag; } + private List getIssueCountList(List gridIdList) { + List list = new ArrayList<>(); + Result> issueResult = govIssueFeignClient.queryVotingIssueCount(gridIdList); + if (issueResult.success() && null != issueResult.getData() && issueResult.getData().size() > 0) { + list.addAll(issueResult.getData()); + } + return list; + } + + private List getPartyMemberCountList(List gridIdList) { + List list = new ArrayList<>(); + Result> partyAuthResult = resiPartymemberFeignClient.queryPartyMemberProcessingCount(gridIdList); + if (partyAuthResult.success() && null != partyAuthResult.getData() && partyAuthResult.getData().size() > 0) { + list.addAll(partyAuthResult.getData()); + } + return list; + } + + private List getResiCountList(List gridIdList) { + List list = new ArrayList<>(); + Result> resiCount = resiPartymemberFeignClient.queryResiProcessingCount(gridIdList); + if (resiCount.success() && null != resiCount.getData() && resiCount.getData().size() > 0) { + list.addAll(resiCount.getData()); + } + return list; + } + + private List getGroupCountList(List gridIdList) { + List list = new ArrayList<>(); + Result> groupProcessingCountResult = resiGroupFeignClient.queryGroupProcessingCount(gridIdList); + if (groupProcessingCountResult.success() && null != groupProcessingCountResult.getData() && groupProcessingCountResult.getData().size() > 0) { + list.addAll(groupProcessingCountResult.getData()); + } + return list; + } + + @Override public Result getLatestCustomer(TokenDto tokenDTO) { return govOrgFeignClient.getLatestCustomer(tokenDTO.getUserId()); } /** + * @return Result * @Description 得到工作人员最后一次登录的网格 * @Param LatestGridFormDTO -> staffId ; customerId - * @return Result * @Author wangc * @Date 2020.04.23 11:14 **/ @@ -79,12 +206,12 @@ public class StaffAgencyServiceImpl implements StaffAgencyService { public Result getLatestGrid(LatestGridFormDTO latestGridFormDTO) { Result latestGridResult = epmetUserFeignClient.getStaffLatestGrid(latestGridFormDTO); - if(latestGridResult.success() && null != latestGridResult.getData() && StringUtils.isNotBlank(latestGridResult.getData().getGridId())){ + if (latestGridResult.success() && null != latestGridResult.getData() && StringUtils.isNotBlank(latestGridResult.getData().getGridId())) { return latestGridResult; - }else{ + } else { Result staffGridResult = - govOrgFeignClient.getStaffGrid(latestGridFormDTO); - if(staffGridResult.success() && null != staffGridResult.getData() && StringUtils.isNotBlank(staffGridResult.getData().getGridId())){ + govOrgFeignClient.getStaffGrid(latestGridFormDTO); + if (staffGridResult.success() && null != staffGridResult.getData() && StringUtils.isNotBlank(staffGridResult.getData().getGridId())) { return staffGridResult; } } @@ -93,7 +220,7 @@ public class StaffAgencyServiceImpl implements StaffAgencyService { @Override - public Result switchGrid(SwitchGridFormDTO switchGridFormDTO) { + public void switchGrid(SwitchGridFormDTO switchGridFormDTO) { //记录网格访问记录 StaffGridVisitedFormDTO staffGridVisitedFormDTO = ConvertUtils.sourceToTarget(switchGridFormDTO, StaffGridVisitedFormDTO.class); Result saveStaffGridVisitedRecord = epmetUserFeignClient.saveStaffGridVisitedRecord(staffGridVisitedFormDTO); @@ -103,7 +230,6 @@ public class StaffAgencyServiceImpl implements StaffAgencyService { /* //查询网格的权限 Set opeKeys = accessService.listOpeKeysByStaffId(switchGridFormDTO.getStaffId(), null, switchGridFormDTO.getGridId()); return new Result>().ok(opeKeys);*/ - return new Result(); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AgencyDeptGridFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AgencyDeptGridFormDTO.java new file mode 100644 index 0000000000..86bd71498a --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AgencyDeptGridFormDTO.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.dto.form; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + + +/** + * 根据组织Id集合、部门Id集合、网格Id集合查询对应详细信息-入参 + * + * @author sun + */ +@Data +public class AgencyDeptGridFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 组织Id集合 + */ + private List agencyIdList; + /** + * 部门Id集合 + */ + private List deptIdList; + /** + * 网格Id集合 + */ + private List gridIdList; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/BelongGridNameFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/BelongGridNameFormDTO.java new file mode 100644 index 0000000000..8df402c618 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/BelongGridNameFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 查询所属网格 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class BelongGridNameFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 网格id + */ + private String gridId; + + +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/DepartmentStaffListFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/DepartmentStaffListFormDTO.java new file mode 100644 index 0000000000..4542a587db --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/DepartmentStaffListFormDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 项目跟踪-部门人员选择-接口入参 + * @Author sun + */ +@Data +public class DepartmentStaffListFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214502427L; + + @NotBlank(message = "机关组织Id不能为空") + private String agencyId; + +} + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyDeptGridResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyDeptGridResultDTO.java new file mode 100644 index 0000000000..cec3f682d5 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyDeptGridResultDTO.java @@ -0,0 +1,52 @@ +/** + * 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.result; + +import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.CustomerDepartmentDTO; +import com.epmet.dto.CustomerGridDTO; +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + + +/** + * 根据组织Id集合、部门Id集合、网格Id集合查询对应详细信息--返参 + * + * @author sun + */ +@Data +public class AgencyDeptGridResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 组织信息集合 + */ + private List agencyList; + /** + * 部门信息集合 + */ + private List deptList; + /** + * 网格信息集合 + */ + private List gridList; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyGridResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyGridResultDTO.java new file mode 100644 index 0000000000..26fe8f9292 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyGridResultDTO.java @@ -0,0 +1,52 @@ +/** + * 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.result; + +import lombok.Data; + +import java.io.Serializable; + + +/** + * 查询组织网格名称-接口返参 + * + * @author sun + */ +@Data +public class AgencyGridResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 机关组织Id + */ + private String agencyId; + /** + * 机关组织名称 + */ + private String agencyName; + /** + * 网格Id + */ + private String gridId; + /** + * 网格名称 + */ + private String gridName; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BelongGridNameResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BelongGridNameResultDTO.java new file mode 100644 index 0000000000..f4a0b8a9c7 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BelongGridNameResultDTO.java @@ -0,0 +1,21 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @CreateTime 2020/5/11 18:30 + */ +@Data +public class BelongGridNameResultDTO implements Serializable { + + private static final long serialVersionUID = -5513674274570554563L; + + /** + * 所属网格(网格所属机关单位名称-网格名称) + */ + private String BelongsGridName; + +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffListResultDTO.java new file mode 100644 index 0000000000..4ca73628f7 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffListResultDTO.java @@ -0,0 +1,45 @@ +/** + * 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.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + + +/** + * 工作人员信息及角色 + * + * @author sun + */ +@Data +public class CustomerStaffListResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 工作人员信息集合 + */ + private List staffList; + /** + * 工作人员角色集合 + */ + private List roleList; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffRoleResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffRoleResultDTO.java new file mode 100644 index 0000000000..f54628f303 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffRoleResultDTO.java @@ -0,0 +1,48 @@ +/** + * 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.result; + +import lombok.Data; + +import java.io.Serializable; + + +/** + * 工作人员角色 + * + * @author sun + */ +@Data +public class CustomerStaffRoleResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 工作人员Id + */ + private String staffId = ""; + /** + * 人员角色Key + */ + private String roleKey = ""; + /** + * 人员角色名称 + */ + private String roleName = ""; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DepartmentStaffListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DepartmentStaffListResultDTO.java new file mode 100644 index 0000000000..6f706566c3 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DepartmentStaffListResultDTO.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.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + + +/** + * 项目跟踪-部门人员选择-接口返参 + * + * @author sun + */ +@Data +public class DepartmentStaffListResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 组织下工作人员信息 + */ + private List agencyStaffList; + + /** + * 部门人员选择-组织下部门及人员列表 + */ + private List departmentList; + + /** + * 部门人员选择-组织下网格及人员列表 + */ + private List gridList; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DeptListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DeptListResultDTO.java new file mode 100644 index 0000000000..480b6ac408 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DeptListResultDTO.java @@ -0,0 +1,49 @@ +/** + * 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.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + + +/** + * 部门人员选择-组织下部门及人员列表 + * + * @author sun + */ +@Data +public class DeptListResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 部门Id + */ + private String departmentId; + /** + * 部门名称 + */ + private String departmentName; + /** + * 部门下人员集合 + */ + private List departmentStaffList; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridListResultDTO.java new file mode 100644 index 0000000000..49be734771 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridListResultDTO.java @@ -0,0 +1,49 @@ +/** + * 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.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + + +/** + * 部门人员选择-组织下网格及人员列表 + * + * @author sun + */ +@Data +public class GridListResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 网格Id + */ + private String gridId; + /** + * 网格名称 + */ + private String gridName; + /** + * 网格下工作人员集合 + */ + private List gridStaffList; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/StaffListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/StaffListResultDTO.java new file mode 100644 index 0000000000..27ff1b358b --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/StaffListResultDTO.java @@ -0,0 +1,36 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @dscription 工作人员信息 + * @author sun + */ +@Data +public class StaffListResultDTO implements Serializable { + + private static final long serialVersionUID = 5957826616179876849L; + /** + * 人员Id + */ + private String staffId; + /** + * 人员名称 + */ + private String staffName; + /** + * 人员头像 + */ + private String staffHeadPhoto; + /** + * 性别 + */ + private String gender; + /** + * 角色名称(机关领导、部门领导、网格长) + */ + private String roleName; + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/constant/CustomerAgencyConstant.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/constant/CustomerAgencyConstant.java index 7200bca2a3..f30c8c65ce 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/constant/CustomerAgencyConstant.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/constant/CustomerAgencyConstant.java @@ -34,4 +34,21 @@ public interface CustomerAgencyConstant { * 区县名称不能为空 */ String DISTRICT_EXCEPTION = "区县级机关名称不能为空"; + /** + * 组织信息查询失败 + */ + String SELECT_EXCEPTION = "根据组织ID未查询到机构组织信息"; + + /** + * 工作人员角色-单位领导 + */ + String AGENCY_LEADER = "agency_leader"; + /** + * 工作人员角色-部门领导 + */ + String DEPT_LEADER = "dept_leader"; + /** + * 工作人员角色-网格长 + */ + String GRID_MANAGER = "grid_manager"; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java index 538f30cff2..59cde8f71c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java @@ -113,6 +113,7 @@ public class AgencyController { * @Description 组织首页-获取组织机构信息 */ @PostMapping("agencydetail") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_AGENCY_TRACE) public Result agencyDetail(@LoginUser TokenDto tokenDTO, @RequestBody AgencydetailFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return agencyService.agencyDetail(formDTO); @@ -125,6 +126,7 @@ public class AgencyController { * @Description 组织首页-下级机关列表 */ @PostMapping("subagencylist") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_SUBAGENCY_LIST) public Result subAgencyList(@LoginUser TokenDto tokenDTO, @RequestBody SubAgencyFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return agencyService.subAgencyList(formDTO); @@ -137,6 +139,7 @@ public class AgencyController { * @Description 获取组织列表 */ @PostMapping("agencylist") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_SUBAGENCY_LIST) public Result> agencyList(@LoginUser TokenDto tokenDTO, @RequestBody AgencyListFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return agencyService.agencyList(formDTO); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java index 9de0e27f8e..6434a318b6 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java @@ -26,7 +26,11 @@ 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.CustomerAgencyDTO; +import com.epmet.dto.form.AgencyDeptGridFormDTO; import com.epmet.dto.form.StaffOrgFormDTO; +import com.epmet.dto.result.AgencyDeptGridResultDTO; +import com.epmet.dto.result.AgencyGridResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; import com.epmet.dto.result.StaffOrgsResultDTO; import com.epmet.excel.CustomerAgencyExcel; import com.epmet.service.CustomerAgencyService; @@ -104,4 +108,38 @@ public class CustomerAgencyController { public Result> getStaffOrgList(@RequestBody StaffOrgFormDTO staffOrgsFormDTO) { return customerAgencyService.getStaffOrgList(staffOrgsFormDTO); } + + /** + * @param agencyGridResultDTO + * @return + * @Author sun + * @Description 根据组织Id、网格Id查询组织、网格名称 + **/ + @PostMapping("getagencyandgrid") + public Result getAgencyAndGrid(@RequestBody AgencyGridResultDTO agencyGridResultDTO) { + return new Result().ok(customerAgencyService.getAgencyAndGrid(agencyGridResultDTO)); + } + + /** + * @param agencyId + * @return + * @Author sun + * @Description 查询组织下人员,组织下部门人员,组织下网格人员列表信息 + **/ + @PostMapping("departmentstafflist/{agencyId}") + public Result departmentStaffList(@PathVariable("agencyId") String agencyId) { + return new Result().ok(customerAgencyService.departmentStaffList(agencyId)); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 根据组织Id集合、部门Id集合、网格Id集合查询各自对应详细信息 + **/ + @PostMapping("getagencydeptgridlist") + public Result getAgencyDeptGridList(AgencyDeptGridFormDTO formDTO) { + return new Result().ok(customerAgencyService.getAgencyDeptGridList(formDTO)); + } + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java index 5e092efda6..c5a2779d16 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java @@ -26,6 +26,7 @@ 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.CustomerGridDTO; +import com.epmet.dto.form.BelongGridNameFormDTO; import com.epmet.dto.form.SelectGridNameByGridIdFormDTO; import com.epmet.dto.result.*; import com.epmet.dto.form.CustomerGridFormDTO; @@ -182,4 +183,15 @@ public class CustomerGridController { return customerGridService.getGridListByGridIds(gridIdList); } + /** + * @Description 获取所属网格 + * @param formDTO + * @author zxc + * @date 2020/5/11 18:37 + */ + @PostMapping("getgridnamebygridid") + public Result getGridNameByGridId(@RequestBody BelongGridNameFormDTO formDTO){ + return new Result().ok(customerGridService.getGridNameByGridId(formDTO)); + } + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/DepartmentController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/DepartmentController.java index 7705d1247c..26273ddd6c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/DepartmentController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/DepartmentController.java @@ -88,6 +88,7 @@ public class DepartmentController { * @Description 获取部门详情 */ @PostMapping("departmentdetail") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_DEPARTMENT_STAFF_LIST) public Result departmentDetail(@LoginUser TokenDto tokenDTO, @RequestBody DepartmentdetailFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return departmentService.departmentDetail(formDTO); @@ -100,6 +101,7 @@ public class DepartmentController { * @Description 组织首页-获取机关下部门列表 */ @PostMapping("departmentinagencylist") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_DEPARTMENT_LIST) public Result departmentInAgencyList(@LoginUser TokenDto tokenDTO, @RequestBody DepartmentInAgencyFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return departmentService.departmentInAgencyList(formDTO); @@ -112,6 +114,7 @@ public class DepartmentController { * @Description 获取机构下部门列表 */ @PostMapping("departmentlist") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_DEPARTMENT_LIST) public Result> departmentList(@LoginUser TokenDto tokenDTO, @RequestBody DepartmentListFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return departmentService.departmentList(formDTO); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java index 766df22011..0a75e90b63 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java @@ -76,6 +76,7 @@ public class GridController { * @Date 2020.04.23 14:45 **/ @PostMapping("gridlist") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_GRID_LIST) public Result gridList(@LoginUser TokenDto tokenDto,@RequestBody CommonAgencyIdFormDTO agencyFormDTO){ agencyFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(agencyFormDTO); @@ -90,6 +91,7 @@ public class GridController { * @Date 2020.04.23 14:45 **/ @PostMapping("allgrids") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_GRID_LIST) public Result> allGrids(@LoginUser TokenDto tokenDto, @RequestBody CommonAgencyIdFormDTO agencyFormDTO){ agencyFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(agencyFormDTO); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/StaffController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/StaffController.java index 1c46d607ac..72d682688d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/StaffController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/StaffController.java @@ -38,6 +38,7 @@ public class StaffController { * @return */ @PostMapping("staffsinagency") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_STAFF_LIST) public Result getStaffInfoForHome(@RequestBody StaffsInAgencyFromDTO fromDTO) { return staffService.getStaffInfoForHome(fromDTO); } @@ -73,6 +74,7 @@ public class StaffController { * @return Result */ @PostMapping("editstaffinit") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_STAFF_DETAIL) public Result editStaffInit(@RequestBody StaffInfoFromDTO fromDTO){ return staffService.editStaffInit(fromDTO); } @@ -110,6 +112,7 @@ public class StaffController { * @return Result */ @PostMapping("staffdetail") + @RequirePermission(requirePermission = RequirePermissionEnum.ORG_STAFF_DETAIL) public Result getStaffDetail(@RequestBody StaffInfoFromDTO fromDTO){ return staffService.getStaffDetail(fromDTO); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java index bf68fc2458..a83d872672 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java @@ -87,4 +87,12 @@ public interface CustomerAgencyDao extends BaseDao { * @date 2020/4/28 15:50 */ String selectAreaCodeByAgencyId(@Param("agencyId") String agencyId); + + /** + * @param agencyIdList + * @return + * @Author sun + * @Description 批量查询组织信息 + **/ + List selectAgencyListByIds(@Param("agencyIdList") List agencyIdList); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerDepartmentDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerDepartmentDao.java index 300ea8bf8e..13cb1da0ea 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerDepartmentDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerDepartmentDao.java @@ -18,6 +18,8 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.CustomerDepartmentDTO; import com.epmet.dto.CustomerIdDTO; import com.epmet.dto.result.DepartmentListResultDTO; import com.epmet.dto.result.SubListResultDTO; @@ -65,4 +67,12 @@ public interface CustomerDepartmentDao extends BaseDao * @date 2020/4/28 12:26 */ CustomerIdDTO selectCustomerIdByDepartmentId(@Param("departmentId") String departmentId); + + /** + * @param deptIdList + * @return + * @Author sun + * @Description 批量查询部门信息 + **/ + List selectDeptListByIds(@Param("deptIdList") List deptIdList); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java index ccf6d62ed9..2a066a5e92 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java @@ -18,13 +18,12 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; -import com.epmet.dto.*; -import com.epmet.dto.form.ListCustomerGridFormDTO; -import com.epmet.dto.form.SelectGridNameByGridIdFormDTO; +import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.UserIdAndPidDTO; +import com.epmet.dto.UserIdDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.*; -import com.epmet.dto.form.CustomerGridFormDTO; -import com.epmet.dto.form.DeleteGridFormDTO; -import com.epmet.dto.result.CustomerGridForStrangerResultDTO; import com.epmet.entity.CustomerGridEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -155,4 +154,26 @@ public interface CustomerGridDao extends BaseDao { * @Author sun */ List selectGridByIds(@Param("gridIdList") List gridIdList); + + /** + * @Description 获取所属网格 + * @param formDTO + * @author zxc + * @date 2020/5/11 18:50 + */ + BelongGridNameResultDTO getGridNameByGridId(BelongGridNameFormDTO formDTO); + + /** + * @Description 根据组织机关Id查询机关下网格列表 + * @author sun + */ + List selectGridList(@Param("agencyId") String agencyId); + + /** + * @param gridIdList + * @return + * @Author sun + * @Description 批量查询网格信息 + **/ + List selectGridListByIds(@Param("gridIdList") List gridIdList); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffAgencyDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffAgencyDao.java index 9de920b942..7be691d69f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffAgencyDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffAgencyDao.java @@ -20,6 +20,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.CustomerStaffAgencyDTO; import com.epmet.dto.form.CustomerGridFormDTO; +import com.epmet.dto.result.StaffListResultDTO; import com.epmet.entity.CustomerStaffAgencyEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -68,4 +69,10 @@ public interface CustomerStaffAgencyDao extends BaseDao getSelectableStaffsForDept(@Param("departmentId") String departmentId); + + /** + * 查询组织下人员列表 + * @Author sun + */ + List selectAgencyStaffList(@Param("agencyId") String agencyId); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffDepartmentDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffDepartmentDao.java index 0c6fc36a4b..88fc246656 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffDepartmentDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffDepartmentDao.java @@ -19,6 +19,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.CustomerStaffDepartmentDTO; +import com.epmet.dto.result.ParentListResultDTO; import com.epmet.entity.CustomerStaffDepartmentEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -58,4 +59,11 @@ public interface CustomerStaffDepartmentDao extends BaseDao selectDeptStaffs(@Param("deptIdList") List deptIdList); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java index 7a01c76048..2a160f8a90 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java @@ -19,6 +19,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.CustomerStaffDepartmentDTO; import com.epmet.dto.CustomerStaffGridDTO; import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.entity.CustomerStaffGridEntity; @@ -82,4 +83,11 @@ public interface CustomerStaffGridDao extends BaseDao { * @Author sun */ List selectByGridId(@Param("gridId")String gridId); + + /** + * + * @Author sun + * @Description 遍历查询每个部门下人员 + */ + List selectGridStaffs(@Param("gridIdList") List gridIdList); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java index 2f9fbb99c9..297df14501 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java @@ -22,6 +22,7 @@ import com.epmet.dto.CustomerStaffGridDTO; import com.epmet.dto.StaffGridListDTO; import com.epmet.feign.fallback.EpmetUserFeignClientFallBack; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -159,4 +160,13 @@ public interface EpmetUserFeignClient { **/ @PostMapping("/epmetuser/staffrole/getcustomerstaffroles") Result getCustomerStaffRoles(CommonUserFormDTO commonUserFormDTO); + + /** + * @param staffIdList + * @return + * @Author sun + * @Description 根据staffId集合查询工作人员基础信息 + **/ + @PostMapping(value = "/epmetuser/customerstaff/getcustomerstafflist", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result getCustomerStaffList(List staffIdList); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java index bac3fd9024..f6ac8153ce 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java @@ -101,4 +101,9 @@ public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { public Result getCustomerStaffRoles(CommonUserFormDTO commonUserFormDTO) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getCustomerStaffRoles", commonUserFormDTO); } + + @Override + public Result getCustomerStaffList(List staffIdList) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getCustomerStaffList", staffIdList); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java index 62892b4576..b79c1c6cfb 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java @@ -21,7 +21,11 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.form.AgencyDeptGridFormDTO; import com.epmet.dto.form.StaffOrgFormDTO; +import com.epmet.dto.result.AgencyDeptGridResultDTO; +import com.epmet.dto.result.AgencyGridResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; import com.epmet.dto.result.StaffOrgsResultDTO; import com.epmet.entity.CustomerAgencyEntity; @@ -104,4 +108,28 @@ public interface CustomerAgencyService extends BaseService * @Date 2020/4/20 21:45 **/ Result> getStaffOrgList(StaffOrgFormDTO staffOrgsFormDTO); + + /** + * @param agencyGridResultDTO + * @return + * @Author sun + * @Description 根据组织Id、网格Id查询组织、网格名称 + **/ + AgencyGridResultDTO getAgencyAndGrid(AgencyGridResultDTO agencyGridResultDTO); + + /** + * @param agencyId + * @return + * @Author sun + * @Description 查询组织下人员,组织下部门人员,组织下网格人员列表信息 + **/ + DepartmentStaffListResultDTO departmentStaffList(String agencyId); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 根据组织Id集合、部门Id集合、网格Id集合查询各自对应详细信息 + **/ + AgencyDeptGridResultDTO getAgencyDeptGridList(AgencyDeptGridFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java index 0553e60758..0f62db96e5 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java @@ -228,4 +228,12 @@ public interface CustomerGridService extends BaseService { */ Result> getGridListByGridIds(List gridIdList); + /** + * @Description 获取所属网格 + * @param formDTO + * @author zxc + * @date 2020/5/11 18:36 + */ + BelongGridNameResultDTO getGridNameByGridId(BelongGridNameFormDTO formDTO); + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java index 06f83a0d25..2218c26341 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java @@ -21,19 +21,21 @@ 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.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.constant.CustomerAgencyConstant; -import com.epmet.dao.CustomerAgencyDao; -import com.epmet.dto.CustomerAgencyDTO; -import com.epmet.dto.CustomerDTO; -import com.epmet.dto.form.*; +import com.epmet.constant.CustomerGridConstant; +import com.epmet.dao.*; +import com.epmet.dto.*; +import com.epmet.dto.form.AgencyDeptGridFormDTO; +import com.epmet.dto.form.CustomerFormDTO; +import com.epmet.dto.form.StaffOrgFormDTO; import com.epmet.dto.result.*; import com.epmet.entity.CustomerAgencyEntity; +import com.epmet.entity.CustomerGridEntity; +import com.epmet.feign.EpmetUserFeignClient; import com.epmet.feign.OperCrmFeignClient; import com.epmet.redis.CustomerAgencyRedis; import com.epmet.service.CustomerAgencyService; @@ -44,9 +46,8 @@ 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; +import java.util.*; +import java.util.stream.Collectors; /** * 机关单位信息表 @@ -62,6 +63,19 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl page(Map params) { IPage page = baseDao.selectPage( @@ -138,4 +152,172 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl>().ok(list); } + + /** + * @param agencyGridResultDTO + * @return + * @Author sun + * @Description 根据组织Id、网格Id查询组织、网格名称 + **/ + @Override + public AgencyGridResultDTO getAgencyAndGrid(AgencyGridResultDTO agencyGridResultDTO) { + //1:查询组织机关信息 + CustomerAgencyEntity agencyEntity = baseDao.selectById(agencyGridResultDTO.getAgencyId()); + if (null == agencyEntity) { + throw new RenException(CustomerAgencyConstant.SELECT_EXCEPTION); + } + agencyGridResultDTO.setAgencyName(agencyEntity.getOrganizationName()); + //2:查询网格信 + CustomerGridEntity gridEntity = customerGridDao.selectById(agencyGridResultDTO.getGridId()); + if (null == gridEntity) { + throw new RenException(CustomerGridConstant.SELECT_EXCEPTION); + } + agencyGridResultDTO.setGridName(gridEntity.getGridName()); + return agencyGridResultDTO; + } + + /** + * @param agencyId + * @return + * @Author sun + * @Description 查询组织下人员,组织下部门人员,组织下网格人员列表信息 + **/ + @Override + public DepartmentStaffListResultDTO departmentStaffList(String agencyId) { + //根据组织Id查询该组织的工作人员列表;该组织的部门列表、部门下人员(带部门领导角色)列表;该组织的网格列表、网格下人员(带网格长角色)列表。人员都不做去重处理。 + DepartmentStaffListResultDTO resultDTO = new DepartmentStaffListResultDTO(); + //1:根据组织Id查询该组织下工作人员列表 + List agencyStaffList = customerStaffAgencyDao.selectAgencyStaffList(agencyId); + //2:根据组织Id查询该组织下部门、人员列表 + //2.1:查询组织下部门列表 + List listDept = customerDepartmentDao.selectDepartmentList(agencyId); + List departmentList = ConvertUtils.sourceToTarget(listDept, DeptListResultDTO.class); + //2.2:查询每一个部门下人员列表 + List deptIdList = departmentList.stream().map(DeptListResultDTO::getDepartmentId).collect(Collectors.toList()); + List deptStaffs = customerStaffDepartmentDao.selectDeptStaffs(deptIdList); + departmentList.forEach(dept->{ + List departmentStaffList = new ArrayList<>(); + deptStaffs.forEach(ds->{ + if(dept.getDepartmentId().equals(ds.getDepartmentId())){ + StaffListResultDTO sf = new StaffListResultDTO(); + sf.setStaffId(ds.getUserId()); + departmentStaffList.add(sf); + } + }); + dept.setDepartmentStaffList(departmentStaffList); + }); + //3:根据组织Id查询该组织下网格、人员列表 + //3.1:查询组织下网格列表 + List gridList = customerGridDao.selectGridList(agencyId); + //3.2:查询每一个网格下人员列表 + List gridIdList = gridList.stream().map(GridListResultDTO::getGridId).collect(Collectors.toList()); + List gridStaffs = customerStaffGridDao.selectGridStaffs(gridIdList); + gridList.forEach(grid->{ + List gridStaffList = new ArrayList<>(); + gridStaffs.forEach(gs->{ + if(grid.getGridId().equals(gs.getGridId())){ + StaffListResultDTO sf = new StaffListResultDTO(); + sf.setStaffId(gs.getUserId()); + gridStaffList.add(sf); + } + }); + grid.setGridStaffList(gridStaffList); + }); + //4:汇总组织下人员、组织下部门下人员、组织下网格下人员Id集合,调用epmet-user服务查询工作人员基本信息 + List staffIdList1 = agencyStaffList.stream().map(StaffListResultDTO::getStaffId).collect(Collectors.toList()); + List staffIdList2 = deptStaffs.stream().map(CustomerStaffDepartmentDTO::getUserId).collect(Collectors.toList()); + List staffIdList3 = gridStaffs.stream().map(CustomerStaffGridDTO::getUserId).collect(Collectors.toList()); + List staffIdList = new ArrayList<>(); + staffIdList.addAll(staffIdList1); staffIdList.addAll(staffIdList2); staffIdList.addAll(staffIdList3); + staffIdList = new ArrayList(new LinkedHashSet<>(staffIdList)); + Result userList = epmetUserFeignClient.getCustomerStaffList(staffIdList); + //5:循环数据,将人员数据放到对应数据结构下 + CustomerStaffListResultDTO dto = userList.getData(); + List staffList = dto.getStaffList(); + List roleList = dto.getRoleList(); + //有时间再优化成jdk8的遍历方式 + //5.1装载组织下人员数据 + for(StaffListResultDTO sf : agencyStaffList){ + //人员信息 + for(StaffListResultDTO stf : staffList){ + if(sf.getStaffId().equals(stf.getStaffId())){ + sf = ConvertUtils.sourceToTarget(stf, StaffListResultDTO.class); + break; + } + } + //人员角色信息 + for(CustomerStaffRoleResultDTO role : roleList){ + if(sf.getStaffId().equals(role.getStaffId())&&CustomerAgencyConstant.AGENCY_LEADER.equals(role.getRoleKey())){ + sf.setRoleName(role.getRoleName()); + break; + } + } + } + //5.2装载组织下部门下人员数据 + for(DeptListResultDTO dept : departmentList){ + List departmentStaffList = dept.getDepartmentStaffList(); + for(StaffListResultDTO ds : departmentStaffList){ + //人员信息 + for(StaffListResultDTO stf : staffList){ + if(ds.getStaffId().equals(stf.getStaffId())){ + ds = ConvertUtils.sourceToTarget(stf, StaffListResultDTO.class); + break; + } + } + //人员角色信息 + for(CustomerStaffRoleResultDTO role : roleList){ + if(ds.getStaffId().equals(role.getStaffId())&&CustomerAgencyConstant.DEPT_LEADER.equals(role.getRoleKey())){ + ds.setRoleName(role.getRoleName()); + break; + } + } + } + } + //5.3装载组织下网格下人员数据 + for(GridListResultDTO grid : gridList){ + List gridStaffList = grid.getGridStaffList(); + for(StaffListResultDTO gs : gridStaffList){ + //人员信息 + for(StaffListResultDTO stf : staffList){ + if(gs.getStaffId().equals(stf.getStaffId())){ + gs = ConvertUtils.sourceToTarget(stf, StaffListResultDTO.class); + break; + } + } + //人员角色信息 + for(CustomerStaffRoleResultDTO role : roleList){ + if(gs.getStaffId().equals(role.getStaffId())&&CustomerAgencyConstant.GRID_MANAGER.equals(role.getRoleKey())){ + gs.setRoleName(role.getRoleName()); + break; + } + } + } + } + resultDTO.setAgencyStaffList(agencyStaffList); + resultDTO.setDepartmentList(departmentList); + resultDTO.setGridList(gridList); + return resultDTO; + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 根据组织Id集合、部门Id集合、网格Id集合查询各自对应详细信息 + **/ + @Override + public AgencyDeptGridResultDTO getAgencyDeptGridList(AgencyDeptGridFormDTO formDTO) { + AgencyDeptGridResultDTO agencyDeptGrid = new AgencyDeptGridResultDTO(); + //1:跟踪组织Id批量查询组织信息 + List agencyList = baseDao.selectAgencyListByIds(formDTO.getAgencyIdList()); + //2:根据部门Id批量查询部门信息 + List deptList = customerDepartmentDao.selectDeptListByIds(formDTO.getDeptIdList()); + //3:根据网格Id批量查询网格信息 + List gridList = customerGridDao.selectGridListByIds(formDTO.getGridIdList()); + agencyDeptGrid.setAgencyList(agencyList); + agencyDeptGrid.setDeptList(deptList); + agencyDeptGrid.setGridList(gridList); + return agencyDeptGrid; + } + } \ 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 367ee133fa..da1371aca7 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 @@ -536,4 +536,15 @@ public class CustomerGridServiceImpl extends BaseServiceImpl list = baseDao.selectGridByIds(gridIdList); return result.ok(list); } + + /** + * @Description 获取所属网格 + * @param formDTO + * @author zxc + * @date 2020/5/11 18:37 + */ + @Override + public BelongGridNameResultDTO getGridNameByGridId(BelongGridNameFormDTO formDTO) { + return baseDao.getGridNameByGridId(formDTO); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml index f690d08e53..41cce6fb8e 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml @@ -108,4 +108,15 @@ INNER JOIN customer_agency ca ON (csa.AGENCY_ID = ca.ID) WHERE csa.USER_ID = #{staffId} + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml index aab4ce8f67..54a12139ad 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml @@ -44,4 +44,15 @@ id = #{departmentId} AND del_flag = 0 + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml index aebba044c4..74f651fd7e 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml @@ -270,4 +270,40 @@ ) + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffAgencyDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffAgencyDao.xml index 9f09e6ab22..0a721b3f77 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffAgencyDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffAgencyDao.xml @@ -95,6 +95,14 @@ DEPARTMENT_ID = #{departmentId} ) - + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffDepartmentDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffDepartmentDao.xml index 7702cf9aa0..254cbc4ab2 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffDepartmentDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffDepartmentDao.xml @@ -14,6 +14,20 @@ + + UPDATE diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml index 9a4290d11c..1e6501c6bb 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml @@ -63,6 +63,20 @@ AND csg.grid_id = #{gridId} + + insert into customer_staff_grid diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/CustomerProjectParameterDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/CustomerProjectParameterDTO.java new file mode 100644 index 0000000000..7e139fb402 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/CustomerProjectParameterDTO.java @@ -0,0 +1,96 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 项目客户参数订制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class CustomerProjectParameterDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 唯一标识 + */ + private String id; + + /** + * 客户ID + */ + private String customerId; + + /** + * 参数KEY值 + */ + private String parameterKey; + + /** + * 参数名称 + */ + private String parameterName; + + /** + * 参数VALUE值 + */ + private String parameterValue; + + /** + * 说明 + */ + private String description; + + /** + * 删除标识:0.未删除 1.已删除 + */ + 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/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectDTO.java new file mode 100644 index 0000000000..356bff7769 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectDTO.java @@ -0,0 +1,111 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 项目表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 唯一标识 + */ + private String id; + + /** + * 机关ID + */ + private String agencyId; + + /** + * 来源:议题issue + */ + private String origin; + + /** + * 来源ID + */ + private String originId; + + /** + * 项目标题 + */ + private String title; + + /** + * 状态:待处理 pending,结案closed + */ + private String status; + + /** + * 结案说明 + */ + private String publicReply; + + /** + * 结案状态:已解决 resolved,未解决 unresolved + */ + private String closedStatus; + + /** + * 所属机关 11:22:33(本机关以及上级所有机关ID) + */ + private String orgIdPath; + + /** + * 删除标识:0.未删除 1.已删除 + */ + 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/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectProcessDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectProcessDTO.java new file mode 100644 index 0000000000..4a0e30f907 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectProcessDTO.java @@ -0,0 +1,117 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; + +import lombok.Data; + + +/** + * 项目处理进展表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectProcessDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 唯一标识 + */ + private String id; + + /** + * 项目ID + */ + private String projectId; + + /** + * 部门名 + */ + private String departmentName; + + /** + * 负负责人ID + */ + private String staffId; + + /** + * 处理:结案close,退回return,部门流转transfer,创建项目created + */ + private String operation; + + /** + * 处理名 + */ + private String operationName; + + /** + * 公开答复 + */ + private String publicReply; + + /** + * 内部备注 + */ + private String internalRemark; + + /** + * 结束时间 + */ + private Date endTime; + + /** + * 耗费天数 + */ + private String costWorkdays; + + /** + * 删除标识:0.未删除 1.已删除 + */ + 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/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectSatisfactionDetailDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectSatisfactionDetailDTO.java new file mode 100644 index 0000000000..27437172ed --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectSatisfactionDetailDTO.java @@ -0,0 +1,86 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 项目满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectSatisfactionDetailDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 项目ID + */ + private String projectId; + + /** + * 评论 - 最多300字 + */ + private String comment; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectSatisfactionStatisticsDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectSatisfactionStatisticsDTO.java new file mode 100644 index 0000000000..5af3de6cbc --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectSatisfactionStatisticsDTO.java @@ -0,0 +1,91 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 项目满意度调查统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectSatisfactionStatisticsDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 项目ID + */ + private String projectId; + + /** + * 一般满意数 + */ + private Integer goodCount; + + /** + * 非常满意数 + */ + private Integer perfectCount; + + /** + * 不满意数 + */ + private Integer badCount; + + /** + * 删除标识 0未删除、1已删除 + */ + 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/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectStaffDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectStaffDTO.java new file mode 100644 index 0000000000..7e4e7d2dce --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectStaffDTO.java @@ -0,0 +1,121 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 项目人员关联表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectStaffDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 唯一标识 + */ + private String id; + + /** + * 项目ID + */ + private String projectId; + + /** + * 项目处理进展ID + */ + private String processId; + + /** + * 客户ID + */ + private String customerId; + + /** + * 机关ID + */ + private String orgId; + + /** + * 部门ID + */ + private String departmentId; + + /** + * 网格ID + */ + private String gridId; + + /** + * 所属机关(11:22:33) + */ + private String orgIdPath; + + /** + * 人员ID + */ + private String staffId; + + /** + * 部门名 + */ + private String departmentName; + + /** + * 是否处理:未处理unhandled,已处理handle + */ + private String isHandle; + + /** + * 删除标识:0.未删除 1.已删除 + */ + 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/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/.gitkeep b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java deleted file mode 100644 index fc93172558..0000000000 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.epmet.dto.form; - -import lombok.Data; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; - -/** - * @Description 测试入参 - * @Author yinzuomei - * @Date 2020/5/8 10:00 - */ -@Data -public class DemoTestFormDTO implements Serializable { - private static final long serialVersionUID = 4859779755214502427L; - @NotBlank(message = "客户id不能为空") - private String customerId; - @NotBlank(message = "网格id不能为空") - private String gridId; -} - diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java new file mode 100644 index 0000000000..57f5fbb8ee --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java @@ -0,0 +1,31 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 项目跟踪-项目满意度评价列表-接口入参 + * @Author sun + */ +@Data +public class EvaluationListFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214502427L; + + @NotBlank(message = "项目Id不能为空") + private String projectId; + + /** + * 请求页码 + * */ + @Min(1) + private int pageNo; + + /** + * 每页多少条数据 + * */ + private int pageSize = 20; +} + diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProcessListFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProcessListFormDTO.java new file mode 100644 index 0000000000..ec88405a6e --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProcessListFormDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 项目处理进展列表-接口入参 + * @Author sun + */ +@Data +public class ProcessListFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214502427L; + + @NotBlank(message = "项目Id不能为空") + private String projectId; + +} + diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectClosedFromDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectClosedFromDTO.java new file mode 100644 index 0000000000..4b9e9a5ff6 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectClosedFromDTO.java @@ -0,0 +1,49 @@ +package com.epmet.dto.form; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription 项目结案 + * @date 2020/5/11 15:44 + */ +@Data +public class ProjectClosedFromDTO implements Serializable { + + private static final long serialVersionUID = -7383213527369892832L; + /** + * 用户Id + */ + private String userId; + /** + * 项目Id + */ + private String projectId; + /** + * 是否解决(已解决 resolved,未解决 unresolved) + */ + private String closedStatus; + /** + * 公开答复内容 + */ + @NotBlank(message = "结案说明不能为空") + @Length(max = 1000, message = "结案说明不能超过1000个字符") + private String publicReply; + /** + * 内部备注内容 + */ + @Length(max = 1000, message = "内部备注不能超过1000个字符") + private String internalRemark; + /** + * 项目人员关联表ID + */ + private String projectStaffId; + /** + * 部门名 + */ + private String departmentName; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectDetailFromDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectDetailFromDTO.java new file mode 100644 index 0000000000..28178701c5 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectDetailFromDTO.java @@ -0,0 +1,25 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription 项目详情入参 + * @date 2020/5/11 15:24 + */ +@Data +public class ProjectDetailFromDTO implements Serializable { + private static final long serialVersionUID = 1246868104866189698L; + + /** + * 项目Id + */ + private String projectId; + + /** + * 用户ID + */ + private String userId; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectEvaluateFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectEvaluateFormDTO.java new file mode 100644 index 0000000000..d70fe56a24 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectEvaluateFormDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 提交满意度评价——已转项目 + */ +@Data +public class ProjectEvaluateFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String projectId; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价内容 + */ + private String comment; + + /** + * 用户ID + */ + private String userId; + + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectEvaluationListFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectEvaluationListFormDTO.java new file mode 100644 index 0000000000..6ba8cf9c1d --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectEvaluationListFormDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已转项目 + */ +@Data +public class ProjectEvaluationListFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String projectId; + + /** + * 页码 + */ + private Integer pageNo; + + /** + * 每页数量 + */ + private Integer pageSize; + + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectInitEvaluationFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectInitEvaluationFormDTO.java new file mode 100644 index 0000000000..c57d2cc4be --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectInitEvaluationFormDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class ProjectInitEvaluationFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 项目Id + */ + private String projectId; + + /** + * 创建人 + */ + private String userId; + + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectListFromDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectListFromDTO.java new file mode 100644 index 0000000000..d608acf068 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectListFromDTO.java @@ -0,0 +1,31 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/11 14:01 + */ +@Data +public class ProjectListFromDTO implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 客户ID + */ + private String customerId; + /** + * 用户ID + */ + private String userId; + /** + * 页码 + */ + private Integer pageNo; + /** + * 每页显示数量 + */ + private Integer pageSize; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReturnFromDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReturnFromDTO.java new file mode 100644 index 0000000000..8b36b5ddcd --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReturnFromDTO.java @@ -0,0 +1,49 @@ +package com.epmet.dto.form; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription 项目退回 + * @date 2020/5/11 15:55 + */ +@Data +public class ReturnFromDTO implements Serializable { + + private static final long serialVersionUID = -8747667324909671154L; + /** + * 用户Id + */ + private String userId; + /** + * 项目Id + */ + private String projectId; + /** + * 流程节点Id + */ + private String projectProcessId; + /** + * 公开答复内容 + */ + @Length(max = 1000, message = "公开答复不能超过1000个字符") + private String publicReply; + /** + * 内部流转意见 + */ + @NotBlank(message = "内部备注不能为空") + @Length(max = 1000, message = "内部备注不能超过1000个字符") + private String internalRemark; + /** + * 项目人员关联表ID + */ + private String projectStaffId; + /** + * 部门名 + */ + private String departmentName; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReturnListFromDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReturnListFromDTO.java new file mode 100644 index 0000000000..cd0aa2638a --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReturnListFromDTO.java @@ -0,0 +1,19 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription 可退回节点列表 + * @date 2020/5/11 15:49 + */ +@Data +public class ReturnListFromDTO implements Serializable { + private static final long serialVersionUID = 741782201514313323L; + /** + * 项目Id + */ + private String projectId; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/TickStaffFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/TickStaffFormDTO.java new file mode 100644 index 0000000000..c481b89492 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/TickStaffFormDTO.java @@ -0,0 +1,35 @@ +package com.epmet.dto.form; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +/** + * @Description 项目跟踪-转其他部门-勾选的人员信息-接口入参 + * @Author sun + */ +@Data +public class TickStaffFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214502427L; + + @NotBlank(message = "机关Id不能为空") + private String agencyId; + + /** + * 部门Id(为空表示勾选的人不是部门下的,可能是组织下的也可能是网格下的) + */ + private String departmentId; + + /** + * 网格Id(为空表示勾选的人不是网格下的,可能是组织下的也可能是部门下的) + */ + private String gridId; + + @NotBlank(message = "内部备注不能为空") + private String staffId; +} + diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/TransferFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/TransferFormDTO.java new file mode 100644 index 0000000000..9d078a27b5 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/TransferFormDTO.java @@ -0,0 +1,36 @@ +package com.epmet.dto.form; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +/** + * @Description 项目跟踪-转其他部门-接口入参 + * @Author sun + */ +@Data +public class TransferFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214502427L; + + @NotBlank(message = "项目Id不能为空") + private String projectId; + + @NotBlank(message = "项目人员关联Id不能为空") + private String projectStaffId; + + @Length(max=1000,message = "公开答复内容不能超过1000位") + private String publicReply; + + @NotBlank(message = "内部备注不能为空") + @Length(max=1000,message = "内部备注不能超过1000位") + private String internalRemark; + + @Valid + private List staffList; + +} + diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/.gitkeep b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/CreatedListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/CreatedListResultDTO.java new file mode 100644 index 0000000000..ed225dc760 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/CreatedListResultDTO.java @@ -0,0 +1,50 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription 我发起的项目列表 + * @date 2020/5/11 15:57 + */ +@Data +public class CreatedListResultDTO implements Serializable { + + private static final long serialVersionUID = 5957826616179876849L; + /** + * 项目Id + */ + private String projectId; + /** + * 项目标题 + */ + private String projectTitle; + /** + * 项目状态 + */ + private String projectStatus; + /** + * 结案说明 + */ + private String publicReply; + /** + * 项目创建时间 + */ + private Long projectTime; + /** + * 滞留天数 + */ + private String detentionDays; + /** + * 当前处理部门(组织-网格、组织-部门 ) + */ + private List departmentNameList; + /** + * 是否超期预警 + */ + private Boolean warningFlag; + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/DepartmentResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/DepartmentResultDTO.java new file mode 100644 index 0000000000..d63091b73e --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/DepartmentResultDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/12 16:29 + */ +@Data +public class DepartmentResultDTO implements Serializable { + private static final long serialVersionUID = 394316321928642799L; + /** + * 项目人员关联表ID + */ + private String projectStaffId; + /** + * 部门名 + */ + private String departmentName; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java new file mode 100644 index 0000000000..0a9dd49d82 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java @@ -0,0 +1,65 @@ +/** + * 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.result; + +import lombok.Data; + +import java.io.Serializable; + + +/** + * 项目跟踪-项目满意度评价列表-接口返参 + * + * @author sun + */ +@Data +public class EvaluationListResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 评价用户id + */ + private String userId = ""; + + /** + * 评论人员全称(街道-姓氏先生/女士) + */ + private String userNickName = ""; + + /** + * 满意程度(不满意:bad、基本满意:good、非常满意:perfect) + */ + private String satisfaction = ""; + + /** + * 评价时间 + */ + private Long evaluateTime; + + /** + * 评价内容 + */ + private String evaluateContent = ""; + + /** + * 头像 + */ + private String userHeadPhoto = ""; + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/InvolvedListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/InvolvedListResultDTO.java new file mode 100644 index 0000000000..1d22d0b0b3 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/InvolvedListResultDTO.java @@ -0,0 +1,49 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription 我参与的项目列表 + * @date 2020/5/11 16:06 + */ +@Data +public class InvolvedListResultDTO implements Serializable { + + private static final long serialVersionUID = 6050021263050922594L; + /** + * 项目Id + */ + private String projectId; + /** + * 项目标题 + */ + private String projectTitle; + /** + * 项目状态 + */ + private String projectStatus; + /** + * 结案说明 + */ + private String publicReply; + /** + * 创建时间 + */ + private Long projectTime; + /** + * 滞留天数 + */ + private String detentionDays; + /** + * 当前处理部门(组织-网格、组织-部门 ) + */ + private List departmentNameList; + /** + * 是否超期预警 + */ + private Boolean warningFlag; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/PendProjectListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/PendProjectListResultDTO.java new file mode 100644 index 0000000000..a2fe308a27 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/PendProjectListResultDTO.java @@ -0,0 +1,36 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription 待处理项目列表 + * @date 2020/5/11 15:38 + */ +@Data +public class PendProjectListResultDTO implements Serializable { + + private static final long serialVersionUID = -7900117646827271573L; + /** + * 项目Id + */ + private String projectId; + /** + * 项目标题 + */ + private String projectTitle; + /** + * 项目创建时间 + */ + private Long projectTime; + /** + * 滞留天数 + */ + private String detentionDays; + /** + * 是否超期预警 + */ + private Boolean warningFlag; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProcesslistResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProcesslistResultDTO.java new file mode 100644 index 0000000000..d77367e075 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProcesslistResultDTO.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.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + + +/** + * 项目跟踪-项目处理进展列表-接口返参 + * + * @author sun + */ +@Data +public class ProcesslistResultDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 项目Id + */ + private String projectId = ""; + + /** + * 项目处理进展Id + */ + private String processId = ""; + + /** + * 处理进展名称 + */ + private String processName = ""; + + /** + * 处理进展时间 + */ + private Long processTime; + + /** + * 处理部门 + */ + private String departmentName = ""; + + /** + * 公开答复 + */ + private String publicReply = ""; + + /** + * 内部备注 + */ + private String internalRemark = ""; +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectDetailResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectDetailResultDTO.java new file mode 100644 index 0000000000..f44973bcea --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectDetailResultDTO.java @@ -0,0 +1,54 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/11 15:33 + */ +@Data +public class ProjectDetailResultDTO implements Serializable { + + private static final long serialVersionUID = -2969103790181586848L; + /** + * 项目Id + */ + private String projectId; + /** + * 来源 + */ + private String origin; + /** + * 来源Id + */ + private String originId; + /** + * 项目标题 + */ + private String projectTitle; + /** + * 项目方案 + */ + private String publicReply; + /** + * 内部备注 + */ + private String internalRemark; + /** + * 项目状态(待处理 pending,结案closed) + */ + private String projectStatus; + /** + * 处理状态(是否由我处理) + */ + private Boolean processable; + /** + * 当前跟进部门 + */ + private List departmentNameList; + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectEvaluateInfoResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectEvaluateInfoResultDTO.java new file mode 100644 index 0000000000..52950afad5 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectEvaluateInfoResultDTO.java @@ -0,0 +1,25 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 项目满意度评价信息 + */ +@Data +public class ProjectEvaluateInfoResultDTO implements Serializable { + + private static final long serialVersionUID = -3699103790181586654L; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectEvaluationListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectEvaluationListResultDTO.java new file mode 100644 index 0000000000..dc40ce5a3c --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectEvaluationListResultDTO.java @@ -0,0 +1,47 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已关闭 + */ +@Data +public class ProjectEvaluationListResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价用户Id + */ + private String userId; + + /** + * 评价用户(山东路168-尹女士) + */ + private String userNickName; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价时间 + */ + private Long evaluateTime; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 用户头像 + */ + private String userHeadPhoto; + + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectInitEvaluationResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectInitEvaluationResultDTO.java new file mode 100644 index 0000000000..33883cd6ab --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectInitEvaluationResultDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dto.result; + +import com.epmet.dto.form.ProjectEvaluateFormDTO; +import com.epmet.dto.form.ProjectInitEvaluationFormDTO; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class ProjectInitEvaluationResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价状态:true已评价,false未评价 + */ + private Boolean status; + + /** + * 评价信息 + */ + private ProjectEvaluateInfoResultDTO evaluateInfo; + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ReturnListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ReturnListResultDTO.java new file mode 100644 index 0000000000..229f769753 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ReturnListResultDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription 可退回节点列表 + * @date 2020/5/11 15:50 + */ +@Data +public class ReturnListResultDTO implements Serializable { + private static final long serialVersionUID = -7082368401375611559L; + /** + * 处理进展表Id + */ + private String projectProcessId; + /** + * 处理人名称(组织-部门-人员 组织-网格-人员 组织-人员) + */ + private String processor; +} diff --git a/epmet-module/gov-project/gov-project-server/pom.xml b/epmet-module/gov-project/gov-project-server/pom.xml index 62c6aab0fa..246d9fcd95 100644 --- a/epmet-module/gov-project/gov-project-server/pom.xml +++ b/epmet-module/gov-project/gov-project-server/pom.xml @@ -60,6 +60,24 @@ feign-httpclient 10.3.0 + + com.epmet + common-service-client + 2.0.0 + compile + + + com.epmet + epmet-user-client + 2.0.0 + compile + + + com.epmet + gov-org-client + 2.0.0 + compile + diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ParameterKeyConstant.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ParameterKeyConstant.java new file mode 100644 index 0000000000..502b895544 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ParameterKeyConstant.java @@ -0,0 +1,14 @@ +package com.epmet.constant; + +/** + * @author zhaoqifeng + * @dscription 客户定制参数key + * @date 2020/5/12 11:02 + */ +public interface ParameterKeyConstant { + + /** + * 可滞留天数 + */ + String DETENTION_DAYS = "detention_days"; +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java new file mode 100644 index 0000000000..78d79402c1 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java @@ -0,0 +1,88 @@ +package com.epmet.constant; + +/** + * @author zhaoqifeng + * @dscription 项目相关常量 + * @date 2020/5/12 10:47 + */ +public interface ProjectConstant { + /** + * 项目来源-议题 + */ + String ISSUE = "issue"; + /** + * 状态-待处理 + */ + String PENDING = "pending"; + /** + * 状态-结案 + */ + String CLOSED = "closed"; + /** + * 结案状态-已解决 + */ + String RESOLVED = "resolved"; + /** + * 结案状态-未解决 + */ + String UNRESOLVED = "unresolved"; + + /** + * 处理-结案 + */ + String OPERATION_CLOSE = "close"; + /** + * 处理名-结案 + */ + String OPERATION_CLOSE_NAME = "结案"; + /** + * 处理-退回 + */ + String OPERATION_RETURN = "return"; + /** + * 处理名-退回 + */ + String OPERATION_RETURN_NAME = "退回"; + /** + * 处理-部门流转 + */ + String OPERATION_TRANSFER = "transfer"; + /** + * 处理名-部门流转 + */ + String OPERATION_TRANSFER_NAME = "部门流转"; + /** + * 处理-转项目 + */ + String OPERATION_CREATED = "created"; + /** + * 处理名-转项目 + */ + String OPERATION_CREATED_NAME = "转项目"; + + /** + * 是否处理-未处理 + */ + String UNHANDLED = "unhandled"; + /** + * 是否处理-已处理 + */ + String HANDLE = "handle"; + + /** + * 调用epmet-user服务查询数据失败 + */ + String SELECT_USERINFO_EXCEPTION = "获取用户昵称、头像失败"; + /** + * 查询项目人员关联表数据失败 + */ + String SELECT_PROJECTSTAFF_EXCEPTION = "获取项目人员关联表数据失败"; + /** + * 更新项目人员关联表数据失败 + */ + String UPDATE_PROJECTSTAFF_EXCEPTION = "更新项目人员关联表数据失败"; + /** + * 更新项目人员关联表数据失败 + */ + String DATe_EXCEPTION = "未勾选流转人员"; +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/.gitkeep b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/CustomerProjectParameterController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/CustomerProjectParameterController.java new file mode 100644 index 0000000000..93139cfa21 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/CustomerProjectParameterController.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.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.dto.CustomerProjectParameterDTO; +import com.epmet.excel.CustomerProjectParameterExcel; +import com.epmet.service.CustomerProjectParameterService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("customerprojectparameter") +public class CustomerProjectParameterController { + + @Autowired + private CustomerProjectParameterService customerProjectParameterService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = customerProjectParameterService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + CustomerProjectParameterDTO data = customerProjectParameterService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody CustomerProjectParameterDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + customerProjectParameterService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody CustomerProjectParameterDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + customerProjectParameterService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + customerProjectParameterService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = customerProjectParameterService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, CustomerProjectParameterExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/GovProjectDemoController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/GovProjectDemoController.java deleted file mode 100644 index e099bd801c..0000000000 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/GovProjectDemoController.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.epmet.controller; - -import com.epmet.commons.tools.utils.Result; -import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.dto.form.DemoTestFormDTO; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.web.bind.annotation.*; - -/** - * @Description 测试 - * @Author yinzuomei - * @Date 2020/5/7 22:47 - */ -@RestController -@RequestMapping("demo") -public class GovProjectDemoController { - private static final Logger logger = LoggerFactory.getLogger(GovProjectDemoController.class); - - @PostMapping("test") - public Result test(@RequestBody DemoTestFormDTO formDTO) { - ValidatorUtils.validateEntity(formDTO); - logger.info(String.format("请求成功客户id[%s],网格id[%s]",formDTO.getCustomerId(),formDTO.getGridId())); - return new Result().ok("gov-project-server请求成功"); - } -} - diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java new file mode 100644 index 0000000000..d0ff226582 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.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.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.dto.ProjectDTO; +import com.epmet.excel.ProjectExcel; +import com.epmet.service.ProjectService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("project") +public class ProjectController { + + @Autowired + private ProjectService projectService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = projectService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + ProjectDTO data = projectService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody ProjectDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + projectService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody ProjectDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + projectService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + projectService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = projectService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, ProjectExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectProcessController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectProcessController.java new file mode 100644 index 0000000000..116ad85e3a --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectProcessController.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.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.dto.ProjectProcessDTO; +import com.epmet.excel.ProjectProcessExcel; +import com.epmet.service.ProjectProcessService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("projectprocess") +public class ProjectProcessController { + + @Autowired + private ProjectProcessService projectProcessService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = projectProcessService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + ProjectProcessDTO data = projectProcessService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody ProjectProcessDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + projectProcessService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody ProjectProcessDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + projectProcessService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + projectProcessService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = projectProcessService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, ProjectProcessExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectSatisfactionDetailController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectSatisfactionDetailController.java new file mode 100644 index 0000000000..e6cff263f9 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectSatisfactionDetailController.java @@ -0,0 +1,130 @@ +/** + * 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.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.dto.ProjectSatisfactionDetailDTO; +import com.epmet.dto.form.ProjectEvaluateFormDTO; +import com.epmet.dto.form.ProjectEvaluationListFormDTO; +import com.epmet.dto.form.ProjectInitEvaluationFormDTO; +import com.epmet.dto.result.ProjectEvaluationListResultDTO; +import com.epmet.dto.result.ProjectInitEvaluationResultDTO; +import com.epmet.excel.ProjectSatisfactionDetailExcel; +import com.epmet.service.ProjectSatisfactionDetailService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("projectsatisfactiondetail") +public class ProjectSatisfactionDetailController { + + @Autowired + private ProjectSatisfactionDetailService projectSatisfactionDetailService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = projectSatisfactionDetailService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + ProjectSatisfactionDetailDTO data = projectSatisfactionDetailService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody ProjectSatisfactionDetailDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + projectSatisfactionDetailService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody ProjectSatisfactionDetailDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + projectSatisfactionDetailService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + projectSatisfactionDetailService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = projectSatisfactionDetailService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, ProjectSatisfactionDetailExcel.class); + } + + /** + * @Description 提交满意度评价初始化——已转项目 + * @param formDTO + * @author zxc + */ + @PostMapping("projectinitevaluation") + public Result projectInitEvaluation(@RequestBody ProjectInitEvaluationFormDTO formDTO){ + return new Result().ok(projectSatisfactionDetailService.projectInitEvaluation(formDTO)); + } + + /** + * @Description 提交满意度评价——已转项目 + * @param projectEvaluate + * @author zxc + */ + @PostMapping("projectevaluate") + public Result projectEvaluate(@RequestBody ProjectEvaluateFormDTO projectEvaluate){ + projectSatisfactionDetailService.projectEvaluate(projectEvaluate); + return new Result(); + } + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + @PostMapping("projectevaluationlist") + public Result> projectEvaluationList(@RequestBody ProjectEvaluationListFormDTO formDTO){ + return new Result>().ok(projectSatisfactionDetailService.projectEvaluationList(formDTO)); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectSatisfactionStatisticsController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectSatisfactionStatisticsController.java new file mode 100644 index 0000000000..8857e92695 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectSatisfactionStatisticsController.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.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.dto.ProjectSatisfactionStatisticsDTO; +import com.epmet.excel.ProjectSatisfactionStatisticsExcel; +import com.epmet.service.ProjectSatisfactionStatisticsService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("projectsatisfactionstatistics") +public class ProjectSatisfactionStatisticsController { + + @Autowired + private ProjectSatisfactionStatisticsService projectSatisfactionStatisticsService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = projectSatisfactionStatisticsService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + ProjectSatisfactionStatisticsDTO data = projectSatisfactionStatisticsService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody ProjectSatisfactionStatisticsDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + projectSatisfactionStatisticsService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody ProjectSatisfactionStatisticsDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + projectSatisfactionStatisticsService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + projectSatisfactionStatisticsService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = projectSatisfactionStatisticsService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, ProjectSatisfactionStatisticsExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectStaffController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectStaffController.java new file mode 100644 index 0000000000..dbe6fef069 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectStaffController.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.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.dto.ProjectStaffDTO; +import com.epmet.excel.ProjectStaffExcel; +import com.epmet.service.ProjectStaffService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@RestController +@RequestMapping("projectstaff") +public class ProjectStaffController { + + @Autowired + private ProjectStaffService projectStaffService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = projectStaffService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + ProjectStaffDTO data = projectStaffService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody ProjectStaffDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + projectStaffService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody ProjectStaffDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + projectStaffService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + projectStaffService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = projectStaffService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, ProjectStaffExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java new file mode 100644 index 0000000000..f252c27770 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java @@ -0,0 +1,201 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.annotation.RequirePermission; +import com.epmet.commons.tools.enums.RequirePermissionEnum; +import com.epmet.commons.tools.security.dto.TokenDto; +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.ProjectProcessService; +import com.epmet.service.ProjectSatisfactionDetailService; +import com.epmet.service.ProjectStaffService; +import com.epmet.service.ProjectTraceService; +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; + +/** + * @Description 政府端-项目跟踪 + * @Author yinzuomei + * @Date 2020/5/11 9:07 + */ +@RestController +@RequestMapping("trace") +public class ProjectTraceController { + + @Autowired + private ProjectTraceService projectTraceService; + + @Autowired + private ProjectProcessService projectProcessService; + + @Autowired + private ProjectSatisfactionDetailService projectSatisfactionDetailService; + + @Autowired + private ProjectStaffService projectStaffService; + + /** + * 待处理项目列表 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:14 + */ + @PostMapping("pendprojectlist") + public Result> getPendProjectList(@LoginUser TokenDto tokenDto, @RequestBody ProjectListFromDTO fromDTO) { + List result = projectTraceService.getPendProjectList(tokenDto, fromDTO); + return new Result>().ok(result); + } + + /** + * 我发起的项目列表 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:19 + */ + @PostMapping("createdlist") + public Result> getCreatedList(@LoginUser TokenDto tokenDto, @RequestBody ProjectListFromDTO fromDTO) { + List result = projectTraceService.getCreatedList(tokenDto, fromDTO); + return new Result>().ok(result); + } + + /** + * 我参与的项目列表 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:21 + */ + @PostMapping("involvedlist") + public Result> getInvolvedList(@LoginUser TokenDto tokenDto, @RequestBody ProjectListFromDTO fromDTO) { + List result = projectTraceService.getInvolvedList(tokenDto, fromDTO); + return new Result>().ok(result); + } + + /** + * 项目详情 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/5/11 16:25 + */ + @PostMapping("projectdetail") + public Result getProjectDetail(@LoginUser TokenDto tokenDto, @RequestBody ProjectDetailFromDTO fromDTO) { + ProjectDetailResultDTO result = projectTraceService.getProjectDetail(tokenDto, fromDTO); + return new Result().ok(result); + } + + /** + * 项目结案 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/5/11 16:27 + */ + @PostMapping("closeproject") + public Result closed(@LoginUser TokenDto tokenDto, @RequestBody ProjectClosedFromDTO fromDTO) { + projectTraceService.closed(tokenDto, fromDTO); + return new Result(); + } + + /** + * 可退回节点列表 + * + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:30 + */ + @PostMapping("returnablelist") + public Result> getReturnableList(@RequestBody ReturnListFromDTO fromDTO) { + List result = projectTraceService.getReturnableList(fromDTO); + return new Result>().ok(result); + } + + /** + * 项目退回 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/5/11 16:32 + */ + @PostMapping("return") + public Result projectReturn(@LoginUser TokenDto tokenDto, @RequestBody ReturnFromDTO fromDTO) { + projectTraceService.projectReturn(tokenDto, fromDTO); + return new Result(); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-项目处理进展列表 + **/ + @PostMapping("processlist") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PROJECT_TRACE_DETAIL) + public Result> processList(@LoginUser TokenDto tokenDTO, @RequestBody ProcessListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + return new Result>().ok(projectProcessService.progressList(formDTO)); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-项目满意度评价列表 + **/ + @PostMapping("evaluationlist") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PROJECT_TRACE_DETAIL) + public Result> evaluationList(@LoginUser TokenDto tokenDTO, @RequestBody EvaluationListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + return new Result>().ok(projectSatisfactionDetailService.evaluationList(formDTO)); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-部门人员选择 + **/ + @PostMapping("departmentstafflist") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PROJECT_TRACE_TRANSFER) + public Result departmentStaffList(@LoginUser TokenDto tokenDTO, @RequestBody DepartmentStaffListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + return new Result().ok(projectStaffService.departmentStaffList(formDTO)); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-转其他部门 + **/ + @PostMapping("transfer") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PROJECT_TRACE_TRANSFER) + public Result transfer(@LoginUser TokenDto tokenDTO, @RequestBody TransferFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + projectProcessService.transfer(formDTO); + return new Result(); + } +} + diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/.gitkeep b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/CustomerProjectParameterDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/CustomerProjectParameterDao.java new file mode 100644 index 0000000000..c94ad69046 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/CustomerProjectParameterDao.java @@ -0,0 +1,42 @@ +/** + * 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.entity.CustomerProjectParameterEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + * 项目客户参数订制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface CustomerProjectParameterDao extends BaseDao { + /** + * 根据key查找value + * @author zhaoqifeng + * @date 2020/5/12 10:39 + * @param entity 参数 + * @return java.lang.String + */ + String selectParameterValueByKey(CustomerProjectParameterEntity entity); + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java new file mode 100644 index 0000000000..c84c8d6f2d --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java @@ -0,0 +1,88 @@ +/** + * 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.ProjectDTO; +import com.epmet.dto.form.ProjectListFromDTO; +import com.epmet.dto.result.DepartmentResultDTO; +import com.epmet.dto.result.ProjectDetailResultDTO; +import com.epmet.entity.ProjectEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 项目表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface ProjectDao extends BaseDao { + /** + * 待处理项目列表 + * + * @param fromDTO 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/11 17:04 + **/ + List selectPendList(ProjectListFromDTO fromDTO); + + /** + * 我发起的项目列表 + * + * @param fromDTO 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 13:59 + */ + List selectCreatedList(ProjectListFromDTO fromDTO); + + /** + * 我参与的项目列表 + * + * @param fromDTO 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 14:16 + */ + List selectInvolvedList(ProjectListFromDTO fromDTO); + + /** + * 当前处理部门 + * + * @param dto 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 14:47 + */ + List selectDepartmentNameList(ProjectDTO dto); + + /** + * 获取项目详情 + * @author zhaoqifeng + * @date 2020/5/12 15:18 + * @param id + * @return com.epmet.dto.ProjectDTO + */ + ProjectDetailResultDTO selectProjectDetail(@Param("id") String id); + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectProcessDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectProcessDao.java new file mode 100644 index 0000000000..71f0b72b72 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectProcessDao.java @@ -0,0 +1,46 @@ +/** + * 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.result.ProcesslistResultDTO; +import com.epmet.entity.ProjectProcessEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 项目处理进展表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface ProjectProcessDao extends BaseDao { + + /** + * @param projectId + * @return + * @Author sun + * @Description 根据项目Id查询项目处理进展列表 + **/ + List getProcessListByProjectId(@Param("projectId") String projectId); + + List selectReturnableList(@Param("projectId") String projectId); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSatisfactionDetailDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSatisfactionDetailDao.java new file mode 100644 index 0000000000..83ab6375c0 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSatisfactionDetailDao.java @@ -0,0 +1,63 @@ +/** + * 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.ProjectEvaluationListFormDTO; +import com.epmet.dto.form.ProjectInitEvaluationFormDTO; +import com.epmet.dto.result.ProjectEvaluateInfoResultDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.ProjectEvaluationListResultDTO; +import com.epmet.entity.ProjectSatisfactionDetailEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 项目满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface ProjectSatisfactionDetailDao extends BaseDao { + + /** + * @param projectId + * @return + * @Author sun + * @Description 根据项目Id查询项目评价列表数据 + **/ + List getEvaluationListByProjectId(@Param("projectId") String projectId); + + /** + * @Description 满意度评价初始化——已转项目 + * @param projectEvaluateFormDTO + * @author zxc + */ + ProjectEvaluateInfoResultDTO checkProjectSatisfaction(ProjectInitEvaluationFormDTO projectEvaluateFormDTO); + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + List projectEvaluationList(ProjectEvaluationListFormDTO formDTO); + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSatisfactionStatisticsDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSatisfactionStatisticsDao.java new file mode 100644 index 0000000000..1b05ef5788 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSatisfactionStatisticsDao.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.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.ProjectSatisfactionStatisticsEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 项目满意度调查统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface ProjectSatisfactionStatisticsDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectStaffDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectStaffDao.java new file mode 100644 index 0000000000..27b5165246 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectStaffDao.java @@ -0,0 +1,57 @@ +/** + * 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.ProjectStaffDTO; +import com.epmet.dto.result.DepartmentResultDTO; +import com.epmet.entity.ProjectStaffEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 项目人员关联表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Mapper +public interface ProjectStaffDao extends BaseDao { + + /** + * 未处理部门列表 + * + * @param dto 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 16:40 + */ + List selectDepartmentNameList(ProjectStaffDTO dto); + + /** + * 获取节点处理人信息 + * @author zhaoqifeng + * @date 2020/5/13 15:08 + * @param processId + * @return com.epmet.dto.ProjectStaffDTO + */ + ProjectStaffDTO selectProjectStaffInfo(@Param("processId") String processId); + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/.gitkeep b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/CustomerProjectParameterEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/CustomerProjectParameterEntity.java new file mode 100644 index 0000000000..5d5a578320 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/CustomerProjectParameterEntity.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("customer_project_parameter") +public class CustomerProjectParameterEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户ID + */ + private String customerId; + + /** + * 参数KEY值 + */ + private String parameterKey; + + /** + * 参数名称 + */ + private String parameterName; + + /** + * 参数VALUE值 + */ + private String parameterValue; + + /** + * 说明 + */ + private String description; + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectEntity.java new file mode 100644 index 0000000000..a0c82726ea --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectEntity.java @@ -0,0 +1,76 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("project") +public class ProjectEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 机关ID + */ + private String agencyId; + + /** + * 来源:议题issue + */ + private String origin; + + /** + * 来源ID + */ + private String originId; + + /** + * 项目标题 + */ + private String title; + + /** + * 状态:待处理 pending,结案closed + */ + private String status; + + /** + * 结案状态:已解决 resolved,未解决 unresolved + */ + private String closedStatus; + + /** + * 所属机关 11:22:33(本机关以及上级所有机关ID) + */ + private String orgIdPath; + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectProcessEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectProcessEntity.java new file mode 100644 index 0000000000..e9ae924698 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectProcessEntity.java @@ -0,0 +1,86 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("project_process") +public class ProjectProcessEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 项目ID + */ + private String projectId; + + /** + * 部门名 + */ + private String departmentName; + + /** + * 负负责人ID + */ + private String staffId; + + /** + * 处理:结案close,退回return,部门流转transfer,创建项目created + */ + private String operation; + + /** + * 处理名 + */ + private String operationName; + + /** + * 公开答复 + */ + private String publicReply; + + /** + * 内部备注 + */ + private String internalRemark; + + /** + * 结束时间 + */ + private Date endTime; + + /** + * 耗费天数 + */ + private String costWorkdays; + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectSatisfactionDetailEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectSatisfactionDetailEntity.java new file mode 100644 index 0000000000..6150cd43eb --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectSatisfactionDetailEntity.java @@ -0,0 +1,56 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("project_satisfaction_detail") +public class ProjectSatisfactionDetailEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 项目ID + */ + private String projectId; + + /** + * 评论 - 最多300字 + */ + private String comment; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectSatisfactionStatisticsEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectSatisfactionStatisticsEntity.java new file mode 100644 index 0000000000..51132be956 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectSatisfactionStatisticsEntity.java @@ -0,0 +1,61 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("project_satisfaction_statistics") +public class ProjectSatisfactionStatisticsEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 项目ID + */ + private String projectId; + + /** + * 一般满意数 + */ + private Integer goodCount; + + /** + * 非常满意数 + */ + private Integer perfectCount; + + /** + * 不满意数 + */ + private Integer badCount; + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectStaffEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectStaffEntity.java new file mode 100644 index 0000000000..0ad284d6a0 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectStaffEntity.java @@ -0,0 +1,91 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("project_staff") +public class ProjectStaffEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 项目ID + */ + private String projectId; + + /** + * 项目处理进展ID + */ + private String processId; + + /** + * 客户ID + */ + private String customerId; + + /** + * 机关ID + */ + private String orgId; + + /** + * 部门ID + */ + private String departmentId; + + /** + * 网格ID + */ + private String gridId; + + /** + * 所属机关(11:22:33) + */ + private String orgIdPath; + + /** + * 人员ID + */ + private String staffId; + + /** + * 部门名 + */ + private String departmentName; + + /** + * 是否处理:未处理unhandled,已处理handle + */ + private String isHandle; + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/CustomerProjectParameterExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/CustomerProjectParameterExcel.java new file mode 100644 index 0000000000..92a2448ab5 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/CustomerProjectParameterExcel.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class CustomerProjectParameterExcel { + + @Excel(name = "主键 唯一标识") + private String id; + + @Excel(name = "客户ID") + private String customerId; + + @Excel(name = "参数KEY值") + private String parameterKey; + + @Excel(name = "参数名称") + private String parameterName; + + @Excel(name = "参数VALUE值") + private String parameterValue; + + @Excel(name = "说明") + private String description; + + @Excel(name = "删除标识:0.未删除 1.已删除") + 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-project/gov-project-server/src/main/java/com/epmet/excel/ProjectExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectExcel.java new file mode 100644 index 0000000000..00424b5fc6 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectExcel.java @@ -0,0 +1,77 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectExcel { + + @Excel(name = "唯一标识") + private String id; + + @Excel(name = " 机关ID") + private String agencyId; + + @Excel(name = "来源:议题issue") + private String origin; + + @Excel(name = "来源ID") + private String originId; + + @Excel(name = "项目标题") + private String title; + + @Excel(name = "状态:待处理 pending,结案closed") + private String status; + + @Excel(name = "结案状态:已解决 resolved,未解决 unresolved") + private String closedStatus; + + @Excel(name = "所属机关 11:22:33(本机关以及上级所有机关ID)") + private String orgIdPath; + + @Excel(name = "删除标识:0.未删除 1.已删除") + 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-project/gov-project-server/src/main/java/com/epmet/excel/ProjectProcessExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectProcessExcel.java new file mode 100644 index 0000000000..263745f2bf --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectProcessExcel.java @@ -0,0 +1,83 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectProcessExcel { + + @Excel(name = "唯一标识") + private String id; + + @Excel(name = "项目ID") + private String projectId; + + @Excel(name = "部门名") + private String departmentName; + + @Excel(name = "负负责人ID") + private String staffId; + + @Excel(name = "处理:结案close,退回return,部门流转transfer,创建项目created") + private String operation; + + @Excel(name = "处理名") + private String operationName; + + @Excel(name = "公开答复") + private String publicReply; + + @Excel(name = "内部备注") + private String internalRemark; + + @Excel(name = "结束时间") + private Date endTime; + + @Excel(name = "耗费天数") + private String costWorkdays; + + @Excel(name = "删除标识:0.未删除 1.已删除") + 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-project/gov-project-server/src/main/java/com/epmet/excel/ProjectSatisfactionDetailExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectSatisfactionDetailExcel.java new file mode 100644 index 0000000000..4dc971307c --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectSatisfactionDetailExcel.java @@ -0,0 +1,65 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectSatisfactionDetailExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "项目ID") + private String projectId; + + @Excel(name = "评论 - 最多300字") + private String comment; + + @Excel(name = "满意度 - 不满意:bad、基本满意:good、非常满意:perfect") + private String satisfaction; + + @Excel(name = "删除标识 0未删除、1已删除") + 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-project/gov-project-server/src/main/java/com/epmet/excel/ProjectSatisfactionStatisticsExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectSatisfactionStatisticsExcel.java new file mode 100644 index 0000000000..d79669dd01 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectSatisfactionStatisticsExcel.java @@ -0,0 +1,68 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectSatisfactionStatisticsExcel { + + @Excel(name = "主键ID") + private String id; + + @Excel(name = "项目ID") + private String projectId; + + @Excel(name = "一般满意数") + private Integer goodCount; + + @Excel(name = "非常满意数") + private Integer perfectCount; + + @Excel(name = "不满意数") + private Integer badCount; + + @Excel(name = "删除标识 0未删除、1已删除") + 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-project/gov-project-server/src/main/java/com/epmet/excel/ProjectStaffExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectStaffExcel.java new file mode 100644 index 0000000000..d9e54ca24b --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectStaffExcel.java @@ -0,0 +1,86 @@ +/** + * 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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class ProjectStaffExcel { + + @Excel(name = "唯一标识") + private String id; + + @Excel(name = "项目ID") + private String projectId; + + @Excel(name = "项目处理进展ID") + private String processId; + + @Excel(name = "客户ID") + private String customerId; + + @Excel(name = "机关ID") + private String orgId; + + @Excel(name = "部门ID") + private String departmentId; + + @Excel(name = "网格ID") + private String gridId; + + @Excel(name = "所属机关(11:22:33)") + private String orgIdPath; + + @Excel(name = "人员ID") + private String staffId; + + @Excel(name = "部门名") + private String departmentName; + + @Excel(name = "是否处理:未处理unhandle,已处理handle") + private String isHandle; + + @Excel(name = "删除标识:0.未删除 1.已删除") + 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-project/gov-project-server/src/main/java/com/epmet/feign/CommonFeignClient.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/CommonFeignClient.java new file mode 100644 index 0000000000..10ed3733c3 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/CommonFeignClient.java @@ -0,0 +1,23 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.WorkDayFormDTO; +import com.epmet.dto.result.WorkDayResultDTO; +import com.epmet.feign.fallback.CommonFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/12 15:48 + */ +@FeignClient(name = ServiceConstant.EPMET_COMMON_SERVICE, fallback = CommonFeignClientFallBack.class) +public interface CommonFeignClient { + @PostMapping("commonservice/workday/detentiondays") + Result> detentionDays(@RequestBody List formDTO); +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java new file mode 100644 index 0000000000..bf4458e68b --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java @@ -0,0 +1,39 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.StaffsInAgencyFromDTO; +import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.StaffInfoResultDTO; +import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.feign.fallback.EpmetUserFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @Description 调用epmet-user服务 + * @Author sun + */ +@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class) +public interface EpmetUserFeignClient { + + /** + * @param userResiInfoListFormDTO + * @return com.epmet.commons.tools.utils.Result> + * @Author sun + * @Description 根据userId集合查询用户信息 + **/ + @PostMapping("/epmetuser/userresiinfo/getuserresiinfolist") + Result> getUserResiInfoList(@RequestBody UserResiInfoListFormDTO userResiInfoListFormDTO); + + /** + * 工作人员列表 + * @param fromDTO + * @return + */ + @PostMapping("/epmetuser/customerstaff/stafflist") + Result> getStaffList(@RequestBody StaffsInAgencyFromDTO fromDTO); +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java new file mode 100644 index 0000000000..5038fa4206 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java @@ -0,0 +1,49 @@ +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.commons.tools.utils.Result; +import com.epmet.dto.form.AgencyDeptGridFormDTO; +import com.epmet.dto.result.AgencyDeptGridResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.feign.fallback.GovOrgFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; + + +/** + * @Description 调用gov-org-server + * @Author sun + */ +@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class) +public interface GovOrgFeignClient { + + /** + * 根据Id查询agency + * @param agencyId + * @return + */ + @PostMapping("/gov/org/agency/agencybyid/{agencyId}") + Result getAgencyById(@PathVariable("agencyId") String agencyId); + /** + * @param agencyId + * @return + * @Author sun + * @Description 查询组织下人员,组织下部门人员,组织下网格人员列表信息 + **/ + @PostMapping(value = "/gov/org/customeragency/departmentstafflist/{agencyId}") + Result departmentStaffList(@PathVariable("agencyId") String agencyId); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 根据组织Id集合、部门Id集合、网格Id集合查询各自对应详细信息 + **/ + @PostMapping(value = "/gov/org/customeragency/getagencydeptgridlist") + Result getAgencyDeptGridList(AgencyDeptGridFormDTO formDTO); + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/CommonFeignClientFallBack.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/CommonFeignClientFallBack.java new file mode 100644 index 0000000000..0d7aa93769 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/CommonFeignClientFallBack.java @@ -0,0 +1,24 @@ +package com.epmet.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.dto.form.WorkDayFormDTO; +import com.epmet.dto.result.WorkDayResultDTO; +import com.epmet.feign.CommonFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/12 15:51 + */ +@Component +public class CommonFeignClientFallBack implements CommonFeignClient { + @Override + public Result> detentionDays(List formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "detentionDays", formDTO); + } +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java new file mode 100644 index 0000000000..94a52d75f0 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java @@ -0,0 +1,31 @@ +package com.epmet.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.dto.form.StaffsInAgencyFromDTO; +import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.StaffInfoResultDTO; +import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.feign.EpmetUserFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description 调用epmet-user服务 + * @Author sun + */ +@Component +public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { + + @Override + public Result> getUserResiInfoList(UserResiInfoListFormDTO userResiInfoListFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getUserResiInfoList", userResiInfoListFormDTO); + } + + @Override + public Result> getStaffList(StaffsInAgencyFromDTO fromDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getStaffList", fromDTO); + } +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java new file mode 100644 index 0000000000..3588d47287 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java @@ -0,0 +1,36 @@ +package com.epmet.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.dto.CustomerAgencyDTO; +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.form.AgencyDeptGridFormDTO; +import com.epmet.dto.result.AgencyDeptGridResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.feign.GovOrgFeignClient; +import org.springframework.stereotype.Component; + +/** + * @Description 调用gov-org-server + * @Author sun + */ +@Component +public class GovOrgFeignClientFallBack implements GovOrgFeignClient { + + @Override + public Result getAgencyById(String agencyId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getAgencyById", agencyId); + } + @Override + public Result departmentStaffList(String agencyId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "departmentStaffList", agencyId); + } + + @Override + public Result getAgencyDeptGridList(AgencyDeptGridFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getAgencyDeptGridList", formDTO); + } +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/CustomerProjectParameterRedis.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/CustomerProjectParameterRedis.java new file mode 100644 index 0000000000..5d59071907 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/CustomerProjectParameterRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class CustomerProjectParameterRedis { + @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-project/gov-project-server/src/main/java/com/epmet/redis/ProjectProcessRedis.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectProcessRedis.java new file mode 100644 index 0000000000..e6016a4442 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectProcessRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class ProjectProcessRedis { + @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-project/gov-project-server/src/main/java/com/epmet/redis/ProjectRedis.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectRedis.java new file mode 100644 index 0000000000..e285bd2572 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class ProjectRedis { + @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-project/gov-project-server/src/main/java/com/epmet/redis/ProjectSatisfactionDetailRedis.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectSatisfactionDetailRedis.java new file mode 100644 index 0000000000..dbcbe2af12 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectSatisfactionDetailRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class ProjectSatisfactionDetailRedis { + @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-project/gov-project-server/src/main/java/com/epmet/redis/ProjectSatisfactionStatisticsRedis.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectSatisfactionStatisticsRedis.java new file mode 100644 index 0000000000..845edbbe10 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectSatisfactionStatisticsRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class ProjectSatisfactionStatisticsRedis { + @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-project/gov-project-server/src/main/java/com/epmet/redis/ProjectStaffRedis.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectStaffRedis.java new file mode 100644 index 0000000000..6bbd715d4f --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/redis/ProjectStaffRedis.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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Component +public class ProjectStaffRedis { + @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-project/gov-project-server/src/main/java/com/epmet/service/.gitkeep b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java new file mode 100644 index 0000000000..87664dc583 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.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.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.CustomerProjectParameterDTO; +import com.epmet.entity.CustomerProjectParameterEntity; + +import java.util.List; +import java.util.Map; + +/** + * 项目客户参数订制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface CustomerProjectParameterService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return CustomerProjectParameterDTO + * @author generator + * @date 2020-05-11 + */ + CustomerProjectParameterDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(CustomerProjectParameterDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(CustomerProjectParameterDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + *根据key查找value + * @author zhaoqifeng + * @date 2020/5/12 10:43 + * @param dto 参数 + * @return CustomerProjectParameterDTO + */ + String getParameterValueByKey(CustomerProjectParameterDTO dto); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectProcessService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectProcessService.java new file mode 100644 index 0000000000..aa523854d3 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectProcessService.java @@ -0,0 +1,125 @@ +/** + * 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.ProjectProcessDTO; +import com.epmet.dto.form.ProcessListFormDTO; +import com.epmet.dto.form.ReturnListFromDTO; +import com.epmet.dto.form.TransferFormDTO; +import com.epmet.dto.result.ProcesslistResultDTO; +import com.epmet.dto.result.ReturnListResultDTO; +import com.epmet.entity.ProjectProcessEntity; + +import java.util.List; +import java.util.Map; + +/** + * 项目处理进展表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface ProjectProcessService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return ProjectProcessDTO + * @author generator + * @date 2020-05-11 + */ + ProjectProcessDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(ProjectProcessDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(ProjectProcessDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-项目处理进展列表 + **/ + List progressList(ProcessListFormDTO formDTO); + + /** + * 可退回节点列表 + * @author zhaoqifeng + * @date 2020/5/13 13:42 + * @param fromDTO + * @return java.util.List + */ + List getReturnableList(ReturnListFromDTO fromDTO); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-转其他部门 + **/ + void transfer(TransferFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSatisfactionDetailService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSatisfactionDetailService.java new file mode 100644 index 0000000000..245b443e28 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSatisfactionDetailService.java @@ -0,0 +1,132 @@ +/** + * 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.ProjectSatisfactionDetailDTO; +import com.epmet.dto.form.EvaluationListFormDTO; +import com.epmet.dto.form.ProjectEvaluationListFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.form.ProjectEvaluateFormDTO; +import com.epmet.dto.form.ProjectInitEvaluationFormDTO; +import com.epmet.dto.result.ProjectEvaluationListResultDTO; +import com.epmet.dto.result.ProjectInitEvaluationResultDTO; +import com.epmet.entity.ProjectSatisfactionDetailEntity; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; +import java.util.Map; + +/** + * 项目满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface ProjectSatisfactionDetailService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return ProjectSatisfactionDetailDTO + * @author generator + * @date 2020-05-11 + */ + ProjectSatisfactionDetailDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(ProjectSatisfactionDetailDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(ProjectSatisfactionDetailDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-项目满意度评价列表 + **/ + List evaluationList(EvaluationListFormDTO formDTO); + + /** + * @Description 满意度评价初始化——已转项目 + * @param projectInitEvaluation + * @author zxc + */ + ProjectInitEvaluationResultDTO projectInitEvaluation(ProjectInitEvaluationFormDTO projectInitEvaluation); + + /** + * @Description 提交满意度评价——已转项目 + * @param projectEvaluate + * @author zxc + */ + void projectEvaluate(ProjectEvaluateFormDTO projectEvaluate); + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + List projectEvaluationList(@RequestBody ProjectEvaluationListFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSatisfactionStatisticsService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSatisfactionStatisticsService.java new file mode 100644 index 0000000000..770a98d174 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSatisfactionStatisticsService.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.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.ProjectSatisfactionStatisticsDTO; +import com.epmet.entity.ProjectSatisfactionStatisticsEntity; + +import java.util.List; +import java.util.Map; + +/** + * 项目满意度调查统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface ProjectSatisfactionStatisticsService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return ProjectSatisfactionStatisticsDTO + * @author generator + * @date 2020-05-11 + */ + ProjectSatisfactionStatisticsDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(ProjectSatisfactionStatisticsDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(ProjectSatisfactionStatisticsDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java new file mode 100644 index 0000000000..cb39927bf0 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java @@ -0,0 +1,162 @@ +/** + * 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.commons.tools.security.dto.TokenDto; +import com.epmet.dto.ProjectDTO; +import com.epmet.dto.form.ProjectClosedFromDTO; +import com.epmet.dto.form.ProjectDetailFromDTO; +import com.epmet.dto.form.ProjectListFromDTO; +import com.epmet.dto.form.ReturnFromDTO; +import com.epmet.dto.result.CreatedListResultDTO; +import com.epmet.dto.result.InvolvedListResultDTO; +import com.epmet.dto.result.PendProjectListResultDTO; +import com.epmet.dto.result.ProjectDetailResultDTO; +import com.epmet.entity.ProjectEntity; + +import java.util.List; +import java.util.Map; + +/** + * 项目表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface ProjectService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return ProjectDTO + * @author generator + * @date 2020-05-11 + */ + ProjectDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(ProjectDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(ProjectDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + * 待处理项目列表 + * + * @param fromDTO 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 10:23 + */ + List getPendProjectList(ProjectListFromDTO fromDTO); + + /** + * 我发起的项目列表 + * + * @param fromDTO 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 13:58 + */ + List getCreatedList(ProjectListFromDTO fromDTO); + + /** + * 我参与的项目列表 + * + * @param fromDTO 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 14:57 + */ + List getInvolvedList(ProjectListFromDTO fromDTO); + + /** + * 项目详情 + * + * @param fromDTO 参数 + * @return com.epmet.dto.result.ProjectDetailResultDTO + * @author zhaoqifeng + * @date 2020/5/12 15:13 + */ + ProjectDetailResultDTO getProjectDetail(ProjectDetailFromDTO fromDTO); + + /** + * 项目结案 + * @author zhaoqifeng + * @date 2020/5/13 9:54 + * @param fromDTO 参数 + * @return void + */ + void closed(ProjectClosedFromDTO fromDTO); + + /** + * 项目退回 + * @author zhaoqifeng + * @date 2020/5/13 14:35 + * @param fromDTO 参数 + * @return void + */ + void projectReturn(ReturnFromDTO fromDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectStaffService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectStaffService.java new file mode 100644 index 0000000000..ba73f3a7de --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectStaffService.java @@ -0,0 +1,126 @@ +/** + * 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.ProjectStaffDTO; +import com.epmet.dto.form.DepartmentStaffListFormDTO; +import com.epmet.dto.result.DepartmentResultDTO; +import com.epmet.entity.ProjectProcessEntity; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.entity.ProjectStaffEntity; + +import java.util.List; +import java.util.Map; + +/** + * 项目人员关联表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +public interface ProjectStaffService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-05-11 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-05-11 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return ProjectStaffDTO + * @author generator + * @date 2020-05-11 + */ + ProjectStaffDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void save(ProjectStaffDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-05-11 + */ + void update(ProjectStaffDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-05-11 + */ + void delete(String[] ids); + + /** + * 未处理部门列表 + * + * @param dto 参数 + * @return java.util.List + * @author zhaoqifeng + * @date 2020/5/12 16:40 + */ + List getDepartmentNameList(ProjectStaffDTO dto); + + /** + * 获取节点处理人信息 + * @author zhaoqifeng + * @date 2020/5/13 15:06 + * @param projectProcessId 项目处理进展ID + * @return com.epmet.dto.ProjectStaffDTO + */ + ProjectStaffDTO getProjectStaffInfo(String projectProcessId); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-部门人员选择 + **/ + DepartmentStaffListResultDTO departmentStaffList(DepartmentStaffListFormDTO formDTO); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectTraceService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectTraceService.java new file mode 100644 index 0000000000..f91afc3c3a --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectTraceService.java @@ -0,0 +1,91 @@ +package com.epmet.service; + +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription 项目追踪 + * @date 2020/5/11 16:34 + */ +public interface ProjectTraceService { + /** + * 待处理项目列表 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:14 + */ + List getPendProjectList(TokenDto tokenDto, ProjectListFromDTO fromDTO); + + /** + * 我发起的项目列表 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:19 + */ + List getCreatedList(TokenDto tokenDto, ProjectListFromDTO fromDTO); + + /** + * 我参与的项目列表 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:21 + */ + List getInvolvedList(TokenDto tokenDto, ProjectListFromDTO fromDTO); + + /** + * 项目详情 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/5/11 16:25 + */ + ProjectDetailResultDTO getProjectDetail(TokenDto tokenDto, ProjectDetailFromDTO fromDTO); + + /** + * 项目结案 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/5/11 16:27 + */ + void closed(TokenDto tokenDto, ProjectClosedFromDTO fromDTO); + + /** + * 可退回节点列表 + * + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result> + * @author zhaoqifeng + * @date 2020/5/11 16:30 + */ + List getReturnableList(ReturnListFromDTO fromDTO); + + /** + * 项目退回 + * + * @param tokenDto token + * @param fromDTO 入参 + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/5/11 16:32 + */ + void projectReturn(TokenDto tokenDto, ReturnFromDTO fromDTO); +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/CustomerProjectParameterServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/CustomerProjectParameterServiceImpl.java new file mode 100644 index 0000000000..3df0971eb3 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/CustomerProjectParameterServiceImpl.java @@ -0,0 +1,110 @@ +/** + * 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.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.dao.CustomerProjectParameterDao; +import com.epmet.dto.CustomerProjectParameterDTO; +import com.epmet.entity.CustomerProjectParameterEntity; +import com.epmet.redis.CustomerProjectParameterRedis; +import com.epmet.service.CustomerProjectParameterService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class CustomerProjectParameterServiceImpl extends BaseServiceImpl implements CustomerProjectParameterService { + + @Autowired + private CustomerProjectParameterRedis customerProjectParameterRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, CustomerProjectParameterDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, CustomerProjectParameterDTO.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 CustomerProjectParameterDTO get(String id) { + CustomerProjectParameterEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, CustomerProjectParameterDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(CustomerProjectParameterDTO dto) { + CustomerProjectParameterEntity entity = ConvertUtils.sourceToTarget(dto, CustomerProjectParameterEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(CustomerProjectParameterDTO dto) { + CustomerProjectParameterEntity entity = ConvertUtils.sourceToTarget(dto, CustomerProjectParameterEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + public String getParameterValueByKey(CustomerProjectParameterDTO dto) { + CustomerProjectParameterEntity entity = ConvertUtils.sourceToTarget(dto, CustomerProjectParameterEntity.class); + return baseDao.selectParameterValueByKey(entity); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java new file mode 100644 index 0000000000..38a3f8c9dc --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java @@ -0,0 +1,248 @@ +/** + * 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.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.constant.NumConstant; +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.constant.ProjectConstant; +import com.epmet.dao.ProjectProcessDao; +import com.epmet.dao.ProjectStaffDao; +import com.epmet.dto.CustomerAgencyDTO; +import com.epmet.dto.ProjectProcessDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.AgencyDeptGridResultDTO; +import com.epmet.dto.result.ProcesslistResultDTO; +import com.epmet.dto.result.ReturnListResultDTO; +import com.epmet.dto.result.StaffInfoResultDTO; +import com.epmet.entity.ProjectEntity; +import com.epmet.entity.ProjectProcessEntity; +import com.epmet.entity.ProjectStaffEntity; +import com.epmet.feign.EpmetUserFeignClient; +import com.epmet.feign.GovOrgFeignClient; +import com.epmet.redis.ProjectProcessRedis; +import com.epmet.service.ProjectProcessService; +import com.epmet.service.ProjectService; +import com.epmet.service.ProjectStaffService; +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.*; +import java.util.concurrent.atomic.AtomicReference; +import java.util.stream.Collectors; + +/** + * 项目处理进展表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class ProjectProcessServiceImpl extends BaseServiceImpl implements ProjectProcessService { + + @Autowired + private ProjectProcessRedis projectProcessRedis; + @Autowired + private ProjectStaffDao projectStaffDao; + @Autowired + private GovOrgFeignClient govOrgFeignClient; + @Autowired + private EpmetUserFeignClient epmetUserFeignClient; + @Autowired + private ProjectService projectService; + @Autowired + private ProjectProcessDao projectProcessDao; + @Autowired + private ProjectStaffService projectStaffService; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, ProjectProcessDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, ProjectProcessDTO.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 ProjectProcessDTO get(String id) { + ProjectProcessEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, ProjectProcessDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(ProjectProcessDTO dto) { + ProjectProcessEntity entity = ConvertUtils.sourceToTarget(dto, ProjectProcessEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(ProjectProcessDTO dto) { + ProjectProcessEntity entity = ConvertUtils.sourceToTarget(dto, ProjectProcessEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-项目处理进展列表 + **/ + @Override + public List progressList(ProcessListFormDTO formDTO) { + //根据项目Id查询所有处理进展数据,按时间倒序 + return baseDao.getProcessListByProjectId(formDTO.getProjectId()); + } + + @Override + public List getReturnableList(ReturnListFromDTO fromDTO) { + List list = baseDao.selectReturnableList(fromDTO.getProjectId()); + //遍历获取所有的userId + List userIds = list.stream().map(ProjectProcessEntity::getStaffId).collect(Collectors.toList()); + //获取项目信息 + ProjectEntity projectEntity = projectService.selectById(fromDTO.getProjectId()); + //获取组织信息 + Result customerAgency = govOrgFeignClient.getAgencyById(projectEntity.getAgencyId()); + //获取人员信息 + StaffsInAgencyFromDTO staffsInAgencyFromDTO = new StaffsInAgencyFromDTO(); + staffsInAgencyFromDTO.setCustomerId(customerAgency.getData().getCustomerId()); + staffsInAgencyFromDTO.setStaffList(userIds); + List staffList = epmetUserFeignClient.getStaffList(staffsInAgencyFromDTO).getData(); + //合成返回值 + List resultList = + list.stream().flatMap(process -> staffList.stream().filter(staff -> process.getStaffId().equals(staff.getStaffId())).map(userInfo ->{ + ReturnListResultDTO resultDTO = new ReturnListResultDTO(); + resultDTO.setProjectProcessId(process.getId()); + resultDTO.setProcessor(process.getDepartmentName().concat("-").concat(userInfo.getStaffName())); + return resultDTO; + })).collect(Collectors.toList()); + return resultList; + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-转其他部门 + **/ + @Override + @Transactional(rollbackFor = Exception.class) + public void transfer(TransferFormDTO formDTO) { + //1:更新项目人员关联表数据状态为已处理 + ProjectStaffEntity staffEntity = projectStaffDao.selectById(formDTO.getProjectStaffId()); + if (null == staffEntity) { + throw new RenException(ProjectConstant.SELECT_PROJECTSTAFF_EXCEPTION); + } + staffEntity.setId(formDTO.getProjectStaffId()); + staffEntity.setIsHandle(ProjectConstant.HANDLE); + if (projectStaffDao.updateById(staffEntity) < NumConstant.ONE) { + throw new RenException(ProjectConstant.UPDATE_PROJECTSTAFF_EXCEPTION); + } + //2:项目处理进展列表新增数据 + ProjectProcessEntity processEntity = ConvertUtils.sourceToTarget(formDTO, ProjectProcessEntity.class); + processEntity.setDepartmentName(staffEntity.getDepartmentName()); + processEntity.setStaffId(staffEntity.getStaffId()); + processEntity.setOperation(ProjectConstant.OPERATION_TRANSFER); + processEntity.setOperationName(ProjectConstant.OPERATION_TRANSFER_NAME); + projectProcessDao.insert(processEntity); + //3:项目人员关联表新增部门流转数据 + List staffList = formDTO.getStaffList(); + if (null == staffList || staffList.size() < NumConstant.ONE) { + throw new RenException(ProjectConstant.DATe_EXCEPTION); + } + //3.1:调用gov-org服务,获取所有勾选人员对应的组织信息、部门信息、网格信息用于对处理部门和ORG_ID_PATH字段的赋值 + List agencyIdList = staffList.stream().map(TickStaffFormDTO::getAgencyId).collect(Collectors.toList()); + agencyIdList = new ArrayList(new LinkedHashSet<>(agencyIdList)); + List deptIdList = staffList.stream().map(TickStaffFormDTO::getDepartmentId).collect(Collectors.toList()); + deptIdList = new ArrayList(new LinkedHashSet<>(deptIdList)); + List gridIdList = staffList.stream().map(TickStaffFormDTO::getGridId).collect(Collectors.toList()); + gridIdList = new ArrayList(new LinkedHashSet<>(gridIdList)); + AgencyDeptGridFormDTO agencyDeptGridFormDTO = new AgencyDeptGridFormDTO(); + agencyDeptGridFormDTO.setAgencyIdList(agencyIdList); + agencyDeptGridFormDTO.setDeptIdList(deptIdList); + agencyDeptGridFormDTO.setGridIdList(gridIdList); + Result resultDTO = govOrgFeignClient.getAgencyDeptGridList(agencyDeptGridFormDTO); + AgencyDeptGridResultDTO agencyDeptGrid = resultDTO.getData(); + //3.2:批量新增项目人员关联表数据 + List entityList = new ArrayList<>(); + staffList.forEach(ts->{ + ProjectStaffEntity entity = ConvertUtils.sourceToTarget(ts, ProjectStaffEntity.class); + entity.setOrgId(ts.getAgencyId()); + entity.setProjectId(formDTO.getProjectId()); + entity.setProcessId(processEntity.getId()); + entity.setIsHandle(ProjectConstant.UNHANDLED); + agencyDeptGrid.getAgencyList().forEach(agency->{ + if (ts.getAgencyId().equals(agency.getId())) { + entity.setCustomerId(agency.getCustomerId()); + entity.setOrgIdPath(agency.getPids()+":"+agency.getId()); + entity.setDepartmentName(agency.getOrganizationName()); + } + }); + if (StringUtils.isNotBlank(ts.getDepartmentId())) { + agencyDeptGrid.getDeptList().forEach(dept -> { + if (ts.getDepartmentId().equals(dept.getId())) { + entity.setDepartmentName(entity.getDepartmentName() + "-" + dept.getDepartmentName()); + } + }); + } + if (StringUtils.isNotBlank(ts.getGridId())) { + agencyDeptGrid.getGridList().forEach(grid -> { + if (ts.getGridId().equals(grid.getId())) { + entity.setDepartmentName(entity.getDepartmentName() + "-" + grid.getGridName()); + } + }); + } + entityList.add(entity); + }); + projectStaffService.insertBatch(entityList); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSatisfactionDetailServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSatisfactionDetailServiceImpl.java new file mode 100644 index 0000000000..310d1f6bc0 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSatisfactionDetailServiceImpl.java @@ -0,0 +1,205 @@ +/** + * 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.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.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.constant.ProjectConstant; +import com.epmet.dao.ProjectSatisfactionDetailDao; +import com.epmet.dto.ProjectSatisfactionDetailDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.entity.ProjectSatisfactionDetailEntity; +import com.epmet.feign.EpmetUserFeignClient; +import com.epmet.redis.ProjectSatisfactionDetailRedis; +import com.epmet.service.ProjectSatisfactionDetailService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * 项目满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class ProjectSatisfactionDetailServiceImpl extends BaseServiceImpl implements ProjectSatisfactionDetailService { + + @Autowired + private ProjectSatisfactionDetailRedis projectSatisfactionDetailRedis; + @Autowired + private EpmetUserFeignClient epmetUserFeignClient; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, ProjectSatisfactionDetailDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, ProjectSatisfactionDetailDTO.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 ProjectSatisfactionDetailDTO get(String id) { + ProjectSatisfactionDetailEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, ProjectSatisfactionDetailDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(ProjectSatisfactionDetailDTO dto) { + ProjectSatisfactionDetailEntity entity = ConvertUtils.sourceToTarget(dto, ProjectSatisfactionDetailEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(ProjectSatisfactionDetailDTO dto) { + ProjectSatisfactionDetailEntity entity = ConvertUtils.sourceToTarget(dto, ProjectSatisfactionDetailEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 项目跟踪-项目满意度评价列表 + **/ + @Override + public List evaluationList(EvaluationListFormDTO formDTO) { + //1:根据项目Id查询项目评价列表,按时间倒序 + List evaluationList = baseDao.getEvaluationListByProjectId(formDTO.getProjectId()); + if (null == evaluationList || evaluationList.size() < NumConstant.ONE) { + return new ArrayList<>(); + } + //2:调用epmet-user服务 获取用户头像 昵称 + //2.1:遍历获取所有的userId + List userIds = evaluationList.stream().map(EvaluationListResultDTO::getUserId).collect(Collectors.toList()); + //2.2:获取所有用户的头像 昵称 + UserResiInfoListFormDTO userResiInfoListFormDTO = new UserResiInfoListFormDTO(); + userResiInfoListFormDTO.setUserIdList(userIds); + List userResiInfoList = epmetUserFeignClient.getUserResiInfoList(userResiInfoListFormDTO).getData(); + if (null == userResiInfoList || userResiInfoList.size() < NumConstant.ONE) { + throw new RenException(ProjectConstant.SELECT_USERINFO_EXCEPTION); + } + //3:将每个用户的头像 昵称放到对应实体中返回给前台 + List resultList = evaluationList.stream().flatMap(evaluation -> userResiInfoList.stream().filter(user -> + evaluation.getUserId().equals(user.getUserId())).map(userInfo -> { + EvaluationListResultDTO resultDTO = ConvertUtils.sourceToTarget(evaluation, EvaluationListResultDTO.class); + resultDTO.setUserNickName(null == userInfo.getShowName() ? "" : userInfo.getShowName()); + resultDTO.setUserHeadPhoto(null == userInfo.getHeadPhoto() ? "" : userInfo.getHeadPhoto()); + return resultDTO; + })).collect(Collectors.toList()); + return resultList; + } + + /** + * @Description 满意度评价初始化——已转项目 + * @param projectInitEvaluation + * @author zxc + */ + @Override + public ProjectInitEvaluationResultDTO projectInitEvaluation(ProjectInitEvaluationFormDTO projectInitEvaluation) { + ProjectInitEvaluationResultDTO resultDTO = new ProjectInitEvaluationResultDTO(); + ProjectEvaluateInfoResultDTO checkProjectSatisfaction = baseDao.checkProjectSatisfaction(projectInitEvaluation); + if (checkProjectSatisfaction!=null){ + resultDTO.setStatus(true);//已评价 + resultDTO.setEvaluateInfo(checkProjectSatisfaction); + }else { + resultDTO.setStatus(false); + ProjectEvaluateInfoResultDTO evaluateInfo = new ProjectEvaluateInfoResultDTO(); + evaluateInfo.setEvaluateContent(""); + evaluateInfo.setSatisfaction(""); + resultDTO.setEvaluateInfo(evaluateInfo); + } + return resultDTO; + } + + /** + * @Description 提交满意度评价——已转项目 + * @param formDTO + * @author zxc + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void projectEvaluate(ProjectEvaluateFormDTO formDTO) { + ProjectSatisfactionDetailEntity entity = new ProjectSatisfactionDetailEntity(); + BeanUtils.copyProperties(formDTO,entity); + //校验是否评价 + ProjectInitEvaluationFormDTO projectInitEvaluation = new ProjectInitEvaluationFormDTO(); + BeanUtils.copyProperties(formDTO,projectInitEvaluation); + ProjectEvaluateInfoResultDTO resultDTO = baseDao.checkProjectSatisfaction(projectInitEvaluation); + if (resultDTO!=null){ + throw new RenException(EpmetErrorCode.ALREADY_EVALUATE.getCode()); + } + baseDao.insert(entity); + } + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + @Override + public List projectEvaluationList(ProjectEvaluationListFormDTO formDTO) { + int pageIndex = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize(); + formDTO.setPageNo(pageIndex); + return baseDao.projectEvaluationList(formDTO); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSatisfactionStatisticsServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSatisfactionStatisticsServiceImpl.java new file mode 100644 index 0000000000..7769eb2ef4 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSatisfactionStatisticsServiceImpl.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.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.dao.ProjectSatisfactionStatisticsDao; +import com.epmet.dto.ProjectSatisfactionStatisticsDTO; +import com.epmet.entity.ProjectSatisfactionStatisticsEntity; +import com.epmet.redis.ProjectSatisfactionStatisticsRedis; +import com.epmet.service.ProjectSatisfactionStatisticsService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class ProjectSatisfactionStatisticsServiceImpl extends BaseServiceImpl implements ProjectSatisfactionStatisticsService { + + @Autowired + private ProjectSatisfactionStatisticsRedis projectSatisfactionStatisticsRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, ProjectSatisfactionStatisticsDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, ProjectSatisfactionStatisticsDTO.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 ProjectSatisfactionStatisticsDTO get(String id) { + ProjectSatisfactionStatisticsEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, ProjectSatisfactionStatisticsDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(ProjectSatisfactionStatisticsDTO dto) { + ProjectSatisfactionStatisticsEntity entity = ConvertUtils.sourceToTarget(dto, ProjectSatisfactionStatisticsEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(ProjectSatisfactionStatisticsDTO dto) { + ProjectSatisfactionStatisticsEntity entity = ConvertUtils.sourceToTarget(dto, ProjectSatisfactionStatisticsEntity.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/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java new file mode 100644 index 0000000000..a9aa55a296 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java @@ -0,0 +1,368 @@ +/** + * 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.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.NumConstant; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.constant.ParameterKeyConstant; +import com.epmet.constant.ProjectConstant; +import com.epmet.dao.ProjectDao; +import com.epmet.dto.CustomerProjectParameterDTO; +import com.epmet.dto.ProjectDTO; +import com.epmet.dto.ProjectStaffDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.entity.ProjectEntity; +import com.epmet.entity.ProjectProcessEntity; +import com.epmet.entity.ProjectStaffEntity; +import com.epmet.feign.CommonFeignClient; +import com.epmet.redis.ProjectRedis; +import com.epmet.service.CustomerProjectParameterService; +import com.epmet.service.ProjectProcessService; +import com.epmet.service.ProjectService; +import com.epmet.service.ProjectStaffService; +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.text.SimpleDateFormat; +import java.util.*; + +/** + * 项目表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class ProjectServiceImpl extends BaseServiceImpl implements ProjectService { + + @Autowired + private ProjectRedis projectRedis; + @Autowired + private CustomerProjectParameterService parameterService; + @Autowired + private CommonFeignClient commonFeignClient; + @Autowired + private ProjectStaffService projectStaffService; + @Autowired + private ProjectProcessService projectProcessService; + + private final static String ONE_DAY = "<1"; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, ProjectDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, ProjectDTO.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 ProjectDTO get(String id) { + ProjectEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, ProjectDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(ProjectDTO dto) { + ProjectEntity entity = ConvertUtils.sourceToTarget(dto, ProjectEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(ProjectDTO dto) { + ProjectEntity entity = ConvertUtils.sourceToTarget(dto, ProjectEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + public List getPendProjectList(ProjectListFromDTO fromDTO) { + List list = new ArrayList<>(); + + //查询条件 + int pageIndex = (fromDTO.getPageNo() - NumConstant.ONE) * fromDTO.getPageSize(); + fromDTO.setPageNo(pageIndex); + + List projectList = baseDao.selectPendList(fromDTO); + //获取客户定制的可滞留天数 + Integer finalDays = getDays(fromDTO); + projectList.forEach(p -> { + PendProjectListResultDTO pend = new PendProjectListResultDTO(); + pend.setProjectId(p.getId()); + pend.setProjectTitle(p.getTitle()); + pend.setProjectTime(p.getCreatedTime().getTime()); + String detentionDays = getDetentionDays(p); + if (!ONE_DAY.equals(detentionDays) && Integer.parseInt(detentionDays) > finalDays) { + pend.setWarningFlag(true); + pend.setDetentionDays(detentionDays); + } else { + pend.setDetentionDays(detentionDays); + pend.setWarningFlag(false); + } + list.add(pend); + }); + + return list; + } + + @Override + public List getCreatedList(ProjectListFromDTO fromDTO) { + List list = new ArrayList<>(); + + //查询条件 + int pageIndex = (fromDTO.getPageNo() - NumConstant.ONE) * fromDTO.getPageSize(); + fromDTO.setPageNo(pageIndex); + + List projectList = baseDao.selectCreatedList(fromDTO); + //获取客户定制的可滞留天数 + Integer finalDays = getDays(fromDTO); + projectList.forEach(p -> { + CreatedListResultDTO created = new CreatedListResultDTO(); + created.setProjectId(p.getId()); + created.setProjectTitle(p.getTitle()); + created.setProjectStatus(p.getStatus()); + created.setPublicReply(p.getPublicReply()); + created.setProjectTime(p.getCreatedTime().getTime()); + String detentionDays = getDetentionDays(p); + if (!ONE_DAY.equals(detentionDays) && Integer.parseInt(detentionDays) > finalDays) { + created.setWarningFlag(true); + created.setDetentionDays(detentionDays); + } else { + created.setDetentionDays(detentionDays); + created.setWarningFlag(false); + } + //获取当前处理部门 + List departmentNameList = new ArrayList<>(); + if (ProjectConstant.CLOSED.equals(p.getStatus())) { + created.setDepartmentNameList(departmentNameList); + } else { + departmentNameList = baseDao.selectDepartmentNameList(p); + created.setDepartmentNameList(departmentNameList); + } + list.add(created); + }); + return list; + } + + @Override + public List getInvolvedList(ProjectListFromDTO fromDTO) { + List list = new ArrayList<>(); + + //查询条件 + int pageIndex = (fromDTO.getPageNo() - NumConstant.ONE) * fromDTO.getPageSize(); + fromDTO.setPageNo(pageIndex); + + List projectList = baseDao.selectCreatedList(fromDTO); + //获取客户定制的可滞留天数 + Integer finalDays = getDays(fromDTO); + projectList.forEach(p -> { + InvolvedListResultDTO involved = new InvolvedListResultDTO(); + involved.setProjectId(p.getId()); + involved.setProjectTitle(p.getTitle()); + involved.setProjectStatus(p.getStatus()); + involved.setPublicReply(p.getPublicReply()); + involved.setProjectTime(p.getCreatedTime().getTime()); + String detentionDays = getDetentionDays(p); + if (!ONE_DAY.equals(detentionDays) && Integer.parseInt(detentionDays) > finalDays) { + involved.setWarningFlag(true); + involved.setDetentionDays(detentionDays); + } else { + involved.setDetentionDays(detentionDays); + involved.setWarningFlag(false); + } + //获取当前处理部门 + List departmentNameList = new ArrayList<>(); + if (ProjectConstant.CLOSED.equals(p.getStatus())) { + involved.setDepartmentNameList(departmentNameList); + } else { + departmentNameList = baseDao.selectDepartmentNameList(p); + involved.setDepartmentNameList(departmentNameList); + } + list.add(involved); + }); + return list; + } + + @Override + public ProjectDetailResultDTO getProjectDetail(ProjectDetailFromDTO fromDTO) { + ProjectDetailResultDTO resultDTO = baseDao.selectProjectDetail(fromDTO.getProjectId()); + if (ProjectConstant.CLOSED.equals(resultDTO.getProjectStatus())) { + resultDTO.setProcessable(true); + } else { + //获取我未处理的部门 + ProjectStaffDTO projectStaffDTO = new ProjectStaffDTO(); + projectStaffDTO.setProjectId(fromDTO.getProjectId()); + projectStaffDTO.setStaffId(fromDTO.getUserId()); + List departmentList = projectStaffService.getDepartmentNameList(projectStaffDTO); + if (null != departmentList && departmentList.size() > 0) { + resultDTO.setProcessable(false); + } else { + resultDTO.setProcessable(true); + } + } + + //获取当前跟进部门 + List departmentNameList = new ArrayList<>(); + if (ProjectConstant.CLOSED.equals(resultDTO.getProjectStatus())) { + //项目已结案,跟进部门为空 + resultDTO.setDepartmentNameList(departmentNameList); + } else { + //项目未结案,找出所有跟进部门 + ProjectDTO projectDTO = new ProjectDTO(); + projectDTO.setId(fromDTO.getProjectId()); + departmentNameList = baseDao.selectDepartmentNameList(projectDTO); + resultDTO.setDepartmentNameList(departmentNameList); + } + + return resultDTO; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void closed(ProjectClosedFromDTO fromDTO) { + //更新项目表状态 + ProjectEntity projectEntity = baseDao.selectById(fromDTO.getProjectId()); + projectEntity.setStatus(ProjectConstant.CLOSED); + projectEntity.setClosedStatus(fromDTO.getClosedStatus()); + baseDao.updateById(projectEntity); + + //更新项目关联表 + ProjectStaffEntity projectStaffEntity = new ProjectStaffEntity(); + projectStaffEntity.setId(fromDTO.getProjectStaffId()); + projectStaffEntity.setIsHandle(ProjectConstant.HANDLE); + projectStaffService.updateById(projectStaffEntity); + + //结案记录加入项目进展表 + ProjectProcessEntity projectProcessEntity = new ProjectProcessEntity(); + projectProcessEntity.setProjectId(fromDTO.getProjectId()); + projectProcessEntity.setDepartmentName(fromDTO.getDepartmentName()); + projectProcessEntity.setEndTime(new Date()); + projectProcessEntity.setOperation(ProjectConstant.OPERATION_CLOSE); + projectProcessEntity.setOperationName(ProjectConstant.OPERATION_CLOSE_NAME); + projectProcessEntity.setPublicReply(fromDTO.getPublicReply()); + projectProcessEntity.setInternalRemark(fromDTO.getInternalRemark()); + projectProcessEntity.setStaffId(fromDTO.getUserId()); + projectProcessEntity.setCostWorkdays(getDetentionDays(ConvertUtils.sourceToTarget(projectEntity, ProjectDTO.class))); + projectProcessService.insert(projectProcessEntity); + } + + @Override + public void projectReturn(ReturnFromDTO fromDTO) { + //更新项目关联表 + ProjectStaffEntity projectStaffEntity = new ProjectStaffEntity(); + projectStaffEntity.setId(fromDTO.getProjectStaffId()); + projectStaffEntity.setIsHandle(ProjectConstant.HANDLE); + projectStaffService.updateById(projectStaffEntity); + + //结案记录加入项目进展表 + ProjectProcessEntity projectProcessEntity = new ProjectProcessEntity(); + projectProcessEntity.setProjectId(fromDTO.getProjectId()); + projectProcessEntity.setDepartmentName(fromDTO.getDepartmentName()); + projectProcessEntity.setOperation(ProjectConstant.OPERATION_RETURN); + projectProcessEntity.setOperationName(ProjectConstant.OPERATION_RETURN_NAME); + projectProcessEntity.setPublicReply(fromDTO.getPublicReply()); + projectProcessEntity.setInternalRemark(fromDTO.getInternalRemark()); + projectProcessEntity.setStaffId(fromDTO.getUserId()); + projectProcessService.insert(projectProcessEntity); + + //将人员关系添加到项目关联表 + ProjectStaffDTO projectStaffDTO = projectStaffService.getProjectStaffInfo(fromDTO.getProjectProcessId()); + ProjectStaffEntity projectStaff = ConvertUtils.sourceToTarget(projectStaffDTO, ProjectStaffEntity.class); + projectStaff.setId(null); + projectStaff.setIsHandle(ProjectConstant.UNHANDLED); + projectStaffService.insert(projectStaff); + + //TODO 通知 + } + + /** + * 获取客户定制的可滞留天数 + * + * @param fromDTO 参数 + * @return java.lang.Integer + * @author zhaoqifeng + * @date 2020/5/12 16:20 + */ + private Integer getDays(ProjectListFromDTO fromDTO) { + //获取客户定制的可滞留天数 + CustomerProjectParameterDTO dto = new CustomerProjectParameterDTO(); + dto.setCustomerId(fromDTO.getCustomerId()); + dto.setParameterKey(ParameterKeyConstant.DETENTION_DAYS); + String value = parameterService.getParameterValueByKey(dto); + Integer days = 5; + if (value != null) { + days = Integer.valueOf(value); + } + return days; + } + + /** + * 工作日计算 + * + * @param projectDTO 参数 + * @return java.lang.String + * @author zhaoqifeng + * @date 2020/5/12 16:20 + */ + private String getDetentionDays(ProjectDTO projectDTO) { + SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); + + List list = new ArrayList<>(); + WorkDayFormDTO workDayFormDTO = new WorkDayFormDTO(); + workDayFormDTO.setId(projectDTO.getId()); + workDayFormDTO.setStartDate(format.format(projectDTO.getUpdatedTime())); + workDayFormDTO.setEndDate(format.format(new Date())); + Result> detentionDays = commonFeignClient.detentionDays(list); + return detentionDays.getData().get(0).getDetentionDays(); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectStaffServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectStaffServiceImpl.java new file mode 100644 index 0000000000..03b6c60045 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectStaffServiceImpl.java @@ -0,0 +1,128 @@ +/** + * 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.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.commons.tools.utils.Result; +import com.epmet.dao.ProjectStaffDao; +import com.epmet.dto.ProjectStaffDTO; +import com.epmet.dto.form.DepartmentStaffListFormDTO; +import com.epmet.dto.result.DepartmentResultDTO; +import com.epmet.dto.result.DepartmentStaffListResultDTO; +import com.epmet.entity.ProjectStaffEntity; +import com.epmet.feign.GovOrgFeignClient; +import com.epmet.redis.ProjectStaffRedis; +import com.epmet.service.ProjectStaffService; +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 generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Service +public class ProjectStaffServiceImpl extends BaseServiceImpl implements ProjectStaffService { + + @Autowired + private ProjectStaffRedis projectStaffRedis; + @Autowired + private GovOrgFeignClient govOrgFeignClient; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, ProjectStaffDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, ProjectStaffDTO.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 ProjectStaffDTO get(String id) { + ProjectStaffEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, ProjectStaffDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(ProjectStaffDTO dto) { + ProjectStaffEntity entity = ConvertUtils.sourceToTarget(dto, ProjectStaffEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(ProjectStaffDTO dto) { + ProjectStaffEntity entity = ConvertUtils.sourceToTarget(dto, ProjectStaffEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + public List getDepartmentNameList(ProjectStaffDTO dto) { + return baseDao.selectDepartmentNameList(dto); + } + + @Override + public ProjectStaffDTO getProjectStaffInfo(String projectProcessId) { + return baseDao.selectProjectStaffInfo(projectProcessId); + } + + @Override + public DepartmentStaffListResultDTO departmentStaffList(DepartmentStaffListFormDTO formDTO) { + //1:调用gov-org服务,分别查询组织下人员,组织下部门人员,组织下网格人员列表信息 + Result resultDTOResult = govOrgFeignClient.departmentStaffList(formDTO.getAgencyId()); + return resultDTOResult.getData(); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java new file mode 100644 index 0000000000..69448b017a --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java @@ -0,0 +1,66 @@ +package com.epmet.service.impl; + +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.service.ProjectProcessService; +import com.epmet.service.ProjectService; +import com.epmet.service.ProjectTraceService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/11 16:35 + */ +@Service +public class ProjectTraceServiceImpl implements ProjectTraceService { + @Autowired + private ProjectService projectService; + @Autowired + private ProjectProcessService projectProcessService; + + @Override + public List getPendProjectList(TokenDto tokenDto, ProjectListFromDTO fromDTO) { + fromDTO.setUserId(tokenDto.getUserId()); + return projectService.getPendProjectList(fromDTO); + } + + @Override + public List getCreatedList(TokenDto tokenDto, ProjectListFromDTO fromDTO) { + fromDTO.setUserId(tokenDto.getUserId()); + return projectService.getCreatedList(fromDTO); + } + + @Override + public List getInvolvedList(TokenDto tokenDto, ProjectListFromDTO fromDTO) { + fromDTO.setUserId(tokenDto.getUserId()); + return projectService.getInvolvedList(fromDTO); + } + + @Override + public ProjectDetailResultDTO getProjectDetail(TokenDto tokenDto, ProjectDetailFromDTO fromDTO) { + fromDTO.setProjectId(tokenDto.getUserId()); + return projectService.getProjectDetail(fromDTO); + } + + @Override + public void closed(TokenDto tokenDto, ProjectClosedFromDTO fromDTO) { + fromDTO.setUserId(tokenDto.getUserId()); + projectService.closed(fromDTO); + } + + @Override + public List getReturnableList(ReturnListFromDTO fromDTO) { + return projectProcessService.getReturnableList(fromDTO); + } + + @Override + public void projectReturn(TokenDto tokenDto, ReturnFromDTO fromDTO) { + fromDTO.setUserId(tokenDto.getUserId()); + projectService.projectReturn(fromDTO); + } +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/db.migration/.gitkeep b/epmet-module/gov-project/gov-project-server/src/main/resources/db.migration/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/db.migration/epmet_gov_project.sql b/epmet-module/gov-project/gov-project-server/src/main/resources/db.migration/epmet_gov_project.sql new file mode 100644 index 0000000000..f87285eecd --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/db.migration/epmet_gov_project.sql @@ -0,0 +1,150 @@ +CREATE DATABASE `epmet_gov_project` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci'; +/* + Navicat Premium Data Transfer + + Source Server : 党群e事通开发库!!!!! + Source Server Type : MySQL + Source Server Version : 50728 + Source Host : 192.168.1.130:3306 + Source Schema : epmet_gov_project + + Target Server Type : MySQL + Target Server Version : 50728 + File Encoding : 65001 + + Date: 11/05/2020 13:17:27 +*/ + +-- ---------------------------- +-- Table structure for customer_project_parameter +-- ---------------------------- +DROP TABLE IF EXISTS `customer_project_parameter`; +CREATE TABLE `customer_project_parameter` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键 唯一标识', + `CUSTOMER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '客户ID', + `PARAMETER_KEY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '参数KEY值', + `PARAMETER_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '参数名称', + `PARAMETER_VALUE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '参数VALUE值', + `DESCRIPTION` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '说明', + `DEL_FLAG` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '删除标识:0.未删除 1.已删除', + `REVISION` int(11) NOT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '项目客户参数订制表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for project +-- ---------------------------- +DROP TABLE IF EXISTS `project`; +CREATE TABLE `project` ( + `ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '唯一标识', + `AGENCY_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT ' 机关ID', + `ORIGIN` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '来源:议题issue', + `ORIGIN_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '来源ID', + `TITLE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '项目标题', + `STATUS` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '状态:待处理 pending,结案closed', + `CLOSED_STATUS` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '结案状态:已解决 resolved,未解决 unresolved', + `ORG_ID_PATH` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '所属机关 11:22:33(本机关以及上级所有机关ID)', + `DEL_FLAG` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '删除标识:0.未删除 1.已删除', + `REVISION` int(11) NOT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '项目表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for project_process +-- ---------------------------- +DROP TABLE IF EXISTS `project_process`; +CREATE TABLE `project_process` ( + `ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '唯一标识', + `PROJECT_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '项目ID', + `STAFF_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '负负责人ID', + `OPERATION` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '处理:结案close,退回return,部门流转transfer,创建项目created', + `PUBLIC_REPLY` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '公开答复', + `INTERNAL_REMARK` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '内部备注', + `END_TIME` datetime(0) DEFAULT NULL COMMENT '结束时间', + `COST_WORKDAYS` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '耗费天数', + `DEL_FLAG` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '删除标识:0.未删除 1.已删除', + `REVISION` int(11) NOT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '项目处理进展表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for project_satisfaction_detail +-- ---------------------------- +DROP TABLE IF EXISTS `project_satisfaction_detail`; +CREATE TABLE `project_satisfaction_detail` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `PROJECT_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '项目ID', + `COMMENT` varchar(600) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '评论 - 最多300字', + `SATISFACTION` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '满意度 - 不满意:bad、基本满意:good、非常满意:perfect', + `DEL_FLAG` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '项目满意度调查记录表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for project_satisfaction_statistics +-- ---------------------------- +DROP TABLE IF EXISTS `project_satisfaction_statistics`; +CREATE TABLE `project_satisfaction_statistics` ( + `ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID', + `PROJECT_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '项目ID', + `GOOD_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '一般满意数', + `PERFECT_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '非常满意数', + `BAD_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '不满意数', + `DEL_FLAG` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', + `REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '项目满意度调查统计表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for project_staff +-- ---------------------------- +DROP TABLE IF EXISTS `project_staff`; +CREATE TABLE `project_staff` ( + `ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '唯一标识', + `PROJECT_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '项目ID', + `CUSTOMER_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户ID', + `ORG_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '机关ID', + `DEPARTMENT_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '部门ID', + `GRID_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '网格ID', + `ORG_ID_PATH` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '所属机关(11:22:33)', + `STAFF_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '人员ID', + `IS_HANDLE` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '是否处理:未处理unhandle,已处理handle', + `DEL_FLAG` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '删除标识:0.未删除 1.已删除', + `REVISION` int(11) NOT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime(0) NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime(0) NOT NULL COMMENT '更新时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '项目人员关联表' ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1; + +alter table project_staff add column PROCESS_ID varchar(64) NOT NULL COMMENT '处理进展ID'; + +alter table project_process add column OPERATION_NAME varchar(200) NOT NULL COMMENT '处理名称' after OPERATION; + +alter table project_staff add column DEPARTMENT_NAME varchar(200) NOT NULL COMMENT '处理部门' after STAFF_ID; + +alter table project_process add column DEPARTMENT_NAME varchar(200) NOT NULL COMMENT '处理部门' after PROJECT_ID; diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/.gitkeep b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/CustomerProjectParameterDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/CustomerProjectParameterDao.xml new file mode 100644 index 0000000000..25a30d23a9 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/CustomerProjectParameterDao.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml new file mode 100644 index 0000000000..e7cc041e78 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml @@ -0,0 +1,139 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectProcessDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectProcessDao.xml new file mode 100644 index 0000000000..d93c09e825 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectProcessDao.xml @@ -0,0 +1,33 @@ + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSatisfactionDetailDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSatisfactionDetailDao.xml new file mode 100644 index 0000000000..afa26f2ac2 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSatisfactionDetailDao.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSatisfactionStatisticsDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSatisfactionStatisticsDao.xml new file mode 100644 index 0000000000..65324c0d07 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSatisfactionStatisticsDao.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectStaffDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectStaffDao.xml new file mode 100644 index 0000000000..bb19e5068a --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectStaffDao.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperLanguageDao.java b/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperLanguageDao.java index d681d328c3..dfca54a9ab 100644 --- a/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperLanguageDao.java +++ b/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperLanguageDao.java @@ -24,4 +24,5 @@ public interface OperLanguageDao extends BaseDao { void updateLanguage(OperLanguageEntity entity); + void insertOperLanguageEntity(OperLanguageEntity entity); } diff --git a/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperLanguageServiceImpl.java b/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperLanguageServiceImpl.java index ee486aa224..7ed89ecf7b 100644 --- a/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperLanguageServiceImpl.java +++ b/epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperLanguageServiceImpl.java @@ -112,7 +112,7 @@ public class OperLanguageServiceImpl extends BaseServiceImpl + + INSERT INTO `oper_language` ( `table_name`, `table_id`, `field_name`, `field_value`, `language` ) + VALUES + ( #{tableName}, #{tableId}, #{fieldName}, #{fieldValue}, #{language} ) + diff --git a/epmet-module/pom.xml b/epmet-module/pom.xml index 50fdc831c0..5637182706 100644 --- a/epmet-module/pom.xml +++ b/epmet-module/pom.xml @@ -33,6 +33,7 @@ resi-hall gov-issue gov-project + epmet-common-service diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/GroupProcessingCountResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/GroupProcessingCountResultDTO.java new file mode 100644 index 0000000000..4ef970e52b --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/GroupProcessingCountResultDTO.java @@ -0,0 +1,25 @@ +package com.epmet.resi.group.dto.group; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 网格待审核小组数 + * @Author yinzuomei + * @Date 2020/5/13 21:29 + */ +@Data +public class GroupProcessingCountResultDTO implements Serializable { + + /** + * 网格id + */ + private String gridId; + + /** + * 待审核的小组总数 + */ + private Long count; +} + diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ApplyingMemberFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ApplyingMemberFormDTO.java index 4ab61b072f..f55ade60b2 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ApplyingMemberFormDTO.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ApplyingMemberFormDTO.java @@ -25,4 +25,10 @@ public class ApplyingMemberFormDTO implements Serializable { private Integer pageNo; private Integer pageSize=20; + + /** + * 从token中获取的用户ID + */ + @NotBlank(message = "用户id不能为空") + private String userId; } diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/GroupMemberListFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/GroupMemberListFormDTO.java index e42fdb7c1f..010c24c30d 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/GroupMemberListFormDTO.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/GroupMemberListFormDTO.java @@ -26,4 +26,9 @@ public class GroupMemberListFormDTO implements Serializable { private Integer pageSize=20; + /** + * 从token中获取的用户ID + */ + @NotBlank(message = "用户id不能为空") + private String userId; } diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/TopicInfoDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/TopicInfoDTO.java new file mode 100644 index 0000000000..e643a1bd75 --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/TopicInfoDTO.java @@ -0,0 +1,43 @@ +package com.epmet.resi.group.dto.topic; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * 话题详情(议题详情中的) + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class TopicInfoDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 话题id + */ + private String topicId; + + /** + * 话题内容 + */ + private String topicContent; + + /** + * 图片列表 + */ + private List topicImgs; + + /** + * 话题发表人(山东路168-尹女士) + */ + private String publishedUser; + + /** + * 话题发表时间 (时间戳 毫秒级) + */ + private Long publishedTime; + +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicInfoFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicInfoFormDTO.java new file mode 100644 index 0000000000..9c8c2dc5e4 --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicInfoFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.resi.group.dto.topic.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 查询话题信息 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class TopicInfoFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 话题id + */ + private String topicId; + + +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicIncludeIssueDetailResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicIncludeIssueDetailResultDTO.java new file mode 100644 index 0000000000..4ac316638c --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicIncludeIssueDetailResultDTO.java @@ -0,0 +1,68 @@ +package com.epmet.resi.group.dto.topic.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description 话题详情DTO(包含议题Id和是否转为议题Flag) + * @ClassName ResiTopicIncludeIssueDetailResultDTO + * @Auth wangc + * @Date 2020-05-11 17:31 + */ +@Data +public class ResiTopicIncludeIssueDetailResultDTO implements Serializable { + private static final long serialVersionUID = -6790536784979922200L; + + /** + * 话题Id + * */ + private String topicId; + + + /** + * 发布人名称 + * */ + private String releaseUserName; + + /** + * 发布人头像 + * */ + private String releaseUserHeadPhoto; + + /** + * 发布时间 yyyy-MM-dd HH:mm + * */ + private String releaseTime; + + /** + * 发布地址 + * */ + private String releaseAddress; + + /** + * 话题内容 + * */ + private String topicContent; + + /** + * 话题状态 + * */ + private String topicStatus; + + /** + * 图片访问地址 + * */ + private List topicImgs; + + /** + * 是否被转为议题true,false + * */ + private Boolean shiftIssueFlag; + + /** + * 议题Id,当shiftIssueFlag为false时返回"" + * */ + private String issueId; +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicIncludeIssueInfoResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicIncludeIssueInfoResultDTO.java new file mode 100644 index 0000000000..55fe66f286 --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicIncludeIssueInfoResultDTO.java @@ -0,0 +1,74 @@ +package com.epmet.resi.group.dto.topic.result; + +import com.alibaba.fastjson.annotation.JSONField; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description 话题信息返回DTO(包含议题Id和是否转为议题Flag) + * @ClassName ResiTopicIncludeIssueInfoResultDTO + * @Auth wangc + * @Date 2020-05-11 15:56 + */ +@Data +public class ResiTopicIncludeIssueInfoResultDTO implements Serializable { + private static final long serialVersionUID = -7029232911456325417L; + + /** + * 话题Id + * */ + private String topicId; + + /** + * 用户Id 话题发布人 + * */ + private String userId; + + /** + * 发布人名称 + * */ + private String releaseUserName; + + /** + * 发布人头像 + * */ + private String releaseUserHeadPhoto; + + /** + * 发布时间 yyyy-MM-dd HH:mm + * */ + @JSONField(format="yyyy-MM-dd HH:mm") + private Date releaseTime; + + /** + * 话题内容 + * */ + private String topicContent; + + /** + * 话题状态 讨论中 已关闭 + * */ + private String status; + + /** + * 是否本人 me other + * */ + private String releaseUserFlag; + + /** + * 第一张图片 + * */ + private String firstPhoto; + + /** + * 是否被转为议题true,false + * */ + private Boolean shiftIssueFlag; + + /** + * 议题Id,当shiftIssueFlag为false时返回"" + * */ + private String issueId; +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicInfoResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicInfoResultDTO.java index 278a75e45e..613b506acf 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicInfoResultDTO.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicInfoResultDTO.java @@ -53,11 +53,6 @@ public class ResiTopicInfoResultDTO implements Serializable{ * */ private String status; - /** - * 网格名称 - * */ - private String gridName; - /** * 是否本人 me other * */ diff --git a/epmet-module/resi-group/resi-group-server/pom.xml b/epmet-module/resi-group/resi-group-server/pom.xml index 735b2b1103..83839e4a95 100644 --- a/epmet-module/resi-group/resi-group-server/pom.xml +++ b/epmet-module/resi-group/resi-group-server/pom.xml @@ -118,7 +118,7 @@ epmet_resi_group_user EpmEt-db-UsEr - 0 + 1 192.168.1.130 6379 123456 diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/ResiGroupRedisKeys.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/ResiGroupRedisKeys.java new file mode 100644 index 0000000000..303d52c75f --- /dev/null +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/ResiGroupRedisKeys.java @@ -0,0 +1,53 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + *

+ * https://www.renren.io + *

+ * 版权所有,侵权必究! + */ + +package com.epmet.modules.constant; + +/** + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +public class ResiGroupRedisKeys { + + /** + * 党群e事通redis前缀 + */ + private static String rootPrefix = "epmet:"; + + + /** + * @Description 小组缓存信息key + * @Param 组Id + * @return epmet:resi:group:groupId + * @Author wangc + * @Date 2020.04.13 11:27 + **/ + public static String getResiGroupInfoKey(String groupId){ + return rootPrefix.concat("resi:group:").concat(groupId); + } + + /** + * @Description 组成员信息缓存key + * @Param 组Id 用户Id + * @return epmet:resi:group:member:groupId:userId + * @Author wangc + * @Date 2020.04.13 13:40 + **/ + public static String getResiGroupMemberInfoKey(String groupId, String userId){ + return rootPrefix.concat("resi:group:member:").concat(groupId).concat(":").concat(userId); + } + + /** + * 政府工作段小程序:基层治理-群组管理(待审核待测小组)红点key eg:epmet:gov:wxmp:work:grassroots:group:XX网格id + */ + public static String getWorkGrassrootsGroupRedDotKey(String gridId) { + return rootPrefix.concat(String.format("gov:wxmp:work:grassroots:group:%s",gridId)); + } + + +} diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java index c9ad7e98a8..5ce70364f8 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java @@ -3,6 +3,7 @@ package com.epmet.modules.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.form.*; +import com.epmet.dto.result.IssueInitiatorResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.dto.result.UserRoleResultDTO; import com.epmet.modules.feign.fallback.EpmetUserFeignClientFallback; @@ -17,6 +18,7 @@ import java.util.List; * @Description epmet_user服务fegin * @Author yinzuomei * @Date 2020/3/16 14:48 + * url = "localhost:8087" */ @FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallback.class) public interface EpmetUserFeignClient { @@ -63,4 +65,13 @@ public interface EpmetUserFeignClient { @PostMapping(value = "epmetuser/staffrole/specificrolesstaffs", consumes = MediaType.APPLICATION_JSON_VALUE) Result> specificRolesStaffs(RolesUsersListFormDTO rolesUsersListFormDTO); + + /** + * @Description 查询议题发起人 + * @param formDTO + * @author zxc + * @date 2020/5/11 10:53 + */ + @PostMapping(value = "/epmetuser/userresiinfo/selectissueinitiator") + Result selectIssueInitiator(@RequestBody IssueInitiatorFormDTO formDTO); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java index e778691743..3f2377fa95 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java @@ -4,6 +4,7 @@ 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.form.*; +import com.epmet.dto.result.IssueInitiatorResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.dto.result.UserRoleResultDTO; import com.epmet.modules.feign.EpmetUserFeignClient; @@ -43,4 +44,9 @@ public class EpmetUserFeignClientFallback implements EpmetUserFeignClient { public Result> specificRolesStaffs(RolesUsersListFormDTO rolesUsersListFormDTO) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "specificRolesStaffs", rolesUsersListFormDTO); } + + @Override + public Result selectIssueInitiator(IssueInitiatorFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "selectIssueInitiator", formDTO); + } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java index fdd74e28a6..98eb905c13 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java @@ -17,17 +17,16 @@ package com.epmet.modules.group.controller; +import com.alibaba.fastjson.JSON; import com.epmet.commons.tools.annotation.LoginUser; -import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.modules.group.redis.ResiGroupRedis; import com.epmet.modules.group.service.ResiGroupService; -import com.epmet.modules.utils.ModuleConstant; +import com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO; import com.epmet.resi.group.dto.group.form.*; import com.epmet.resi.group.dto.group.result.*; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -43,252 +42,273 @@ import java.util.List; @RestController @RequestMapping("group") public class ResiGroupController { - private Logger logger = LoggerFactory.getLogger(getClass()); - @Autowired - private ResiGroupService resiGroupService; + @Autowired + private ResiGroupService resiGroupService; - /** - * @param tokenDto - * @param myGroupFormDTO - * @return com.epmet.commons.tools.utils.Result> - * @Author yinzuomei - * @Description 我的小组查询(包含我创建的小组+我加入的小组),以各组的最新话题时间有近到远排序) - * @Date 2020/3/28 20:36 - **/ - @PostMapping("getmygroup") - public Result> getMyGroup(@LoginUser TokenDto tokenDto, @RequestBody MyGroupFormDTO myGroupFormDTO) { - myGroupFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(myGroupFormDTO); - return resiGroupService.getMyGroup(myGroupFormDTO); - } + /** + * @param tokenDto + * @param myGroupFormDTO + * @return com.epmet.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 我的小组查询(包含我创建的小组+我加入的小组),以各组的最新话题时间有近到远排序) + * @Date 2020/3/28 20:36 + **/ + @PostMapping("getmygroup") + public Result> getMyGroup(@LoginUser TokenDto tokenDto, @RequestBody MyGroupFormDTO myGroupFormDTO) { + myGroupFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(myGroupFormDTO); + List myGroupList = resiGroupService.getMyGroup(myGroupFormDTO); + return new Result>().ok(myGroupList); + } - /** - * @param tokenDto - * @param recommendGroupFormDTO - * @return com.epmet.commons.tools.utils.Result> - * @Author yinzuomei - * @Description 推荐组列表查询 - * @Date 2020/3/28 19:52 - **/ - @PostMapping("getrecommendgroup") - public Result> getRecommendGroup(@LoginUser TokenDto tokenDto, + /** + * @param tokenDto + * @param recommendGroupFormDTO + * @return com.epmet.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 推荐组列表查询 + * @Date 2020/3/28 19:52 + **/ + @PostMapping("getrecommendgroup") + public Result> getRecommendGroup(@LoginUser TokenDto tokenDto, @RequestBody RecommendGroupFormDTO recommendGroupFormDTO) { - recommendGroupFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(recommendGroupFormDTO); - return resiGroupService.getRecommendGroup(recommendGroupFormDTO); - } + recommendGroupFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(recommendGroupFormDTO); + List recommendGroupList = resiGroupService.getRecommendGroup(recommendGroupFormDTO); + return new Result>().ok(recommendGroupList); + } - /** - * @param tokenDto - * @param createdFormDTO - * @return com.epmet.commons.tools.utils.Result> - * @Author yinzuomei - * @Description 我创建的小组 - * @Date 2020/3/28 21:59 - **/ - @PostMapping("getcreated") - public Result> getCreated(@LoginUser TokenDto tokenDto, + /** + * @param tokenDto + * @param createdFormDTO + * @return com.epmet.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 我创建的小组 + * @Date 2020/3/28 21:59 + **/ + @PostMapping("getcreated") + public Result> getCreated(@LoginUser TokenDto tokenDto, @RequestBody CreatedFormDTO createdFormDTO) { - createdFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(createdFormDTO); - return resiGroupService.getCreated(createdFormDTO); - } + createdFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(createdFormDTO); + List createdGroupList = resiGroupService.getCreated(createdFormDTO); + return new Result>().ok(createdGroupList); + } - /** - * @param tokenDto - * @param modifyGroupFormDTO - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 修改组信息 - * @Date 2020/3/28 22:20 - **/ - @PostMapping("modifygroup") - public Result modifyGroup(@LoginUser TokenDto tokenDto, @RequestBody ModifyGroupFormDTO modifyGroupFormDTO) { - modifyGroupFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(modifyGroupFormDTO); - return resiGroupService.modifyGroup(modifyGroupFormDTO); - } + /** + * @param tokenDto + * @param modifyGroupFormDTO + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 修改组信息 + * @Date 2020/3/28 22:20 + **/ + @PostMapping("modifygroup") + public Result modifyGroup(@LoginUser TokenDto tokenDto, @RequestBody ModifyGroupFormDTO modifyGroupFormDTO) { + modifyGroupFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(modifyGroupFormDTO); + resiGroupService.modifyGroup(modifyGroupFormDTO); + return new Result(); + } - /** - * @param tokenDto - * @param groupSummarizeFormDTO - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 查看小组管理界面信息 - * @Date 2020/3/29 17:32 - **/ - @PostMapping("getgroupsummarize") - public Result getGroupSummarize(@LoginUser TokenDto tokenDto, + /** + * @param tokenDto + * @param groupSummarizeFormDTO + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查看小组管理界面信息 + * @Date 2020/3/29 17:32 + **/ + @PostMapping("getgroupsummarize") + public Result getGroupSummarize(@LoginUser TokenDto tokenDto, @RequestBody GroupSummarizeFormDTO groupSummarizeFormDTO) { - groupSummarizeFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(groupSummarizeFormDTO); - return resiGroupService.getGroupSummarize(groupSummarizeFormDTO); - } + groupSummarizeFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(groupSummarizeFormDTO); + GroupSummarizeResultDTO groupSummarizeResultDTO = resiGroupService.getGroupSummarize(groupSummarizeFormDTO); + return new Result().ok(groupSummarizeResultDTO); + } - /** - * @param tokenDto - * @param applyCreateGroupFormDTO - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 创建小组 - * @Date 2020/3/29 19:26 - **/ - @PostMapping("applycreategroup") - public Result applyCreateGroup(@LoginUser TokenDto tokenDto, + /** + * @param tokenDto + * @param applyCreateGroupFormDTO + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 创建小组 + * @Date 2020/3/29 19:26 + **/ + @PostMapping("applycreategroup") + public Result applyCreateGroup(@LoginUser TokenDto tokenDto, @RequestBody ApplyCreateGroupFormDTO applyCreateGroupFormDTO) { - applyCreateGroupFormDTO.setUserId(tokenDto.getUserId()); - applyCreateGroupFormDTO.setApp(tokenDto.getApp()); - ValidatorUtils.validateEntity(applyCreateGroupFormDTO); - return resiGroupService.applyCreateGroup(applyCreateGroupFormDTO); - } + applyCreateGroupFormDTO.setUserId(tokenDto.getUserId()); + applyCreateGroupFormDTO.setApp(tokenDto.getApp()); + ValidatorUtils.validateEntity(applyCreateGroupFormDTO); + resiGroupService.applyCreateGroup(applyCreateGroupFormDTO); + return new Result(); + } - /** - * @param tokenDto - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 加入小组界面初始化 - * 只有已经注册过的居民才可以加入小组 - * @Date 2020/3/30 10:11 - **/ - @PostMapping("initapplygroup") - public Result initApplyGroup(@LoginUser TokenDto tokenDto, + /** + * @param tokenDto + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 加入小组界面初始化 + * 只有已经注册过的居民才可以加入小组 + * @Date 2020/3/30 10:11 + **/ + @PostMapping("initapplygroup") + public Result initApplyGroup(@LoginUser TokenDto tokenDto, @RequestBody InitApplyGroupFormDTO initApplyGroupFormDTO) { - if (null == tokenDto) { - logger.error(ModuleConstant.USER_NOT_NULL); - throw new RenException(ModuleConstant.USER_NOT_NULL); - } - initApplyGroupFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(initApplyGroupFormDTO); - return resiGroupService.initApplyGroup(initApplyGroupFormDTO); - } + initApplyGroupFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(initApplyGroupFormDTO); + resiGroupService.initApplyGroup(initApplyGroupFormDTO); + return new Result(); + } - /** - * @param tokenDto - * @param initApplyCreatedGroupFormDTO - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 创建小组界面初始化 只有党员和热心居民才能创建小组 - * @Date 2020/3/30 15:44 - **/ - @PostMapping("initapplycreategroup") - public Result initApplyCreatedGroup(@LoginUser TokenDto tokenDto, + /** + * @param tokenDto + * @param initApplyCreatedGroupFormDTO + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 创建小组界面初始化 只有党员和热心居民才能创建小组 + * @Date 2020/3/30 15:44 + **/ + @PostMapping("initapplycreategroup") + public Result initApplyCreatedGroup(@LoginUser TokenDto tokenDto, @RequestBody InitApplyCreatedGroupFormDTO initApplyCreatedGroupFormDTO) { - if (null == tokenDto) { - logger.error(ModuleConstant.USER_NOT_NULL); - throw new RenException(ModuleConstant.USER_NOT_NULL); - } - initApplyCreatedGroupFormDTO.setUserId(tokenDto.getUserId()); - initApplyCreatedGroupFormDTO.setApp(tokenDto.getApp()); - ValidatorUtils.validateEntity(initApplyCreatedGroupFormDTO); - return resiGroupService.initApplyCreatedGroup(initApplyCreatedGroupFormDTO); - } + initApplyCreatedGroupFormDTO.setUserId(tokenDto.getUserId()); + initApplyCreatedGroupFormDTO.setApp(tokenDto.getApp()); + ValidatorUtils.validateEntity(initApplyCreatedGroupFormDTO); + resiGroupService.initApplyCreatedGroup(initApplyCreatedGroupFormDTO); + return new Result(); + } - /** - * @param tokenDto - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 审核(同意)群申请-测试用后面会放到政府端 - * @Date 2020/3/31 12:31 - **/ - @PostMapping("agreeapplygroup") - public Result agreeApplyGroup(@LoginUser TokenDto tokenDto, @RequestBody AgreeApplyGroupFormDTO agreeApplyGroupFormDTO) { - agreeApplyGroupFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(agreeApplyGroupFormDTO); - return resiGroupService.agreeApplyGroup(agreeApplyGroupFormDTO); - } + /** + * @param tokenDto + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 审核(同意)群申请-测试用后面会放到政府端 已废弃 + * @Date 2020/3/31 12:31 + **/ + @PostMapping("agreeapplygroup") + public Result agreeApplyGroup(@LoginUser TokenDto tokenDto, @RequestBody AgreeApplyGroupFormDTO agreeApplyGroupFormDTO) { + agreeApplyGroupFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(agreeApplyGroupFormDTO); + return resiGroupService.agreeApplyGroup(agreeApplyGroupFormDTO); + } - /** - * @param tokenDto - * @param disAgreeApplyGroupFormDTO - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 审核(拒绝)群申请-测试用后面会放到政府端 - * @Date 2020/3/31 13:23 - **/ - @PostMapping("disagreeapplygroup") - public Result disagreeApplyGroup(@LoginUser TokenDto tokenDto, @RequestBody DisAgreeApplyGroupFormDTO disAgreeApplyGroupFormDTO) { - disAgreeApplyGroupFormDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(disAgreeApplyGroupFormDTO); - return resiGroupService.disagreeApplyGroup(disAgreeApplyGroupFormDTO); - } + /** + * @param tokenDto + * @param disAgreeApplyGroupFormDTO + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 审核(拒绝)群申请-测试用后面会放到政府端 已废弃 + * @Date 2020/3/31 13:23 + **/ + @PostMapping("disagreeapplygroup") + public Result disagreeApplyGroup(@LoginUser TokenDto tokenDto, @RequestBody DisAgreeApplyGroupFormDTO disAgreeApplyGroupFormDTO) { + disAgreeApplyGroupFormDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(disAgreeApplyGroupFormDTO); + return resiGroupService.disagreeApplyGroup(disAgreeApplyGroupFormDTO); + } - /** - * 小组审核历史列表 - * - * @param formDTO 参数 - * @return Result> - */ - @PostMapping("audited") - public Result> audited(@RequestBody GroupAuditedFromDTO formDTO) { - ValidatorUtils.validateEntity(formDTO); - return resiGroupService.audited(formDTO); - } + /** + * 小组审核历史列表 + * + * @param formDTO 参数 + * @return Result> + */ + @PostMapping("audited") + public Result> audited(@RequestBody GroupAuditedFromDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + return resiGroupService.audited(formDTO); + } - /** - * 本网格小组列表 - * - * @param formDTO 参数 - * @return Result> - */ - @PostMapping("groupsingrid") - public Result> getGroupsInGrid(@RequestBody GroupAuditedFromDTO formDTO) { - ValidatorUtils.validateEntity(formDTO); - return resiGroupService.getGroupsInGrid(formDTO); - } + /** + * 本网格小组列表 + * + * @param formDTO 参数 + * @return Result> + */ + @PostMapping("groupsingrid") + public Result> getGroupsInGrid(@RequestBody GroupAuditedFromDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + return resiGroupService.getGroupsInGrid(formDTO); + } - /** - * 小组管理界面信息 - * - * @param formDTO 参数 - * @return Result - */ - @PostMapping("getgovgroupsummarize") - public Result getGovGroupSummarize(@RequestBody GovGroupSummarizeFromDTO formDTO) { - return resiGroupService.getGovGroupSummarize(formDTO); - } + /** + * 小组管理界面信息 + * + * @param formDTO 参数 + * @return Result + */ + @PostMapping("getgovgroupsummarize") + public Result getGovGroupSummarize(@RequestBody GovGroupSummarizeFromDTO formDTO) { + return resiGroupService.getGovGroupSummarize(formDTO); + } - /** - * @Description 得到小组待审核列表,用户信息不注入TokenDTO,通过外部服务调用直接传入参数 - * @Param ApplyingGroupsFormDTO.class - * @return Result> - * @Author wangc - * @Date 2020.04.20 13:59 - **/ - @PostMapping("getapplyinggroups") - public Result> getApplyingGroups(@RequestBody ApplyingGroupsFormDTO applyingGroupsFormDTO){ - ValidatorUtils.validateEntity(applyingGroupsFormDTO); - return resiGroupService.getApplyingGroups(applyingGroupsFormDTO); - } + /** + * @return Result> + * @Description 得到小组待审核列表,用户信息不注入TokenDTO,通过外部服务调用直接传入参数 + * @Param ApplyingGroupsFormDTO.class + * @Author wangc + * @Date 2020.04.20 13:59 + **/ + @PostMapping("getapplyinggroups") + public Result> getApplyingGroups(@RequestBody ApplyingGroupsFormDTO applyingGroupsFormDTO) { + ValidatorUtils.validateEntity(applyingGroupsFormDTO); + return resiGroupService.getApplyingGroups(applyingGroupsFormDTO); + } - /** - * @Description 得到待审核/未审核小组信息的详情 - * @Param CommonGroupIdFromDTO -> String groupId; String userId - * @return Result - * @Author wangc - * @Date 2020.04.20 14:08 - **/ - @PostMapping("getapplyinggroupdetail") - public Result getApplyingGroupDetail(@RequestBody CommonGroupIdFromDTO groupIdFromDTO){ - ValidatorUtils.validateEntity(groupIdFromDTO); - return resiGroupService.getApplyingGroupDetail(groupIdFromDTO); - } + /** + * @return Result + * @Description 得到待审核/未审核小组信息的详情 + * @Param CommonGroupIdFromDTO -> String groupId; String userId + * @Author wangc + * @Date 2020.04.20 14:08 + **/ + @PostMapping("getapplyinggroupdetail") + public Result getApplyingGroupDetail(@RequestBody CommonGroupIdFromDTO groupIdFromDTO) { + ValidatorUtils.validateEntity(groupIdFromDTO); + return resiGroupService.getApplyingGroupDetail(groupIdFromDTO); + } - @PostMapping("agreeapplying") - public Result agreeApplying( @RequestBody AgreeApplyGroupFormDTO agreeApplyGroupFormDTO) { - ValidatorUtils.validateEntity(agreeApplyGroupFormDTO); - return resiGroupService.agreeApplyGroup(agreeApplyGroupFormDTO); - } + @PostMapping("agreeapplying") + public Result agreeApplying(@RequestBody AgreeApplyGroupFormDTO agreeApplyGroupFormDTO) { + ValidatorUtils.validateEntity(agreeApplyGroupFormDTO); + return resiGroupService.agreeApplyGroup(agreeApplyGroupFormDTO); + } - /** - * @Description 建组申请-审核驳回-供外部服务调用,当前用户Id需要调用时一并传入 - * @Param DisAgreeApplyGroupFormDTO - * @return Result - * @Author wangc - * @Date 2020.04.20 14:26 - **/ - @PostMapping("disagreeapplying") - public Result disagreeApplying(@RequestBody DisAgreeApplyGroupFormDTO disAgreeApplyGroupFormDTO) { - ValidatorUtils.validateEntity(disAgreeApplyGroupFormDTO); - return resiGroupService.disagreeApplyGroup(disAgreeApplyGroupFormDTO); - } + /** + * @return Result + * @Description 建组申请-审核驳回-供外部服务调用,当前用户Id需要调用时一并传入 + * @Param DisAgreeApplyGroupFormDTO + * @Author wangc + * @Date 2020.04.20 14:26 + **/ + @PostMapping("disagreeapplying") + public Result disagreeApplying(@RequestBody DisAgreeApplyGroupFormDTO disAgreeApplyGroupFormDTO) { + ValidatorUtils.validateEntity(disAgreeApplyGroupFormDTO); + return resiGroupService.disagreeApplyGroup(disAgreeApplyGroupFormDTO); + } + + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 传入网格id列表,返回每个网格的待审核小组总数 + * @Date 2020/5/13 21:33 + **/ + @PostMapping("groupprocessingcount") + public Result> queryGroupProcessingCount(@RequestBody List gridIdList) { + List list = resiGroupService.queryGroupProcessingCount(gridIdList); + return new Result>().ok(list); + } + + @PostMapping("test") + public Result test(@RequestBody TestFormDTO2 formDTO2) { + System.out.println("group接收到入参:" + JSON.toJSONString(formDTO2)); + TestResultDTO2 resultDTO2 = new TestResultDTO2(); + resultDTO2.setResultId("group"); + resultDTO2.setResultName("group返参"); + return new Result().ok(resultDTO2); + } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/TestFormDTO2.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/TestFormDTO2.java new file mode 100644 index 0000000000..8114d03488 --- /dev/null +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/TestFormDTO2.java @@ -0,0 +1,15 @@ +package com.epmet.modules.group.controller; + +import lombok.Data; + +/** + * @Description 测试feign + * @Author yinzuomei + * @Date 2020/5/13 18:30 + */ +@Data +public class TestFormDTO2 { + private String id; + private String name; +} + diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/TestResultDTO2.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/TestResultDTO2.java new file mode 100644 index 0000000000..5da3d98d31 --- /dev/null +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/TestResultDTO2.java @@ -0,0 +1,15 @@ +package com.epmet.modules.group.controller; + +import lombok.Data; + +/** + * @Description 测试feign + * @Author yinzuomei + * @Date 2020/5/13 18:30 + */ +@Data +public class TestResultDTO2 { + private String resultId; + private String resultName; +} + diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java index 8971aae9dc..15197a9fd3 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java @@ -19,9 +19,9 @@ package com.epmet.modules.group.redis; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; -import com.epmet.commons.tools.redis.RedisKeys; import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.modules.constant.ResiGroupRedisKeys; import com.epmet.modules.group.service.ResiGroupService; import com.epmet.modules.group.service.ResiGroupStatisticalService; import com.epmet.resi.group.constant.TopicConstant; @@ -30,6 +30,8 @@ import com.epmet.resi.group.dto.group.ResiGroupInfoRedisDTO; import com.epmet.resi.group.dto.group.ResiGroupStatisticalDTO; import com.epmet.resi.group.dto.group.ResiGroupStatisticalInfoRedisDTO; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -43,6 +45,7 @@ import java.util.*; */ @Component public class ResiGroupRedis { + private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private RedisUtils redisUtils; @@ -65,7 +68,7 @@ public class ResiGroupRedis { **/ public void set(ResiGroupInfoRedisDTO groupInfoRedis){ if(null != groupInfoRedis && StringUtils.isNotBlank(groupInfoRedis.getGroupId())){ - redisUtils.set(RedisKeys.getResiGroupInfoKey(groupInfoRedis.getGroupId()), groupInfoRedis); + redisUtils.set(ResiGroupRedisKeys.getResiGroupInfoKey(groupInfoRedis.getGroupId()), groupInfoRedis); } } @@ -80,7 +83,7 @@ public class ResiGroupRedis { if(StringUtils.isNotBlank(groupId)){ ResiGroupInfoRedisDTO groupCache = (ResiGroupInfoRedisDTO) - redisUtils.get(RedisKeys.getResiGroupInfoKey(groupId)); + redisUtils.get(ResiGroupRedisKeys.getResiGroupInfoKey(groupId)); if(null == groupCache || StringUtils.isBlank(groupCache.getGroupId())){ //如果缓存中没有该组信息,从数据库中查询并放入缓存 ResiGroupDTO groupMySql = groupService.get(groupId); @@ -143,4 +146,64 @@ public class ResiGroupRedis { return null; } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei + * @Description 当前网格带审核小组数量key eg:epmet:gov:wxmp:work:grassroots:group:xx网格id + * 居民端创建小组,提交成功后,该redis值+1,目的:政府端基层治理-群组管理显示红点,提醒工作人员有待办事项 + * @Date 2020/5/13 9:50 + **/ + public Long addWorkGrassrootsGroupRedDotValue(String gridId) { + Long auditingGroupCount = 0L; + try { + String workGrassrootsGroupRedDotKey = ResiGroupRedisKeys.getWorkGrassrootsGroupRedDotKey(gridId); + auditingGroupCount = redisUtils.incrementAndGet(workGrassrootsGroupRedDotKey); + logger.info(String.format("居民端创建小组提交,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsGroupRedDotKey, auditingGroupCount)); + } catch (Exception e) { + logger.error(String.format("居民端创建小组提交,更新redis-reddot值异常%s",e.getMessage())); + e.printStackTrace(); + } + return auditingGroupCount; + } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei 当前网格带审核小组数量key eg:epmet:gov:wxmp:work:grassroots:group:xx网格id + * @Description 政府端工作人员审核建组申请之后(同意或驳回),该redis值-1 + * @Date 2020/5/13 12:58 + **/ + public Long subtractWorkGrassrootsPartyAuthRedDotValue(String gridId) { + Long auditingGroupCount = 0L; + try { + String workGrassrootsGroupRedDotKey = ResiGroupRedisKeys.getWorkGrassrootsGroupRedDotKey(gridId); + auditingGroupCount = redisUtils.decrementAndGet(workGrassrootsGroupRedDotKey); + logger.info(String.format("政府端(wxmp)同意建组,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsGroupRedDotKey, auditingGroupCount)); + } catch (Exception e) { + logger.error(String.format("政府端(wxmp)同意建组,更新redis-reddot值异常%s", e.getMessage())); + e.printStackTrace(); + } + return auditingGroupCount; + } + + /** + * @return java.lang.Long + * @param gridId + * @Author yinzuomei + * @Description 获取某网格下待审核小组总数 + * @Date 2020/5/13 21:40 + **/ + public Long getWorkGrassrootsGroupRedDotValue(String gridId) { + Long auditingGroupCount = 0L; + try { + String workGrassrootsGroupRedDotKey = ResiGroupRedisKeys.getWorkGrassrootsGroupRedDotKey(gridId); + auditingGroupCount = (Long) redisUtils.get(workGrassrootsGroupRedDotKey); + } catch (Exception e) { + logger.error(String.format("网格id%s,查询网格下待审核小组总数异常%s", gridId, e.getMessage())); + e.printStackTrace(); + } + return auditingGroupCount; + } } \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java index 71a902430a..440b4ebf9d 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java @@ -23,6 +23,7 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.modules.group.entity.ResiGroupEntity; import com.epmet.resi.group.dto.UserRoleDTO; +import com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO; import com.epmet.resi.group.dto.group.ResiGroupDTO; import com.epmet.resi.group.dto.group.form.*; import com.epmet.resi.group.dto.group.result.*; @@ -105,7 +106,7 @@ public interface ResiGroupService extends BaseService { * @Description 我的小组查询(包含我创建的小组+我加入的小组),以各组的最新话题时间有近到远排序) * @Date 2020/3/28 20:37 **/ - Result> getMyGroup(MyGroupFormDTO myGroupFormDTO); + List getMyGroup(MyGroupFormDTO myGroupFormDTO); /** * @param recommendGroupFormDTO @@ -114,7 +115,7 @@ public interface ResiGroupService extends BaseService { * @Description 推荐组列表查询 * @Date 2020/3/28 19:53 **/ - Result> getRecommendGroup(RecommendGroupFormDTO recommendGroupFormDTO); + List getRecommendGroup(RecommendGroupFormDTO recommendGroupFormDTO); /** * @param createdFormDTO @@ -123,7 +124,7 @@ public interface ResiGroupService extends BaseService { * @Description 我创建的小组 * @Date 2020/3/28 22:01 **/ - Result> getCreated(CreatedFormDTO createdFormDTO); + List getCreated(CreatedFormDTO createdFormDTO); /** * @param modifyGroupFormDTO @@ -132,7 +133,7 @@ public interface ResiGroupService extends BaseService { * @Description 修改组信息 * @Date 2020/3/28 22:27 **/ - Result modifyGroup(ModifyGroupFormDTO modifyGroupFormDTO); + void modifyGroup(ModifyGroupFormDTO modifyGroupFormDTO); /** * @param groupSummarizeFormDTO @@ -141,7 +142,7 @@ public interface ResiGroupService extends BaseService { * @Description 查看小组管理界面信息 * @Date 2020/3/29 17:52 **/ - Result getGroupSummarize(GroupSummarizeFormDTO groupSummarizeFormDTO); + GroupSummarizeResultDTO getGroupSummarize(GroupSummarizeFormDTO groupSummarizeFormDTO); /** * @param applyCreateGroupFormDTO @@ -150,7 +151,7 @@ public interface ResiGroupService extends BaseService { * @Description 创建小组 * @Date 2020/3/29 19:26 **/ - Result applyCreateGroup(ApplyCreateGroupFormDTO applyCreateGroupFormDTO); + void applyCreateGroup(ApplyCreateGroupFormDTO applyCreateGroupFormDTO); /** * @param initApplyGroupFormDTO @@ -159,7 +160,7 @@ public interface ResiGroupService extends BaseService { * @Description 加入小组界面初始化 * @Date 2020/3/30 10:17 **/ - Result initApplyGroup(InitApplyGroupFormDTO initApplyGroupFormDTO); + void initApplyGroup(InitApplyGroupFormDTO initApplyGroupFormDTO); /** * @param initApplyCreatedGroupFormDTO @@ -168,13 +169,13 @@ public interface ResiGroupService extends BaseService { * @Description 校验用户是否是热心居民或者党员 * @Date 2020/3/30 15:50 **/ - Result initApplyCreatedGroup(InitApplyCreatedGroupFormDTO initApplyCreatedGroupFormDTO); + void initApplyCreatedGroup(InitApplyCreatedGroupFormDTO initApplyCreatedGroupFormDTO); /** * @param agreeApplyGroupFormDTO * @return com.epmet.commons.tools.utils.Result * @Author yinzuomei - * @Description 审核(同意)群申请-测试用后面会放到政府端 + * @Description 审核(同意)群申请 * @Date 2020/3/31 12:44 **/ Result agreeApplyGroup(AgreeApplyGroupFormDTO agreeApplyGroupFormDTO); @@ -183,7 +184,7 @@ public interface ResiGroupService extends BaseService { * @param disAgreeApplyGroupFormDTO * @return com.epmet.commons.tools.utils.Result * @Author yinzuomei - * @Description 审核(拒绝)群申请-测试用后面会放到政府端 + * @Description 审核(拒绝)群申请 * @Date 2020/3/31 13:22 **/ Result disagreeApplyGroup(DisAgreeApplyGroupFormDTO disAgreeApplyGroupFormDTO); @@ -241,4 +242,13 @@ public interface ResiGroupService extends BaseService { * @Date 2020.04.19 23:32 **/ Result getApplyingGroupDetail(CommonGroupIdFromDTO groupId); + + /** + * @param gridIdList + * @return java.util.List + * @Author yinzuomei + * @Description 传入网格id列表,返回每个网格的待审核小组总数 + * @Date 2020/5/13 21:37 + **/ + List queryGroupProcessingCount(List gridIdList); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java index 9282ee3895..2bc77432e2 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java @@ -118,7 +118,6 @@ public class ResiGroupServiceImpl extends BaseServiceImpl page(Map params) { IPage page = baseDao.selectPage( @@ -179,11 +178,11 @@ public class ResiGroupServiceImpl extends BaseServiceImpl> getMyGroup(MyGroupFormDTO myGroupFormDTO) { + public List getMyGroup(MyGroupFormDTO myGroupFormDTO) { int pageIndex = (myGroupFormDTO.getPageNo() - NumConstant.ONE) * myGroupFormDTO.getPageSize(); myGroupFormDTO.setPageNo(pageIndex); List myGroupList = baseDao.selectListMyGroup(myGroupFormDTO); - return new Result>().ok(myGroupList); + return myGroupList; } /** @@ -194,7 +193,7 @@ public class ResiGroupServiceImpl extends BaseServiceImpl> getRecommendGroup(RecommendGroupFormDTO recommendGroupFormDTO) { + public List getRecommendGroup(RecommendGroupFormDTO recommendGroupFormDTO) { int pageIndex = (recommendGroupFormDTO.getPageNo() - NumConstant.ONE) * recommendGroupFormDTO.getPageSize(); recommendGroupFormDTO.setPageNo(pageIndex); //显示当前网格内所有当前用户还未加入的组,以组的人数由高到低排序;如果人数相同,以最新话题的时间有近到远排序 @@ -206,7 +205,7 @@ public class ResiGroupServiceImpl extends BaseServiceImpl>().ok(recommendGroupList); + return recommendGroupList; } /** @@ -217,11 +216,11 @@ public class ResiGroupServiceImpl extends BaseServiceImpl> getCreated(CreatedFormDTO createdFormDTO) { + public List getCreated(CreatedFormDTO createdFormDTO) { int pageIndex = (createdFormDTO.getPageNo() - NumConstant.ONE) * createdFormDTO.getPageSize(); createdFormDTO.setPageNo(pageIndex); List createdResultDTOList = baseDao.selectListMyCreated(createdFormDTO); - return new Result>().ok(createdResultDTOList); + return createdResultDTOList; } /** @@ -233,24 +232,24 @@ public class ResiGroupServiceImpl extends BaseServiceImpl getGroupSummarize(GroupSummarizeFormDTO groupSummarizeFormDTO) { + public GroupSummarizeResultDTO getGroupSummarize(GroupSummarizeFormDTO groupSummarizeFormDTO) { GroupSummarizeResultDTO groupSummarizeResultDTO = baseDao.selectGroupSummarize(groupSummarizeFormDTO); if (null == groupSummarizeResultDTO) { - logger.error(ModuleConstant.GETGROUPSUMMARIZE_FAILED); - return new Result().error(); + logger.error(String.format("查看小组管理界面信息异常%s",ModuleConstant.GETGROUPSUMMARIZE_FAILED)); + return new GroupSummarizeResultDTO(); } //获取组长信息 Result groupLeaderUserInfo = this.getGroupLeaderUserInfo(groupSummarizeFormDTO.getGroupId()); if (groupLeaderUserInfo.success() && null != groupLeaderUserInfo.getData()) { groupSummarizeResultDTO.setLeaderName(groupLeaderUserInfo.getData().getShowName()); } else { - logger.info("组长注册信息查询失败" + groupLeaderUserInfo.getMsg()); + logger.warn("组长注册信息查询失败" + groupLeaderUserInfo.getMsg()); } - return new Result().ok(groupSummarizeResultDTO); + return groupSummarizeResultDTO; } /** @@ -309,11 +308,12 @@ public class ResiGroupServiceImpl extends BaseServiceImpl resiGroupEntityList = this.getResiGroupEntityList(applyCreateGroupFormDTO); if (null != resiGroupEntityList && resiGroupEntityList.size() > 0) { - return new Result().error(EpmetErrorCode.GROUP_ALREADY_EXISTED.getCode()); + logger.error(String.format("创建小组异常:%s",EpmetErrorCode.GROUP_ALREADY_EXISTED.getMsg())); + throw new RenException(EpmetErrorCode.GROUP_ALREADY_EXISTED.getCode()); } //2、插入一条待审核的组信息 ResiGroupEntity resiGroupEntity = this.structureResiGroupEntity(applyCreateGroupFormDTO); @@ -324,7 +324,8 @@ public class ResiGroupServiceImpl extends BaseServiceImpl result = epmetUserFeignClient.getUserResiInfoDTO(resiUserInfoFormDTO); if (!result.success() || null == result.getData() || StringUtils.isBlank(result.getData().getRegMobile())) { - logger.info("居民注册信息查询失败"); - return new Result().error(EpmetErrorCode.CANNOT_JOIN_GROUP.getCode()); + logger.error("加入小组界面初始化,居民注册信息查询失败"); + throw new RenException(EpmetErrorCode.CANNOT_JOIN_GROUP.getCode()); } - return new Result(); } private ResiGroupEntity structureResiGroupEntity(ApplyCreateGroupFormDTO applyCreateGroupFormDTO) { @@ -455,23 +457,15 @@ public class ResiGroupServiceImpl extends BaseServiceImpl().ok(ConvertUtils.sourceToTarget(detail, ApplyingGroupDetailResult2DTO.class)); } + + @Override + public List queryGroupProcessingCount(List gridIdList) { + List list=new ArrayList<>(); + for(String gridId:gridIdList){ + GroupProcessingCountResultDTO resultDTO=new GroupProcessingCountResultDTO(); + resultDTO.setGridId(gridId); + Long auditingCount=resiGroupRedis.getWorkGrassrootsGroupRedDotValue(gridId); + resultDTO.setCount(auditingCount); + list.add(resultDTO); + } + return list; + } + /** * @Description 给加入此网格的网格长发送消息 * @param msg diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/controller/GroupInvitationController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/controller/GroupInvitationController.java index 1364dcbba8..cf50b0b4b3 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/controller/GroupInvitationController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/controller/GroupInvitationController.java @@ -60,7 +60,8 @@ public class GroupInvitationController { @RequestBody CreateGroupInvitationFormDTO formDTO) { formDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(formDTO); - return groupInvitationService.createGroupInvitation(formDTO); + CreateGroupInvitationResultDTO createGroupInvitationResultDTO=groupInvitationService.createGroupInvitation(formDTO); + return new Result().ok(createGroupInvitationResultDTO); } /** @@ -75,7 +76,8 @@ public class GroupInvitationController { @RequestBody LinkGroupInfoFormDTO formDTO) { formDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(formDTO); - return groupInvitationService.getLinkGroupInfo(formDTO); + LinkGroupInfoResultDTO linkGroupInfoResultDTO=groupInvitationService.getLinkGroupInfo(formDTO); + return new Result().ok(linkGroupInfoResultDTO); } /** @@ -92,6 +94,7 @@ public class GroupInvitationController { formDTO.setUserId(tokenDto.getUserId()); formDTO.setApp(tokenDto.getApp()); ValidatorUtils.validateEntity(formDTO); - return groupInvitationService.accetInvitation(formDTO); + groupInvitationService.accetInvitation(formDTO); + return new Result(); } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/GroupInvitationService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/GroupInvitationService.java index adc45ff5b2..053c4e036e 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/GroupInvitationService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/GroupInvitationService.java @@ -106,7 +106,7 @@ public interface GroupInvitationService extends BaseService createGroupInvitation(CreateGroupInvitationFormDTO formDTO); + CreateGroupInvitationResultDTO createGroupInvitation(CreateGroupInvitationFormDTO formDTO); /** * @return com.epmet.commons.tools.utils.Result @@ -115,7 +115,7 @@ public interface GroupInvitationService extends BaseService getLinkGroupInfo(LinkGroupInfoFormDTO formDTO); + LinkGroupInfoResultDTO getLinkGroupInfo(LinkGroupInfoFormDTO formDTO); /** * @return com.epmet.commons.tools.utils.Result @@ -124,5 +124,5 @@ public interface GroupInvitationService extends BaseService createGroupInvitation(CreateGroupInvitationFormDTO formDTO) { + public CreateGroupInvitationResultDTO createGroupInvitation(CreateGroupInvitationFormDTO formDTO) { //1、只有群主可以邀请新成员(这块界面限制死了,只有群主才能看到邀请新成员按钮) //2、审核通过(讨论中)的群才可以分享邀请连接 ResiGroupDTO resiGroupDTO = resiGroupService.get(formDTO.getGroupId()); @@ -181,7 +178,7 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl().ok(resultDTO); + return resultDTO; } /** @@ -192,13 +189,9 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl getLinkGroupInfo(LinkGroupInfoFormDTO formDTO) { + public LinkGroupInfoResultDTO getLinkGroupInfo(LinkGroupInfoFormDTO formDTO) { //0、校验是否存在该邀请连接(判断是会否被删除连接、是否失效、群状态) - Result validResult = this.checkLinkValid(formDTO.getInvitationId()); - if (!validResult.success()) { - return new Result().error(validResult.getCode(), validResult.getMsg()); - } - GroupInvitationDTO groupInvitationDTO=validResult.getData(); + GroupInvitationDTO groupInvitationDTO=this.checkLinkValid(formDTO.getInvitationId()); LinkGroupInfoResultDTO linkGroupInfoResultDTO = new LinkGroupInfoResultDTO(); //1、查询是否在群内 ResiGroupMemberDTO resiGroupMemberDTO = resiGroupMemberDao.selectGroupMemberInfo(groupInvitationDTO.getResiGroupId(), formDTO.getUserId()); @@ -214,12 +207,12 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl().ok(linkGroupInfoResultDTO); + return linkGroupInfoResultDTO; } /** @@ -240,9 +233,9 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl checkLinkValid(String invitationId) { + private GroupInvitationDTO checkLinkValid(String invitationId) { //校验是否存在该邀请连接 GroupInvitationDTO groupInvitationDTO = this.get(invitationId); //Date1.after(Date2),当Date1大于Date2时,返回TRUE,当小于等于时,返回false; if (null == groupInvitationDTO) { - return new Result().error(EpmetErrorCode.LOSE_EFFICACY.getCode(), EpmetErrorCode.LOSE_EFFICACY.getMsg()); + logger.error(String.format("根据链接【%s】查看群邀请信息异常,错误码:%s,错误提示:%s",invitationId,EpmetErrorCode.LOSE_EFFICACY.getCode(), EpmetErrorCode.LOSE_EFFICACY.getMsg())); + throw new RenException(EpmetErrorCode.LOSE_EFFICACY.getCode()); } if (null != groupInvitationDTO && !groupInvitationDTO.getValidEndTime().after(new Date())) { - return new Result().error(EpmetErrorCode.LOSE_EFFICACY.getCode(), EpmetErrorCode.LOSE_EFFICACY.getMsg()); + logger.error(String.format("根据链接【%s】查看群邀请信息异常,错误码:%s,错误提示:%s",invitationId,EpmetErrorCode.LOSE_EFFICACY.getCode(), EpmetErrorCode.LOSE_EFFICACY.getMsg())); + throw new RenException(EpmetErrorCode.LOSE_EFFICACY.getCode()); } - ResiGroupEntity resiGroupEntity = resiGroupDao.selectById(groupInvitationDTO.getResiGroupId()); + /*ResiGroupEntity resiGroupEntity = resiGroupDao.selectById(groupInvitationDTO.getResiGroupId()); if (null == resiGroupEntity) { logger.info("组不存在"); //TODO @@ -290,8 +285,8 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl().ok(groupInvitationDTO); + }*/ + return groupInvitationDTO; } /** @@ -302,13 +297,9 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl validResult = this.checkLinkValid(formDTO.getInvitationId()); - if (!validResult.success()) { - return new Result().error(validResult.getCode(), validResult.getMsg()); - } - GroupInvitationDTO groupInvitationDTO=validResult.getData(); + GroupInvitationDTO groupInvitationDTO=this.checkLinkValid(formDTO.getInvitationId()); //2、校验是否已经注册居民 ResiGroupDTO resiGroupDTO = resiGroupService.get(groupInvitationDTO.getResiGroupId()); UserRoleDTO userRoleDTO=new UserRoleDTO(); @@ -319,7 +310,8 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl> getGroupMemberList(@LoginUser TokenDto tokenDto, @RequestBody GroupMemberListFormDTO groupMemberListFormDTO) { + groupMemberListFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(groupMemberListFormDTO); - return resiGroupMemberService.getGroupMemberList(groupMemberListFormDTO); + List list=resiGroupMemberService.getGroupMemberList(groupMemberListFormDTO); + return new Result>().ok(list); } /** @@ -88,9 +91,11 @@ public class ResiGroupMemberController { **/ @PostMapping("getapplyingmember") public Result> getApplyingMember(@LoginUser TokenDto tokenDto, - @RequestBody ApplyingMemberFormDTO applyingMemberFormDTO) { + @RequestBody ApplyingMemberFormDTO applyingMemberFormDTO) { + applyingMemberFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(applyingMemberFormDTO); - return resiGroupMemberService.getApplyingMember(applyingMemberFormDTO); + List list = resiGroupMemberService.getApplyingMember(applyingMemberFormDTO); + return new Result>().ok(list); } /** @@ -107,7 +112,8 @@ public class ResiGroupMemberController { agreeApplyFormDTO.setUserId(tokenDto.getUserId()); agreeApplyFormDTO.setApp(tokenDto.getApp()); ValidatorUtils.validateEntity(agreeApplyFormDTO); - return resiGroupMemberService.agreeApply(agreeApplyFormDTO); + resiGroupMemberService.agreeApply(agreeApplyFormDTO); + return new Result(); } /** @@ -123,7 +129,8 @@ public class ResiGroupMemberController { @RequestBody DisagreeApplyFormDTO disagreeApplyFormDTO) { disagreeApplyFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(disagreeApplyFormDTO); - return resiGroupMemberService.disAgreeApply(disagreeApplyFormDTO); + resiGroupMemberService.disAgreeApply(disagreeApplyFormDTO); + return new Result(); } /** diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/redis/ResiGroupMemberRedis.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/redis/ResiGroupMemberRedis.java index d59e819155..7f73fc2a23 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/redis/ResiGroupMemberRedis.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/redis/ResiGroupMemberRedis.java @@ -26,6 +26,7 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.form.UserResiInfoFormDTO; import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.modules.constant.ResiGroupRedisKeys; import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.group.service.ResiGroupService; import com.epmet.modules.member.service.ResiGroupMemberService; @@ -79,7 +80,7 @@ public class ResiGroupMemberRedis { if(null != memberInfoRedis && StringUtils.isNotBlank(memberInfoRedis.getUserId()) && StringUtils.isNotBlank(memberInfoRedis.getGroupId())){ - redisUtils.set(RedisKeys.getResiGroupMemberInfoKey(memberInfoRedis.getGroupId(),memberInfoRedis.getUserId()),memberInfoRedis); + redisUtils.set(ResiGroupRedisKeys.getResiGroupMemberInfoKey(memberInfoRedis.getGroupId(),memberInfoRedis.getUserId()),memberInfoRedis); } } @@ -94,9 +95,9 @@ public class ResiGroupMemberRedis { public ResiGroupMemberInfoRedisDTO get(String groupId ,String userId){ ResiGroupMemberInfoRedisDTO memberCache = - (ResiGroupMemberInfoRedisDTO) redisUtils.get(RedisKeys.getResiGroupMemberInfoKey(groupId,userId)); + (ResiGroupMemberInfoRedisDTO) redisUtils.get(ResiGroupRedisKeys.getResiGroupMemberInfoKey(groupId,userId)); //如果缓存中没有该成员数据 - if(null == memberCache && StringUtils.isNotBlank(memberCache.getUserId())){ + if(null == memberCache || StringUtils.isNotBlank(memberCache.getUserId())){ Map param = new HashMap<>(); param.put(TopicConstant.CUSTOMER_USER_ID,userId); param.put(TopicConstant.RESI_GROUP_ID,groupId); @@ -152,7 +153,7 @@ public class ResiGroupMemberRedis { **/ public ResiGroupMemberInfoRedisResultDTO getKeys(String groupId){ Set groupMemberKeys = - redisUtils.keys(RedisKeys.getResiGroupMemberInfoKey(groupId,"*")); + redisUtils.keys(ResiGroupRedisKeys.getResiGroupMemberInfoKey(groupId,"*")); Map memberMap = new HashMap<>(NumConstant.ONE_HUNDRED); for(String key : groupMemberKeys){ ResiGroupMemberInfoRedisDTO member = (ResiGroupMemberInfoRedisDTO)redisUtils.get(key); diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/ResiGroupMemberService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/ResiGroupMemberService.java index a9cdb93a94..1e57b0c4e2 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/ResiGroupMemberService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/ResiGroupMemberService.java @@ -114,16 +114,16 @@ public interface ResiGroupMemberService extends BaseService> getGroupMemberList(GroupMemberListFormDTO groupMemberListFormDTO); + List getGroupMemberList(GroupMemberListFormDTO groupMemberListFormDTO); /** * @return com.epmet.commons.tools.utils.Result> @@ -132,7 +132,7 @@ public interface ResiGroupMemberService extends BaseService> getApplyingMember(ApplyingMemberFormDTO applyingMemberFormDTO); + List getApplyingMember(ApplyingMemberFormDTO applyingMemberFormDTO); /** * @param agreeApplyFormDTO @@ -141,7 +141,7 @@ public interface ResiGroupMemberService extends BaseService> getGroupMemberList(GroupMemberListFormDTO groupMemberListFormDTO) { + public List getGroupMemberList(GroupMemberListFormDTO groupMemberListFormDTO) { int pageIndex = (groupMemberListFormDTO.getPageNo() - NumConstant.ONE) * groupMemberListFormDTO.getPageSize(); groupMemberListFormDTO.setPageNo(pageIndex); List list = baseDao.selectListGroupMember(groupMemberListFormDTO); @@ -258,9 +259,11 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl>().ok(list); + return list; } /** @@ -271,7 +274,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl> getApplyingMember(ApplyingMemberFormDTO applyingMemberFormDTO) { + public List getApplyingMember(ApplyingMemberFormDTO applyingMemberFormDTO) { int pageIndex = (applyingMemberFormDTO.getPageNo() - NumConstant.ONE) * applyingMemberFormDTO.getPageSize(); applyingMemberFormDTO.setPageNo(pageIndex); List list = baseDao.selectListApplyingMember(applyingMemberFormDTO); @@ -293,10 +296,12 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl>().ok(list); + return list; } /** @@ -307,17 +312,17 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl getTopicDetail(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicDetailFormDTO topicDetailFormDTO ){ + public Result getTopicDetail(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicDetailFormDTO topicDetailFormDTO ){ ValidatorUtils.validateEntity(topicDetailFormDTO); return topicService.getTopicDetail(tokenDto,topicDetailFormDTO.getTopicId()); } @@ -68,7 +69,7 @@ public class ResiTopicController { * @Date 2020.04.01 10:36 **/ @PostMapping("getpasttopiclist") - public Result> getPastTopicList(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicPageFormDTO topicPageFormDTO){ + public Result> getPastTopicList(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicPageFormDTO topicPageFormDTO){ topicPageFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(topicPageFormDTO); return topicService.getPastTopicList(tokenDto,topicPageFormDTO); @@ -78,12 +79,12 @@ public class ResiTopicController { * @Description 查看组内最近十条话题 * @Param tokenDto * @Param ResiTopicDefaultPageFormDTO - * @return Result> + * @return Result> * @Author wangc * @Date 2020.04.02 00:01 **/ @PostMapping("getlatesttopics") - public Result> getLatestTopics(@LoginUser TokenDto tokenDto,@RequestBody ResiTopicDefaultPageFormDTO topicDefaultPageFormDTO){ + public Result> getLatestTopics(@LoginUser TokenDto tokenDto,@RequestBody ResiTopicDefaultPageFormDTO topicDefaultPageFormDTO){ ValidatorUtils.validateEntity(topicDefaultPageFormDTO); return topicService.getLatestTopics(tokenDto,topicDefaultPageFormDTO.getGroupId()); } @@ -185,4 +186,26 @@ public class ResiTopicController { return topicService.getTopicDetailGov(topicDetailFormDTO.getTopicId()); } + /** + * @Description 根据topicId查询话题信息 (议题详情——话题信息) + * @param topicInfo + * @author zxc + * @date 2020/5/11 14:15 + */ + @PostMapping(value = "selectdetail") + public Result selectDetail(@RequestBody TopicInfoFormDTO topicInfo){ + return new Result().ok(topicService.selectDetail(topicInfo)); + } + + /** + * @param topicId + * @return + * @Author sun + * @Description 根据话题Id查询话题信息 + **/ + @PostMapping(value = "gettopicbyid/{topicId}") + public Result getTopicById(@PathVariable("topicId") String topicId){ + return new Result().ok(topicService.getTopicById(topicId)); + } + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java index 7c602bc126..95d679080a 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java @@ -21,7 +21,10 @@ package com.epmet.modules.topic.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.modules.topic.entity.ResiTopicEntity; import com.epmet.resi.group.dto.topic.ResiTopicDTO; +import com.epmet.resi.group.dto.topic.TopicInfoDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO; +import com.epmet.resi.group.dto.topic.result.ResiTopicIncludeIssueInfoResultDTO; +import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -49,11 +52,11 @@ public interface ResiTopicDao extends BaseDao { /** * @Description 查询该组内最近十条话题信息 * @Param groupId - * @return List + * @return List * @Author wangc * @Date 2020.04.01 09:40 **/ - List getLatestTenTopics(@Param("groupId")String groupId,@Param("userId")String userId); + List getLatestTenTopics(@Param("groupId")String groupId,@Param("userId")String userId); /** * @Description 查看历史话题(分页,允许状态筛选) @@ -64,6 +67,15 @@ public interface ResiTopicDao extends BaseDao { **/ List getPastTopics(ResiTopicPageFormDTO topicPageFormDTO); + /** + * @Description 查看历史话题(分页,允许状态筛选) + * @param topicPageFormDTO + * @return List 每个实体类里包含shiftIssueFlag和issueId字段 + * @author wangc + * @date 2020.05.11 16:06 + **/ + List getTopicsIncludeIssueInfoByConditions(ResiTopicPageFormDTO topicPageFormDTO); + /** * @Description 修改话题 * @Param ResiTopicEntity.class @@ -100,4 +112,12 @@ public interface ResiTopicDao extends BaseDao { * @Date 2020.04.01 15:21 **/ List selectTopicList(ResiTopicDTO resiTopicDTO); + + /** + * @Description 根据topicId查询话题信息 (议题详情——话题信息) + * @param formDTO + * @author zxc + * @date 2020/5/11 15:28 + */ + TopicInfoDTO selectDetail(TopicInfoFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/entity/ResiTopicEntity.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/entity/ResiTopicEntity.java index c3f9bfc0b1..d16ba57c73 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/entity/ResiTopicEntity.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/entity/ResiTopicEntity.java @@ -23,7 +23,7 @@ import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import lombok.Data; import lombok.EqualsAndHashCode; -import java.util.Date; + /** * 话题信息表 @@ -83,4 +83,14 @@ public class ResiTopicEntity extends BaseEpmetEntity { */ private String dimension; + /** + * 议题Id + */ + private String issueId; + + /** + * 是否转为议题标识 true:已转为议题 false:未转为议题 + * */ + private Boolean shiftIssue; + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java index b15e4b6b44..74cc6c3633 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java @@ -26,10 +26,14 @@ import com.epmet.modules.topic.entity.ResiTopicEntity; import com.epmet.resi.group.dto.member.form.RemoveMemberFormDTO; import com.epmet.resi.group.dto.topic.ResiTopicDTO; +import com.epmet.resi.group.dto.topic.TopicInfoDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicOperationFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO; +import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO; +import com.epmet.resi.group.dto.topic.result.ResiTopicIncludeIssueDetailResultDTO; +import com.epmet.resi.group.dto.topic.result.ResiTopicIncludeIssueInfoResultDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; @@ -122,7 +126,7 @@ public interface ResiTopicService extends BaseService { * @Author wangc * @Date 2020.04.01 08:59 **/ - Result> getLatestTopics(TokenDto tokenDto, String groupId); + Result> getLatestTopics(TokenDto tokenDto, String groupId); /** * @return Result> @@ -132,7 +136,7 @@ public interface ResiTopicService extends BaseService { * @Author wangc * @Date 2020.04.01 10:36 **/ - Result> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO); + Result> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO); /** * @return Result @@ -172,7 +176,7 @@ public interface ResiTopicService extends BaseService { * @Author wangc * @Date 2020.04.01 15:56 **/ - Result getTopicDetail(TokenDto tokenDto, String topicId); + Result getTopicDetail(TokenDto tokenDto, String topicId); /** * @return List @@ -217,4 +221,20 @@ public interface ResiTopicService extends BaseService { **/ Result getTopicDetailGov(String topicId); + /** + * @Description 根据topicId查询话题信息 (议题详情——话题信息) + * @param formDTO + * @author zxc + * @date 2020/5/11 14:16 + */ + TopicInfoDTO selectDetail(TopicInfoFormDTO formDTO); + + /** + * @param topicId + * @return + * @Author sun + * @Description 根据话题Id查询话题信息 + **/ + ResiTopicDTO getTopicById(String topicId); + } \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java index 0733a02226..6e1927f82c 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java @@ -29,9 +29,12 @@ import com.epmet.commons.tools.redis.RedisKeys; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.IssueInitiatorFormDTO; import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.IssueInitiatorResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.modules.constant.GroupMemberConstant; +import com.epmet.modules.constant.ResiGroupRedisKeys; import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.group.dao.ResiGroupDao; import com.epmet.modules.group.dao.ResiGroupStatisticalDao; @@ -60,10 +63,14 @@ import com.epmet.resi.group.dto.member.ResiGroupMemberInfoRedisDTO; import com.epmet.resi.group.dto.member.form.RemoveMemberFormDTO; import com.epmet.resi.group.dto.member.result.ResiGroupMemberInfoRedisResultDTO; import com.epmet.resi.group.dto.topic.ResiTopicDTO; +import com.epmet.resi.group.dto.topic.TopicInfoDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicOperationFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO; +import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO; +import com.epmet.resi.group.dto.topic.result.ResiTopicIncludeIssueDetailResultDTO; +import com.epmet.resi.group.dto.topic.result.ResiTopicIncludeIssueInfoResultDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; @@ -115,6 +122,9 @@ public class ResiTopicServiceImpl extends BaseServiceImpl> getLatestTopics(TokenDto tokenDto, String groupId) { + public Result> getLatestTopics(TokenDto tokenDto, String groupId) { if (null == tokenDto) { logger.error(ModuleConstant.USER_NOT_NULL); throw new RenException(ModuleConstant.USER_NOT_NULL); } - if (StringUtils.isBlank(groupId)) { - return new Result>().error(); - } - //1.查询话题列表 - List lastestTenTopics = + List latestTenTopics = baseDao.getLatestTenTopics(groupId, tokenDto.getUserId()); + if(null != latestTenTopics && latestTenTopics.size() > 0) { - if(null != lastestTenTopics && lastestTenTopics.size() > 0) { - - //2.遍历存储用户信息 从数据库中查找 - /*List userIdList = new ArrayList<>(); - for (ResiTopicInfoResultDTO topic : lastestTenTopics) { - userIdList.add(topic.getUserId()); - } - UserResiInfoListFormDTO formDTO = new UserResiInfoListFormDTO(); - formDTO.setUserIdList(userIdList); - Result> userResiInfoDTOListResult = epmetUserFeignClient.getUserResiInfoList(formDTO); - setUserInfo(userResiInfoDTOListResult, lastestTenTopics); - */ //2.2从缓存中查找用户信息 - setCacheUserInfo(groupId,lastestTenTopics); + setCacheUserInfoWithIssue(groupId,latestTenTopics); } - return new Result>().ok(lastestTenTopics); + return new Result>().ok(latestTenTopics); } /** @@ -315,36 +310,22 @@ public class ResiTopicServiceImpl extends BaseServiceImpl> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO) { + public Result> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO) { //1.查询历史话题列表 topicPageFormDTO.setUserId(topicPageFormDTO.getUserId()); topicPageFormDTO.setPageNo((topicPageFormDTO.getPageNo() - NumConstant.ONE) * topicPageFormDTO.getPageSize()); - List pastTopics = - baseDao.getPastTopics(topicPageFormDTO); - + List pastTopics = + baseDao.getTopicsIncludeIssueInfoByConditions(topicPageFormDTO); if (null != pastTopics && pastTopics.size() > 0) { - /* - //2.遍历用户信息 - List userIdList = new ArrayList<>(); - for (ResiTopicInfoResultDTO topic : pastTopics) { - userIdList.add(topic.getUserId()); + //2. 在缓存中拉取用户信息 + setCacheUserInfoWithIssue(topicPageFormDTO.getGroupId(), pastTopics); } - UserResiInfoListFormDTO formDTO = new UserResiInfoListFormDTO(); - formDTO.setUserIdList(userIdList); - Result> userResiInfoDTOListResult = epmetUserFeignClient.getUserResiInfoList(formDTO); - setUserInfo(userResiInfoDTOListResult, pastTopics); - - */ - - //2.2 在缓存中拉取用户信息 - setCacheUserInfo(topicPageFormDTO.getGroupId(), pastTopics); - } - return new Result>().ok(pastTopics); + return new Result>().ok(pastTopics); } /** @@ -505,19 +486,21 @@ public class ResiTopicServiceImpl extends BaseServiceImpl getTopicDetail(TokenDto tokenDto, String topicId) { + public Result getTopicDetail(TokenDto tokenDto, String topicId) { //1.获取话题基本信息 ResiTopicEntity topicDetail = baseDao.selectById(topicId); if(null == topicDetail || !StringUtils.equals(topicDetail.getId(),topicId)){ logger.error(ModuleConstant.NO_SUCH_TOPIC); throw new RenException(ModuleConstant.NO_SUCH_TOPIC); } - ResiTopicDetailResultDTO resultDTO = new ResiTopicDetailResultDTO(); + ResiTopicIncludeIssueDetailResultDTO resultDTO = + ConvertUtils.sourceToTarget(topicDetail,ResiTopicIncludeIssueDetailResultDTO.class); resultDTO.setTopicId(topicId); resultDTO.setReleaseTime(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(topicDetail.getCreatedTime())); resultDTO.setTopicContent(topicDetail.getTopicContent()); resultDTO.setReleaseAddress(topicDetail.getAddress()); resultDTO.setTopicStatus(topicDetail.getStatus()); + resultDTO.setShiftIssueFlag(topicDetail.getShiftIssue()); //2.查询话题附件 QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq(FieldConstant.DEL_FLAG,NumConstant.ZERO_STR); @@ -537,11 +520,11 @@ public class ResiTopicServiceImpl extends BaseServiceImpl().ok(resultDTO); + return new Result().ok(resultDTO); } /** @@ -703,7 +686,22 @@ public class ResiTopicServiceImpl extends BaseServiceImpl> getPastTopicListGov(ResiTopicPageFormDTO topicPageFormDTO) { - return getPastTopicList(null,topicPageFormDTO); + //1.查询历史话题列表 + + topicPageFormDTO.setUserId(topicPageFormDTO.getUserId()); + + topicPageFormDTO.setPageNo((topicPageFormDTO.getPageNo() - NumConstant.ONE) * topicPageFormDTO.getPageSize()); + + List pastTopics = + baseDao.getPastTopics(topicPageFormDTO); + + if (null != pastTopics && pastTopics.size() > 0) { + + //2. 在缓存中拉取用户信息 + setCacheUserInfo(topicPageFormDTO.getGroupId(), pastTopics); + } + return new Result>().ok(pastTopics); + } /** @@ -720,7 +718,12 @@ public class ResiTopicServiceImpl extends BaseServiceImpl getTopicDetailGov(String topicId) { - return getTopicDetail(null,topicId); + Result result = getTopicDetail(null,topicId); + if(result.success() && null != result.getData() && StringUtils.isNotBlank(result.getData().getTopicId())){ + return new Result().ok(ConvertUtils.sourceToTarget(result.getData(),ResiTopicDetailResultDTO.class)); + } + logger.error(ModuleConstant.NO_SUCH_TOPIC); + throw new RenException(ModuleConstant.NO_SUCH_TOPIC); } /** @@ -739,7 +742,7 @@ public class ResiTopicServiceImpl extends BaseServiceImpl + * @return void + * @Author wangc + * @Date 2020.04.14 10:32 + **/ + private void setCacheUserInfoWithIssue(String groupId ,List topics) { + + //1.初始化存储缺失缓存信息的组员Id的容器,默认去重 + Set usersNotInCache = new HashSet<>(); + + //2.读取用户缓存信息 + ResiGroupMemberInfoRedisResultDTO memberRedis = resiGroupMemberRedis.getKeys(groupId); + if (null != memberRedis && null != memberRedis.getMemberKeys() && null != memberRedis.getMemberMap()) { + String keyPrefix = ResiGroupRedisKeys.getResiGroupMemberInfoKey(groupId, ""); + for (ResiTopicIncludeIssueInfoResultDTO topic : topics) { + //缓存中有该用户的key + if (memberRedis.getMemberKeys().contains(keyPrefix.concat(topic.getUserId()))) { + ResiGroupMemberInfoRedisDTO memberInfoCache = memberRedis.getMemberMap().get(topic.getUserId()); + if (null != memberInfoCache) { + //缓存中有该用户信息 + topic.setReleaseUserName(StringUtils.isBlank(memberInfoCache.getUserShowName())?"":memberInfoCache.getUserShowName()); + topic.setReleaseUserHeadPhoto(StringUtils.isBlank(memberInfoCache.getUserHeadPhoto())?"":memberInfoCache.getUserHeadPhoto()); + } else { + //缓存中没有该用户信息 + usersNotInCache.add(topic.getUserId()); + } + } else { + //缓存中没有该用户的key + usersNotInCache.add(topic.getUserId()); + } + } + } + + //3.如果存在缺失缓存的组员,去数据库中查找,并存入缓存 + if (usersNotInCache.size() > 0) { + Map> topicMap + = topics.stream().collect(Collectors.groupingBy(ResiTopicIncludeIssueInfoResultDTO::getUserId)); + List userIds = new ArrayList<>(usersNotInCache); + Result> result = + epmetUserFeignClient.getUserResiInfoList(new UserResiInfoListFormDTO(userIds)); + + if (result.success() && null != result.getData() && result.getData().size() > 0) { + for (UserResiInfoResultDTO user : result.getData()) { + ResiTopicIncludeIssueInfoResultDTO topic = + topicMap.get(user.getUserId()).get(0); + topic.setReleaseUserHeadPhoto(user.getHeadPhoto()); + topic.setReleaseUserName(user.getShowName()); + + //存入缓存 + ResiGroupMemberInfoRedisDTO memberRedisDTO = new ResiGroupMemberInfoRedisDTO(); + ResiGroupMemberDTO memberMySql = resiGroupMemberDao.selectGroupMemberInfo(groupId, user.getUserId()); + memberRedisDTO.setMemberStatus(memberMySql.getStatus()); + memberRedisDTO.setUserId(user.getUserId()); + memberRedisDTO.setUserShowName(user.getShowName()); + memberRedisDTO.setEnterGroupType(memberMySql.getEnterGroupType()); + memberRedisDTO.setGroupLeaderFlag(memberMySql.getGroupLeaderFlag()); + memberRedisDTO.setUserHeadPhoto(user.getHeadPhoto()); + memberRedisDTO.setGroupId(groupId); + resiGroupMemberRedis.set(memberRedisDTO); + } + } else { + + logger.warn(ModuleConstant.USER_INFO_LIST_NOT_FOUND); + } + } + + } + /** * @Description 更新组统计缓存信息 * @Param groupId @@ -830,6 +904,40 @@ public class ResiTopicServiceImpl extends BaseServiceImpl wrapper = new QueryWrapper<>(); + wrapper.eq(FieldConstant.DEL_FLAG,NumConstant.ZERO_STR); + wrapper.eq(TopicConstant.TOPIC_ID,formDTO.getTopicId()); + wrapper.orderByAsc(TopicConstant.SORT); + List attachments = resiTopicAttachmentDao.selectList(wrapper); + List attachmentUrls = new ArrayList<>(); + for(ResiTopicAttachmentEntity attachment : attachments){ + attachmentUrls.add(attachment.getAttachmentUrl()); + } + topicInfo.setTopicImgs(attachmentUrls); + //话题发起人 + IssueInitiatorFormDTO issueInitiator = new IssueInitiatorFormDTO(); + issueInitiator.setUserId(topicInfo.getTopicId()); + Result issueInitiatorResult = epmetUserFeignClient.selectIssueInitiator(issueInitiator); + topicInfo.setPublishedUser(issueInitiatorResult.getData().getIssueInitiator()); + return topicInfo; + } + + @Override + public ResiTopicDTO getTopicById(String topicId) { + ResiTopicEntity entity = baseDao.selectById(topicId); + return ConvertUtils.sourceToTarget(entity, ResiTopicDTO.class); + } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/db/migration/db.sql b/epmet-module/resi-group/resi-group-server/src/main/resources/db/migration/db.sql index 04a3e6e9bf..a966031574 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/resources/db/migration/db.sql +++ b/epmet-module/resi-group/resi-group-server/src/main/resources/db/migration/db.sql @@ -4,4 +4,30 @@ ALTER TABLE resi_group_operation ADD ( READ_FLAG VARCHAR (8) DEFAULT NULL COMMENT '审核人员已读未读标识(未读:unread 界面显示红点; 已读:read 不显示红点)', MESSAGE_TEXT VARCHAR (500) DEFAULT NULL COMMENT '消息通知内容' - ); \ No newline at end of file + ); + + +/* + Navicat Premium Data Transfer + + Source Server : 党群e事通开发库 + Source Server Type : MySQL + Source Server Version : 50728 + Source Host : 192.168.1.130:3306 + Source Schema : epmet_resi_group + + Target Server Type : MySQL + Target Server Version : 50728 + File Encoding : 65001 + + Date: 11/05/2020 14:00:00 +*/ +-- @Date 2020-05-11 14:00 +-- @Author wangc +-- @Description 数据库epmet_resi_group中的resi_topic(话题表)表新增两个字段,db语句: +ALTER TABLE RESI_TOPIC ADD ( + SHIFT_ISSUE tinyint(1) DEFAULT 0 NOT NULL COMMENT '是否转为议题,0:false,1:true', + ISSUE_ID VARCHAR (64) DEFAULT NULL COMMENT '议题ID,可为空' + ); + + diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml index 57ba94d5b6..62cef3f328 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml +++ b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml @@ -109,7 +109,7 @@ - SELECT topic.ID AS topicId, topic.GROUP_ID, @@ -117,7 +117,9 @@ topic.STATUS, topic.CREATED_TIME AS releaseTime, topic.CREATED_BY AS userId, - attachement2.firstPhoto, + topic.SHIFT_ISSUE AS shiftIssueFlag, + IFNULL(topic.ISSUE_ID,'') AS issueId, + IFNULL(attachement2.firstPhoto,'') AS firstPhoto, CASE WHEN topic.CREATED_BY = #{userId} THEN 'me' ELSE 'other' @@ -157,7 +159,56 @@ topic.STATUS, topic.CREATED_TIME AS releaseTime, topic.CREATED_BY AS userId, - attachement2.firstPhoto, + IFNULL(attachement2.firstPhoto,'') AS firstPhoto, + CASE + WHEN topic.CREATED_BY = #{userId} THEN 'me' + ELSE 'other' + END AS releaseUserFlag + FROM + RESI_TOPIC topic + LEFT JOIN + ( + SELECT + attachment.TOPIC_ID AS attachmentTopicId, + attachment.ATTACHMENT_URL as firstPhoto, + MIN(attachment.SORT) + FROM + RESI_TOPIC_ATTACHMENT attachment + WHERE + attachment.DEL_FLAG = '0' + GROUP BY attachment.TOPIC_ID + ) attachement2 + ON + topic.ID = attachement2.attachmentTopicId + + topic.DEL_FLAG = '0' + AND topic.GROUP_ID = #{groupId} + + AND 'hidden' ]]> + + + AND topic.STATUS = #{status} + + + + ORDER BY + topic.CREATED_TIME DESC + LIMIT #{pageNo},#{pageSize} + + + + + + SELECT + id AS topicId, + topic_content AS topicContent, + created_by AS publishedUser, + UNIX_TIMESTAMP( created_time ) AS publishedTime + FROM + resi_topic + WHERE + id = #{topicId} + AND del_flag = 0 + + diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/EvaluateInfoDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/EvaluateInfoDTO.java new file mode 100644 index 0000000000..6dd8446aef --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/EvaluateInfoDTO.java @@ -0,0 +1,26 @@ +package com.epmet.dto; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 评价信息 + */ +@Data +public class EvaluateInfoDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueCustomerParameterDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueCustomerParameterDTO.java new file mode 100644 index 0000000000..1058658f37 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueCustomerParameterDTO.java @@ -0,0 +1,96 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题客户参数定制表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueCustomerParameterDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 客户ID + */ + private String customerId; + + /** + * 参数键 eg:voting_time_limit + */ + private String parameterKey; + + /** + * 参数名 eg:表决期限 + */ + private String parameterName; + + /** + * 参数值 eg:10(天) + */ + private String parameterValue; + + /** + * 参数说明 eg:这个客户下所有的网格议题表决期限都是10天 + */ + private String description; + + /** + * 删除标志 0:未删除,1:已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueDTO.java new file mode 100644 index 0000000000..d92ea44b9d --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueDTO.java @@ -0,0 +1,146 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题详情表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题ID + */ + private String id; + + /** + * 议题状态 表决中:voting 已转项目:shift_project 已关闭:closed + */ + private String issueStatus; + + /** + * 来源类型 eg:resi_topic + */ + private String sourceType; + + /** + * 来源ID eg:2223232(当SOURCE_TYPE为"resi_topic"时,这里指话题的ID) + */ + private String sourceId; + + /** + * 关闭理由 【未关闭时可以为空】关闭议题时必填的理由,转项目后而且已经结案,这个字段不回写 + */ + private String closeReason; + + /** + * 解决类型 【未关闭时可以为空】已解决resloved、未解决unresloved,对应在关闭议题时所选的checkbox,转项目后而且已经结案,这个字段不回写 + */ + private String resolveType; + + /** + * 议题名称 最多20字 + */ + private String issueTitle; + + /** + * 建议 最多1000字 + */ + private String suggestion; + + /** + * 客户ID + */ + private String customerId; + + /** + * 网格ID 居民端议题对应一个网格Id + */ + private String gridId; + + /** + * 所属机关 【数据权限-非必填】11:22:33(agencyId)数据权限控制 + */ + private String orgIdPath; + + /** + * 组织ID 【数据权限-非必填】agencyId + */ + private String orgId; + + /** + * 表决截止日期 + */ + private Date votingDeadline; + + /** + * 表决发起日期(转议题日期) + */ + private Date decidedTime; + + /** + * 转项目日期 (服务间调用日期一致性) + */ + private Date shiftedTime; + + /** + * 关闭日期 + */ + private Date closedTime; + + /** + * 删除标识 0未删除、1已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueProcessDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueProcessDTO.java new file mode 100644 index 0000000000..7f0cbd1977 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueProcessDTO.java @@ -0,0 +1,96 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题进展记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueProcessDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 操作状态 - 表决中:voting 已转项目:shift_project 已关闭:closed + */ + private String issueStatus; + + /** + * 组织类型 操作人所属机构类型(机构:agency | 部门:dept | 网格:grid)操作人可能来源于居民端和政府段,但是只有在“转议题”的时候才是居民端拥有组长权限的人操作,所以当这条记录是转议题时,该记录为grid,ORD_ID相应的也为GRID_ID + */ + private String orgType; + + /** + * 组织ID 操作人所属机构ID(对应的有网格ID、部门ID、机构ID) + */ + private String orgId; + + /** + * 操作说明 (节点的说明文案,包含三个节点的文案说明【转议题】、【已关闭】、【转项目】) + */ + private String operationExplain; + + /** + * 删除标识 0未删除、1已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueProjectRelationDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueProjectRelationDTO.java new file mode 100644 index 0000000000..60f2ee0e97 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueProjectRelationDTO.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.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题项目关系表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueProjectRelationDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID 主键ID + */ + private String id; + + /** + * 议题ID 议题ID + */ + private String issueId; + + /** + * 项目ID 项目ID + */ + private String projectId; + + /** + * 删除标识 0:未删除1:已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueSatisfactionDetailDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueSatisfactionDetailDTO.java new file mode 100644 index 0000000000..04193ca547 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueSatisfactionDetailDTO.java @@ -0,0 +1,86 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题满意度调查记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueSatisfactionDetailDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 评论 - 最多300字 + */ + private String comment; + + /** + * 满意度 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 删除标识 0未删除、1已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueSatisfactionStatisticalDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueSatisfactionStatisticalDTO.java new file mode 100644 index 0000000000..3e473491d6 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueSatisfactionStatisticalDTO.java @@ -0,0 +1,91 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题满意度调查统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueSatisfactionStatisticalDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 一般满意数 + */ + private Integer goodCount; + + /** + * 非常满意数 + */ + private Integer perfectCount; + + /** + * 不满意数 + */ + private Integer badCount; + + /** + * 删除标识 0未删除、1已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteDetailDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteDetailDTO.java new file mode 100644 index 0000000000..6347f25532 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteDetailDTO.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.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题表决记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueVoteDetailDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 态度 - opposition(反对)support(赞成) + */ + private String attitude; + + /** + * 删除标识 0未删除、1已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDTO.java new file mode 100644 index 0000000000..1cee6baee6 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDTO.java @@ -0,0 +1,91 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题表决统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueVoteStatisticalDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 支持数 + */ + private Integer supportCount; + + /** + * 反对数 + */ + private Integer oppositionCount; + + /** + * 应表决数 + */ + private Integer votableCount; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 删除标识 0未删除、1已删除 + */ + private String delFlag; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDailyDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDailyDTO.java new file mode 100644 index 0000000000..73292ac02d --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/IssueVoteStatisticalDailyDTO.java @@ -0,0 +1,116 @@ +/** + * 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 java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 议题表决按天统计表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-05-11 + */ +@Data +public class IssueVoteStatisticalDailyDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private String id; + + /** + * 议题ID + */ + private String issueId; + + /** + * 统计日期 yyyy-MM-dd + */ + private Date statisticalDate; + + /** + * 到该日的总赞成数 + */ + private Integer supportCount; + + /** + * 到该日的总反对数 + */ + private Integer oppositionCount; + + /** + * 到该日的总票数 + */ + private Integer totalCount; + + /** + * 该日增量 + */ + private Integer todayIncrement; + + /** + * 该日赞成增量 + */ + private Integer supportIncrement; + + /** + * 该日反对增量 + */ + private Integer oppositionIncrement; + + /** + * 到该日的应表决数 + */ + private Integer votableCount; + + /** + * 删除标识 0未删除、1已删除 + */ + 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-hall/resi-hall-client/src/main/java/com/epmet/dto/PolyLineDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/PolyLineDTO.java new file mode 100644 index 0000000000..838dfbad15 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/PolyLineDTO.java @@ -0,0 +1,33 @@ +package com.epmet.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * 投票折线数据 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class PolyLineDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 投票日期 + */ + private Long voteDtae; + + /** + * 当日赞成票数量 + */ + private Integer supportIncrement; + + /** + * 当日反对票数量 + */ + private Integer oppositionIncrement; + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/TopicInfoDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/TopicInfoDTO.java new file mode 100644 index 0000000000..6dcf993139 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/TopicInfoDTO.java @@ -0,0 +1,43 @@ +package com.epmet.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * 话题详情(议题详情中的) + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class TopicInfoDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 话题id + */ + private String topicId; + + /** + * 话题内容 + */ + private String topicContent; + + /** + * 图片列表 + */ + private List topicImgs; + + /** + * 话题发表人(山东路168-尹女士) + */ + private String publishedUser; + + /** + * 话题发表时间 (时间戳 毫秒级) + */ + private Long publishedTime; + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/BelongGridNameFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/BelongGridNameFormDTO.java new file mode 100644 index 0000000000..8df402c618 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/BelongGridNameFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 查询所属网格 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class BelongGridNameFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 网格id + */ + private String gridId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java deleted file mode 100644 index fc93172558..0000000000 --- a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/DemoTestFormDTO.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.epmet.dto.form; - -import lombok.Data; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; - -/** - * @Description 测试入参 - * @Author yinzuomei - * @Date 2020/5/8 10:00 - */ -@Data -public class DemoTestFormDTO implements Serializable { - private static final long serialVersionUID = 4859779755214502427L; - @NotBlank(message = "客户id不能为空") - private String customerId; - @NotBlank(message = "网格id不能为空") - private String gridId; -} - diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/EvaluateFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/EvaluateFormDTO.java new file mode 100644 index 0000000000..4f3b88f227 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/EvaluateFormDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 提交满意度评价 + */ +@Data +public class EvaluateFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String IssueId; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价内容 + */ + private String comment; + + /** + * 用户ID + */ + private String userId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java new file mode 100644 index 0000000000..11c8bc0d5e --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已关闭 + */ +@Data +public class EvaluationListFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String IssueId; + + /** + * 页码 + */ + private Integer pageNo; + + /** + * 每页数量 + */ + private Integer pageSize; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/InitEvaluationFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/InitEvaluationFormDTO.java new file mode 100644 index 0000000000..c61af4f268 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/InitEvaluationFormDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class InitEvaluationFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String IssueId; + + /** + * 创建人 + */ + private String userId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueDetailFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueDetailFormDTO.java new file mode 100644 index 0000000000..84b0d8f5e6 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueDetailFormDTO.java @@ -0,0 +1,21 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 议题详情入参 + * @Author zxc + * @Date 2020/5/11 9:30 + */ +@Data +public class IssueDetailFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214503489L; + + @NotBlank(message = "议题id不能为空") + private String issueId; + +} + diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueIdFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueIdFormDTO.java new file mode 100644 index 0000000000..9fe2c9f69c --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueIdFormDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 议题Id + * @Author zxc + */ +@Data +public class IssueIdFormDTO implements Serializable { + private static final long serialVersionUID = 4859779755214503489L; + + @NotBlank(message = "议题id不能为空") + private String issueId; + +} + diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueInitiatorFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueInitiatorFormDTO.java new file mode 100644 index 0000000000..00231b0b9d --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/IssueInitiatorFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 查询议题发起人dto + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class IssueInitiatorFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * userId 用户id + */ + private String userId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectEvaluateFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectEvaluateFormDTO.java new file mode 100644 index 0000000000..d70fe56a24 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectEvaluateFormDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 提交满意度评价——已转项目 + */ +@Data +public class ProjectEvaluateFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String projectId; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价内容 + */ + private String comment; + + /** + * 用户ID + */ + private String userId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectEvaluationListFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectEvaluationListFormDTO.java new file mode 100644 index 0000000000..6ba8cf9c1d --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectEvaluationListFormDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已转项目 + */ +@Data +public class ProjectEvaluationListFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String projectId; + + /** + * 页码 + */ + private Integer pageNo; + + /** + * 每页数量 + */ + private Integer pageSize; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectIdFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectIdFormDTO.java new file mode 100644 index 0000000000..318eae5dcf --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectIdFormDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 项目Id + * @Author zxc + */ +@Data +public class ProjectIdFormDTO implements Serializable { + private static final long serialVersionUID = 2887479755214503489L; + + @NotBlank(message = "项目id不能为空") + private String projectId; + +} + diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectInitEvaluationFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectInitEvaluationFormDTO.java new file mode 100644 index 0000000000..c57d2cc4be --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/ProjectInitEvaluationFormDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class ProjectInitEvaluationFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 项目Id + */ + private String projectId; + + /** + * 创建人 + */ + private String userId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/TopicInfoFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/TopicInfoFormDTO.java new file mode 100644 index 0000000000..cf85fae8c8 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/TopicInfoFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 查询话题信息 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class TopicInfoFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 话题id + */ + private String topicId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/UserResiInfoListFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/UserResiInfoListFormDTO.java new file mode 100644 index 0000000000..1a5fe5274c --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/UserResiInfoListFormDTO.java @@ -0,0 +1,22 @@ +package com.epmet.dto.form; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description userId集合 + * @Author yinzuomei + * @Date 2020/4/7 18:20 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class UserResiInfoListFormDTO implements Serializable { + private static final long serialVersionUID = -4454561042197166135L; + + private List userIdList; +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java new file mode 100644 index 0000000000..6bde30f08b --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 表决中 支持、反对 投票 + */ +@Data +public class VoteFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 议题Id + */ + private String IssueId; + + /** + * 态度 - opposition(反对)support(赞成) + */ + private String attitude; + + /** + * 创建人 + */ + private String createdBy; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/BelongGridNameResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/BelongGridNameResultDTO.java new file mode 100644 index 0000000000..5d7091a66d --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/BelongGridNameResultDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 查询所属网格 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class BelongGridNameResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 所属网格名称 eg:所属网格(网格所属机关单位名称-网格名称) + */ + private String belongsGridName; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java new file mode 100644 index 0000000000..0a286112d7 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java @@ -0,0 +1,47 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已关闭 + */ +@Data +public class EvaluationListResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价用户Id + */ + private String userId; + + /** + * 评价用户(山东路168-尹女士) + */ + private String userNickName; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价时间 + */ + private Long evaluateTime; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 用户头像 + */ + private String userHeadPhoto; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/InitEvaluationResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/InitEvaluationResultDTO.java new file mode 100644 index 0000000000..57fece2b4d --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/InitEvaluationResultDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dto.result; + +import com.epmet.dto.EvaluateInfoDTO; +import com.sun.org.apache.xpath.internal.operations.Bool; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class InitEvaluationResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价状态:true已评价,false未评价 + */ + private Boolean status; + + /** + * 评价信息 + */ + private EvaluateInfoDTO evaluateInfo; + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueDetailResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueDetailResultDTO.java new file mode 100644 index 0000000000..8769c93e5b --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueDetailResultDTO.java @@ -0,0 +1,49 @@ +package com.epmet.dto.result; + +import com.epmet.dto.TopicInfoDTO; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 议题详情回参 + * @CreateTime 2020/5/11 9:31 + */ +@Data +public class IssueDetailResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 议题标题 + */ + private String issueTitle; + + /** + * 议题状态(voting 已转项目:shift_project 已关闭:closed) + */ + private String issueStatus; + + /** + * 话题信息 + */ + private TopicInfoDTO topicInfo; + + /** + * 议题建议 + */ + private String issueSuggestion; + + /** + * 所属网格(网格所属机关单位名称-网格名称) + */ + private String belongsGridName; + + /** + * 议题发起人(山东路168-尹女士) + */ + private String issueInitiator; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java new file mode 100644 index 0000000000..08e0113ace --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 返回议题发起人dto eg:山东路178号——刘女士 + * @CreateTime 2020/5/11 10:49 + */ +@Data +public class IssueInitiatorResultDTO implements Serializable { + + /** + * 议题发起人(山东路168-尹女士) + */ + private String issueInitiator; + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueResultDTO.java new file mode 100644 index 0000000000..b278b9f585 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueResultDTO.java @@ -0,0 +1,48 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 议题详情回参 + * @CreateTime 2020/5/11 9:31 + */ +@Data +public class IssueResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 议题标题 + */ + private String issueTitle; + + /** + * 议题状态(voting 已转项目:shift_project 已关闭:closed) + */ + private String issueStatus; + + /** + * 议题建议 + */ + private String issueSuggestion; + + /** + * 网格Id + */ + private String gridId; + + /** + * 用户id + */ + private String userId; + + /** + * 话题Id + */ + private String topicId; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectEvaluateInfoResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectEvaluateInfoResultDTO.java new file mode 100644 index 0000000000..52950afad5 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectEvaluateInfoResultDTO.java @@ -0,0 +1,25 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 项目满意度评价信息 + */ +@Data +public class ProjectEvaluateInfoResultDTO implements Serializable { + + private static final long serialVersionUID = -3699103790181586654L; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectEvaluationListResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectEvaluationListResultDTO.java new file mode 100644 index 0000000000..dc40ce5a3c --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectEvaluationListResultDTO.java @@ -0,0 +1,47 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已关闭 + */ +@Data +public class ProjectEvaluationListResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价用户Id + */ + private String userId; + + /** + * 评价用户(山东路168-尹女士) + */ + private String userNickName; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价时间 + */ + private Long evaluateTime; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 用户头像 + */ + private String userHeadPhoto; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectInitEvaluationResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectInitEvaluationResultDTO.java new file mode 100644 index 0000000000..182cdff0fd --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/ProjectInitEvaluationResultDTO.java @@ -0,0 +1,26 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价初始化 + */ +@Data +public class ProjectInitEvaluationResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价状态:true已评价,false未评价 + */ + private Boolean status; + + /** + * 评价信息 + */ + private ProjectEvaluateInfoResultDTO evaluateInfo; + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/UserResiInfoResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/UserResiInfoResultDTO.java new file mode 100644 index 0000000000..6bdc1f6d2f --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/UserResiInfoResultDTO.java @@ -0,0 +1,64 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 用户注册信息返参DTO + * @Author yinzuomei + * @Date 2020/4/7 18:45 + */ +@Data +public class UserResiInfoResultDTO implements Serializable { + + /** + * 唯一标识 + */ + private String id; + + /** + * 用户Id(主键) user.id + */ + private String userId; + + /** + * 手机号(注册手机号) + */ + private String regMobile; + + /** + * 姓氏 + */ + private String surname; + + /** + * 名称 + */ + private String name; + + /** + * 街道 + */ + private String street; + + /** + * 小区名称 + */ + private String district; + + /** + * 楼栋单元 + */ + private String buildingAddress; + + /** + * 用户显示名称 + */ + private String showName; + + /** + * 用户头像 + */ + private String headPhoto; +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/VoteResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/VoteResultDTO.java new file mode 100644 index 0000000000..3d4db2594e --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/VoteResultDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 表决中议题详情——支持、反对数 + */ +@Data +public class VoteResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 表决状态:true已表决 false未表决 + */ + private Boolean voteFlag; + + /** + * 支持数量 + */ + private Integer supportCount; + + /** + * 反对数量 + */ + private Integer oppositionCount; + + +} diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/VotingTrendResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/VotingTrendResultDTO.java new file mode 100644 index 0000000000..4718a4f2f0 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/VotingTrendResultDTO.java @@ -0,0 +1,44 @@ +package com.epmet.dto.result; + +import com.epmet.dto.PolyLineDTO; +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * 议题表决折线图 + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class VotingTrendResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 应表决数量 + */ + private Integer shouldVoteCount; + + /** + * 实际表决数量 + */ + private Integer realityVoteCount; + + /** + * 截至今日赞成票总数 + */ + private Integer supportAmount; + + /** + * 截至今日反对票总数 + */ + private Integer oppositionAmount; + + /** + * 投票折线数据 + */ + private List polyLine; + +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/constat/HallConstat.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/constat/HallConstat.java new file mode 100644 index 0000000000..19af02540a --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/constat/HallConstat.java @@ -0,0 +1,14 @@ +package com.epmet.constat; + +/** + * @Author zxc + * @CreateTime 2020/5/13 18:02 + */ +public interface HallConstat { + + /** + * 调用epmet-user服务查询数据失败 + */ + String SELECT_USERINFO_EXCEPTION = "获取用户昵称、头像失败"; + +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/controller/IssueController.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/controller/IssueController.java new file mode 100644 index 0000000000..573ca80cbd --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/controller/IssueController.java @@ -0,0 +1,160 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.annotation.RequirePermission; +import com.epmet.commons.tools.enums.RequirePermissionEnum; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.service.IssueService; +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; + +/** + * @Description 居民端党群议事 + * @Author yinzuomei + * @Date 2020/5/11 9:04 + */ +@RestController +@RequestMapping("issue") +public class IssueController { + + @Autowired + private IssueService issueService; + + /** + * @Description 议题详情 + * @param issueDetail + * @author zxc + * @date 2020/5/11 9:42 + */ + @PostMapping(value = "/detail") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result detail(@RequestBody IssueDetailFormDTO issueDetail){ + return new Result().ok(issueService.detail(issueDetail)); + } + + /** + * @Description 议题表决折线图 + * @param formDTO + * @author zxc + */ + @PostMapping(value = "votingtrend") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result votingTrend(@RequestBody IssueIdFormDTO formDTO){ + return new Result().ok(issueService.votingTrend(formDTO)); + } + + /** + * @Description 支持议题 + * @param formDTO + * @author zxc + */ + @PostMapping(value = "support") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result support(@LoginUser TokenDto tokenDto, @RequestBody IssueIdFormDTO formDTO){ + issueService.support(tokenDto,formDTO); + return new Result(); + } + + /** + * @Description 反对议题 + * @param formDTO + * @author zxc + */ + @PostMapping(value = "oppose") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result oppose(@LoginUser TokenDto tokenDto,@RequestBody IssueIdFormDTO formDTO){ + issueService.oppose(tokenDto,formDTO); + return new Result(); + } + + /** + * @Description 表决中议题详情——支持、反对数 + * @param formDTO + * @author zxc + */ + @PostMapping(value = "vote") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result vote(@RequestBody IssueIdFormDTO formDTO){ + return new Result().ok(issueService.vote(formDTO)); + } + + /** + * @Description 满意度评价初始化——已关闭 + * @param tokenDto + * @param issueId + * @author zxc + */ + @PostMapping("initevaluation") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result initEvaluation(@LoginUser TokenDto tokenDto, @RequestBody IssueIdFormDTO issueId){ + return new Result().ok(issueService.initEvaluation(tokenDto,issueId)); + } + + /** + * @Description 满意度评价初始化——已转项目 + * @param tokenDto + * @param projectId + * @author zxc + */ + @PostMapping("projectinitevaluation") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result projectInitEvaluation(@LoginUser TokenDto tokenDto, @RequestBody ProjectIdFormDTO projectId){ + return new Result().ok(issueService.projectInitEvaluation(tokenDto,projectId)); + } + + /** + * @Description 提交满意度评价——已关闭的议题 + * @param formDTO + * @author zxc + */ + @PostMapping("evaluate") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result evaluate(@LoginUser TokenDto tokenDto,@RequestBody EvaluateFormDTO formDTO){ + issueService.evaluate(tokenDto,formDTO); + return new Result(); + } + + /** + * @Description 提交满意度评价——已转项目 + * @param formDTO + * @author zxc + */ + @PostMapping("projectevaluate") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result projectEvaluate(@LoginUser TokenDto tokenDto,@RequestBody ProjectEvaluateFormDTO formDTO){ + issueService.projectEvaluate(tokenDto,formDTO); + return new Result(); + } + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + @PostMapping("evaluationlist") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result> evaluationList(@RequestBody EvaluationListFormDTO formDTO){ + return new Result>().ok(issueService.evaluationList(formDTO)); + } + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + @PostMapping("projectevaluationlist") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL) + public Result> projectEvaluationList(@RequestBody ProjectEvaluationListFormDTO formDTO){ + return new Result>().ok(issueService.projectEvaluationList(formDTO)); + } + +} + diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/controller/ResiHallDemoController.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/controller/ResiHallDemoController.java deleted file mode 100644 index 56c01421a7..0000000000 --- a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/controller/ResiHallDemoController.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.epmet.controller; - -import com.epmet.commons.tools.utils.Result; -import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.dto.form.DemoTestFormDTO; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.web.bind.annotation.*; - -/** - * @Description 测试 - * @Author yinzuomei - * @Date 2020/5/7 22:47 - */ -@RestController -@RequestMapping("demo") -public class ResiHallDemoController { - private static final Logger logger = LoggerFactory.getLogger(ResiHallDemoController.class); - - @PostMapping("test") - public Result test(@RequestBody DemoTestFormDTO formDTO) { - logger.info(String.format("请求成功客户id[%s],网格id[%s]",formDTO.getCustomerId(),formDTO.getGridId())); - ValidatorUtils.validateEntity(formDTO); - return new Result().ok("resi-hall-server请求成功"); - } -} - diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java new file mode 100644 index 0000000000..2c7a8cb9b4 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java @@ -0,0 +1,43 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.IssueInitiatorFormDTO; +import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.IssueInitiatorResultDTO; +import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.feign.fallback.EpmetUserFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @author zxc + * @dscription + * @date 2020/5/11 10:32 + */ +//@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class,url = "localhost:8087") +@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class) +public interface EpmetUserFeignClient { + + /** + * @Description 查询议题发起人 + * @param formDTO + * @author zxc + * @date 2020/5/11 10:53 + */ + @PostMapping(value = "/epmetuser/userresiinfo/selectissueinitiator") + Result selectIssueInitiator(@RequestBody IssueInitiatorFormDTO formDTO); + + /** + * @Description 查询评价人和评价人头像 + * @param formDTO + * @author zxc + */ + @PostMapping("/epmetuser/userresiinfo/getuserresiinfolist") + Result> getUserResiInfoList(@RequestBody UserResiInfoListFormDTO formDTO); + + +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java new file mode 100644 index 0000000000..798449e944 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java @@ -0,0 +1,79 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.feign.fallback.GovIssueFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + + +/** + * @Description Feign调用gov-issue-server模块 + * @ClassName GovIssueFeignFallBack + */ +//@FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER, fallback = GovIssueFeignClientFallBack.class,url = "localhost:8101") +@FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER, fallback = GovIssueFeignClientFallBack.class) +public interface GovIssueFeignClient { + + /** + * @Description 议题详情 + * @param issueDetail + * @author zxc + */ + @PostMapping("/gov/issue/issue/detail") + Result detail(@RequestBody IssueDetailFormDTO issueDetail); + + /** + * @Description 表决中议题详情——支持、反对数 + * @param issueId + * @author zxc + */ + @PostMapping("/gov/issue/issuevotestatistical/votecount") + Result voteCount(@RequestBody IssueIdFormDTO issueId); + + /** + * @Description 议题表决折线图 + * @param issueId + * @author zxc + */ + @PostMapping("/gov/issue/issuevotestatistical/votingtrend") + Result votingTrend(@RequestBody IssueIdFormDTO issueId); + + /** + * @Description 表决中的 支持、反对 投票 + * @param issueId + * @author zxc + */ + @PostMapping("/gov/issue/issuevotedetail/vote") + Result vote(@RequestBody VoteFormDTO issueId); + + /** + * @Description 满意度评价初始化——已关闭 + * @param formDTO + * @author zxc + */ + @PostMapping("/gov/issue/issuesatisfactiondetail/initevaluation") + Result initEvaluation(@RequestBody InitEvaluationFormDTO formDTO); + + /** + * @Description 提交满意度评价 + * @param formDTO + * @author zxc + */ + @PostMapping("/gov/issue/issuesatisfactiondetail/evaluate") + Result evaluate(@RequestBody EvaluateFormDTO formDTO); + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + @PostMapping("/gov/issue/issuesatisfactiondetail/evaluationlist") + Result> evaluationList(@RequestBody EvaluationListFormDTO formDTO); + +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java new file mode 100644 index 0000000000..24090f6675 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java @@ -0,0 +1,24 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.BelongGridNameFormDTO; +import com.epmet.dto.result.BelongGridNameResultDTO; +import com.epmet.feign.fallback.GovOrgFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + + +/** + * @Description Feign调用gov-org-server模块 + * @ClassName GovOrgFeginFallBack + */ +//@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class,url = "localhost:8092") +@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class) +public interface GovOrgFeignClient { + + + @PostMapping("/gov/org/customergrid/getgridnamebygridid") + Result getGridNameByGridId(@RequestBody BelongGridNameFormDTO formDTO); +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovProjectFeignClient.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovProjectFeignClient.java new file mode 100644 index 0000000000..066f8c6404 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/GovProjectFeignClient.java @@ -0,0 +1,49 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.ProjectEvaluateFormDTO; +import com.epmet.dto.form.ProjectEvaluationListFormDTO; +import com.epmet.dto.form.ProjectInitEvaluationFormDTO; +import com.epmet.dto.result.ProjectEvaluationListResultDTO; +import com.epmet.dto.result.ProjectInitEvaluationResultDTO; +import com.epmet.feign.fallback.GovProjectFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + + +/** + * @Description Feign调用gov-project-server模块 + * @ClassName GovProjectFeignClient + */ +//@FeignClient(name = ServiceConstant.GOV_PROJECT_SERVER, fallback = GovProjectFeignClientFallBack.class,url = "localhost:8102") +@FeignClient(name = ServiceConstant.GOV_PROJECT_SERVER, fallback = GovProjectFeignClientFallBack.class) +public interface GovProjectFeignClient { + + /** + * @Description 提交满意度评价初始化——已转项目 + * @param formDTO + * @author zxc + */ + @PostMapping("/gov/project/projectsatisfactiondetail/projectinitevaluation") + Result projectInitEvaluation(@RequestBody ProjectInitEvaluationFormDTO formDTO); + + /** + * @Description 提交满意度评价——已转项目 + * @param projectEvaluate + * @author zxc + */ + @PostMapping("/gov/project/projectsatisfactiondetail/projectevaluate") + Result projectEvaluate(@RequestBody ProjectEvaluateFormDTO projectEvaluate); + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + @PostMapping("/gov/project/projectsatisfactiondetail/projectevaluationlist") + Result> projectEvaluationList(ProjectEvaluationListFormDTO formDTO); +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java new file mode 100644 index 0000000000..fa2a5cc182 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java @@ -0,0 +1,28 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.TopicInfoDTO; +import com.epmet.dto.form.TopicInfoFormDTO; +import com.epmet.feign.fallback.ResiGroupFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @author zxc + */ +//@FeignClient(name = ServiceConstant.RESI_GROUP_SERVER, fallback = ResiGroupFeignClientFallBack.class,url = "localhost:8095") +@FeignClient(name = ServiceConstant.RESI_GROUP_SERVER, fallback = ResiGroupFeignClientFallBack.class) +public interface ResiGroupFeignClient { + + /** + * @Description 获取话题详情 + * @param formDTO + * @author zxc + * @date 2020/5/11 15:42 + */ + @PostMapping("/resi/group/topic/selectdetail") + Result selectDetail(TopicInfoFormDTO formDTO); + + +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java new file mode 100644 index 0000000000..8cdf3782bb --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java @@ -0,0 +1,38 @@ +package com.epmet.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.dto.form.IssueInitiatorFormDTO; +import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.result.EvaluationListResultDTO; +import com.epmet.dto.result.IssueInitiatorResultDTO; +import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.feign.EpmetUserFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Auther zxc + * @Create 2020-05-11 10:33 + */ +@Component +public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { + + /** + * @Description 查询议题发起人 + * @param formDTO + * @author zxc + * @date 2020/5/11 10:52 + */ + @Override + public Result selectIssueInitiator(IssueInitiatorFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "selectIssueInitiator", formDTO); + } + + @Override + public Result> getUserResiInfoList(UserResiInfoListFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getUserResiInfoList", formDTO); + } +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java new file mode 100644 index 0000000000..0a9fb24d06 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java @@ -0,0 +1,55 @@ +package com.epmet.feign.fallback; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.ModuleUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.feign.GovIssueFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description Feign + * @ClassName GovIssueFeginFallBack + */ +@Component +public class GovIssueFeignClientFallBack implements GovIssueFeignClient { + + @Override + public Result detail(IssueDetailFormDTO issueDetail) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "detail", issueDetail); + } + + @Override + public Result voteCount(IssueIdFormDTO issueId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "voteCount", issueId); + } + + @Override + public Result votingTrend(IssueIdFormDTO issueId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "votingTrend", issueId); + } + + @Override + public Result vote(VoteFormDTO voteFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "vote", voteFormDTO); + } + + @Override + public Result initEvaluation(InitEvaluationFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "initEvaluation", formDTO); + } + + @Override + public Result evaluate(EvaluateFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "evaluate", formDTO); + } + + @Override + public Result> evaluationList(EvaluationListFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "evaluationList", formDTO); + } +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java new file mode 100644 index 0000000000..1c58c6f9ed --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java @@ -0,0 +1,23 @@ +package com.epmet.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.dto.form.BelongGridNameFormDTO; +import com.epmet.dto.result.BelongGridNameResultDTO; +import com.epmet.feign.GovOrgFeignClient; +import org.springframework.stereotype.Component; + +/** + * @Description Feign + * @ClassName GovOrgFeginFallBack + */ +@Component +public class GovOrgFeignClientFallBack implements GovOrgFeignClient { + + + @Override + public Result getGridNameByGridId(BelongGridNameFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridNameByGridId", formDTO); + } +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovProjectFeignClientFallBack.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovProjectFeignClientFallBack.java new file mode 100644 index 0000000000..a68d848f90 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/GovProjectFeignClientFallBack.java @@ -0,0 +1,37 @@ +package com.epmet.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.dto.form.ProjectEvaluateFormDTO; +import com.epmet.dto.form.ProjectEvaluationListFormDTO; +import com.epmet.dto.form.ProjectInitEvaluationFormDTO; +import com.epmet.dto.result.ProjectEvaluationListResultDTO; +import com.epmet.dto.result.ProjectInitEvaluationResultDTO; +import com.epmet.feign.GovProjectFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description Feign + * @ClassName GovProjectFeignClientFallBack + */ +@Component +public class GovProjectFeignClientFallBack implements GovProjectFeignClient { + + @Override + public Result projectInitEvaluation(ProjectInitEvaluationFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "projectInitEvaluation", formDTO); + } + + @Override + public Result projectEvaluate(ProjectEvaluateFormDTO projectEvaluate) { + return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "projectEvaluate", projectEvaluate); + } + + @Override + public Result> projectEvaluationList(ProjectEvaluationListFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "projectEvaluationList", formDTO); + } +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java new file mode 100644 index 0000000000..d75c1a0f91 --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java @@ -0,0 +1,21 @@ +package com.epmet.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.dto.TopicInfoDTO; +import com.epmet.dto.form.TopicInfoFormDTO; +import com.epmet.feign.ResiGroupFeignClient; +import org.springframework.stereotype.Component; + +/** + * @author zxc + */ +@Component +public class ResiGroupFeignClientFallBack implements ResiGroupFeignClient { + + @Override + public Result selectDetail(TopicInfoFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "selectDetail", formDTO); + } +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/IssueService.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/IssueService.java new file mode 100644 index 0000000000..7127ec9eee --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/IssueService.java @@ -0,0 +1,98 @@ +package com.epmet.service; + +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * @Author zxc + * @CreateTime 2020/5/11 9:44 + */ +public interface IssueService { + + /** + * @Description 议题详情 + * @param issueDetail + * @author zxc + * @date 2020/5/11 10:04 + */ + IssueDetailResultDTO detail(IssueDetailFormDTO issueDetail); + + /** + * @Description 议题表决折线图 + * @param issueId + * @author zxc + * @date 2020/5/12 8:48 + */ + VotingTrendResultDTO votingTrend(IssueIdFormDTO issueId); + + /** + * @Description 支持议题 + * @param issueId + * @author zxc + */ + void support(TokenDto tokenDto,IssueIdFormDTO issueId); + + /** + * @Description 反对议题 + * @param issueId + * @author zxc + */ + void oppose(TokenDto tokenDto,IssueIdFormDTO issueId); + + /** + * @Description 表决中议题详情——支持、反对数 + * @param issueId + * @author zxc + */ + VoteResultDTO vote(IssueIdFormDTO issueId); + + /** + * @Description 满意度评价初始化——已关闭 + * @param tokenDto + * @param issueId + * @author zxc + */ + InitEvaluationResultDTO initEvaluation(TokenDto tokenDto, IssueIdFormDTO issueId); + + /** + * @Description 满意度评价初始化——已转项目 + * @param tokenDto + * @param projectId + * @author zxc + */ + ProjectInitEvaluationResultDTO projectInitEvaluation(TokenDto tokenDto, ProjectIdFormDTO projectId); + + /** + * @Description 提交满意度评价——已关闭 + * @param evaluateFormDTO + * @author zxc + */ + void evaluate(TokenDto tokenDto,EvaluateFormDTO evaluateFormDTO); + + /** + * @Description 提交满意度评价——已转项目 + * @param projectEvaluateFormDTO + * @author zxc + */ + void projectEvaluate(TokenDto tokenDto, ProjectEvaluateFormDTO projectEvaluateFormDTO); + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + List evaluationList(EvaluationListFormDTO formDTO); + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + List projectEvaluationList(ProjectEvaluationListFormDTO formDTO); + +} diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java new file mode 100644 index 0000000000..1ab6c5e96e --- /dev/null +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java @@ -0,0 +1,254 @@ +package com.epmet.service.impl; + +import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.constat.HallConstat; +import com.epmet.dto.TopicInfoDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; +import com.epmet.feign.*; +import com.epmet.service.IssueService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @Author zxc + * @CreateTime 2020/5/11 9:46 + */ +@Service +public class IssueServiceImpl implements IssueService { + + @Autowired + private EpmetUserFeignClient userFeignClient; + @Autowired + private GovOrgFeignClient govOrgFeignClient; + @Autowired + private ResiGroupFeignClient resiGroupFeignClient; + @Autowired + private GovIssueFeignClient govIssueFeignClient; + @Autowired + private GovProjectFeignClient govProjectFeignClient; + + /** + * @Description 议题详情 + * @param issueDetail + * @author zxc + * @date 2020/5/11 10:04 + */ + @Override + public IssueDetailResultDTO detail(IssueDetailFormDTO issueDetail) { + IssueDetailResultDTO issueDetailResult = new IssueDetailResultDTO(); + //议题信息 + Result issueResultDTOResult = govIssueFeignClient.detail(issueDetail); + IssueResultDTO issueResult = issueResultDTOResult.getData(); + if (issueResult==null){ + return issueDetailResult; + } + BeanUtils.copyProperties(issueResult,issueDetailResult); + //话题发起人 + IssueInitiatorFormDTO initiatorFormDTO = new IssueInitiatorFormDTO(); + initiatorFormDTO.setUserId(issueResult.getUserId()); + if (!StringUtils.isBlank(issueResult.getUserId())) { + IssueInitiatorResultDTO initiatorResult = userFeignClient.selectIssueInitiator(initiatorFormDTO).getData(); + if (initiatorResult==null){ + issueDetailResult.setIssueInitiator(""); + }else { + issueDetailResult.setIssueInitiator(initiatorResult.getIssueInitiator()); + } + } + //网格名称 + BelongGridNameFormDTO belongGridName = new BelongGridNameFormDTO(); + belongGridName.setGridId(issueResult.getGridId()); + if (!StringUtils.isBlank(issueResult.getGridId())) { + BelongGridNameResultDTO belongGridNameResult = govOrgFeignClient.getGridNameByGridId(belongGridName).getData(); + if (belongGridNameResult==null){ + issueDetailResult.setBelongsGridName(""); + }else { + issueDetailResult.setBelongsGridName(belongGridNameResult.getBelongsGridName()); + } + } + //话题信息 + TopicInfoFormDTO topicInfoFormDTO = new TopicInfoFormDTO(); + topicInfoFormDTO.setTopicId(issueResult.getTopicId()); + if (!StringUtils.isBlank(issueResult.getTopicId())) { + TopicInfoDTO topicInfoDTOResult = resiGroupFeignClient.selectDetail(topicInfoFormDTO).getData(); + if (topicInfoDTOResult==null){ + issueDetailResult.setTopicInfo(new TopicInfoDTO()); + }else { + issueDetailResult.setTopicInfo(topicInfoDTOResult); + } + } + return issueDetailResult; + } + + /** + * @Description 议题表决折线图 + * @param issueId + * @author zxc + * @date 2020/5/12 8:49 + */ + @Override + public VotingTrendResultDTO votingTrend(IssueIdFormDTO issueId) { + Result votingTrendResultDTOResult = govIssueFeignClient.votingTrend(issueId); + return votingTrendResultDTOResult.getData(); + } + + /** + * @Description 支持议题 + * @param issueId + * @author zxc + */ + @Override + public void support(TokenDto tokenDto,IssueIdFormDTO issueId) { + VoteFormDTO voteFormDTO = new VoteFormDTO(); + voteFormDTO.setAttitude("support"); + voteFormDTO.setCreatedBy(tokenDto.getUserId()); + voteFormDTO.setIssueId(issueId.getIssueId()); + govIssueFeignClient.vote(voteFormDTO); + } + + /** + * @Description 反对议题 + * @param issueId + * @author zxc + */ + @Override + public void oppose(TokenDto tokenDto,IssueIdFormDTO issueId) { + VoteFormDTO voteFormDTO = new VoteFormDTO(); + voteFormDTO.setAttitude("opposition"); + voteFormDTO.setCreatedBy(tokenDto.getUserId()); + voteFormDTO.setIssueId(issueId.getIssueId()); + govIssueFeignClient.vote(voteFormDTO); + } + + /** + * @Description 表决中议题详情——支持、反对数 + * @param issueId + * @author zxc + */ + @Override + public VoteResultDTO vote(IssueIdFormDTO issueId) { + Result voteResultDTOResult = govIssueFeignClient.voteCount(issueId); + return voteResultDTOResult.getData(); + } + + /** + * @Description 满意度评价初始化——已关闭 + * @param tokenDto + * @param issueId + * @author zxc + */ + @Override + public InitEvaluationResultDTO initEvaluation(TokenDto tokenDto, IssueIdFormDTO issueId) { + InitEvaluationFormDTO formDTO = new InitEvaluationFormDTO(); + formDTO.setIssueId(issueId.getIssueId()); + formDTO.setUserId(tokenDto.getUserId()); + Result initEvaluationResult = govIssueFeignClient.initEvaluation(formDTO); + return initEvaluationResult.getData(); + } + + /** + * @Description 满意度评价初始化——已转项目 + * @param tokenDto + * @param projectId + * @author zxc + */ + @Override + public ProjectInitEvaluationResultDTO projectInitEvaluation(TokenDto tokenDto, ProjectIdFormDTO projectId) { + ProjectInitEvaluationFormDTO formDTO = new ProjectInitEvaluationFormDTO(); + formDTO.setProjectId(projectId.getProjectId()); + formDTO.setUserId(tokenDto.getUserId()); + Result projectInitEvaluationResult = govProjectFeignClient.projectInitEvaluation(formDTO); + return projectInitEvaluationResult.getData(); + } + + /** + * @Description 提交满意度评价——已关闭 + * @param evaluateFormDTO + * @author zxc + */ + @Override + public void evaluate(TokenDto tokenDto,EvaluateFormDTO evaluateFormDTO) { + evaluateFormDTO.setUserId(tokenDto.getUserId()); + govIssueFeignClient.evaluate(evaluateFormDTO); + } + + /** + * @Description 提交满意度评价——已转项目 + * @param projectEvaluateFormDTO + * @author zxc + */ + @Override + public void projectEvaluate(TokenDto tokenDto, ProjectEvaluateFormDTO projectEvaluateFormDTO) { + projectEvaluateFormDTO.setUserId(tokenDto.getUserId()); + govProjectFeignClient.projectEvaluate(projectEvaluateFormDTO); + } + + /** + * @Description 满意度评价列表——已关闭 + * @param formDTO + * @author zxc + */ + @Override + public List evaluationList(EvaluationListFormDTO formDTO) { + Result> listResult = govIssueFeignClient.evaluationList(formDTO); + List data = listResult.getData(); + if (data.size()==NumConstant.ZERO||data==null){ + return new ArrayList<>(); + } + //获取头像和昵称 eg:山东路168号-周先生 + List userIds = data.stream().map(EvaluationListResultDTO::getUserId).collect(Collectors.toList()); + UserResiInfoListFormDTO userResiInfo = new UserResiInfoListFormDTO(); + userResiInfo.setUserIdList(userIds); + List userResiInfoList = userFeignClient.getUserResiInfoList(userResiInfo).getData(); + if (null == userResiInfoList || userResiInfoList.size() < NumConstant.ONE) { + throw new RenException(HallConstat.SELECT_USERINFO_EXCEPTION); + } + List resultList = data.stream().flatMap(evaluation -> userResiInfoList.stream().filter(user -> + evaluation.getUserId().equals(user.getUserId())).map(userInfo -> { + EvaluationListResultDTO resultDTO = ConvertUtils.sourceToTarget(evaluation, EvaluationListResultDTO.class); + resultDTO.setUserNickName(null == userInfo.getShowName() ? "" : userInfo.getShowName()); + resultDTO.setUserHeadPhoto(null == userInfo.getHeadPhoto() ? "" : userInfo.getHeadPhoto()); + return resultDTO; + })).collect(Collectors.toList()); + return resultList; + } + + /** + * @Description 满意度评价列表——已转项目 + * @param formDTO + * @author zxc + */ + @Override + public List projectEvaluationList(ProjectEvaluationListFormDTO formDTO) { + List listResult = govProjectFeignClient.projectEvaluationList(formDTO).getData(); + if (listResult.size()==NumConstant.ZERO||listResult.equals(null)){ + return new ArrayList<>(); + } + //获取头像和昵称 eg:山东路168号-周先生 + List userIds = listResult.stream().map(ProjectEvaluationListResultDTO::getUserId).collect(Collectors.toList()); + UserResiInfoListFormDTO userResiInfo = new UserResiInfoListFormDTO(); + userResiInfo.setUserIdList(userIds); + List userResiInfoList = userFeignClient.getUserResiInfoList(userResiInfo).getData(); + if (null == userResiInfoList || userResiInfoList.size() < NumConstant.ONE) { + throw new RenException(HallConstat.SELECT_USERINFO_EXCEPTION); + } + List resultList = listResult.stream().flatMap(evaluation -> userResiInfoList.stream().filter(user -> + evaluation.getUserId().equals(user.getUserId())).map(userInfo -> { + EvaluationListResultDTO resultDTO = ConvertUtils.sourceToTarget(evaluation, EvaluationListResultDTO.class); + resultDTO.setUserNickName(null == userInfo.getShowName() ? "" : userInfo.getShowName()); + resultDTO.setUserHeadPhoto(null == userInfo.getHeadPhoto() ? "" : userInfo.getHeadPhoto()); + return resultDTO; + })).collect(Collectors.toList()); + return resultList; + } +} diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java index 9a1d262509..bb6bcc34ae 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java @@ -34,7 +34,8 @@ public class ResiMineGridController { **/ @GetMapping("getlatestgridinfo") public Result getLatestGridInfo(@LoginUser TokenDto tokenDto){ - return resiMineGridService.getLatestGridInfo(tokenDto); + LatestGridInfoResultDTO latestGridInfoResultDTO=resiMineGridService.getLatestGridInfo(tokenDto); + return new Result().ok(latestGridInfoResultDTO); } /** diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java index 73a98ad7a4..f4f398306c 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java @@ -20,7 +20,7 @@ public interface ResiMineGridService { * @param tokenDto * @return com.epmet.commons.tools.utils.Result */ - Result getLatestGridInfo(TokenDto tokenDto); + LatestGridInfoResultDTO getLatestGridInfo(TokenDto tokenDto); /** * @return diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java index 2207f5c491..d473119124 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java @@ -2,6 +2,7 @@ package com.epmet.modules.grid.service.impl; import com.epmet.commons.tools.constant.AppClientConstant; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; @@ -41,16 +42,22 @@ public class ResiMineGridServiceImpl implements ResiMineGridService { * @Date 2020/3/24 11:11 **/ @Override - public Result getLatestGridInfo(TokenDto tokenDto) { + public LatestGridInfoResultDTO getLatestGridInfo(TokenDto tokenDto) { + LatestGridInfoResultDTO latestGridInfoResultDTO=new LatestGridInfoResultDTO(); if (null == tokenDto || StringUtils.isBlank(tokenDto.getUserId())) { - logger.error(ModuleConstant.USER_NOT_NULL); + logger.error(String.format("居民端【%s】获取用户最近访问的网格失败:错误提示:%s",tokenDto.getUserId(),ModuleConstant.USER_NOT_NULL)); throw new RenException(ModuleConstant.USER_NOT_NULL); } if(!AppClientConstant.APP_RESI.equals(tokenDto.getApp())){ - logger.error(ModuleConstant.FOR_RESI_CALL); + logger.error(String.format("居民端【%s】获取用户最近访问的网格失败,错误提示:%s",tokenDto.getUserId(),ModuleConstant.FOR_RESI_CALL)); throw new RenException(ModuleConstant.FOR_RESI_CALL); } - return epmetUserFeignClient.getLatestGridInfoByUserId(tokenDto.getUserId()); + Result userResult=epmetUserFeignClient.getLatestGridInfoByUserId(tokenDto.getUserId()); + if(userResult.success()&&null!=userResult.getData()){ + return userResult.getData(); + } + logger.error(String.format("居民端用户【%s】获取用户最近访问网格失败,调用%s服务入参userId:%s,错误码:%s,错误提示:%s", tokenDto.getUserId(),ServiceConstant.EPMET_USER_SERVER,tokenDto.getUserId(),userResult.getCode(),userResult.getMsg())); + return latestGridInfoResultDTO; } /** diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/PartyAuthProcessingCountResultDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/PartyAuthProcessingCountResultDTO.java new file mode 100644 index 0000000000..9ea7fa5f60 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/PartyAuthProcessingCountResultDTO.java @@ -0,0 +1,25 @@ +package com.epmet.resi.partymember.dto.partymember.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 网格待审核党员数 + * @Author yinzuomei + * @Date 2020/5/13 22:15 + */ +@Data +public class PartyAuthProcessingCountResultDTO implements Serializable { + private static final long serialVersionUID = 1595766019917829995L; + /** + * 网格id + */ + private String gridId; + + /** + * 待审核党员申请总数 + */ + private Long count; +} + diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/warmhearted/result/ResiProcessingCountResultDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/warmhearted/result/ResiProcessingCountResultDTO.java new file mode 100644 index 0000000000..8d8135a9b9 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/warmhearted/result/ResiProcessingCountResultDTO.java @@ -0,0 +1,25 @@ +package com.epmet.resi.partymember.dto.warmhearted.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 网格待审核热心居民数 + * @Author yinzuomei + * @Date 2020/5/13 22:16 + */ +@Data +public class ResiProcessingCountResultDTO implements Serializable { + private static final long serialVersionUID = 4002474433059912113L; + /** + * 网格id + */ + private String gridId; + + /** + * 待审核党员申请总数 + */ + private Long count; +} + diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/ResiPartyMemberRedisKeys.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/ResiPartyMemberRedisKeys.java new file mode 100644 index 0000000000..d3ea121a6e --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/ResiPartyMemberRedisKeys.java @@ -0,0 +1,35 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + *

+ * https://www.renren.io + *

+ * 版权所有,侵权必究! + */ + +package com.epmet.constant; + +/** + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +public class ResiPartyMemberRedisKeys { + + /** + * 党群e事通redis前缀 + */ + private static String rootPrefix = "epmet:"; + + /** + * 政府工作段小程序:基层治理-居民管理(待审核的热心居民)红点key eg:epmet:gov:wxmp:work:grassroots:resi:XX网格id + */ + public static String getWorkGrassrootsResiRedDotKey(String gridId) { + return rootPrefix.concat(String.format("gov:wxmp:work:grassroots:resi:%s",gridId)); + } + + /** + * 政府工作段小程序:基层治理-党员认证(待审核的党员)红点key eg:epmet:gov:wxmp:work:grassroots:resi:XX网格id + */ + public static String getWorkGrassrootsPartyAuthRedDotKey(String gridId) { + return rootPrefix.concat(String.format("gov:wxmp:work:grassroots:partyauth:%s",gridId)); + } +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberInfoController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberInfoController.java index c98ec3ce99..ab98cf565a 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberInfoController.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartymemberInfoController.java @@ -32,6 +32,7 @@ import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import com.epmet.resi.partymember.dto.partymember.form.CertifiedDetailFormDTO; import com.epmet.resi.partymember.dto.partymember.form.CertifiedFormDTO; import com.epmet.resi.partymember.dto.partymember.result.CertifiedDetailResultDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartyAuthProcessingCountResultDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -118,4 +119,17 @@ public class PartymemberInfoController { return new Result().ok(partymemberInfoService.certifiedDetail(formDTO)); } + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 传入网格id列表,返回各个网格对应的待审核党员总数 + * @Date 2020/5/13 22:37 + **/ + @PostMapping("getworkgrassrootspartyauth") + public Result> queryPartyMemberProcessingCount(@RequestBody List gridIdList) { + List list = partymemberInfoService.queryPartyMemberProcessingCount(gridIdList); + return new Result>().ok(list); + } + } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberInfoService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberInfoService.java index d2e6779edc..0fe2142c08 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberInfoService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberInfoService.java @@ -26,6 +26,7 @@ import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import com.epmet.resi.partymember.dto.partymember.form.CertifiedDetailFormDTO; import com.epmet.resi.partymember.dto.partymember.form.CertifiedFormDTO; import com.epmet.resi.partymember.dto.partymember.result.CertifiedDetailResultDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartyAuthProcessingCountResultDTO; import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -137,4 +138,12 @@ public interface PartymemberInfoService extends BaseService + * @Author yinzuomei + * @Description 传入网格id列表,返回各个网格对应的待审核党员总数 + * @Date 2020/5/13 22:37 + **/ + List queryPartyMemberProcessingCount(List gridIdList); } \ 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/PartyMemberConfirmServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java index dc9f3200d9..13dc1d53dd 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java @@ -22,8 +22,7 @@ import com.epmet.modules.feign.GovOrgFeignClient; import com.epmet.modules.partymember.entity.*; import com.epmet.modules.partymember.redis.PartymemberInfoRedis; import com.epmet.modules.partymember.service.*; -import com.epmet.modules.warmhearted.constant.ResiWarmUserMessageConstant; -import com.epmet.modules.warmhearted.entity.ResiWarmheartedApplyEntity; +import com.epmet.redis.ResiPartyMemberRedis; import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; @@ -78,7 +77,8 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService private EpmetMessageFeignClient messageFeignClient; @Autowired private GovOrgFeignClient govOrgFeignClient; - + @Autowired + private ResiPartyMemberRedis resiPartyMemberRedis; @Override @Transactional(rollbackFor = Exception.class) public Result init(PartyMemberInitFromDTO fromDto) { @@ -269,6 +269,8 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService } auditMessage(ConvertUtils.sourceToTarget(partyMemberInfo, PartymemberInfoEntity.class), PartyMemberMessageConstant.MEMBER_APPLY_MSG); + //更新政府端:工作-基层治理-党员认证reddot + resiPartyMemberRedis.addWorkGrassrootsPartyAuthRedDotValue(infoDTO.getGridId()); return new Result(); } @@ -302,7 +304,8 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService } else { auditMessage(partyMemberInfoEntity, PartyMemberMessageConstant.AUDIT_REJECT_MSG); } - + //更新政府端:工作-基层治理-党员认证reddot + resiPartyMemberRedis.subtractWorkGrassrootsPartyAuthRedDotValue(manualEntity.getGridId()); return new Result(); } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberInfoServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberInfoServiceImpl.java index 680a3ba35a..732bcf1d83 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberInfoServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberInfoServiceImpl.java @@ -36,10 +36,12 @@ import com.epmet.modules.partymember.dao.PartymemberInfoDao; import com.epmet.modules.partymember.entity.PartymemberInfoEntity; import com.epmet.modules.partymember.redis.PartymemberInfoRedis; import com.epmet.modules.partymember.service.PartymemberInfoService; +import com.epmet.redis.ResiPartyMemberRedis; import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import com.epmet.resi.partymember.dto.partymember.form.CertifiedDetailFormDTO; import com.epmet.resi.partymember.dto.partymember.form.CertifiedFormDTO; import com.epmet.resi.partymember.dto.partymember.result.CertifiedDetailResultDTO; +import com.epmet.resi.partymember.dto.partymember.result.PartyAuthProcessingCountResultDTO; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -69,7 +71,8 @@ public class PartymemberInfoServiceImpl extends BaseServiceImpl page(Map params) { IPage page = baseDao.selectPage( @@ -199,5 +202,18 @@ public class PartymemberInfoServiceImpl extends BaseServiceImpl queryPartyMemberProcessingCount(List gridIdList) { + List list = new ArrayList<>(); + for (String gridId : gridIdList) { + PartyAuthProcessingCountResultDTO partyAuthProcessingCountResultDTO = new PartyAuthProcessingCountResultDTO(); + partyAuthProcessingCountResultDTO.setGridId(gridId); + Long auditingPartyMember = resiPartyMemberRedis.queryPartyAuthProcessingCount(gridId); + partyAuthProcessingCountResultDTO.setCount(auditingPartyMember); + list.add(partyAuthProcessingCountResultDTO); + } + return list; + } + } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/controller/ResiWarmheartedApplyController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/controller/ResiWarmheartedApplyController.java index 5444e4ccca..e2da03019c 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/controller/ResiWarmheartedApplyController.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/controller/ResiWarmheartedApplyController.java @@ -31,6 +31,7 @@ import com.epmet.modules.warmhearted.excel.ResiWarmheartedApplyExcel; import com.epmet.modules.warmhearted.service.ResiWarmheartedApplyService; import com.epmet.resi.partymember.dto.warmhearted.ResiWarmheartedApplyDTO; import com.epmet.resi.partymember.dto.warmhearted.form.*; +import com.epmet.resi.partymember.dto.warmhearted.result.ResiProcessingCountResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmAuditResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedAuditedResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedResultDTO; @@ -162,4 +163,16 @@ public class ResiWarmheartedApplyController { return resiWarmheartedApplyService.getDetail(formDTO); } + /** + * @param gridIdList + * @return com.epmet.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 传入网格id列表,返回每个列表下对应的待审核居民总数 + * @Date 2020/5/13 22:25 + **/ + @PostMapping("queryresiprocessingcount") + public Result> queryResiProcessingCount(@RequestBody List gridIdList) { + List list = resiWarmheartedApplyService.queryResiProcessingCount(gridIdList); + return new Result>().ok(list); + } } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedApplyService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedApplyService.java index 0fba6e16ff..7bd90437b1 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedApplyService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedApplyService.java @@ -23,6 +23,7 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.modules.warmhearted.entity.ResiWarmheartedApplyEntity; import com.epmet.resi.partymember.dto.warmhearted.ResiWarmheartedApplyDTO; import com.epmet.resi.partymember.dto.warmhearted.form.*; +import com.epmet.resi.partymember.dto.warmhearted.result.ResiProcessingCountResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmAuditResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedAuditedResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedResultDTO; @@ -158,4 +159,13 @@ public interface ResiWarmheartedApplyService extends BaseService getDetail(ResiWarmGetDetailFormDTO formDTO); + + /** + * @param gridIdList + * @return java.util.List + * @Author yinzuomei + * @Description 传入网格id列表,返回每个列表下对应的待审核居民总数 + * @Date 2020/5/13 22:25 + **/ + List queryResiProcessingCount(List gridIdList); } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java index 6da9ab7c94..8ddb224bf0 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java @@ -46,11 +46,12 @@ import com.epmet.modules.warmhearted.constant.ResiWarmheartedConstant; import com.epmet.modules.warmhearted.constant.ResiWarmheartedVisitConstant; import com.epmet.modules.warmhearted.dao.ResiWarmheartedApplyDao; import com.epmet.modules.warmhearted.entity.ResiWarmheartedApplyEntity; -import com.epmet.modules.warmhearted.redis.ResiWarmheartedApplyRedis; import com.epmet.modules.warmhearted.service.ResiWarmheartedApplyService; import com.epmet.modules.warmhearted.service.ResiWarmheartedVisitService; +import com.epmet.redis.ResiPartyMemberRedis; import com.epmet.resi.partymember.dto.warmhearted.ResiWarmheartedApplyDTO; import com.epmet.resi.partymember.dto.warmhearted.form.*; +import com.epmet.resi.partymember.dto.warmhearted.result.ResiProcessingCountResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmAuditResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedAuditedResultDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedResultDTO; @@ -78,8 +79,6 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl page(Map params) { @@ -210,6 +211,8 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl queryResiProcessingCount(List gridIdList) { + List list = new ArrayList<>(); + for (String gridId : gridIdList) { + ResiProcessingCountResultDTO resiProcessingCountResultDTO = new ResiProcessingCountResultDTO(); + resiProcessingCountResultDTO.setGridId(gridId); + Long auditingResi = resiPartyMemberRedis.queryResiProcessingCount(gridId); + resiProcessingCountResultDTO.setCount(auditingResi); + list.add(resiProcessingCountResultDTO); + } + return list; + } } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/redis/ResiPartyMemberRedis.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/redis/ResiPartyMemberRedis.java new file mode 100644 index 0000000000..10dce072dd --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/redis/ResiPartyMemberRedis.java @@ -0,0 +1,168 @@ +/** + * 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 com.epmet.constant.ResiPartyMemberRedisKeys; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 本模块redis所有操作放这 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-03-30 + */ +@Component +public class ResiPartyMemberRedis { + private Logger logger = LoggerFactory.getLogger(getClass()); + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set() { + + } + + public String get(String id) { + return null; + } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei + * @Description 居民端热心居民申请成功,该redis值+1,目的:政府端基层治理-居民管理显示红点提醒工作人员有待办事项 + * @Date 2020/5/13 10:55 + **/ + public Long addWorkGrassrootsResiRedDotValue(String gridId) { + Long auditingResiWarmHeartedCount = 0L; + try { + String workGrassrootsResiRedDotKey = ResiPartyMemberRedisKeys.getWorkGrassrootsResiRedDotKey(gridId); + auditingResiWarmHeartedCount = redisUtils.incrementAndGet(workGrassrootsResiRedDotKey); + logger.info(String.format("居民端热心居民申请提交,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsResiRedDotKey, auditingResiWarmHeartedCount)); + } catch (Exception e) { + logger.error(String.format("居民端热心居民申请提交,更新redis-reddot值异常%s", e.getMessage())); + e.printStackTrace(); + } + return auditingResiWarmHeartedCount; + } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei keyeg: epmet:gov:wxmp:work:grassroots:partyauth:XX网格id + * @Description 政府端小程序审核热心居民申请(同意或拒绝),更新该redis值-1 + * @Date 2020/5/13 13:11 + **/ + public Long subtractWorkGrassrootsResiRedDotValue(String gridId) { + Long auditingPartyMemberCount = 0L; + try { + String workGrassrootsPartyAuthRedDotKey = ResiPartyMemberRedisKeys.getWorkGrassrootsResiRedDotKey(gridId); + auditingPartyMemberCount = redisUtils.incrementAndGet(workGrassrootsPartyAuthRedDotKey); + logger.info(String.format("政府端(wxmp)审核热心居民申请,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsPartyAuthRedDotKey, auditingPartyMemberCount)); + } catch (Exception e) { + logger.error(String.format("政府端(wxmp)审核热心居民申请,更新redis-reddot值异常%s", e.getMessage())); + e.printStackTrace(); + } + return auditingPartyMemberCount; + } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei keyeg: epmet:gov:wxmp:work:grassroots:partyauth:XX网格id + * @Description 居民端党员自动认证失败,且填写了补充信息,提交成功后,该redis值+1,目的:政府端基层治理-党员认证显示红点,提醒工作人员有待办事项 + * @Date 2020/5/13 10:56 + **/ + public Long addWorkGrassrootsPartyAuthRedDotValue(String gridId) { + Long auditingPartyMemberCount = 0L; + try { + String workGrassrootsPartyAuthRedDotKey = ResiPartyMemberRedisKeys.getWorkGrassrootsPartyAuthRedDotKey(gridId); + auditingPartyMemberCount = redisUtils.incrementAndGet(workGrassrootsPartyAuthRedDotKey); + logger.info(String.format("居民端党员认证补充信息提交,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsPartyAuthRedDotKey, auditingPartyMemberCount)); + } catch (Exception e) { + logger.error(String.format("居民端党员认证补充信息提交,更新redis-reddot值异常%s", e.getMessage())); + e.printStackTrace(); + } + return auditingPartyMemberCount; + } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei keyeg: epmet:gov:wxmp:work:grassroots:partyauth:XX网格id + * @Description 政府端审批党员认证申请成功后,更新该redis值-1 + * @Date 2020/5/13 10:56 + **/ + public Long subtractWorkGrassrootsPartyAuthRedDotValue(String gridId) { + Long auditingPartyMemberCount = 0L; + try { + String workGrassrootsPartyAuthRedDotKey = ResiPartyMemberRedisKeys.getWorkGrassrootsPartyAuthRedDotKey(gridId); + auditingPartyMemberCount = redisUtils.incrementAndGet(workGrassrootsPartyAuthRedDotKey); + logger.info(String.format("居民端党员认证补充信息提交,更新redis-reddot值成功,key[%s],Value[%s]", workGrassrootsPartyAuthRedDotKey, auditingPartyMemberCount)); + } catch (Exception e) { + logger.error(String.format("居民端党员认证补充信息提交,更新redis-reddot值异常%s", e.getMessage())); + e.printStackTrace(); + } + return auditingPartyMemberCount; + } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei + * @Description 查询网格下待审核热心居民总数 + * @Date 2020/5/13 22:44 + **/ + public Long queryResiProcessingCount(String gridId) { + Long auditingResiWarmHeartedCount = 0L; + try { + String workGrassrootsResiRedDotKey = ResiPartyMemberRedisKeys.getWorkGrassrootsResiRedDotKey(gridId); + auditingResiWarmHeartedCount = (Long) redisUtils.get(workGrassrootsResiRedDotKey); + } catch (Exception e) { + logger.error(String.format("网格id%s,查询网格下待审核热心居民总数异常%s", gridId, e.getMessage())); + e.printStackTrace(); + } + return auditingResiWarmHeartedCount; + } + + /** + * @param gridId + * @return java.lang.Long + * @Author yinzuomei + * @Description 查询网格下待审核党员总数 + * @Date 2020/5/13 22:44 + **/ + public Long queryPartyAuthProcessingCount(String gridId) { + Long auditingParyMember = 0L; + try { + String workGrassrootsResiRedDotKey = ResiPartyMemberRedisKeys.getWorkGrassrootsPartyAuthRedDotKey(gridId); + auditingParyMember = (Long) redisUtils.get(workGrassrootsResiRedDotKey); + } catch (Exception e) { + logger.error(String.format("网格id%s,查询网格下待审核党员总数异常%s", gridId, e.getMessage())); + e.printStackTrace(); + } + return auditingParyMember; + } +} \ No newline at end of file diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IssueInitiatorFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IssueInitiatorFormDTO.java new file mode 100644 index 0000000000..e52d7c19e6 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IssueInitiatorFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 查询议题发起人dto + * @CreateTime 2020/5/11 9:36 + */ +@Data +public class IssueInitiatorFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 话题id + */ + private String userId; + + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java new file mode 100644 index 0000000000..0a286112d7 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/EvaluationListResultDTO.java @@ -0,0 +1,47 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 满意度评价列表——已关闭 + */ +@Data +public class EvaluationListResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 评价用户Id + */ + private String userId; + + /** + * 评价用户(山东路168-尹女士) + */ + private String userNickName; + + /** + * 满意度 - 不满意:bad、基本满意:good、非常满意:perfect + */ + private String satisfaction; + + /** + * 评价时间 + */ + private Long evaluateTime; + + /** + * 评价内容 + */ + private String evaluateContent; + + /** + * 用户头像 + */ + private String userHeadPhoto; + + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java new file mode 100644 index 0000000000..08e0113ace --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * 返回议题发起人dto eg:山东路178号——刘女士 + * @CreateTime 2020/5/11 10:49 + */ +@Data +public class IssueInitiatorResultDTO implements Serializable { + + /** + * 议题发起人(山东路168-尹女士) + */ + private String issueInitiator; + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java index ca2bd6d210..375c4abd26 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java @@ -269,4 +269,15 @@ public class CustomerStaffController { ValidatorUtils.validateEntity(userIdList); return customerStaffService.getEnableStaffMsgList(userIdList); } + + /** + * @param staffIdList + * @return + * @Author sun + * @Description 根据staffId集合查询工作人员基础信息 + **/ + @PostMapping(value = "getcustomerstafflist") + public Result getCustomerStaffList(@RequestBody List staffIdList){ + return new Result().ok(customerStaffService.getCustomerStaffList(staffIdList)); + } } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java index 825cc6e78b..8844cfbdc1 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java @@ -26,9 +26,11 @@ 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.UserResiInfoDTO; +import com.epmet.dto.form.IssueInitiatorFormDTO; import com.epmet.dto.form.UserResiInfoFormDTO; import com.epmet.dto.form.UserResiInfoListFormDTO; import com.epmet.dto.form.VerificationCodeFormDTO; +import com.epmet.dto.result.IssueInitiatorResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.excel.UserResiInfoExcel; import com.epmet.service.UserResiInfoService; @@ -150,4 +152,14 @@ public class UserResiInfoController { return userResiInfoService.saveResiInfo(userResiInfoDTO); } + /** + * @Description 根据userId查询议题发起人 eg:山东路168号——刘女士 + * @param formDTO + * @author zxc + */ + @PostMapping("selectissueinitiator") + public Result selectIssueInitiator(@RequestBody IssueInitiatorFormDTO formDTO){ + return new Result().ok(userResiInfoService.selectIssueInitiator(formDTO)); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java index 7b056bfea2..c5dbec183f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java @@ -24,6 +24,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.result.DepartInStaffListResultDTO; import com.epmet.dto.result.StaffInfoResultDTO; import com.epmet.dto.result.CommonStaffInfoResultDTO; +import com.epmet.dto.result.StaffListResultDTO; import com.epmet.entity.CustomerStaffEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -123,4 +124,12 @@ public interface CustomerStaffDao extends BaseDao { * @Date 2020.04.24 15:34 **/ List selectEnableStaffMsg(@Param("userIds") List userIds,@Param("customerId")String customerId); + + /** + * @param staffIdList + * @return + * @Author sun + * @Description 根据staffId集合查询工作人员基础信息 + **/ + List selectStaffByIds(@Param("staffIdList") List staffIdList); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java index 8f1f6a9d5b..c7e1be6e9c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java @@ -22,7 +22,9 @@ import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.entity.DataScope; import com.epmet.dto.StaffRoleDTO; import com.epmet.dto.form.CommonUserFormDTO; +import com.epmet.dto.result.CustomerStaffRoleResultDTO; import com.epmet.dto.result.GovStaffRoleResultDTO; +import com.epmet.dto.result.StaffListResultDTO; import com.epmet.dto.result.StaffRolesResultDTO; import com.epmet.entity.StaffRoleEntity; import org.apache.ibatis.annotations.Mapper; @@ -76,4 +78,11 @@ public interface StaffRoleDao extends BaseDao { **/ List selectSpecificRolesStaffs(@Param("roleKeys")List roleKeys,@Param("userIds")List userIds,@Param("customerId")String customerId); + /** + * @param staffIdList + * @return + * @Author sun + * @Description 根据staffId集合查询人员拥有的所有角色信息 + **/ + List selectStaffRoleList(@Param("staffIdList") List staffIdList); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java index e14b927f1b..4f57bfa73c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java @@ -19,7 +19,9 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.UserResiInfoDTO; +import com.epmet.dto.form.IssueInitiatorFormDTO; import com.epmet.dto.form.UserResiInfoFormDTO; +import com.epmet.dto.result.IssueInitiatorResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.entity.UserResiInfoEntity; import org.apache.ibatis.annotations.Mapper; @@ -59,4 +61,12 @@ public interface UserResiInfoDao extends BaseDao { * @Date 2020/4/7 18:26 **/ List selectListUserResiInfoDTO(@Param("userIdList") List userIdList); + + /** + * @Description 根据userId查询议题发起人 + * @param formDTO + * @author zxc + * @date 2020/5/11 11:18 + */ + IssueInitiatorResultDTO selectIssueInitiator(IssueInitiatorFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java index 331cbf7223..cddd2a8c9a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java @@ -223,4 +223,12 @@ public interface CustomerStaffService extends BaseService { * @Date 2020.04.24 15:44 **/ Result> getEnableStaffMsgList(CommonUserIdListFormDTO userIdList); + + /** + * @param staffIdList + * @return + * @Author sun + * @Description 根据staffId集合查询工作人员基础信息 + **/ + CustomerStaffListResultDTO getCustomerStaffList(List staffIdList); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java index 5f0817a62e..d01c706fd5 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java @@ -21,9 +21,11 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; +import com.epmet.dto.form.IssueInitiatorFormDTO; import com.epmet.dto.form.UserResiInfoFormDTO; import com.epmet.dto.form.UserResiInfoListFormDTO; import com.epmet.dto.form.VerificationCodeFormDTO; +import com.epmet.dto.result.IssueInitiatorResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.entity.UserResiInfoEntity; @@ -141,4 +143,12 @@ public interface UserResiInfoService extends BaseService { * @Date 2020/4/7 18:21 **/ Result> getUserResiInfoList(UserResiInfoListFormDTO userResiInfoListFormDTO); + + /** + * @Description 根据userId查询议题发起人 + * @param formDTO + * @author zxc + * @date 2020/5/11 10:59 + */ + IssueInitiatorResultDTO selectIssueInitiator(IssueInitiatorFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserWechatService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserWechatService.java index 8d6f6cbdb0..5dde082f0f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserWechatService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserWechatService.java @@ -1,7 +1,6 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; -import com.epmet.commons.tools.utils.Result; import com.epmet.dto.result.CertifiedResultDTO; import com.epmet.entity.UserWechatEntity; @@ -15,6 +14,11 @@ import java.util.List; */ public interface UserWechatService extends BaseService { + /** + * @Description 获取头像 + * @param certifiedResultDTOS + * @author zxc + */ List selectUserHeadPhotoByUserId(List certifiedResultDTOS); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java index e6d681851e..518697e1f6 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java @@ -31,6 +31,7 @@ import com.epmet.constant.CustomerStaffConstant; import com.epmet.constant.UserConstant; import com.epmet.constant.UserRoleConstant; import com.epmet.dao.CustomerStaffDao; +import com.epmet.dao.StaffRoleDao; import com.epmet.dto.*; import com.epmet.dto.form.*; import com.epmet.dto.result.*; @@ -91,6 +92,8 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl page(Map params) { @@ -419,4 +422,22 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl>().ok(baseDao.selectEnableStaffMsg(userIdList.getUserIdList(), userIdList.getCustomerId())); } + /** + * @param staffIdList + * @return + * @Author sun + * @Description 根据staffId集合查询工作人员基础信息 + **/ + @Override + public CustomerStaffListResultDTO getCustomerStaffList(List staffIdList) { + //1:批量查询人员基本信息 + List staffList = baseDao.selectStaffByIds(staffIdList); + //2:批量查询人员拥有的所有角色信息 + List roleList = staffRoleDao.selectStaffRoleList(staffIdList); + CustomerStaffListResultDTO list = new CustomerStaffListResultDTO(); + list.setStaffList(staffList); + list.setRoleList(roleList); + return list; + } + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java index b11fd29898..af31e780ec 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java @@ -31,9 +31,11 @@ import com.epmet.constant.UserRoleConstant; import com.epmet.dao.UserResiInfoDao; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.UserRoleDTO; +import com.epmet.dto.form.IssueInitiatorFormDTO; import com.epmet.dto.form.UserResiInfoFormDTO; import com.epmet.dto.form.UserResiInfoListFormDTO; import com.epmet.dto.form.VerificationCodeFormDTO; +import com.epmet.dto.result.IssueInitiatorResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.entity.UserResiInfoEntity; import com.epmet.feign.MessageFeignClient; @@ -272,4 +274,15 @@ public class UserResiInfoServiceImpl extends BaseServiceImpl selectUserHeadPhotoByUserId(List certifiedResultDTOS) { List userHeadPhotoDTOS = userWechatDao.selectUserHeadPhotoByUserId(certifiedResultDTOS); diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml index 6fbcd71df4..8f762dbe01 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml @@ -118,9 +118,8 @@ WHERE cs.DEL_FLAG = '0' AND cs.CUSTOMER_ID = #{customerId} - AND cs.USER_ID in - - #{userId} + + cs.USER_ID = #{userId} ORDER BY convert(cs.REAL_NAME using gbk) ASC @@ -179,4 +178,20 @@ #{userId} + + \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml index 518b6ed7d8..e7a2ce2fa9 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml @@ -102,4 +102,21 @@ + + \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml index a8aa71d4dc..16b1f13c66 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml @@ -108,4 +108,28 @@ #{userId} + + +