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

[租赁账单][物业账单][添加][滞纳金相关逻辑],[押金账单][添加][退押金相关逻辑]

release_toaliyun_real
gongbiao 7 лет назад
Родитель
Сommit
46999386f9
23 измененных файлов: 305 добавлений и 47 удалений
  1. +7
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/WxBillDepositController.java
  2. +6
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/WxBillPropertyController.java
  3. +10
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/WxBillPropertyDepositController.java
  4. +7
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/WxBillRentController.java
  5. +11
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxBillDeposit.java
  6. +55
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxBillProperty.java
  7. +11
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxBillPropertyDeposit.java
  8. +55
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxBillRent.java
  9. +1
    -0
      mallinkService/src/main/java/com/iformall/enums/EnumBillDailyStatus.java
  10. +3
    -5
      mallinkService/src/main/java/com/iformall/service/WxBillDepositService.java
  11. +1
    -6
      mallinkService/src/main/java/com/iformall/service/WxBillPropertyDepositService.java
  12. +3
    -4
      mallinkService/src/main/java/com/iformall/service/WxBillPropertyService.java
  13. +2
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillRentService.java
  14. +22
    -6
      mallinkService/src/main/java/com/iformall/service/impl/WxBillDepositServiceImpl.java
  15. +22
    -6
      mallinkService/src/main/java/com/iformall/service/impl/WxBillPropertyDepositServiceImpl.java
  16. +24
    -4
      mallinkService/src/main/java/com/iformall/service/impl/WxBillPropertyServiceImpl.java
  17. +21
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java
  18. +1
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java
  19. +6
    -4
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java
  20. +4
    -2
      mallinkService/src/main/resources/mapper/WxBillDepositMapper.xml
  21. +4
    -4
      mallinkService/src/main/resources/mapper/WxBillPropertyDepositMapper.xml
  22. +15
    -2
      mallinkService/src/main/resources/mapper/WxBillPropertyMapper.xml
  23. +14
    -3
      mallinkService/src/main/resources/mapper/WxBillRentMapper.xml

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

@@ -76,5 +76,12 @@ public class WxBillDepositController extends BaseController {
return wxBillDepositService.updatePaid(id);
}

@PostMapping("returnDeposit")
public ResultData returnDeposit(@RequestBody WxBillDeposit wxBillDeposit) {
logger.debug("[" + getIpAddr() + "] WxBillDepositController::returnDeposit");
return wxBillDepositService.returnDeposit(wxBillDeposit);

}


}

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

@@ -76,5 +76,11 @@ public class WxBillPropertyController extends BaseController {
return wxBillPropertyService.updatePaid(id);
}

@GetMapping("/detail")
@ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true)
public ResultData detail(Long id) {
logger.debug("[" + getIpAddr() + "] WxBillPropertyController::detail");
return new ResultData(Result.SUCCESS, "查询成功", wxBillPropertyService.detail(id));
}

}

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

@@ -76,6 +76,15 @@ public class WxBillPropertyDepositController extends BaseController
logger.debug("[" + getIpAddr() + "] WxBillPropertyDepositController::updatePaid");
return wxBillPropertyDepositService.updatePaid(id);
}

@PostMapping("returnDeposit")
public ResultData returnDeposit(@RequestBody WxBillPropertyDeposit wxBillPropertyDeposit) {
logger.debug("[" + getIpAddr() + "] WxBillPropertyDepositController::returnDeposit");
return wxBillPropertyDepositService.returnDeposit(wxBillPropertyDeposit);

}



}

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

@@ -82,4 +82,11 @@ public class WxBillRentController extends BaseController {
return wxBillRentService.updatePaid(id);
}

@GetMapping("/detail")
@ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true)
public ResultData detail(Long id) {
logger.debug("[" + getIpAddr() + "] WxBillRentController::detail");
return new ResultData(Result.SUCCESS, "查询成功", wxBillRentService.detail(id));
}

}

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

