From 4d387a9a76fb999f517ba9c8400b093a0f96edcb Mon Sep 17 00:00:00 2001 From: winter Date: Wed, 24 Jul 2024 15:22:54 +0800 Subject: [PATCH] fix --- .../market/WxFinanceController.java | 63 ++++++++- .../resources/db/migration/V202407018.sql | 55 ++++++++ .../iformall/domain/po/WxFinanceAdvance.java | 64 +++++++++ .../iformall/domain/po/WxFinanceReceive.java | 50 +++++++ .../domain/po/WxFinanceReceiveBill.java | 43 ++++++ .../com/iformall/domain/po/WxMerchant.java | 4 + .../enums/EnumFinanceReceiveStatus.java | 38 ++++++ .../mapper/WxFinanceAdvanceMapper.java | 19 +++ .../mapper/WxFinanceReceiveBillMapper.java | 16 +++ .../mapper/WxFinanceReceiveMapper.java | 18 +++ .../iformall/service/WxFinanceService.java | 13 ++ .../com/iformall/service/WxShopService.java | 4 +- .../impl/WxCashBackActivityServiceImpl.java | 2 +- .../service/impl/WxEnergyServiceImpl.java | 7 +- .../service/impl/WxFinanceServiceImpl.java | 129 +++++++++++++++++- .../service/impl/WxGameServiceImpl.java | 1 - .../service/impl/WxMerchantServiceImpl.java | 8 ++ .../impl/WxRaffleActivityServiceImpl.java | 2 +- .../service/impl/WxShopServiceImpl.java | 18 ++- .../mapper/WxFinanceAdvanceMapper.xml | 68 +++++++++ .../mapper/WxFinanceReceiveBillMapper.xml | 60 ++++++++ .../mapper/WxFinanceReceiveMapper.xml | 63 +++++++++ 22 files changed, 730 insertions(+), 15 deletions(-) create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxFinanceAdvance.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveBill.java create mode 100644 mallinkService/src/main/java/com/iformall/enums/EnumFinanceReceiveStatus.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxFinanceAdvanceMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveBillMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveMapper.java create mode 100644 mallinkService/src/main/resources/mapper/WxFinanceAdvanceMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxFinanceReceiveBillMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java index 67a28f101..8b0672e7e 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java @@ -6,7 +6,9 @@ import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; import com.iformall.domain.po.WxBillPayWay; import com.iformall.domain.po.WxEnergyFees; +import com.iformall.domain.po.WxFinanceAdvance; import com.iformall.domain.po.WxFinanceAdvanceType; +import com.iformall.domain.po.WxFinanceReceive; import com.iformall.domain.po.base.BaseEntity; import com.iformall.enums.EnumBillAllType; import com.iformall.enums.EnumYesOrNo; @@ -46,18 +48,13 @@ public class WxFinanceController extends BaseController { */ @GetMapping("billTypes") public ResultData billTypes() { - Map tmap = new HashMap(); + Map tmap = new HashMap(); for (EnumBillAllType t : EnumBillAllType.getOperateNotEnergyTypes()) { - tmap.put(t.getCode(), t.getMessage()); + tmap.put(t.getCode(), t); } return new ResultData(tmap); } - @GetMapping("billTypeIsFixedPrice") - public ResultData billTypeIsFixedPrice(Integer billType) { - return new ResultData(EnumBillAllType.getEnum(billType).isFixedPrice()); - } - @ApiOperation("费用科目列表") @GetMapping("feesList") @ApiImplicitParams({ @@ -151,4 +148,56 @@ public class WxFinanceController extends BaseController { return new ResultData(); } + @ApiOperation("预收记录列表") + @GetMapping("advanceList") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), + }) + public ResultData advanceList(@ModelAttribute WxFinanceAdvance record, Integer pageNum, Integer pageSize) { + record.updateTenantInfo(getTenantInfo()); + record.setSortColumns(BaseEntity.SortField.CreateTime_DESC); + PageInfo page = wxFinanceService.advanceListAsPage(record, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("预收记录新增修改") + @PostMapping("saveAdvance") + public ResultData saveAdvance(@RequestBody WxFinanceAdvance record) { + record.updateTenantInfo(getTenantInfo()); + wxFinanceService.saveOrUpdateAdvance(record,this.getUser()); + return new ResultData(); + } + + @PostMapping("advanceUpdateIsDel") + public ResultData advanceUpdateIsDel(@RequestBody WxFinanceAdvance record) { + record.updateTenantInfo(getTenantInfo()); + wxFinanceService.updateAdvanceIsDel(record); + return new ResultData(); + } + + @ApiOperation("新增收款单") + @PostMapping("createReceive") + public ResultData createReceive(@RequestBody WxFinanceAdvanceType record) { + record.updateTenantInfo(getTenantInfo()); + if (new BigDecimal(record.getRate()).compareTo(new BigDecimal(100)) > 0 ) { + return new ResultData(Result.ERROR,"冲抵比例不能超过100"); + } + wxFinanceService.saveOrUpdateAdvanceType(record); + return new ResultData(); + } + +// @ApiOperation("收款记录列表") +// @GetMapping("receiveList") +// @ApiImplicitParams({ +// @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), +// @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), +// }) +// public ResultData receiveList(@ModelAttribute WxFinanceReceive record, Integer pageNum, Integer pageSize) { +// record.updateTenantInfo(getTenantInfo()); +// record.setSortColumns(BaseEntity.SortField.CreateTime_DESC); +// PageInfo page = wxFinanceService.receiveListAsPage(record, pageNum, pageSize); +// return new ResultData(page); +// } + } diff --git a/mallinkAdmin/src/main/resources/db/migration/V202407018.sql b/mallinkAdmin/src/main/resources/db/migration/V202407018.sql index 33db037c3..39a4a3f09 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202407018.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202407018.sql @@ -2618,3 +2618,58 @@ insert into wx_energy_fees_89 (id,tenant_id,parent_tenant_id,create_time,upda (3,'789',null,now(),now(),0,'运营管理费',1,1,0), (5,'789',null,now(),now(),0,'物业费',1,1,0), (6,'789',null,now(),now(),0,'物业押金',1,1,1); + +CREATE TABLE `wx_finance_receive` ( + `id` bigint(20) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', + `parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID', + `create_time` timestamp NULL DEFAULT NULL, + `update_time` timestamp NULL DEFAULT NULL, + `total_money` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '总支付金额', + `status` int(3) NOT NULL COMMENT '状态', + `create_by` bigint(20) DEFAULT NULL COMMENT '创建人', + `create_by_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人名称', + `update_by` bigint(20) DEFAULT NULL COMMENT '更新人', + `update_by_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人名称', + `money_detail` text COLLATE utf8mb4_unicode_ci COMMENT '收款详细', + `merchant_id` bigint(20) NOT NULL COMMENT '商户编号', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + +CREATE TABLE `wx_finance_receive_bill` ( + `id` bigint(20) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', + `parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID', + `create_time` timestamp NULL DEFAULT NULL, + `update_time` timestamp NULL DEFAULT NULL, + `bill_id` bigint(20) NOT NULL COMMENT '账单id', + `bill_type` int(3) NOT NULL COMMENT '账单类型', + `fees_id` bigint(20) NOT NULL COMMENT '费用科目', + `pay_way` bigint(20) NOT NULL COMMENT '支付方式', + `receive_id` bigint(20) NOT NULL COMMENT '收款编号', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + + +CREATE TABLE `wx_finance_advance` ( + `id` bigint(20) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', + `parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID', + `create_time` timestamp NULL DEFAULT NULL, + `update_time` timestamp NULL DEFAULT NULL, + `is_del` int(1) NOT NULL DEFAULT '0', + `advance_type_id` bigint(20) NOT NULL COMMENT '类型id', + `merchant_id` bigint(20) NOT NULL COMMENT '商户编码', + `create_by` bigint(20) DEFAULT NULL COMMENT '创建人', + `create_by_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `update_by` bigint(20) DEFAULT NULL, + `update_by_name` bigint(100) DEFAULT NULL, + `money` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '金额', + `remain_money` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '剩余金额', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + + diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceAdvance.java b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceAdvance.java new file mode 100644 index 000000000..afdea4b3a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceAdvance.java @@ -0,0 +1,64 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; +import java.util.Date; + +/** + */ +@TableName(value = "wx_finance_advance") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxFinanceAdvance extends TenantEntity { + + private static final long serialVersionUID = 7009117540201976664L; + + @io.swagger.annotations.ApiModelProperty(value="id",name="id") + private Long id; + + @io.swagger.annotations.ApiModelProperty(value="createTime",name="createTime") + private Date createTime; + @TableField(exist = false) + private Date createBegin; + @TableField(exist = false) + private Date createEnd; + + @io.swagger.annotations.ApiModelProperty(value="updateTime",name="updateTime") + private Date updateTime; + + @io.swagger.annotations.ApiModelProperty(value = "isDel", name = "isDel") + private Integer isDel; + + @io.swagger.annotations.ApiModelProperty(value="advanceTypeId",name="advanceTypeId") + private Long advanceTypeId; + @TableField(exist = false) + private String advanceTypeName; + + @io.swagger.annotations.ApiModelProperty(value="advanceTypeId",name="advanceTypeId") + private Long merchantId; + @TableField(exist = false) + private String merchantName; + @TableField(exist = false) + private String shopNumber; + + @io.swagger.annotations.ApiModelProperty(value="createBy",name="createBy") + private Long createBy; + @io.swagger.annotations.ApiModelProperty(value="createByName",name="createByName") + private String createByName; + @io.swagger.annotations.ApiModelProperty(value="updateBy",name="updateBy") + private Long updateBy; + @io.swagger.annotations.ApiModelProperty(value="updateByName",name="updateByName") + private String updateByName; + + @io.swagger.annotations.ApiModelProperty(value="预充总金额",name="money") + private String money; + + @io.swagger.annotations.ApiModelProperty(value="剩余总金额",name="remainMoney") + private String remainMoney; + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java new file mode 100644 index 000000000..6f0a0d693 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java @@ -0,0 +1,50 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; +import java.util.Date; +/** + */ +@TableName(value = "wx_finance_receive") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxFinanceReceive extends TenantEntity { + + private static final long serialVersionUID = 7009117540201976664L; + + @io.swagger.annotations.ApiModelProperty(value="id",name="id") + private Long id; + + @io.swagger.annotations.ApiModelProperty(value="createTime",name="createTime") + private Date createTime; + + @io.swagger.annotations.ApiModelProperty(value="updateTime",name="updateTime") + private Date updateTime; + + @io.swagger.annotations.ApiModelProperty(value = "收款总金额", name = "totalMoney") + private String totalMoney; + + @io.swagger.annotations.ApiModelProperty(value = "状态EnumFinanceReceiveStatus", name = "status") + private Integer status; + + @io.swagger.annotations.ApiModelProperty(value="createBy",name="createBy") + private Long createBy; + @io.swagger.annotations.ApiModelProperty(value="createByName",name="createByName") + private String createByName; + + @io.swagger.annotations.ApiModelProperty(value="updateBy",name="updateBy") + private Long updateBy; + @io.swagger.annotations.ApiModelProperty(value="updateByName",name="updateByName") + private String updateByName; + + @io.swagger.annotations.ApiModelProperty(value = "moneyDetail", name = "moneyDetail") + private String moneyDetail; + + @io.swagger.annotations.ApiModelProperty(value = "merchantId", name = "merchantId") + private Long merchantId; + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveBill.java b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveBill.java new file mode 100644 index 000000000..62129ce32 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveBill.java @@ -0,0 +1,43 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; +import java.util.Date; +/** + */ +@TableName(value = "wx_finance_receive_bill") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxFinanceReceiveBill extends TenantEntity { + + private static final long serialVersionUID = 7009117540201976664L; + + @io.swagger.annotations.ApiModelProperty(value="id",name="id") + private Long id; + + @io.swagger.annotations.ApiModelProperty(value="createTime",name="createTime") + private Date createTime; + + @io.swagger.annotations.ApiModelProperty(value="updateTime",name="updateTime") + private Date updateTime; + + @io.swagger.annotations.ApiModelProperty(value = "收款编号", name = "receiveId") + private Long receiveId; + + @io.swagger.annotations.ApiModelProperty(value = "账单编号", name = "billId") + private Long billId; + + @io.swagger.annotations.ApiModelProperty(value = "账单类型EnumBillAllType", name = "billType") + private Integer billType; + + @io.swagger.annotations.ApiModelProperty(value="科目编号",name="feesId") + private Long feesId; + + @io.swagger.annotations.ApiModelProperty(value="支付方式",name="payWay") + private Long payWay; + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java index 939bfa3b8..8a1044d73 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java @@ -464,5 +464,9 @@ public class WxMerchant extends TenantEntity { @TableField(exist = false) private String billCompleteRemark; + @TableField(exist = false) + private String shopNumber; + @TableField(exist = false) + private Long shopId; } diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumFinanceReceiveStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumFinanceReceiveStatus.java new file mode 100644 index 000000000..4795d6147 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumFinanceReceiveStatus.java @@ -0,0 +1,38 @@ +package com.iformall.enums; + + +/** + */ + +public enum EnumFinanceReceiveStatus { + + NORMAL(1,"正常"), + INVALID(2,"作废"), + SETOFF(3, "红冲"), + ; + + public static EnumFinanceReceiveStatus getEnum(Integer code) { + for (EnumFinanceReceiveStatus value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumFinanceReceiveStatus(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/WxFinanceAdvanceMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxFinanceAdvanceMapper.java new file mode 100644 index 000000000..3f282c414 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxFinanceAdvanceMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxFinanceAdvance; + +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxFinanceAdvanceMapper extends CommonMapper { + + List findList(WxFinanceAdvance wxBillRent); + + WxFinanceAdvance selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + + void setIsDel(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("isDel")Integer isDel); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveBillMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveBillMapper.java new file mode 100644 index 000000000..bad6a45bc --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveBillMapper.java @@ -0,0 +1,16 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxFinanceReceiveBill; +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxFinanceReceiveBillMapper extends CommonMapper { + + List findList(WxFinanceReceiveBill wxBillRent); + + WxFinanceReceiveBill selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveMapper.java new file mode 100644 index 000000000..8ba94cbcc --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveMapper.java @@ -0,0 +1,18 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxFinanceReceive; +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxFinanceReceiveMapper extends CommonMapper { + + List findList(WxFinanceReceive wxBillRent); + + WxFinanceReceive selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + + void setIsDel(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("isDel")Integer isDel); + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java b/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java index 214b7eadb..94f7ef6ad 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java @@ -2,8 +2,11 @@ package com.iformall.service; import java.util.Map; import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.MallUserInfo; import com.iformall.domain.po.WxBillPayWay; +import com.iformall.domain.po.WxFinanceAdvance; import com.iformall.domain.po.WxFinanceAdvanceType; +import com.iformall.domain.po.WxFinanceReceive; import com.iformall.domain.po.base.TenantEntity; /** */ @@ -22,4 +25,14 @@ public interface WxFinanceService { WxFinanceAdvanceType getAdvanceTypeById(TenantEntity tenantEntity,Long id); void saveOrUpdateAdvanceType(WxFinanceAdvanceType record); void updateAdvanceTypeIsDel(WxFinanceAdvanceType record); + Map getAdvanceTypeMap(WxFinanceAdvanceType record); + + //预收款 + PageInfo advanceListAsPage(WxFinanceAdvance record, Integer pageIndex, Integer pageSize); + WxFinanceAdvance getAdvanceById(TenantEntity tenantEntity,Long id); + void saveOrUpdateAdvance(WxFinanceAdvance record,MallUserInfo user); + void updateAdvanceIsDel(WxFinanceAdvance record); + + //收款 + PageInfo receiveListAsPage(WxFinanceReceive record, Integer pageIndex, Integer pageSize); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxShopService.java b/mallinkService/src/main/java/com/iformall/service/WxShopService.java index f59e69441..016c6282b 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxShopService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxShopService.java @@ -111,8 +111,10 @@ public interface WxShopService { Map findShopMap(WxShop wxShop); - Map getMerchantShopNumberMap(TenantEntity tenantEntity,List merchantIds); + Map getMerchantShopNumberMap(TenantEntity tenantEntity,List merchantIds,Integer isDel); List getFloorBuildShopIds(TenantEntity tenantEntity,String floorRule,Long building,Long floor,Integer shopDel) ; + + List getMerchantIds(WxShop wxShop); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java index 4c1698b93..3737f5811 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java @@ -188,7 +188,7 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService Map merchantShopNumberMap = null; if (null != midList && midList.size() > 0 ) { - merchantShopNumberMap = wxShopService.getMerchantShopNumberMap(tenantEntity, midList); + merchantShopNumberMap = wxShopService.getMerchantShopNumberMap(tenantEntity, midList,EnumYesOrNo.NO.getCode()); } for (WxCashBackActivityRecord _r : recordList) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java index 65afc239a..ff034c673 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java @@ -385,10 +385,15 @@ public class WxEnergyServiceImpl implements WxEnergyService { tq.updateTenantInfo(record); tq.setId(record.getTimeId()); WxEnergyFeesTime time = this.getFeesTimeById(tq); + if (null == time ) { + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"区间未查询到"); + } // record.setStartTime(time.getStartTime()); // record.setEndTime(time.getEndTime()); WxEnergyMeter meter = this.getMeterById(record, record.getMeterId()); - + if (null == meter ) { + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"能源表未查询到"); + } if (time.getType().intValue() != meter.getType().intValue()) { throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"选择的表类型和区间不匹配"); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java index 446403da2..20b89b72b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java @@ -30,12 +30,26 @@ public class WxFinanceServiceImpl implements WxFinanceService { @Autowired WxFinanceAdvanceTypeMapper wxFinanceAdvanceTypeMapper; @Autowired + WxFinanceAdvanceMapper wxFinanceAdvanceMapper; + @Autowired WxFinanceAdvanceTypeFeesMapper wxFinanceAdvanceTypeFeesMapper; - + @Autowired + WxFinanceReceiveMapper wxFinanceReceiveMapper; + @Autowired + WxFinanceReceiveBillMapper wxFinanceReceiveBillMapper; + @Lazy @Autowired WxEnergyService wxEnergyService; + @Lazy + @Autowired + WxMerchantService wxMerchantService; + @Lazy + @Autowired + WxShopService wxShopService; + + @Override public PageInfo payWayListAsPage(WxBillPayWay record, Integer pageIndex, Integer pageSize) { PageInfo page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxBillPayWayMapper.findList(record)); @@ -180,5 +194,118 @@ public class WxFinanceServiceImpl implements WxFinanceService { public void updateAdvanceTypeIsDel(WxFinanceAdvanceType record) { wxFinanceAdvanceTypeMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel()); } + + @Override + public Map getAdvanceTypeMap(WxFinanceAdvanceType record) { + List list = wxFinanceAdvanceTypeMapper.findList(record); + if (null != list && list.size() > 0 ) { + Map retMap = new HashMap(); + for (int i = 0 ; i advanceListAsPage(WxFinanceAdvance record, Integer pageIndex, Integer pageSize) { + PageInfo page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxFinanceAdvanceMapper.findList(record)); + if (null != page && null != page.getList()) { + WxFinanceAdvanceType fat = new WxFinanceAdvanceType(); + fat.updateTenantInfo(record); + Map advanceTypMap = this.getAdvanceTypeMap(fat); + + + List merchantIdList = new ArrayList(); + for (int i = 0 ; i < page.getList().size() ; i++) { + WxFinanceAdvance at = page.getList().get(i); + if (!merchantIdList.contains(at.getMerchantId())) { + merchantIdList.add(at.getMerchantId()); + } + } + WxMerchant mq = new WxMerchant(); + mq.updateTenantInfo(record); + mq.setIds(merchantIdList); + Map merchantMap = wxMerchantService.findMerchantMap(mq); + Map shopNumberMap = wxShopService.getMerchantShopNumberMap(record, merchantIdList, null); + for (int i = 0 ; i < page.getList().size() ; i++) { + WxFinanceAdvance at = page.getList().get(i); + if (null != advanceTypMap) { + WxFinanceAdvanceType wfat = advanceTypMap.get(at.getAdvanceTypeId()); + if (null != wfat) { + at.setAdvanceTypeName(wfat.getName()); + } + } + if (null != merchantMap) { + WxMerchant m = merchantMap.get(at.getMerchantId()); + if (null != m) { + at.setMerchantName(m.getName()); + } + } + if (null != shopNumberMap) { + String sn = shopNumberMap.get(at.getMerchantId()); + at.setShopNumber(sn); + } + } + } + return page; + } + + @Override + public WxFinanceAdvance getAdvanceById(TenantEntity tenantEntity, Long id) { + return wxFinanceAdvanceMapper.selectById(id, tenantEntity.getTenantId()); + } + + @Override + public void saveOrUpdateAdvance(WxFinanceAdvance record,MallUserInfo user) { + Date date = new Date(); + if (null == record.getMerchantId()) { + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "请选择商户"); + } + + if (null == record.getAdvanceTypeId()) { + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "请选择商户"); + } + + if (record.getId() == null) { + final IdWorker idWorker = IdWorker.get(); + record.setId(idWorker.nextId()); + record.setCreateTime(date); + record.setUpdateTime(date); + record.setCreateBy(user.getId()); + record.setCreateByName(user.getName()); + record.setUpdateBy(user.getId()); + record.setUpdateByName(user.getName()); + try { + wxFinanceAdvanceMapper.insert(record); + } catch (Exception e) { + logger.error("保存失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } + } else { + record.setUpdateBy(user.getId()); + record.setUpdateByName(user.getName()); + record.setUpdateTime(date); + wxFinanceAdvanceMapper.updateById(record); + + } + } + + @Override + public void updateAdvanceIsDel(WxFinanceAdvance record) { + // TODO Auto-generated method stub + + } + + + @Override + public PageInfo receiveListAsPage(WxFinanceReceive record, Integer pageIndex, Integer pageSize) { + PageInfo page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxFinanceReceiveMapper.findList(record)); + return page; + } + + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java index 5fc600668..8db7cc74b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java @@ -443,7 +443,6 @@ public class WxGameServiceImpl implements WxGameService { wxGameMapper.deleteById(id); } - @Transactional(rollbackFor = Exception.class) @Override public ResultData luckDraw(Long gameId,Long userId,Integer userCredit){ diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java index c2311a94c..337b8bc8d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -1267,6 +1267,14 @@ public class WxMerchantServiceImpl implements WxMerchantService { merchantIds.addAll(floorMerchantIds); } } + + if (StringUtils.isNotBlank(record.getShopNumber()) || null != record.getShopId()) { + WxShop shop = new WxShop(); + shop.updateTenantInfo(record); + shop.setShopNumber(record.getShopNumber()); + shop.setId(record.getShopId()); + wxShopService.getMerchantIds(shop); + } if (merchantIds.size() > 0 ) { record.setIds(merchantIds); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java index cac4c5702..5bddf5694 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java @@ -200,7 +200,7 @@ public class WxRaffleActivityServiceImpl implements WxRaffleActivityService { Map merchantShopNumberMap = null; if (null != midList && midList.size() > 0 ) { - merchantShopNumberMap = wxShopService.getMerchantShopNumberMap(tenantEntity, midList); + merchantShopNumberMap = wxShopService.getMerchantShopNumberMap(tenantEntity, midList,EnumYesOrNo.NO.getCode()); } for (WxRaffleActivityRecord _r : recordList) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java index 629a7749a..3eaa0dfdf 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java @@ -732,15 +732,16 @@ public class WxShopServiceImpl implements WxShopService { } @Override - public Map getMerchantShopNumberMap(TenantEntity tenantEntity,List merchantIds) { + public Map getMerchantShopNumberMap(TenantEntity tenantEntity,List merchantIds,Integer isDel) { WxMerchantShop merchantShopQ = new WxMerchantShop(); merchantShopQ.updateTenantInfo(tenantEntity); merchantShopQ.setMerchantIds(merchantIds); - merchantShopQ.setIsDel(0); + merchantShopQ.setIsDel(isDel); List merchantShopList = wxMerchantShopMapper.findList(merchantShopQ); WxShop sq = new WxShop(); sq.updateTenantInfo(tenantEntity); + sq.setIsDel(isDel); Map shopMap = this.findShopMap(sq); if (null != merchantShopList && merchantShopList.size() > 0) { Map retMap = new HashMap(); @@ -784,4 +785,17 @@ public class WxShopServiceImpl implements WxShopService { } return null; } + + @Override + public List getMerchantIds(WxShop wxShop) { + List shopIds = this.getShopIds(wxShop); + if (null == shopIds || shopIds.size() <= 0 ) { + return null; + } + WxMerchantShop merchantShopQ = new WxMerchantShop(); + merchantShopQ.updateTenantInfo(wxShop); + merchantShopQ.setIsDel(wxShop.getIsDel()); + merchantShopQ.setShopIdList(shopIds); + return wxMerchantShopMapper.findMerchantIdList(merchantShopQ); + } } diff --git a/mallinkService/src/main/resources/mapper/WxFinanceAdvanceMapper.xml b/mallinkService/src/main/resources/mapper/WxFinanceAdvanceMapper.xml new file mode 100644 index 000000000..88d450cc3 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxFinanceAdvanceMapper.xml @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`advance_type_id`,`merchant_id`,`create_by`, + `create_by_name`,`update_by`,`update_by_name`,`money`,`remain_money` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `is_del` = #{isDel} + and `advance_type_id` = #{advanceTypeId} + and `merchant_id` = #{merchantId} + and create_by_name like concat('%', #{createByName},'%') + and `create_time` >= #{createBegin} + and `create_time` <= #{createEnd} + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + update wx_finance_advance set is_del = #{isDel} where id = #{id} and `tenant_id` = #{tenantId} + + + + diff --git a/mallinkService/src/main/resources/mapper/WxFinanceReceiveBillMapper.xml b/mallinkService/src/main/resources/mapper/WxFinanceReceiveBillMapper.xml new file mode 100644 index 000000000..84b91769b --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxFinanceReceiveBillMapper.xml @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`bill_id`,`bill_type`,`fees_id`, + `pay_way`,`receive_id` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `bill_id` = #{billId} + and `bill_type` = #{billType} + and `fees_id` = #{feesId} + and `pay_way` = #{payWay} + and `receive_id` = #{receiveId} + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml b/mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml new file mode 100644 index 000000000..f5247ea10 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`total_money`,`status`,`money_detail`, + `create_by`,`create_by_name`,`update_by`,`update_by_name`,`merchant_id` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `status` = #{status} + and `merchantId` = #{merchant_id} + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + update wx_finance_receive set is_del = #{isDel} where id = #{id} and `tenant_id` = #{tenantId} + + + +