From 2430a1ace3a47f5e388ee23b8a9d2643dffc2975 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 29 Mar 2022 15:08:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B1=85=E6=B0=91=E7=AB=AF=E4=B8=8A=E6=8A=A5?= =?UTF-8?q?=E8=A1=8C=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/constant/IcResiUserConstant.java | 5 + .../com/epmet/dto/IcTripReportRecordDTO.java | 20 +++ .../epmet/dto/form/IcTripReportFormDTO.java | 115 ++++++++++++++++++ .../epmet/dto/form/MyReportedTripFormDTO.java | 13 ++ .../IcTripReportRecordController.java | 35 +++++- .../com/epmet/dao/IcTripReportRecordDao.java | 7 +- .../java/com/epmet/dao/UserBaseInfoDao.java | 2 + .../entity/IcTripReportRecordEntity.java | 15 +++ .../service/IcTripReportRecordService.java | 16 +++ .../impl/IcResiCollectServiceImpl.java | 1 + .../impl/IcTripReportRecordServiceImpl.java | 55 ++++++++- .../mapper/IcTripReportRecordDao.xml | 17 +++ .../main/resources/mapper/UserBaseInfoDao.xml | 10 ++ 13 files changed, 308 insertions(+), 3 deletions(-) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcTripReportFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/MyReportedTripFormDTO.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/constant/IcResiUserConstant.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/constant/IcResiUserConstant.java index 6b32f663fc..aedf4def93 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/constant/IcResiUserConstant.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/constant/IcResiUserConstant.java @@ -8,4 +8,9 @@ package com.epmet.constant; public interface IcResiUserConstant { String IC_RESI_USER = "ic_resi_user"; + /** + * 居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other + */ + String USER_TYPE_RESI="resi"; + String USER_TYPE_IC_RESI="icresi"; } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcTripReportRecordDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcTripReportRecordDTO.java index dd9c513896..4a8939da7a 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcTripReportRecordDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcTripReportRecordDTO.java @@ -1,5 +1,6 @@ package com.epmet.dto; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.io.Serializable; @@ -22,6 +23,21 @@ public class IcTripReportRecordDTO implements Serializable { */ private String id; + /** + * 居民端用户所在网格id,数字社区居民所属网格id + */ + private String gridId; + + /** + * 居民端上报的:存储用户所在网格的组织id; + */ + private String agencyId; + + /** + * agency_id的所有上级 + */ + private String pids; + /** * 客户Id */ @@ -80,11 +96,13 @@ public class IcTripReportRecordDTO implements Serializable { /** * 到达日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") private Date arriveDate; /** * 离开日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") private Date leaveDate; /** @@ -122,4 +140,6 @@ public class IcTripReportRecordDTO implements Serializable { */ private Date updatedTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm") + private Date reportTime; } \ No newline at end of file diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcTripReportFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcTripReportFormDTO.java new file mode 100644 index 0000000000..0088bb3183 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcTripReportFormDTO.java @@ -0,0 +1,115 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 行程上报居民端入参 + */ +@Data +public class IcTripReportFormDTO implements Serializable { + public interface ResiUserInternalGroup { + } + + public interface ResiUserRequired extends CustomerClientShowGroup { + } + + /** + * 客户Id + */ + private String customerId; + + /** + * 姓名 + */ + @NotBlank(message = "姓名不能为空", groups = {ResiUserRequired.class}) + private String name; + + /** + * 手机号 + */ + @NotBlank(message = "手机号不能为空", groups = {ResiUserRequired.class}) + private String mobile; + + /** + * 身份证号 + */ + @NotBlank(message = "身份证号不能为空", groups = {ResiUserRequired.class}) + private String idCard; + + /** + * 现居地编码 + */ + @NotBlank(message = "现居地编码不能为空", groups = {ResiUserRequired.class}) + private String presentAddressCode; + + /** + * 现居地名称eg:山东省青岛市黄岛区玫瑰山路社区 + */ + @NotBlank(message = "现居地名称不能为空", groups = {ResiUserRequired.class}) + private String presentAddress; + + /** + * 详细地址 + */ + @NotBlank(message = "详细地址不能为空", groups = {ResiUserRequired.class}) + private String detailAddress; + + /** + * 来源地区编码 + */ + @NotBlank(message = "来自地区编码不能为空", groups = {ResiUserRequired.class}) + private String sourceAddressCode; + + /** + * 来源地区地址 + */ + @NotBlank(message = "来自地区名称不能为空", groups = {ResiUserRequired.class}) + private String sourceAddress; + + /** + * 到达日期 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + @NotNull(message = "来到本地时间不能为空", groups = {ResiUserRequired.class}) + private Date arriveDate; + + /** + * 离开日期 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date leaveDate; + + /** + * 备注信息 + */ + @Length(max = 500, message = "备注最多可输入500字", groups = {ResiUserRequired.class}) + private String remark; + + + @NotBlank(message = "网格不能为空", groups = {ResiUserInternalGroup.class}) + private String gridId; + + + //后端自己赋值 + /** + * 用户id + */ + private String userId; + + /** + * 居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other + */ + private String userType; + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/MyReportedTripFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/MyReportedTripFormDTO.java new file mode 100644 index 0000000000..f97ad3c6c7 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/MyReportedTripFormDTO.java @@ -0,0 +1,13 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.dto.form.PageFormDTO; +import lombok.Data; + +/** + * 居民端小程序:我的上报 + */ +@Data +public class MyReportedTripFormDTO extends PageFormDTO { + private String userId; + private String customerId; +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcTripReportRecordController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcTripReportRecordController.java index 9e3faa4bd2..c648076f9b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcTripReportRecordController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcTripReportRecordController.java @@ -1,18 +1,25 @@ package com.epmet.controller; +import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.aop.NoRepeatSubmit; +import com.epmet.commons.tools.dto.form.PageFormDTO; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.constant.IcResiUserConstant; import com.epmet.dto.IcTripReportRecordDTO; +import com.epmet.dto.form.IcTripReportFormDTO; +import com.epmet.dto.form.MyReportedTripFormDTO; import com.epmet.service.IcTripReportRecordService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.List; import java.util.Map; @@ -23,7 +30,7 @@ import java.util.Map; * @since v1.0.0 2022-03-25 */ @RestController -@RequestMapping("triprecord") +@RequestMapping("tripreport") public class IcTripReportRecordController { @Autowired @@ -67,6 +74,32 @@ public class IcTripReportRecordController { return new Result(); } + /** + * 居民端小程序:上报行程 + * @param tokenDto + * @param formDTO + * @return + */ + @PostMapping("resi-save") + public Result resiSave(@LoginUser TokenDto tokenDto, @RequestBody IcTripReportFormDTO formDTO){ + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setUserId(tokenDto.getUserId()); + formDTO.setUserType(IcResiUserConstant.USER_TYPE_RESI); + ValidatorUtils.validateEntity(formDTO,IcTripReportFormDTO.ResiUserRequired.class,IcTripReportFormDTO.ResiUserInternalGroup.class); + return new Result().ok(icTripReportRecordService.resiSave(formDTO)); + } + /** + * 居民端小程序:我的上报 + * @param tokenDto + * @return + */ + @PostMapping("resi-list") + public Result> resiList(@LoginUser TokenDto tokenDto,@RequestBody MyReportedTripFormDTO formDTO){ + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setUserId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(formDTO, PageFormDTO.AddUserInternalGroup.class); + return new Result>().ok(icTripReportRecordService.resiList(formDTO)); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcTripReportRecordDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcTripReportRecordDao.java index f6e54e8100..2472c5053e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcTripReportRecordDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcTripReportRecordDao.java @@ -1,8 +1,12 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.IcTripReportRecordDTO; import com.epmet.entity.IcTripReportRecordEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 行程上报信息 @@ -12,5 +16,6 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface IcTripReportRecordDao extends BaseDao { - + + List selectMyReported(@Param("userId") String userId, @Param("customerId") String customerId, @Param("idCard") String idCard); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserBaseInfoDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserBaseInfoDao.java index 3cd4c5ffe2..ab4ca3ec5c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserBaseInfoDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserBaseInfoDao.java @@ -90,4 +90,6 @@ public interface UserBaseInfoDao extends BaseDao { Integer selectCountIdNum(@Param("idNum") String idNum, @Param("customerId")String customerId, @Param("excludeUserId")String excludeUserId); + + String selectIdCard(String userId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcTripReportRecordEntity.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcTripReportRecordEntity.java index ee0e00b81f..a74f25b6f4 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcTripReportRecordEntity.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcTripReportRecordEntity.java @@ -21,6 +21,21 @@ public class IcTripReportRecordEntity extends BaseEpmetEntity { private static final long serialVersionUID = 1L; + /** + * 居民端用户所在网格id,数字社区居民所属网格id + */ + private String gridId; + + /** + * 居民端上报的:存储用户所在网格的组织id; + */ + private String agencyId; + + /** + * agency_id的所有上级 + */ + private String pids; + /** * 客户Id */ diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcTripReportRecordService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcTripReportRecordService.java index 3949fed1bc..bae4fae28c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcTripReportRecordService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcTripReportRecordService.java @@ -3,6 +3,8 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.IcTripReportRecordDTO; +import com.epmet.dto.form.IcTripReportFormDTO; +import com.epmet.dto.form.MyReportedTripFormDTO; import com.epmet.entity.IcTripReportRecordEntity; import java.util.List; @@ -75,4 +77,18 @@ public interface IcTripReportRecordService extends BaseService resiList(MyReportedTripFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiCollectServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiCollectServiceImpl.java index 3343e5c4fc..c73a39d794 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiCollectServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiCollectServiceImpl.java @@ -155,6 +155,7 @@ public class IcResiCollectServiceImpl extends BaseServiceImpl implements IcTripReportRecordService { - + @Autowired + private UserBaseInfoDao userBaseInfoDao; @Override public PageData page(Map params) { @@ -80,4 +92,45 @@ public class IcTripReportRecordServiceImpl extends BaseServiceImpl resiList(MyReportedTripFormDTO formDTO) { + String idCard=userBaseInfoDao.selectIdCard(formDTO.getUserId()); + PageInfo result = PageHelper.startPage(formDTO.getPageNo(), + formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.selectMyReported(formDTO.getUserId(), + formDTO.getCustomerId(),idCard)); + return result.getList(); + } + + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcTripReportRecordDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcTripReportRecordDao.xml index c4e619b1ec..933acd1f28 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcTripReportRecordDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcTripReportRecordDao.xml @@ -3,6 +3,23 @@ + \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml index ae0fbc5486..3164ebcddb 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml @@ -143,4 +143,14 @@ AND ubi.user_id != #{excludeUserId} + +