From fa00e1dd8459d6b77ba25569ba2fa7b7095ed9b5 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 31 Oct 2018 11:16:02 +0800 Subject: [PATCH] =?UTF-8?q?[B=E7=AB=AF=E8=B4=A6=E5=8D=95][=E4=BF=AE?= =?UTF-8?q?=E6=94=B9][=E6=9F=A5=E8=AF=A2=EF=BC=8C=E6=9E=9A=E4=B8=BE?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/controller/WxBillController.java | 20 ++++++++ .../java/com/iformall/enums/EnumBillType.java | 42 ++++++++++++++++ .../com/iformall/enums/EnumBillTypeParam.java | 43 ++++++++++++++++ .../iformall/service/WxBillAllService.java | 3 ++ .../service/impl/WxBillAllServiceImpl.java | 49 +++++++++++++++++-- .../main/resources/mapper/WxBillAllMapper.xml | 6 +++ 6 files changed, 160 insertions(+), 3 deletions(-) create mode 100644 mallinkService/src/main/java/com/iformall/enums/EnumBillType.java create mode 100644 mallinkService/src/main/java/com/iformall/enums/EnumBillTypeParam.java diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java index 0fa0f4132..842a47adc 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java @@ -1,11 +1,13 @@ package com.iformall.controller; +import com.iformall.common.ErrorCode; import com.iformall.common.ResultData; import com.iformall.domain.vo.WxBillAll; import com.iformall.service.WxBillAllService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -32,8 +34,26 @@ public class WxBillController extends BaseController { @ApiOperation("所有欠缴和待缴的数据") @PostMapping("listBillOweAndWaitPay") public ResultData listBillOweAndWaitPay(@RequestBody WxBillAll wxBillAll) { + if(StringUtils.isEmpty(wxBillAll.getTenantId())){ + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"tenantId为空"); + } + if(wxBillAll.getMerchantId()==null){ + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"merchantId为空"); + } List> result=wxBillAllService.listBillOweAndWaitPay(wxBillAll); return new ResultData(result); } + @ApiOperation("账单") + @PostMapping("listBill") + public ResultData listBill(@RequestBody WxBillAll wxBillAll) { + if(StringUtils.isEmpty(wxBillAll.getTenantId())){ + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"tenantId为空"); + } + if(wxBillAll.getMerchantId()==null){ + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"merchantId为空"); + } + return wxBillAllService.listBill(wxBillAll); + } + } diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumBillType.java b/mallinkService/src/main/java/com/iformall/enums/EnumBillType.java new file mode 100644 index 000000000..c9906c785 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumBillType.java @@ -0,0 +1,42 @@ +package com.iformall.enums; + + +/** + * @author gongbiao + */ + +public enum EnumBillType { + + RENT(1,"租金"), + DEPOSIT(2,"押金"), + PROPERTY(3,"物业"), + WATER(4, "水费"), + POWER(5, "电费"), + ROUTINE(6,"其他") + ; + + public static EnumBillType getEnum(Integer code) { + for (EnumBillType value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumBillType(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } +} diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumBillTypeParam.java b/mallinkService/src/main/java/com/iformall/enums/EnumBillTypeParam.java new file mode 100644 index 000000000..cb3b5ccda --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumBillTypeParam.java @@ -0,0 +1,43 @@ +package com.iformall.enums; + + +/** + * @author gongbiao + */ + +public enum EnumBillTypeParam { + + RENT(1,"租金"), + RENT_DEPOSIT(2,"租赁押金"), + PROPERTY(3,"物业"), + PROPERTY_DEPOSIT(4,"物业押金"), + WATER(5, "水费"), + POWER(6, "电费"), + ROUTINE(7,"其他") + ; + + public static EnumBillTypeParam getEnum(Integer code) { + for (EnumBillTypeParam value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumBillTypeParam(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java b/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java index 476e1727b..d4ca8b342 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java @@ -1,5 +1,6 @@ package com.iformall.service; +import com.iformall.common.ResultData; import com.iformall.domain.vo.WxBillAll; import java.util.List; @@ -14,4 +15,6 @@ public interface WxBillAllService { List> listBillOweAndWaitPay(WxBillAll wxBillAll); + ResultData listBill(WxBillAll wxBillAll); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java index 03039f213..2439bf551 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java @@ -2,9 +2,13 @@ package com.iformall.service.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.iformall.common.ErrorCode; +import com.iformall.common.ResultData; import com.iformall.domain.po.*; import com.iformall.domain.vo.WxBillAll; import com.iformall.enums.EnumBillRentStatus; +import com.iformall.enums.EnumBillType; +import com.iformall.enums.EnumBillTypeParam; import com.iformall.mapper.WxBillAllMapper; import com.iformall.service.*; import com.iformall.utils.DateUtils; @@ -49,9 +53,9 @@ public class WxBillAllServiceImpl implements WxBillAllService { //更新各账单状态 updateBillStatus(record); //得到当前月 - String month=DateUtils.getSystemTime("yyyy-MM"); + String month = DateUtils.getSystemTime("yyyy-MM"); //获取账单信息-欠缴笔数、欠缴金额、结清笔数、结清金额 - Object billInfo = getBillInfo(record.getTenantId(),month); + Object billInfo = getBillInfo(record.getTenantId(), month); //设置查询参数-当前月 record.setMonth(month); //分页-页数、条数 @@ -77,6 +81,45 @@ public class WxBillAllServiceImpl implements WxBillAllService { return wxBillAllMapper.listData(wxBillAll); } + @Override + public ResultData listBill(WxBillAll wxBillAll) { + //更新各账单状态 + updateBillStatus(wxBillAll); + if(wxBillAll.getStarttime()!=null && wxBillAll.getEndtime()==null){ + String month = DateUtils.getSystemTime("yyyy-MM"); + wxBillAll.setMonth(month); + } + //账单类型 + if (wxBillAll.getBillTypeValue().equals(EnumBillType.RENT.getCode())) { + wxBillAll.setBillTypeValue(EnumBillTypeParam.RENT.getCode()); + } else if (wxBillAll.getBillTypeValue().equals(EnumBillType.DEPOSIT.getCode())) { + wxBillAll.setBillTypeValue(null); + ArrayList typeList = new ArrayList(); + typeList.add(EnumBillTypeParam.RENT_DEPOSIT.getCode()); + typeList.add(EnumBillTypeParam.PROPERTY_DEPOSIT.getCode()); + wxBillAll.setTypeList(typeList); + } else if (wxBillAll.getBillTypeValue().equals(EnumBillType.PROPERTY.getCode())) { + wxBillAll.setBillTypeValue(EnumBillTypeParam.PROPERTY.getCode()); + } else if (wxBillAll.getBillTypeValue().equals(EnumBillType.WATER.getCode())) { + wxBillAll.setBillTypeValue(EnumBillTypeParam.WATER.getCode()); + } else if (wxBillAll.getBillTypeValue().equals(EnumBillType.POWER.getCode())) { + wxBillAll.setBillTypeValue(EnumBillTypeParam.POWER.getCode()); + } else if (wxBillAll.getBillTypeValue().equals(EnumBillType.ROUTINE.getCode())) { + wxBillAll.setBillTypeValue(EnumBillTypeParam.ROUTINE.getCode()); + } else { + logger.info("账单不存在"); + return new ResultData(ErrorCode.BILL_ROUTINE_IS_NOT_FOUND); + } + if(wxBillAll.getPageIndex()!=null && wxBillAll.getPageIndex()!=null){ + PageHelper.startPage(wxBillAll.getPageIndex(), wxBillAll.getPageSize()); + List> maps = wxBillAllMapper.listData(wxBillAll); + PageInfo> pageInfo = new PageInfo<>(maps); + return new ResultData(pageInfo); + } + List> maps = wxBillAllMapper.listData(wxBillAll); + return new ResultData(maps); + } + private void updateBillStatus(WxBillAll record) { logger.info("更新各账单状态开始"); //更新日常账单状态 @@ -102,7 +145,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { logger.info("更新各账单状态结束"); } - private Object getBillInfo(String tenantId,String month) { + private Object getBillInfo(String tenantId, String month) { WxBillAll record = new WxBillAll(); record.setTenantId(tenantId); record.setMonth(month); diff --git a/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml b/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml index 82cf199b3..549da68bc 100644 --- a/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml @@ -109,6 +109,12 @@ and bill.receive_date between #{starttime} and #{endtime} + + and bill.status=#{status} + + + and bill.bill_type_value=#{billTypeValue} + order by bill.id,bill.merchant_id,bill.receive_date