From 1af3b331be5bb05d1eb81ca1c32c27e684498c67 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 16 Jan 2019 17:35:45 +0800 Subject: [PATCH] =?UTF-8?q?[=E8=B4=A6=E5=8D=95][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=AD=97=E6=AE=B5]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WxBillOtherDepositController.java | 80 +++++ .../domain/po/WxBillOtherDeposit.java | 299 ++++++++++++++++++ .../com/iformall/domain/vo/WxBillAll.java | 11 + .../iformall/enums/EnumBillRentStatus.java | 1 + .../com/iformall/enums/EnumRentShopType.java | 37 +++ .../com/iformall/mapper/WxBillAllMapper.java | 2 +- .../iformall/mapper/WxBillDailyMapper.java | 2 +- .../iformall/mapper/WxBillDepositMapper.java | 2 +- .../mapper/WxBillOtherDepositMapper.java | 22 ++ .../iformall/mapper/WxBillOtherMapper.java | 2 +- .../mapper/WxBillPropertyDepositMapper.java | 2 +- .../iformall/mapper/WxBillPropertyMapper.java | 2 +- .../com/iformall/mapper/WxBillRentMapper.java | 2 +- .../service/WxBillOtherDepositService.java | 52 +++ .../service/impl/WxBillAllServiceImpl.java | 25 +- .../impl/WxBillOtherDepositServiceImpl.java | 185 +++++++++++ .../main/resources/mapper/WxBillAllMapper.xml | 152 ++++++--- .../mapper/WxBillOtherDepositMapper.xml | 101 ++++++ 18 files changed, 919 insertions(+), 60 deletions(-) create mode 100644 mallinkAdmin/src/main/java/com/iformall/controller/WxBillOtherDepositController.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxBillOtherDeposit.java create mode 100644 mallinkService/src/main/java/com/iformall/enums/EnumRentShopType.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxBillOtherDepositMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java create mode 100644 mallinkService/src/main/resources/mapper/WxBillOtherDepositMapper.xml diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxBillOtherDepositController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxBillOtherDepositController.java new file mode 100644 index 000000000..22b60fc5e --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxBillOtherDepositController.java @@ -0,0 +1,80 @@ +package com.iformall.controller; + +import com.github.pagehelper.PageInfo; +import com.iformall.common.Result; +import com.iformall.common.ResultData; +import com.iformall.domain.po.WxBillOtherDeposit; +import com.iformall.service.WxBillOtherDepositService; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + +/** + * @author gongbiao + */ +@RestController +@RequestMapping("wxBillOtherDeposit") +public class WxBillOtherDepositController extends BaseController { + @Autowired + private WxBillOtherDepositService wxBillOtherDepositService; + + private Logger logger = LoggerFactory.getLogger(this.getClass()); + + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData list(@ModelAttribute WxBillOtherDeposit wxBillOtherDeposit, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxBillOtherDepositController::list"); + if (null == wxBillOtherDeposit) { + wxBillOtherDeposit = new WxBillOtherDeposit(); + } + wxBillOtherDeposit.setTenantId(getTenantId()); + final PageInfo> page = wxBillOtherDepositService.listAsPage(wxBillOtherDeposit, pageNum, pageSize); + return new ResultData(page); + } + + @PostMapping("add") + public ResultData add(@RequestBody WxBillOtherDeposit wxBillOtherDeposit) { + logger.debug("[" + getIpAddr() + "] WxBillOtherDepositController::add"); + wxBillOtherDeposit.setTenantId(getTenantId()); + wxBillOtherDeposit.setUserId(getUser().getId()); + return wxBillOtherDepositService.saveOrUpdate(wxBillOtherDeposit); + } + + @PostMapping("update") + public ResultData update(@RequestBody WxBillOtherDeposit wxBillOtherDeposit) { + logger.debug("[" + getIpAddr() + "] WxBillOtherDepositController::update"); + wxBillOtherDeposit.setUserId(getUser().getId()); + return wxBillOtherDepositService.saveOrUpdate(wxBillOtherDeposit); + } + + @GetMapping("/del") + @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) + public ResultData delete(Long id) { + logger.debug("[" + getIpAddr() + "] WxBillOtherDepositController::delete"); + wxBillOtherDepositService.deleteById(id); + return new ResultData(Result.SUCCESS, "删除成功", null); + } + + @GetMapping("/findById") + @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) + public ResultData findById(Long id) { + logger.debug("[" + getIpAddr() + "] WxBillOtherDepositController::findById"); + return new ResultData(Result.SUCCESS, "查询成功", wxBillOtherDepositService.getById(id)); + } + + @GetMapping("/updatePaid") + @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) + public ResultData updatePaid(Long id) { + logger.debug("[" + getIpAddr() + "] WxBillOtherDepositController::updatePaid"); + return wxBillOtherDepositService.updatePaid(id); + } + + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxBillOtherDeposit.java b/mallinkService/src/main/java/com/iformall/domain/po/WxBillOtherDeposit.java new file mode 100644 index 000000000..dc7c6c306 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxBillOtherDeposit.java @@ -0,0 +1,299 @@ +package com.iformall.domain.po; + +import javax.persistence.Id; +import javax.persistence.Table; +import javax.persistence.Transient; +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @author gongbiao + */ +@Table(name = "wx_bill_other_deposit") +public class WxBillOtherDeposit implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + protected Long id; + + @Transient + protected List ids; + @Transient + protected String sortColumns; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getSortColumns() { + return sortColumns; + } + + public List getIds() { + return ids; + } + + public void setIds(List ids) { + this.ids = ids; + } + + @Transient + private String merchantName; + + public String getMerchantName() { + return merchantName; + } + + public void setMerchantName(String merchantName) { + this.merchantName = merchantName; + } + + @io.swagger.annotations.ApiModelProperty(value = "账单名称", name = "name") + private String name; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + @io.swagger.annotations.ApiModelProperty(value = "账单备注", name = "comments") + private String comments; + + public String getComments() { + return comments; + } + + public void setComments(String comments) { + this.comments = comments; + } + + /*实际应收金额**/ + @io.swagger.annotations.ApiModelProperty(value = "实际应收金额", name = "receivePay") + private Integer receivePay; + /*实收金额**/ + @io.swagger.annotations.ApiModelProperty(value = "实收金额", name = "pay") + private Integer pay; + /*截止收款日期**/ + @io.swagger.annotations.ApiModelProperty(value = "截止收款日期", name = "receiveDate") + private Date receiveDate; + /*到账日期**/ + @io.swagger.annotations.ApiModelProperty(value = "到账日期", name = "payDate") + private Date payDate; + /*创建时间**/ + @io.swagger.annotations.ApiModelProperty(value = "创建时间", name = "createtime") + private Date createtime; + /*逾期天数**/ + @io.swagger.annotations.ApiModelProperty(value = "逾期天数", name = "expiredDay") + private Long expiredDay; + /*租户**/ + @io.swagger.annotations.ApiModelProperty(value = "租户", name = "tenantId") + private String tenantId; + /*欠缴**/ + @io.swagger.annotations.ApiModelProperty(value = "欠缴", name = "owe") + private Integer owe; + /*账单状态1待缴2欠缴3已结清**/ + @io.swagger.annotations.ApiModelProperty(value = "账单状态1未到期2待缴3欠缴4已结清5已退还", name = "status") + private Integer status; + /*删除 是1否0**/ + @io.swagger.annotations.ApiModelProperty(value = "删除 是1否0", name = "isDel") + private Integer isDel; + /*商户ID**/ + @io.swagger.annotations.ApiModelProperty(value = "商户ID", name = "merchantId") + private Long merchantId; + /*账号ID**/ + @io.swagger.annotations.ApiModelProperty(value = "账号ID", name = "userId") + private Long userId; + /*商铺ID**/ + @io.swagger.annotations.ApiModelProperty(value = "商铺ID", name = "shopId") + private Long shopId; + /*更新时间**/ + @io.swagger.annotations.ApiModelProperty(value = "更新时间", name = "updatetime") + private Date updatetime; + + @io.swagger.annotations.ApiModelProperty(value = "租赁商铺类型", name = "rentShopType") + private Integer rentShopType; + + public Integer getReceivePay() { + return receivePay; + } + + public void setReceivePay(Integer _receivePay) { + receivePay = _receivePay; + } + + public Integer getPay() { + return pay; + } + + public void setPay(Integer _pay) { + pay = _pay; + } + + public Date getReceiveDate() { + return receiveDate; + } + + public void setReceiveDate(Date _receiveDate) { + receiveDate = _receiveDate; + } + + public Date getPayDate() { + return payDate; + } + + public void setPayDate(Date _payDate) { + payDate = _payDate; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date _createtime) { + createtime = _createtime; + } + + public Long getExpiredDay() { + return expiredDay; + } + + public void setExpiredDay(Long _expiredDay) { + expiredDay = _expiredDay; + } + + public String getTenantId() { + return tenantId; + } + + public void setTenantId(String _tenantId) { + tenantId = _tenantId; + } + + public Integer getOwe() { + return owe; + } + + public void setOwe(Integer _owe) { + owe = _owe; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer _status) { + status = _status; + } + + public Integer getIsDel() { + return isDel; + } + + public void setIsDel(Integer _isDel) { + isDel = _isDel; + } + + public Long getMerchantId() { + return merchantId; + } + + public void setMerchantId(Long _merchantId) { + merchantId = _merchantId; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long _userId) { + userId = _userId; + } + + public Long getShopId() { + return shopId; + } + + public void setShopId(Long _shopId) { + shopId = _shopId; + } + + public Date getUpdatetime() { + return updatetime; + } + + public void setUpdatetime(Date _updatetime) { + updatetime = _updatetime; + } + + public Integer getRentShopType() { + return rentShopType; + } + + public void setRentShopType(Integer rentShopType) { + this.rentShopType = rentShopType; + } + + public static enum Field { + Id_ASC("`id` ASC"), Id_DESC("`id` DESC"), ReceivePay_ASC("`receivePay` ASC"), ReceivePay_DESC("`receivePay` DESC"), Pay_ASC("`pay` ASC"), Pay_DESC("`pay` DESC"), ReceiveDate_ASC("`receiveDate` ASC"), ReceiveDate_DESC("`receiveDate` DESC"), PayDate_ASC("`payDate` ASC"), PayDate_DESC("`payDate` DESC"), Createtime_ASC("`createtime` ASC"), Createtime_DESC("`createtime` DESC"), ExpiredDay_ASC("`expiredDay` ASC"), ExpiredDay_DESC("`expiredDay` DESC"), TenantId_ASC("`tenantId` ASC"), TenantId_DESC("`tenantId` DESC"), Owe_ASC("`owe` ASC"), Owe_DESC("`owe` DESC"), Status_ASC("`status` ASC"), Status_DESC("`status` DESC"), IsDel_ASC("`isDel` ASC"), IsDel_DESC("`isDel` DESC"), MerchantId_ASC("`merchantId` ASC"), MerchantId_DESC("`merchantId` DESC"), UserId_ASC("`userId` ASC"), UserId_DESC("`userId` DESC"), ShopId_ASC("`shopId` ASC"), ShopId_DESC("`shopId` DESC"), Updatetime_ASC("`updatetime` ASC"), Updatetime_DESC("`updatetime` DESC"); + private String value; + + Field(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + public void setCol(String value) { + this.value = value; + } + + @Override + public String toString() { + return this.getValue(); + } + } + + public void setSortColumns(Field... fields) { + if (fields == null || fields.length == 0) { + return; + } + for (int k = 0; k < fields.length; k++) { + if (fields[k] == null) { + return; + } + } + StringBuilder sb = new StringBuilder(fields[0].toString()); + for (int k = 1; k < fields.length; k++) { + sb.append(","); + sb.append(fields[k].toString()); + } + + } + + public void setSortColumns(String sortColumns) { + if (sortColumns == null || "".equals(sortColumns.trim())) { + return; + } + if (sortColumns.contains(",")) { + String[] cols = sortColumns.split(","); + List fList = new ArrayList(); + for (int k = 0; k < cols.length; k++) { + fList.add(Field.valueOf(cols[k])); + } + this.setSortColumns(fList.toArray(new Field[fList.size()])); + } else { + this.setSortColumns(Field.valueOf(sortColumns)); + } + } +} diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxBillAll.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxBillAll.java index 5f1613248..fd3d3d270 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxBillAll.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxBillAll.java @@ -50,6 +50,9 @@ public class WxBillAll { @io.swagger.annotations.ApiModelProperty(value="id",name="id") private Long id; + @io.swagger.annotations.ApiModelProperty(value = "租赁店铺类型", name = "rentShopType") + private Integer rentShopType; + public Long getId() { return id; } @@ -161,4 +164,12 @@ public class WxBillAll { public void setMonth(String month) { this.month = month; } + + public Integer getRentShopType() { + return rentShopType; + } + + public void setRentShopType(Integer rentShopType) { + this.rentShopType = rentShopType; + } } diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumBillRentStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumBillRentStatus.java index 4abdf1ad0..422364c8b 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumBillRentStatus.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumBillRentStatus.java @@ -10,6 +10,7 @@ public enum EnumBillRentStatus { WAIT_PAY(2,"待缴"), PAID(3, "已结清"), NOT_EXPIRED(4,"未到期"), + RETURN(5, "已退还"), ; public static EnumBillRentStatus getEnum(Integer code) { diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumRentShopType.java b/mallinkService/src/main/java/com/iformall/enums/EnumRentShopType.java new file mode 100644 index 000000000..c53f53215 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumRentShopType.java @@ -0,0 +1,37 @@ +package com.iformall.enums; + + +/** + * @author gongbiao + */ + +public enum EnumRentShopType { + + SHOP(1, "店铺"), + POINT(2, "点位"),; + + public static EnumRentShopType getEnum(Integer code) { + for (EnumRentShopType value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumRentShopType(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/mapper/WxBillAllMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillAllMapper.java index 6b9d28eb1..f46073d9b 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillAllMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillAllMapper.java @@ -10,7 +10,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxBillAllMapper extends CommonMapper { +public interface WxBillAllMapper extends CommonMapper { List> list(WxBillAll record); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillDailyMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillDailyMapper.java index b5cf9d27f..cdf389c10 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillDailyMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillDailyMapper.java @@ -9,7 +9,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxBillDailyMapper extends CommonMapper { +public interface WxBillDailyMapper extends CommonMapper { List findList(WxBillDaily wxBillDaily); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillDepositMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillDepositMapper.java index 09e86d58b..53a706a99 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillDepositMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillDepositMapper.java @@ -10,7 +10,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxBillDepositMapper extends CommonMapper { +public interface WxBillDepositMapper extends CommonMapper { List findList(WxBillDeposit wxBillDeposit); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillOtherDepositMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillOtherDepositMapper.java new file mode 100644 index 000000000..87be3b0c5 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillOtherDepositMapper.java @@ -0,0 +1,22 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxBillOtherDeposit; + +import java.util.List; +import java.util.Map; + +/** + * @author gongbiao + */ +public interface WxBillOtherDepositMapper extends CommonMapper { + + List findList(WxBillOtherDeposit record); + + void updateNotPaidStatus(Map params); + + void updateWaitPayStatus(Map params); + + List> queryBillList(WxBillOtherDeposit record); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillOtherMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillOtherMapper.java index 2bda4b39d..d395b88fa 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillOtherMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillOtherMapper.java @@ -9,7 +9,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxBillOtherMapper extends CommonMapper { +public interface WxBillOtherMapper extends CommonMapper { List findList(WxBillOther wxBillDaily); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyDepositMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyDepositMapper.java index e75568a1f..6caf665e1 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyDepositMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyDepositMapper.java @@ -9,7 +9,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxBillPropertyDepositMapper extends CommonMapper { +public interface WxBillPropertyDepositMapper extends CommonMapper { List findList(WxBillPropertyDeposit wxBillPropertyDeposit); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyMapper.java index 8302c7a91..93b376d0f 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillPropertyMapper.java @@ -9,7 +9,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxBillPropertyMapper extends CommonMapper { +public interface WxBillPropertyMapper extends CommonMapper { List findList(WxBillProperty wxBillProperty); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java index 2294cb2d7..16a2da283 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java @@ -9,7 +9,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxBillRentMapper extends CommonMapper { +public interface WxBillRentMapper extends CommonMapper { List findList(WxBillRent wxBillRent); diff --git a/mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java b/mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java new file mode 100644 index 000000000..a0090f37f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java @@ -0,0 +1,52 @@ +package com.iformall.service; + +import com.github.pagehelper.PageInfo; +import com.iformall.common.ResultData; +import com.iformall.domain.po.WxBillOther; +import com.iformall.domain.po.WxBillOtherDeposit; + +import java.util.Map; + +/** + * @author gongbiao + */ +public interface WxBillOtherDepositService { + + /** + * 根据实体查询分页列表 + * + * @param offset + * @param limit + * @param record + * @return + */ + PageInfo> listAsPage(WxBillOtherDeposit record, Integer pageIndex, Integer pageSize); + + void updateBillStatus(WxBillOtherDeposit record); + + /** + * 根据Id获得实体 + * + * @param id + * @return + */ + Map getById(Long id); + + /** + * 保存或更新实体 + * + * @param record + */ + ResultData saveOrUpdate(WxBillOtherDeposit record); + + /** + * 根据Id删除实体 + * + * @param id + */ + void deleteById(Long id); + + + ResultData updatePaid(Long id); + +} 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 def96682d..ee3b84865 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java @@ -6,10 +6,7 @@ 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.EnumBillDailyStatus; -import com.iformall.enums.EnumBillRentStatus; -import com.iformall.enums.EnumBillType; -import com.iformall.enums.EnumBillTypeParam; +import com.iformall.enums.*; import com.iformall.exception.MallinkException; import com.iformall.mapper.*; import com.iformall.service.*; @@ -497,13 +494,23 @@ public class WxBillAllServiceImpl implements WxBillAllService { WxBillAll record = new WxBillAll(); record.setTenantId(tenantId); record.setMonth(month); + record.setRentShopType(EnumRentShopType.SHOP.getCode()); record.setStatus(EnumBillRentStatus.NOT_PAID.getCode()); - Map oweInfo = wxBillAllMapper.queryOweInfo(record); + Map oweInfoForShop = wxBillAllMapper.queryOweInfo(record); record.setStatus(EnumBillRentStatus.PAID.getCode()); - Map paidInfo = wxBillAllMapper.queryPaidInfo(record); - Map result = new HashMap<>(); - result.putAll(oweInfo); - result.putAll(paidInfo); + Map paidInfoForShop = wxBillAllMapper.queryPaidInfo(record); + + record.setRentShopType(EnumRentShopType.POINT.getCode()); + record.setStatus(EnumBillRentStatus.NOT_PAID.getCode()); + Map oweInfoForPoint = wxBillAllMapper.queryOweInfo(record); + record.setStatus(EnumBillRentStatus.PAID.getCode()); + Map paidInfoForPoint = wxBillAllMapper.queryPaidInfo(record); + + Map result = new HashMap<>(5); + result.put("oweInfoForShop", oweInfoForShop); + result.put("paidInfoForShop", paidInfoForShop); + result.put("oweInfoForPoint", oweInfoForPoint); + result.put("paidInfoForPoint", paidInfoForPoint); return result; } } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java new file mode 100644 index 000000000..3d1680b7e --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java @@ -0,0 +1,185 @@ +package com.iformall.service.impl; + +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +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.WxBillOther; +import com.iformall.domain.po.WxBillOtherDeposit; +import com.iformall.domain.po.WxShop; +import com.iformall.enums.EnumBillDailyStatus; +import com.iformall.enums.EnumBillRentStatus; +import com.iformall.enums.EnumDelStatus; +import com.iformall.exception.MallinkException; +import com.iformall.mapper.WxBillOtherDepositMapper; +import com.iformall.mapper.WxShopMapper; +import com.iformall.service.WxBillOtherDepositService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; + +/** + * @author gongbiao + */ +@Service +public class WxBillOtherDepositServiceImpl implements WxBillOtherDepositService { + private Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + WxBillOtherDepositMapper wxBillOtherDepositMapper; + + @Autowired + WxShopMapper wxShopMapper; + + @Override + public PageInfo> listAsPage(WxBillOtherDeposit record, Integer pageIndex, Integer pageSize) { + //更新账单状态 + updateBillStatus(record); + //分页对象设置页数和条数 + PageHelper.startPage(pageIndex, pageSize); + //查询 + List> billList = wxBillOtherDepositMapper.queryBillList(record); + //结果放入分页对象 + PageInfo> pageInfo = new PageInfo<>(billList); + return pageInfo; + + } + + @Override + public void updateBillStatus(WxBillOtherDeposit record) { + logger.info("更新其他押金账单状态开始..."); + //更新逾期天数及状态 + updateNotPaidStatus(record); + //更新待缴的状态 + updateWaidPayStatus(record); + logger.info("更新其他押金账单状态结束..."); + } + + @Transactional(rollbackFor = {Exception.class}) + public void updateWaidPayStatus(WxBillOtherDeposit record) { + Map params = new HashMap<>(); + params.put("tenantId", record.getTenantId()); + params.put("waitPay", EnumBillDailyStatus.WAIT_PAY.getCode()); + params.put("paid", EnumBillRentStatus.PAID.getCode()); + try { + wxBillOtherDepositMapper.updateWaitPayStatus(params); + } catch (Exception e) { + logger.error("更新其他待缴账单状态失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } + } + + + @Transactional(rollbackFor = {Exception.class}) + public void updateNotPaidStatus(WxBillOtherDeposit record) { + Map params = new HashMap<>(); + params.put("tenantId", record.getTenantId()); + params.put("notPaid", EnumBillDailyStatus.NOT_PAID.getCode()); + params.put("paid", EnumBillRentStatus.PAID.getCode()); + try { + wxBillOtherDepositMapper.updateNotPaidStatus(params); + } catch (Exception e) { + logger.error("更新其他欠缴账单状态失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } + } + + @Override + public Map getById(Long id) { + WxBillOtherDeposit record = new WxBillOtherDeposit(); + record.setId(id); + Map wxBillOther = wxBillOtherDepositMapper.queryBillList(record).get(0); + + if (wxBillOther.get("shopId") != null) { + WxShop shop = new WxShop(); + shop.setId((Long) wxBillOther.get("shopId")); + List> shoplist = wxShopMapper.findListMap(shop); + wxBillOther.put("shops", shoplist); + } else { + wxBillOther.put("shops", Collections.EMPTY_LIST); + } + + return wxBillOther; + } + + @Override + public ResultData saveOrUpdate(WxBillOtherDeposit record) { + int receivepay = record.getReceivePay().intValue(); + int pay = record.getPay().intValue(); + if (pay > receivepay) { + return new ResultData(ErrorCode.BILL_PAY_ERROR, "实收金额不能大于实际应收金额"); + } + if (record.getId() == null) { + logger.info("新增其他账单"); + final IdWorker idWorker = IdWorker.get(); + record.setId(idWorker.nextId()); + Date date = new Date(); + record.setStatus(record.getReceiveDate().after(date) ? EnumBillDailyStatus.WAIT_PAY.getCode() : EnumBillDailyStatus.NOT_PAID.getCode()); + record.setCreatetime(date); + record.setUpdatetime(date); + record.setExpiredDay(0L); + record.setOwe(record.getReceivePay() - record.getPay()); + record.setIsDel(EnumDelStatus.NOT_DEL.getCode()); + try { + wxBillOtherDepositMapper.insertSelective(record); + } catch (Exception e) { + logger.error("保存其他账单失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } + return new ResultData(Result.SUCCESS, "保存其他账单成功"); + } else { + logger.info("更新其他押金账单"); + WxBillOtherDeposit wxBillOtherDeposit = wxBillOtherDepositMapper.selectByPrimaryKey(record.getId()); + if (wxBillOtherDeposit == null) { + return new ResultData(ErrorCode.BILL_ROUTINE_IS_NOT_FOUND); + } + wxBillOtherDeposit.setPayDate(record.getPayDate()); + wxBillOtherDeposit.setPay(record.getPay()); + wxBillOtherDeposit.setReceivePay(record.getReceivePay()); + wxBillOtherDeposit.setOwe(record.getReceivePay() - record.getPay()); + wxBillOtherDeposit.setStatus(record.getPay().equals(record.getReceivePay()) ? EnumBillDailyStatus.PAID.getCode() : wxBillOtherDeposit.getStatus()); + wxBillOtherDeposit.setUpdatetime(new Date()); + try { + wxBillOtherDepositMapper.updateByPrimaryKeySelective(wxBillOtherDeposit); + } catch (Exception e) { + logger.error("更新其他账单失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } + return new ResultData(Result.SUCCESS, "更新其他账单成功"); + } + } + + + @Override + public void deleteById(Long id) { + wxBillOtherDepositMapper.deleteByPrimaryKey(id); + } + + @Transactional(rollbackFor = {Exception.class}) + @Override + public ResultData updatePaid(Long id) { + WxBillOtherDeposit wxBillOtherDeposit = wxBillOtherDepositMapper.selectByPrimaryKey(id); + if (wxBillOtherDeposit == null) { + return new ResultData(ErrorCode.BILL_ROUTINE_IS_NOT_FOUND); + } + wxBillOtherDeposit.setStatus(EnumBillDailyStatus.PAID.getCode()); + Date d = new Date(); + wxBillOtherDeposit.setPayDate(d); + wxBillOtherDeposit.setUpdatetime(d); + try { + wxBillOtherDepositMapper.updateByPrimaryKeySelective(wxBillOtherDeposit); + } catch (Exception e) { + logger.error("其他押金账单结单失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), e.getMessage()); + } + return new ResultData(Result.SUCCESS, "其他押金账单结单成功"); + } + + +} diff --git a/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml b/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml index e05eb80e5..1ca519175 100644 --- a/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml @@ -5,20 +5,36 @@ @@ -38,19 +56,31 @@ select count(bill.id) owncount,IFNULL(sum(bill.owe),0) owe from ( - select id,merchant_id,shop_id,tenant_id,1 bill_type_value,'租金' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status from wx_bill_rent + select id,merchant_id,shop_id,tenant_id,1 bill_type_value,'租金' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,rent_shop_type from wx_bill_rent union - select id,merchant_id,shop_id,tenant_id,2 bill_type_value,'租赁押金' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status from wx_bill_rent_deposit + select id,merchant_id,shop_id,tenant_id,2 bill_type_value,'租赁押金' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,rent_shop_type from + wx_bill_rent_deposit union - select id,merchant_id,shop_id,tenant_id,3 bill_type_value,'物业费' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status from wx_bill_property + select id,merchant_id,shop_id,tenant_id,3 bill_type_value,'物业费' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,rent_shop_type from + wx_bill_property union - select id,merchant_id,shop_id,tenant_id,4 bill_type_value,'物业押金' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status from wx_bill_property_deposit + select id,merchant_id,shop_id,tenant_id,4 bill_type_value,'物业押金' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,rent_shop_type from + wx_bill_property_deposit union - select id,merchant_id,shop_id,tenant_id,5 bill_type_value,'水费' bill_type,0 as need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status from wx_bill_daily where type=1 + select id,merchant_id,shop_id,tenant_id,5 bill_type_value,'水费' bill_type,0 as + need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,rent_shop_type from wx_bill_daily where + type=1 union - select id,merchant_id,shop_id,tenant_id,6 bill_type_value,'电费' bill_type,0 as need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status from wx_bill_daily where type=2 + select id,merchant_id,shop_id,tenant_id,6 bill_type_value,'电费' bill_type,0 as + need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,rent_shop_type from wx_bill_daily where + type=2 union - select id,merchant_id,shop_id,tenant_id,7 bill_type_value,'其他' bill_type,0 as need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status from wx_bill_other + select id,merchant_id,shop_id,tenant_id,7 bill_type_value,'其他' bill_type,0 as + need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,rent_shop_type from wx_bill_other ) bill where bill.tenant_id=#{tenantId} and bill.status=#{status} @@ -59,25 +89,39 @@ and date_format(bill.receive_date,'%Y-%m')=#{month} - + + and bill.rent_shop_type = #{rentShopType} + @@ -94,20 +140,35 @@ select bill.id,bill.merchant_id merchantId,bill.shop_id shopId,bill.bill_type_value billTypeValue,bill.bill_type billType,bill.need_pay needPay, bill.receive_pay receivePay,bill.pay,bill.owe,bill.receive_date receiveDate,bill.pay_date payDate,bill.expired_day expiredDay,bill.status, bill.tenant_id tenantId,m.name merchantName,s.shop_number shopNumber,bill.starttime,bill.endtime,bill.name,pb.pay_bill_status payBillStatus, - pb.pay_time_end tradeTime,pb.transaction_id transactionId,pb.pay_amount payAmount from ( - select id,merchant_id,shop_id,tenant_id,'租金' name,1 bill_type_value,'租金' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime from wx_bill_rent - union - select id,merchant_id,shop_id,tenant_id,'租赁押金' name,2 bill_type_value,'租赁押金' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime from wx_bill_rent_deposit - union - select id,merchant_id,shop_id,tenant_id,'物业费' name,3 bill_type_value,'物业费' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime from wx_bill_property - union - select id,merchant_id,shop_id,tenant_id,'物业押金' name,4 bill_type_value,'物业押金' bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime from wx_bill_property_deposit - union - select id,merchant_id,shop_id,tenant_id,'水费' name,5 bill_type_value,'水费' bill_type, 0 as need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,'' starttime,'' endtime from wx_bill_daily where type=1 - union - select id,merchant_id,shop_id,tenant_id,'电费' name,6 bill_type_value,'电费' bill_type,0 as need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,'' starttime,'' endtime from wx_bill_daily where type=2 - union - select id,merchant_id,shop_id,tenant_id,name,7 bill_type_value,'其他' bill_type,0 as need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,'' starttime,'' endtime from wx_bill_other + pb.pay_time_end tradeTime,pb.transaction_id transactionId,pb.pay_amount payAmount,bill.rent_shop_type + rentShopType from ( + select id,merchant_id,shop_id,tenant_id,'租金' name,1 bill_type_value,'租金' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime,rent_shop_type + from wx_bill_rent + union + select id,merchant_id,shop_id,tenant_id,'租赁押金' name,2 bill_type_value,'租赁押金' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime,rent_shop_type + from wx_bill_rent_deposit + union + select id,merchant_id,shop_id,tenant_id,'物业费' name,3 bill_type_value,'物业费' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime,rent_shop_type + from wx_bill_property + union + select id,merchant_id,shop_id,tenant_id,'物业押金' name,4 bill_type_value,'物业押金' + bill_type,need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,starttime,endtime,rent_shop_type + from wx_bill_property_deposit + union + select id,merchant_id,shop_id,tenant_id,'水费' name,5 bill_type_value,'水费' bill_type, 0 as + need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type + from wx_bill_daily where type=1 + union + select id,merchant_id,shop_id,tenant_id,'电费' name,6 bill_type_value,'电费' bill_type,0 as + need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type + from wx_bill_daily where type=2 + union + select id,merchant_id,shop_id,tenant_id,name,7 bill_type_value,'其他' bill_type,0 as + need_pay,receive_pay,pay,owe,receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type + from wx_bill_other ) bill left join wx_merchant m on bill.merchant_id=m.id left join wx_shop s on bill.shop_id=s.id @@ -144,6 +205,9 @@ and bill.bill_type_value=#{billTypeValue} + + and bill.rent_shop_type = #{rentShopType} + order by bill.merchant_id,bill.status,bill.receive_date desc diff --git a/mallinkService/src/main/resources/mapper/WxBillOtherDepositMapper.xml b/mallinkService/src/main/resources/mapper/WxBillOtherDepositMapper.xml new file mode 100644 index 000000000..34803919e --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxBillOtherDepositMapper.xml @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + `id`,`receive_pay`,`pay`,`receive_date`,`pay_date`,`createtime`,`expired_day`, + `tenant_id`,`owe`,`status`,`is_del`,`merchant_id`,`user_id`,`shop_id`,`updatetime`,`name`,`comments`, + `rent_shop_type` + + + + where 1 = 1 + and `id` = #{id} + and `receive_pay` = #{receivePay} + and `pay` = #{pay} + and `receive_date` = #{receiveDate} + and `pay_date` = #{payDate} + and `createtime` = #{createtime} + and `expired_day` = #{expiredDay} + and `tenant_id` = #{tenantId} + and `owe` = #{owe} + and `status` = #{status} + and `is_del` = #{isDel} + and `merchant_id` = #{merchantId} + and `user_id` = #{userId} + and `shop_id` = #{shopId} + and `updatetime` = #{updatetime} + and `name` = #{name} + and `rent_shop_type` = #{rentShopType} + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + update wx_bill_other_deposit set status=#{notPaid},expired_day=DATEDIFF(now(),receive_date) + where tenant_id=#{tenantId} and status!=#{paid} and DATEDIFF(now(),receive_date)>0 + + + + update wx_bill_other_deposit set status=#{waitPay} where tenant_id=#{tenantId} + and status!=#{paid} and DATEDIFF(now(),receive_date) <=0 + + + +