Explorar el Código

Merge tag 'refs/tags/jenkins-back-end-1807' into release

develop
release_toaliyun_real
luozukai hace 7 años
padre
commit
af54feecd5
Se han modificado 4 ficheros con 29 adiciones y 27 borrados
  1. +11
    -7
      mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java
  2. +16
    -18
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java
  3. +1
    -1
      mallinkService/src/main/resources/mapper/WxBillPropertyMapper.xml
  4. +1
    -1
      mallinkService/src/main/resources/mapper/WxBillRentMapper.xml

+ 11
- 7
mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java Ver fichero

@@ -532,7 +532,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService
//endDate = wxPropertyContract.getRentalEndDate();
endDate = null;
}else {
endDate = yearList.get(index);
endDate = yearList.get(index+1);//price index 0开始,year.end 从第二年开始
logger.info("==========cross:"+sd.format(endDate));
}
}
@@ -554,16 +554,23 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService

//按日
if (wxPropertyContract.getPriceUnit().equals(EnumPriceUnit.D.getCode())){
double needpayD = WxRentContractServiceImpl.getNeedPay(0,price,wxBillProperty.getStarttime(),wxBillProperty.getEndtime());
Double priceD = new Double(price);
double needpayD = WxRentContractServiceImpl.getNeedPay(0,priceD,wxBillProperty.getStarttime(),wxBillProperty.getEndtime());
needpay = new Double(needpayD).longValue();
}else{
//年 需要除12
Double priceD = new Double(price);
if(EnumPriceUnit.Y.getCode().equals(wxPropertyContract.getPriceUnit())){
priceD = new Double(price)/12;
}

//当天也算,加1天
Date newEndDate = DateUtils.getDaySet(wxBillProperty.getEndtime(),Calendar.DATE,1);
//按月
int[] diff = DateUtils.getDiff(wxBillProperty.getStarttime(),newEndDate);
needpay = diff[0]*price;
needpay =new Double( diff[0]*priceD).longValue();

double oneDayProce = (double) price/DateUtils.getMonthDayCount(wxPropertyContract.getRentalEndDate());
double oneDayProce = priceD/DateUtils.getMonthDayCount(wxPropertyContract.getRentalEndDate());
needpay += diff[1] * oneDayProce;
}
wxBillProperty.setNeedPay(needpay);
@@ -639,9 +646,6 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService
Integer lease = wxPropertyContract.getLease();
Date rentalStartDate = propertyContract.getRentalStartDate();
Long price = propertyContract.getPrice();
if(EnumPriceUnit.Y.getCode().equals(propertyContract.getPriceUnit())){
price = price/12;
}

//按月计租
// if (propertyContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode())


+ 16
- 18
mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java Ver fichero

