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

[合同优化][修改][晚上合同优化需求]

release_toaliyun_real
luozukai 7 лет назад
Родитель
Сommit
9a3011c77c
5 измененных файлов: 40 добавлений и 58 удалений
  1. +2
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java
  2. +4
    -24
      mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java
  3. +9
    -8
      mallinkService/src/main/java/com/iformall/domain/po/WxPropertyContract.java
  4. +9
    -10
      mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java
  5. +16
    -16
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java

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

@@ -53,6 +53,7 @@ public class WxPropertyContractController extends BaseController {
logger.debug("[" + getIpAddr() + "] WxPropertyContractController::add"); logger.debug("[" + getIpAddr() + "] WxPropertyContractController::add");
MallUserInfo user = getUser(); MallUserInfo user = getUser();
wxPropertyContract.setTenantId(user.getTenantId()); wxPropertyContract.setTenantId(user.getTenantId());
wxPropertyContract.setAdjustPeriodHandle();
return wxPropertyContractService.saveOrUpdate(wxPropertyContract, user.getId(), user.getName()); return wxPropertyContractService.saveOrUpdate(wxPropertyContract, user.getId(), user.getName());
} }


@@ -61,6 +62,7 @@ public class WxPropertyContractController extends BaseController {
logger.debug("[" + getIpAddr() + "] WxPropertyContractController::update"); logger.debug("[" + getIpAddr() + "] WxPropertyContractController::update");
MallUserInfo user = getUser(); MallUserInfo user = getUser();
wxPropertyContract.setTenantId(user.getTenantId()); wxPropertyContract.setTenantId(user.getTenantId());
wxPropertyContract.setAdjustPeriodHandle();
return wxPropertyContractService.saveOrUpdate(wxPropertyContract, user.getId(), user.getName()); return wxPropertyContractService.saveOrUpdate(wxPropertyContract, user.getId(), user.getName());
} }




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

@@ -84,12 +84,7 @@ public class WxRentContractController extends BaseController {
MallUserInfo user = getUser(); MallUserInfo user = getUser();
wxRentContract.setTenantId(user.getTenantId()); wxRentContract.setTenantId(user.getTenantId());


//目前只有多经点位租赁合同
WxShop wxShop = wxShopService.getById(wxRentContract.getShopId());
if(wxRentContract.getMonthHandleType() != null && EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode().equals(wxRentContract.getMonthHandleType().intValue())
&& EnumRentShopType.POINT.getCode().equals(wxShop.getType())){
wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType());
}
wxRentContract.setAdjustPeriodHandle();
return wxRentContractService.save(wxRentContract, user.getId(),user.getName()); return wxRentContractService.save(wxRentContract, user.getId(),user.getName());
} }


@@ -99,12 +94,7 @@ public class WxRentContractController extends BaseController {
logger.debug("[" + getIpAddr() + "] WxRentContractController::update"); logger.debug("[" + getIpAddr() + "] WxRentContractController::update");
MallUserInfo user = getUser(); MallUserInfo user = getUser();
wxRentContract.setTenantId(user.getTenantId()); wxRentContract.setTenantId(user.getTenantId());
//目前只有多经点位租赁合同
WxShop wxShop = wxShopService.getById(wxRentContract.getShopId());
if(wxRentContract.getMonthHandleType() != null && EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode().equals(wxRentContract.getMonthHandleType().intValue())
&& EnumRentShopType.POINT.getCode().equals(wxShop.getType())){
wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType());
}
wxRentContract.setAdjustPeriodHandle();
return wxRentContractService.update(wxRentContract, user.getId(),user.getName()); return wxRentContractService.update(wxRentContract, user.getId(),user.getName());
} }


@@ -119,12 +109,7 @@ public class WxRentContractController extends BaseController {
logger.debug("[" + getIpAddr() + "] WxRentContractController::updateMoney"); logger.debug("[" + getIpAddr() + "] WxRentContractController::updateMoney");
MallUserInfo user = getUser(); MallUserInfo user = getUser();
wxRentContract.setTenantId(user.getTenantId()); wxRentContract.setTenantId(user.getTenantId());
//目前只有多经点位租赁合同
WxShop wxShop = wxShopService.getById(wxRentContract.getShopId());
if(wxRentContract.getMonthHandleType() != null &&EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode().equals(wxRentContract.getMonthHandleType().intValue())
&& EnumRentShopType.POINT.getCode().equals(wxShop.getType())){
wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType());
}
wxRentContract.setAdjustPeriodHandle();
return wxRentContractService.update(wxRentContract, user.getId(),user.getName()); return wxRentContractService.update(wxRentContract, user.getId(),user.getName());
} }


