From 93de43267e1663031fe5dc2f5ae40d128a182a76 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期四, 18 六月 2026 17:24:51 +0800
Subject: [PATCH] 新增智能电表、空调管理
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java | 30 +++++++++++++++++++++++++++++-
1 files changed, 29 insertions(+), 1 deletions(-)
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 383ca4c..b1d2cb3 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
@@ -19,6 +19,7 @@
import com.doumee.dao.system.model.Multifile;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.YwContractService;
+import com.doumee.service.business.YwCustomerDeviceAutoBindService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -73,6 +74,8 @@
@Autowired
private SystemDictDataBiz systemDictDataBiz;
+ @Autowired
+ private YwCustomerDeviceAutoBindService ywCustomerDeviceAutoBindService;
@Override
@Transactional(rollbackFor = {BusinessException.class,Exception.class})
public Integer create(YwContract model) {
@@ -94,6 +97,9 @@
dealDetailListBiz(model,false);//澶勭悊鏉℃淇℃伅
dealMultifileBiz(model);//澶勭悊闄勪欢淇℃伅
dealRoomsForContract(model);//澶勭悊鎴挎簮鍏宠仈琛�
+ if (Constants.equalsInteger(model.getStatus(), Constants.ONE) && model.getRenterId() != null) {
+ ywCustomerDeviceAutoBindService.syncByContractId(model.getId(), model.getLoginUserInfo());
+ }
dealLogBiz(model,Constants.YwLogType.CONTRACT_CREATE,model.getLoginUserInfo().getRealname(),"銆�"+model.getRemark().replace("鍚堝悓鎽樿锛�","")+"銆�");//璁板綍鏂板缓鏃ュ織
return model.getId();
}
@@ -377,6 +383,9 @@
update.setBtRemark(getbackRentRemarkByParam(param));
ywContractMapper.updateById(update);
dealLogBiz(param,Constants.YwLogType.CONTRACT_BACK, param.getLoginUserInfo().getRealname(),getbackRentLogByParam(param));
+ if (model.getRenterId() != null) {
+ ywCustomerDeviceAutoBindService.refreshCustomerDevices(model.getRenterId(), param.getLoginUserInfo());
+ }
//濡傛灉閫�绉熸棩鏈熷皬浜庡綋鍓嶆棩鏈� 鍒欑洿鎺ラ噴鏀炬埧婧愪俊鎭� 鏈璧�
if(Utils.Date.getEnd(param.getBtDate()).getTime()<System.currentTimeMillis()){
List<YwContractRoom> contractRoomList = ywContractRoomMapper.selectList(new QueryWrapper<YwContractRoom>().lambda()
@@ -416,6 +425,14 @@
roomMapper.update(new UpdateWrapper<YwRoom>().lambda().set(YwRoom::getLeaseNowStatus,Constants.ONE)
.in(YwRoom::getId,contractRoomList.stream().map(i->i.getRoomId()).collect(Collectors.toList()))
);
+ }
+ LoginUserInfo timerUser = new LoginUserInfo();
+ timerUser.setId(1);
+ timerUser.setRealname("timer");
+ for (YwContract c : listA) {
+ if (c.getRenterId() != null) {
+ ywCustomerDeviceAutoBindService.syncByContractId(c.getId(), timerUser);
+ }
}
}
@@ -1631,7 +1648,7 @@
queryWrapper.eq(YwContract::getType, pageWrap.getModel().getType());
}
if (pageWrap.getModel().getCode() != null) {
- queryWrapper.eq(YwContract::getCode, pageWrap.getModel().getCode());
+ queryWrapper.like(YwContract::getCode, pageWrap.getModel().getCode());
}
if (pageWrap.getModel().getUserId() != null) {
queryWrapper.eq(YwContract::getUserId, pageWrap.getModel().getUserId());
@@ -1702,6 +1719,9 @@
if (pageWrap.getModel().getCompanyName() != null) {
queryWrapper.like(Company::getName, pageWrap.getModel().getCompanyName());
}
+ if (pageWrap.getModel().getRenterName() != null) {
+ queryWrapper.like(YwCustomer::getName, pageWrap.getModel().getRenterName());
+ }
if (pageWrap.getModel().getRoomId() != null) {
queryWrapper.apply(" t.id in ( select ycr.CONTRACT_ID from yw_contract_room ycr where ycr.type = 0 and ycr.ROOM_ID = "+pageWrap.getModel().getRoomId()+" ) ");
}
@@ -1771,6 +1791,14 @@
.in(YwContract::getId,ywContractList.stream().map(i->i.getId()).collect(Collectors.toList()))
);
+ LoginUserInfo timerUser = new LoginUserInfo();
+ timerUser.setId(1);
+ timerUser.setRealname("timer");
+ for (YwContract c : ywContractList) {
+ if (c.getRenterId() != null) {
+ ywCustomerDeviceAutoBindService.refreshCustomerDevices(c.getRenterId(), timerUser);
+ }
+ }
List<YwContractRoom> contractRoomList = ywContractRoomMapper.selectList(new QueryWrapper<YwContractRoom>().lambda().in(YwContractRoom::getContractId,
ywContractList.stream().map(i->i.getId()).collect(Collectors.toList())));
--
Gitblit v1.9.3