package cn.iocoder.yudao.module.inspection.controller;

import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.security.core.LoginUser;
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
import cn.iocoder.yudao.module.inspection.vo.SysDictData;
import cn.iocoder.yudao.module.label.vo.LabelRespVO;
import cn.iocoder.yudao.module.partner.entity.PartnerBalanceDetail;
import cn.iocoder.yudao.module.partner.entity.PartnerWorker;
import cn.iocoder.yudao.module.partner.service.IPartnerWorkerService;
import cn.iocoder.yudao.module.payment.entity.OrderInfo;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataSaveReqVO;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO;
import cn.iocoder.yudao.module.system.service.dict.DictDataService;
import cn.iocoder.yudao.module.system.service.dict.DictTypeService;
import cn.iocoder.yudao.util.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.PageHelper;
import cn.iocoder.yudao.module.core.controller.BaseController;
import cn.iocoder.yudao.module.inspection.entity.*;
import cn.iocoder.yudao.module.inspection.service.AppInspectionPartnerService;
import cn.iocoder.yudao.module.inspection.vo.GoodsVo;
import cn.iocoder.yudao.module.inspection.vo.InspectionInfoVo;
import cn.iocoder.yudao.module.inspection.vo.OrderAppDetail;
import cn.iocoder.yudao.module.shop.entity.ShopCouponTemplate;
import cn.iocoder.yudao.module.shop.entity.ShopMallPartners;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

@RestController
@RequestMapping("/admin-api/partnerOwn/partner")
public class PartnerOwnController  extends BaseController {
    @Autowired
    private AppInspectionPartnerService partnerList;
    @Autowired
    private IPartnerWorkerService partnerWorkerService;
    @Autowired
    private DictTypeService dictTypeService;
    @Autowired
    private DictDataService dictDataService;

    /**
     * 获取店铺详情
     */
    @GetMapping("/shopInfo")
    public CommonResult shopInfo() throws Exception {
        return   success(partnerList.shopInfo());
    }

    @GetMapping("/shopInfoByUserId")
    public CommonResult shopInfoByUserId() throws Exception {
        return   success(partnerList.shopInfoByUserId());
    }

    /**
     * 获取上门取车 和 预约条数
     */
    @GetMapping("/getAppointAndPickNum")
    public CommonResult getAppointAndPickNum() throws Exception {
        return   success(partnerList.getAppointAndPickNum());
    }


    /**
     * 开始或者停止营业
     */
    @PostMapping("/startOrEnd")
    public CommonResult startOrEnd(Long partnerId)
    {
        partnerList.startOrEnd(partnerId);
        return   success();
    }
    /**
     * 首页 顶部数据统计
     */
    @GetMapping("/statisticsInfo")
    public CommonResult statisticsInfo()
    {
        return   success(partnerList.statisticsInfo(null));
    }
    /**
     * 检测线图
     */
    @GetMapping("/chartInfoAmount")
    public CommonResult chartInfoAmount(Long partnerId,String unit)
    {
        return   success(partnerList.chartInfoAmount(partnerId, unit));
    }
    /**
     * 新检测线图
     */
    @GetMapping("/newChartInfoAmount")
    public CommonResult newChartInfoAmount(String unit)
    {
        return   success(partnerList.newChartInfoAmount(unit));
    }
    /**staticsTable1
     * 检测数量折线图
     */
    @GetMapping("/chartLineInspectionNum")
    public CommonResult chartLineInspectionNum(Long partnerId,String unit)
    {
        return   success(partnerList.chartLineInspectionNum(partnerId, unit));
    }
    /**staticsTable1
     * 新检测数量折线图
     */
    @GetMapping("/newChartLineInspectionNum")
    public CommonResult newChartLineInspectionNum(String unit)
    {
        return   success(partnerList.newChartLineInspectionNum(unit));
    }
    /**
     * 检测金额折线图
     */
    @GetMapping("/chartLineInspectionAmount")
    public CommonResult chartLineInspectionAmount(Long partnerId,String unit)
    {
        return   success(partnerList.chartLineInspectionAmount(partnerId, unit));
    }

    /**
     * 新检测金额折线图
     */
    @GetMapping("/newChartLineInspectionAmount")
    public CommonResult newChartLineInspectionAmount(String unit)
    {
        return   success(partnerList.newChartLineInspectionAmount(unit));
    }

