winter пре 2 година
родитељ
комит
89ba017258
6 измењених фајлова са 204 додато и 96 уклоњено
  1. +102
    -0
      mallinkAdmin/src/main/resources/db/migration/V202405006.sql
  2. +1
    -1
      mallinkService/src/main/java/com/iformall/domain/po/WxBillRent.java
  3. +4
    -4
      mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java
  4. +1
    -1
      mallinkService/src/main/java/com/iformall/domain/vo/RatioVo.java
  5. +5
    -5
      mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java
  6. +91
    -85
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java

+ 102
- 0
mallinkAdmin/src/main/resources/db/migration/V202405006.sql Прегледај датотеку

@@ -0,0 +1,102 @@
alter table wx_rent_contract modify column pay_ratio varchar(10);

alter table wx_bill_rent_0 modify column pay_ratio varchar(10);
alter table wx_bill_rent_1 modify column pay_ratio varchar(10);
alter table wx_bill_rent_2 modify column pay_ratio varchar(10);
alter table wx_bill_rent_3 modify column pay_ratio varchar(10);
alter table wx_bill_rent_4 modify column pay_ratio varchar(10);
alter table wx_bill_rent_5 modify column pay_ratio varchar(10);
alter table wx_bill_rent_6 modify column pay_ratio varchar(10);
alter table wx_bill_rent_7 modify column pay_ratio varchar(10);
alter table wx_bill_rent_8 modify column pay_ratio varchar(10);
alter table wx_bill_rent_9 modify column pay_ratio varchar(10);
alter table wx_bill_rent_10 modify column pay_ratio varchar(10);
alter table wx_bill_rent_11 modify column pay_ratio varchar(10);
alter table wx_bill_rent_12 modify column pay_ratio varchar(10);
alter table wx_bill_rent_13 modify column pay_ratio varchar(10);
alter table wx_bill_rent_14 modify column pay_ratio varchar(10);
alter table wx_bill_rent_15 modify column pay_ratio varchar(10);
alter table wx_bill_rent_16 modify column pay_ratio varchar(10);
alter table wx_bill_rent_17 modify column pay_ratio varchar(10);
alter table wx_bill_rent_18 modify column pay_ratio varchar(10);
alter table wx_bill_rent_19 modify column pay_ratio varchar(10);
alter table wx_bill_rent_20 modify column pay_ratio varchar(10);
alter table wx_bill_rent_21 modify column pay_ratio varchar(10);
alter table wx_bill_rent_22 modify column pay_ratio varchar(10);
alter table wx_bill_rent_23 modify column pay_ratio varchar(10);
alter table wx_bill_rent_24 modify column pay_ratio varchar(10);
alter table wx_bill_rent_25 modify column pay_ratio varchar(10);
alter table wx_bill_rent_26 modify column pay_ratio varchar(10);
alter table wx_bill_rent_27 modify column pay_ratio varchar(10);
alter table wx_bill_rent_28 modify column pay_ratio varchar(10);
alter table wx_bill_rent_29 modify column pay_ratio varchar(10);
alter table wx_bill_rent_30 modify column pay_ratio varchar(10);
alter table wx_bill_rent_31 modify column pay_ratio varchar(10);
alter table wx_bill_rent_32 modify column pay_ratio varchar(10);
alter table wx_bill_rent_33 modify column pay_ratio varchar(10);
alter table wx_bill_rent_34 modify column pay_ratio varchar(10);
alter table wx_bill_rent_35 modify column pay_ratio varchar(10);
alter table wx_bill_rent_36 modify column pay_ratio varchar(10);
alter table wx_bill_rent_37 modify column pay_ratio varchar(10);
alter table wx_bill_rent_38 modify column pay_ratio varchar(10);
alter table wx_bill_rent_39 modify column pay_ratio varchar(10);
alter table wx_bill_rent_40 modify column pay_ratio varchar(10);
alter table wx_bill_rent_41 modify column pay_ratio varchar(10);
alter table wx_bill_rent_42 modify column pay_ratio varchar(10);
alter table wx_bill_rent_43 modify column pay_ratio varchar(10);
alter table wx_bill_rent_44 modify column pay_ratio varchar(10);
alter table wx_bill_rent_45 modify column pay_ratio varchar(10);
alter table wx_bill_rent_46 modify column pay_ratio varchar(10);
alter table wx_bill_rent_47 modify column pay_ratio varchar(10);
alter table wx_bill_rent_48 modify column pay_ratio varchar(10);
alter table wx_bill_rent_49 modify column pay_ratio varchar(10);
alter table wx_bill_rent_50 modify column pay_ratio varchar(10);
alter table wx_bill_rent_51 modify column pay_ratio varchar(10);
alter table wx_bill_rent_52 modify column pay_ratio varchar(10);
alter table wx_bill_rent_53 modify column pay_ratio varchar(10);
alter table wx_bill_rent_54 modify column pay_ratio varchar(10);
alter table wx_bill_rent_55 modify column pay_ratio varchar(10);
alter table wx_bill_rent_56 modify column pay_ratio varchar(10);
alter table wx_bill_rent_57 modify column pay_ratio varchar(10);
alter table wx_bill_rent_58 modify column pay_ratio varchar(10);
alter table wx_bill_rent_59 modify column pay_ratio varchar(10);
alter table wx_bill_rent_60 modify column pay_ratio varchar(10);
alter table wx_bill_rent_61 modify column pay_ratio varchar(10);
alter table wx_bill_rent_62 modify column pay_ratio varchar(10);
alter table wx_bill_rent_63 modify column pay_ratio varchar(10);
alter table wx_bill_rent_64 modify column pay_ratio varchar(10);
alter table wx_bill_rent_65 modify column pay_ratio varchar(10);
alter table wx_bill_rent_66 modify column pay_ratio varchar(10);
alter table wx_bill_rent_67 modify column pay_ratio varchar(10);
alter table wx_bill_rent_68 modify column pay_ratio varchar(10);
alter table wx_bill_rent_69 modify column pay_ratio varchar(10);
alter table wx_bill_rent_70 modify column pay_ratio varchar(10);
alter table wx_bill_rent_71 modify column pay_ratio varchar(10);
alter table wx_bill_rent_72 modify column pay_ratio varchar(10);
alter table wx_bill_rent_73 modify column pay_ratio varchar(10);
alter table wx_bill_rent_74 modify column pay_ratio varchar(10);
alter table wx_bill_rent_75 modify column pay_ratio varchar(10);
alter table wx_bill_rent_76 modify column pay_ratio varchar(10);
alter table wx_bill_rent_77 modify column pay_ratio varchar(10);
alter table wx_bill_rent_78 modify column pay_ratio varchar(10);
alter table wx_bill_rent_79 modify column pay_ratio varchar(10);
alter table wx_bill_rent_80 modify column pay_ratio varchar(10);
alter table wx_bill_rent_81 modify column pay_ratio varchar(10);
alter table wx_bill_rent_82 modify column pay_ratio varchar(10);
alter table wx_bill_rent_83 modify column pay_ratio varchar(10);
alter table wx_bill_rent_84 modify column pay_ratio varchar(10);
alter table wx_bill_rent_85 modify column pay_ratio varchar(10);
alter table wx_bill_rent_86 modify column pay_ratio varchar(10);
alter table wx_bill_rent_87 modify column pay_ratio varchar(10);
alter table wx_bill_rent_88 modify column pay_ratio varchar(10);
alter table wx_bill_rent_89 modify column pay_ratio varchar(10);
alter table wx_bill_rent_90 modify column pay_ratio varchar(10);
alter table wx_bill_rent_91 modify column pay_ratio varchar(10);
alter table wx_bill_rent_92 modify column pay_ratio varchar(10);
alter table wx_bill_rent_93 modify column pay_ratio varchar(10);
alter table wx_bill_rent_94 modify column pay_ratio varchar(10);
alter table wx_bill_rent_95 modify column pay_ratio varchar(10);
alter table wx_bill_rent_96 modify column pay_ratio varchar(10);
alter table wx_bill_rent_97 modify column pay_ratio varchar(10);
alter table wx_bill_rent_98 modify column pay_ratio varchar(10);
alter table wx_bill_rent_99 modify column pay_ratio varchar(10);

