From 6acb312f96797ce5f0d71c3ab25922eb4d15fd42 Mon Sep 17 00:00:00 2001 From: Yen Date: Wed, 11 Oct 2023 10:19:32 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AD=BE=E5=88=B0=EF=BC=8C=E6=8B=9C=E8=AE=BF?= =?UTF-8?q?=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BazVisitInstanceController.java | 19 +++ .../my/BazMyVisitInstanceController.java | 45 +++++++ .../modules/baz/entity/BazVisitFlow.java | 3 + .../modules/baz/entity/BazVisitInstance.java | 34 +++++ .../baz/entity/BazVisitInstanceFlow.java | 4 + .../modules/baz/entity/bo/BazVisitFlowBo.java | 4 + .../baz/mapper/BazVisitInstanceMapper.java | 5 + .../baz/service/BazVisitInstanceService.java | 5 + .../impl/BazVisitInstanceServiceImpl.java | 6 + .../biz/controller/BizVisitController.java | 29 +++++ .../controller/my/BizVisitMyController.java | 14 ++ .../mapper/baz/BazVisitInstanceMapper.xml | 120 ++++++++++++++++++ 12 files changed, 288 insertions(+) create mode 100644 src/main/resources/mapper/baz/BazVisitInstanceMapper.xml diff --git a/src/main/java/com/qs/serve/modules/baz/controller/BazVisitInstanceController.java b/src/main/java/com/qs/serve/modules/baz/controller/BazVisitInstanceController.java index 60346d2c..0dc78a36 100644 --- a/src/main/java/com/qs/serve/modules/baz/controller/BazVisitInstanceController.java +++ b/src/main/java/com/qs/serve/modules/baz/controller/BazVisitInstanceController.java @@ -6,6 +6,7 @@ import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.enums.BizType; import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.AuthContextUtils; import com.qs.serve.common.util.PageUtil; import com.qs.serve.common.util.CopierUtil; import com.qs.serve.common.util.StringUtils; @@ -58,6 +59,24 @@ public class BazVisitInstanceController { return R.byPageHelperList(list); } + /** + * 列表 + * @param param + * @return + */ + @GetMapping("/list") + public R> getList(BazVisitInstanceSo param){ + BazVisitInstance query = CopierUtil.copy(param,new BazVisitInstance()); + if(param.getQueryStartDate()!=null){ + query.setQueryEndDate(param.getQueryStartDate().atStartOfDay()); + } + if(param.getQueryEndDate()!=null){ + query.setQueryEndDate(param.getQueryEndDate().atTime(23,59,59)); + } + List list = bazVisitInstanceService.selectBazVisitInstanceList(query); + return R.ok(list); + } + /** * ID查询 * @param id diff --git a/src/main/java/com/qs/serve/modules/baz/controller/my/BazMyVisitInstanceController.java b/src/main/java/com/qs/serve/modules/baz/controller/my/BazMyVisitInstanceController.java index 397dd09f..208c1afc 100644 --- a/src/main/java/com/qs/serve/modules/baz/controller/my/BazMyVisitInstanceController.java +++ b/src/main/java/com/qs/serve/modules/baz/controller/my/BazMyVisitInstanceController.java @@ -94,6 +94,51 @@ public class BazMyVisitInstanceController { } + /** + * 列表 + * @param param + * @return + */ + @GetMapping("/list") + public R> getList(BazVisitInstanceSo param){ + BazVisitInstance query = CopierUtil.copy(param,new BazVisitInstance()); + if(param.getQueryStartDate()!=null){ + query.setQueryEndDate(param.getQueryStartDate().atStartOfDay()); + } + if(param.getQueryEndDate()!=null){ + query.setQueryEndDate(param.getQueryEndDate().atTime(23,59,59)); + } + param.setVisitorId(AuthContextUtils.getSysUserId()); + List list = bazVisitInstanceService.selectBazVisitInstanceList(query); + return R.ok(list); + } + + /** + * 列表(我的部下) + * @param param + * @return + */ + @GetMapping("/list4Under") + public R> list4Under(BazVisitInstanceSo param){ + BazVisitInstance query = CopierUtil.copy(param,new BazVisitInstance()); + if(param.getQueryStartDate()!=null){ + query.setQueryEndDate(param.getQueryStartDate().atStartOfDay()); + } + if(param.getQueryEndDate()!=null){ + query.setQueryEndDate(param.getQueryEndDate().atTime(23,59,59)); + } + List userIds = postUserService.listByChildIds(AuthContextUtils.getSysUserId()); + if(userIds.size()<1){ + return R.ok(); + } + String userId = AuthContextUtils.getSysUserId(); + PageUtil.startPage(); + query.setQueryUserIds(userIds); + query.setIgnoreUserId(userId); + List list = bazVisitInstanceService.selectBazVisitInstanceList(query); + return R.ok(list); + } + /** * 获取用户未完成拜访数量 * @param visitId 拜访id diff --git a/src/main/java/com/qs/serve/modules/baz/entity/BazVisitFlow.java b/src/main/java/com/qs/serve/modules/baz/entity/BazVisitFlow.java index 88f10c2a..84805f05 100644 --- a/src/main/java/com/qs/serve/modules/baz/entity/BazVisitFlow.java +++ b/src/main/java/com/qs/serve/modules/baz/entity/BazVisitFlow.java @@ -52,6 +52,9 @@ public class BazVisitFlow implements Serializable { /** 排序 */ private Integer flowSort; + /** 业务类型:0-普通;1->签到;2-签退;3->小结 */ + private Integer flowBizType; + /** 是否可忽略 */ @NotNull(message = "是否可忽略不能为空") private Integer ignoreFlag; diff --git a/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstance.java b/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstance.java index d5cf4201..1fe06606 100644 --- a/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstance.java +++ b/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstance.java @@ -139,6 +139,40 @@ public class BazVisitInstance implements Serializable { @TableField(exist = false) private List flowList; + /** 拜访小结 */ + @TableField(exist = false) + private String summary; + + /** 签到时间 */ + @TableField(exist = false) + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + private LocalDateTime signTime; + + /** 签退时间 */ + @TableField(exist = false) + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + private LocalDateTime outTime; + + /** 查询开始时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + @TableField(exist = false) + private LocalDateTime queryStartDate; + + /** 查询结束时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + @TableField(exist = false) + private LocalDateTime queryEndDate; + + /** 查询用户ID */ + @TableField(exist = false) + private List queryUserIds; + + /** 忽略的用户ID */ + @TableField(exist = false) + private String ignoreUserId; + public static BazVisitInstance toNewObject(BazVisit source, TargetDTO targetDTO, SysUser sysUser){ BazVisitInstance visitInstance = new BazVisitInstance(); //visitInstance.setTitle(source.getTitle()); diff --git a/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstanceFlow.java b/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstanceFlow.java index 1d90f2a2..3c94e8c3 100644 --- a/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstanceFlow.java +++ b/src/main/java/com/qs/serve/modules/baz/entity/BazVisitInstanceFlow.java @@ -72,6 +72,9 @@ public class BazVisitInstanceFlow implements Serializable { @Length(max = 255,message = "流程名称长度不能超过255字") private String flowTitle; + /** 业务类型:0-普通;1->签到;2-签退;3->小结 */ + private Integer flowBizType; + /** 排序 */ private Integer flowSort; @@ -181,6 +184,7 @@ public class BazVisitInstanceFlow implements Serializable { visitInstanceFlow.setTargetCode(targetDTO.getTargetCode()); visitInstanceFlow.setTargetName(targetDTO.getTargetName()); visitInstanceFlow.setFlowTitle(source.getFlowTitle()); + visitInstanceFlow.setFlowBizType(source.getFlowBizType()); visitInstanceFlow.setFlowSort(source.getFlowSort()); visitInstanceFlow.setIgnoreFlag(source.getIgnoreFlag()); visitInstanceFlow.setPositionState(source.getPositionState()); diff --git a/src/main/java/com/qs/serve/modules/baz/entity/bo/BazVisitFlowBo.java b/src/main/java/com/qs/serve/modules/baz/entity/bo/BazVisitFlowBo.java index 9aae8116..e7b9d6ce 100644 --- a/src/main/java/com/qs/serve/modules/baz/entity/bo/BazVisitFlowBo.java +++ b/src/main/java/com/qs/serve/modules/baz/entity/bo/BazVisitFlowBo.java @@ -41,6 +41,10 @@ public class BazVisitFlowBo implements Serializable { @NotNull(message = "排序不能为空") private Integer flowSort; + /** 业务类型:0-普通;1->签到;2-签退;3->小结 */ + @NotNull(message = "排序不能为空") + private Integer flowBizType; + /** 是否可忽略 */ @NotNull(message = "是否可忽略不能为空") private Integer ignoreFlag; diff --git a/src/main/java/com/qs/serve/modules/baz/mapper/BazVisitInstanceMapper.java b/src/main/java/com/qs/serve/modules/baz/mapper/BazVisitInstanceMapper.java index 712a3b45..0d64e8e0 100644 --- a/src/main/java/com/qs/serve/modules/baz/mapper/BazVisitInstanceMapper.java +++ b/src/main/java/com/qs/serve/modules/baz/mapper/BazVisitInstanceMapper.java @@ -2,6 +2,9 @@ package com.qs.serve.modules.baz.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.qs.serve.modules.baz.entity.BazVisitInstance; +import com.qs.serve.modules.baz.entity.so.BazVisitInstanceSo; +import org.apache.ibatis.annotations.Param; +import java.util.List; /** * 拜访实例 Mapper @@ -10,5 +13,7 @@ import com.qs.serve.modules.baz.entity.BazVisitInstance; */ public interface BazVisitInstanceMapper extends BaseMapper { + List selectBazVisitInstanceList(@Param("query") BazVisitInstance param); + } diff --git a/src/main/java/com/qs/serve/modules/baz/service/BazVisitInstanceService.java b/src/main/java/com/qs/serve/modules/baz/service/BazVisitInstanceService.java index f98bb6e2..11ea786a 100644 --- a/src/main/java/com/qs/serve/modules/baz/service/BazVisitInstanceService.java +++ b/src/main/java/com/qs/serve/modules/baz/service/BazVisitInstanceService.java @@ -4,6 +4,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.qs.serve.modules.baz.entity.BazVisitInstance; import com.qs.serve.modules.baz.entity.bo.BazCreateVisitInstanceBo; import com.qs.serve.modules.baz.entity.bo.BazVisitInstanceFlowBo; +import com.qs.serve.modules.baz.entity.so.BazVisitInstanceSo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 拜访实例 服务接口 @@ -18,5 +22,6 @@ public interface BazVisitInstanceService extends IService { void finished(Long id); + List selectBazVisitInstanceList( BazVisitInstance param); } diff --git a/src/main/java/com/qs/serve/modules/baz/service/impl/BazVisitInstanceServiceImpl.java b/src/main/java/com/qs/serve/modules/baz/service/impl/BazVisitInstanceServiceImpl.java index 69d171c8..acb8b3d3 100644 --- a/src/main/java/com/qs/serve/modules/baz/service/impl/BazVisitInstanceServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/baz/service/impl/BazVisitInstanceServiceImpl.java @@ -11,6 +11,7 @@ import com.qs.serve.modules.baz.common.BazTargetTypeConsts; import com.qs.serve.modules.baz.entity.*; import com.qs.serve.modules.baz.entity.bo.BazCreateVisitInstanceBo; import com.qs.serve.modules.baz.entity.bo.BazVisitInstanceFlowBo; +import com.qs.serve.modules.baz.entity.so.BazVisitInstanceSo; import com.qs.serve.modules.baz.mapper.BazVisitFlowMapper; import com.qs.serve.modules.baz.mapper.BazVisitInstanceFlowMapper; import com.qs.serve.modules.baz.mapper.BazVisitMapper; @@ -253,5 +254,10 @@ public class BazVisitInstanceServiceImpl extends ServiceImpl selectBazVisitInstanceList(BazVisitInstance param) { + return super.baseMapper.selectBazVisitInstanceList(param); + } } diff --git a/src/main/java/com/qs/serve/modules/biz/controller/BizVisitController.java b/src/main/java/com/qs/serve/modules/biz/controller/BizVisitController.java index 37f406e0..4cd226e5 100644 --- a/src/main/java/com/qs/serve/modules/biz/controller/BizVisitController.java +++ b/src/main/java/com/qs/serve/modules/biz/controller/BizVisitController.java @@ -69,6 +69,35 @@ public class BizVisitController { return R.byPageHelperList(list); } + /** + * 列表(我的下属拜访记录) + * @param param + * @return + */ + @GetMapping("/list4Under") + public R> list4Under(BizVisit param){ + List userIds = postUserService.listByChildIds(AuthContextUtils.getSysUserId()); + if(userIds.size()<1){ + return R.ok(); + } + LambdaQueryWrapper visitWrapper = this.getBizVisitLambdaQueryWrapper(param); + visitWrapper.in(BizVisit::getVisitorId,userIds); + List list = bizVisitService.list(visitWrapper); + return R.ok(list); + } + + /** + * 列表 + * @param param + * @return + */ + @GetMapping("/list") + public R> getList(BizVisit param){ + LambdaQueryWrapper visitWrapper = this.getBizVisitLambdaQueryWrapper(param); + List list = bizVisitService.list(visitWrapper); + return R.ok(list); + } + @NotNull private LambdaQueryWrapper getBizVisitLambdaQueryWrapper(BizVisit param) { LambdaQueryWrapper visitWrapper = new LambdaQueryWrapper<>(param); diff --git a/src/main/java/com/qs/serve/modules/biz/controller/my/BizVisitMyController.java b/src/main/java/com/qs/serve/modules/biz/controller/my/BizVisitMyController.java index 47c1191a..bd46a2a7 100644 --- a/src/main/java/com/qs/serve/modules/biz/controller/my/BizVisitMyController.java +++ b/src/main/java/com/qs/serve/modules/biz/controller/my/BizVisitMyController.java @@ -37,6 +37,20 @@ public class BizVisitMyController { private SysUserService sysUserService; private SysPostUserService postUserService; + /** + * 翻页 + * @param param + * @return + */ + @GetMapping("/list") + public R> getList(BizVisit param){ + String userId = AuthContextUtils.getSysUserId(); + param.setVisitorId(userId); + LambdaQueryWrapper visitWrapper = this.getBizVisitLambdaQueryWrapper(param); + List list = bizVisitService.list(visitWrapper); + return R.ok(list); + } + /** * 翻页 * @param param diff --git a/src/main/resources/mapper/baz/BazVisitInstanceMapper.xml b/src/main/resources/mapper/baz/BazVisitInstanceMapper.xml new file mode 100644 index 00000000..e274fb8d --- /dev/null +++ b/src/main/resources/mapper/baz/BazVisitInstanceMapper.xml @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + baz_visit_instance.`id`, + baz_visit_instance.`title`, + baz_visit_instance.`visit_id`, + baz_visit_instance.`target_type`, + baz_visit_instance.`visit_state`, + baz_visit_instance.`visitor_id`, + baz_visit_instance.`visitor_code`, + baz_visit_instance.`visitor_name`, + baz_visit_instance.`target_id`, + baz_visit_instance.`target_code`, + baz_visit_instance.`target_name`, + baz_visit_instance.`target_local_x`, + baz_visit_instance.`target_local_y`, + baz_visit_instance.`target_address`, + baz_visit_instance.`target_map_address`, + baz_visit_instance.`finished_time`, + baz_visit_instance.`miss_local_flag`, + baz_visit_instance.`remark`, + baz_visit_instance.`position_status_content`, + baz_visit_instance.`position_status`, + baz_visit_instance.`create_time`, + baz_visit_instance.`update_time`, + baz_visit_instance.`tenant_id`, + baz_visit_instance.`del_flag`, + baz_visit_instance.`create_by`, + baz_visit_instance.`update_by` + + + +