    /**
     * 检测线图
     */
    @GetMapping("/chartInfoNum")
    public CommonResult chartInfoNum(Long partnerId,String unit)
    {
        return   success(partnerList.chartInfoNum(partnerId, unit));
    }
    /**
     * 新检测线图
     */
    @GetMapping("/newChartInfoNum")
    public CommonResult newChartInfoNum(String unit)
    {
        return   success(partnerList.newChartInfoNum( unit));
    }

    /**
     * 检测线图
     */
    @GetMapping("/chartInfoRatio")
    public CommonResult chartInfoRatio(Long partnerId,String unit)
    {
        return   success(partnerList.chartInfoRatio(partnerId, unit));
    }
    /**
     * 新检测线图
     */
    @GetMapping("/newChartInfoRatio")
    public CommonResult newChartInfoRatio(String unit)
    {
        return   success(partnerList.newChartInfoRatio(unit));
    }
    /**
     * 首页 订单信息
     */
    @GetMapping("/orderInfo")
    public CommonResult orderInfo(Long partnerId)
    {
        return   success(partnerList.orderInfo(partnerId));
    }
    /**
     * 热销商品列表
     */
    @GetMapping("/hotGoodsList")
    public CommonResult hotGoodsList(Long partnerId)
    {
        return   success(partnerList.hotGoodsList(partnerId));
    }
    /**
     * 热销商品列表
     */
    @GetMapping("/newHotGoodsList")
    public CommonResult newHotGoodsList()
    {
        return   success(partnerList.newHotGoodsList());
    }


    /**
     * 分页查询所有数据
     *
     * @return 所有数据
     */
    @GetMapping("/categoryList")
    public CommonResult categoryList(Long partnerId)
    {

     return    success( partnerList.categoryList(partnerId));
    }
    /**
     * 发布商品
     */
    @PostMapping("/addGoods")
    public CommonResult addGoods(@RequestBody ShopInspectionGoods goods) throws Exception {
        partnerList.addGoods(goods);
        return   success();
    }

    /**
     * 商品管理列表
     */
    @GetMapping("/goodsList")
    public CommonResult goodsList(Long partnerId,String isListing,String goodsTitle,
                                  @RequestParam(value = "pageNum" ,required = false ,defaultValue = "1") Integer pageNum,
                                  @RequestParam(value ="pageSize" ,required = false ,defaultValue = "10") Integer pageSize)
    {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partners = partnerList.getById(partnerId);
        if (!partners.getUserId().equals(user.getId())){
            return null;
        }
        Page<GoodsVo> page = new Page<>(pageNum, pageSize);
        IPage<GoodsVo> list = partnerList.goodsList(page,partnerId, isListing, goodsTitle);
        return success(list);
    }
    /**
     * 商品管理列表
     */
    @GetMapping("/canUsegoods")
    public CommonResult canUseGoods(Long partnerId)
    {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partners = partnerList.getById(partnerId);
        if (!partners.getUserId().equals(user.getId())){
            return null;
        }
        return success(partnerList.canUseGoods(partnerId));
    }
    /**
     * 商品详细信息
     */
    @GetMapping("/goodsDetail")
    public CommonResult goodsDetail(Long goodsId)
    {
        return   success(partnerList.goodsDetail(goodsId));
    }

    /**
     * 修改商品
     */
    @PostMapping("/editGoods")
    public CommonResult editGoods(@RequestBody ShopInspectionGoods goods) throws Exception {
        partnerList.editGoods(goods);
        return   success();
    }
    @PostMapping("/editSkuPrice")
    public CommonResult editSkuPrice(@RequestBody ShopInspectionGoods goods) throws Exception {
        partnerList.editSkuPrice(goods);
        return   success();
    }
    /**
     * 上下架
     */
    @PostMapping("/changeListing")
    public CommonResult changeListing(Long goodsId) throws Exception {
        partnerList.changeListing(goodsId);
        return   success();
    }
    /**
     * 删除商品
     */
    @PostMapping("/delGoods")
    public CommonResult delGoods(Long goodsId) throws Exception {
        partnerList.delGoods(goodsId);
        return   success();
    }
    /**
     * 管理店铺信息
     */
    @PostMapping("/getPartnerInfo")
    public CommonResult getPartnerInfo(Long partnerId)
    {
        return   success(partnerList.getPartnerInfo(partnerId));
    }