+ 1
- 1
mallinkService/src/main/java/com/iformall/domain/po/WxBillRent.java Прегледај датотеку

@@ -167,7 +167,7 @@ public class WxBillRent extends WxBillBaseEntity {
private String deposit;

@io.swagger.annotations.ApiModelProperty(value = "联营费率", name = "payRatio")
private Long payRatio;
private String payRatio;

@TableField(exist = false)
private Integer limitStart;


+ 4
- 4
mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java Прегледај датотеку

@@ -304,8 +304,8 @@ public class WxRentContract extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "计租周期 1日2月3自然月EnumRentContractAdjustPeriod", name = "adjustPeriod")
private Integer adjustPeriod;

@io.swagger.annotations.ApiModelProperty(value = "支付比例", name = "payRatio")
private Integer payRatio;
@io.swagger.annotations.ApiModelProperty(value = "联营扣点率,支付比例", name = "payRatio")
private String payRatio;

@io.swagger.annotations.ApiModelProperty(value = "保底营业额", name = "revenue")
private String revenue;
@@ -399,10 +399,10 @@ public class WxRentContract extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "n日后开始计算滞纳金", name = "latePayDay")
private Integer latePayDay;

@io.swagger.annotations.ApiModelProperty(value = "联营扣点", name = "busDiscountRatio")
@io.swagger.annotations.ApiModelProperty(value = "联营扣点跳点设置", name = "busDiscountRatio")
private String busDiscountRatio;

