From 02f8fa00344f77c121fcad5ead5ca97dd390a4f8 Mon Sep 17 00:00:00 2001 From: renkang <8417338+k94314517@user.noreply.gitee.com> Date: 星期二, 26 十一月 2024 16:29:05 +0800 Subject: [PATCH] 客户资料 巡检任务业务 --- server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java | 9 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java | 4 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java | 30 +++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java | 4 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java | 95 +++++++++++ server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java | 8 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java | 35 ++-- server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java | 11 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java | 4 server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java | 1 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java | 5 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java | 7 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java | 11 + server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java | 6 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java | 7 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java | 18 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java | 33 ++++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectTree.java | 93 +++++++++++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java | 44 ++--- 22 files changed, 371 insertions(+), 63 deletions(-) diff --git a/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java b/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java index 1b1d62b..cedffeb 100644 --- a/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java +++ b/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.doumee.dao.system.model.Multifile; +import com.github.yulichang.base.MPJBaseMapper; import java.util.List; @@ -9,6 +10,6 @@ * @author 姹熻箘韫� * @date 2023/05/04 18:18 */ -public interface MultifileMapper extends BaseMapper<Multifile> { +public interface MultifileMapper extends MPJBaseMapper<Multifile> { } diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java b/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java index add8c58..b0a6fb3 100644 --- a/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java +++ b/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java @@ -79,6 +79,9 @@ @TableField(exist = false) private String fileurlFull; + @ApiModelProperty(value = "鍒涘缓浜哄悕绉�") + @TableField(exist = false) + private String userName; @ApiModelProperty(value = "鍐呯綉鏂囦欢鍦板潃") @TableField(exist = false) diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java index 73abf9f..48c59a4 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java @@ -87,6 +87,15 @@ return ApiResponse.success(ywContractService.findPage(pageWrap)); } + + @ApiOperation("鍒楄〃") + @PostMapping("/list") + @CloudRequiredPermission("business:ywcontract:query") + public ApiResponse<List<YwContract>> list (@RequestBody YwContract model,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(ywContractService.findList(model)); + } + + @ApiOperation("瀵煎嚭Excel") @PostMapping("/exportExcel") @CloudRequiredPermission("business:ywcontract:exportExcel") diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java index 735b99e..d412d4d 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java @@ -93,6 +93,17 @@ pageWrap.setLoginUserInfo(this.getLoginUser(token)); return ApiResponse.success(ywContractRoomService.findList(pageWrap)); } + + + @ApiOperation("鏌ヨ鍚堝悓鎴栬处鍗曟埧闂翠俊鎭�") + @PostMapping("/getContractRoom") + @CloudRequiredPermission("business:ywcontractroom:query") + public ApiResponse<List<YwContractRoom>> getContractRoom (@RequestBody YwContractRoom pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + pageWrap.setLoginUserInfo(this.getLoginUser(token)); + return ApiResponse.success(ywContractRoomService.getContractRoom(pageWrap)); + } + + @ApiOperation("鏍规嵁ID鏌ヨ") @GetMapping("/{id}") @CloudRequiredPermission("business:ywcontractroom:query") diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java index f71ff2c..02e8e94 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java @@ -9,6 +9,7 @@ import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.YwProject; import com.doumee.dao.business.model.YwRoom; +import com.doumee.dao.business.vo.ProjectDataVO; import com.doumee.service.business.YwProjectService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -85,6 +86,16 @@ return ApiResponse.success(ywProjectService.findPage(pageWrap)); } + + @ApiOperation("椤圭洰鏍�") + @PostMapping("/tree") + @CloudRequiredPermission("business:ywproject:query") + public ApiResponse<List<ProjectDataVO>> tree (@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(ywProjectService.projectTree()); + } + + + @ApiOperation("瀵煎嚭Excel") @PostMapping("/exportExcel") @CloudRequiredPermission("business:ywproject:exportExcel") diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java index cff24ae..99f3efe 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java @@ -68,7 +68,7 @@ @ApiModelProperty(value = "璁惧鍨嬪彿", example = "1") @ExcelColumn(name="璁惧鍨嬪彿") - private Integer modelNo; + private String modelNo; @ApiModelProperty(value = "鎵�灞炲垎绫荤紪鐮侊紙绠$悊category锛�", example = "1") @ExcelColumn(name="鎵�灞炲垎绫荤紪鐮侊紙绠$悊category锛�") @@ -80,8 +80,7 @@ @ApiModelProperty(value = "渚涘簲鍟�") @ExcelColumn(name="渚涘簲鍟�") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date company; + private String supplier; @ApiModelProperty(value = "杩愮淮鍐呭") @ExcelColumn(name="杩愮淮鍐呭") @@ -103,7 +102,16 @@ @TableField(exist = false) private String realName; - @ApiModelProperty(value = "闄勪欢淇℃伅") + @ApiModelProperty(value = "鍥剧墖鍦板潃") @TableField(exist = false) - private Multifile multifile; + private String fileUrl; + + @ApiModelProperty(value = "鍥剧墖鍦板潃鍏ㄨ矾寰�") + @TableField(exist = false) + private String fileFullUrl; + + +// @ApiModelProperty(value = "闄勪欢淇℃伅") +// @TableField(exist = false) +// private Multifile multifile; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java index 9cacb9e..f9c5638 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java @@ -33,14 +33,14 @@ @ApiModelProperty(value = "鍒涘缓鏃堕棿") @ExcelColumn(name="鍒涘缓鏃堕棿",index = 5, dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createDate; @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1") private Integer editor; @ApiModelProperty(value = "鏇存柊鏃堕棿") - @JsonFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date editDate; @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1") diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java index 54cc29c..cdabeb9 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java @@ -73,5 +73,7 @@ @TableField(exist = false) private String pointName; - + @ApiModelProperty(value = "宸℃鐐圭紪鐮�") + @TableField(exist = false) + private String code; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java index e1e0d05..8b69a5e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java @@ -107,9 +107,13 @@ @TableField(exist = false) private String deviceName; - @ApiModelProperty(value = "闄勪欢淇℃伅") + @ApiModelProperty(value = "闄勪欢鍦板潃") @TableField(exist = false) - private Multifile multifile; + private String fileUrl; + + @ApiModelProperty(value = "闄勪欢鍏ㄨ矾寰勫湴鍧�") + @TableField(exist = false) + private String fileFullUrl; @ApiModelProperty(value = "杩囨护鏁版嵁") @TableField(exist = false) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java new file mode 100644 index 0000000..f292cb0 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java @@ -0,0 +1,33 @@ +package com.doumee.dao.business.vo; + +import com.doumee.dao.business.model.Approve; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * Created by IntelliJ IDEA. + * + * @Author : Rk + * @create 2024/5/23 14:56 + */ +@Data +public class ProjectDataVO { + + @ApiModelProperty(value = "涓氬姟涓婚敭") + private Integer id; + + @ApiModelProperty(value = "涓氬姟鍚嶇О") + private String name; + + @ApiModelProperty(value = "鐖剁骇涓婚敭") + private Integer pId; + + @ApiModelProperty(value = "绾у埆") + private Integer lv; + + @ApiModelProperty(value = "瀛愰泦鏁版嵁") + private List<ProjectDataVO> projectDataVOList; + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectTree.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectTree.java new file mode 100644 index 0000000..98080fe --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectTree.java @@ -0,0 +1,93 @@ +package com.doumee.dao.business.vo; + +import com.doumee.config.DataSyncConfig; +import com.doumee.core.utils.Constants; +import org.apache.commons.lang3.StringUtils; + +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; + +/** + * Created by IntelliJ IDEA. + * + * @Author : Rk + * @create 2023/7/13 10:40 + */ +public class ProjectTree { + + // 淇濆瓨鍙備笌鏋勫缓鏍戝舰鐨勬墍鏈夋暟鎹紙閫氬父鏁版嵁搴撴煡璇㈢粨鏋滐級 + public List<ProjectDataVO> nodeList = new ArrayList<>(); + + + + /** + * 鏋勯�犳柟娉� + * @param nodeList 灏嗘暟鎹泦鍚堣祴鍊肩粰nodeList锛屽嵆鎵�鏈夋暟鎹綔涓烘墍鏈夎妭鐐广�� + */ + public ProjectTree(List<ProjectDataVO> nodeList){ + this.nodeList = nodeList; + } + + + /** + * 鑾峰彇闇�鏋勫缓鐨勬墍鏈夋牴鑺傜偣锛堥《绾ц妭鐐癸級 "0" + * @return 鎵�鏈夋牴鑺傜偣List闆嗗悎 + */ + public List<ProjectDataVO> getRootNode(){ + // 淇濆瓨鎵�鏈夋牴鑺傜偣锛堟墍鏈夋牴鑺傜偣鐨勬暟鎹級 + List<ProjectDataVO> rootNodeList = new ArrayList<>(); + // treeNode锛氭煡璇㈠嚭鐨勬瘡涓�鏉℃暟鎹紙鑺傜偣锛� + for (ProjectDataVO treeNode : nodeList){ + if (Objects.isNull(treeNode.getPId()) && Constants.equalsInteger(treeNode.getLv(),Constants.ZERO)) { + // 鏄紝娣诲姞 + rootNodeList.add(treeNode); + } + } + return rootNodeList; + } + + + /** + * 鏍规嵁姣忎竴涓《绾ц妭鐐癸紙鏍硅妭鐐癸級杩涜鏋勫缓鏍戝舰缁撴瀯 + * @return 鏋勫缓鏁存5鏍� + */ + public List<ProjectDataVO> buildTree(){ + // treeNodes锛氫繚瀛樹竴涓《绾ц妭鐐规墍鏋勫缓鍑烘潵鐨勫畬鏁存爲褰� + List<ProjectDataVO> treeNodes = new ArrayList<ProjectDataVO>(); + // getRootNode()锛氳幏鍙栨墍鏈夌殑鏍硅妭鐐� + for (ProjectDataVO treeRootNode : getRootNode()) { + // 灏嗛《绾ц妭鐐硅繘琛屾瀯寤哄瓙鏍� + treeRootNode = buildChildTree(treeRootNode); + // 瀹屾垚涓�涓《绾ц妭鐐规墍鏋勫缓鐨勬爲褰紝澧炲姞杩涙潵 + treeNodes.add(treeRootNode); + } + return treeNodes; + } + + /** + * 閫掑綊-----鏋勫缓瀛愭爲褰㈢粨鏋� + * @param pNode 鏍硅妭鐐癸紙椤剁骇鑺傜偣锛� + * @return 鏁存5鏍� + */ + public ProjectDataVO buildChildTree(ProjectDataVO pNode){ + List<ProjectDataVO> childTree = new ArrayList<ProjectDataVO>(); + // nodeList锛氭墍鏈夎妭鐐归泦鍚堬紙鎵�鏈夋暟鎹級 + for (ProjectDataVO treeNode : nodeList) { + // 鍒ゆ柇褰撳墠鑺傜偣鐨勭埗鑺傜偣ID鏄惁绛変簬鏍硅妭鐐圭殑ID锛屽嵆褰撳墠鑺傜偣涓哄叾涓嬬殑瀛愯妭鐐� + if (!Objects.isNull(treeNode.getPId()) + && Constants.equalsInteger(treeNode.getPId(),pNode.getId()) + && Constants.equalsInteger((treeNode.getLv() - 1 ),pNode.getLv()) + ) { + // 鍐嶉�掑綊杩涜鍒ゆ柇褰撳墠鑺傜偣鐨勬儏鍐碉紝璋冪敤鑷韩鏂规硶 + childTree.add(buildChildTree(treeNode)); + } + } + // for寰幆缁撴潫锛屽嵆鑺傜偣涓嬫病鏈変换浣曡妭鐐癸紝鏍戝舰鏋勫缓缁撴潫锛岃缃爲缁撴灉 + pNode.setProjectDataVOList(childTree); + return pNode; + } + + + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java index 23e6024..3aa5a39 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java @@ -79,6 +79,9 @@ * @return List<YwContractRoom> */ List<YwContractRoom> findList(YwContractRoom ywContractRoom); + + List<YwContractRoom> getContractRoom(YwContractRoom ywContractRoom); + /** * 鍒嗛〉鏌ヨ diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java index f8a8923..d4232c7 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java @@ -4,6 +4,8 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.YwProject; +import com.doumee.dao.business.vo.ProjectDataVO; + import java.util.List; /** @@ -95,4 +97,7 @@ * @return long */ long count(YwProject ywProject); + + + List<ProjectDataVO> projectTree(); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java index cd31b01..1ee8e66 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java @@ -12,6 +12,7 @@ import com.doumee.dao.business.model.*; import com.doumee.dao.system.MultifileMapper; import com.doumee.dao.system.model.Multifile; +import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.YwContractBillService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -194,7 +195,10 @@ )); //闄勪欢鏁版嵁 - List<Multifile> multifileList = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda() + List<Multifile> multifileList = multifileMapper.selectJoinList(Multifile.class,new MPJLambdaWrapper<Multifile>() + .selectAll(Multifile.class) + .selectAs(SystemUser::getRealname,Multifile::getUserName) + .leftJoin(SystemUser.class,SystemUser::getId,Multifile::getCreator) .eq(Multifile::getObjId,id) .eq(Multifile::getObjType,Constants.MultiFile.FN_CONTRACT_BILL_FILE.getKey())); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifileList)){ diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java index 521d552..8b4a5c7 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java @@ -5,17 +5,19 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; import com.doumee.dao.business.YwContractRoomMapper; -import com.doumee.dao.business.model.YwContractRoom; +import com.doumee.dao.business.model.*; import com.doumee.service.business.YwContractRoomService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.List; +import java.util.Objects; /** * 杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛⊿ervice瀹炵幇 @@ -84,7 +86,31 @@ QueryWrapper<YwContractRoom> wrapper = new QueryWrapper<>(ywContractRoom); return ywContractRoomMapper.selectList(wrapper); } - + + + + @Override + public List<YwContractRoom> getContractRoom(YwContractRoom ywContractRoom){ + List<YwContractRoom> ywContractRoomList = ywContractRoomMapper.selectJoinList(YwContractRoom.class,new MPJLambdaWrapper<YwContractRoom>() + .selectAll(YwContractRoom.class) + .selectAs(YwProject::getName, YwRoom::getProjectName) + .selectAs(YwFloor::getName,YwRoom::getFloorName) + .selectAs(YwBuilding::getName,YwRoom::getBuildingName) + .selectAs(YwRoom::getName,YwContractRoom::getRoomName) + .leftJoin(YwRoom.class,YwRoom::getId,YwContractRoom::getRoomId) + .leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor) + .leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId) + .leftJoin(YwBuilding.class,YwBuilding::getId,YwRoom::getBuildingId) + .eq(Objects.nonNull(ywContractRoom.getType()),YwContractRoom::getType,ywContractRoom.getType()) + .eq(Objects.nonNull(ywContractRoom.getContractId()),YwContractRoom::getContractId,ywContractRoom.getContractId())) + ; + return ywContractRoomList; + + } + + + + @Override public PageData<YwContractRoom> findPage(PageWrap<YwContractRoom> pageWrap) { IPage<YwContractRoom> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java index e8e6bbc..3125b50 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java @@ -1026,7 +1026,9 @@ @Override public List<YwContract> findList(YwContract ywContract) { - QueryWrapper<YwContract> wrapper = new QueryWrapper<>(ywContract); + QueryWrapper<YwContract> wrapper = new QueryWrapper<>(); + wrapper.lambda().eq(YwContract::getIsdeleted,Constants.ZERO); + wrapper.lambda().in(YwContract::getStatus,Constants.ZERO,Constants.ONE,Constants.TWO); return ywContractMapper.selectList(wrapper); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java index 1b4b13a..11080ec 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java @@ -64,27 +64,20 @@ if(ywDeviceMapper.selectCount(new QueryWrapper<YwDevice>().lambda().eq(YwDevice::getIsdeleted,Constants.ZERO).eq(YwDevice::getCode,ywDevice.getCode()))>Constants.ZERO){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁惧缂栧彿閲嶅!"); } -// if(StringUtils.isBlank(ywDevice.getCode())){ -// String code = this.getMaxAutoMaticDeviceCode(); -// while (ywDeviceMapper.selectCount(new QueryWrapper<YwDevice>().lambda().eq(YwDevice::getIsdeleted,Constants.ZERO).eq(YwDevice::getCode,code))>Constants.ZERO){ -// code = this.getMaxAutoMaticDeviceCode(); -// } -// ywDevice.setCode(code); -// }else{ -// -// } ywDevice.setCreateDate(new Date()); ywDevice.setCreator(loginUserInfo.getId()); ywDevice.setIsdeleted(Constants.ZERO); ywDeviceMapper.insert(ywDevice); - if(Objects.nonNull(ywDevice.getMultifile())){ - ywDevice.getMultifile().setCreator(loginUserInfo.getId()); - ywDevice.getMultifile().setCreateDate(new Date()); - ywDevice.getMultifile().setIsdeleted(Constants.ZERO); - ywDevice.getMultifile().setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); - ywDevice.getMultifile().setObjId(ywDevice.getId()); - multifileMapper.insert(ywDevice.getMultifile()); + if(Objects.nonNull(ywDevice.getFileUrl())){ + Multifile multifile = new Multifile(); + multifile.setCreator(loginUserInfo.getId()); + multifile.setCreateDate(new Date()); + multifile.setIsdeleted(Constants.ZERO); + multifile.setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); + multifile.setObjId(ywDevice.getId()); + multifile.setFileurl(ywDevice.getFileUrl()); + multifileMapper.insert(multifile); } return ywDevice.getId(); @@ -135,13 +128,15 @@ .eq(Multifile::getObjId,ywDevice.getId()) .eq(Multifile::getObjType,Constants.MultiFile.FN_DEVICE_FILE.getKey()) ); - if(Objects.nonNull(ywDevice.getMultifile())){ - ywDevice.getMultifile().setCreator(loginUserInfo.getId()); - ywDevice.getMultifile().setCreateDate(new Date()); - ywDevice.getMultifile().setIsdeleted(Constants.ZERO); - ywDevice.getMultifile().setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); - ywDevice.getMultifile().setObjId(ywDevice.getId()); - multifileMapper.insert(ywDevice.getMultifile()); + if(Objects.nonNull(ywDevice.getFileUrl())){ + Multifile multifile = new Multifile(); + multifile.setCreator(loginUserInfo.getId()); + multifile.setCreateDate(new Date()); + multifile.setIsdeleted(Constants.ZERO); + multifile.setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); + multifile.setObjId(ywDevice.getId()); + multifile.setFileurl(ywDevice.getFileUrl()); + multifileMapper.insert(multifile); } @@ -169,8 +164,7 @@ if(Objects.nonNull(multifile)){ String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_DEVICE).getCode(); - multifile.setFileurlFull(path + multifile.getFileurl()); - ywDevice.setMultifile(multifile); + ywDevice.setFileFullUrl(path + multifile.getFileurl()); } return ywDevice; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java index f5b6603..54dea5a 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java @@ -68,7 +68,7 @@ ywLinePoint.setCreateDate(new Date()); ywLinePoint.setCreator(loginUserInfo.getId()); ywLinePoint.setIsdeleted(Constants.ZERO); - ywLinePoint.setLineId(ywLinePoint.getId()); + ywLinePoint.setLineId(ywPatrolLine.getId()); } ywLinePointMapper.insert(ywLinePointList); return ywPatrolLine.getId(); @@ -117,7 +117,7 @@ ){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"宸℃鐐归厤缃敊璇�"); } - ywLinePoint.setLineId(ywLinePoint.getId()); + ywLinePoint.setLineId(ywPatrolLine.getId()); ywLinePoint.setCreateDate(new Date()); ywLinePoint.setCreator(loginUserInfo.getId()); ywLinePoint.setIsdeleted(Constants.ZERO); @@ -148,7 +148,8 @@ List<YwLinePoint> ywLinePointList = ywLinePointMapper.selectJoinList(YwLinePoint.class,new MPJLambdaWrapper<YwLinePoint>() .selectAll(YwLinePoint.class) .selectAs(YwPatrolPoint::getName,YwLinePoint::getPointName) - .leftJoin(YwPatrolLine.class,YwPatrolLine::getId,YwLinePoint::getPointId) + .selectAs(YwPatrolPoint::getCode,YwLinePoint::getCode) + .leftJoin(YwPatrolPoint.class,YwPatrolPoint::getId,YwLinePoint::getPointId) .eq(YwLinePoint::getLineId,id) .orderByAsc(YwLinePoint::getSortnum) ); diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java index 948ccf5..4265e5c 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java @@ -65,13 +65,15 @@ ywPatrolPointMapper.insert(ywPatrolPoint); - if(Objects.nonNull(ywPatrolPoint.getMultifile())){ - ywPatrolPoint.getMultifile().setCreator(loginUserInfo.getId()); - ywPatrolPoint.getMultifile().setCreateDate(new Date()); - ywPatrolPoint.getMultifile().setIsdeleted(Constants.ZERO); - ywPatrolPoint.getMultifile().setObjType(Constants.MultiFile.FN_PATROL_POINT_FILE.getKey()); - ywPatrolPoint.getMultifile().setObjId(ywPatrolPoint.getId()); - multifileMapper.insert(ywPatrolPoint.getMultifile()); + if(Objects.nonNull(ywPatrolPoint.getFileUrl())){ + Multifile multifile = new Multifile(); + multifile.setCreator(loginUserInfo.getId()); + multifile.setCreateDate(new Date()); + multifile.setIsdeleted(Constants.ZERO); + multifile.setObjType(Constants.MultiFile.FN_PATROL_POINT_FILE.getKey()); + multifile.setObjId(ywPatrolPoint.getId()); + multifile.setFileurl(ywPatrolPoint.getFileUrl()); + multifileMapper.insert(multifile); } return ywPatrolPoint.getId(); @@ -123,13 +125,15 @@ .eq(Multifile::getObjType,Constants.MultiFile.FN_PATROL_POINT_FILE.getKey()) ); - if(Objects.nonNull(ywPatrolPoint.getMultifile())){ - ywPatrolPoint.getMultifile().setCreator(loginUserInfo.getId()); - ywPatrolPoint.getMultifile().setCreateDate(new Date()); - ywPatrolPoint.getMultifile().setIsdeleted(Constants.ZERO); - ywPatrolPoint.getMultifile().setObjType(Constants.MultiFile.FN_PATROL_POINT_FILE.getKey()); - ywPatrolPoint.getMultifile().setObjId(ywPatrolPoint.getId()); - multifileMapper.insert(ywPatrolPoint.getMultifile()); + if(Objects.nonNull(ywPatrolPoint.getFileUrl())){ + Multifile multifile = new Multifile(); + multifile.setCreator(loginUserInfo.getId()); + multifile.setCreateDate(new Date()); + multifile.setIsdeleted(Constants.ZERO); + multifile.setObjType(Constants.MultiFile.FN_PATROL_POINT_FILE.getKey()); + multifile.setObjId(ywPatrolPoint.getId()); + multifile.setFileurl(ywPatrolPoint.getFileUrl()); + multifileMapper.insert(multifile); } } @@ -157,8 +161,7 @@ if(Objects.nonNull(multifile)){ String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_PATROL).getCode(); - multifile.setFileurlFull(path + multifile.getFileurl()); - ywPatrolPoint.setMultifile(multifile); + ywPatrolPoint.setFileFullUrl(path + multifile.getFileurl()); } return ywPatrolPoint; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java index d85a2fe..6f532e1 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java @@ -26,6 +26,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.util.*; @@ -51,6 +52,7 @@ private RedisTemplate<String, Object> redisTemplate; @Override + @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public Integer create(YwPatrolScheme ywPatrolScheme) { if(Objects.isNull(ywPatrolScheme) || StringUtils.isBlank(ywPatrolScheme.getTitle()) @@ -122,9 +124,10 @@ //姣忔湀鏍规嵁鏃ユ湡鐢熸垚 鏍规嵁鏃ユ湡鑾峰彇鏄摢澶� List<String> days = Arrays.asList(ywPatrolScheme.getCircleDays().split(",")); String dayStr = DateUtil.getFomartDate(schemeDate,"dd"); - if(Objects.isNull(days.stream().filter(i->StringUtils.equals(i,dayStr)).findFirst().get())){ + Optional<String> optional = days.stream().filter(i->StringUtils.equals(i,dayStr)).findAny(); + if(Objects.isNull(optional)){ return; - }; + } } String schemeDateStr = DateUtil.getDate(schemeDate,"yyyy-MM-dd"); //鏌ヨ褰撳ぉ鏄惁鐢熸垚杩囨暟鎹� diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java index 3bfe5a0..ec9f16f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java @@ -121,6 +121,7 @@ YwPatrolTask model = pageWrap.getModel(); queryWrapper.selectAll(YwPatrolTask.class) .selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode) + .selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle) .selectAs(SystemUser::getRealname,YwPatrolTask::getUserName) .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTask::getDealUserId) .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java index 5e27677..47c6138 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java @@ -5,18 +5,26 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; +import com.doumee.dao.business.YwBuildingMapper; +import com.doumee.dao.business.YwFloorMapper; import com.doumee.dao.business.YwProjectMapper; -import com.doumee.dao.business.model.Company; -import com.doumee.dao.business.model.YwProject; +import com.doumee.dao.business.YwRoomMapper; +import com.doumee.dao.business.model.*; +import com.doumee.dao.business.vo.CompanyTree; +import com.doumee.dao.business.vo.ProjectDataVO; +import com.doumee.dao.business.vo.ProjectTree; import com.doumee.service.business.YwProjectService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.checkerframework.checker.units.qual.A; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -30,6 +38,15 @@ @Autowired private YwProjectMapper ywProjectMapper; + + @Autowired + private YwFloorMapper ywFloorMapper; + + @Autowired + private YwRoomMapper ywRoomMapper; + + @Autowired + private YwBuildingMapper ywBuildingMapper; @Override public Integer create(YwProject model) { @@ -162,4 +179,78 @@ QueryWrapper<YwProject> wrapper = new QueryWrapper<>(ywProject); return ywProjectMapper.selectCount(wrapper); } + + + @Override + public List<ProjectDataVO> projectTree(){ + List<ProjectDataVO> projectDataVOList = new ArrayList<>(); + List<YwProject> ywProjectList = ywProjectMapper.selectList(new QueryWrapper<YwProject>().lambda() + .eq(YwProject::getIsdeleted,Constants.ZERO) + .eq(YwProject::getStatus,Constants.ZERO) + .orderByAsc(YwProject::getSortnum) + ); + for (YwProject ywProject:ywProjectList) { + ProjectDataVO projectDataVO = new ProjectDataVO(); + BeanUtils.copyProperties(ywProject,projectDataVO); + projectDataVO.setLv(Constants.ZERO); + projectDataVOList.add(projectDataVO); + } + + List<YwBuilding> ywBuildingList = ywBuildingMapper.selectList(new QueryWrapper<YwBuilding>().lambda() + .eq(YwBuilding::getIsdeleted,Constants.ZERO) + .eq(YwBuilding::getStatus,Constants.ZERO) + .orderByAsc(YwBuilding::getSortnum) + ); + + for (YwBuilding data:ywBuildingList) { + ProjectDataVO projectDataVO = new ProjectDataVO(); + BeanUtils.copyProperties(data,projectDataVO); + projectDataVO.setPId(data.getProjectId()); + projectDataVO.setLv(Constants.ONE); + projectDataVOList.add(projectDataVO); + } + + + List<YwFloor> ywFloorList = ywFloorMapper.selectList(new QueryWrapper<YwFloor>().lambda() + .eq(YwFloor::getIsdeleted,Constants.ZERO) + .eq(YwFloor::getStatus,Constants.ZERO) + .orderByAsc(YwFloor::getSortnum) + ); + + for (YwFloor data:ywFloorList) { + ProjectDataVO projectDataVO = new ProjectDataVO(); + BeanUtils.copyProperties(data,projectDataVO); + projectDataVO.setPId(data.getBuildingId()); + projectDataVO.setLv(Constants.TWO); + projectDataVOList.add(projectDataVO); + } + + + + List<YwRoom> ywRoomList = ywRoomMapper.selectList(new QueryWrapper<YwRoom>().lambda() + .eq(YwRoom::getIsdeleted,Constants.ZERO) + .eq(YwRoom::getStatus,Constants.ZERO) + .orderByAsc(YwRoom::getSortnum) + ); + + + for (YwRoom data:ywRoomList) { + ProjectDataVO projectDataVO = new ProjectDataVO(); + BeanUtils.copyProperties(data,projectDataVO); + projectDataVO.setName(data.getCode()); + projectDataVO.setPId(data.getFloor()); + projectDataVO.setLv(Constants.THREE); + projectDataVOList.add(projectDataVO); + } + + ProjectTree treeBuild = new ProjectTree(projectDataVOList); + projectDataVOList = treeBuild.buildTree(); + return projectDataVOList; + + } + + + + + } -- Gitblit v1.9.3