    /**
     * 管理店铺信息
     */
    @PostMapping("/editPartnerInfo")
    public CommonResult editPartnerInfo(@RequestBody ShopMallPartners partners)
    {
        partnerList.editPartnerInfo(partners);
        return   success();
    }

    /**
     * 店铺账户信息
     */
    @GetMapping("/accountInfo")
    public CommonResult accountInfo(Long partnerId)
    {
        return   success(partnerList.accountInfo(partnerId));
    }

    /**
     * 店铺账户信息
     */
    @GetMapping("/accountDetail")
    public CommonResult accountDetail(Long partnerId,
                                      @RequestParam(value = "pageNum" ,required = false ,defaultValue = "1") Integer pageNum,
                                      @RequestParam(value ="pageSize" ,required = false ,defaultValue = "10") Integer pageSize)
    {
        Page<PartnerBalanceDetail> page = new Page<>(pageNum, pageSize);
        IPage<PartnerBalanceDetail> details = partnerList.accountDetail(page,partnerId,pageNum,pageSize);
        return success(details);
    }
    /**
     * 当前店铺的订单信息
     */
    @GetMapping("/orderList")
    public CommonResult orderList(Long partnerId,String phoneNum, String title,
                                  @RequestParam(value = "pageNum" ,required = false ,defaultValue = "1") Integer pageNum,
                                  @RequestParam(value ="pageSize" ,required = false ,defaultValue = "10") Integer pageSize)
    {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partnersTmp = partnerList.getById(partnerId);
        if (!partnersTmp.getUserId().equals(user.getId())){
            return null;
        }
        Page<OrderAppDetail> page = new Page<>(pageNum, pageSize);
        IPage<OrderAppDetail> orderInfos = partnerList.orderList(page,partnerId,phoneNum, title);
        return success(orderInfos);
    }
    /**
     * 通过核销码获取订单信息
     */
    @GetMapping("/orderDetailByCode")
    public CommonResult orderDetailByCode(Long partnerId,String code) throws Exception {
        Long orderId = partnerList.orderDetailByCode(partnerId,code);
        return  success(orderId);
    }

    /**
     * 当前的订单信息
     */
    @GetMapping("/orderDetail")
    public CommonResult orderDetail(Long partnerId, Long orderId)
    {
        OrderAppDetail orderInfos = partnerList.orderDetail(partnerId,orderId);
        return  success(orderInfos);
    }
    /**
     * 店铺核销功能
     */
    @PostMapping("/takeOut")
    public CommonResult takeOut(Long partnerId,Long orderId,Long workId,String carNum) throws Exception {
       partnerList.takeOut(partnerId,orderId,workId,carNum);
        return   success();
    }
    @PostMapping("/addWorker")
    public CommonResult addWorker(Long partnerId,String realName,String phoneNum,Long postId) throws Exception {

        partnerList.addWorker(partnerId,realName,phoneNum,postId);
        return   success();
    }

    /**
     * 获取员工信息
     */
    @GetMapping("/getWorkList")
    public CommonResult<IPage<?>> getWorkList(Long partnerId, String workName, String phoneNum, Long postId, Integer pageNum, Integer pageSize)
    {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partnersTmp = partnerList.getById(partnerId);
        if (!partnersTmp.getUserId().equals(user.getId())){
            return null;
        }
        Page<LabelRespVO> page = new Page<>(pageNum, pageSize);
        IPage<PartnerWorker> workList = partnerList.pageWorkList(partnerId,postId, workName, phoneNum,page);
        return CommonResult.success(workList);
    }

    @PostMapping("/delWorker")
    public CommonResult delWorker(Long partnerId,String workIdStr) {
        String[] workIds = workIdStr.split(",");
        for (String workId : workIds) {
            partnerList.delWorker(partnerId,Long.parseLong(workId));
        }
        return   success();
    }