@@ -728,9 +728,6 @@ public class WxRentContractServiceImpl implements WxRentContractService {

Date rentalStartDate = wxRentContract.getRentalStartDate();
Long price = wxRentContract.getPrice();
if(EnumPriceUnit.Y.getCode().equals(wxRentContract.getPriceUnit())){
price = price/12;
}

//按月计租
// if (wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode())
@@ -760,13 +757,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
long[] priceArr = new long[arraySize];
for (int i = 0; i < arraySize; i++) {
JSONObject rentInfoObject = rentInfoArray.getJSONObject(i);
//年 需要除12
if(EnumPriceUnit.Y.getCode().equals(priceUnit)){
BigDecimal yprice = new BigDecimal(rentInfoObject.getString("price")).divide(new BigDecimal(12),2, BigDecimal.ROUND_HALF_DOWN);
priceArr[i] = yprice.multiply(new BigDecimal(100)).longValue();
}else{
priceArr[i] = new BigDecimal(rentInfoObject.getString("price")).multiply(new BigDecimal(100)).longValue();
}
priceArr[i] = new BigDecimal(rentInfoObject.getString("price")).multiply(new BigDecimal(100)).longValue();
}
priceList.add(priceArr);
//大于一年
@@ -880,7 +871,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
List<WxBillRent> resultList = new ArrayList<>();
final IdWorker idWorker = IdWorker.get();

Date endDate = null;
Date endDate = null;//每年的截止日期
if(yearList.size() > 1){
endDate = yearList.get(1);
}
@@ -900,8 +891,8 @@ public class WxRentContractServiceImpl implements WxRentContractService {
if(index >= yearList.size()-1){
//endDate = wxRentContract.getRentalEndDate();
endDate = null;
}else {
endDate = yearList.get(index);
}else{
endDate = yearList.get(index+1);//price index 0开始,year.end 从第二年开始
logger.info("==========cross:"+sd.format(endDate));
}

@@ -946,16 +937,23 @@ public class WxRentContractServiceImpl implements WxRentContractService {

//按日
if (wxRentContract.getPriceUnit().equals(EnumPriceUnit.D.getCode())){
double needpayD = WxRentContractServiceImpl.getNeedPay(0,price,wxBillRent.getStarttime(),wxBillRent.getEndtime());
Double priceD = new Double(price);
double needpayD = WxRentContractServiceImpl.getNeedPay(0,priceD,wxBillRent.getStarttime(),wxBillRent.getEndtime());
needpay = new Double(needpayD).longValue();
}else{
//年 需要除12
Double priceD = new Double(price);
if(EnumPriceUnit.Y.getCode().equals(wxRentContract.getPriceUnit())){
priceD = new Double(price)/12;
}

//当天也算,加1天
Date newEndDate = DateUtils.getDaySet(wxBillRent.getEndtime(),Calendar.DATE,1);
//按月
int[] diff = DateUtils.getDiff(wxBillRent.getStarttime(),newEndDate);
needpay = diff[0]*price;
needpay =new Double( diff[0]*priceD).longValue();

double oneDayProce = (double) price/DateUtils.getMonthDayCount(wxRentContract.getRentalEndDate());
double oneDayProce = priceD/DateUtils.getMonthDayCount(wxRentContract.getRentalEndDate());
needpay += diff[1] * oneDayProce;
}

@@ -1778,7 +1776,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
* @param end
* @return
*/
public static double getNeedPay(long monthPrice,long dayPrice,Date start,Date end){
public static double getNeedPay(long monthPrice,Double dayPrice,Date start,Date end){
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdM = new SimpleDateFormat("yyyy-MM");
Double total;
@@ -1842,7 +1840,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
Date start = sd.parse("2020-05-29");
Date end = sd.parse("2020-07-28");

System.out.println("===="+new WxRentContractServiceImpl().getNeedPay(tprice,0,start,end));;
// System.out.println("===="+new WxRentContractServiceImpl().getNeedPay(tprice,0,start,end));;
}

public static List<BillTimeVo> initBillTimeList(Date start,Date end,Integer adjustPeriod,Integer dayType,int receivePeriod){


+ 1
- 1
mallinkService/src/main/resources/mapper/WxBillPropertyMapper.xml Ver fichero

@@ -174,7 +174,7 @@
</update>

<update id="updatePreviewStatus" parameterType="com.iformall.domain.po.WxBillProperty">
update wx_bill_property set is_preview = #{isPreview},merchant_id = #{merchantId}
update wx_bill_property set is_preview = #{isPreview},merchant_id = #{merchantId},need_pay = receive_pay,owe=receive_pay
where property_contract_id = #{propertyContractId}
</update>



+ 1
- 1
mallinkService/src/main/resources/mapper/WxBillRentMapper.xml Ver fichero

@@ -173,7 +173,7 @@
</update>

<update id="updatePreviewStatus" parameterType="com.iformall.domain.po.WxBillRent">
update wx_bill_rent set is_preview = #{isPreview},merchant_id = #{merchantId}
update wx_bill_rent set is_preview = #{isPreview},merchant_id = #{merchantId},need_pay = receive_pay,owe=receive_pay
where rent_contract_id = #{rentContractId}
</update>



Cargando…
Cancelar
Guardar