@@ -134,12 +119,7 @@ public class WxRentContractController extends BaseController {
logger.debug("[" + getIpAddr() + "] WxRentContractController::updateFile"); logger.debug("[" + getIpAddr() + "] WxRentContractController::updateFile");
MallUserInfo user = getUser(); MallUserInfo user = getUser();
wxRentContract.setTenantId(user.getTenantId()); wxRentContract.setTenantId(user.getTenantId());
//目前只有多经点位租赁合同
WxShop wxShop = wxShopService.getById(wxRentContract.getShopId());
if(wxRentContract.getMonthHandleType() != null && EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode().equals(wxRentContract.getMonthHandleType().intValue())
&& EnumRentShopType.POINT.getCode().equals(wxShop.getType())){
wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType());
}
wxRentContract.setAdjustPeriodHandle();
return wxRentContractService.updateFile(wxRentContract, user.getId(),user.getName()); return wxRentContractService.updateFile(wxRentContract, user.getId(),user.getName());
} }




+ 9
- 8
mallinkService/src/main/java/com/iformall/domain/po/WxPropertyContract.java Просмотреть файл

@@ -255,15 +255,16 @@ public class WxPropertyContract extends BaseEntity {
} }
} }


public Integer getAdjustPeriod() {
// public Integer getAdjustPeriod() {
// if(EnumPriceUnit.D.getCode().equals(this.getPriceUnit()) && EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode().equals(adjustPeriod)){
// return EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode();
// }
// return adjustPeriod;
// }

public void setAdjustPeriodHandle() {
if(EnumPriceUnit.D.getCode().equals(this.getPriceUnit()) && EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode().equals(adjustPeriod)){ if(EnumPriceUnit.D.getCode().equals(this.getPriceUnit()) && EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode().equals(adjustPeriod)){
return EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode();
this.adjustPeriod = EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode();
} }
return adjustPeriod;
}


public void setAdjustPeriod(Integer adjustPeriod) {
this.adjustPeriod = adjustPeriod;
} }
} }

+ 9
- 10
mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java Просмотреть файл

@@ -86,11 +86,6 @@ public class WxRentContract extends BaseEntity {
@SortColumn(column = "latePayPrice") @SortColumn(column = "latePayPrice")
private Integer latePayPrice; private Integer latePayPrice;



@io.swagger.annotations.ApiModelProperty(value = "月计租方式 3按自然月, adjustPeriod 1日 2月 monthHandleType 2按账单周期 3按自然月", name = "monthHandleType")
@Transient
private Integer monthHandleType;

@io.swagger.annotations.ApiModelProperty(value = "商户", name = "merchantId") @io.swagger.annotations.ApiModelProperty(value = "商户", name = "merchantId")
private Long merchantId; private Long merchantId;
@io.swagger.annotations.ApiModelProperty(value = "月租金/分成(分)", name = "price") @io.swagger.annotations.ApiModelProperty(value = "月租金/分成(分)", name = "price")
@@ -293,13 +288,17 @@ public class WxRentContract extends BaseEntity {
} }
} }


public Integer getAdjustPeriodBus() {
// public Integer getAdjustPeriod() {
// if(EnumPriceUnit.D.getCode().equals(this.getPriceUnit()) && EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode().equals(adjustPeriod)){
// return EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode();
// }
// return adjustPeriod;
// }

public void setAdjustPeriodHandle() {
if(EnumPriceUnit.D.getCode().equals(this.getPriceUnit()) && EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode().equals(adjustPeriod)){ if(EnumPriceUnit.D.getCode().equals(this.getPriceUnit()) && EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode().equals(adjustPeriod)){
return EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode();
this.adjustPeriod = EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode();
} }
return adjustPeriod;
} }




} }

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

