935090232@qq.com
2021-10-06 e7eea688585603c5a8f134d92762e8431d885d36
zq-erp/src/main/java/com/matrix/system/hive/action/ProjServiceController.java
@@ -1,6 +1,7 @@
package com.matrix.system.hive.action;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.matrix.core.anotations.RemoveRequestToken;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.exception.GlobleException;
@@ -13,8 +14,13 @@
import com.matrix.core.tools.excl.ExcelSheetPO;
import com.matrix.core.tools.excl.ExcelUtil;
import com.matrix.core.tools.excl.ExcelVersion;
import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.constance.AppConstance;
import com.matrix.system.common.dao.BusParameterSettingsDao;
import com.matrix.system.common.dao.SysCompanyDao;
import com.matrix.system.common.service.SysUsersService;
import com.matrix.system.common.tools.DataAuthUtil;
import com.matrix.system.common.tools.ResponseHeadUtil;
import com.matrix.system.constance.Dictionary;
import com.matrix.system.hive.bean.*;
@@ -27,6 +33,7 @@
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -34,7 +41,9 @@
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
@@ -146,7 +155,9 @@
        if (StringUtils.isBlank(pageVo.getOrder())) {
            pageVo.setOrder("desc");
        }
        projService.setShopId(getMe().getShopId());
        if (!DataAuthUtil.hasAllShopAuth()) {
            projService.setShopId(getMe().getShopId());
        }
        List<SysProjServices> dataList = projServicesSerivce.findInPage(projService, pageVo);
        AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList, projServicesSerivce.findTotal(projService));
        return result;
@@ -190,7 +201,6 @@
        queryUse.setType(Dictionary.SHOPPING_GOODS_TYPE_XM);
        queryUse.setTaocanId(-1L);
        queryUse.setStatus(Dictionary.TAOCAN_STATUS_YX);
        queryUse.setIsOver(Dictionary.FLAG_NO_N);
        List<SysProjUse> projList = projUseService.findInPage(queryUse, null);
        //切换到套餐查询条件
        queryUse.setTaocanId(null);
@@ -275,6 +285,7 @@
        // 显示当前查询的服务订单的项目信息
        return "admin/hive/beautySalon/yypb-form";
    }
    /**
     * 进入预约排班详情
@@ -435,6 +446,25 @@
        return new AjaxResult(AjaxResult.STATUS_SUCCESS, "成功");
    }
    @Autowired
    private SysCompanyDao sysCompanyDao;
    /**
     * 服务单打印
     */
    @RequestMapping(value = "/printOrder")
    public @ResponseBody
    ModelAndView printOrder() throws GlobleException {
        ModelAndView mv = new ModelAndView("admin/hive/beautySalon/print-service");
        SysUsers user=(SysUsers)WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
        String comRegisterCode = sysCompanyDao.selectById(user.getCompanyId()).getComRegisterCode();
        if(StringUtils.isNotBlank(comRegisterCode)){
            mv.addObject("page",comRegisterCode);
        }else {
            mv.addObject("page","taiyan");
        }
        return mv;
    }
    /**
     * 根据id对服务单进行派单
@@ -451,12 +481,33 @@
        }
    }
    @Autowired
    BusParameterSettingsDao busParameterSettingsDao;
    /**
     * 根据id取消预约
     */
    @RequestMapping(value = "/cancelOrder")
    public @ResponseBody
    AjaxResult cancelOrder(SysProjServices services) {
        SysProjServices checkProjServices = sysProjServicesDao.selectById(services.getId());
        BusParameterSettings shopManageAbleCancelDfkOrder = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.SHOP_MANAGE_ABLE_CANCEL_DFK_ORDER, checkProjServices.getCompanyId());
        if (StringUtils.isNotBlank(shopManageAbleCancelDfkOrder.getParamValue())
                && shopManageAbleCancelDfkOrder.getParamValue().equals(Dictionary.FLAG_YES)) {
            if (!checkProjServices.getState().equals(Dictionary.SERVICE_STATU_DYY)
            && !checkProjServices.getState().equals(Dictionary.SERVICE_STATU_DQR)) {
                return new AjaxResult(AjaxResult.STATUS_FAIL, "您只能取消待预约订单");
            }
        }
       return erpCancelOrder(services);
    }
    /**
     * 根据id取消预约
     */
    @RequestMapping(value = "/erpCancelOrder")
    public @ResponseBody
    AjaxResult erpCancelOrder(SysProjServices services) {
        int i = sysProjServicesService.modifyCancelProjServices(services);
        if (i > 0) {
            return new AjaxResult(AjaxResult.STATUS_SUCCESS, "取消预约成功");
@@ -464,7 +515,6 @@
            return new AjaxResult(AjaxResult.STATUS_FAIL, "取消预约失败");
        }
    }
    /**
     * 设置服务单划扣成功
@@ -504,7 +554,9 @@
        if (balanceverifyResult.isError()) {
            return new AjaxResult(AjaxResult.STATUS_FAIL, balanceverifyResult.getMsg());
        }
        sysProjServices.setState(Dictionary.SERVICE_STATU_DYY);
        if (StrUtil.isEmpty(sysProjServices.getState())) {
            sysProjServices.setState(Dictionary.SERVICE_STATU_DYY);
        }
        SysProjServices newSysProjServices = sysProjServicesService.addSysProjServices(sysProjServices);
        if (newSysProjServices != null) {
            return AjaxResult.buildSuccessInstance(Arrays.asList(newSysProjServices));
@@ -559,6 +611,26 @@
    }
    @RequestMapping(value = "/addServiceProj")
    @ResponseBody
    public AjaxResult addServiceProj(SysProjServices sysProjServices) {
        return AjaxResult.buildSuccessInstance("保存成功");
    }
    /**
     * 删除服务单项目/套餐
     * @param id
     * @return
     */
    @RequestMapping(value = "/delServiceOrderItems")
    @ResponseBody
    public AjaxResult delServiceOrderItems(Long id) {
        sysProjServicesService.deleteProjServiceItemById(id);
        return AjaxResult.buildSuccessInstance("删除成功");
    }
    // 准备页面数据
    private void  pageDate() {
        // 根据岗位名称查询员工