Browse Source

核销支持情况查询

v1.0
Yen 2 years ago
parent
commit
d25f19a17a
  1. 1
      src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java
  2. 27
      src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationDataController.java
  3. 65
      src/main/java/com/qs/serve/modules/vtb/entity/dto/VtbVerificationDTO.java
  4. 38
      src/main/java/com/qs/serve/modules/vtb/entity/so/VtbVerificationCheckSo.java
  5. 2
      src/main/resources/mapper/bir/BirActivityCenterGoodsMapper.xml
  6. 58
      src/main/resources/mapper/vtb/VtbVerReportMapper.xml

1
src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java

@ -70,7 +70,6 @@ public class BmsSupplierAddressApi {
} }
/** /**
* 根据ID更新 * 根据ID更新
* @param param * @param param

27
src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationDataController.java

@ -3,7 +3,9 @@ package com.qs.serve.modules.vtb.controller;
import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.dto.R;
import com.qs.serve.modules.vtb.entity.dto.VtbActivityCheckDTO; import com.qs.serve.modules.vtb.entity.dto.VtbActivityCheckDTO;
import com.qs.serve.modules.vtb.entity.dto.VtbVerificationDTO;
import com.qs.serve.modules.vtb.entity.so.VtbActivityCheckSo; import com.qs.serve.modules.vtb.entity.so.VtbActivityCheckSo;
import com.qs.serve.modules.vtb.entity.so.VtbVerificationCheckSo;
import com.qs.serve.modules.vtb.mapper.VtbVerReportMapper; import com.qs.serve.modules.vtb.mapper.VtbVerReportMapper;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -14,6 +16,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
/** /**
* 核销数据
* @author YenHex * @author YenHex
* @since 2023/9/4 * @since 2023/9/4
*/ */
@ -25,8 +28,13 @@ public class VtbVerificationDataController {
private final VtbVerReportMapper verReportMapper; private final VtbVerReportMapper verReportMapper;
/**
* 获取活动的核销情况
* @param query
* @return
*/
@GetMapping("pageActivityCheck") @GetMapping("pageActivityCheck")
public R<?> getActivityData(VtbActivityCheckSo query){ public R<PageVo<VtbActivityCheckDTO>> getActivityData(VtbActivityCheckSo query){
Long count = verReportMapper.countActivityCheck(query); Long count = verReportMapper.countActivityCheck(query);
if(count>0){ if(count>0){
List<VtbActivityCheckDTO> list = verReportMapper.pageActivityCheck(query); List<VtbActivityCheckDTO> list = verReportMapper.pageActivityCheck(query);
@ -38,6 +46,23 @@ public class VtbVerificationDataController {
return R.byEmptyList(); return R.byEmptyList();
} }
/**
* 获取核销的支付信息
* @param query
* @return
*/
@GetMapping("pageVerificationCheck")
public R<?> getVerificationData(VtbVerificationCheckSo query){
Long count = verReportMapper.countVerificationCheck(query);
if(count>0){
List<VtbVerificationDTO> list = verReportMapper.pageVerificationCheck(query);
PageVo<VtbVerificationDTO> page = new PageVo<>();
page.initPageByTotal(count);
page.setList(list);
return R.ok(page);
}
return R.byEmptyList();
}
} }

65
src/main/java/com/qs/serve/modules/vtb/entity/dto/VtbVerificationDTO.java

@ -15,54 +15,29 @@ import java.time.LocalDateTime;
@Data @Data
public class VtbVerificationDTO { public class VtbVerificationDTO {
private String costApplyId; /** 核销编码 */
private String verificationCode;
/** 费用编码 */ /** 供应商编码 */
private String costApplyCode;
private String costTitle;
/** 客户id */
private String supplierId;
private String supplierCode; private String supplierCode;
/** 供应商 */
private String supplierName; private String supplierName;
/** 支付方式 */
/** 提交实际 */ private String wayTitle;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") /** 核销金额 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private String amount;
private LocalDateTime submitTime; /** 支付金额 */
private String payAmt;
/** 不再支付金额 */
private String notPayAmt;
/** 费用编码 */
private String costApplyCode;
/** 费用主题 */
private String chargeTheme;
/** 费用申请时间 */
private String submitTime;
/** 活动编码 */ /** 活动编码 */
private String activityCode; private String activityCode;
/** 活动内容 */
private String actTitle;
private String activityTitle;
private String activityAmount;
/** 核销金额 */
private String checkAmount;
/** 核销完成 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime checkFinishedDate;
/** 释放标识 */
private Integer releaseFlag;
/** 释放金额 */
private BigDecimal releaseAmount;
/** 释放时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime releaseTime;
/** 释放人员id */
private String releaseUserId;
/** 释放人员 */
private String releaseUserName;
} }

38
src/main/java/com/qs/serve/modules/vtb/entity/so/VtbVerificationCheckSo.java

@ -1,8 +1,46 @@
package com.qs.serve.modules.vtb.entity.so; package com.qs.serve.modules.vtb.entity.so;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
/** /**
* @author YenHex * @author YenHex
* @since 2023/9/4 * @since 2023/9/4
*/ */
@Data
public class VtbVerificationCheckSo { public class VtbVerificationCheckSo {
/** 核销编码 */
private String verificationCode;
/** 供应商编码 */
private String supplierCode;
/** 供应商 */
private String supplierName;
/** 费用编码 */
private String costApplyCode;
/** 费用主题 */
private String chargeTheme;
/** 活动编码 */
private String activityCode;
/** 活动内容 */
private String actTitle;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime startCheckTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime endCheckTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime startPayTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime endPayTime;
} }

2
src/main/resources/mapper/bir/BirActivityCenterGoodsMapper.xml

@ -133,7 +133,7 @@
</if> </if>
</select> </select>
<select id="selectNoExistCenterGoods" resultType="com.qs.serve.modules.tbs.entity.BirActivityCenterGoods"> <select id="selectNoExistCenterGoods" resultType="com.qs.serve.modules.bir.entity.BirActivityCenterGoods">
select select
bir_activity_center_goods.* bir_activity_center_goods.*
from bir_activity_center_goods from bir_activity_center_goods

58
src/main/resources/mapper/vtb/VtbVerReportMapper.xml

@ -81,11 +81,65 @@
<select id="pageVerificationCheck" resultType="com.qs.serve.modules.vtb.entity.dto.VtbVerificationDTO"> <select id="pageVerificationCheck" resultType="com.qs.serve.modules.vtb.entity.dto.VtbVerificationDTO">
select
vtb.verification_code ,
vtb.supplier_code ,
vtb.supplier_name ,
vtb.way_title ,
vtb.amount ,
pay_item1.pay_amt ,
pay_item2.pay_amt as `not_pay_amt`,
cost.`code` ,
cost.charge_theme ,
cost.submit_time ,
act.activity_code ,
act.act_title
from vtb_verification vtb
left join
(
select pay1.verification_id,sum(pay1.item_pay_amount) as pay_amt
from pay_payment_item pay1
left join pay_payment pm
on pm.id = pay1.payment_id
where pm.cancel_flag= 0 and pay1.del_flag = 0 and pay1.pay_type = 'pay'
<if test="query.startPayTime != null and query.startPayTime != ''"> and pm.create_time &lt;= #{query.startPayTime}</if>
<if test="query.endPayTime != null and query.endPayTime != ''"> and pm.create_time &lt;= #{query.endPayTime}</if>
group by pay1.verification_id
) pay_item1
on pay_item1.verification_id = vtb.id
left join
(
select pay2.verification_id,sum(pay2.item_pay_amount) as pay_amt
from pay_payment_item pay2
left join pay_payment pm
on pm.id = pay2.payment_id
where pm.cancel_flag= 0 and pay2.del_flag = 0 and pay2.pay_type = 'unPay'
<if test="query.startPayTime != null and query.startPayTime != ''"> and pm.create_time &lt;= #{query.startPayTime}</if>
<if test="query.endPayTime != null and query.endPayTime != ''"> and pm.create_time &lt;= #{query.endPayTime}</if>
group by pay2.verification_id
) pay_item2
on pay_item2.verification_id = vtb.id
left join tbs_cost_apply cost on cost.id = vtb.cost_apply_id
left join tbs_activity act on act.id = vtb.activity_id
where
vtb.del_flag = 0
and act.del_flag = 0
and act.cancel_flag = 0
and cost.del_flag = 0
and cost.cancel_flag = 0
<if test="query.actTitle != null and query.actTitle != ''"> and `act`.`act_title` like concat('%',#{query.actTitle},'%')</if>
<if test="query.activityCode != null and query.activityCode != ''"> and `act`.`activity_code` like concat('%',#{query.activityCode},'%')</if>
<if test="query.supplierCode != null and query.supplierCode != ''"> and `act`.`supplier_code` like concat('%',#{query.supplierCode},'%')</if>
<if test="query.supplierName != null and query.supplierName != ''"> and `act`.`supplier_name` like concat('%',#{query.supplierName},'%')</if>
<if test="query.costApplyCode != null and query.costApplyCode != ''"> and `cost`.`code` like concat('%',#{query.costApplyCode},'%')</if>
<if test="query.verificationCode != null and query.verificationCode != ''"> and `cost`.`code` like concat('%',#{query.verificationCode},'%')</if>
<if test="query.chargeTheme != null and query.chargeTheme != ''"> and `cost`.`charge_theme` like concat('%',#{query.chargeTheme},'%')</if>
<if test="query.startCheckTime != null and query.startCheckTime != ''"> and `vtb`.`finished_time` &gt;= #{query.startCheckTime}</if>
<if test="query.startCheckTime != null and query.startCheckTime != ''"> and `vtb`.`finished_time` &lt;= #{query.endCheckTime}</if>
</select> </select>
<select id="countVerificationCheck" resultType="java.lang.Long"> <select id="countVerificationCheck" resultType="java.lang.Long">
select count(1) from vtb_verification
</select> </select>
</mapper> </mapper>

Loading…
Cancel
Save