@@ -157,7 +157,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
if(wxRentContract.getPriceUnit() == null){ if(wxRentContract.getPriceUnit() == null){
wxRentContract.setPriceUnit(EnumPriceUnit.M.getCode()); wxRentContract.setPriceUnit(EnumPriceUnit.M.getCode());
} }
if(wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode())){
if(wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode())){
wxRentContract.setAdjustPeriod(EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode()); wxRentContract.setAdjustPeriod(EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode());
wxRentContract.setPriceUnit(EnumPriceUnit.D.getCode()); wxRentContract.setPriceUnit(EnumPriceUnit.D.getCode());
} }
@@ -232,7 +232,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
//保存租赁合同信息 //保存租赁合同信息
final IdWorker idWorker = IdWorker.get(); final IdWorker idWorker = IdWorker.get();
record.setId(idWorker.nextId()); record.setId(idWorker.nextId());
int dayType = record.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode()) ? Calendar.DAY_OF_MONTH : Calendar.MONTH;
int dayType = record.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode()) ? Calendar.DAY_OF_MONTH : Calendar.MONTH;
//计租开始时间 //计租开始时间
Calendar instance = Calendar.getInstance(); Calendar instance = Calendar.getInstance();
instance.setTime(record.getRentalStartDate()); instance.setTime(record.getRentalStartDate());
@@ -416,7 +416,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
if (wxRentContract == null) { if (wxRentContract == null) {
return new ResultData(ErrorCode.RENT_CONTRACT_IS_NOT_FOUND); return new ResultData(ErrorCode.RENT_CONTRACT_IS_NOT_FOUND);
} }
int dayType = wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode()) ? Calendar.DAY_OF_MONTH : Calendar.MONTH;
int dayType = wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode()) ? Calendar.DAY_OF_MONTH : Calendar.MONTH;


Calendar instance = Calendar.getInstance(); Calendar instance = Calendar.getInstance();
instance.setTime(record.getRentalStartDate()); instance.setTime(record.getRentalStartDate());
@@ -525,7 +525,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
wxBillDeposit.setNeedPay(needpay); wxBillDeposit.setNeedPay(needpay);
wxBillDeposit.setOwe(needpay); wxBillDeposit.setOwe(needpay);
//找到计租方式 //找到计租方式
int dayType = wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode()) ? Calendar.DAY_OF_MONTH : Calendar.MONTH;
int dayType = wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode()) ? Calendar.DAY_OF_MONTH : Calendar.MONTH;


