Helius
2021-03-15 62e80c343f87cf4cfbe3e548382a4a66f6b22a44
zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
@@ -12,13 +12,14 @@
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.bean.SysOrder;
import com.matrix.system.hive.bean.SysOrderItem;
import com.matrix.system.hive.dao.AchieveNewDao;
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 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.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -48,6 +49,9 @@
    @Autowired
    private SysOrderItemService sysOrderItemService;
    @Autowired
    private AchieveNewDao achieveNewDao;
    /**
     * 门店每日单据明细表
@@ -90,7 +94,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())){
@@ -106,24 +110,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);
            }
@@ -149,26 +150,17 @@
    @RequestMapping(value = "/add")
    @ResponseBody
    @Transactional
    public AjaxResult add(@RequestBody List<AchieveNew> list) {
        SysOrder order = sysOrderService.findById(list.get(0).getOrderId());
        List<SysOrderItem> orderItems = sysOrderItemService.findByOrderId(order.getId());
        orderItems.forEach(item -> {
            List<AchieveNew> achieveNewList = new ArrayList<>();
            for(AchieveNew achieveNew : list) {
                achieveNewService.removeById(achieveNew.getId());
                achieveNew.setId(null);
                achieveNew.setConsume(null);
                achieveNew.setCardCash(null);
                if (achieveNew.getOrderItemId().equals(item.getId())) {
                    achieveNewList.add(achieveNew);
                }
            }
            item.setAchaeveList(achieveNewList);
        });
        order.setItems(orderItems);
        achieveNewService.addAchaeveByOrder(order);
        return AjaxResult.buildSuccessInstance("保存成功");
        if (CollectionUtils.isNotEmpty(list)) {
            //删除原业绩
            achieveNewDao.deleteByOrderId(list.get(0).getOrderId());
            //插入新业绩
            achieveNewDao.batchInsert(list);
            return AjaxResult.buildSuccessInstance("保存成功");
        } else {
            return AjaxResult.buildFailInstance("未找到业绩数据");
        }
    }
}