Przeglądaj źródła

Merge branch 'release_toaliyun_real' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real

release_toaliyun_real
xiaohu 1 rok temu
rodzic
commit
cc6e5f5f3e
2 zmienionych plików z 44 dodań i 15 usunięć
  1. +1
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java
  2. +43
    -14
      mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java

+ 1
- 1
mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java Wyświetl plik

@@ -330,7 +330,7 @@ public class WxAgileContractController extends WxContractBaseController {
@GetMapping("getUnDepositList")
public ResultData getUnDepositList(@ModelAttribute WxRentContractAgileUnDeposit unDeposit) {
unDeposit.updateTenantInfo(getTenantInfo());
return new ResultData(wxAgileContractService.findUnDepositDetail(unDeposit));
return new ResultData(wxAgileContractService.findUnDepositList(unDeposit));
}


+ 43
- 14
mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java Wyświetl plik

@@ -24,6 +24,7 @@ import com.iformall.enums.EnumBillExtraCreateFrom;
import com.iformall.enums.EnumFeesShopTimeType;
import com.iformall.enums.EnumRentContractAdjustPeriod;
import com.iformall.enums.EnumRentContractAgilPriceUnit;
import com.iformall.enums.EnumRentContractAgilSettingMethod;
import com.iformall.enums.EnumRentContractAgilTimeUnit;
import com.iformall.enums.EnumRentContractAgileFeesType;
import com.iformall.enums.EnumRentContractAppStatus;
@@ -63,6 +64,7 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

@@ -261,9 +263,46 @@ public class WxAgileContractServiceImpl implements WxAgileContractService {
itemdel.setUnDepositId(unDeposit.getId());
wxRentContractAgileUnDepositItemMapper.deleteByUnDeposit(itemdel);
}
Date lastEndDate = null;
//如果是按店铺,则每个店铺都要校验
if (unDeposit.getSettingMethod() == EnumRentContractAgilSettingMethod.BY_CONTRACT.getCode()) {
validItem(unDeposit.getItems(), contract);
}else {
Map<String,List<WxRentContractAgileUnDepositItem>> shopNumberUnDepositItems = new HashMap<String,List<WxRentContractAgileUnDepositItem>>();
for (int i = 0 ; i < unDeposit.getItems().size(); i++) {
WxRentContractAgileUnDepositItem item = unDeposit.getItems().get(i);
List<WxRentContractAgileUnDepositItem> list = shopNumberUnDepositItems.get(item.getShopNumber());
if (null == list) {
list = new ArrayList<WxRentContractAgileUnDepositItem>();
}
list.add(item);
}
for (Iterator<String> it = shopNumberUnDepositItems.keySet().iterator(); it.hasNext();) {
String shopNumber = it.next();
validItem(shopNumberUnDepositItems.get(shopNumber), contract);
}
}
for (int i = 0 ; i < unDeposit.getItems().size(); i++) {
WxRentContractAgileUnDepositItem item = unDeposit.getItems().get(i);
item.setRentContractId(unDeposit.getRentContractId());
item.setUnDepositId(unDeposit.getId());
item.setMerchantId(unDeposit.getMerchantId());
item.setFeesId(unDeposit.getFeesId());
item.setId(idWorker.nextId());
item.updateTenantInfo(contract);
item.setCreatetime(new Date());
item.setUpdatetime(new Date());
wxRentContractAgileUnDepositItemMapper.insert(item);
}
}
private void validItem(List<WxRentContractAgileUnDepositItem> itemList,WxRentContract contract) {
Date lastEndDate = null;
for (int i = 0 ; i < itemList.size(); i++) {
WxRentContractAgileUnDepositItem item = itemList.get(i);
//判断时间是不是连这的
if (i == 0) {
lastEndDate = item.getEndTime();
@@ -277,23 +316,13 @@ public class WxAgileContractServiceImpl implements WxAgileContractService {
}
}
if (i == unDeposit.getItems().size()-1) {
if (i == itemList.size()-1) {
if (!item.getEndTime().equals(contract.getRentalEndDate())) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"结尾时间需要和合同结束时间一致");
}
}
item.setRentContractId(unDeposit.getRentContractId());
item.setUnDepositId(unDeposit.getId());
item.setMerchantId(unDeposit.getMerchantId());
item.setFeesId(unDeposit.getFeesId());
item.setId(idWorker.nextId());
item.updateTenantInfo(contract);
item.setCreatetime(new Date());
item.setUpdatetime(new Date());
wxRentContractAgileUnDepositItemMapper.insert(item);
lastEndDate = item.getEndTime();
}
}
}

@Override
@@ -308,7 +337,7 @@ public class WxAgileContractServiceImpl implements WxAgileContractService {
}
WxRentContractAgileUnDepositItem itemq = new WxRentContractAgileUnDepositItem();
itemq.updateTenantInfo(ud);
itemq.setUnDepositId(unDeposit.getId());
itemq.setUnDepositId(ud.getId());
ud.setItems(wxRentContractAgileUnDepositItemMapper.findList(itemq));
return ud;
}


Ładowanie…
Anuluj
Zapisz