zq-erp/src/main/java/com/matrix/system/hive/bean/AchieveNew.java
@@ -228,6 +228,7 @@ * 开始时间 */ @DateTimeFormat(pattern = DateUtil.DATE_FORMAT_MM) @JsonFormat(pattern = "yyyy-MM-dd HH:mm") private Date beginTime; @@ -235,6 +236,7 @@ * 结束时间 */ @DateTimeFormat(pattern = DateUtil.DATE_FORMAT_MM) @JsonFormat(pattern = "yyyy-MM-dd HH:mm") private Date endTime; zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java
@@ -172,8 +172,7 @@ // 下单人是否计算消耗业绩 boolean flag = projServicesService.skipServiceOrderStep(Dictionary.SALE_MAN_IS_CONSUME_ACHIEVE); //赠送项目是否计算消耗业绩 boolean zsConsumeAchieve = projServicesService.skipServiceOrderStep(Dictionary.ZS_CONSUME_ACHIEVE); for (SysBeauticianState beauticianState : beauticianStateList) { @@ -188,18 +187,10 @@ // 是否为赠送业绩 if (Dictionary.TAOCAN_SOURCE_ZS.equals(projUse.getSource())) { if(zsConsumeAchieve){ achieveNew.setFreeConsume(projUse.getPrice()*beauticianState.getCount()); //计算提成 achieveNew.setProjPercentage( calculationProjPercentage(AchieveRuleItem.ACHIEVE_TYPE_ZS,achieveNew.getFreeConsume(),beauticianState.getProjId())); }else{ continue; } } else { achieveNew.setHisConsume(projUse.getPrice()*beauticianState.getCount()); zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -1238,13 +1238,21 @@ if (sysOrderItem.getIsFree().equals(Dictionary.FLAG_NO) && sysOrderItem.getZkPrice() > 0) { puse.setSource(Dictionary.TAOCAN_SOURCE_GM); } else { //赠送产品按原价计算消耗 puse.setSource(Dictionary.TAOCAN_SOURCE_ZS); //赠送项目是否计算消耗业绩否则 赠送产品按原价计算消耗 boolean zsConsumeAchieve = projServicesService.skipServiceOrderStep(Dictionary.ZS_CONSUME_ACHIEVE); if(zsConsumeAchieve){ if (taocanId == null) { puse.setPrice(goodsAssemble.getShoppingGoods().getPrice() ); } else { puse.setPrice(goodsAssemble.getPrice()); } }else{ puse.setPrice(0D); } } puse.setBalance(MoneyUtil.mul(puse.getPrice(), Double.valueOf(puse.getSurplusCount()))); puse.setFailTime(failTime); @@ -1311,6 +1319,9 @@ sysProjUseDao.update(taocanProjUse); } @Autowired private SysProjServicesService projServicesService; /** * 根据订单创建用户项目使用情况 * @@ -1335,8 +1346,15 @@ puse.setPrice(sysOrderItem.getZkPrice()); } else { puse.setSource(Dictionary.TAOCAN_SOURCE_ZS); //赠送产品按原价计算消耗 //赠送项目是否计算消耗业绩否则 赠送产品按原价计算消耗 boolean zsConsumeAchieve = projServicesService.skipServiceOrderStep(Dictionary.ZS_CONSUME_ACHIEVE); if(zsConsumeAchieve){ puse.setPrice(sysOrderItem.getShoppingGoods().getSealPice()); }else{ puse.setPrice(0D); } } // 设置失效时间 Date invalidTime = shoppingGoodsService.calInvalidTime(sysOrderItem.getShoppingGoods(), 1, null); zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
@@ -9,8 +9,10 @@ import com.matrix.core.tools.WebUtil; import com.matrix.core.tools.excl.ExcelSheetPO; import com.matrix.core.tools.excl.ExcelVersion; import com.matrix.system.common.bean.CustomerDataDictionary; import com.matrix.system.common.bean.SysUsers; import com.matrix.system.common.constance.AppConstance; import com.matrix.system.common.dao.CustomerDataDictionaryDao; import com.matrix.system.common.tools.ResponseHeadUtil; import com.matrix.system.hive.action.util.QueryUtil; import com.matrix.system.hive.bean.AchieveNew; @@ -18,8 +20,6 @@ import com.matrix.system.hive.dto.AchieveNewStatisticsDto; import com.matrix.system.hive.plugin.util.CollectionUtils; import com.matrix.system.hive.service.AchieveNewService; import com.matrix.system.hive.service.SysOrderItemService; import com.matrix.system.hive.service.SysOrderService; import com.matrix.system.hive.vo.AchieveNewStatisticsVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -50,12 +50,6 @@ private AchieveNewService achieveNewService; @Autowired private SysOrderService sysOrderService; @Autowired private SysOrderItemService sysOrderItemService; @Autowired private AchieveNewDao achieveNewDao; @@ -82,7 +76,7 @@ */ @RequestMapping(value = "/findSumDailyInfoNew") public @ResponseBody AjaxResult findSumDailyInfoNew(AchieveNew achieveNew, PaginationVO pageVo) { AjaxResult findSumDailyInfoNew(@RequestBody AchieveNew achieveNew) { SysUsers sysUsers = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY); if(!AppConstance.ZONGDIAN.equals(sysUsers.getShopName())){ achieveNew.setShopId(sysUsers.getShopId()); @@ -164,17 +158,46 @@ com.matrix.core.tools.excl.ExcelUtil.createWorkbookAtOutStream(ExcelVersion.V2007, res, os, true); } @Autowired CustomerDataDictionaryDao dataDictionaryDao; @RequestMapping(value = "/exportDailyInfoNew") public void exportDailyInfoNew(ModelMap model, HttpServletRequest request, HttpServletResponse response, AchieveNew achieveNew) throws IOException { //这里是从数据库里查数据并组装成我们想要的数据结构的过程 SysUsers sysUsers = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); List<CustomerDataDictionary> achieveTyps = dataDictionaryDao.selectByParentCode("YJLX", sysUsers.getCompanyId()); List<ExcelSheetPO> res = new ArrayList<>(); ExcelSheetPO orderSheet = new ExcelSheetPO(); String title = "员工业绩报表"; orderSheet.setSheetName(title); orderSheet.setTitle(title); String[] header = {"订单时间", "订单编号", "订单类型", "会员姓名", "产品", "业绩规则", "产品分类", "订单金额", "现金","划扣", "员工", "业绩类型", "员工", "本金消耗", "赠消", "提成", "人头", "项目个数", "项目时间", "顾问", "门店"}; List<String> headerList =new ArrayList(); headerList.add("订单时间"); headerList.add("订单编号"); headerList.add("订单类型"); headerList.add("会员姓名"); headerList.add("产品"); headerList.add("业绩规则"); headerList.add("产品分类"); headerList.add("订单金额"); headerList.add("现金"); headerList.add("划扣"); headerList.add("员工"); achieveTyps.forEach(item->{headerList.add(item.getValue());}); headerList.add("本金消耗"); headerList.add("赠消"); headerList.add("提成"); headerList.add("人头"); headerList.add("项目个数"); headerList.add("项目时间"); headerList.add("顾问"); headerList.add("门店"); String[] header = headerList.toArray(new String[headerList.size()]); orderSheet.setHeaders(header); SysUsers sysUsers = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY); if(!AppConstance.ZONGDIAN.equals(sysUsers.getShopName())){ achieveNew.setShopId(sysUsers.getShopId()); } @@ -196,8 +219,14 @@ temp.add(item.getGoodsCash()); temp.add(item.getCardCash()); temp.add(item.getMeiliao()); //todo 动态导出列---- //动态导出列---- achieveTyps.forEach(item2->{ if(item2.getValue().equals(item.getAchieveType())){ temp.add(item.getGoodsCash()); }else{ temp.add(""); } }); temp.add(item.getHisConsume()); temp.add(item.getFreeConsume()); temp.add(item.getProjPercentage()); zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html
@@ -188,7 +188,14 @@ let _this = this; let form = _this.form; let page = _this.page; let params = _this.form; let params = {}; params.year=form.year; params.month=form.month; params.year=form.year; params.day=form.day; params.vipQueryKey=form.vipQueryKey; params.beaultId=form.beaultId; params.shopId=form.shopId; params.limit = page.size; params.offset = (page.currentPage - 1) * page.size; @@ -196,6 +203,7 @@ params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):''; params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):''; } AjaxProxy.requst({ app: _this, data: params, zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html
@@ -191,7 +191,14 @@ let _this = this; let form = _this.form; let page = _this.page; let params = _this.form; let params = {}; params.year=form.year; params.month=form.month; params.year=form.year; params.day=form.day; params.vipQueryKey=form.vipQueryKey; params.beaultId=form.beaultId; params.shopId=form.shopId; params.limit = page.size; params.offset = (page.currentPage - 1) * page.size;