Просмотр исходного кода

fix contract

release_toaliyun_real
xiaohanzi 5 лет назад
Родитель
Сommit
191cf53b0d
6 измененных файлов: 46 добавлений и 15 удалений
  1. +10
    -4
      mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java
  2. +1
    -1
      mallinkSchedule/src/main/java/com/iformall/schedule/ContractSchedule.java
  3. +1
    -0
      mallinkService/src/main/java/com/iformall/enums/EnumRentContractStatus.java
  4. +2
    -2
      mallinkService/src/main/java/com/iformall/service/WxRentContractService.java
  5. +21
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java
  6. +11
    -7
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java

+ 10
- 4
mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java Просмотреть файл

@@ -157,7 +157,7 @@ public class WxRentContractController extends WxContractBaseController {
if(wxRentContract.getRentStartType()!=null &&wxRentContract.getRentStartType().equals(EnumRentStartType.STARTTIME.getCode())){
wxRentContract.setRentalStartDate(wxRentContract.getStartDate());
}
return wxRentContractService.update(wxRentContract, user.getId(),user.getName(),EnumFromType.OTHER.getCode(),oldDate);
return wxRentContractService.update(wxRentContract, user.getId(),user.getName(),EnumFromType.OTHER.getCode(),oldDate,false);
}
/**
@@ -180,7 +180,7 @@ public class WxRentContractController extends WxContractBaseController {
if(wxRentContract.getRentStartType()!=null && wxRentContract.getRentStartType().equals(EnumRentStartType.STARTTIME.getCode())){
wxRentContract.setRentalStartDate(wxRentContract.getStartDate());
}
return wxRentContractService.updateFile(wxRentContract, user.getId(),user.getName(),oldDate);
return wxRentContractService.updateFile(wxRentContract, user.getId(),user.getName(),oldDate,true);
}
@GetMapping("/findById")
@@ -228,7 +228,7 @@ public class WxRentContractController extends WxContractBaseController {
}
ResultData update = null;
try {
update = wxRentContractService.update(rentContract, user.getId(), user.getName(), EnumFromType.OTHER.getCode(), oldDate);
update = wxRentContractService.update(rentContract, user.getId(), user.getName(), EnumFromType.OTHER.getCode(), oldDate,false);
} catch (MallinkException e) {
return new ResultData(update.code,update.message);
}
@@ -523,8 +523,14 @@ public class WxRentContractController extends WxContractBaseController {
logger.debug("[" + getIpAddr() + "] WxRentContractController::getRentContractList");
if (null == wxRentContract) wxRentContract = new WxRentContract();
wxRentContract.updateTenantInfo(getTenantInfo());
//正常状态
if (1 == validStatus) {
wxRentContract.setStatuss(EnumRentContractStatus.getValidStatus());
//续签的合同,包括正常到期
}else if (2== validStatus) {
List<Integer> statuss = EnumRentContractStatus.getValidStatus();
statuss.add(EnumRentContractStatus.OUT_DATE.getCode());
wxRentContract.setStatuss(statuss);
}
wxRentContract.setSortColumns(SortField.Createtime_DESC);
return new ResultData(wxRentContractService.getRentContractList(wxRentContract, pageNum, pageSize));
@@ -642,7 +648,7 @@ public class WxRentContractController extends WxContractBaseController {
rentContract.updateTenantInfo(user);
rentContract.setAdjustPeriodHandle();
rentContract.setRentStartType(wxRentContract.getRentStartType());
return wxRentContractService.update(rentContract, user.getId(),user.getName(), EnumFromType.SWITCH.getCode(),oldDate);
return wxRentContractService.update(rentContract, user.getId(),user.getName(), EnumFromType.SWITCH.getCode(),oldDate,false);
}

// @GetMapping("exportContract")


+ 1
- 1
mallinkSchedule/src/main/java/com/iformall/schedule/ContractSchedule.java Просмотреть файл

@@ -37,7 +37,7 @@ public class ContractSchedule {
/**
* 凌晨5分
*/
@Scheduled(cron = "0 0/5 * * * ?")
@Scheduled(cron = "0 5 0 * * ?")
public void updateContractStatus() {
//更新合同状态,正常到期


+ 1
- 0
mallinkService/src/main/java/com/iformall/enums/EnumRentContractStatus.java Просмотреть файл

@@ -16,6 +16,7 @@ public enum EnumRentContractStatus {
TERMINATE(6,"提前终止"),
INVALID(7,"作废"),
PERFORMANCE(10,"履约中(审批中)"),
UNWRITE(11,"未完成草稿内容")


+ 2
- 2
mallinkService/src/main/java/com/iformall/service/WxRentContractService.java Просмотреть файл

@@ -46,7 +46,7 @@ public interface WxRentContractService {
*/
ResultData save(WxRentContract record,Long userId,String userName,Date oldRentStartDate);

ResultData update(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate);
ResultData update(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate,boolean writeComplate);

/**
* 根据Id删除实体
@@ -66,7 +66,7 @@ public interface WxRentContractService {

//void exportContract(HttpServletRequest request, HttpServletResponse response, Long id);

ResultData updateFile(WxRentContract wxRentContract, Long userId,String userName,Date oldRentStartDate);
ResultData updateFile(WxRentContract wxRentContract, Long userId,String userName,Date oldRentStartDate,boolean writeComplate);

ResultData updateRentContractStatus(Long id);



+ 21
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java Просмотреть файл

@@ -460,7 +460,27 @@ public class WxMerchantServiceImpl implements WxMerchantService {
Date date = new Date();
wxMerchant.setUpdateDate(date);
wxMerchantMapper.updateById(wxMerchant);
wxMerchantShopMapper.realDelByMerchantId(wxMerchant.getId());
//如果原来店铺在商户里面有有效的合同,则不能操作
List<Long> oldShopIds = wxMerchantShopMapper.findShopIds(wxMerchant.getId());
if (null != oldShopIds) {
for (Long osid : oldShopIds) {
WxRentContract wrc = new WxRentContract();
wrc.setMerchantId(wxMerchant.getId());
wrc.setQueryShopId(osid);
wrc.setStatuss(EnumRentContractStatus.getValidStatus());
wrc.updateTenantInfo(wxMerchant);
List<WxRentContract> clist = wxRentContractService.findList(wrc);
if (null != clist && clist.size() > 0 ) {
return new ResultData(ErrorCode.MERCHANT_HASRENTCONTRACT.getCode(),"店铺["+osid+"]存在有效的合同,不能解除绑定.");
}
}
}
//都验证过了之后,先把之前的商铺释放,删除关系
if (null != oldShopIds) {
wxShopMapper.updateUnRentByIds(oldShopIds);
wxMerchantShopMapper.realDelByMerchantId(wxMerchant.getId());
}
List<Long> shopIds = wxMerchant.getShopids();
for (Long sid: shopIds) {
WxMerchantShop mcs = new WxMerchantShop();


+ 11
- 7
mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java Просмотреть файл

@@ -488,7 +488,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {

try {
record.setApplyStatus(EnumRentContractAppStatus.DEFAULT.getCode());
record.setStatus(EnumRentContractStatus.DRAFT.getCode());
record.setStatus(EnumRentContractStatus.UNWRITE.getCode());
Date tempDate = record.getRentalStartDate();
record.setRentalStartDate(oldRentStartDate);
record.setShopName(shopName);
@@ -542,7 +542,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {

@Transactional(rollbackFor = {Exception.class})
@Override
public ResultData update(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate) {
public ResultData update(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate,boolean writeComplate) {
//查询预账单用于展示
WxBillRent wxBillRent = new WxBillRent();
wxBillRent.setRentContractId(record.getId());
@@ -551,7 +551,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
List<WxBillRent> resultList = wxBillRentMapper.findList(wxBillRent);

//更新
ResultData resultData = getResultDataForUpdate(record, userId,from,oldRentStartDate);
ResultData resultData = getResultDataForUpdate(record, userId,from,oldRentStartDate,writeComplate);
if (resultData.code != Result.SUCCESS) {
return resultData;
}
@@ -619,7 +619,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
wxBillRentMapper.insertBills(record.getPreviewBillRentList());
}

public ResultData getResultDataForUpdate(WxRentContract record, Long userId,int from,Date oldRentStartDate) {
public ResultData getResultDataForUpdate(WxRentContract record, Long userId,int from,Date oldRentStartDate,boolean writeFinal) {
//更新租赁合同信息
WxRentContract wxRentContract = wxRentContractMapper.selectById(record.getId());
if (wxRentContract == null) {
@@ -729,7 +729,11 @@ public class WxRentContractServiceImpl implements WxRentContractService {
Date tempDate = record.getRentalStartDate();
record.setRentalStartDate(oldRentStartDate);
record.setShopName(shopName);
record.setStatus(wxRentContract.getStatus());
if (writeFinal) {
record.setStatus(EnumRentContractStatus.DRAFT.getCode());
}else {
record.setStatus(wxRentContract.getStatus());
}
record.setApplyStatus(wxRentContract.getApplyStatus());
wxRentContractMapper.updateById(record);
record.setRentalStartDate(tempDate);
@@ -1618,12 +1622,12 @@ public class WxRentContractServiceImpl implements WxRentContractService {

@Override
@Transactional(rollbackFor = {Exception.class})
public ResultData updateFile(WxRentContract record, Long userId,String userName,Date oldRentStartDate) {
public ResultData updateFile(WxRentContract record, Long userId,String userName,Date oldRentStartDate,boolean writeComplate) {
// 保存调整金额(预账单调整)
if(!CollectionUtils.isEmpty(record.getPreviewBillRentList())){
savePreviewBill(record);
}
ResultData resultData = getResultDataForUpdate(record, userId,0,oldRentStartDate);
ResultData resultData = getResultDataForUpdate(record, userId,0,oldRentStartDate,writeComplate);
// if (resultData.code != Result.SUCCESS) {
// return resultData;
// }


Загрузка…
Отмена
Сохранить