From ec87cf1ee2b9382bf9d089711f0ff82ae8e7077c Mon Sep 17 00:00:00 2001
From: jyy <jyy>
Date: Wed, 09 Jun 2021 20:44:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/api_score_meger' into api_score_meger
---
zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java | 122 ++++++++++++++++++++++++++++++++++++----
1 files changed, 109 insertions(+), 13 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java b/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
index ca6c675..ba436dc 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
@@ -1,5 +1,7 @@
package com.matrix.system.hive.statistics;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.PaginationVO;
@@ -12,9 +14,18 @@
import com.matrix.system.common.tools.ResponseHeadUtil;
import com.matrix.system.hive.action.util.QueryUtil;
import com.matrix.system.hive.bean.AchieveNew;
+import com.matrix.system.hive.dao.AchieveNewDao;
+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;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@@ -38,6 +49,33 @@
@Resource
private AchieveNewService achieveNewService;
+ @Autowired
+ private SysOrderService sysOrderService;
+
+ @Autowired
+ private SysOrderItemService sysOrderItemService;
+
+ @Autowired
+ private AchieveNewDao achieveNewDao;
+
+
+
+ /**
+ * 员工业绩统计
+ */
+ @PostMapping(value = "/achieveNewStatistics")
+ public @ResponseBody
+ AjaxResult achieveNewStatistics(@RequestBody AchieveNewStatisticsDto queryDto){
+ SysUsers sysUsers = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
+
+ queryDto.setCompanyId(sysUsers.getCompanyId());
+
+ Page<AchieveNewStatisticsVo> page = new Page(queryDto.getPageNum(), queryDto.getPageSize());
+ IPage<AchieveNewStatisticsVo> rows = achieveNewDao.achieveNewStatistics(page,queryDto);
+ AjaxResult result = AjaxResult.buildSuccessInstance(rows.getRecords(),rows.getTotal());
+ return result;
+ }
+
/**
* 门店每日单据明细表
@@ -60,16 +98,70 @@
*/
@RequestMapping(value = "/findDailyInfoNew")
public @ResponseBody
- AjaxResult findDailyInfoNew(AchieveNew achieveNew, PaginationVO pageVo) {
+ AjaxResult findDailyInfoNew(@RequestBody AchieveNew achieveNew) {
SysUsers sysUsers = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
+ achieveNew.setCompanyId(sysUsers.getCompanyId());
if(!AppConstance.ZONGDIAN.equals(sysUsers.getShopName())){
achieveNew.setShopId(sysUsers.getShopId());
}
+ PaginationVO pageVo = new PaginationVO();
+
+ pageVo.setOffset(achieveNew.getOffset());
+ pageVo.setLimit(achieveNew.getLimit());
pageVo.setSort("datatime");
pageVo.setOrder("desc");
AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, achieveNewService.findDayFlow(achieveNew, pageVo),
achieveNewService.findDayFlowTotal(achieveNew, pageVo));
return result;
+ }
+
+ @RequestMapping(value = "/exportAchieveNewStatisticsExcel")
+ public void exportAchieveNewStatisticsExcel(ModelMap model, HttpServletRequest request, HttpServletResponse response, AchieveNewStatisticsDto queryDto) throws IOException {
+ //这里是从数据库里查数据并组装成我们想要的数据结构的过程
+ List<ExcelSheetPO> res = new ArrayList<>();
+ ExcelSheetPO orderSheet = new ExcelSheetPO();
+ String title = "员工业绩统计";
+ orderSheet.setSheetName(title);
+ orderSheet.setTitle(title);
+ String[] header = {"规则名称", "门店名称", "业绩归属人", "业绩创建人", "订单金额", "现金", "划扣", "本金消耗", "赠送消耗"
+ , "服务提成", "人头", "项目个数", "服务时间", "订单类型"};
+ orderSheet.setHeaders(header);
+ SysUsers sysUsers = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
+ if(!AppConstance.ZONGDIAN.equals(sysUsers.getShopName())){
+ queryDto.setShopId(sysUsers.getShopId());
+ }
+ queryDto.setCompanyId(sysUsers.getCompanyId());
+ Page<AchieveNewStatisticsVo> page = new Page(1, Long.MAX_VALUE);
+ IPage<AchieveNewStatisticsVo> rows = achieveNewDao.achieveNewStatistics(page,queryDto);
+ List<AchieveNewStatisticsVo> dataList = rows.getRecords();
+ List<List<Object>> list = new ArrayList<>();
+ if (dataList.size() > 0) {
+ for (AchieveNewStatisticsVo item : dataList) {
+ List<Object> temp = new ArrayList<>();
+ temp.add(item.getRuleName());
+ temp.add(item.getShopName());
+ temp.add(item.getGuwen());
+ temp.add(item.getCreateBy());
+ temp.add(item.getZkTotal());
+ temp.add(item.getGoodsCash());
+ temp.add(item.getCardCash());
+ temp.add(item.getHisConsume());
+ temp.add(item.getFreeConsume());
+ temp.add(item.getProjPercentage());
+ temp.add(item.getNumberOfPeople());
+ temp.add(item.getProjNum());
+ temp.add(item.getProjTime());
+ temp.add(item.getOrderType());
+ list.add(temp);
+ }
+ }
+ orderSheet.setDataList(list);
+ res.add(orderSheet);
+ response = ResponseHeadUtil.setExcelHead(response);
+ response.setHeader("Content-Disposition",
+ "attachment;filename=" + java.net.URLEncoder.encode(title + DateUtil.getTimeMark() + ".xlsx".trim(), "UTF-8"));
+ OutputStream os = response.getOutputStream();
+ com.matrix.core.tools.excl.ExcelUtil.createWorkbookAtOutStream(ExcelVersion.V2007, res, os, true);
}
@RequestMapping(value = "/exportDailyInfoNew")
@@ -80,7 +172,7 @@
String title = "每日单据明细";
orderSheet.setSheetName(title);
orderSheet.setTitle(title);
- String[] header = {"年", "月", "日", "订单类型", "订单编号", "会员级别", "姓名", "项目名称", "总金额", "卡项", "现金单次", "现金产品", "划扣", "本金消耗", "赠消", "提成", "顾问", "美疗师", "人头", "项目个数", "项目时间", "门店"};
+ String[] header = {"年", "月", "日", "订单编号", "订单类型", "会员姓名", "项目名称", "订单金额", "订单业绩", "收款方式", "业绩类型", "员工", "本金消耗", "赠消", "提成", "人头", "项目个数", "项目时间", "顾问", "门店"};
orderSheet.setHeaders(header);
SysUsers sysUsers = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
if(!AppConstance.ZONGDIAN.equals(sysUsers.getShopName())){
@@ -96,24 +188,21 @@
temp.add(item.getYear());
temp.add(item.getMonth());
temp.add(item.getDay());
- temp.add(item.getOrderType());
temp.add(item.getOrderNo());
- temp.add(item.getLevelName());
+ temp.add(item.getOrderType());
temp.add(item.getVipName());
temp.add(item.getProName());
temp.add(item.getZkTotal());
- temp.add(item.getCardCash());
- temp.add(item.getProjCash());
temp.add(item.getGoodsCash());
- temp.add(item.getConsume());
+ temp.add(item.getPayMethod());
+ temp.add(item.getMeiliao());
temp.add(item.getHisConsume());
temp.add(item.getFreeConsume());
temp.add(item.getProjPercentage());
- temp.add(item.getGuwen());
- temp.add(item.getMeiliao());
temp.add(item.getNumberOfPeople());
temp.add(item.getProjNum());
temp.add(item.getProjTime());
+ temp.add(item.getGuwen());
temp.add(item.getShopName());
list.add(temp);
}
@@ -132,17 +221,24 @@
public AjaxResult del(Long id) {
int i = achieveNewService.removeById(id);
if (i > 0) {
- return AjaxResult.buildSuccessInstance("删除失败");
+ return AjaxResult.buildSuccessInstance("删除成功");
}
return AjaxResult.buildFailInstance("删除失败");
}
@RequestMapping(value = "/add")
@ResponseBody
+ @Transactional
public AjaxResult add(@RequestBody List<AchieveNew> list) {
-
-
- return AjaxResult.buildSuccessInstance("添加成功");
+ if (CollectionUtils.isNotEmpty(list)) {
+ //删除原业绩
+ achieveNewDao.deleteByOrderId(list.get(0).getOrderId());
+ //插入新业绩
+ achieveNewDao.batchInsert(list);
+ return AjaxResult.buildSuccessInstance("保存成功");
+ } else {
+ return AjaxResult.buildFailInstance("未找到业绩数据");
+ }
}
}
--
Gitblit v1.9.1