    //获取检测的数据
    @GetMapping("/inspectionList")
    public CommonResult inspectionList(Long partnerId,String status,String carNum,Integer pageSize,Integer pageNum) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        if (!partnerId.equals(partners.getPartnerId())){
            return null;
        }
        Page<InspectionInfo> page = new Page<>(pageNum,pageSize);
        IPage<InspectionInfo> inspectionInfos = partnerList.inspectionList(page,partnerId, status, carNum);
        return success(inspectionInfos);
    }

    //获取检测的详细信息
    @GetMapping("/inspectionDetail")
    public CommonResult inspectionDetail(Long inspectionInfoId) {
        return CommonResult.success(partnerList.inspectionDetail(inspectionInfoId));
    }

    //获取检测的数据
    @GetMapping("/workerInspectionList")
    public CommonResult workerInspectionList(Long partnerId,String status,String searchValue,Integer pageSize,Integer pageNum) {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        LambdaQueryWrapper<PartnerWorker> queryWrapper =new LambdaQueryWrapper<>();
        queryWrapper.eq(PartnerWorker::getUserId,user.getId()).eq(PartnerWorker::getPartnerId,partnerId);
        PartnerWorker worker = partnerWorkerService.getOne(queryWrapper);
        if (ObjectUtil.isEmpty(worker)){
            return null;
        }
        Page<InspectionInfo> page = new Page<>(pageNum,pageSize);
        IPage<InspectionInfo> inspectionInfos = partnerList.inspectionList(page,partnerId, status, searchValue);
        return success(inspectionInfos);
    }
    //增加检测步骤信息
    @PostMapping("/addStepInfo")
    public CommonResult addStepInfo(@RequestBody InspectionStepInfo stepInfo) {
        partnerList.addStepInfo(stepInfo);
        return success();
    }
    //增加检测结果
    @PostMapping("/stopInspection")
    public CommonResult editInspection(@RequestBody InspectionInfo info) throws Exception {
        partnerList.stopInspection(info);
        return success();
    }
    //完成制证
    @PostMapping("/makeCertOk")
    public CommonResult makeCertOk(Long inspectionId) {
        partnerList.makeCertOk(inspectionId);
        return success();
    }
    //获取到店预约的数据
    @GetMapping("/getAppointmentList")
    public CommonResult getAppointmentList(Long partnerId,String phoneNum,Integer pageSize,Integer pageNum) {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partnersTmp = partnerList.getById(partnerId);
        if (!partnersTmp.getUserId().equals(user.getId())){
            return null;
        }
        Page<InspectionAppointment> page = new Page<>(pageNum,pageSize);
        IPage<InspectionAppointment> appointments = partnerList.getAppointmentList(page,partnerId,phoneNum);
        return success(appointments);
    }

    //获取上门取车数据
    @GetMapping("/getPickCarList")
    public CommonResult getPickCarList(Long partnerId,String phoneNum,String pickStatus,Integer pageSize,Integer pageNum) {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partnersTmp = partnerList.getById(partnerId);
        if (!partnersTmp.getUserId().equals(user.getId())){
            return null;
        }
        Page<InspectionPickCar> page = new Page<>(pageNum,pageSize);
        IPage<InspectionPickCar> pickCarList = partnerList.getPickCarList(page,partnerId,phoneNum,pickStatus);
        return success(pickCarList);
    }

    //获取上门取车详情页
    @GetMapping("/getPickCarDetail")
    public CommonResult getPickCarDetail(Long dataId) {
        InspectionPickCar pickCar = partnerList.getPickCarDetail(dataId);
        return success(pickCar);
    }

    // 核销记录By核销人Id
    @GetMapping("/validationList")
    public CommonResult validationList(Long partnerId,String searchValue,
                                       @RequestParam(value = "pageNum" ,required = false ,defaultValue = "1") Integer pageNum,
                                       @RequestParam(value ="pageSize" ,required = false ,defaultValue = "10") Integer pageSize) {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partnersTmp = partnerList.getById(partnerId);
        if (!partnersTmp.getUserId().equals(user.getId())){
            return null;
        }
        Page<OrderInfo> page = new Page<>(pageNum, pageSize);
        IPage<OrderInfo> orderInfos = partnerList.validationList(page,partnerId,searchValue);
        return success(orderInfos);
    }

    //送券功能
    @PostMapping("/sendCoupon")
    public CommonResult sendCoupon(@RequestBody ShopCouponTemplate template) throws Exception {
        partnerList.sendCoupon(template);
        return success();
    }

    //优惠券列表
    @GetMapping("/listCoupon")
    public CommonResult listCoupon(Long partnerId,String searchValue,
                                   @RequestParam(value = "pageNum" ,required = false ,defaultValue = "1") Integer pageNum,
                                   @RequestParam(value ="pageSize" ,required = false ,defaultValue = "10") Integer pageSize){
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        ShopMallPartners partnersTmp = partnerList.getById(partnerId);
        if (!partnersTmp.getUserId().equals(user.getId())){
            return success(new ArrayList<>());
        }
        Page<ShopCouponTemplate> page = new Page<>(pageNum, pageSize);
        IPage<ShopCouponTemplate> shopCouponTemplates = partnerList.listCoupon(page,partnerId, searchValue);
        return success(shopCouponTemplates);
    }
    //删除优惠券
    @PostMapping("/delCoupon")
    public CommonResult delCoupon(Long partnerId,Long id){
        partnerList.delCoupon(partnerId,id);
        return success();
    }

    //指派工人上门取车
    @PostMapping("/designatePickCarWorker")
    public CommonResult designatePickCarWorker(Long pickCarId,Long workerId){
        partnerList.designatePickCarWorker(pickCarId,workerId);
        return success();
    }

    //获取上门取车数据
    @GetMapping("/getPickCarListOfWorker")
    public CommonResult getPickCarListOfWorker(Long partnerId,String phoneNum,
                                               @RequestParam(value = "pageNum" ,required = false ,defaultValue = "1") Integer pageNum,
                                               @RequestParam(value ="pageSize" ,required = false ,defaultValue = "10") Integer pageSize) {
        LoginUser user = SecurityFrameworkUtils.getLoginUser();
        LambdaQueryWrapper<PartnerWorker> queryWrapper =new LambdaQueryWrapper<>();
        queryWrapper.eq(PartnerWorker::getUserId,user.getId()).eq(PartnerWorker::getPartnerId,partnerId);
        PartnerWorker worker = partnerWorkerService.getOne(queryWrapper);
        if (ObjectUtil.isEmpty(worker)){
            return null;
        }
        Page<InspectionPickCar> page = new Page<>(pageNum, pageSize);
        IPage<InspectionPickCar> pickCarList = partnerList.getPickCarListOfWorker(page,worker.getId(),phoneNum);
        return success(pickCarList);
    }

    //获取客户来源
    @GetMapping("/getCustomerSource")
    public CommonResult getCustomerSource(String searchValue) throws Exception {
        ShopMallPartners partners = partnerList.shopInfoByUserId();
        String dictStr = "customer_source-"+partners.getPartnerId();
        DictTypeDO sysDictType = dictTypeService.getDictType(dictStr);
        if (ObjectUtil.isEmpty(sysDictType)){
            //初始化
            DictTypeSaveReqVO save = new DictTypeSaveReqVO();
            save.setName("客户来源-"+partners.getPartnerName());
            save.setStatus(0);
            save.setType(dictStr);
            dictTypeService.createDictType(save);
        }
        List<DictDataDO> dataList = dictDataService.getDictDataListByDictType(dictStr);
        if (CollectionUtil.isEmpty(dataList)){
            dataList =new ArrayList<>();
        }
        if (StringUtils.isNotEmpty(searchValue)){
            dataList = dataList.stream().filter(it->{
                return it.getLabel().contains(searchValue);
            }).collect(Collectors.toList());
        }
        return success(dataList);
    }

    //新增客户来源
    @PostMapping("/addCustomerSource")
    public CommonResult addCustomerSource(@RequestBody SysDictData dictData) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        String dictStr = "customer_source-"+partners.getPartnerId();
        DictTypeDO sysDictType = dictTypeService.getDictType(dictStr);

        DictDataSaveReqVO dictSave = new DictDataSaveReqVO();
        dictSave.setLabel(dictData.getDictLabel());
        dictSave.setDictType(sysDictType.getType());
        dictSave.setStatus(0);
        dictSave.setValue(dictData.getDictLabel());
        dictSave.setCssClass("default");
        dictSave.setRemark(dictData.getRemark());
        dictDataService.createDictData(dictSave);
        return success();
    }

    //新增客户来源
    @PostMapping("/delCustomerSource")
    public CommonResult delCustomerSource(Long dictId){
        dictDataService.deleteDictData(dictId);
        return success();
    }

    @PostMapping("/vehicleLicenseOCR")
    public CommonResult vehicleLicenseOCR(String imagePath) throws Exception
    {
        return success(partnerList.vehicleLicenseOCR(imagePath));
    }
    //线下收费
    @PostMapping("/offlineCharging")
    public CommonResult offlineCharging(@RequestBody InspectionInfoVo infoVo)
    {
        partnerList.offlineCharging(infoVo);
        return success();
    }



    //获取收款账号
    @GetMapping("/getBankAccountList")
    public CommonResult getBankAccountList(String searchValue) throws Exception {
        ShopMallPartners partners = partnerList.shopInfoByUserId();
        String dictStr = "partner_bankList-"+partners.getPartnerId();
        DictTypeDO sysDictType = dictTypeService.getDictType(dictStr);
        if (ObjectUtil.isEmpty(sysDictType)){
            //初始化
            DictTypeSaveReqVO sysDictTypeSave =new DictTypeSaveReqVO();
            sysDictTypeSave.setName("收款账户-"+partners.getPartnerName());
            sysDictTypeSave.setStatus(0);
            sysDictTypeSave.setType(dictStr);
            dictTypeService.createDictType(sysDictTypeSave);
        }
        List<DictDataDO> dataList = dictDataService.getDictDataListByDictType(dictStr);
        if (CollectionUtil.isEmpty(dataList)){
            dataList =new ArrayList<>();
        }
        if (StringUtils.isNotEmpty(searchValue)){
            dataList = dataList.stream().filter(it->{
                return it.getLabel().contains(searchValue);
            }).collect(Collectors.toList());
        }
        return success(dataList);
    }

    //新增银行卡账户
    @PostMapping("/addBankAccount")
    public CommonResult addBankAccount(@RequestBody SysDictData dictData) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        String dictStr = "partner_bankList-"+partners.getPartnerId();
        DictTypeDO sysDictType = dictTypeService.getDictType(dictStr);

        DictDataSaveReqVO dictSave = new DictDataSaveReqVO();

        dictSave.setDictType(sysDictType.getType());
        dictSave.setStatus(0);
        dictSave.setLabel(dictData.getDictLabel());
        dictSave.setValue(dictData.getDictValue());
        dictSave.setRemark(dictData.getRemark());
        dictSave.setCssClass("default");
        dictDataService.createDictData(dictSave);
        return success();
    }

    //删除银行卡账户
    @PostMapping("/delBankAccount")
    public CommonResult delBankAccount(Long dictId){
        dictDataService.deleteDictData(dictId);
        return success();
    }

    //工单预览
    @GetMapping("/workOrderView")
    public CommonResult workOrderView(Long inspectionId){
        return success(partnerList.workOrderView(inspectionId));
    }

    //岗位信息
    @GetMapping("/inspectionPostInfo")
    public CommonResult inspectionPostInfo(){
        return success(partnerList.inspectionPostInfo());
    }

    //统计表格1
    @GetMapping("/staticsTable1")
    public CommonResult staticsTable1(String startTime,String endTime) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        return success(partnerList.staticsTable1(partners.getPartnerId(),startTime,endTime));
    }
    //统计表格1
    @GetMapping("/newStaticsTable1")
    public CommonResult newStaticsTable1(String startTime,String endTime) throws Exception {
        return success(partnerList.newStaticsTable1(startTime,endTime));
    }

    //统计表格2
    @GetMapping("/staticsTable2")
    public CommonResult staticsTable2(String startTime,String endTime) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        return success(partnerList.staticsTable2(partners.getPartnerId(),startTime,endTime));
    }
    //新统计表格2
    @GetMapping("/newStaticsTable2")
    public CommonResult newStaticsTable2(String startTime,String endTime) throws Exception {
        return success(partnerList.newStaticsTable2(startTime,endTime));
    }
    //统计表格3
    @GetMapping("/staticsTable3")
    public CommonResult staticsTable3(String startTime,String endTime) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        return success(partnerList.staticsTable3(partners.getPartnerId(),startTime,endTime));
    }
    //新统计表格3
    @GetMapping("/newStaticsTable3")
    public CommonResult newStaticsTable3(String startTime,String endTime) throws Exception {
        return success(partnerList.newStaticsTable3(startTime,endTime));
    }
    //统计表格3
    @GetMapping("/staticsTable3Detail")
    public CommonResult staticsTable3Detail(String startTime,String endTime,String remark) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        return success(partnerList.staticsTable3Detail(partners.getPartnerId(),startTime,endTime,remark));
    }
    //统计表格4
    @GetMapping("/staticsTable4")
    public CommonResult staticsTable4(String startTime,String endTime) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        return success(partnerList.staticsTable4(partners.getPartnerId(),startTime,endTime));
    }
    //统计表格5
    @GetMapping("/staticsTable5")
    public CommonResult staticsTable5(String startTime,String endTime) throws Exception {
        ShopMallPartners partners = partnerList.shopInfo();
        return success(partnerList.staticsTable5(partners.getPartnerId(),startTime,endTime));
    }

}