@@ -101,6 +101,9 @@ public class WxBillDeposit implements Serializable {
@io.swagger.annotations.ApiModelProperty(value = "租赁商铺类型", name = "rentShopType")
private Integer rentShopType;

@io.swagger.annotations.ApiModelProperty(value = "退还金额", name = "returnPrice")
private Integer returnPrice;

public Date getStarttime() {
return starttime;
}
@@ -230,6 +233,14 @@ public class WxBillDeposit implements Serializable {
this.rentShopType = rentShopType;
}

public Integer getReturnPrice() {
return returnPrice;
}

public void setReturnPrice(Integer returnPrice) {
this.returnPrice = returnPrice;
}

public static enum Field
{
Id_ASC("`id` ASC"),Id_DESC("`id` DESC")


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

@@ -101,6 +101,21 @@ public class WxBillProperty implements Serializable {
@io.swagger.annotations.ApiModelProperty(value = "租赁商铺类型", name = "rentShopType")
private Integer rentShopType;

@io.swagger.annotations.ApiModelProperty(value = "营业额", name = "revenue")
private Integer revenue;

@io.swagger.annotations.ApiModelProperty(value = "滞纳金费率", name = "latePayRatio")
private Integer latePayRatio;

@io.swagger.annotations.ApiModelProperty(value = "滞纳金时间", name = "latePayTime")
private Date latePayTime;

@io.swagger.annotations.ApiModelProperty(value = "滞纳金总额", name = "latePayPrice")
private Integer latePayPrice;

@io.swagger.annotations.ApiModelProperty(value = "账期", name = "period")
private Integer period;

public Date getStarttime() {
return starttime;
}
@@ -233,6 +248,46 @@ public class WxBillProperty implements Serializable {
this.rentShopType = rentShopType;
}

public Integer getRevenue() {
return revenue;
}

public void setRevenue(Integer revenue) {
this.revenue = revenue;
}

public Integer getLatePayRatio() {
return latePayRatio;
}

public void setLatePayRatio(Integer latePayRatio) {
this.latePayRatio = latePayRatio;
}

public Date getLatePayTime() {
return latePayTime;
}

public void setLatePayTime(Date latePayTime) {
this.latePayTime = latePayTime;
}

public Integer getLatePayPrice() {
return latePayPrice;
}

public void setLatePayPrice(Integer latePayPrice) {
this.latePayPrice = latePayPrice;
}

public Integer getPeriod() {
return period;
}

public void setPeriod(Integer period) {
this.period = period;
}

public static enum Field
{
Id_ASC("`id` ASC"),Id_DESC("`id` DESC")


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

@@ -101,6 +101,9 @@ public class WxBillPropertyDeposit implements Serializable {
@io.swagger.annotations.ApiModelProperty(value = "租赁商铺类型", name = "rentShopType")
private Integer rentShopType;

@io.swagger.annotations.ApiModelProperty(value = "退还金额", name = "returnPrice")
private Integer returnPrice;

public Date getStarttime() {
return starttime;
}
@@ -232,6 +235,14 @@ public class WxBillPropertyDeposit implements Serializable {
this.rentShopType = rentShopType;
}

public Integer getReturnPrice() {
return returnPrice;
}

public void setReturnPrice(Integer returnPrice) {
this.returnPrice = returnPrice;
}

public static enum Field
{
Id_ASC("`id` ASC"),Id_DESC("`id` DESC")


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

@@ -103,6 +103,21 @@ public class WxBillRent implements Serializable {
@io.swagger.annotations.ApiModelProperty(value = "租赁商铺类型", name = "rentShopType")
private Integer rentShopType;

@io.swagger.annotations.ApiModelProperty(value = "营业额", name = "revenue")
private Integer revenue;

@io.swagger.annotations.ApiModelProperty(value = "滞纳金费率", name = "latePayRatio")
private Integer latePayRatio;

@io.swagger.annotations.ApiModelProperty(value = "滞纳金时间", name = "latePayTime")
private Date latePayTime;

@io.swagger.annotations.ApiModelProperty(value = "滞纳金总额", name = "latePayPrice")
private Integer latePayPrice;

@io.swagger.annotations.ApiModelProperty(value = "账期", name = "period")
private Integer period;

public Date getStarttime() {
return starttime;
}
@@ -234,6 +249,46 @@ public class WxBillRent implements Serializable {
this.rentShopType = rentShopType;
}

public Integer getRevenue() {
return revenue;
}

public void setRevenue(Integer revenue) {
this.revenue = revenue;
}

public Integer getLatePayRatio() {
return latePayRatio;
}

public void setLatePayRatio(Integer latePayRatio) {
this.latePayRatio = latePayRatio;
}

public Date getLatePayTime() {
return latePayTime;
}

public void setLatePayTime(Date latePayTime) {
this.latePayTime = latePayTime;
}

public Integer getLatePayPrice() {
return latePayPrice;
}

public void setLatePayPrice(Integer latePayPrice) {
this.latePayPrice = latePayPrice;
}

public Integer getPeriod() {
return period;
}

public void setPeriod(Integer period) {
this.period = period;
}

public static enum Field
{
Id_ASC("`id` ASC"),Id_DESC("`id` DESC")


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

@@ -11,6 +11,7 @@ public enum EnumBillDailyStatus {
WAIT_PAY(2,"待缴"),
PAID(3, "已结清"),
NOT_EXPIRED(4,"未到期"),
RETURN(5, "退还"),
;

public static EnumBillDailyStatus getEnum(Integer code) {


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

@@ -43,10 +43,8 @@ public interface WxBillDepositService {
void deleteById(Long id);

ResultData updatePaid(Long id);


ResultData returnDeposit(WxBillDeposit wxBillDeposit);

}

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

@@ -49,11 +49,6 @@ public interface WxBillPropertyDepositService {
ResultData updatePaid(Long id);








ResultData returnDeposit(WxBillPropertyDeposit wxBillPropertyDeposit);

}

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

@@ -51,8 +51,7 @@ public interface WxBillPropertyService {
Object findByMerchantId(Long id);

ResultData updatePaid(Long id);

Object detail(Long id);

}

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

@@ -49,4 +49,6 @@ public interface WxBillRentService {

ResultData updatePaid(Long id);

Object detail(Long id);

}

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

@@ -160,10 +160,26 @@ public class WxBillDepositServiceImpl implements WxBillDepositService {
}
return new ResultData(Result.SUCCESS, "租赁押金结单成功");
}

@Transactional(rollbackFor = {Exception.class})
@Override
public ResultData returnDeposit(WxBillDeposit record) {
logger.info("租赁押金退还");
WxBillDeposit wxBillDeposit = wxBillDepositMapper.selectByPrimaryKey(record.getId());
if (wxBillDeposit == null) {
return new ResultData(ErrorCode.BILL_RENT_DEPOSIT_IS_NOT_FOUND);
}
wxBillDeposit.setReturnPrice(record.getReturnPrice());
wxBillDeposit.setStatus(EnumBillRentStatus.RETURN.getCode());
wxBillDeposit.setUpdatetime(new Date());
try {
wxBillDepositMapper.updateByPrimaryKeySelective(wxBillDeposit);
} catch (Exception e) {
logger.error("租赁押金退还失败,e:" + e.getMessage());
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage());
}
return new ResultData(Result.SUCCESS, "租赁押金退还成功", wxBillDeposit);
}


}

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

@@ -6,6 +6,7 @@ import com.iformall.common.ErrorCode;
import com.iformall.common.IdWorker;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxBillDeposit;
import com.iformall.domain.po.WxBillPropertyDeposit;
import com.iformall.enums.EnumBillRentStatus;
import com.iformall.enums.EnumDelStatus;
@@ -161,10 +162,25 @@ public class WxBillPropertyDepositServiceImpl implements WxBillPropertyDepositSe
}
return new ResultData(Result.SUCCESS, "物业押金结单成功");
}

@Override
public ResultData returnDeposit(WxBillPropertyDeposit record) {
logger.info("物业押金退还");
WxBillPropertyDeposit wxBillDeposit = wxBillPropertyDepositMapper.selectByPrimaryKey(record.getId());
if (wxBillDeposit == null) {
return new ResultData(ErrorCode.BILL_PROPERTY_DEPOSIT_IS_NOT_FOUND);
}
wxBillDeposit.setReturnPrice(record.getReturnPrice());
wxBillDeposit.setStatus(EnumBillRentStatus.RETURN.getCode());
wxBillDeposit.setUpdatetime(new Date());
try {
wxBillPropertyDepositMapper.updateByPrimaryKeySelective(wxBillDeposit);
} catch (Exception e) {
logger.error("物业押金退还失败,e:" + e.getMessage());
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage());
}
return new ResultData(Result.SUCCESS, "物业押金退还成功", wxBillDeposit);
}


}

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

@@ -6,10 +6,13 @@ import com.iformall.common.ErrorCode;
import com.iformall.common.IdWorker;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxBillDeposit;
import com.iformall.domain.po.WxBillProperty;
import com.iformall.domain.po.WxBillPropertyDeposit;
import com.iformall.enums.EnumBillRentStatus;
import com.iformall.enums.EnumDelStatus;
import com.iformall.exception.MallinkException;
import com.iformall.mapper.WxBillPropertyDepositMapper;
import com.iformall.mapper.WxBillPropertyMapper;
import com.iformall.service.WxBillPropertyService;
import org.slf4j.Logger;
@@ -33,6 +36,9 @@ public class WxBillPropertyServiceImpl implements WxBillPropertyService {
@Autowired
WxBillPropertyMapper wxBillPropertyMapper;

@Autowired
WxBillPropertyDepositMapper wxBillPropertyDepositMapper;

@Override
public PageInfo<Map<String, Object>> listAsPage(WxBillProperty record, Integer pageIndex, Integer pageSize) {
//更新账单状态
@@ -167,8 +173,22 @@ public class WxBillPropertyServiceImpl implements WxBillPropertyService {
return new ResultData(Result.SUCCESS, "结单成功");
}

@Override
public Object detail(Long id) {
//物业
Map<String, Object> property = getById(id);
//押金
WxBillPropertyDeposit depositParam = new WxBillPropertyDeposit();
depositParam.setPropertyContractId(id);
Map<String, Object> deposit = wxBillPropertyDepositMapper.queryBillDepositList(depositParam).get(0);
//周期
Object weekly = findByMerchantId((Long) property.get("merchantId"));
Map<String, Object> result = new HashMap<>(3);
result.put("property", property);
result.put("deposit", deposit);
result.put("weekly", weekly);
return result;
}


}

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

@@ -6,10 +6,12 @@ import com.iformall.common.ErrorCode;
import com.iformall.common.IdWorker;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxBillDeposit;
import com.iformall.domain.po.WxBillRent;
import com.iformall.enums.EnumBillRentStatus;
import com.iformall.enums.EnumDelStatus;
import com.iformall.exception.MallinkException;
import com.iformall.mapper.WxBillDepositMapper;
import com.iformall.mapper.WxBillRentMapper;
import com.iformall.service.WxBillRentService;
import org.slf4j.Logger;
@@ -33,6 +35,8 @@ public class WxBillRentServiceImpl implements WxBillRentService {
@Autowired
WxBillRentMapper wxBillRentMapper;

@Autowired
WxBillDepositMapper wxBillDepositMapper;

@Override
public PageInfo<Map<String, Object>> listAsPage(WxBillRent record, Integer pageIndex, Integer pageSize) {
@@ -168,4 +172,21 @@ public class WxBillRentServiceImpl implements WxBillRentService {
return new ResultData(Result.SUCCESS, "租赁账单结单成功");
}

@Override
public Object detail(Long id) {
//租赁
Map<String, Object> rent = getById(id);
//押金
WxBillDeposit depositParam = new WxBillDeposit();
depositParam.setRentContractId(id);
Map<String, Object> deposit = wxBillDepositMapper.queryBillDepositList(depositParam).get(0);
//周期
Object weekly = findByMerchantId((Long) rent.get("merchantId"));
Map<String, Object> result = new HashMap<>(3);
result.put("rent", rent);
result.put("deposit", deposit);
result.put("weekly", weekly);
return result;
}

}

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

@@ -407,6 +407,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService
wxBillProperty.setCreatetime(date);
wxBillProperty.setUpdatetime(date);
wxBillProperty.setIsDel(EnumDelStatus.NOT_DEL.getCode());
wxBillProperty.setPeriod(i + 1);
try {
wxBillPropertyMapper.insertSelective(wxBillProperty);
} catch (Exception e) {


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

@@ -389,7 +389,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
buildRentMonth(wxMerchant, userId, wxRentContract, receivePeriod, lease, rentalStartDate, price);
} else {
//按日计租
buildRent(lease, receivePeriod, price, rentalStartDate, Calendar.DAY_OF_MONTH, wxRentContract, userId, wxMerchant);
buildRent(lease, receivePeriod, price, rentalStartDate, Calendar.DAY_OF_MONTH, wxRentContract, userId, wxMerchant, 0);
}
}
}
@@ -417,16 +417,17 @@ public class WxRentContractServiceImpl implements WxRentContractService {
leaseArr[divide] = mod;
}

int billcount = 0;
for (int i = 0; i < size; i++) {
Calendar instance = Calendar.getInstance();
instance.setTime(rentalStartDate);
//开始时间
instance.add(Calendar.MONTH, month * i);
buildRent(leaseArr[i], receivePeriod, priceArr[i], instance.getTime(), Calendar.MONTH, wxRentContract, userId, wxMerchant);
billcount = buildRent(leaseArr[i], receivePeriod, priceArr[i], instance.getTime(), Calendar.MONTH, wxRentContract, userId, wxMerchant, billcount);
}
}

public void buildRent(int lease, int receivePeriod, int price, Date startdate, int dayType, WxRentContract wxRentContract, Long userId, WxMerchant wxMerchant) {
public int buildRent(int lease, int receivePeriod, int price, Date startdate, int dayType, WxRentContract wxRentContract, Long userId, WxMerchant wxMerchant, int billcount) {

int extralease = lease % receivePeriod;
int extracount = extralease > 0 ? 1 : 0;
@@ -506,6 +507,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
wxBillRent.setUpdatetime(date);
wxBillRent.setIsDel(EnumDelStatus.NOT_DEL.getCode());
wxBillRent.setRentShopType(wxRentContract.getRentShopType());
wxBillRent.setPeriod(++billcount);
try {
wxBillRentMapper.insertSelective(wxBillRent);
} catch (Exception e) {
@@ -513,7 +515,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage());
}
}
return billcount;
}




+ 4
- 2
mallinkService/src/main/resources/mapper/WxBillDepositMapper.xml Просмотреть файл

@@ -20,13 +20,14 @@
<result column="shop_id" jdbcType="BIGINT" property="shopId" />
<result column="updatetime" jdbcType="TIMESTAMP" property="updatetime" />
<result column="rent_shop_type" jdbcType="INTEGER" property="rentShopType"/>
<result column="return_price" jdbcType="INTEGER" property="returnPrice"/>
</resultMap>
<sql id="allColumns">
`id`,`rent_contract_id`,`receive_pay`,`pay`,`receive_date`,`pay_date`,`createtime`,
`expired_day`,`tenant_id`,`owe`,`status`,`is_del`,`need_pay`,`merchant_id`,`user_id`,`shop_id`,`updatetime`,
`rent_shop_type`
`rent_shop_type`,`return_price`
</sql>

<sql id="dynamicWhereConditions">
@@ -69,7 +70,7 @@
select br.`id`,br.`receive_pay` receivePay,br.`pay`,br.`receive_date` receiveDate,
br.`pay_date` payDate,br.`createtime`,br.`expired_day` expiredDay,br.`owe`,br.`status`,
br.`need_pay` needPay,m.`name` merchantName,s.shop_number shopNumber,br.`updatetime`,
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType,br.`return_price` returnPrice
from wx_bill_rent_deposit br left join wx_merchant m on br.merchant_id=m.id
left join wx_shop s on br.shop_id=s.id
<where>
@@ -80,6 +81,7 @@
<if test=" null != status ">and br.`status` = #{status}</if>
<if test=" null != isDel ">and br.`is_del` = #{isDel}</if>
<if test=" null != rentShopType ">and br.`rent_shop_type` = #{rentShopType}</if>
<if test=" null != rentContractId ">and br.`rent_contract_id` = #{rentContractId}</if>
</where>
order by id desc


+ 4
- 4
mallinkService/src/main/resources/mapper/WxBillPropertyDepositMapper.xml Просмотреть файл

@@ -20,13 +20,14 @@
<result column="shop_id" jdbcType="INTEGER" property="shopId" />
<result column="updatetime" jdbcType="TIMESTAMP" property="updatetime" />
<result column="rent_shop_type" jdbcType="INTEGER" property="rentShopType"/>
<result column="return_price" jdbcType="INTEGER" property="returnPrice"/>
</resultMap>
<sql id="allColumns">
`id`,`property_contract_id`,`receive_pay`,`pay`,`receive_date`,
`pay_date`,`createtime`,`expired_day`,`tenant_id`,`owe`,`status`,`is_del`,`need_pay`,
`merchant_id`,`user_id`,`shop_id`,`updatetime`,`rent_shop_type`
`merchant_id`,`user_id`,`shop_id`,`updatetime`,`rent_shop_type`,`return_price`
</sql>

<sql id="dynamicWhereConditions">
@@ -68,7 +69,7 @@
select br.`id`,br.`receive_pay` receivePay,br.`pay`,br.`receive_date` receiveDate,
br.`pay_date` payDate,br.`createtime`,br.`expired_day` expiredDay,br.`owe`,br.`status`,
br.`need_pay` needPay,m.`name` merchantName,s.shop_number shopNumber,br.`updatetime`,
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType,br.`return_price` returnPrice
from wx_bill_property_deposit br left join wx_merchant m on br.merchant_id=m.id
left join wx_shop s on br.shop_id=s.id
<where>
@@ -79,8 +80,7 @@
<if test=" null != status ">and br.`status` = #{status}</if>
<if test=" null != isDel ">and br.`is_del` = #{isDel}</if>
<if test=" null != rentShopType ">and br.`rent_shop_type` = #{rentShopType}</if>
<if test=" null != propertyContractId ">and br.`property_contract_id` = #{propertyContractId}</if>
</where>
order by id desc
</select>


+ 15
- 2
mallinkService/src/main/resources/mapper/WxBillPropertyMapper.xml Просмотреть файл

@@ -20,13 +20,21 @@
<result column="shop_id" jdbcType="INTEGER" property="shopId" />
<result column="updatetime" jdbcType="TIMESTAMP" property="updatetime" />
<result column="rent_shop_type" jdbcType="INTEGER" property="rentShopType"/>
<result column="revenue" jdbcType="INTEGER" property="revenue"/>
<result column="late_pay_ratio" jdbcType="INTEGER" property="latePayRatio"/>
<result column="late_pay_time" jdbcType="TIMESTAMP" property="latePayTime"/>
<result column="late_pay_price" jdbcType="INTEGER" property="latePayPrice"/>
<result column="period" jdbcType="INTEGER" property="period"/>
</resultMap>
<sql id="allColumns">
`id`,`property_contract_id`,`receive_pay`,`pay`,`receive_date`,`pay_date`,
`createtime`,`expired_day`,`tenant_id`,`owe`,`status`,`is_del`,`need_pay`,
`merchant_id`,`user_id`,`shop_id`,`updatetime`,`rent_shop_type`
`merchant_id`,`user_id`,`shop_id`,`updatetime`,`rent_shop_type`,
`revenue`,`late_pay_ratio`,`late_pay_time`,`late_pay_price`,`period`

</sql>

<sql id="dynamicWhereConditions">
@@ -68,9 +76,14 @@
select br.`id`,br.`receive_pay` receivePay,br.`pay`,br.`receive_date` receiveDate,
br.`pay_date` payDate,br.`createtime`,br.`expired_day` expiredDay,br.`owe`,br.`status`,
br.`need_pay` needPay,m.`name` merchantName,s.shop_number shopNumber,br.`updatetime`,
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType,br.`period`,
br.`revenue`,br.`late_pay_ratio` latePayRatio,br.`late_pay_time` latePayTime,
case when br.late_pay_time is null then 0 else
FLOOR(DATEDIFF(now(),br.late_pay_time)*br.late_pay_ratio/10000*br.owe) end latePayPrice,
(select max(period) from wx_bill_property where id=br.id) allPeriod,d.`status` depositStatus
from wx_bill_property br left join wx_merchant m on br.merchant_id=m.id
left join wx_shop s on br.shop_id=s.id
left join wx_bill_property_deposit d on br.property_contract_id=d.property_contract_id
<where>
<if test=" null != id ">and br.`id` = #{id}</if>
<if test=" null != merchantId ">and br.`merchant_id` = #{merchantId}</if>


+ 14
- 3
mallinkService/src/main/resources/mapper/WxBillRentMapper.xml Просмотреть файл

@@ -20,14 +20,19 @@
<result column="shop_id" jdbcType="BIGINT" property="shopId"/>
<result column="updatetime" jdbcType="TIMESTAMP" property="updatetime"/>
<result column="rent_shop_type" jdbcType="INTEGER" property="rentShopType"/>
<result column="revenue" jdbcType="INTEGER" property="revenue"/>
<result column="late_pay_ratio" jdbcType="INTEGER" property="latePayRatio"/>
<result column="late_pay_time" jdbcType="TIMESTAMP" property="latePayTime"/>
<result column="late_pay_price" jdbcType="INTEGER" property="latePayPrice"/>
<result column="period" jdbcType="INTEGER" property="period"/>
</resultMap>
<sql id="allColumns">
`id`,`rent_contract_id`,`receive_pay`,`pay`,`receive_date`,`pay_date`,
`createtime`,`expired_day`,`tenant_id`,`owe`,`status`,`is_del`,`need_pay`,
`merchant_id`,`user_id`,`shop_id`,`updatetime`,`rent_shop_type`
`merchant_id`,`user_id`,`shop_id`,`updatetime`,`rent_shop_type`,
`revenue`,`late_pay_ratio`,`late_pay_time`,`late_pay_price`,`period`
</sql>
<sql id="dynamicWhereConditions">
@@ -72,9 +77,15 @@
select br.`id`,br.`receive_pay` receivePay,br.`pay`,br.`receive_date` receiveDate,
br.`pay_date` payDate,br.`createtime`,br.`expired_day` expiredDay,br.`owe`,br.`status`,
br.`need_pay` needPay,m.`name` merchantName,s.shop_number shopNumber,br.`updatetime`,
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType
br.`merchant_id` merchantId,br.`rent_shop_type` rentShopType,r.type rentType,r.pay_ratio payRatio,
br.`revenue`,br.`late_pay_ratio` latePayRatio,br.`late_pay_time` latePayTime,br.`period`,
case when br.late_pay_time is null then 0 else
FLOOR(DATEDIFF(now(),br.late_pay_time)*br.late_pay_ratio/10000*br.owe) end latePayPrice
(select max(period) from wx_bill_rent where id=br.id) allPeriod,d.`status` depositStatus
from wx_bill_rent br left join wx_merchant m on br.merchant_id=m.id
left join wx_shop s on br.shop_id=s.id
left join wx_rent_contract r on br.rent_contract_id=r.id
left join wx_bill_rent_deposit d on br.rent_contract_id=d.rent_contract_id and br.merchant_id=d.merchant_id
<where>
<if test=" null != id ">and br.`id` = #{id}</if>
<if test=" null != merchantId ">and br.`merchant_id` = #{merchantId}</if>


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