加价改为0时删除未支付加价记录;查询分销团队,统计项查询

This commit is contained in:
donqi 2022-11-13 23:21:26 +08:00
parent 8243155456
commit be38bd80d9
5 changed files with 123 additions and 16 deletions

View File

@ -73,12 +73,17 @@ public class CustomerController extends BaseController {
for (Customer curCustomer: list) {
// 本月第一天
LocalDate firstDayCurMonth = LocalDate.now().withDayOfMonth(1);
// 今天
LocalDate curDay = LocalDate.now();
// 往前推第7天
LocalDate firstDayCurWeek = LocalDate.now().minusDays(6);
List<AnalyseItem> analyseItems = new ArrayList<AnalyseItem>();
// 客户数
Customer customerParams = new Customer();
customerParams.setCustomerPlace(curCustomer.getCustomerId());
AnalyseItem aItem1 = new AnalyseItem()
.setType(AnalyseItemEnum.CUSTOMER_NUM.getType())
.setTitle(AnalyseItemEnum.CUSTOMER_NUM.getTitle())
.setUnit(AnalyseItemEnum.CUSTOMER_NUM.getUnit())
.setValue(customerService.countCustomer(customerParams));
@ -86,10 +91,25 @@ public class CustomerController extends BaseController {
// 本月绑定客户数
customerParams.setUpdateTimeStart(firstDayCurMonth.atStartOfDay());
AnalyseItem aItem2 = new AnalyseItem()
.setTitle(AnalyseItemEnum.CUSTOMER_NUM_CUR_MONTH.getTitle())
.setUnit(AnalyseItemEnum.CUSTOMER_NUM_CUR_MONTH.getUnit())
.setType(AnalyseItemEnum.CUSTOMER_NUM_ADDED_CUR_MONTH.getType())
.setTitle(AnalyseItemEnum.CUSTOMER_NUM_ADDED_CUR_MONTH.getTitle())
.setUnit(AnalyseItemEnum.CUSTOMER_NUM_ADDED_CUR_MONTH.getUnit())
.setValue(customerService.countCustomer(customerParams));
analyseItems.add(aItem2);
// 团队
AnalyseItem aItem11 = new AnalyseItem()
.setType(AnalyseItemEnum.TEAM_MEMBER_NUM.getType())
.setTitle(AnalyseItemEnum.TEAM_MEMBER_NUM.getTitle())
.setUnit(AnalyseItemEnum.TEAM_MEMBER_NUM.getUnit())
.setValue(aItem1.getValue());
analyseItems.add(aItem11);
// 本月绑定客户数
AnalyseItem aItem12 = new AnalyseItem()
.setType(AnalyseItemEnum.TEAM_MEMBER_ADDED_CUR_MONTH.getType())
.setTitle(AnalyseItemEnum.TEAM_MEMBER_ADDED_CUR_MONTH.getTitle())
.setUnit(AnalyseItemEnum.TEAM_MEMBER_ADDED_CUR_MONTH.getUnit())
.setValue(aItem2.getValue());
analyseItems.add(aItem12);
// 本月订单数及本月订单额
OrderMaster orderParams1 = new OrderMaster();
@ -105,10 +125,12 @@ public class CustomerController extends BaseController {
totalMoneyCurMonth1 = financialsCurMonth1.stream().map(FinancialMaster::getTotalMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
}
AnalyseItem aItem3 = new AnalyseItem()
.setType(AnalyseItemEnum.ORDER_NUM_CUR_MONTH.getType())
.setTitle(AnalyseItemEnum.ORDER_NUM_CUR_MONTH.getTitle())
.setUnit(AnalyseItemEnum.ORDER_NUM_CUR_MONTH.getUnit())
.setValue(ordersCurMonth1 != null ? ordersCurMonth1.size() : 0);
AnalyseItem aItem4 = new AnalyseItem()
.setType(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_MONTH.getType())
.setTitle(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_MONTH.getTitle())
.setUnit(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_MONTH.getUnit())
.setValue(totalMoneyCurMonth1);
@ -130,16 +152,70 @@ public class CustomerController extends BaseController {
totalMoneyCurMonth2 = financialsCurMonth2.stream().map(FinancialMaster::getTotalMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
}
AnalyseItem aItem5 = new AnalyseItem()
.setTitle(AnalyseItemEnum.ORDER_NUM_CUR_MONTH.getTitle())
.setUnit(AnalyseItemEnum.ORDER_NUM_CUR_MONTH.getUnit())
.setType(AnalyseItemEnum.ORDER_NUM_LAST_MONTH.getType())
.setTitle(AnalyseItemEnum.ORDER_NUM_LAST_MONTH.getTitle())
.setUnit(AnalyseItemEnum.ORDER_NUM_LAST_MONTH.getUnit())
.setValue(ordersCurMonth2 != null ? ordersCurMonth2.size() : 0);
AnalyseItem aItem6 = new AnalyseItem()
.setTitle(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_MONTH.getTitle())
.setUnit(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_MONTH.getUnit())
.setType(AnalyseItemEnum.ORDER_TRADE_VOLUME_LAST_MONTH.getType())
.setTitle(AnalyseItemEnum.ORDER_TRADE_VOLUME_LAST_MONTH.getTitle())
.setUnit(AnalyseItemEnum.ORDER_TRADE_VOLUME_LAST_MONTH.getUnit())
.setValue(totalMoneyCurMonth2);
analyseItems.add(aItem5);
analyseItems.add(aItem6);
// 当天订单数及当天订单额
OrderMaster orderParams3 = new OrderMaster();
orderParams3.setCustomerId(curCustomer.getCustomerId());
orderParams3.setCreateTimeStart(curDay.atStartOfDay());
List<OrderMaster> ordersCurDay = orderMasterService.selectOrderMasterList(orderParams3);
List<Long> orderIdsCurDay = ordersCurDay.stream().map(OrderMaster::getId).collect(Collectors.toList());
BigDecimal totalMoneyCurDay = new BigDecimal(0);
if (CollectionUtils.isNotEmpty(orderIdsCurDay)) {
FinancialMaster financialParams3 = new FinancialMaster();
financialParams3.setIds(orderIdsCurDay);
List<FinancialMaster> financialsCurDay = financialMasterService.selectFinancialMasterList(financialParams3);
totalMoneyCurDay = financialsCurDay.stream().map(FinancialMaster::getTotalMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
}
AnalyseItem aItem7 = new AnalyseItem()
.setType(AnalyseItemEnum.ORDER_NUM_CUR_DAY.getType())
.setTitle(AnalyseItemEnum.ORDER_NUM_CUR_DAY.getTitle())
.setUnit(AnalyseItemEnum.ORDER_NUM_CUR_DAY.getUnit())
.setValue(ordersCurDay != null ? ordersCurDay.size() : 0);
AnalyseItem aItem8 = new AnalyseItem()
.setType(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_DAY.getType())
.setTitle(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_DAY.getTitle())
.setUnit(AnalyseItemEnum.ORDER_TRADE_VOLUME_CUR_DAY.getUnit())
.setValue(totalMoneyCurDay);
analyseItems.add(aItem7);
analyseItems.add(aItem8);
// 7天订单数及7天订单额
OrderMaster orderParams4 = new OrderMaster();
orderParams4.setCustomerId(curCustomer.getCustomerId());
orderParams4.setCreateTimeStart(firstDayCurWeek.atStartOfDay());
List<OrderMaster> ordersCurWeek = orderMasterService.selectOrderMasterList(orderParams3);
List<Long> orderIdsCurWeek = ordersCurWeek.stream().map(OrderMaster::getId).collect(Collectors.toList());
BigDecimal totalMoneyCurWeek = new BigDecimal(0);
if (CollectionUtils.isNotEmpty(orderIdsCurWeek)) {
FinancialMaster financialParams4 = new FinancialMaster();
financialParams4.setIds(orderIdsCurWeek);
List<FinancialMaster> financialsCurWeek = financialMasterService.selectFinancialMasterList(financialParams4);
totalMoneyCurWeek = financialsCurWeek.stream().map(FinancialMaster::getTotalMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
}
AnalyseItem aItem9 = new AnalyseItem()
.setType(AnalyseItemEnum.ORDER_NUM_LAST_7_DAYS.getType())
.setTitle(AnalyseItemEnum.ORDER_NUM_LAST_7_DAYS.getTitle())
.setUnit(AnalyseItemEnum.ORDER_NUM_LAST_7_DAYS.getUnit())
.setValue(ordersCurWeek != null ? ordersCurWeek.size() : 0);
AnalyseItem aItem10 = new AnalyseItem()
.setType(AnalyseItemEnum.ORDER_TRADE_VOLUME_LAST_7_DAYS.getType())
.setTitle(AnalyseItemEnum.ORDER_TRADE_VOLUME_LAST_7_DAYS.getTitle())
.setUnit(AnalyseItemEnum.ORDER_TRADE_VOLUME_LAST_7_DAYS.getUnit())
.setValue(totalMoneyCurWeek);
analyseItems.add(aItem9);
analyseItems.add(aItem10);
CustomerPlaceMember customerPlaceMember = new CustomerPlaceMember();
customerPlaceMember.setAnalyseItems(analyseItems);
customerPlaceMember.setCustomerId(curCustomer.getCustomerId());

View File

@ -5,6 +5,7 @@ package com.ghy.web.pojo.vo;
* @date : 2022-08-15 17:33
*/
public class AnalyseItem {
private String type;
private String title;
private Object value;
private String unit;
@ -35,4 +36,13 @@ public class AnalyseItem {
this.unit = unit;
return this;
}
public String getType() {
return type;
}
public AnalyseItem setType(String type) {
this.type = type;
return this;
}
}

View File

@ -5,17 +5,25 @@ package com.ghy.common.adapay.model;
* @date : 2022-08-15 16:37
*/
public enum AnalyseItemEnum {
CUSTOMER_NUM("客户数", ""),
CUSTOMER_NUM_CUR_MONTH("本月绑定", ""),
ORDER_NUM_CUR_MONTH("本月订单数", ""),
ORDER_TRADE_VOLUME_CUR_MONTH("本月订单额", "yuan"),
ORDER_NUM_LAST_MONTH("上月订单数", ""),
ORDER_TRADE_VOLUME_LAST_MONTH("上月订单额", "yuan");
CUSTOMER_NUM("common", "客户数", ""),
CUSTOMER_NUM_ADDED_CUR_MONTH("common", "本月绑定", ""),
TEAM_MEMBER_NUM("common", "团队", ""),
TEAM_MEMBER_ADDED_CUR_MONTH("common", "本月绑定", ""),
ORDER_NUM_CUR_MONTH("common", "本月订单数", ""),
ORDER_TRADE_VOLUME_CUR_MONTH("common", "本月交易额", "yuan"),
ORDER_NUM_LAST_MONTH("common", "上月订单数", ""),
ORDER_TRADE_VOLUME_LAST_MONTH("common", "上月交易额", "yuan"),
ORDER_NUM_CUR_DAY("dayAnalyse", "当天订单数", ""),
ORDER_TRADE_VOLUME_CUR_DAY("dayAnalyse", "当天交易额", "yuan"),
ORDER_NUM_LAST_7_DAYS("dayAnalyse", "7天订单数", ""),
ORDER_TRADE_VOLUME_LAST_7_DAYS("dayAnalyse", "7天交易额", "yuan");
private String type;
private String title;
private String unit;
AnalyseItemEnum(String title, String unit) {
AnalyseItemEnum(String type, String title, String unit) {
this.type = type;
this.title = title;
this.unit = unit;
}
@ -27,4 +35,8 @@ public enum AnalyseItemEnum {
public String getUnit() {
return unit;
}
public String getType() {
return type;
}
}

View File

@ -35,6 +35,9 @@
<select id="getCustomerList" resultMap="CustomerResult">
<include refid="selectCustomer" />
<where>
<if test="customerId != null">
AND customer_id = #{customerId}
</if>
<if test="openId != null and openId != ''">
AND open_id = #{openId}
</if>

View File

@ -372,7 +372,13 @@ public class OrderDetailServiceImpl implements OrderDetailService {
List<FinancialChangeRecord> list = financialChangeRecordService.selectFinancialChangeRecordList(param);
FinancialChangeRecord financialChangeRecord;
int affectedRows = 0;
if (changeMoney.compareTo(BigDecimal.ZERO) == 0) {
// 入参中的加价金额为空则直接删除未支付的加价记录
if (list.size() > 0) {
financialChangeRecord = list.get(0);
affectedRows = financialChangeRecordService.deleteFinancialChangeRecordById(financialChangeRecord.getId());
}
} else if (list.size() > 0) {
// 修改现有
financialChangeRecord = list.get(0);
financialChangeRecord.setChangeMoney(changeMoney);
@ -390,7 +396,7 @@ public class OrderDetailServiceImpl implements OrderDetailService {
financialChangeRecord.setRemark(remark);
affectedRows = financialChangeRecordService.insertFinancialChangeRecord(financialChangeRecord);
}
if (affectedRows != 1) {
if (changeMoney.compareTo(BigDecimal.ZERO) != 0 && affectedRows != 1) {
throw new Exception("加价记录新增或者修改失败");
}