diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCustomerController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCustomerController.java index 58846352d..494186207 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCustomerController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCustomerController.java @@ -70,7 +70,9 @@ public class SysCustomerController extends BaseController customerListResponse = ObjectUtils.getObjectByObject(customer.getSign(), CustomerListResponse.class); customerListResponse.setCreateTime(customer.getCreateTime()); customerListResponse.setName(customer.getName()); - customerListResponse.setPhone(customer.getPhone()); + if(StringUtils.isNotEmpty(customer.getPhone())){ + customerListResponse.setPhone(StringUtils.hiddenPhoneNumber(customer.getPhone())); + } StringBuilder signStr = new StringBuilder(); if(customer.getSign().getSignList() != null && customer.getSign().getSignList().size() > 0){ int i = 0; diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java index bdc6f8902..03df73d03 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java @@ -4,6 +4,7 @@ import com.stdiet.common.annotation.Log; import com.stdiet.common.core.domain.AjaxResult; import com.stdiet.common.core.domain.entity.SysUser; import com.stdiet.common.enums.BusinessType; +import com.stdiet.common.utils.DateUtils; import com.stdiet.common.utils.StringUtils; import com.stdiet.common.utils.poi.ExcelUtil; import com.stdiet.custom.controller.OrderBaseController; @@ -17,6 +18,7 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; +import java.time.temporal.ChronoUnit; import java.util.List; /** @@ -81,6 +83,12 @@ public class SysOrderController extends OrderBaseController { if (StringUtils.isNotEmpty(order.getPhone())) { order.setPhone(StringUtils.hiddenPhoneNumber(order.getPhone())); } + //根据服务时长、赠送天数计算服务天数 + int month = order.getServeTimeId() != null ? order.getServeTimeId().intValue()/30 : 0; + if(order.getStartTime() != null && order.getServerEndTime() != null && order.getServeTimeId() != null && month > 0){ + long serverDay = ChronoUnit.DAYS.between(DateUtils.dateToLocalDate(order.getStartTime()), DateUtils.dateToLocalDate(order.getStartTime()).plusMonths(month).plusDays(order.getGiveServeDay() == null ? 0 : order.getGiveServeDay())) + 1; + order.setServerDay(Integer.parseInt(serverDay + "")); + } } return getOrderDataTable(list, totalAmount); } @@ -123,6 +131,9 @@ public class SysOrderController extends OrderBaseController { order.setOperatorAssis(user.getNickName()); } } + if (StringUtils.isNotEmpty(order.getPhone())) { + order.setPhone(StringUtils.hiddenPhoneNumber(order.getPhone())); + } } ExcelUtil util = new ExcelUtil(SysOrder.class); return util.exportExcel(list, "order"); diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysRecipesPlanController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysRecipesPlanController.java index b0dfd61a6..b7de225f6 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysRecipesPlanController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysRecipesPlanController.java @@ -1,6 +1,8 @@ package com.stdiet.web.controller.custom; import java.util.List; + +import com.stdiet.common.utils.StringUtils; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -35,6 +37,11 @@ public class SysRecipesPlanController extends BaseController { startPage(); List list = sysRecipesPlanService.selectPlanListByCondition(sysRecipesPlan); + for(SysRecipesPlan plan : list){ + if(StringUtils.isNotEmpty(plan.getPhone())){ + plan.setHidePhone(StringUtils.hiddenPhoneNumber(plan.getPhone())); + } + } return getDataTable(list); } @@ -80,6 +87,11 @@ public class SysRecipesPlanController extends BaseController public AjaxResult export(SysRecipesPlan sysRecipesPlan) { List list = sysRecipesPlanService.selectPlanListByCondition(sysRecipesPlan); + for(SysRecipesPlan plan : list){ + if(StringUtils.isNotEmpty(plan.getPhone())){ + plan.setHidePhone(StringUtils.hiddenPhoneNumber(plan.getPhone())); + } + } ExcelUtil util = new ExcelUtil(SysRecipesPlan.class); return util.exportExcel(list, "recipesPlan"); } diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysWxUserInfoController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysWxUserInfoController.java index 95098aa51..1728ff7bc 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysWxUserInfoController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysWxUserInfoController.java @@ -46,7 +46,7 @@ public class SysWxUserInfoController extends BaseController { for (SysWxUserInfo userInfo : list) { if (StringUtils.isNotEmpty(userInfo.getPhone())) { - userInfo.setPhone(userInfo.getPhone().replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2")); + userInfo.setPhone(StringUtils.hiddenPhoneNumber(userInfo.getPhone())); } } @@ -61,6 +61,11 @@ public class SysWxUserInfoController extends BaseController { @GetMapping("/export") public AjaxResult export(SysWxUserInfo sysWxUserInfo) { List list = sysWxUserInfoService.selectSysWxUserInfoList(sysWxUserInfo); + for (SysWxUserInfo userInfo : list) { + if (StringUtils.isNotEmpty(userInfo.getPhone())) { + userInfo.setPhone(StringUtils.hiddenPhoneNumber(userInfo.getPhone())); + } + } ExcelUtil util = new ExcelUtil(SysWxUserInfo.class); return util.exportExcel(list, "wxUserInfo"); } diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommissionDayDetail.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommissionDayDetail.java index 85d868f62..c14af4564 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommissionDayDetail.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommissionDayDetail.java @@ -37,6 +37,9 @@ public class SysCommissionDayDetail extends BaseEntity { @Excel(name = "未发放提成") private BigDecimal totalNotSentCommissionAmount; + @Excel(name = "下月应发提成") + private BigDecimal nextMonthCommission; + private List> sendDetailList; public Long getUserId() { @@ -110,4 +113,12 @@ public class SysCommissionDayDetail extends BaseEntity { public void setSendDetailList(List> sendDetailList) { this.sendDetailList = sendDetailList; } + + public BigDecimal getNextMonthCommission() { + return nextMonthCommission; + } + + public void setNextMonthCommission(BigDecimal nextMonthCommission) { + this.nextMonthCommission = nextMonthCommission; + } } diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java index e1b488561..b8305ad9d 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java @@ -213,6 +213,12 @@ public class SysOrder extends BaseEntity { @Excel(name = "进粉时间", width = 30, dateFormat = "yyyy-MM-dd") private Date becomeFanTime; + /** + * 服务天数 + */ + @Excel(name = "服务结束时间", width = 30) + private Integer serverDay; + /** * 订单暂停记录 非持久化字段 * */ @@ -525,6 +531,14 @@ public class SysOrder extends BaseEntity { this.becomeFanTime = becomeFanTime; } + public Integer getServerDay() { + return serverDay; + } + + public void setServerDay(Integer serverDay) { + this.serverDay = serverDay; + } + @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysRecipesPlan.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysRecipesPlan.java index f1b2091a4..4053383a6 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysRecipesPlan.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysRecipesPlan.java @@ -29,9 +29,12 @@ public class SysRecipesPlan extends BaseEntity private String customer; //非持久化字段,客户手机号 - @Excel(name = "客户手机号") private String phone; + @Excel(name = "客户手机号") + //处理过的客户手机号 + private String hidePhone; + /** 食谱开始日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "食谱开始日期", width = 30, dateFormat = "yyyy-MM-dd") @@ -217,6 +220,14 @@ public class SysRecipesPlan extends BaseEntity this.phone = phone; } + public String getHidePhone() { + return hidePhone; + } + + public void setHidePhone(String hidePhone) { + this.hidePhone = hidePhone; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCommissionDayServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCommissionDayServiceImpl.java index 8bf398fb5..a939ac244 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCommissionDayServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCommissionDayServiceImpl.java @@ -1,5 +1,6 @@ package com.stdiet.custom.service.impl; +import com.alibaba.fastjson.JSONArray; import com.stdiet.common.utils.DateUtils; import com.stdiet.custom.domain.*; import com.stdiet.custom.mapper.SysCommisionMapper; @@ -37,6 +38,7 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService { total.setTotalCommissionAmount(new BigDecimal(0)); total.setTotalHasSentCommissionAmount(new BigDecimal(0)); total.setTotalNotSentCommissionAmount(new BigDecimal(0)); + total.setNextMonthCommission(new BigDecimal(0)); if(list != null && list.size() > 0){ Map> orderDetailMap = getOrderByList(sysCommision.getUserId()); SysCommissionDayDetail sysCommissionDayDetail = null; @@ -52,6 +54,7 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService { total.setTotalCommissionAmount(total.getTotalCommissionAmount().add(sysCommissionDayDetail.getTotalCommissionAmount())); total.setTotalHasSentCommissionAmount(total.getTotalHasSentCommissionAmount().add(sysCommissionDayDetail.getTotalHasSentCommissionAmount())); total.setTotalNotSentCommissionAmount(total.getTotalNotSentCommissionAmount().add(sysCommissionDayDetail.getTotalNotSentCommissionAmount())); + total.setNextMonthCommission(total.getNextMonthCommission().add(sysCommissionDayDetail.getNextMonthCommission())); } } total.setPostName("胜唐体控"); @@ -104,6 +107,14 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService { * 根据用户ID统计出该用户在该月所有订单的服务数量、服务总天数、服务订单总额、暂停总天数 * **/ public void dealServerOrderCommissionDetail(List orderDetailList, SysCommissionDayDetail sysCommissionDayDetail){ + /*System.out.println("------------------开始--------------"); + if(orderDetailList != null){ + for(SysOrderCommisionDayDetail sysOrderCommisionDayDetail : orderDetailList){ + System.out.println("姓名:"+sysOrderCommisionDayDetail.getName() + " 总天数:"+sysOrderCommisionDayDetail.getServerDay() + +" 每天金额:"+sysOrderCommisionDayDetail.getDayMoney() + " 一月服务天数:"+sysOrderCommisionDayDetail.getEveryYearMonthServerDay().get("20211") + +" 一月对应金额:"+ sysOrderCommisionDayDetail.getEveryYearMonthServerMoney().get("20211")); + } + }*/ //总提成 BigDecimal totalCommissionAmount = new BigDecimal(0); //已发放提成 @@ -166,6 +177,7 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService { //未发放提成 = 总提成 - 已发放提成 sysCommissionDayDetail.setTotalNotSentCommissionAmount(totalCommissionAmount.subtract(totalHasSentCommissionAmount)); sysCommissionDayDetail.setSendDetailList(sendDetailList); + sysCommissionDayDetail.setNextMonthCommission(sendDetailList.size() > 0 ? (BigDecimal)sendDetailList.get(0).get("yearMonthCommission") : new BigDecimal(0)); } /**判断该月提成是否已发放*/ @@ -437,7 +449,7 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService { * double转为BigDecimal,保留一位小数,向下舍去 * */ public BigDecimal getMoney(Double money, int n){ - return new BigDecimal(money.toString()).setScale(n, BigDecimal.ROUND_DOWN); + return new BigDecimal(money.toString()).setScale(3, BigDecimal.ROUND_HALF_UP); } /** @@ -472,10 +484,6 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService { /*System.out.println(ts(109792.8 * 6 / 100D, 1)); System.out.println(ts(6587.8,2).doubleValue());*/ - System.out.println(ts(1.919,1).doubleValue()); - } - public static BigDecimal ts(Double money, int n){ - return new BigDecimal(money.toString()).setScale(n, BigDecimal.ROUND_DOWN); } } diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml index 44854bfc9..2e91119e7 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml @@ -78,6 +78,7 @@ and date_format(order_time,'%y%m%d') <= date_format(#{endTime},'%y%m%d') and serve_time_id = #{serveTimeId} and review_status = #{reviewStatus} + and serve_time_id = #{serveTimeId} diff --git a/stdiet-ui/src/components/AutoHideMessage/index.vue b/stdiet-ui/src/components/AutoHideMessage/index.vue new file mode 100644 index 000000000..1e50ee111 --- /dev/null +++ b/stdiet-ui/src/components/AutoHideMessage/index.vue @@ -0,0 +1,48 @@ + + + + + diff --git a/stdiet-ui/src/views/custom/commision/detail/index.vue b/stdiet-ui/src/views/custom/commision/detail/index.vue index 8eadd8e44..80dfad23e 100644 --- a/stdiet-ui/src/views/custom/commision/detail/index.vue +++ b/stdiet-ui/src/views/custom/commision/detail/index.vue @@ -65,7 +65,7 @@ diff --git a/stdiet-ui/src/views/custom/commision/detail_day/index.vue b/stdiet-ui/src/views/custom/commision/detail_day/index.vue index 059c307b9..09c3c6266 100644 --- a/stdiet-ui/src/views/custom/commision/detail_day/index.vue +++ b/stdiet-ui/src/views/custom/commision/detail_day/index.vue @@ -36,7 +36,9 @@
注意事项: -
1、2021年1月开始的订单才开始按天计算提成
+
1、2021年1月开始的订单才开始按天计算提成 +
2、发工资日期定为每月15号,若当前日期大于15号,则认定上个月的工资已发放 + + + + + @@ -104,7 +112,11 @@ {{scope.row.yearMonth.substring(0, 4)}}年{{scope.row.yearMonth.substring(4)}}月 - + + + diff --git a/stdiet-ui/src/views/custom/order/index.vue b/stdiet-ui/src/views/custom/order/index.vue index 51c0650e9..76074813a 100644 --- a/stdiet-ui/src/views/custom/order/index.vue +++ b/stdiet-ui/src/views/custom/order/index.vue @@ -143,6 +143,18 @@ + + + + + + + + {{ parseTime(scope.row.serverEndTime, '{y}-{m}-{d}') }} + + +