@io.swagger.annotations.ApiModelProperty(value = "联营扣点-时间范围 1年2月3周期", name = "busDiscountTime")
@io.swagger.annotations.ApiModelProperty(value = "联营扣点跳点-时间范围 1年2月3周期", name = "busDiscountTime")
private Integer busDiscountTime;
@io.swagger.annotations.ApiModelProperty(value = "查询店铺", name = "queryShopId")


+ 1
- 1
mallinkService/src/main/java/com/iformall/domain/vo/RatioVo.java Прегледај датотеку

@@ -5,7 +5,7 @@ import lombok.Data;
@Data
public class RatioVo {
//扣点率
private Integer ratio = 0;
private String ratio = "0";
//金额
private String price = "0";



+ 5
- 5
mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java Прегледај датотеку

@@ -284,9 +284,9 @@ public class WxBillRentServiceImpl extends WxBillBaseService implements WxBillRe

wxBillRent.setRevenue(record.getRevenue());

Integer ratio = 0;
String ratio = "0";
RatioVo ratioVo = null;
if(wxRentContract.getPayRatio() != null && wxRentContract.getPayRatio().intValue() > 0){
if(StringUtils.isNotBlank(wxRentContract.getPayRatio())){
ratio = wxRentContract.getPayRatio();
}else{
if(StringUtils.isNotBlank(wxRentContract.getBusDiscountRatio())){
@@ -497,10 +497,10 @@ public class WxBillRentServiceImpl extends WxBillBaseService implements WxBillRe
decimalSize = rent.getDecimalSize();
e.setMerchantName(rent.getMerchantName());
e.setRentType(rent.getType());
if (null != rent.getPayRatio()) {
e.setPayRatio(rent.getPayRatio().longValue());
if (StringUtils.isNotBlank(rent.getPayRatio())) {
e.setPayRatio(rent.getPayRatio());
}else {
e.setPayRatio(0l);
e.setPayRatio("0");
}
// if (StringUtils.isNoneBlank(rent.getLatePayRatio())) {
// e.setLatePayRatio(Integer.parseInt(rent.getLatePayRatio()));


+ 91
- 85
mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java Прегледај датотеку

@@ -288,12 +288,17 @@ public class WxRentContractServiceImpl implements WxRentContractService {
* @param revenueLong
* @return
*/
public static BigDecimal countPrice(Integer decimalSize,Integer ratio,String revenueLong,int timeType,int period,int from){
public static BigDecimal countPrice(Integer decimalSize,String ratio,String revenueLong,int timeType,int period,int from){
if (StringUtils.isBlank(revenueLong)) {
revenueLong = "0";
}
BigDecimal revenue = new BigDecimal(revenueLong);
BigDecimal payRatio = new BigDecimal(ratio == null ? 0 : ratio).divide(new BigDecimal(10000));
BigDecimal payRatio = null;
if (StringUtils.isBlank(ratio)) {
payRatio = new BigDecimal(0);
}else {
payRatio = new BigDecimal(ratio);
}
BigDecimal price;
if(EnumMissTimeType.YEAR.getCode().equals(timeType) && EnumGetRatioFrom.RENT.getCode().equals(from)){
price = revenue.multiply(new BigDecimal(12)).multiply(payRatio).setScale(decimalSize, RoundingMode.HALF_EVEN);
@@ -322,7 +327,8 @@ public class WxRentContractServiceImpl implements WxRentContractService {
BigDecimal revenue = new BigDecimal(revenueLong);
String e = ratioList.get(i);
String[] array = e.split(":");
Integer ratio = Integer.parseInt(array[1]);
//Integer ratio = Integer.parseInt(array[1]);
String ratio = array[1];

if(e.indexOf("-") >= 0){
String[] revenueArray = array[0].split("-");
@@ -438,7 +444,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
if(StringUtils.isBlank(record.getRevenue())){
record.setPrice("0");
}else{
if(record.getPayRatio()!=null && record.getPayRatio().intValue() > 0){
if(StringUtils.isNotBlank(record.getPayRatio())){
record.setPrice(countPrice(Constant.default_long_decimal_size,record.getPayRatio(),record.getRevenue(),EnumMissTimeType.OTHER.getCode(),record.getAdjustPeriod(),EnumGetRatioFrom.RENT.getCode()).toPlainString());
}else{
int dayCount = record.getReceivePeriod() * 30;
@@ -790,7 +796,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {

if(!EnumFromType.SWITCH.getCode().equals(from)){
if (record.getType() != null && record.getType().equals(EnumRentContractType.RENT_BY_JOINT.getCode())) {
if(record.getPayRatio()!=null && record.getPayRatio().intValue() > 0){
if(StringUtils.isNotBlank(record.getPayRatio())){
record.setPrice(countPrice(Constant.default_long_decimal_size,record.getPayRatio(),record.getRevenue(),EnumMissTimeType.OTHER.getCode(),record.getAdjustPeriod(),from).toPlainString());
}else{
int dayCount = record.getReceivePeriod() * 30;
@@ -2729,86 +2735,86 @@ public class WxRentContractServiceImpl implements WxRentContractService {
// return result;
// }

public void ratioWay(WxRentContract wxRentContract, Map<String, Object> result, Integer lease, int extralease, int extracount, int paycount, int index, int count, BigDecimal rentPrice) {
String adjustRatio = wxRentContract.getAdjustRatio();
List<Integer> integers = JSONArray.parseArray(adjustRatio, Integer.class);
integers.add(0, 0);
//常规租期
for (int i = 0; i <= count; i++) {
//开始时间
Calendar instance = Calendar.getInstance();
instance.setTime(wxRentContract.getRentalStartDate());
instance.add(Calendar.MONTH, lease * i);
Date starttime = instance.getTime();
String startdate = DateUtils.date2String(starttime, "yyyy-MM-dd");
result.put("rentalStartDate" + i, startdate);
result.put("rentalStartDateYear" + i, startdate.substring(0, 4));
result.put("rentalStartDateMonth" + i, startdate.substring(5, 7));
result.put("rentalStartDateDay" + i, startdate.substring(8));
//结束时间
instance.clear();
instance.setTime(starttime);
instance.add(Calendar.MONTH, lease);
instance.add(Calendar.DAY_OF_MONTH, -1);
Date endtime = instance.getTime();
String enddate = DateUtils.date2String(endtime, "yyyy-MM-dd");
result.put("rentalEndDate" + i, enddate);
result.put("rentalEndDateYear" + i, enddate.substring(0, 4));
result.put("rentalEndDateMonth" + i, enddate.substring(5, 7));
result.put("rentalEndDateDay" + i, enddate.substring(8));
String ratio = new BigDecimal(integers.get(i)).divide(new BigDecimal(100)).toPlainString();
result.put("adjustRatio" + i, ratio);
result.put("adjustPeriod" + i, wxRentContract.getAdjustPeriod());
Integer tempPayRatio = Optional.ofNullable(wxRentContract.getPayRatio()).orElse(0);
String payRatio = new BigDecimal(tempPayRatio).divide(new BigDecimal(100)).toPlainString();
result.put("payRatio" + i, payRatio);
}
if (extracount > 0) {
//额外租期
//开始时间
Calendar instance = Calendar.getInstance();
instance.setTime(wxRentContract.getRentalStartDate());
instance.add(Calendar.MONTH, lease * count);
Date starttime = instance.getTime();
String startdate = DateUtils.date2String(starttime, "yyyy-MM-dd");
result.put("rentalStartDate" + count, startdate);
result.put("rentalStartDateYear" + count, startdate.substring(0, 4));
result.put("rentalStartDateMonth" + count, startdate.substring(5, 7));
result.put("rentalStartDateDay" + count, startdate.substring(8));
//结束时间
instance.clear();
instance.setTime(starttime);
instance.add(Calendar.MONTH, extralease);
instance.add(Calendar.DAY_OF_MONTH, -1);
Date endtime = instance.getTime();
String enddate = DateUtils.date2String(endtime, "yyyy-MM-dd");
result.put("rentalEndDate" + count, enddate);
result.put("rentalEndDateYear" + count, enddate.substring(0, 4));
result.put("rentalEndDateMonth" + count, enddate.substring(5, 7));
result.put("rentalEndDateDay" + count, enddate.substring(8));
result.put("adjustRatio" + count, wxRentContract.getAdjustRatio());
result.put("adjustPeriod" + count, wxRentContract.getAdjustPeriod());
Integer tempPayRatio = Optional.ofNullable(wxRentContract.getPayRatio()).orElse(0);
String payRatio = new BigDecimal(tempPayRatio).divide(new BigDecimal(100)).toPlainString();
result.put("payRatio" + count, payRatio);
}
//无数据租期
for (int i = paycount; i <= 10; i++) {
result.put("rentalStartDate" + i, "/");
result.put("rentalStartDateYear" + i, "/");
result.put("rentalStartDateMonth" + i, "/");
result.put("rentalStartDateDay" + i, "/");
result.put("rentalEndDate" + i, "/");
result.put("rentalEndDateYear" + i, "/");
result.put("rentalEndDateMonth" + i, "/");
result.put("rentalEndDateDay" + i, "/");
result.put("adjustRatio" + i, "/");
result.put("adjustPeriod" + i, "/");
result.put("payRatio" + i, "/");
}
}
// public void ratioWay(WxRentContract wxRentContract, Map<String, Object> result, Integer lease, int extralease, int extracount, int paycount, int index, int count, BigDecimal rentPrice) {
// String adjustRatio = wxRentContract.getAdjustRatio();
// List<Integer> integers = JSONArray.parseArray(adjustRatio, Integer.class);
// integers.add(0, 0);
// //常规租期
// for (int i = 0; i <= count; i++) {
// //开始时间
// Calendar instance = Calendar.getInstance();
// instance.setTime(wxRentContract.getRentalStartDate());
// instance.add(Calendar.MONTH, lease * i);
// Date starttime = instance.getTime();
// String startdate = DateUtils.date2String(starttime, "yyyy-MM-dd");
// result.put("rentalStartDate" + i, startdate);
// result.put("rentalStartDateYear" + i, startdate.substring(0, 4));
// result.put("rentalStartDateMonth" + i, startdate.substring(5, 7));
// result.put("rentalStartDateDay" + i, startdate.substring(8));
// //结束时间
// instance.clear();
// instance.setTime(starttime);
// instance.add(Calendar.MONTH, lease);
// instance.add(Calendar.DAY_OF_MONTH, -1);
// Date endtime = instance.getTime();
// String enddate = DateUtils.date2String(endtime, "yyyy-MM-dd");
// result.put("rentalEndDate" + i, enddate);
// result.put("rentalEndDateYear" + i, enddate.substring(0, 4));
// result.put("rentalEndDateMonth" + i, enddate.substring(5, 7));
// result.put("rentalEndDateDay" + i, enddate.substring(8));
// String ratio = new BigDecimal(integers.get(i)).divide(new BigDecimal(100)).toPlainString();
// result.put("adjustRatio" + i, ratio);
// result.put("adjustPeriod" + i, wxRentContract.getAdjustPeriod());
// Integer tempPayRatio = Optional.ofNullable(wxRentContract.getPayRatio()).orElse(0);
// String payRatio = new BigDecimal(tempPayRatio).divide(new BigDecimal(100)).toPlainString();
// result.put("payRatio" + i, payRatio);
//
// }
// if (extracount > 0) {
// //额外租期
// //开始时间
// Calendar instance = Calendar.getInstance();
// instance.setTime(wxRentContract.getRentalStartDate());
// instance.add(Calendar.MONTH, lease * count);
// Date starttime = instance.getTime();
// String startdate = DateUtils.date2String(starttime, "yyyy-MM-dd");
// result.put("rentalStartDate" + count, startdate);
// result.put("rentalStartDateYear" + count, startdate.substring(0, 4));
// result.put("rentalStartDateMonth" + count, startdate.substring(5, 7));
// result.put("rentalStartDateDay" + count, startdate.substring(8));
// //结束时间
// instance.clear();
// instance.setTime(starttime);
// instance.add(Calendar.MONTH, extralease);
// instance.add(Calendar.DAY_OF_MONTH, -1);
// Date endtime = instance.getTime();
// String enddate = DateUtils.date2String(endtime, "yyyy-MM-dd");
// result.put("rentalEndDate" + count, enddate);
// result.put("rentalEndDateYear" + count, enddate.substring(0, 4));
// result.put("rentalEndDateMonth" + count, enddate.substring(5, 7));
// result.put("rentalEndDateDay" + count, enddate.substring(8));
// result.put("adjustRatio" + count, wxRentContract.getAdjustRatio());
// result.put("adjustPeriod" + count, wxRentContract.getAdjustPeriod());
// Integer tempPayRatio = Optional.ofNullable(wxRentContract.getPayRatio()).orElse(0);
// String payRatio = new BigDecimal(tempPayRatio).divide(new BigDecimal(100)).toPlainString();
// result.put("payRatio" + count, payRatio);
//
// }
// //无数据租期
// for (int i = paycount; i <= 10; i++) {
// result.put("rentalStartDate" + i, "/");
// result.put("rentalStartDateYear" + i, "/");
// result.put("rentalStartDateMonth" + i, "/");
// result.put("rentalStartDateDay" + i, "/");
// result.put("rentalEndDate" + i, "/");
// result.put("rentalEndDateYear" + i, "/");
// result.put("rentalEndDateMonth" + i, "/");
// result.put("rentalEndDateDay" + i, "/");
// result.put("adjustRatio" + i, "/");
// result.put("adjustPeriod" + i, "/");
// result.put("payRatio" + i, "/");
// }
// }

public void areaWay(WxRentContract wxRentContract, Map<String, Object> result, Integer lease, int extralease, int extracount, int paycount, int index, int count, BigDecimal rentPrice) {



Loading…
Откажи
Сачувај