From 0a99001be87811ebb884b8f3f491f48054a22330 Mon Sep 17 00:00:00 2001
From: renkang <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 13 五月 2025 17:29:00 +0800
Subject: [PATCH] 客户资料 巡检任务业务
---
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktakingRecord.java | 26 -
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java | 7
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml | 2
server/system_service/src/main/java/com/doumee/dao/system/dto/ImportMaterialDTO.java | 60 ++++
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java | 5
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java | 22
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java | 13
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwMaterial.java | 30 -
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java | 28 -
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java | 5
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java | 1
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStock.java | 1
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java | 12
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwMaterialController.java | 21 +
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktaking.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java | 56 +++-
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwOutinboundExcelOutVO.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwMaterialService.java | 5
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java | 95 ++++++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java | 27 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 12
server/visits/dmvisit_service/src/main/resources/application-test.yml | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java | 4
server/system_gateway/src/main/resources/bootstrap.yml | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java | 2
server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java | 8
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java | 153 ++++++++--
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java | 10
server/visits/admin_timer/src/main/java/com/doumee/api/YwTimerController.java | 11
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java | 161 ++++++----
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java | 2
39 files changed, 594 insertions(+), 233 deletions(-)
diff --git a/server/system_gateway/src/main/resources/bootstrap.yml b/server/system_gateway/src/main/resources/bootstrap.yml
index 8ecd0a5..bbb8fb4 100644
--- a/server/system_gateway/src/main/resources/bootstrap.yml
+++ b/server/system_gateway/src/main/resources/bootstrap.yml
@@ -1,11 +1,11 @@
spring:
profiles:
- active: dev
+ active: pro
application:
name: system_gateway
# 瀹夊叏閰嶇疆
- security:
# 楠岀鍏挜鍦板潃
+ security:
oauth2:
authorizationserver:
token-uri: https://
\ No newline at end of file
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/dto/ImportMaterialDTO.java b/server/system_service/src/main/java/com/doumee/dao/system/dto/ImportMaterialDTO.java
new file mode 100644
index 0000000..716e7b5
--- /dev/null
+++ b/server/system_service/src/main/java/com/doumee/dao/system/dto/ImportMaterialDTO.java
@@ -0,0 +1,60 @@
+package com.doumee.dao.system.dto;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author Eva.Caesar Liu
+ * @date 2023/05/04 18:21
+ */
+@Data
+@ApiModel("瀵煎叆鐗╂枡淇℃伅")
+public class ImportMaterialDTO {
+
+ @ApiModelProperty(value = "鐗╂枡缂栧彿")
+ @ExcelColumn(name="鐗╂枡缂栧彿",index = 0,width = 10)
+ private String code;
+
+ @ApiModelProperty(value = "鐗╂枡鍚嶇О")
+ @ExcelColumn(name="鐗╂枡鍚嶇О",index = 1,width = 10)
+ private String name;
+
+ @ApiModelProperty(value = "鐗╂枡鍒嗙被")
+ @ExcelColumn(name="鐗╂枡鍒嗙被",index = 2,width = 10)
+ private String categoryName;
+
+ @ApiModelProperty(value = "鐗╂枡瀛愬垎绫�")
+ @ExcelColumn(name="鐗╂枡瀛愬垎绫�",index = 3,width = 10)
+ private String categoryChildName;
+
+ @ApiModelProperty(value = "鏉$爜")
+ @ExcelColumn(name="鏉$爜",index = 4,width = 10)
+ private String qrcode;
+
+ @ApiModelProperty(value = "鍝佺墝")
+ @ExcelColumn(name="鍝佺墝",index = 5,width = 10)
+ private String brand;
+
+ @ApiModelProperty(value = "瑙勬牸鍨嬪彿")
+ @ExcelColumn(name="瑙勬牸鍨嬪彿",index = 6,width = 10)
+ private String attr;
+
+ @ApiModelProperty(value = "鍗曚綅")
+ @ExcelColumn(name="鍗曚綅",index = 7,width = 10)
+ private String unitName;
+
+ @ApiModelProperty(value = "瀹夊叏搴撳瓨锛堜笅闄愶級", example = "1")
+ @ExcelColumn(name="瀹夊叏搴撳瓨锛堜笅闄愶級",index = 8,width = 16)
+ private BigDecimal minStock;
+
+ @ApiModelProperty(value = "瀹夊叏搴撳瓨锛堜笂闄愶級", example = "1")
+ @ExcelColumn(name="瀹夊叏搴撳瓨锛堜笂闄愶級",index = 9,width = 16)
+ private BigDecimal maxStock;
+
+
+
+}
diff --git a/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java b/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
index 3dd4077..3a31274 100644
--- a/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
+++ b/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
@@ -98,4 +98,11 @@
@GetMapping("/timer/yw/ywPatrolSchemeTaskTimer")
ApiResponse ywPatrolSchemeTaskTimer();
+ @ApiOperation("銆愰槣瀹佽繍缁淬�戝畾鏃舵洿鏂版埧婧愮璧佺姸鎬�")
+ @GetMapping("/timer/yw/ywRoomStatusTimer")
+ ApiResponse ywRoomStatusTimer();
+
+
+
+
}
diff --git a/server/visits/admin_timer/src/main/java/com/doumee/api/YwTimerController.java b/server/visits/admin_timer/src/main/java/com/doumee/api/YwTimerController.java
index eda709f..4d0d49f 100644
--- a/server/visits/admin_timer/src/main/java/com/doumee/api/YwTimerController.java
+++ b/server/visits/admin_timer/src/main/java/com/doumee/api/YwTimerController.java
@@ -83,6 +83,17 @@
}
+
+ @ApiOperation("瀹氭椂鏇存柊鎴挎簮绉熻祦鐘舵��")
+ @GetMapping("/ywRoomStatusTimer")
+ public ApiResponse ywRoomStatusTimer() {
+ ywContractService.updRentContractStatus();
+ ywContractService.updRoomLeaseNowStatus();
+ return ApiResponse.success("瀹氭椂鏇存柊鎴挎簮绉熻祦鐘舵�佷换鍔℃墽琛屼腑");
+ }
+
+
+
@ApiOperation("瀹氭椂鏇存柊redis鏁版嵁")
@GetMapping("/ywUpdRedisDataTimer")
public ApiResponse ywUpdRedisDataTimer() {
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
index 1d6d9d6..4916c65 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
@@ -14,6 +14,7 @@
import com.doumee.dao.business.vo.YwContractBillCallDataVO;
import com.doumee.dao.business.vo.YwContractBillDataVO;
import com.doumee.service.business.YwContractBillService;
+import com.doumee.service.business.YwContractService;
import com.doumee.service.business.impl.SmsEmailServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -38,6 +39,9 @@
@Autowired
private SmsEmailServiceImpl smsEmailService;
+
+ @Autowired
+ private YwContractService ywContractService;
@PreventRepeat
@ApiOperation("鏂板缓")
@@ -129,6 +133,15 @@
return ApiResponse.success("鐢熸垚鎴愬姛");
}
+ @LoginNoRequired
+ @ApiOperation("鏇存柊鎴挎簮绉熻祦鐘舵��")
+ @GetMapping("/dealRoomStatus")
+ public ApiResponse dealRoomStatus() {
+ ywContractService.updRentContractStatus();
+ ywContractService.updRoomLeaseNowStatus();
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
+
@ApiOperation("鑾峰彇寰呭鐞嗚处鍗�")
@GetMapping("/getWaitDealList")
@CloudRequiredPermission("business:ywcontractbill:query")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwMaterialController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwMaterialController.java
index 4470c79..1929afc 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwMaterialController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwMaterialController.java
@@ -10,13 +10,15 @@
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.YwMaterial;
import com.doumee.service.business.YwMaterialService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
+import io.swagger.annotations.*;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
import javax.servlet.http.HttpServletResponse;
+import java.io.File;
import java.util.ArrayList;
import java.util.List;
@@ -91,7 +93,7 @@
@PostMapping("/exportExcel")
@CloudRequiredPermission("business:ywmaterial:exportExcel")
public void exportExcel (@RequestBody PageWrap<YwMaterial> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- ExcelExporter.build(YwMaterial.class).export(ywMaterialService.findPage(pageWrap).getRecords(), "杩愮淮璧勪骇淇℃伅琛�", response);
+ ExcelExporter.build(YwMaterial.class).export(ywMaterialService.findPage(pageWrap).getRecords(), "鐗╂枡淇℃伅琛�", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@@ -100,4 +102,15 @@
public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywMaterialService.getDetail(id));
}
+
+
+ @ApiOperation("鐗╂枡淇℃伅瀵煎叆")
+ @PostMapping("/importMaterialBatch")
+ @CloudRequiredPermission("business:ywmaterial:query")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "file", value = "file", required = true, paramType = "query", dataType = "file", dataTypeClass = File.class),
+ })
+ public ApiResponse importMaterialBatch(@ApiParam(value = "file") MultipartFile file,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ return ApiResponse.success(ywMaterialService.importMaterialBatch(file,getLoginUser(token)));
+ }
}
diff --git a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
index 9dc10e9..2df12af 100644
--- a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
+++ b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
spring:
profiles:
- active: dev
+ active: pro
application:
name: visitsAdmin
# 瀹夊叏閰嶇疆
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java
index e0c27a1..9adc1f6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java
@@ -94,7 +94,7 @@
IContext context = report.createContext();
for (YwTempConfig ywTempConfig:ywTempConfigList) {
if(StringUtils.isBlank(ywTempConfig.getUrl())){
- ywTempConfig.setUrl("-");
+ ywTempConfig.setUrl(" - ");
}
context.put(ywTempConfig.getTitle().replace("${","").replace("}",""), ywTempConfig.getUrl());
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
index de03a54..e476672 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
@@ -204,6 +204,10 @@
@ExcelColumn(name="鐗╀笟璐规�婚噾棰�")
private BigDecimal wyTotalFee;
+ @ApiModelProperty(value = "鍚堝悓鐘舵�侀泦鍚�")
+ @TableField(exist = false)
+ private List<Integer> statusList;
+
@ApiModelProperty(value = "鎴块棿涓婚敭 鏌ヨ浣跨敤")
@TableField(exist = false)
private Integer roomId;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
index c59d394..dadcb8f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
@@ -157,11 +157,11 @@
@TableField(exist = false)
private Integer customerId;
- @ApiModelProperty(value = "鏄惁鍙戦�侀偖浠讹細0=鍚︼紱1=鏄�", example = "1")
+ @ApiModelProperty(value = "鏄惁鍙戦�侀偖浠讹細0=鍚︼紱1=鍙戦�佹垚鍔燂紱2=鍙戦�佸け璐�", example = "1")
@TableField(exist = false)
private Integer isSendEmail;
- @ApiModelProperty(value = "鏄惁鍙戦�佺煭淇★細0=鍚︼紱1=鏄�", example = "1")
+ @ApiModelProperty(value = "鏄惁鍙戦�佺煭淇★細0=鍚︼紱1=鍙戦�佹垚鍔燂紱2=鍙戦�佸け璐�", example = "1")
@TableField(exist = false)
private Integer isSendSms;
@@ -178,6 +178,7 @@
@ExcelColumn(name="鍚堝悓缂栧彿",index = 2,width = 10)
@TableField(exist = false)
private String contractCode;
+
@ApiModelProperty(value = "鍚堝悓鐘舵��", example = "1")
@TableField(exist = false)
private Integer contractStatus;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwMaterial.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwMaterial.java
index 37e6303..258a1c5 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwMaterial.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwMaterial.java
@@ -26,89 +26,77 @@
@TableId(type = IdType.AUTO)
@ApiModelProperty(value = "涓婚敭", example = "1")
- @ExcelColumn(name="涓婚敭")
private Integer id;
@ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
private Integer creator;
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
- @ExcelColumn(name="鍒涘缓鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鏇存柊浜虹紪鐮�")
private Integer editor;
@ApiModelProperty(value = "鏇存柊鏃堕棿")
- @ExcelColumn(name="鏇存柊鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
- @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
private Integer isdeleted;
@ApiModelProperty(value = "澶囨敞")
- @ExcelColumn(name="澶囨敞")
private String remark;
@ApiModelProperty(value = "鍚嶇О")
- @ExcelColumn(name="鍚嶇О")
+ @ExcelColumn(name="鐗╂枡鍚嶇О",index = 1,width = 10)
private String name;
@ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
- @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ @ExcelColumn(name="鐘舵��",index = 8,width = 8,valueMapping = "0=鍚敤;1=绂佺敤;")
private Integer status;
@ApiModelProperty(value = "缂栧彿")
- @ExcelColumn(name="缂栧彿")
+ @ExcelColumn(name="鐗╂枡缂栧彿",index = 0,width = 10)
private String code;
@ApiModelProperty(value = "鎵�灞炰竴绾у垎绫荤紪鐮侊紙鍏宠仈category)", example = "1")
- @ExcelColumn(name="鎵�灞炰竴绾у垎绫荤紪鐮侊紙鍏宠仈category)")
private Integer parentCateId;
@ApiModelProperty(value = "鎵�灞炰簩绾у垎绫荤紪鐮�(鍏宠仈category锛�", example = "1")
- @ExcelColumn(name="鎵�灞炰簩绾у垎绫荤紪鐮�(鍏宠仈category锛�")
private Integer cateId;
@ApiModelProperty(value = "鏉$爜")
- @ExcelColumn(name="鏉$爜")
+ @ExcelColumn(name="鏉$爜",index = 2,width = 10)
private String qrcode;
@ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
- @ExcelColumn(name="鎺掑簭鐮�")
private Integer sortnum;
@ApiModelProperty(value = "鍝佺墝")
- @ExcelColumn(name="鍝佺墝")
+ @ExcelColumn(name="鍝佺墝",index = 3,width = 10)
private String brand;
@ApiModelProperty(value = "瑙勬牸鍨嬪彿")
- @ExcelColumn(name="瑙勬牸鍨嬪彿")
+ @ExcelColumn(name="瑙勬牸鍨嬪彿",index = 4,width = 10)
private String attr;
@ApiModelProperty(value = "瀹夊叏搴撳瓨锛堜笅闄愶級", example = "1")
- @ExcelColumn(name="瀹夊叏搴撳瓨锛堜笅闄愶級")
+ @ExcelColumn(name="瀹夊叏搴撳瓨锛堜笅闄愶級",index = 6,width = 16)
private BigDecimal minStock;
@ApiModelProperty(value = "瀹夊叏搴撳瓨锛堜笂闄愶級", example = "1")
- @ExcelColumn(name="瀹夊叏搴撳瓨锛堜笂闄愶級")
+ @ExcelColumn(name="瀹夊叏搴撳瓨锛堜笂闄愶級",index = 7,width = 16)
private BigDecimal maxStock;
@ApiModelProperty(value = "鍗曚綅")
- @ExcelColumn(name="鍗曚綅")
+ @ExcelColumn(name="鍗曚綅",index = 5,width = 10)
private String unitName;
@ApiModelProperty(value = "鎵�灞炴埧婧愮紪鐮�(鍏宠仈yw_room)", example = "1")
- @ExcelColumn(name="鎵�灞炴埧婧愮紪鐮�(鍏宠仈yw_room)")
private Integer roomId;
@ApiModelProperty(value = "鏄惁鑷姩缂栫爜锛�0=鍚︼紱1=鏄紱", example = "1")
- @ExcelColumn(name="鏄惁鑷姩缂栫爜锛�0=鍚︼紱1=鏄紱")
private Integer autoCode;
@ApiModelProperty(value = "闄勪欢淇℃伅", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java
index 36e1608..4ce319c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java
@@ -92,6 +92,9 @@
@ExcelColumn(name="鍗曟嵁缂栧彿")
private String code;
+ @ApiModelProperty(value = "棰嗙敤浜�", example = "1")
+ private Integer outUserId;
+
@ApiModelProperty(value = "鍑哄叆搴撴暟鎹槑缁�", example = "1")
@TableField(exist = false)
private List<YwOutinboundRecord> recordList;
@@ -108,4 +111,8 @@
@ApiModelProperty(value = "鎿嶄綔浜哄悕绉�", example = "1")
@TableField(exist = false)
private String createUserName;
+
+ @ApiModelProperty(value = "棰嗙敤浜哄悕绉�", example = "1")
+ @TableField(exist = false)
+ private String outUserName;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java
index d8a3f12..ef8192b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java
@@ -24,53 +24,47 @@
@TableId(type = IdType.AUTO)
@ApiModelProperty(value = "涓婚敭", example = "1")
- @ExcelColumn(name="涓婚敭")
private Integer id;
@ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
private Integer creator;
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
- @ExcelColumn(name="鍒涘缓鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ExcelColumn(name="鍒涘缓鏃堕棿",width = 10,index = 11,dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鏇存柊浜虹紪鐮�")
private Integer editor;
@ApiModelProperty(value = "鏇存柊鏃堕棿")
- @ExcelColumn(name="鏇存柊鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
- @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
private Integer isdeleted;
@ApiModelProperty(value = "澶囨敞")
- @ExcelColumn(name="澶囨敞")
private String remark;
@ApiModelProperty(value = "鍑哄叆搴撹褰曚富閿�", example = "1")
- @ExcelColumn(name="鍑哄叆搴撹褰曚富閿�")
private Integer outInBoundId;
@ApiModelProperty(value = "鐗╄祫缂栫爜锛堝叧鑱攜w_material)", example = "1")
- @ExcelColumn(name="鐗╄祫缂栫爜锛堝叧鑱攜w_material)")
private Integer materialId;
@ApiModelProperty(value = "鏁伴噺", example = "1")
- @ExcelColumn(name="鏁伴噺")
+ @ExcelColumn(name="鏁伴噺",width = 10,index = 5)
private BigDecimal stock;
@ApiModelProperty(value = "璧勪骇缂栫爜")
@TableField(exist = false)
+ @ExcelColumn(name="鐗╂枡缂栫爜",width = 10,index = 1)
private String materialCode;
@ApiModelProperty(value = "璧勪骇鍚嶇О")
@TableField(exist = false)
+ @ExcelColumn(name="鐗╂枡鍚嶇О",width = 10,index = 2)
private String materialName;
@ApiModelProperty(value = "璧勪骇鏉″舰鐮�")
@@ -83,6 +77,7 @@
@ApiModelProperty(value = "璧勪骇鍗曚綅")
@TableField(exist = false)
+ @ExcelColumn(name="鍗曚綅",width = 10,index = 6)
private String materialUnitName;
@ApiModelProperty(value = "鎿嶄綔绫诲瀷锛�1=鍑哄簱锛�0=鍏ュ簱锛堝垎椤靛垪琛ㄦ煡璇娇鐢級", example = "1")
@@ -95,31 +90,38 @@
@ApiModelProperty(value = "浠撳簱鍚嶇О")
@TableField(exist = false)
+ @ExcelColumn(name="浠撳簱",width = 10,index = 8)
private String warehouseName;
@ApiModelProperty(value = "鍗曟嵁鏃ユ湡")
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd")
+ @ExcelColumn(name="鍗曟嵁鏃ユ湡",width = 10,index = 0,dateFormat = "yyyy-MM-dd")
private Date doneDate;
@ApiModelProperty(value = "涓�绾у垎绫诲悕绉�")
@TableField(exist = false)
+ @ExcelColumn(name="鐗╂枡鍒嗙被",width = 10,index = 3)
private String categoryParentName;
@ApiModelProperty(value = "浜岀骇鍒嗙被鍚嶇О")
@TableField(exist = false)
+ @ExcelColumn(name="鐗╂枡瀛愬垎绫�",width = 10,index = 4)
private String categoryName;
@ApiModelProperty(value = "鎿嶄綔浜哄悕绉�", example = "1")
@TableField(exist = false)
+ @ExcelColumn(name="鍒涘缓浜�",width = 10,index = 10)
private String createUserName;
@ApiModelProperty(value = "鍗曟嵁缂栧彿", example = "1")
@TableField(exist = false)
+ @ExcelColumn(name="鍗曟嵁缂栧彿",width = 10,index = 9)
private String code;
@ApiModelProperty(value = "绫诲瀷 0閲囪喘鍏ュ簱 1棰嗙敤閫�鍥� 2璋冩暣鍏ュ簱 3鍏朵粬鍏ュ簱 4鐩樼泩鍏ュ簱 5棰嗙敤鍑哄簱 6浠撳簱鍑哄簱 7璋冩暣鍑哄簱 8閲囪喘鍑哄簱 9鍏朵粬鍑哄簱 10鐩樹簭鍑哄簱", example = "1")
@TableField(exist = false)
+ @ExcelColumn(name="绫诲瀷",width = 10,index = 7,valueMapping = "0=閲囪喘鍏ュ簱;1=棰嗙敤閫�鍥�;2=璋冩暣鍏ュ簱;3=鍏朵粬鍏ュ簱;4=鐩樼泩鍏ュ簱;5=棰嗙敤鍑哄簱;6=浠撳簱鍑哄簱;7=璋冩暣鍑哄簱;8=閲囪喘鍑哄簱;9=鍏朵粬鍑哄簱;10=鐩樹簭鍑哄簱;")
private Integer type;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java
index 69f6075..2ea3bf2 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java
@@ -54,7 +54,7 @@
private String remark;
@ApiModelProperty(value = "鐘舵�� 0寰呭紑濮� 1杩涜涓� 2宸茶秴鏈� 3宸插畬鎴� 4宸插彇娑�", example = "1")
- @ExcelColumn(name="鎵ц缁撴灉",index = 7,width = 6,valueMapping = "0=寰呭紑濮�;1=杩涜涓�;2=宸茶秴鏈�;3=宸插畬鎴�;")
+ @ExcelColumn(name="鎵ц缁撴灉",index = 7,width = 6,valueMapping = "0=寰呭紑濮�;1=杩涜涓�;2=宸茶秴鏈�;3=宸插畬鎴�;4=宸插彇娑�;")
private Integer status;
@ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
@@ -103,6 +103,9 @@
@TableField(exist = false)
private String userName;
+ @ApiModelProperty(value = "鍙鐞嗕汉锛堝涓互,鍒嗗壊锛�")
+ @TableField(exist = false)
+ private String userIds;
@ApiModelProperty(value = "浠诲姟鐘舵�侊細澶氫釜浠�,鍒嗗壊 0寰呭紑濮� 1杩涜涓� 2宸茶秴鏈� 3宸插畬鎴� 4宸插彇娑�")
@TableField(exist = false)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
index caa8f4a..d0434c4 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
@@ -106,6 +106,13 @@
@ExcelColumn(name="鎵�灞炴ゼ瀹囩紪鐮侊紙鍏宠仈yw_building)")
private Integer buildingId;
+ @ApiModelProperty(value = "褰撳墠绉熻祦鐘舵�侊細0=鏈璧侊紱1=宸茬璧�")
+ private Integer leaseNowStatus;
+
+ @ApiModelProperty(value = "閫�绉熷埌鏈熸棩鏈燂紝閫�绉熶娇鐢�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date leaseRentDate;
+
@ApiModelProperty(value = "绉熻祦鐘舵�侊細0=寰呯璧侊紱1=宸茬璧� ;2=鏈紑鍚璧�", example = "1")
@TableField(exist = false)
private Integer leaseStatus;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStock.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStock.java
index 16a6200..b402a67 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStock.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStock.java
@@ -57,7 +57,6 @@
@ExcelColumn(name="鏁伴噺",index = 6,width = 10)
private BigDecimal stock;
-
@ApiModelProperty(value = "鐗╂枡缂栫爜")
@ExcelColumn(name="鐗╂枡缂栫爜",index = 0,width = 10)
@TableField(exist = false)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktaking.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktaking.java
index 3addc97..ea7869f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktaking.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktaking.java
@@ -35,7 +35,7 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktakingRecord.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktakingRecord.java
index 6672876..44c5b68 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktakingRecord.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwStocktakingRecord.java
@@ -25,97 +25,91 @@
@TableId(type = IdType.AUTO)
@ApiModelProperty(value = "涓婚敭", example = "1")
- @ExcelColumn(name="涓婚敭")
private Integer id;
@ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
private Integer creator;
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
- @ExcelColumn(name="鍒涘缓鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鏇存柊浜虹紪鐮�")
private Integer editor;
@ApiModelProperty(value = "鏇存柊鏃堕棿")
- @ExcelColumn(name="鏇存柊鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
- @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
private Integer isdeleted;
@ApiModelProperty(value = "澶囨敞")
- @ExcelColumn(name="澶囨敞")
+ @ExcelColumn(name="澶囨敞",index = 9,width = 30)
private String remark;
@ApiModelProperty(value = "鐘舵�� 0鏈紑濮� 1宸茬洏鐐�", example = "1")
- @ExcelColumn(name="鐘舵�� 0鏈紑濮� 1宸茬洏鐐�")
private Integer status;
@ApiModelProperty(value = "鐩樼偣鍛樼紪鐮�(鍏宠仈system_user)")
- @ExcelColumn(name="鐩樼偣鍛樼紪鐮�(鍏宠仈system_user)")
private String userId;
@ApiModelProperty(value = "鐩樼偣鏃堕棿")
- @ExcelColumn(name="鐩樼偣鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date planDate;
@ApiModelProperty(value = "缂栧彿")
- @ExcelColumn(name="缂栧彿")
private String code;
@ApiModelProperty(value = "鐗╄祫缂栫爜锛堝叧鑱攜w_material)", example = "1")
- @ExcelColumn(name="鐗╄祫缂栫爜锛堝叧鑱攜w_material)")
private Integer materialId;
@ApiModelProperty(value = "璐﹂潰鏁伴噺", example = "1")
- @ExcelColumn(name="璐﹂潰鏁伴噺")
+ @ExcelColumn(name="璐﹂潰鏁伴噺",index = 7,width = 10)
private BigDecimal stock;
@ApiModelProperty(value = "瀹為檯鐩樼偣搴撳瓨閲�", example = "1")
- @ExcelColumn(name="瀹為檯鐩樼偣搴撳瓨閲�")
+ @ExcelColumn(name="鐩樼偣鏁伴噺",index = 8,width = 10)
private BigDecimal actStock;
@ApiModelProperty(value = "鐩樼偣 0璐﹀疄鐩哥 1鐩樹簭 2鐩樼泩", example = "1")
- @ExcelColumn(name="鐩樼偣 0璐﹀疄鐩哥 1鐩樹簭 2鐩樼泩")
private Integer type;
@ApiModelProperty(value = "鐩樼偣璁″垝缂栫爜(鍏宠仈yw_stocktaking)", example = "1")
- @ExcelColumn(name="鐩樼偣璁″垝缂栫爜(鍏宠仈yw_stocktaking)")
private Integer stocktakingId;
@ApiModelProperty(value = "璧勪骇缂栫爜")
@TableField(exist = false)
+ @ExcelColumn(name="鐗╂枡缂栫爜",index = 0,width = 10)
private String materialCode;
@ApiModelProperty(value = "璧勪骇鍚嶇О")
@TableField(exist = false)
+ @ExcelColumn(name="鐗╂枡鍚嶇О",index = 1,width = 10)
private String materialName;
@ApiModelProperty(value = "璧勪骇鏉″舰鐮�")
@TableField(exist = false)
+ @ExcelColumn(name="鏉$爜",index = 2,width = 10)
private String materialQrcode;
@ApiModelProperty(value = "璧勪骇鍝佺墝")
@TableField(exist = false)
+ @ExcelColumn(name="鍝佺墝",index = 3,width = 10)
private String materialBrand;
@ApiModelProperty(value = "璧勪骇瑙勬牸鍨嬪彿")
@TableField(exist = false)
+ @ExcelColumn(name="瑙勬牸鍨嬪彿",index = 4,width = 10)
private String materialAttr;
@ApiModelProperty(value = "璧勪骇鍗曚綅")
@TableField(exist = false)
+ @ExcelColumn(name="鍗曚綅",index = 5,width = 10)
private String materialUnitName;
@ApiModelProperty(value = "浠撳簱鍚嶇О")
+ @ExcelColumn(name="浠撳簱",index = 6,width = 10)
@TableField(exist = false)
private String warehouseName;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
index 6c80566..f2c95f8 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
@@ -98,7 +98,7 @@
private String code;
@ApiModelProperty(value = "澶勭悊鐘舵�� 0寰呭鐞� 1宸插垎娲� 2宸插鐞�", example = "1")
- @ExcelColumn(name="宸ュ崟鐘舵��",index = 7,width = 10,valueMapping = "0=寰呭鐞�;1=宸插垎娲�;2=宸插鐞�;")
+ @ExcelColumn(name="宸ュ崟鐘舵��",index = 7,width = 10,valueMapping = "0=寰呮寚娲�;1=宸叉寚娲�;2=宸插鐞�;")
private Integer dealStatus;
@ApiModelProperty(value = "鍒嗘淳浜虹紪鐮�(鍏宠仈system_user)", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwOutinboundExcelOutVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwOutinboundExcelOutVO.java
index 23e6818..d2c86d6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwOutinboundExcelOutVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwOutinboundExcelOutVO.java
@@ -39,14 +39,17 @@
@ExcelColumn(name="鍑哄簱鏁伴噺",index = 4,width = 16)
private String outMaterialNum;
- @ApiModelProperty(value = "鎿嶄綔浜哄悕绉�", example = "1")
+ @ApiModelProperty(value = "棰嗙敤浜�", example = "1")
@ExcelColumn(name="棰嗙敤浜�",index = 5,width = 16)
- private String createUserName;
+ private String outUserName;
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鎿嶄綔鏃堕棿",index = 6,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createDate;
+ @ApiModelProperty(value = "棰嗙敤浜�", example = "1")
+ @ExcelColumn(name="鎿嶄綔浜哄悕绉�",index = 7,width = 16)
+ private String createUserName;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java
index 84f74eb..bca5059 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java
@@ -102,5 +102,17 @@
void dealTimeOut();
+ /**
+ * 鍒版湡鍚堝悓 鏈彂璧烽��绉熺殑杩涜鏁版嵁璋冩暣 鎶婂悎鍚屼笅鐨勬埧婧愰噴鏀� 瀹氭椂鏃堕棿闇�瑕佸湪姣忓ぉ鏅氫笂12鐐瑰墠
+ */
+ void updRoomLeaseNowStatus();
+
+
+ /**
+ * 閫�绉熶腑/宸查��绉熷悎鍚� 鎶婂埌浜嗛��绉熸棩鏈熸椂闂寸殑鏁版嵁 杩涜鎴挎簮閲婃斁 瀹氭椂鏃堕棿闇�瑕佸湪姣忓ぉ鏅氫笂12鐐瑰墠
+ */
+ void updRentContractStatus();
+
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwMaterialService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwMaterialService.java
index 6da3431..6e0c811 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwMaterialService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwMaterialService.java
@@ -1,8 +1,11 @@
package com.doumee.service.business;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.YwMaterial;
+import org.springframework.web.multipart.MultipartFile;
+
import java.util.List;
/**
@@ -98,4 +101,6 @@
long count(YwMaterial ywMaterial);
YwMaterial getDetail(Integer id);
+
+ Integer importMaterialBatch(MultipartFile file, LoginUserInfo loginUserInfo);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index 12976d2..135c516 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -2231,12 +2231,12 @@
throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "韬唤璇佸彿銆�"+member.getIdcardNo()+"銆戝凡琚娇鐢紝涓嶈兘閲嶅");
}
}
- if(memberMapper.selectCount(new QueryWrapper<Member>().lambda()
- .ne(Objects.nonNull(member.getId()),Member::getId,member.getId())
- .eq(Member::getPhone, member.getPhone())
- .eq(Member::getIsdeleted,Constants.ZERO) ) >0){
- throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙枫��"+member.getPhone()+"銆戝凡琚娇鐢紝涓嶈兘閲嶅");
- }
+// if(memberMapper.selectCount(new QueryWrapper<Member>().lambda()
+// .ne(Objects.nonNull(member.getId()),Member::getId,member.getId())
+// .eq(Member::getPhone, member.getPhone())
+// .eq(Member::getIsdeleted,Constants.ZERO) ) >0){
+// throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙枫��"+member.getPhone()+"銆戝凡琚娇鐢紝涓嶈兘閲嶅");
+// }
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
index b760dd1..a50a208 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
@@ -595,7 +595,7 @@
SmsEmail smsEmail = new SmsEmail();
smsEmail.setIsdeleted(Constants.ZERO);
smsEmail.setCreateDate(new Date());
- smsEmail.setStatus(result?Constants.ZERO:Constants.ONE);
+ smsEmail.setStatus(result?Constants.ONE:Constants.TWO);
smsEmail.setType(Constants.ZERO);
smsEmail.setRemark(result?"鐭俊鍙戦�佹垚鍔�":"鐭俊鍙戦�佸け璐�");
smsEmail.setTitle("璐﹀崟鍌垂");
@@ -618,13 +618,13 @@
if(result){
result= emailService.sendEmail(email,"璐﹀崟鍌垂",content,null);
}
- content = systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode() + content;
SmsEmail smsEmail = new SmsEmail();
smsEmail.setRemark(result?"閭欢鍙戦�佹垚鍔�":"閭欢鍙戦�佸け璐�");
smsEmail.setIsdeleted(Constants.ZERO);
+ smsEmail.setTitle("璐﹀崟鍌垂");
smsEmail.setCreateDate(new Date());
- smsEmail.setStatus(result?Constants.ZERO:Constants.ONE);
- smsEmail.setType(Constants.TWO);
+ smsEmail.setStatus(result?Constants.ONE:Constants.TWO);
+ smsEmail.setType(Constants.ONE);
smsEmail.setObjId(billId);
smsEmail.setObjType(Constants.TWO+"");
smsEmail.setContent(content);
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 5d36fa2..e456e57 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
@@ -232,6 +232,17 @@
ywContractBill.getReceivableFee().subtract(ywContractBill.getActReceivableFee())
);
+ if(Constants.equalsInteger(ywContractBill.getStatus(),Constants.ZERO)
+ && (Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.ZERO)
+ || Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.TWO)
+ || Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.THREE)
+ || Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.FOUR))
+ && Utils.Date.getEnd(ywContractBill.getPlanPayDate()).getTime() < System.currentTimeMillis()){
+ ywContractBill.setIsOverdue(Constants.ONE);
+ }else{
+ ywContractBill.setIsOverdue(Constants.ZERO);
+ }
+
//鎴挎簮鏁版嵁
ywContractBill.setYwContractRoomList(
ywContractRoomMapper.selectJoinList(YwContractRoom.class,new MPJLambdaWrapper<YwContractRoom>()
@@ -239,8 +250,8 @@
.selectAs(YwProject::getName,YwRoom::getProjectName)
.selectAs(YwFloor::getName,YwRoom::getFloorName)
.selectAs(YwBuilding::getName,YwRoom::getBuildingName)
- .selectAs(YwRoom::getCode,YwContractRoom::getRoomName)
- .selectAs(YwRoom::getArea,YwContractRoom::getArea)
+ .selectAs(YwRoom::getRoomNum,YwContractRoom::getRoomName)
+ .selectAs(YwRoom::getRentArea,YwContractRoom::getArea)
.leftJoin(YwRoom.class,YwRoom::getId,YwContractRoom::getRoomId)
.leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor)
.leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId)
@@ -345,7 +356,7 @@
|| Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.TWO)
|| Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.THREE)
|| Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.FOUR))
- && ywContractBill.getPlanPayDate().getTime() < System.currentTimeMillis()){
+ && Utils.Date.getEnd(ywContractBill.getPlanPayDate()).getTime() < System.currentTimeMillis()){
ywContractBill.setIsOverdue(Constants.ONE);
}else{
ywContractBill.setIsOverdue(Constants.ZERO);
@@ -392,6 +403,8 @@
IPage<YwContractBill> iPage = ywContractBillMapper.selectJoinPage(page,YwContractBill.class,
queryWrapper.selectAll(YwContractBill.class)
.select(" ( select ifnull( sum( CASE WHEN t.bill_type = 0 and yw.REVENUE_TYPE = 0 THEN yw.ACT_RECEIVABLE_FEE when t.bill_type = 0 and yw.REVENUE_TYPE = 1 then -yw.ACT_RECEIVABLE_FEE when t.bill_type = 1 and yw.REVENUE_TYPE = 0 then -yw.ACT_RECEIVABLE_FEE else yw.ACT_RECEIVABLE_FEE END),0) from yw_contract_revenue yw where yw.bill_id = t.id and yw.status = 0 and yw.isdeleted = 0 ) as actReceivableFee ")
+ .select(" ifnull((select s.status from sms_email s where s.OBJ_ID = t.id and s.OBJ_TYPE = 2 order by s.CREATE_DATE desc limit 1 ),0) ",YwContractBill::getIsSendEmail)
+ .select(" ifnull((select s.status from sms_email s where s.OBJ_ID = t.id and s.OBJ_TYPE = 1 order by s.CREATE_DATE desc limit 1 ),0) ",YwContractBill::getIsSendSms)
.selectAs(YwContract::getCode,YwContractBill::getContractCode)
.selectAs(YwCustomer::getName,YwContractBill::getCustomerName)
.leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId)
@@ -405,12 +418,12 @@
YwContractBill::getBillType,model.getBillType())
.eq(Objects.nonNull(model)&&Objects.nonNull(model.getPayStatus()),
YwContractBill::getPayStatus,model.getPayStatus())
- .in(Objects.nonNull(model)&&Objects.nonNull(model.getPayStatus()),
- YwContractBill::getPayStatus,Constants.ZERO,Constants.THREE,Constants.TWO,Constants.FOUR)
+ .in(YwContractBill::getPayStatus,Constants.ZERO,Constants.TWO,Constants.THREE)
.eq(Objects.nonNull(model)&&Objects.nonNull(model.getType()),
YwContractBill::getType,model.getType())
.le(Objects.nonNull(model)&&Objects.nonNull(model.getIsOverdue())&&Constants.equalsInteger(model.getIsOverdue(),Constants.ONE),
YwContractBill::getPlanPayDate, DateUtil.getCurrDateTime())
+ .lt(YwContractBill::getPlanPayDate, DateUtil.getDate(new Date(),"yyyy-MM-dd"))
.eq(Objects.nonNull(model)&&Objects.nonNull(model.getIsOverdue())&&Constants.equalsInteger(model.getIsOverdue(),Constants.ONE),
YwContractBill::getStatus, Constants.ZERO)
.ge(Objects.nonNull(model)&&Objects.nonNull(model.getPlanPayDateStart()),YwContractBill::getPlanPayDate, Utils.Date.getStart(model.getPlanPayDateStart()))
@@ -455,7 +468,7 @@
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractBillList)){
//鑾峰彇鎵�鏈夋暟鎹�
List<Integer> billIdList = ywContractBillList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)).map(i->i.getId()).collect(Collectors.toList());
- List<Integer> contractIdList = ywContractBillList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ZERO)).map(i->i.getContractId()).collect(Collectors.toList());
+ List<Integer> contractIdList = ywContractBillList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ZERO)||Constants.equalsInteger(i.getType(),Constants.TWO)).map(i->i.getContractId()).collect(Collectors.toList());
List<YwContractRoom> ywContractRoomList = new ArrayList<>();
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(billIdList)){
ywContractRoomList.addAll( ywContractRoomMapper.selectJoinList(YwContractRoom.class,new MPJLambdaWrapper<YwContractRoom>()
@@ -463,7 +476,7 @@
.selectAs(YwProject::getName,YwRoom::getProjectName)
.selectAs(YwFloor::getName,YwRoom::getFloorName)
.selectAs(YwBuilding::getName,YwRoom::getBuildingName)
- .selectAs(YwRoom::getCode,YwContractRoom::getRoomName)
+ .selectAs(YwRoom::getRoomNum,YwContractRoom::getRoomName)
.leftJoin(YwRoom.class,YwRoom::getId,YwContractRoom::getRoomId)
.leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor)
.leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId)
@@ -479,7 +492,7 @@
.selectAs(YwProject::getName,YwRoom::getProjectName)
.selectAs(YwFloor::getName,YwRoom::getFloorName)
.selectAs(YwBuilding::getName,YwRoom::getBuildingName)
- .selectAs(YwRoom::getCode,YwContractRoom::getRoomName)
+ .selectAs(YwRoom::getRoomNum,YwContractRoom::getRoomName)
.leftJoin(YwRoom.class,YwRoom::getId,YwContractRoom::getRoomId)
.leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor)
.leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId)
@@ -690,7 +703,8 @@
.selectAs(YwContractDetail::getType,YwContractBill::getDetailType)
.selectAs(YwContract::getZlPayType,YwContractBill::getZlPayType)
.selectAs(YwContract::getWyPayType,YwContractBill::getWyPayType)
- .select(" ( select ifnull(sum(y.rent_area),0) from yw_room y left join yw_contract_room yr on y.id = yr.room_id where yr.contract_id = t.contract_id and y.IS_INVESTMENT = 0 and yr.type = 0 ) " , YwContractBill::getTotalArea)
+ .select(" ( select ifnull(sum(y.rent_area),0) from yw_room y left join yw_contract_room yr on y.id = yr.room_id where yr.contract_id = t.contract_id and y.IS_INVESTMENT = 1 and yr.type = 0 ) " , YwContractBill::getTotalArea)
+ .select(" ( select ifnull( sum( CASE WHEN t.bill_type = 0 and yw.REVENUE_TYPE = 0 THEN yw.ACT_RECEIVABLE_FEE when t.bill_type = 0 and yw.REVENUE_TYPE = 1 then -yw.ACT_RECEIVABLE_FEE when t.bill_type = 1 and yw.REVENUE_TYPE = 0 then -yw.ACT_RECEIVABLE_FEE else yw.ACT_RECEIVABLE_FEE END),0) from yw_contract_revenue yw where yw.bill_id = t.id and yw.status = 0 and yw.isdeleted = 0 ) as actReceivableFee ")
.leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId)
.leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId)
.leftJoin(YwContractDetail.class,YwContractDetail::getId,YwContractBill::getDetailId)
@@ -825,7 +839,7 @@
}else if(y.getTitle().equals("${搴旀敹鏃ユ湡}")&&Objects.nonNull(ywContractBill.getPlanPayDate())){
y.setUrl(DateUtil.formatDate(ywContractBill.getPlanPayDate(),"yyyy-MM-dd"));
}else if(y.getTitle().equals("${搴旀敹閲戦}")&&Objects.nonNull(ywContractBill.getReceivableFee())){
- y.setUrl(ywContractBill.getReceivableFee().toString());
+ y.setUrl((ywContractBill.getReceivableFee().subtract(ywContractBill.getActReceivableFee())).setScale(2).toString());
}else if(y.getTitle().equals("${璐﹀崟澶囨敞}")){
if(StringUtils.isNotBlank(ywContractBill.getRemark())){
y.setUrl(ywContractBill.getRemark());
@@ -926,14 +940,19 @@
.selectAs(YwContractDetail::getType,YwContractBill::getDetailType)
.selectAs(YwContract::getZlPayType,YwContractBill::getZlPayType)
.selectAs(YwContract::getWyPayType,YwContractBill::getWyPayType)
- .select(" ( select ifnull(sum(r.rent_area),0) from yw_room y left join yw_contract_room yr on y.id = yr.room_id where yr.contract_id = t.contract_id and y.IS_INVESTMENT = 0 and yr.type = 0 ) " , YwContractBill::getTotalArea)
+ .select(" ( select ifnull(sum(y.rent_area),0) from yw_room y left join yw_contract_room yr on y.id = yr.room_id where yr.contract_id = t.contract_id and y.IS_INVESTMENT = 1 and yr.type = 0 ) " , YwContractBill::getTotalArea)
.leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId)
.leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId)
.leftJoin(YwContractDetail.class,YwContractDetail::getId,YwContractBill::getDetailId)
.eq(YwContractBill::getId,ywSmsEmailBillCallDTO.getBillId())
.last( "limit 1" )
);
- this.dealTempData(tempList,ywContractBill,loginUserInfo);
+
+ List<YwContractBill> ywContractBillList = new ArrayList<>();
+ ywContractBillList.add(ywContractBill);
+ this.dealRoomDetail(ywContractBillList);
+
+// this.dealTempData(tempList,ywContractBill,loginUserInfo);
Member member = memberMapper.selectById(ywSmsEmailBillCallDTO.getUserId());
if(Objects.isNull(member)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀛樺湪鏈煡璇㈠埌鐨勪汉鍛樹俊鎭�");
@@ -947,11 +966,10 @@
if(Constants.equalsInteger(ywSmsEmailBillCallDTO.getSendEmail(),Constants.ONE) && StringUtils.isNotBlank(member.getEmail())
&& emailTempConfigOptional.isPresent()){
String content = this.dealTempSmsEmailData(emailTempConfigOptional.get().getTitle(),tempList,ywContractBill,loginUserInfo);
- smsEmailService.sendEmail(content,member.getEmail(),ywContractBill.getId());
+ smsEmailService.sendEmail(member.getEmail(),content,ywContractBill.getId());
}
}
}
-
}
@@ -963,82 +981,87 @@
for (YwTempConfig y:ywTempConfigList) {
if(y.getTitle().equals("${璐圭敤鍚嶇О}")&&Objects.nonNull(ywContractBill.getCostType())){
//璐圭敤绫诲瀷锛�0=绉熻祦璐癸紱1=鐗╀笟璐癸紱2=绉熻祦鎶奸噾锛�3=鐗╀笟鎶奸噾锛�4=姘寸數璐癸紱5=鏉傞」璐癸紱6=鍏朵粬; 7=淇濊瘉閲�
- if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.ZERO)){
- tempStr.replace("${璐圭敤鍚嶇О}","绉熻祦璐�");
+ if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.ZERO)){
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","绉熻祦璐�");
}else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.ONE)){
- tempStr.replace("${璐圭敤鍚嶇О}","鐗╀笟璐�");
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","鐗╀笟璐�");
}else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.TWO)){
- tempStr.replace("${璐圭敤鍚嶇О}","绉熻祦鎶奸噾");
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","绉熻祦鎶奸噾");
}else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.THREE)){
- tempStr.replace("${璐圭敤鍚嶇О}","鐗╀笟鎶奸噾");
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","鐗╀笟鎶奸噾");
}else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.FOUR)){
- tempStr.replace("${璐圭敤鍚嶇О}","姘寸數璐�");
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","姘寸數璐�");
}else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.FIVE)){
- tempStr.replace("${璐圭敤鍚嶇О}","鏉傞」璐�");
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","鏉傞」璐�");
}else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.SIX)){
- tempStr.replace("${璐圭敤鍚嶇О}","鍏朵粬");
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","鍏朵粬");
}else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.SEVEN)){
- tempStr.replace("${璐圭敤鍚嶇О}","淇濊瘉閲�");
+ tempStr = tempStr.replace("${璐圭敤鍚嶇О}","淇濊瘉閲�");
}
- }else if(y.getTitle().equals("${璁¤垂鍛ㄦ湡}")&&Objects.nonNull(ywContractBill.getDetailType())){
- if(Constants.equalsInteger(ywContractBill.getDetailType(),Constants.ZERO)){
- //绉熻祦鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�
- if(Objects.nonNull(ywContractBill.getZlPayType())){
- if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.ZERO)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�娆℃�т粯娆�");
- }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.ONE)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","姣忎笁涓湀涓�浠�");
- }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.TWO)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","鍏釜鏈堜竴浠�");
- }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.THREE)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�骞翠竴浠�");
+ }else if(y.getTitle().equals("${璁¤垂鍛ㄦ湡}")){
+ if(Objects.nonNull(ywContractBill.getDetailType())){
+ if(Constants.equalsInteger(ywContractBill.getDetailType(),Constants.ZERO)){
+ //绉熻祦鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�
+ if(Objects.nonNull(ywContractBill.getZlPayType())){
+ if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.ZERO)){
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�娆℃�т粯娆�");
+ }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.ONE)){
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","姣忎笁涓湀涓�浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.TWO)){
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","鍏釜鏈堜竴浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.THREE)){
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�骞翠竴浠�");
+ }
+ }
+ }else{
+ //鐗╀笟鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�
+ if(Objects.nonNull(ywContractBill.getWyPayType())){
+ if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.ZERO)){
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�娆℃�т粯娆�");
+ }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.ONE)){
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","姣忎笁涓湀涓�浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.TWO)){
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","鍏釜鏈堜竴浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.THREE)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�骞翠竴浠�");
+ }
}
}
}else{
- //鐗╀笟鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�
- if(Objects.nonNull(ywContractBill.getWyPayType())){
- if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.ZERO)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�娆℃�т粯娆�");
- }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.ONE)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","姣忎笁涓湀涓�浠�");
- }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.TWO)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","鍏釜鏈堜竴浠�");
- }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.THREE)){
- tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�骞翠竴浠�");
- }
- }
+ tempStr = tempStr.replace("${璁¤垂鍛ㄦ湡}","");
}
+
}else if(y.getTitle().equals("${鍗曚环}")&&Objects.nonNull(ywContractBill.getPrice())){
- tempStr.replace("${鍗曚环}",ywContractBill.getPrice().toString());
+ tempStr = tempStr.replace("${鍗曚环}",ywContractBill.getPrice().setScale(2).toString());
}else if(y.getTitle().equals("${鍗曚綅}")&&Objects.nonNull(ywContractBill.getCircleType())){
//浠樻鍛ㄦ湡绫诲瀷 0=鍏冩瘡骞崇背澶�;1=鍏冩瘡骞崇背鏈�;2=鍏冩瘡骞崇背骞�;3=鍏冩瘡澶�;4=鍏冩瘡鏈�;5=鍏冩瘡骞�;6=鍏冩瘡鍦�;
if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ZERO)){
- tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背澶�");
+ tempStr = tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背澶�");
}else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
- tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背鏈�");
+ tempStr = tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背鏈�");
}else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.TWO)){
- tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背骞�");
+ tempStr = tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背骞�");
} else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.THREE)){
- tempStr.replace("${鍗曚綅}","鍏冩瘡澶�");
+ tempStr = tempStr.replace("${鍗曚綅}","鍏冩瘡澶�");
} else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.FOUR)){
- tempStr.replace("${鍗曚綅}","鍏冩瘡鏈�");
+ tempStr = tempStr.replace("${鍗曚綅}","鍏冩瘡鏈�");
} else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.FIVE)){
- tempStr.replace("${鍗曚綅}","鍏冩瘡骞�");
+ tempStr = tempStr.replace("${鍗曚綅}","鍏冩瘡骞�");
} else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.SIX)){
- tempStr.replace("${鍗曚綅}","鍏冩瘡鍦�");
+ tempStr = tempStr.replace("${鍗曚綅}","鍏冩瘡鍦�");
}
}else if(y.getTitle().equals("${搴旀敹鏃ユ湡}")&&Objects.nonNull(ywContractBill.getPlanPayDate())){
- tempStr.replace("${搴旀敹鏃ユ湡}",DateUtil.formatDate(ywContractBill.getPlanPayDate(),"yyyy-MM-dd"));
+ tempStr = tempStr.replace("${搴旀敹鏃ユ湡}",DateUtil.formatDate(ywContractBill.getPlanPayDate(),"yyyy-MM-dd"));
}else if(y.getTitle().equals("${搴旀敹閲戦}")&&Objects.nonNull(ywContractBill.getReceivableFee())){
- tempStr.replace("${搴旀敹閲戦}",ywContractBill.getReceivableFee().toString());
+ tempStr = tempStr.replace("${搴旀敹閲戦}",(ywContractBill.getReceivableFee().subtract(ywContractBill.getActReceivableFee())).setScale(2).toString());
}else if(y.getTitle().equals("${璐﹀崟澶囨敞}")){
if(StringUtils.isNotBlank(ywContractBill.getRemark())){
- tempStr.replace("${璐﹀崟澶囨敞}",ywContractBill.getRemark());
+ tempStr = tempStr.replace("${璐﹀崟澶囨敞}",ywContractBill.getRemark());
}else{
- tempStr.replace("${璐﹀崟澶囨敞}","");
+ tempStr = tempStr.replace("${璐﹀崟澶囨敞}","");
}
}else if(y.getTitle().equals("${绉熷鍚嶇О}")&&StringUtils.isNotBlank(ywContractBill.getCustomerName())){
- tempStr.replace("${绉熷鍚嶇О}",ywContractBill.getCustomerName());
+ tempStr = tempStr.replace("${绉熷鍚嶇О}",ywContractBill.getCustomerName());
}else if(y.getTitle().equals("${鎴块棿淇℃伅}")){
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractBill.getYwContractRoomList())){
StringBuilder roomPathName = new StringBuilder();
@@ -1059,32 +1082,32 @@
roomPathName.append(";");
}
}
- tempStr.replace("${鎴块棿淇℃伅}",roomPathName.toString());
+ tempStr = tempStr.replace("${鎴块棿淇℃伅}",roomPathName.toString());
}
}else if(y.getTitle().equals("${绉熻祦闈㈢Н}")&&Objects.nonNull(ywContractBill.getTotalArea())){
tempStr.replace("${绉熻祦闈㈢Н}",ywContractBill.getTotalArea().toString());
}else if(y.getTitle().equals("${鎵�灞炲叕鍙歌处鎴峰悕绉皚")){
if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getName())){
- tempStr.replace("${鎵�灞炲叕鍙歌处鎴峰悕绉皚",ywAccount.getName());
+ tempStr = tempStr.replace("${鎵�灞炲叕鍙歌处鎴峰悕绉皚",ywAccount.getName());
}else{
- tempStr.replace("${鎵�灞炲叕鍙歌处鎴峰悕绉皚","-");
+ tempStr = tempStr.replace("${鎵�灞炲叕鍙歌处鎴峰悕绉皚","-");
}
}else if(y.getTitle().equals("${鎵�灞炲叕鍙搁摱琛岃处鍙穧")){
if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getName())){
- tempStr.replace("${鎵�灞炲叕鍙搁摱琛岃处鍙穧",ywAccount.getName());
+ tempStr = tempStr.replace("${鎵�灞炲叕鍙搁摱琛岃处鍙穧",ywAccount.getName());
}else{
- tempStr.replace("${鎵�灞炲叕鍙搁摱琛岃处鍙穧","-");
+ tempStr = tempStr.replace("${鎵�灞炲叕鍙搁摱琛岃处鍙穧","-");
}
}else if(y.getTitle().equals("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎")){
if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getBankNo())){
- tempStr.replace("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎",ywAccount.getBankNo());
+ tempStr = tempStr.replace("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎",ywAccount.getBankNo());
}else{
- tempStr.replace("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎","-");
+ tempStr = tempStr.replace("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎","-");
}
}else if(y.getTitle().equals("${閫氱煡鍗曠敓鎴愭棩鏈焳")){
- tempStr.replace("${閫氱煡鍗曠敓鎴愭棩鏈焳",DateUtil.formatDate(new Date(),"yyyy-MM-dd"));
+ tempStr = tempStr.replace("${閫氱煡鍗曠敓鎴愭棩鏈焳",DateUtil.formatDate(new Date(),"yyyy-MM-dd"));
}else if(y.getTitle().equals("${鍒惰〃浜哄悕绉皚")){
- tempStr.replace("${鍒惰〃浜哄悕绉皚",loginUserInfo.getRealname());
+ tempStr = tempStr.replace("${鍒惰〃浜哄悕绉皚",loginUserInfo.getRealname());
}
}
return tempStr;
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 49ecb0b..383ca4c 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
@@ -84,7 +84,7 @@
model.setEditor(model.getCreator());
if(model.getStartDate().getTime() > System.currentTimeMillis()){
model.setStatus(Constants.ZERO);
- }else if(model.getStartDate().getTime() <= System.currentTimeMillis() && model.getEndDate().getTime() > System.currentTimeMillis()){
+ }else if(model.getStartDate().getTime() <= System.currentTimeMillis() && Utils.Date.getEnd(model.getEndDate()).getTime() > System.currentTimeMillis()){
model.setStatus(Constants.ONE);
}else{
model.setStatus(Constants.TWO);
@@ -112,6 +112,12 @@
t.setEditor(model.getCreator());
t.setType(Constants.ZERO);
list.add(t);
+ }
+ if(Constants.equalsInteger(model.getStatus(),Constants.ONE)){
+ //鏇存柊鎴挎簮鏁版嵁涓虹璧佷腑
+ roomMapper.update(new UpdateWrapper<YwRoom>().lambda().set(YwRoom::getLeaseNowStatus,Constants.ONE)
+ .in(YwRoom::getId,model.getRoomList().stream().map(i->i.getId()).collect(Collectors.toList()))
+ );
}
ywContractRoomMapper.insert(list);
}
@@ -341,6 +347,13 @@
@Transactional(rollbackFor = {BusinessException.class,Exception.class})
public Integer backRent(YwContract param){
isParamValidBackRent(param);
+ YwContract model = ywContractMapper.selectById(param.getId());
+ if(Objects.isNull(model)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ if(!(model.getStartDate().getTime()<=param.getBtDate().getTime()&&model.getEndDate().getTime()>=param.getBtDate().getTime())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"閫�绉熸棩鏈熼敊璇紝璇锋鏌ラ��绉熸棩鏈熼渶鍦ㄥ悎鍚屾棩鏈熷唴锛�");
+ }
param.setEditDate(new Date());
param.setEditor(param.getLoginUserInfo().getId());
//澶勭悊
@@ -364,30 +377,47 @@
update.setBtRemark(getbackRentRemarkByParam(param));
ywContractMapper.updateById(update);
dealLogBiz(param,Constants.YwLogType.CONTRACT_BACK, param.getLoginUserInfo().getRealname(),getbackRentLogByParam(param));
+ //濡傛灉閫�绉熸棩鏈熷皬浜庡綋鍓嶆棩鏈� 鍒欑洿鎺ラ噴鏀炬埧婧愪俊鎭� 鏈璧�
+ if(Utils.Date.getEnd(param.getBtDate()).getTime()<System.currentTimeMillis()){
+ List<YwContractRoom> contractRoomList = ywContractRoomMapper.selectList(new QueryWrapper<YwContractRoom>().lambda()
+ .eq(YwContractRoom::getContractId, param.getId()));
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(contractRoomList)){
+ //鏇存柊鎴挎簮鏁版嵁涓烘湭绉熻祦
+ roomMapper.update(new UpdateWrapper<YwRoom>().lambda().set(YwRoom::getLeaseNowStatus,Constants.ZERO)
+ .in(YwRoom::getId,contractRoomList.stream().map(i->i.getRoomId()).collect(Collectors.toList()))
+ );
+ }
+ }
return param.getId();
}
@Override
public void dealTimeOut(){
- //瀹氭椂澶勭悊鍚堝悓鎵ц涓�
- ywContractMapper.update(new UpdateWrapper<YwContract>()
- .lambda()
- .set(YwContract::getStatus,Constants.ONE)
- .set(YwContract::getEditDate,DateUtil.getCurrDateTime())
+
+ List<YwContract> listA = ywContractMapper.selectList(new QueryWrapper<YwContract>().lambda()
.eq(YwContract::getIsdeleted,Constants.ZERO)
.in(YwContract::getStatus,Constants.ZERO)
.apply(" START_DATE < NOW() AND END_DATE > NOW() ")
);
- //瀹氭椂澶勭悊鍚堝悓宸茶繃鏈�
- ywContractMapper.update(new UpdateWrapper<YwContract>()
- .lambda()
- .set(YwContract::getStatus,Constants.TWO)
- .set(YwContract::getEditDate,DateUtil.getCurrDateTime())
- .eq(YwContract::getIsdeleted,Constants.ZERO)
- .in(YwContract::getStatus,Constants.ONE,Constants.ZERO)
- .apply(" END_DATE < CURRENT_DATE ")
- );
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(listA)){
+ //瀹氭椂澶勭悊鍚堝悓鎵ц涓�
+ ywContractMapper.update(new UpdateWrapper<YwContract>()
+ .lambda()
+ .set(YwContract::getStatus,Constants.ONE)
+ .set(YwContract::getEditDate,DateUtil.getCurrDateTime())
+ .in(YwContract::getId,listA.stream().map(i->i.getId()).collect(Collectors.toList()))
+ );
+
+ List<YwContractRoom> contractRoomList = ywContractRoomMapper.selectList(new QueryWrapper<YwContractRoom>().lambda().in(YwContractRoom::getContractId,
+ listA.stream().map(i->i.getId()).collect(Collectors.toList())));
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(contractRoomList)){
+ //鏇存柊鎴挎簮鏁版嵁涓虹璧佷腑
+ roomMapper.update(new UpdateWrapper<YwRoom>().lambda().set(YwRoom::getLeaseNowStatus,Constants.ONE)
+ .in(YwRoom::getId,contractRoomList.stream().map(i->i.getRoomId()).collect(Collectors.toList()))
+ );
+ }
+ }
}
@@ -420,7 +450,7 @@
||Constants.equalsInteger(bill.getPayStatus(),Constants.THREE)){
if(bill.getStartDate().getTime()<=param.getBtDate().getTime()){
canBills.add(bill);
- canBillCount = canBillCount ++;
+ canBillCount = canBillCount + 1 ;
}else{
//濡傛灉杩樻病寮�濮嬶紝璐﹀崟鐩存帴鍏抽棴
closeBills.add(bill);
@@ -432,11 +462,11 @@
noBills.add(bill);
}else{
canBills.add(bill);
- canBillCount = canBillCount ++;
+ canBillCount = canBillCount + 1 ;
}
}else if(Constants.equalsInteger(bill.getPayStatus(),Constants.TWO) ){
canBills.add(bill);
- canBillCount = canBillCount ++;
+ canBillCount = canBillCount + 1 ;
}
}
}
@@ -464,12 +494,17 @@
if(fee.compareTo(new BigDecimal(0))== 0){
//濡傛灉璐圭敤姝eソ锛屽垯淇敼璐﹀崟淇℃伅涓哄凡缁撴竻
b.setPayStatus(Constants.ONE);
- canBillCount = canBillCount --;
- }else if(fee.compareTo(new BigDecimal(0))> 0){
+ canBillCount = canBillCount - 1 ;
+ }else if(fee.compareTo(new BigDecimal(0))< 0){
//濡傛灉闇�瑕佽繘琛岄��娆撅紝鏇存柊璐﹀崟淇℃伅涓哄緟閫�娆�
b.setPayStatus(Constants.FOUR);
- }else if(fee.compareTo(new BigDecimal(0)) < 0){
- //濡傛灉璐﹀崟杩樻湁娆惧緟鏀讹紝鍒欎繚鎸佺姸鎬佷笉鍙�
+ }else if(fee.compareTo(new BigDecimal(0)) > 0){
+ //濡傛灉璐﹀崟杩樻湁娆惧緟鏀讹紝鍒欐洿鏂拌处鍗曚负寰呮敹娆�
+ if(b.getPayStatus()==Constants.ZERO){
+ b.setPayStatus(Constants.ZERO);
+ }else if(b.getPayStatus()!=Constants.TWO){
+ b.setPayStatus(Constants.TWO);
+ }
}
b.setReceivableFee(editBill.getReceivableFee());
}
@@ -654,8 +689,8 @@
//2025-1-23 13:56:53 鍔犲叆 鍓嶇鍏ュ弬璋冩暣鍚庣殑璐﹀崟淇℃伅
List<YwContractBill> ywContractBillList = new ArrayList<>();
//鏌ヨ绉熻祦鏉℃
- if(Constants.equalsInteger(model.getType(),Constants.ZERO )
- || Constants.equalsInteger(model.getType(),Constants.TWO)&& com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(details1)){
+ if((Constants.equalsInteger(model.getType(),Constants.ZERO )
+ || Constants.equalsInteger(model.getType(),Constants.TWO))&& com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(details1)){
YwContractDetail ywContractDetail = details1.get(Constants.ZERO);
YwContractBill zlBill = new YwContractBill();
BeanUtils.copyProperties(model.getZlBillDTO(),zlBill);
@@ -691,8 +726,8 @@
}
}
//鏌ヨ鐗╀笟璐﹀崟
- if(Constants.equalsInteger(model.getType(),Constants.ZERO )
- || Constants.equalsInteger(model.getType(),Constants.TWO)&& com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(details2)){
+ if((Constants.equalsInteger(model.getType(),Constants.ZERO )
+ || Constants.equalsInteger(model.getType(),Constants.ONE))&& com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(details2)){
YwContractDetail ywContractDetail = details2.get(Constants.ZERO);
YwContractBill wyBill = new YwContractBill();
BeanUtils.copyProperties(model.getWyBillDTO(),wyBill);
@@ -1396,7 +1431,7 @@
.selectAs(YwCustomer::getName, YwContract::getRenterName)
.selectAs(YwProject::getName, YwContract::getProjectName)
.select("t3.realname", YwContract::getCreatorName)
- .select("(select sum(r.area) from yw_contract_room cr left join yw_room r on r.id = cr.room_id where r.isdeleted=0 and cr.contract_id =t.id)", YwContract::getTotalArea)
+ .select("(select sum(r.RENT_AREA) from yw_contract_room cr left join yw_room r on r.id = cr.room_id where r.isdeleted=0 and cr.contract_id =t.id)", YwContract::getTotalArea)
.leftJoin(Company.class, Company::getId, YwContract::getCompanyId)
.leftJoin(SystemUser.class, SystemUser::getId, YwContract::getUserId)
.leftJoin(SystemUser.class, SystemUser::getId, YwContract::getCreator)
@@ -1457,14 +1492,12 @@
//鏌ヨ璐﹀崟闆嗗悎
model.setBillList(ywContractBillMapper.selectJoinList(YwContractBill.class,new MPJLambdaWrapper<YwContractBill>()
.selectAll(YwContractBill.class )
- //.select(" ( select ifnull(sum(case when yw.REVENUE_TYPE = 0 then yw.ACT_RECEIVABLE_FEE else -yw.ACT_RECEIVABLE_FEE end),0) from yw_contract_revenue yw where yw.bill_id = t.id and yw.status = 0 and yw.isdeleted = 0 ) as actReceivableFee ")
.select(" ( select ifnull( sum( CASE WHEN t.bill_type = 0 and yw.REVENUE_TYPE = 0 THEN yw.ACT_RECEIVABLE_FEE when t.bill_type = 0 and yw.REVENUE_TYPE = 1 then -yw.ACT_RECEIVABLE_FEE when t.bill_type = 1 and yw.REVENUE_TYPE = 0 then -yw.ACT_RECEIVABLE_FEE else yw.ACT_RECEIVABLE_FEE END),0) from yw_contract_revenue yw where yw.bill_id = t.id and yw.status = 0 and yw.isdeleted = 0 ) as actReceivableFee ")
.eq( YwContractBill::getContractId,model.getId())
.eq(YwContractBill::getIsdeleted,Constants.ZERO)
.orderByAsc(YwContractBill::getSortnum,YwContractBill::getCreateDate)));
for (YwContractBill ywContractBill:model.getBillList()) {
ywContractBill.setNeedReceivableFee(ywContractBill.getReceivableFee());
-// ywContractBill.setNeedReceivableFee(ywContractBill.getReceivableFee().subtract(ywContractBill.getActReceivableFee()));
}
model.setCanBackRentBills(new ArrayList<>());
long nowStart = Utils.Date.getStart(date).getTime();
@@ -1574,6 +1607,9 @@
if (pageWrap.getModel().getCreateDate() != null) {
queryWrapper.ge(YwContract::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
queryWrapper.le(YwContract::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getStatusList() != null) {
+ queryWrapper.in(YwContract::getStatus, pageWrap.getModel().getStatusList());
}
if (pageWrap.getModel().getEditor() != null) {
queryWrapper.eq(YwContract::getEditor, pageWrap.getModel().getEditor());
@@ -1712,4 +1748,63 @@
QueryWrapper<YwContract> wrapper = new QueryWrapper<>(ywContract);
return ywContractMapper.selectCount(wrapper);
}
+
+
+ /**
+ * 鍒版湡鍚堝悓 鏈彂璧烽��绉熺殑杩涜鏁版嵁璋冩暣 鎶婂悎鍚屼笅鐨勬埧婧愰噴鏀� 瀹氭椂鏃堕棿闇�瑕佸湪姣忓ぉ鏅氫笂12鐐瑰墠
+ */
+ @Override
+ public void updRoomLeaseNowStatus(){
+
+ //瀹氭椂澶勭悊鍚堝悓宸茶繃鏈�
+ List<YwContract> ywContractList = ywContractMapper.selectList(new QueryWrapper<YwContract>().lambda()
+ .eq(YwContract::getIsdeleted,Constants.ZERO)
+ .in(YwContract::getStatus,Constants.ONE,Constants.ZERO)
+ .apply(" DATE(END_DATE) = CURRENT_DATE ")
+ );
+
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractList)){
+ ywContractMapper.update(new UpdateWrapper<YwContract>()
+ .lambda()
+ .set(YwContract::getStatus,Constants.TWO)
+ .set(YwContract::getEditDate,DateUtil.getCurrDateTime())
+ .in(YwContract::getId,ywContractList.stream().map(i->i.getId()).collect(Collectors.toList()))
+ );
+
+
+ List<YwContractRoom> contractRoomList = ywContractRoomMapper.selectList(new QueryWrapper<YwContractRoom>().lambda().in(YwContractRoom::getContractId,
+ ywContractList.stream().map(i->i.getId()).collect(Collectors.toList())));
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(contractRoomList)){
+ //鏇存柊鎴挎簮鏁版嵁涓虹璧佷腑
+ roomMapper.update(new UpdateWrapper<YwRoom>().lambda().set(YwRoom::getLeaseNowStatus,Constants.ZERO)
+ .in(YwRoom::getId,contractRoomList.stream().map(i->i.getRoomId()).collect(Collectors.toList()))
+ );
+ }
+ }
+ }
+
+
+ /**
+ * 閫�绉熶腑/宸查��绉熷悎鍚� 鎶婂埌浜嗛��绉熸棩鏈熸椂闂寸殑鏁版嵁 杩涜鎴挎簮閲婃斁 瀹氭椂鏃堕棿闇�瑕佸湪姣忓ぉ鏅氫笂12鐐瑰墠
+ */
+ @Override
+ public void updRentContractStatus(){
+ List<YwContract> ywContractList = ywContractMapper.selectList(new QueryWrapper<YwContract>().lambda()
+ .eq(YwContract::getIsdeleted,Constants.ZERO)
+ .in(YwContract::getStatus,Constants.THREE,Constants.FOUR)
+ .eq(YwContract::getBtDate,DateUtil.getCurrDate())
+ );
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractList)){
+ List<YwContractRoom> contractRoomList = ywContractRoomMapper.selectList(new QueryWrapper<YwContractRoom>().lambda().in(YwContractRoom::getContractId,
+ ywContractList.stream().map(i->i.getId()).collect(Collectors.toList())));
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(contractRoomList)){
+ //鏇存柊鎴挎簮鏁版嵁涓哄緟绉熻祦
+ roomMapper.update(new UpdateWrapper<YwRoom>().lambda().set(YwRoom::getLeaseNowStatus,Constants.ZERO)
+ .in(YwRoom::getId,contractRoomList.stream().map(i->i.getRoomId()).collect(Collectors.toList()))
+ );
+ }
+ }
+ }
+
+
}
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 dda5508..69ddf41 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
@@ -430,7 +430,7 @@
ywDeviceStatusDataVO.setAmount(ywDeviceList.size());
ywDeviceStatusDataVO.setWorkAmount(ywDeviceList.stream().filter(i->Objects.nonNull(i.getStatus())&&Constants.equalsInteger(i.getStatus(),Constants.ZERO)).collect(Collectors.toList()).size());
ywDeviceStatusDataVO.setExceptionAmount(ywDeviceList.stream().filter(i->Objects.nonNull(i.getStatus())&&Constants.equalsInteger(i.getStatus(),Constants.ONE)).collect(Collectors.toList()).size());
- ywDeviceStatusDataVO.setErrAmount(ywDeviceList.stream().filter(i->Objects.nonNull(i.getStatus())&&Constants.equalsInteger(i.getStatus(),Constants.THREE)).collect(Collectors.toList()).size());
+ ywDeviceStatusDataVO.setErrAmount(ywDeviceList.stream().filter(i->Objects.nonNull(i.getStatus())&&Constants.equalsInteger(i.getStatus(),Constants.TWO)).collect(Collectors.toList()).size());
return ywDeviceStatusDataVO;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java
index a434cd2..ea498da 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java
@@ -1,6 +1,8 @@
package com.doumee.service.business.impl;
+import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A;
import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.annotation.excel.ExcelImporter;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
@@ -9,11 +11,14 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.CategoryMapper;
import com.doumee.dao.business.YwMaterialMapper;
import com.doumee.dao.business.YwOutinboundMapper;
import com.doumee.dao.business.YwOutinboundRecordMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.MultifileMapper;
+import com.doumee.dao.system.dto.ImportMaterialDTO;
+import com.doumee.dao.system.dto.ImportSystemUserDTO;
import com.doumee.dao.system.model.Multifile;
import com.doumee.service.business.YwMaterialService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -22,16 +27,19 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.base.MPJBaseMapper;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import javafx.scene.paint.Material;
import org.apache.commons.lang.StringUtils;
-import org.checkerframework.checker.units.qual.A;
+import org.apache.shiro.SecurityUtils;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
+import org.springframework.web.multipart.MultipartFile;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
+import java.util.stream.Collectors;
/**
* 杩愮淮璧勪骇淇℃伅琛⊿ervice瀹炵幇
@@ -51,6 +59,9 @@
private YwOutinboundRecordMapper ywOutinboundRecordMapper;
@Autowired
+ private CategoryMapper categoryMapper;
+
+ @Autowired
private SystemDictDataBiz systemDictDataBiz;
@Override
@@ -67,8 +78,17 @@
ywMaterial.setId(null);
if(StringUtils.isBlank(ywMaterial.getCode())){
//鑷姩鐢熸垚 TODO 瀛樺湪闂
- Long countCode = ywMaterialMapper.selectCount(new QueryWrapper<YwMaterial>().lambda().eq(YwMaterial::getAutoCode, Constants.ONE));
- String nextCode = StringUtils.leftPad(Long.toString(countCode + 1),4,"0");
+ YwMaterial lastAutoMaterial = ywMaterialMapper.selectOne(new QueryWrapper<YwMaterial>().lambda().eq(YwMaterial::getAutoCode,Constants.ONE).last("limit 1 "));
+ Long countCode = 0L;
+ String nextCode = StringUtils.leftPad(Long.toString(countCode + 1 ),4,"0");
+ if(Objects.nonNull(lastAutoMaterial)){
+ Long maxCode = Long.valueOf(lastAutoMaterial.getCode().replace("P",""));
+ nextCode = StringUtils.leftPad(Long.toString(maxCode + 1),4,"0");
+ while (ywMaterialMapper.selectCount(new QueryWrapper<YwMaterial>().lambda().eq(YwMaterial::getCode, "P"+nextCode))>Constants.ZERO){
+ countCode = countCode + 1 ;
+ nextCode = StringUtils.leftPad(Long.toString(countCode),4,"0");
+ }
+ }
ywMaterial.setCode("P"+nextCode);
ywMaterial.setAutoCode(Constants.ONE);
}else{
@@ -247,4 +267,67 @@
QueryWrapper<YwMaterial> wrapper = new QueryWrapper<>(ywMaterial);
return ywMaterialMapper.selectCount(wrapper);
}
+
+
+ @Override
+ public Integer importMaterialBatch(MultipartFile file,LoginUserInfo loginUserInfo) {
+ try {
+ ExcelImporter ie = new ExcelImporter(file, 0, 0);
+ List<ImportMaterialDTO> dataList = ie.getDataList(ImportMaterialDTO.class, null);
+ if (CollectionUtils.isEmpty(dataList)) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝褰曞叆鏁版嵁涓虹┖锛�");
+ }
+
+ List<Category> allCategory = categoryMapper.selectList(new QueryWrapper<Category>().lambda()
+ .eq(Category::getIsdeleted,Constants.ZERO).eq(Category::getIsdeleted,Constants.ZERO)
+ .eq(Category::getType,Constants.SEVEN)
+ );
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(allCategory)){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鏃犲垎绫诲熀纭�鏁版嵁锛�");
+ }
+ List<Category> categoryList = allCategory.stream().filter(i->Objects.isNull(i.getParentId())).collect(Collectors.toList());
+ for (Category category: categoryList) {
+ category.setChildCategoryList(
+ allCategory.stream().filter(i->Objects.nonNull(i.getParentId())&&Constants.equalsInteger(i.getParentId(),category.getId())).collect(Collectors.toList())
+ );
+ }
+ List<YwMaterial> ywMaterialList = new ArrayList<>();
+ for (int i = 0; i < dataList.size(); i++) {
+ ImportMaterialDTO importMaterialDTO = dataList.get(i);
+ if(Objects.isNull(importMaterialDTO)
+ || StringUtils.isBlank(importMaterialDTO.getName())
+ || StringUtils.isBlank(importMaterialDTO.getCategoryName())
+ || StringUtils.isBlank(importMaterialDTO.getCategoryChildName())
+ || StringUtils.isBlank(importMaterialDTO.getQrcode())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝绗�"+(i+1)+"琛屽繀濉」缂哄け锛�");
+ }
+ YwMaterial ywMaterial = new YwMaterial();
+ BeanUtils.copyProperties(importMaterialDTO,ywMaterial);
+ Optional<Category> categoryOptional = categoryList.stream().filter(j->j.getName().equals(importMaterialDTO.getCategoryName())).findAny();
+ if(categoryOptional.isPresent()){
+ Category category = categoryOptional.get();
+ ywMaterial.setParentCateId(category.getId());
+ Optional<Category> childCategoryOptional = category.getChildCategoryList().stream().filter(j->j.getName().equals(importMaterialDTO.getCategoryChildName())).findAny();
+ if(childCategoryOptional.isPresent()){
+ ywMaterial.setCateId(childCategoryOptional.get().getId());
+ }else{
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝绗�"+(i+1)+"琛岀墿鏂欏瓙鍒嗙被鏈煡璇㈠埌锛�");
+ }
+ }else{
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝绗�"+(i+1)+"琛岀墿鏂欏垎绫绘湭鏌ヨ鍒帮紒");
+ }
+ ywMaterialList.add(ywMaterial);
+ }
+
+ for (YwMaterial ywMaterial:ywMaterialList) {
+ ywMaterial.setLoginUserInfo(loginUserInfo);
+ this.create(ywMaterial);
+ }
+ } catch (Exception e) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),e.getMessage());
+
+ }
+ return null;
+ }
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java
index 203c692..42437cd 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java
@@ -95,7 +95,7 @@
public List<YwOutinboundRecord> verifyData(YwOutinbound ywOutinbound){
if(Objects.isNull(ywOutinbound)
|| Objects.isNull(ywOutinbound.getType())
-// || (Objects.nonNull(ywOutinbound.getType()) && (!(ywOutinbound.getType() == Constants.ZERO || ywOutinbound.getType() == Constants.ONE)))
+ || ((ywOutinbound.getType() >= 5 && ywOutinbound.getType() <= 9 ) && Objects.isNull(ywOutinbound.getOutUserId()) )
|| Objects.isNull(ywOutinbound.getWarehouseId())
|| Objects.isNull(ywOutinbound.getDoneDate())
|| com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(ywOutinbound.getRecordList())
@@ -158,9 +158,9 @@
//鍑哄簱
if(Objects.isNull(ywStock) || ywStock.getStock().compareTo(ywOutinboundRecord.getStock()) < Constants.ZERO){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), ywMaterial.getName() + "搴撳瓨涓嶈冻锛岃鍒锋柊閲嶈瘯");
- }else if(ywStock.getStock().compareTo(ywOutinboundRecord.getStock()) == Constants.ZERO){
+ }/*else if(ywStock.getStock().compareTo(ywOutinboundRecord.getStock()) == Constants.ZERO){
ywStockMapper.deleteById(ywStock.getId());
- }else{
+ }*/else{
ywStockMapper.update(new UpdateWrapper<YwStock>().lambda()
.setSql(" stock = ( stock - "+ywOutinboundRecord.getStock()+") ")
.set(YwStock::getEditDate, DateUtil.getCurrDateTime())
@@ -252,22 +252,29 @@
}
List<Integer> typeList = Constants.ywOutInType.getAllTypeKey(model.getInOut());
queryWrapper.selectAll(YwOutinbound.class)
- .selectAs(SystemUser::getRealname,YwOutinbound::getCreateUserName)
+ .select(" s1.realname ",YwOutinbound::getCreateUserName)
+ .select(" s2.realname ",YwOutinbound::getOutUserName)
.selectAs(YwWarehouse::getName,YwOutinbound::getWarehouseName)
- .leftJoin(SystemUser.class,SystemUser::getId,YwOutinbound::getCreator)
.leftJoin(YwWarehouse.class,YwWarehouse::getId,YwOutinbound::getWarehouseId)
+ .leftJoin("system_user s1 on t.creator = s1.id")
+ .leftJoin("system_user s2 on t.out_user_id = s2.id")
.like(StringUtils.isNotBlank(model.getCode()),YwOutinbound::getCode,model.getCode())
.eq(Objects.nonNull(model.getType()),YwOutinbound::getType,model.getType())
.eq(Objects.nonNull(model.getWarehouseId()),YwOutinbound::getWarehouseId,model.getWarehouseId())
.in(Objects.nonNull(model.getInOut()),YwOutinbound::getType,typeList)
;
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
- if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
- queryWrapper.orderByDesc(sortData.getProperty());
- } else {
- queryWrapper.orderByAsc(sortData.getProperty());
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(pageWrap.getSorts())){
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
}
+ }else{
+ queryWrapper.orderByDesc(YwOutinbound::getCode);
}
+
IPage iPage = ywOutinboundMapper.selectJoinPage(page,YwOutinbound.class,queryWrapper);
if(Objects.nonNull(iPage.getRecords())){
iPage.setRecords(this.getDetailData(iPage.getRecords()));
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 c8c5326..cb32343 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
@@ -123,7 +123,7 @@
);
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywPatrolSchemeList)){
for (YwPatrolScheme ywPatrolScheme:ywPatrolSchemeList) {
- this.createTask(new Date(),ywPatrolScheme);
+ this.createTask(DateUtil.getXDayAfterDate(new Date(),2),ywPatrolScheme);
}
}
}
@@ -301,6 +301,7 @@
ywPatrolScheme.setEditDate(new Date());
ywPatrolScheme.setEditor(loginUserInfo.getId());
ywPatrolSchemeMapper.updateById(ywPatrolScheme);
+ this.createThreeDaysData(ywPatrolScheme);
}
@Override
@@ -356,15 +357,9 @@
YwPatrolScheme model = pageWrap.getModel();
queryWrapper.selectAll(YwPatrolScheme.class)
.select(" t2.realName as createUserName ")
-// .select(" t1.realName as userName ")
-// .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolScheme::getUserIds)
.leftJoin(" system_user t2 on t.creator = t2.id ")
.eq(YwPatrolScheme::getIsdeleted,Constants.ZERO)
.like(StringUtils.isNotBlank(model.getTitle()),YwPatrolScheme::getTitle,model.getTitle())
- //鏌ヨ鏈夋椂娈典氦闆嗙殑鏁版嵁
- /* .apply(Objects.nonNull(model.getStartDate())&&Objects.nonNull(model.getEndDate()),
- " t.START_DATE <= '"+pageWrap.getModel().getEndDate()+"' or t.END_DATE >= '"+pageWrap.getModel().getStartDate()+"' "
- )*/
.ge( model.getStartDate()!=null,YwPatrolScheme::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()))
.le(Objects.nonNull(model.getEndDate()),YwPatrolScheme::getStartDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()))
.ge(Objects.nonNull(model.getStartDateSec()),YwPatrolScheme::getEndDate, Utils.Date.getStart(pageWrap.getModel().getStartDateSec()))
@@ -405,21 +400,24 @@
ywPatrolScheme.setTimeOutTaskNum(Constants.ZERO);
return;
}
+
+ //杩囨护鏁版嵁鏄笉鏄叏閮ㄦ湭寮�濮�
+ if(Constants.equalsInteger(ywPatrolTaskList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ZERO))
+ .collect(Collectors.toList()).size(),ywPatrolTaskList.size())){
+ ywPatrolScheme.setSchemeStatus(Constants.ZERO);
+ ywPatrolScheme.setTimeOutTaskNum(ywPatrolTaskList.stream().filter(i->i.getEndDate().getTime()>System.currentTimeMillis())
+ .collect(Collectors.toList()).size());
+ return;
+ }
+
//杩囨护鏁版嵁鏄惁瀛樺湪杩涜涓殑
- if(ywPatrolTaskList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)).collect(Collectors.toList()).size()>Constants.ZERO){
+ if(ywPatrolTaskList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)||Constants.equalsInteger(i.getStatus(),Constants.ZERO)).collect(Collectors.toList()).size()>Constants.ZERO){
ywPatrolScheme.setSchemeStatus(Constants.ONE);
ywPatrolScheme.setTimeOutTaskNum(ywPatrolTaskList.stream().filter(i->i.getEndDate().getTime()>System.currentTimeMillis())
.collect(Collectors.toList()).size());
return;
}
- //杩囨护鏁版嵁鏄笉鏄叏閮ㄦ湭寮�濮�
- if(Constants.equalsInteger(ywPatrolTaskList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ZERO)).collect(Collectors.toList()).size(),ywPatrolTaskList.size())){
- ywPatrolScheme.setSchemeStatus(Constants.ZERO);
- ywPatrolScheme.setTimeOutTaskNum(ywPatrolTaskList.stream().filter(i->i.getEndDate().getTime()>System.currentTimeMillis())
- .collect(Collectors.toList()).size());
- return;
- }
//杩囨护鏁版嵁鏄笉鏄叏閮ㄥ凡瀹屾垚
if(Constants.equalsInteger(ywPatrolTaskList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.THREE)).collect(Collectors.toList()).size()
,ywPatrolTaskList.size())){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
index b1fbb04..963f7b8 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
@@ -28,9 +28,11 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
+import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
+import java.util.stream.Collectors;
/**
* 杩愮淮宸℃浠诲姟 - 宸℃鐐逛俊鎭〃Service瀹炵幇
@@ -134,7 +136,7 @@
.selectAs(SystemUser::getRealname,YwPatrolTaskRecord::getRealname)
.selectAs(YwPatrolScheme::getTitle,YwPatrolTaskRecord::getSchemeTitle)
- .selectAs(YwPatrolTask::getTitle,YwPatrolTaskRecord::getTaskCode)
+ .selectAs(YwPatrolTask::getCode,YwPatrolTaskRecord::getTaskCode)
.selectAs(YwPatrolTask::getStartDate,YwPatrolTaskRecord::getStartDate)
.selectAs(YwPatrolTask::getEndDate,YwPatrolTaskRecord::getEndDate)
@@ -213,7 +215,8 @@
if(Objects.isNull(ywPatrolScheme)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌宸℃璁″垝淇℃伅");
}
- if(!ywPatrolScheme.getUserIds().equals(loginUserInfo.getId().toString())){
+ List<String> userIdList = Arrays.asList(ywPatrolScheme.getUserIds().split(","));
+ if(userIdList.stream().filter(i->Constants.equalsInteger(Integer.valueOf(i),loginUserInfo.getId())).collect(Collectors.toList()).size()<=0){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"闈炴偍鐨勫贰妫�浠诲姟鏃犳硶杩涜澶勭悊");
}
YwPatrolTask ywPatrolTask = ywPatrolTaskMapper.selectById(model.getTaskId());
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 104c528..31722e2 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
@@ -85,6 +85,7 @@
.selectAll(YwPatrolTask.class)
.selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode)
.selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle)
+ .selectAs(YwPatrolScheme::getUserIds,YwPatrolTask::getUserIds)
.selectAs(SystemUser::getRealname,YwPatrolTask::getUserName)
.select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id and ytr.ISDELETED = 0 ) ",YwPatrolTask::getPatrolNum)
.select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id and ytr.STATUS = 1 and ytr.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
@@ -139,6 +140,7 @@
queryWrapper.selectAll(YwPatrolTask.class)
.selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode)
.selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle)
+ .selectAs(YwPatrolScheme::getUserIds,YwPatrolTask::getUserIds)
.selectAs(SystemUser::getRealname,YwPatrolTask::getUserName)
.select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id and ytr.ISDELETED = 0 ) ",YwPatrolTask::getPatrolNum)
.select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id and ytr.STATUS = 1 and ytr.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
@@ -146,7 +148,7 @@
.leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId)
.eq(YwPatrolTask::getIsdeleted, Constants.ZERO)
.eq(Objects.nonNull(model.getStatus()) && !Constants.equalsInteger(model.getStatus(),Constants.TWO),YwPatrolTask::getStatus, model.getStatus())
- .eq(Objects.nonNull(model.getDealUserId()),YwPatrolScheme::getUserIds, model.getDealUserId())
+ .apply(Objects.nonNull(model.getDealUserId())," find_in_set("+model.getDealUserId()+",t2.USER_IDS) ")
.apply(Objects.nonNull(model.getStatus()) && Constants.equalsInteger(model.getStatus(),Constants.TWO)," t.status = 1 and t.END_DATE > now() ")
.apply(StringUtils.isNotBlank(model.getQueryStatus())," find_in_set(t.status ,'"+model.getQueryStatus()+"') ")
.like(StringUtils.isNotBlank(model.getPlanTitle()),YwPatrolScheme::getTitle,model.getPlanTitle())
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 36cda9c..ee5fbf6 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
@@ -296,13 +296,7 @@
List<YwRoom> ywRoomList = ywRoomMapper.selectJoinList(YwRoom.class,new MPJLambdaWrapper<YwRoom>()
.selectAll(YwRoom.class)
-// .select(" ( SELECT count(1) FROM yw_contract y1 " +
-// " left join yw_contract_room y2 on y1.id = y2.contract_id " +
-// " where 1 = 1 and y2.type = 0 and y1.`STATUS` in( 0,1,2) " +
-// " and y1.START_DATE < now() and y1.END_DATE > now() and y2.ROOM_ID = yw_room.id ) as investmentStatus ")
- .select(" ifnull( ( select case when y1.status = 3 then now() BETWEEN y1.START_DATE and y1.BT_DATE else now() BETWEEN y1.START_DATE and y1.END_DATE END " +
- "from yw_contract y1 left join yw_contract_room y2 on y1.id = y2.CONTRACT_ID and y2.TYPE = 0 " +
- "where y1.`STATUS` <> 4 and y2.room_id = t.id order by y1.create_date desc limit 1 ) ,0) ",YwRoom::getLeaseStatus)
+ .select(" ifnull( ( case when t.IS_INVESTMENT = 0 then 2 else t.LEASE_NOW_STATUS end ) ,0) ",YwRoom::getLeaseStatus)
.eq(YwRoom::getIsdeleted,Constants.ZERO)
.eq(YwRoom::getStatus,Constants.ZERO)
.eq(YwRoom::getIsInvestment,Constants.ONE)
@@ -313,7 +307,7 @@
" ) ")
.apply(Objects.nonNull(dataDTO)&&Objects.nonNull(dataDTO.getStartDate())&&Objects.nonNull(dataDTO.getEndDate())," id not in (" +
" SELECT y2.room_id FROM yw_contract y1 left join yw_contract_room y2 on y1.id = y2.contract_id where 1 = 1 and y1.`STATUS` = 3 " +
- " and y1.START_DATE < '"+dataDTO.getEndDate()+" 00:00:00' and y1.BT_DATE > '"+ dataDTO.getStartDate() +" 00:00:00' " +
+ " and y1.START_DATE < '"+dataDTO.getEndDate()+" 00:00:00' and y1.BT_DATE >= '"+ dataDTO.getStartDate() +" 00:00:00' " +
" ) ")
.orderByAsc(YwRoom::getRoomNum)
);
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
index 1b7a0a9..65e696b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
@@ -67,6 +67,7 @@
model.setStatus(Constants.ZERO);
model.setEditDate(model.getCreateDate());
model.setEditor(model.getCreator());
+ model.setLeaseNowStatus(Constants.ZERO);
ywRoomMapper.insert(model);
return model.getId();
}
@@ -138,9 +139,10 @@
queryWrapper.selectAll(YwRoom.class )
.selectAs(YwProject::getName,YwRoom::getProjectName)
.selectAs(YwFloor::getName,YwRoom::getFloorName)
- .select(" ifnull( ( select case when y1.status = 3 then now() BETWEEN y1.START_DATE and y1.BT_DATE else now() BETWEEN y1.START_DATE and y1.END_DATE END " +
- "from yw_contract y1 left join yw_contract_room y2 on y1.id = y2.CONTRACT_ID and y2.TYPE = 0 " +
- "where y1.`STATUS` <> 4 and y2.room_id = t.id order by y1.create_date desc limit 1 ) ,0) ",YwRoom::getLeaseStatus)
+// .select(" ifnull( ( select case when y1.status = 3 then now() BETWEEN y1.START_DATE and y1.BT_DATE else now() BETWEEN y1.START_DATE and y1.END_DATE END " +
+// "from yw_contract y1 left join yw_contract_room y2 on y1.id = y2.CONTRACT_ID and y2.TYPE = 0 " +
+// "where y1.`STATUS` <> 4 and y2.room_id = t.id order by y1.create_date desc limit 1 ) ,0) ",YwRoom::getLeaseStatus)
+ .select(" ifnull( ( case when t.IS_INVESTMENT = 0 then 2 else t.LEASE_NOW_STATUS end ) ,0) ",YwRoom::getLeaseStatus)
.selectAs(YwBuilding::getName,YwRoom::getBuildingName)
.leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId)
.leftJoin(YwBuilding.class,YwBuilding::getId,YwRoom::getBuildingId)
@@ -173,9 +175,10 @@
.selectAs(YwProject::getName,YwRoom::getProjectName)
.selectAs(YwFloor::getName,YwRoom::getFloorName)
.selectAs(YwBuilding::getName,YwRoom::getBuildingName)
- .select(" ifnull( ( select case when y1.status = 3 then now() BETWEEN y1.START_DATE and y1.BT_DATE else now() BETWEEN y1.START_DATE and y1.END_DATE END " +
- "from yw_contract y1 left join yw_contract_room y2 on y1.id = y2.CONTRACT_ID and y2.TYPE = 0 " +
- "where y1.`STATUS` <> 4 and y2.room_id = t.id order by y1.create_date desc limit 1 ) ,0) ",YwRoom::getLeaseStatus)
+// .select(" ifnull( ( select case when y1.status = 3 then now() BETWEEN y1.START_DATE and y1.BT_DATE else now() BETWEEN y1.START_DATE and y1.END_DATE END " +
+// "from yw_contract y1 left join yw_contract_room y2 on y1.id = y2.CONTRACT_ID and y2.TYPE = 0 " +
+// "where y1.`STATUS` <> 4 and y2.room_id = t.id order by y1.create_date desc limit 1 ) ,0) ",YwRoom::getLeaseStatus)
+ .select(" ifnull( ( case when t.IS_INVESTMENT = 0 then 2 else t.LEASE_NOW_STATUS end ) ,0) ",YwRoom::getLeaseStatus)
.leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId)
.leftJoin(YwBuilding.class,YwBuilding::getId,YwRoom::getBuildingId)
.leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor);
@@ -245,11 +248,11 @@
}
queryWrapper.orderByAsc(YwRoom::getRoomNum);
IPage<YwRoom> iPage = ywRoomMapper.selectJoinPage(page,YwRoom.class, queryWrapper);
- for (YwRoom ywRoom:iPage.getRecords()) {
- if(Constants.equalsInteger(ywRoom.getIsInvestment(),Constants.ZERO)){
- ywRoom.setLeaseStatus(Constants.TWO);
- }
- }
+// for (YwRoom ywRoom:iPage.getRecords()) {
+// if(Constants.equalsInteger(ywRoom.getIsInvestment(),Constants.ZERO)){
+// ywRoom.setLeaseStatus(Constants.TWO);
+// }
+// }
return PageData.from(iPage);
}
@@ -302,10 +305,34 @@
.eq(YwContractRoom::getType,Constants.ZERO)
.eq(YwContractRoom::getRoomId,ywRoom.getId())
.orderByDesc(YwContract::getStartDate)
+ .orderByDesc(YwContract::getId)
);
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(roomContractList)){
roomStatusDataVO.setRoomStatus(Constants.ZERO);
- roomStatusDataVO.setFreeDayAmount(Constants.ZERO);
+ //鏌ヨ鏄惁鏈夊凡閫�绉熷悎鍚�
+ List<YwContract> roomRentContractList = ywContractMapper.selectJoinList(YwContract.class,new MPJLambdaWrapper<YwContract>()
+ .selectAll(YwContract.class)
+ .selectAs(YwCustomer::getName,YwContract::getRenterName)
+ .leftJoin(YwContractRoom.class,YwContractRoom::getContractId,YwContract::getId)
+ .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId)
+ .eq(YwContract::getIsdeleted,Constants.ZERO)
+ .eq(YwContract::getStatus,Constants.FOUR)
+ .eq(YwContractRoom::getType,Constants.ZERO)
+ .eq(YwContractRoom::getRoomId,ywRoom.getId())
+ .orderByDesc(YwContract::getStartDate)
+ .orderByDesc(YwContract::getId)
+ );
+ if(CollectionUtils.isEmpty(roomRentContractList)){
+ roomStatusDataVO.setFreeDayAmount(Constants.ZERO);
+ }else{
+ YwContract ywContract = roomRentContractList.get(Constants.ZERO);
+ //鏌ヨ閫�绉熸棩鏈熷拰褰撳墠鏃ユ湡鐩稿樊澶╂暟
+ Integer btDays = DateUtil.daysBetweenDates(new Date(),ywContract.getBtDate());
+ if(btDays>=Constants.ZERO){
+ roomStatusDataVO.setFreeDayAmount(btDays);
+ }
+ }
+
}else{
YwContract ywContract = roomContractList.get(Constants.ZERO);
//鍚堝悓鐘舵�� 0寰呮墽琛� 1鎵ц涓� 2宸插埌鏈� 3閫�绉熶腑 4宸查��绉�
@@ -397,7 +424,7 @@
.select(" ( select ifnull(sum(yr.RENT_AREA),0) from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and y.CONTRACT_ID = t.id ) " , YwContract::getTotalArea)
.select(" ( select ifnull(sum(y.TOTLE_FEE),0) from yw_contract_bill y where y.CONTRACT_ID = t.id and y.type = 0 and y.COST_TYPE=0 and y.BILL_TYPE = 0 ) " , YwContract::getTotalFee)
.eq(YwContract::getIsdeleted,Constants.ZERO)
- .in(YwContract::getStatus,Constants.ONE,Constants.TWO,Constants.THREE)
+ .in(YwContract::getStatus,Constants.ZERO,Constants.ONE,Constants.TWO,Constants.THREE)
.apply(Objects.nonNull(model.getBuildingId()),
" t.id in ( select y.CONTRACT_ID from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and yr.BUILDING_ID = "+model.getBuildingId()+" ) ")
.apply(Objects.nonNull(model.getProjectId()),
@@ -434,7 +461,8 @@
.eq(Objects.nonNull(model.getBuildingId()),YwRoom::getBuildingId,model.getBuildingId())
.eq(Objects.nonNull(model.getProjectId()),YwRoom::getProjectId,model.getProjectId())
.in(YwContractRoom::getContractId,contractId)
- .orderByAsc(YwRoom::getSortnum)
+ .last(" group by t.id " +
+ "ORDER BY t.sortnum ASC ")
);
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywLeaseRoomList)){
ywRoomContractDataVO.setLeaseArea(
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java
index b04ef29..a1531fe 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java
@@ -195,6 +195,7 @@
.set(YwStocktakingRecord::getActStock,ywStocktakingRecord.getActStock())
.set(YwStocktakingRecord::getUserId,loginUserInfo.getId())
.set(YwStocktakingRecord::getPlanDate, DateUtil.getCurrDateTime())
+ .set(StringUtils.isNotBlank(ywStocktakingRecord.getRemark()),YwStocktakingRecord::getRemark, ywStocktakingRecord.getRemark())
.eq(YwStocktakingRecord::getId,ywStocktakingRecord.getId())
);
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java
index 76ba25d..3ca923e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java
@@ -442,7 +442,7 @@
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(recordList)){
//鍚堣鐩樼偣鏁版嵁
ywStocktaking.setFinishAmount(recordList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)).collect(Collectors.toList()).size());
- ywStocktaking.setUnFinishAmount(recordList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ZERO)).collect(Collectors.toList()).size());
+ ywStocktaking.setUnFinishAmount(recordList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.TWO)).collect(Collectors.toList()).size());
ywStocktaking.setEqualAmount(recordList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)&&Constants.equalsInteger(i.getType(),Constants.ZERO)).collect(Collectors.toList()).size());
ywStocktaking.setLossAmount(recordList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)&&Constants.equalsInteger(i.getType(),Constants.ONE)).collect(Collectors.toList()).size());
ywStocktaking.setProfitAmount(recordList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)&&Constants.equalsInteger(i.getType(),Constants.TWO)).collect(Collectors.toList()).size());
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java
index 6568f12..c68200e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java
@@ -232,8 +232,6 @@
.set(YwTempConfig::getUrl,leasesTemp.getUrl())
.eq(YwTempConfig::getId,leasesTemp.getId())
);
-
-
YwTempConfig otherTemp = ywCallTempDataDTO.getOtherTemp();
if(Objects.isNull(otherTemp.getId())
|| Objects.isNull(otherTemp.getTitle())
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java
index cf15928..8e969d7 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java
@@ -132,7 +132,7 @@
if(ywStockMapper.selectCount(new QueryWrapper<YwStock>().lambda().eq(YwStock::getIsdeleted,Constants.ZERO)
.gt(YwStock::getStock,Constants.ZERO)
.eq(YwStock::getWarehouseId,ywWarehouse.getId()))>Constants.ZERO){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠浠撳簱鍐呮湁搴撳瓨鐨勭墿鏂欙紝涓嶅彲鍒犻櫎");
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠浠撳簱鍐呮湁搴撳瓨鐨勭墿鏂欙紝涓嶅彲绂佺敤");
};
ywWarehouseMapper.update(new UpdateWrapper<YwWarehouse>().lambda().eq(YwWarehouse::getId,ywWarehouse.getId()).set(YwWarehouse::getStatus,ywWarehouse.getStatus()));
}
diff --git a/server/visits/dmvisit_service/src/main/resources/application-test.yml b/server/visits/dmvisit_service/src/main/resources/application-test.yml
index a8d00a5..5e192c8 100644
--- a/server/visits/dmvisit_service/src/main/resources/application-test.yml
+++ b/server/visits/dmvisit_service/src/main/resources/application-test.yml
@@ -28,7 +28,7 @@
debug_model: true
########################鍘嬬缉鍖呮枃浠朵綅缃� ########################
-zip_file_path: d://
+zip_file_path: /usr/local/static_resources/fn/
########################鍚屾鏁版嵁妯″紡 ########################
data-sync:
org-user-data-origin: 0 #缁勭粐鏁版嵁 0鑷缓 2浠ユ捣搴蜂负涓� 1鍗庢櫉ERP绯荤粺
--
Gitblit v1.9.3