From d388e2788b7ef088d7cd40f901b0acdcec460bc3 Mon Sep 17 00:00:00 2001 From: wzy <wzy19931122ai@163.com> Date: Thu, 01 Apr 2021 00:19:23 +0800 Subject: [PATCH] modify --- zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java | 127 +++++++++++++++++++++++------------------ 1 files changed, 71 insertions(+), 56 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java index df7c66e..268665d 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java @@ -1,9 +1,14 @@ package com.matrix.system.hive.service.imp; +import com.matrix.core.constance.MatrixConstance; import com.matrix.core.exception.GlobleException; import com.matrix.core.pojo.PaginationVO; +import com.matrix.core.tools.DateUtil; import com.matrix.core.tools.ModelUtils; import com.matrix.core.tools.StringUtils; +import com.matrix.core.tools.WebUtil; +import com.matrix.system.app.vo.UserAchieveVo; +import com.matrix.system.common.bean.SysUsers; import com.matrix.system.common.dao.SysUsersDao; import com.matrix.system.constance.Dictionary; import com.matrix.system.hive.bean.*; @@ -16,10 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; /** * This field was generated by Zking.software.Codegen. @@ -152,7 +154,7 @@ @Override - public void addAchieveByServiceOrder(SysProjServices projServices) { + public void addAchieveByServiceOrder(SysProjServices projServices) { List<AchieveNew> achieveNewList = new ArrayList<>(); List<SysBeauticianState> beauticianStateList = sysBeauticianStateDao.selectBySerIds(projServices.getId()); int size = beauticianStateList.size(); @@ -170,20 +172,17 @@ achieveNew.setVipId(projServices.getVipId()); // 是否为赠送业绩 if (Dictionary.TAOCAN_SOURCE_ZS.equals(projUse.getSource())) { - achieveNew.setFreeConsume(projUse.getPrice()); + achieveNew.setFreeConsume(projUse.getPrice()*beauticianState.getCount()); } else { - achieveNew.setHisConsume(projUse.getPrice()); + achieveNew.setHisConsume(projUse.getPrice()*beauticianState.getCount()); } achieveNew.setT2(projUse.getSource()); - if (projServices.getCreateTime() != null) { - achieveNew.setDatatime(projServices.getCreateTime()); - } else { - achieveNew.setDatatime(new Date()); - } + achieveNew.setDatatime(new Date()); achieveNew.setOrderType(Dictionary.ORDER_TYPE_SERVICE); achieveNew.setServiceOrderId(projServices.getId()); achieveNew.setOrderItemId(beauticianState.getId()); achieveNew.setShopId(projServices.getShopId()); + achieveNew.setCompanyId(projServices.getCompanyId()); achieveNew.setShoppingGoodsId(projUse.getProjId()); achieveNew.setNumberOfPeople(1D / size); achieveNew.setProjNum(1); @@ -191,12 +190,13 @@ achieveNew.setProjPercentage(Double.parseDouble(beauticianState.getExtract())); } if (isFirst && beauticianState.getEndTime() != null && beauticianState.getBeginTime() != null) { - long timeSpace = beauticianState.getEndTime().getTime() - beauticianState.getBeginTime().getTime(); - if (timeSpace > 0) { - achieveNew.setProjTime((int) (timeSpace / 1000 / 60)); - } else { - achieveNew.setProjTime(1); - } +// long timeSpace = beauticianState.getEndTime().getTime() - beauticianState.getBeginTime().getTime(); +// if (timeSpace > 0) { +// achieveNew.setProjTime((int) (timeSpace / 1000 / 60)); +// } else { +// achieveNew.setProjTime(1); +// } + achieveNew.setProjTime(beauticianState.getExcTime()); isFirst = false; } achieveNewList.add(achieveNew); @@ -214,23 +214,15 @@ if (CollectionUtils.isNotEmpty(pageOrder.getItems())) { for (SysOrderItem orderItem : pageOrder.getItems()) { - if (orderItem != null && CollectionUtils.isNotEmpty(orderItem.getAchaeveList())) { + if (orderItem != null && CollectionUtils.isNotEmpty(orderItem.getAchieveList())) { - for (AchieveNew achieveNew : orderItem.getAchaeveList()) { - if (achieveNew !=null && achieveNew.getT1()!=null) { + for (AchieveNew achieveNew : orderItem.getAchieveList()) { + if (achieveNew !=null && achieveNew.getGoodsCash()!=null) { buildAchieve(pageOrder, orderItem, achieveNew); // 新增美疗师业绩 achieveNewList.add(achieveNew); } } - } else { - // 如果该订单明细没有设置美疗师则单独设置顾问业绩 - AchieveNew achieveNew = new AchieveNew(); - // 顾问业绩等于收款金额 - achieveNew.setT1(orderItem.getPayMoney() + ""); - buildAchieve(pageOrder, orderItem, achieveNew); - // 新增顾问业绩 - achieveNewList.add(achieveNew); } } } @@ -243,13 +235,17 @@ ShoppingGoodsDao shoppingGoodsDao; private void buildAchieve(SysOrder pageOrder, SysOrderItem orderItem, AchieveNew achieveNew) { + if (Dictionary.ORDER_STATU_TK.equals(pageOrder.getStatu())) { + achieveNew.setId(null); + achieveNew.setProjPercentage(0 - achieveNew.getProjPercentage()); + achieveNew.setGoodsCash(0 - achieveNew.getGoodsCash()); + } + achieveNew.setVipId(pageOrder.getVipId()); achieveNew.setSaleId(pageOrder.getStaffId()); - if (pageOrder.getOrderTime() != null) { - achieveNew.setDatatime(pageOrder.getOrderTime()); - } else if (pageOrder.getOrderTime() != null) { - achieveNew.setDatatime(pageOrder.getOrderTime()); + if (pageOrder.getPayTime() != null) { + achieveNew.setDatatime(pageOrder.getPayTime()); } else { achieveNew.setDatatime(new Date()); } @@ -257,32 +253,10 @@ achieveNew.setOrderId(pageOrder.getId()); achieveNew.setOrderItemId(orderItem.getId()); achieveNew.setShopId(pageOrder.getShopId()); + achieveNew.setCompanyId(pageOrder.getCompanyId()); achieveNew.setShoppingGoodsId(orderItem.getGoodsId()); // 是否赠送 achieveNew.setT2(orderItem.getIsFree()); - // 根据商品类型设置业绩类型 - - String goodType = shoppingGoodsDao.selectById(orderItem.getGoodsId()).getGoodType(); - if (orderItem.getPayMethod().equals(Dictionary.PAY_TYPE_MOENY) - && Dictionary.SHOPPING_GOODS_TYPE_XM.equals(goodType)) { - // 现金支付设置现金单次 - achieveNew.setProjCash(Double.parseDouble(achieveNew.getT1())); - - } else if (orderItem.getPayMethod().equals(Dictionary.PAY_TYPE_MOENY) - && Dictionary.SHOPPING_GOODS_TYPE_JJCP.equals(goodType)) { - // 设置现金产品 - achieveNew.setGoodsCash(Double.parseDouble(achieveNew.getT1())); - } else if (orderItem.getPayMethod().equals(Dictionary.PAY_TYPE_MOENY) - && (Dictionary.SHOPPING_GOODS_TYPE_TC.equals(goodType) - || Dictionary.SHOPPING_GOODS_TYPE_CZK.equals(goodType) - || Dictionary.SHOPPING_GOODS_TYPE_ZHK.equals(goodType) - || Dictionary.SHOPPING_GOODS_TYPE_TCK.equals(goodType))) { - // 设置卡项 - achieveNew.setCardCash(Double.parseDouble(achieveNew.getT1())); - } else if (!orderItem.getPayMethod().equals(Dictionary.PAY_TYPE_CARD)) { - // 设置划扣金额 - achieveNew.setConsume(Double.parseDouble(achieveNew.getT1())); - } } @Override @@ -317,4 +291,45 @@ public int findVipConsumeStatisticsTotal(AchieveNew achieveNew) { return achieveNewDao.selectVipConsumeStatisticsTotal(achieveNew); } + + @Override + public UserAchieveVo findUserAchieveByTime(int type) { + SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + Calendar calendar = Calendar.getInstance(); + Date startTime = calendar.getTime(); + Date endTime = calendar.getTime(); + switch (type) { + // 本日 + case 1 : + break; + // 昨日 + case 2: + startTime = DateUtil.previousNDate(startTime, 1); + endTime = startTime; + break; + // 本月 + case 3: + calendar.set(Calendar.DAY_OF_MONTH, 1); + startTime = calendar.getTime(); + break; + // 上月 + case 4: + calendar.add(Calendar.MONTH, -1); + calendar.set(Calendar.DAY_OF_MONTH, 1); + startTime = calendar.getTime(); + calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); + endTime = calendar.getTime(); + break; + default: + break; + + } + + return achieveNewDao.selectUserAchieveByTime(startTime, endTime, users.getSuId()); + } + + @Override + public List<AchieveNew> findOrderItemAchieve(Long orderId) { + return achieveNewDao.selectOrderItemAchieveByOrderId(orderId); + } } \ No newline at end of file -- Gitblit v1.9.1