Date date = new Date(); Date date = new Date();
Calendar instance = Calendar.getInstance(); Calendar instance = Calendar.getInstance();
@@ -709,8 +709,8 @@ public class WxRentContractServiceImpl implements WxRentContractService {
Long price = wxRentContract.getPrice(); Long price = wxRentContract.getPrice();


//按月计租 //按月计租
if (wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode())
||wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())) {
if (wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode())
||wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())) {
rentList = buildRentMonth(wxMerchant, userId, wxRentContract, receivePeriod, lease, rentalStartDate, price,isPreview); rentList = buildRentMonth(wxMerchant, userId, wxRentContract, receivePeriod, lease, rentalStartDate, price,isPreview);
} else { } else {
//如果按日 //如果按日
@@ -821,7 +821,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
Calendar instance = Calendar.getInstance(); Calendar instance = Calendar.getInstance();
Date startDate; Date startDate;
//自然月 //自然月
if(wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
if(wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
if(i == 0){ //第一期 if(i == 0){ //第一期
startDate = rentalStartDate; startDate = rentalStartDate;
}else{ }else{
@@ -881,7 +881,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
final IdWorker idWorker = IdWorker.get(); final IdWorker idWorker = IdWorker.get();


//自然月计租,而且残月,周期整除,n+1,最后一个周期作为残月 //自然月计租,而且残月,周期整除,n+1,最后一个周期作为残月
if(wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())
if(wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())
&& !isFirstDay(wxRentContract.getRentalStartDate()) && !isFirstDay(wxRentContract.getRentalStartDate())
&& (wxRentContract.getLease() % wxRentContract.getReceivePeriod() == 0) && (wxRentContract.getLease() % wxRentContract.getReceivePeriod() == 0)
&& isLastYesr && isLastYesr
@@ -902,7 +902,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
Date date = new Date(); Date date = new Date();
instance.setTime(startdate); instance.setTime(startdate);
instance.add(dayType, receivePeriod * i); instance.add(dayType, receivePeriod * i);
if(!wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
if(!wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
instance.add(Calendar.DAY_OF_MONTH, -1); instance.add(Calendar.DAY_OF_MONTH, -1);
} }
Date time = instance.getTime(); Date time = instance.getTime();
@@ -910,7 +910,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
//账单开始时间 //账单开始时间
instance.clear(); instance.clear();
instance.setTime(wxBillRent.getReceiveDate()); instance.setTime(wxBillRent.getReceiveDate());
if(!wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
if(!wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
instance.add(Calendar.DAY_OF_MONTH, 1); instance.add(Calendar.DAY_OF_MONTH, 1);
} }
wxBillRent.setStarttime(instance.getTime()); wxBillRent.setStarttime(instance.getTime());
@@ -926,7 +926,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
//账单开始时间 //账单开始时间
instance.clear(); instance.clear();
instance.setTime(wxBillRent.getReceiveDate()); instance.setTime(wxBillRent.getReceiveDate());
if(!wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
if(!wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
instance.add(Calendar.DAY_OF_MONTH, 1); instance.add(Calendar.DAY_OF_MONTH, 1);
} }
wxBillRent.setStarttime(instance.getTime()); wxBillRent.setStarttime(instance.getTime());
@@ -940,7 +940,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
} }


//自然月,开始日期、缴款日,结束日期 //自然月,开始日期、缴款日,结束日期
if(wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
if(wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_NAR_MONTH.getCode())){
int rentStartDateInt = Integer.parseInt(new SimpleDateFormat("d").format(wxRentContract.getRentalStartDate())); int rentStartDateInt = Integer.parseInt(new SimpleDateFormat("d").format(wxRentContract.getRentalStartDate()));
int startDateInt = Integer.parseInt(new SimpleDateFormat("d").format(wxBillRent.getStarttime())); int startDateInt = Integer.parseInt(new SimpleDateFormat("d").format(wxBillRent.getStarttime()));
int endDateInt = Integer.parseInt(new SimpleDateFormat("d").format(wxRentContract.getRentalEndDate())); int endDateInt = Integer.parseInt(new SimpleDateFormat("d").format(wxRentContract.getRentalEndDate()));
@@ -1061,7 +1061,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
//当天也算,加1天 //当天也算,加1天
Date newEndDate = DateUtils.getDaySet(wxBillRent.getEndtime(),Calendar.DATE,1); Date newEndDate = DateUtils.getDaySet(wxBillRent.getEndtime(),Calendar.DATE,1);
//按日 //按日
if(wxRentContract.getAdjustPeriodBus().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode())){
if(wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode())){
int dayCount = DateUtils.daysBetween(wxBillRent.getStarttime(),newEndDate); int dayCount = DateUtils.daysBetween(wxBillRent.getStarttime(),newEndDate);
needpay = dayCount*price; needpay = dayCount*price;
}else{ }else{
@@ -1671,7 +1671,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
result.put("rentalEndDateDay" + i, enddate.substring(8)); result.put("rentalEndDateDay" + i, enddate.substring(8));
String ratio = new BigDecimal(integers.get(i)).divide(new BigDecimal(100)).toPlainString(); String ratio = new BigDecimal(integers.get(i)).divide(new BigDecimal(100)).toPlainString();
result.put("adjustRatio" + i, ratio); result.put("adjustRatio" + i, ratio);
result.put("adjustPeriod" + i, wxRentContract.getAdjustPeriodBus());
result.put("adjustPeriod" + i, wxRentContract.getAdjustPeriod());
String payRatio = new BigDecimal(wxRentContract.getPayRatio()).divide(new BigDecimal(100)).toPlainString(); String payRatio = new BigDecimal(wxRentContract.getPayRatio()).divide(new BigDecimal(100)).toPlainString();
result.put("payRatio" + i, payRatio); result.put("payRatio" + i, payRatio);


@@ -1700,7 +1700,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
result.put("rentalEndDateMonth" + count, enddate.substring(5, 7)); result.put("rentalEndDateMonth" + count, enddate.substring(5, 7));
result.put("rentalEndDateDay" + count, enddate.substring(8)); result.put("rentalEndDateDay" + count, enddate.substring(8));
result.put("adjustRatio" + count, wxRentContract.getAdjustRatio()); result.put("adjustRatio" + count, wxRentContract.getAdjustRatio());
result.put("adjustPeriod" + count, wxRentContract.getAdjustPeriodBus());
result.put("adjustPeriod" + count, wxRentContract.getAdjustPeriod());
String payRatio = new BigDecimal(wxRentContract.getPayRatio()).divide(new BigDecimal(100)).toPlainString(); String payRatio = new BigDecimal(wxRentContract.getPayRatio()).divide(new BigDecimal(100)).toPlainString();
result.put("payRatio" + count, payRatio); result.put("payRatio" + count, payRatio);


@@ -1801,7 +1801,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
result.put("adjustRatio" + i, adjustRatioList.get(i)); result.put("adjustRatio" + i, adjustRatioList.get(i));
} }
result.put("payRatio" + i, payRatioStr); result.put("payRatio" + i, payRatioStr);
result.put("adjustPeriod" + i, wxRentContract.getAdjustPeriodBus());
result.put("adjustPeriod" + i, wxRentContract.getAdjustPeriod());
} }
if (extracount > 0) { if (extracount > 0) {
//额外租期 //额外租期


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