Browse Source

update

release_toaliyun_real
xiaohanzi 5 years ago
parent
commit
16ddf28800
2 changed files with 31 additions and 12 deletions
  1. +13
    -5
      mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java
  2. +18
    -7
      mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java

+ 13
- 5
mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java View File

@@ -11,6 +11,7 @@ import com.iformall.domain.po.WxBillProperty;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxPropertyContract;
import com.iformall.domain.po.WxRentContract;
import com.iformall.enums.EnumContractOperationType;
import com.iformall.enums.EnumContractType;
import com.iformall.enums.EnumFlowContractType;
import com.iformall.enums.EnumFlowKey;
@@ -209,11 +210,18 @@ public class WxPropertyContractController extends WxContractBaseController {
if(propertyContractHasWorkFlow(contract)) {
return new ResultData(ErrorCode.FLOW_FAIL.getCode(),"租赁合同存在工作流,不允许直接生效。");
}
if (contract.getRentShopType().intValue() == EnumRentShopType.SHOP.getCode().intValue()) {
contract.setFlowParams(generateFlowParams(EnumFlowKey.NEW_PRO_CONTRACT, EnumFlowContractType.PROPERTY, contract.getRemark(), contract.getId()));
}else if (contract.getRentShopType().intValue() == EnumRentShopType.POINT.getCode().intValue()) {
contract.setFlowParams(generateFlowParams(EnumFlowKey.NEW_PRO_POINT_CONTRACT, EnumFlowContractType.PROPERTY_POINT, contract.getRemark(), contract.getId()));
if(contract.getOperationType().intValue() == EnumContractOperationType.PART.getCode().intValue()) {
if (contract.getRentShopType().intValue() == EnumRentShopType.SHOP.getCode().intValue()) {
contract.setFlowParams(generateFlowParams(EnumFlowKey.NEW_PRO_CONTRACT, EnumFlowContractType.PROPERTY, contract.getRemark(), contract.getId()));
}else if (contract.getRentShopType().intValue() == EnumRentShopType.POINT.getCode().intValue()) {
contract.setFlowParams(generateFlowParams(EnumFlowKey.NEW_PRO_POINT_CONTRACT, EnumFlowContractType.PROPERTY_POINT, contract.getRemark(), contract.getId()));
}
}else {
if (contract.getRentShopType().intValue() == EnumRentShopType.SHOP.getCode().intValue()) {
contract.setFlowParams(generateFlowParams(EnumFlowKey.NEW_PRO_CONTRACT, EnumFlowContractType.WHOLE_SHOP, contract.getRemark(), contract.getId()));
}else if (contract.getRentShopType().intValue() == EnumRentShopType.POINT.getCode().intValue()) {
contract.setFlowParams(generateFlowParams(EnumFlowKey.NEW_PRO_POINT_CONTRACT, EnumFlowContractType.WHOLE_POINT, contract.getRemark(), contract.getId()));
}
}
return wxPropertyContractService.apply(contract,user);
}


+ 18
- 7
mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java View File

@@ -187,15 +187,11 @@ public class WxFlowServiceImpl implements WxFlowService {
WxRentContract record = wxRentContractMapper.selectById(businessId);
boolean isrentproperty = false;
Integer propertyStatus = null;
//合并的合同-审批时 物业合同的状态肯定不在 签约中 避免更新物业合同时提示店铺存在
if(record.getOperationType().equals(EnumContractOperationType.WHOLE.getCode())){
WxPropertyContract wxPropertyContract = new WxPropertyContract();
wxPropertyContract.setRentContractId(record.getId());
//wxPropertyContract.setStatus(EnumRentContractStatus.INTENTION.getCode());
wxPropertyContract.setApplyStatus(applyStatus);
wxPropertyContract.setBusinessType(flowType);
//wxPropertyContractMapper.updateStatusByRentContractId(wxPropertyContract);
wxPropertyContractMapper.updateApplyStatusByRentContractId(wxPropertyContract);
isrentproperty = true;
}

//如果是提交审批 , 审批驳回状态不变
@@ -203,12 +199,27 @@ public class WxFlowServiceImpl implements WxFlowService {
//如果合同的状态非正常,则不处理
if (EnumRentContractStatus.DRAFT.getCode().intValue() == record.getStatus().intValue()) {
rent.setStatus(EnumRentContractStatus.PERFORMANCE.getCode());
//如果是租金+物业,则还要更新物业合同的状态
if (isrentproperty) {
propertyStatus = EnumRentContractStatus.PERFORMANCE.getCode();
}
}
//如果审批完成
}else if (EnumRentContractAppStatus.FINISH.getCode().intValue() == applyStatus.intValue()) {
wxRentContractService.updateRentContractStatus(businessId);
if (isrentproperty) {
wxPropertyContractService.updatePropertyContractStatus(businessId);
}
}
wxRentContractService.updateApplyStatus(rent);
if (isrentproperty) {
WxPropertyContract wxPropertyContract = new WxPropertyContract();
wxPropertyContract.setRentContractId(record.getId());
wxPropertyContract.setStatus(propertyStatus);
wxPropertyContract.setApplyStatus(applyStatus);
wxPropertyContract.setBusinessType(flowType);
wxPropertyContractMapper.updateApplyStatusByRentContractId(wxPropertyContract);
}

}else if(EnumFlowContractType.PROPERTY.getCode().equals(contractType) || EnumFlowContractType.PROPERTY_POINT.getCode().equals(contractType)){
WxPropertyContract wxPropertyContract = new WxPropertyContract();


Loading…
Cancel
Save