cy
2023-12-09 149cc67e240b69585a562ba16c288bfb75f56fda
consum-base/src/main/java/com/consum/base/service/impl/UsingFormBackServiceImpl.java
@@ -2,6 +2,7 @@
import com.consum.base.core.CodeGeneratorEnum;
import com.consum.base.core.CodeGeneratorService;
import com.consum.base.core.DepUsingFormBackCoreServiceImpl;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.MapUtils;
import com.consum.base.core.utils.MapperUtil;
@@ -11,40 +12,27 @@
import com.consum.base.pojo.request.UsingFormBackGoodsInfo;
import com.consum.base.pojo.request.UsingFormBackParam;
import com.consum.base.pojo.request.baseGoodModel;
import com.consum.base.pojo.response.BaseGoodsTemplateInfo;
import com.consum.base.pojo.response.UseInfo;
import com.consum.base.pojo.response.UsingFormBackDetailListVO;
import com.consum.base.pojo.response.UsingFormBackDetailVO;
import com.consum.base.pojo.response.UsingFormBackGoodsTemplateInfo;
import com.consum.base.pojo.response.UsingFormBackModelInfo;
import com.consum.base.pojo.response.UsingFormBackVO;
import com.consum.base.service.BaseCategoryService;
import com.consum.base.service.FinSysTenantDepartmentService;
import com.consum.base.service.LWhFormTransferService;
import com.consum.base.service.UsingFormBackGoodsService;
import com.consum.base.service.UsingFormBackModelService;
import com.consum.base.service.UsingFormBackService;
import com.consum.model.po.BaseCategory;
import com.consum.model.po.FinSysTenantDepartment;
import com.consum.model.po.FinSysTenantUser;
import com.consum.model.po.LWhFormTransfer;
import com.consum.model.po.UsingFormBack;
import com.consum.model.po.UsingFormBackGoods;
import com.consum.model.po.UsingFormBackModel;
import com.consum.base.pojo.response.*;
import com.consum.base.service.*;
import com.consum.model.po.*;
import com.iplatform.model.po.S_user_core;
import com.walker.db.page.GenericPager;
import com.walker.infrastructure.utils.CollectionUtils;
import com.walker.infrastructure.utils.DateUtils;
import com.walker.infrastructure.utils.StringUtils;
import com.walker.jdbc.service.BaseServiceImpl;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.apache.commons.compress.utils.Lists;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * @author asus
@@ -67,90 +55,104 @@
    private FinSysTenantDepartmentService finSysTenantDepartmentService;
    @Autowired
    private LWhFormTransferService lWhFormTransferService;
    @Resource
    private DepUsingFormBackCoreServiceImpl depUsingFormBackCoreService;
    @Resource
    private UsingFormBackModelService UsingFormBackModelService;
    @Override
    public void add(UsingFormBackParam usingFormBackParam, FinSysTenantUser sysInfo) {
    public void add(UsingFormBackParam usingFormBackParam, FinSysTenantUser sysInfo, S_user_core currentUser) {
        Long departmentId = usingFormBackParam.getDepartmentId();
        Long operatorId = usingFormBackParam.getOperatorId();
        String operatorName = usingFormBackParam.getOperatorName();
        Long backTime = usingFormBackParam.getDealTime();
        String procureDoc = usingFormBackParam.getProcureDoc();
        List<UsingFormBackGoodsInfo> goodsList = usingFormBackParam.getGoods();
        // 检查部门是否存在
        FinSysTenantDepartment department = finSysTenantDepartmentService.getById(departmentId);
        if (department == null) {
            throw new RuntimeException("部门不存在");
        }
        String departmentName = department.getName();
        Long operatorId = usingFormBackParam.getOperatorId();
        String operatorName = usingFormBackParam.getOperatorName();
        Long backTime = usingFormBackParam.getDealTime();
        String procureDoc = usingFormBackParam.getProcureDoc();
        List<UsingFormBackGoodsInfo> usingFormBackGoodsInfo = usingFormBackParam.getGoods();
        Long usingFormBackId = addUsingFormBack(sysInfo, departmentId, departmentName, operatorId, operatorName, backTime, procureDoc);
        for (UsingFormBackGoodsInfo backingGoodsInfo : usingFormBackGoodsInfo) {
            Long baseCategoryId = backingGoodsInfo.getBaseCategoryId();
            Long baseGoodsTemplateId = backingGoodsInfo.getBaseGoodsTemplateId();
            String goodsTemplateName = backingGoodsInfo.getGoodsTemplateName();
            Long transBusinessId = backingGoodsInfo.getTransBusinessId();
            String businessFormCode = backingGoodsInfo.getBusinessFormCode();
        // 添加退回表单
        Long usingFormBackId =
            addUsingFormBack(sysInfo, departmentId, departmentName, operatorId, operatorName, backTime, procureDoc);
            UsingFormBackGoods usingFormBackGoods = new UsingFormBackGoods();
            usingFormBackGoods.setId(IdUtil.generateId());
            usingFormBackGoods.setUsingFormBackId(usingFormBackId);
            usingFormBackGoods.setBaseGoodsTemplateId(baseGoodsTemplateId);
            usingFormBackGoods.setBaseGoodsTemplateName(goodsTemplateName);
        // 批量插入退回商品和退回商品模型
        List<UsingFormBackGoods> goodsBatch = new ArrayList<>();
        List<UsingFormBackModel> modelBatch = new ArrayList<>();
            BaseCategory baseCategory = baseCategoryService.getById(baseCategoryId);
            String categoryName = baseCategory.getCategoryName();
            String classification = baseCategory.getClassification();
            usingFormBackGoods.setCategoryName(categoryName);
            usingFormBackGoods.setClassification(classification);
            usingFormBackGoods.setTransBusinessId(transBusinessId);
            usingFormBackGoods.setBusinessFormCode(businessFormCode);
        for (UsingFormBackGoodsInfo goodsInfo : goodsList) {
            UsingFormBackGoods goods = createUsingFormBackGoods(usingFormBackId, goodsInfo);
            goodsBatch.add(goods);
            LWhFormTransfer lWhFormTransfer = lWhFormTransferService.selectById(transBusinessId);
            Integer outWarehouseType = lWhFormTransfer.getOutWarehouseType();
            Long outWarehouseId = lWhFormTransfer.getOutWarehouseId();
            usingFormBackGoods.setTransOutWarehouseType(outWarehouseType);
            usingFormBackGoods.setTransOutWarehouseId(outWarehouseId);
            usingFormBackModelService.insert(usingFormBackGoods);
            for (baseGoodModel model : backingGoodsInfo.getModels()) {
                UsingFormBackModel usingFormBackModel = new UsingFormBackModel();
                usingFormBackModel.setId(IdUtil.generateId());
                usingFormBackModel.setUsingFormBackId(usingFormBackId);
                usingFormBackModel.setUsingFormBackGoodsId(usingFormBackGoods.getId());
                usingFormBackModel.setBaseGoodsTemplateId(model.getGoodsTemplatesId());
                usingFormBackModel.setBaseGoodsTemplateName(goodsTemplateName);
                usingFormBackModel.setClassification(model.getClassification());
                usingFormBackModel.setUnit(model.getUnit());
                usingFormBackModel.setBaseGoodsModelsId(model.getBaseGoodsModelsId());
                usingFormBackModel.setBaseGoodsModelsName(model.getModelName());
                usingFormBackModel.setProcureModelUserId(model.getModelUserId());
                usingFormBackModel.setInitialCount(model.getGoodsNum());
                usingFormBackModel.setUseCount(model.getUserUseCount());
                usingFormBackModel.setCounts(model.getCounts());
                usingFormBackModel.setGoodsUserName(model.getNowUserName());
                usingFormBackGoodsService.insert(usingFormBackModel);
            for (baseGoodModel model : goodsInfo.getModels()) {
                UsingFormBackModel formModel =
                    createUsingFormBackModel(usingFormBackId, goods.getId(), goodsInfo, model);
                modelBatch.add(formModel);
            }
        }
        // 批量插入退回商品和退回商品模型
        usingFormBackModelService.insertBatch(goodsBatch);
        usingFormBackGoodsService.insertBatch(modelBatch);
        depUsingFormBackCoreService.updateBack(usingFormBackId, currentUser,
            DateUtils.getDateTimeNumber(System.currentTimeMillis()));
    }
    private UsingFormBackGoods createUsingFormBackGoods(Long usingFormBackId, UsingFormBackGoodsInfo goodsInfo) {
        UsingFormBackGoods goods = new UsingFormBackGoods();
        goods.setId(IdUtil.generateId());
        goods.setUsingFormBackId(usingFormBackId);
        goods.setBaseGoodsTemplateId(goodsInfo.getBaseGoodsTemplateId());
        goods.setBaseGoodsTemplateName(goodsInfo.getGoodsTemplateName());
        BaseCategory baseCategory = baseCategoryService.getById(goodsInfo.getBaseCategoryId());
        goods.setCategoryName(baseCategory.getCategoryName());
        goods.setClassification(baseCategory.getClassification());
        goods.setTransBusinessId(goodsInfo.getTransBusinessId());
        goods.setBusinessFormCode(goodsInfo.getBusinessFormCode());
        LWhFormTransfer lWhFormTransfer = lWhFormTransferService.selectById(goodsInfo.getTransBusinessId());
        goods.setTransOutWarehouseType(lWhFormTransfer.getOutWarehouseType());
        goods.setTransOutWarehouseId(lWhFormTransfer.getOutWarehouseId());
        return goods;
    }
    private UsingFormBackModel createUsingFormBackModel(Long usingFormBackId, Long usingFormBackGoodsId,
        UsingFormBackGoodsInfo goodsInfo, baseGoodModel model) {
        UsingFormBackModel formModel = new UsingFormBackModel();
        formModel.setId(IdUtil.generateId());
        formModel.setUsingFormBackId(usingFormBackId);
        formModel.setUsingFormBackGoodsId(usingFormBackGoodsId);
        formModel.setBaseGoodsTemplateId(model.getGoodsTemplatesId());
        formModel.setBaseGoodsTemplateName(goodsInfo.getGoodsTemplateName());
        formModel.setClassification(model.getClassification());
        formModel.setUnit(model.getUnit());
        formModel.setBaseGoodsModelsId(model.getBaseGoodsModelsId());
        formModel.setBaseGoodsModelsName(model.getModelName());
        formModel.setProcureModelUserId(model.getModelUserId());
        formModel.setInitialCount(model.getGoodsNum());
        formModel.setUseCount(model.getUserUseCount());
        formModel.setCounts(model.getCounts());
        formModel.setGoodsUserName(model.getNowUserName());
        return formModel;
    }
    @Override
    public PageUtil selectPageByList(UsingFormBackQry usingFormBackParam) {
        StringBuilder sql = new StringBuilder("SELECT\n"
            + "\tDISTINCT ufb.ID,\n"
            + "\tufb.BUSINESS_FORM_CODE,\n"
            + "\tufb.DEPARTMENT_NAME,\n"
            + "\tufb.OPERATOR_NAME,\n"
            + "\tufb.DEAL_TIME\n"
            + "FROM\n"
            + "\tusing_form_back ufb\n"
            + "\tLEFT JOIN using_form_back_goods ufbg ON ufb.ID = ufbg.USING_FORM_BACK_ID\n"
            + "\tLEFT JOIN using_form_back_model ufbm ON ufbg.ID = ufbm.USING_FORM_BACK_GOODS_ID\n"
            + "where 1=1 ");
        StringBuilder sql = new StringBuilder("SELECT\n" + "\tDISTINCT ufb.ID,\n" + "\tufb.BUSINESS_FORM_CODE,\n"
            + "\tufb.DEPARTMENT_NAME,\n" + "\tufb.OPERATOR_NAME,\n" + "\tufb.DEAL_TIME\n" + "FROM\n"
            + "\tusing_form_back ufb\n" + "\tLEFT JOIN using_form_back_goods ufbg ON ufb.ID = ufbg.USING_FORM_BACK_ID\n"
            + "\tLEFT JOIN using_form_back_model ufbm ON ufbg.ID = ufbm.USING_FORM_BACK_GOODS_ID\n" + "where 1=1 ");
        String businessFormCode = usingFormBackParam.getBusinessFormCode();
        Long departmentId = usingFormBackParam.getDepartmentId();
@@ -199,31 +201,15 @@
            map.put("createName", createName);
        }
        sql.append("ORDER BY ufb.CREATE_TIME DESC ");
        GenericPager<Map<String, Object>> mapGenericPager = this.selectSplit(sql.toString(), map, usingFormBackParam.getPageNum(),
            usingFormBackParam.getPageSize(), new MapperUtil());
        GenericPager<Map<String, Object>> mapGenericPager = this.selectSplit(sql.toString(), map,
            usingFormBackParam.getPageNum(), usingFormBackParam.getPageSize(), new MapperUtil());
        PageUtil pageUtil = new PageUtil(mapGenericPager);
        List<UsingFormBackVO> pageList = Lists.newArrayList();
        mapGenericPager.getDatas().forEach(item -> {
            UsingFormBackVO usingFormBackVO = MapUtils.convertMapToObj(item, UsingFormBackVO.class);
            Long id = usingFormBackVO.getId();
            StringBuilder countSql = new StringBuilder("SELECT \n"
                + "\tufbg.BASE_GOODS_TEMPLATE_NAME,\n"
                + "\tsum(ufbm.COUNTS) count,\n"
                + "\tufbm.UNIT\n"
                + "FROM\n"
                + "\tusing_form_back_goods ufbg\n"
                + "\tLEFT JOIN using_form_back_model ufbm ON ufbg.ID = ufbm.USING_FORM_BACK_GOODS_ID\n"
                + "where ufbg.USING_FORM_BACK_ID = :id group by ufbg.BASE_GOODS_TEMPLATE_ID ");
            Map<String, Object> countSqlMap = new HashMap<>();
            countSqlMap.put("id", id);
            List<Map<String, Object>> select = this.select(countSql.toString(), countSqlMap, new MapperUtil());
            List<BaseGoodsTemplateInfo> baseGoodsTemplateInfoList = Lists.newArrayList();
            select.forEach(entity -> {
                BaseGoodsTemplateInfo baseGoodsTemplateInfo = MapUtils.convertMapToObj(entity, BaseGoodsTemplateInfo.class);
                baseGoodsTemplateInfoList.add(baseGoodsTemplateInfo);
            });
            usingFormBackVO.setGoodsTemplateInfoList(baseGoodsTemplateInfoList);
            List<GoodsTemplateCountVO> usingCount = UsingFormBackModelService.getUsingCountByBusinessId(id);
            usingFormBackVO.setGoodsTemplateInfoList(usingCount);
            pageList.add(usingFormBackVO);
        });
        pageUtil.setDatas(pageList);
@@ -232,28 +218,13 @@
    @Override
    public UsingFormBackDetailVO getDetail(Long id) {
        StringBuilder sql = new StringBuilder("SELECT\n"
            + "\tDISTINCT ufb.ID,\n"
            + "\tufb.BUSINESS_FORM_CODE,\n"
            + "\tufb.AGENCY_NAME,\n"
            + "\tufb.DEPARTMENT_NAME,\n"
            + "\tufb.OPERATOR_NAME,\n"
            + "\tufb.DEAL_TIME,\n"
            + "\tufb.PROCURE_DOC,\n"
            + "\tufbg.CATEGORY_NAME,\n"
            + "\tufbg.BASE_GOODS_TEMPLATE_NAME,\n"
            + "\tufbg.CLASSIFICATION,\n"
            + "\tufbg.BUSINESS_FORM_CODE,\n"
            + "\tufbm.BASE_GOODS_MODELS_NAME,\n"
            + "\tufbm.BASE_GOODS_TEMPLATE_ID,\n"
            + "\tufbm.BASE_GOODS_MODELS_ID,\n"
            + "\tufbm.UNIT,\n"
            + "\tufbm.COUNTS,\n"
            + "\tufbm.USE_COUNT,\n"
            + "\tufbm.GOODS_USER_NAME\n"
            + "FROM\n"
            + "\tusing_form_back ufb\n"
            + "\tLEFT JOIN using_form_back_goods ufbg ON ufb.ID = ufbg.USING_FORM_BACK_ID\n"
        StringBuilder sql = new StringBuilder("SELECT\n" + "\tDISTINCT ufb.ID,\n" + "\tufb.BUSINESS_FORM_CODE,\n"
            + "\tufb.AGENCY_NAME,\n" + "\tufb.DEPARTMENT_NAME,\n" + "\tufb.OPERATOR_NAME,\n" + "\tufb.DEAL_TIME,\n"
            + "\tufb.PROCURE_DOC,\n" + "\tufbg.CATEGORY_NAME,\n" + "\tufbg.BASE_GOODS_TEMPLATE_NAME,\n"
            + "\tufbg.CLASSIFICATION,\n" + "\tufbg.BUSINESS_FORM_CODE,\n" + "\tufbm.BASE_GOODS_MODELS_NAME,\n"
            + "\tufbm.BASE_GOODS_TEMPLATE_ID,\n" + "\tufbm.BASE_GOODS_MODELS_ID,\n" + "\tufbm.UNIT,\n"
            + "\tufbm.COUNTS,\n" + "\tufbm.USE_COUNT,\n" + "\tufbm.GOODS_USER_NAME\n" + "FROM\n"
            + "\tusing_form_back ufb\n" + "\tLEFT JOIN using_form_back_goods ufbg ON ufb.ID = ufbg.USING_FORM_BACK_ID\n"
            + "\tLEFT JOIN using_form_back_model ufbm ON ufbg.ID = ufbm.USING_FORM_BACK_GOODS_ID where ufb.id =:id");
        Map<String, Object> map = new HashMap<>();
        map.put("id", id);
@@ -263,13 +234,15 @@
        }
        List<UsingFormBackDetailDTO> usingFormBackDetailDTOList = Lists.newArrayList();
        select.forEach(item -> {
            UsingFormBackDetailDTO usingFormBackDetailDTO = MapUtils.convertMapToObj(item, UsingFormBackDetailDTO.class);
            UsingFormBackDetailDTO usingFormBackDetailDTO =
                MapUtils.convertMapToObj(item, UsingFormBackDetailDTO.class);
            usingFormBackDetailDTOList.add(usingFormBackDetailDTO);
        });
        UsingFormBackDetailVO usingFormBackDetailVO = new UsingFormBackDetailVO();
        List<UsingFormBackGoodsTemplateInfo> goodsTemplateInfoList = Lists.newArrayList();
        usingFormBackDetailDTOList.stream().collect(Collectors.groupingBy(UsingFormBackDetailDTO::getBaseGoodsTemplateId))
        usingFormBackDetailDTOList.stream()
            .collect(Collectors.groupingBy(UsingFormBackDetailDTO::getBaseGoodsTemplateId))
            .forEach((templateId, templateInfo) -> {
                UsingFormBackDetailDTO templateInfoDTO = templateInfo.get(0);
                BeanUtils.copyProperties(templateInfoDTO, usingFormBackDetailVO);
@@ -282,24 +255,27 @@
                goodsTemplateInfoList.add(usingFormBackGoodsTemplateInfo);
                usingFormBackDetailVO.setGoodsTemplateInfoList(goodsTemplateInfoList);
                List<UsingFormBackModelInfo> modelInfoList = Lists.newArrayList();
                templateInfo.stream().collect(Collectors.groupingBy(UsingFormBackDetailDTO::getBaseGoodsModelsId)).forEach((modelId, modelInfo) -> {
                    UsingFormBackDetailDTO modelInfoDTO = modelInfo.get(0);
                    UsingFormBackModelInfo usingFormBackModelInfo = new UsingFormBackModelInfo();
                    usingFormBackModelInfo.setBaseGoodsModelsName(modelInfoDTO.getBaseGoodsModelsName());
                    usingFormBackModelInfo.setUnit(modelInfoDTO.getUnit());
                    usingFormBackModelInfo.setId(modelId);
                    modelInfoList.add(usingFormBackModelInfo);
                    usingFormBackGoodsTemplateInfo.setModelInfoList(modelInfoList);
                    List<UseInfo> useInfoList = Lists.newArrayList();
                    for (UsingFormBackDetailDTO useInfoDTO : modelInfo) {
                        UseInfo useInfo = new UseInfo();
                        useInfo.setUseName(useInfoDTO.getGoodsUserName());
                        useInfo.setReturnNum(useInfoDTO.getCounts());
                        useInfo.setUseUnm(useInfoDTO.getUseCount());
                        useInfoList.add(useInfo);
                        usingFormBackModelInfo.setUseInfoList(useInfoList);
                    }
                });
                templateInfo.stream().collect(Collectors.groupingBy(UsingFormBackDetailDTO::getBaseGoodsModelsId))
                    .forEach((modelId, modelInfo) -> {
                        UsingFormBackDetailDTO modelInfoDTO = modelInfo.stream().findFirst().orElse(null);
                        UsingFormBackModelInfo usingFormBackModelInfo = new UsingFormBackModelInfo();
                        if (modelInfoDTO != null) {
                            usingFormBackModelInfo.setBaseGoodsModelsName(modelInfoDTO.getBaseGoodsModelsName());
                            usingFormBackModelInfo.setUnit(modelInfoDTO.getUnit());
                            usingFormBackModelInfo.setId(modelId);
                        }
                        modelInfoList.add(usingFormBackModelInfo);
                        usingFormBackGoodsTemplateInfo.setModelInfoList(modelInfoList);
                        List<UseInfo> useInfoList = Lists.newArrayList();
                        for (UsingFormBackDetailDTO useInfoDTO : modelInfo) {
                            UseInfo useInfo = new UseInfo();
                            useInfo.setUseName(useInfoDTO.getGoodsUserName());
                            useInfo.setReturnNum(useInfoDTO.getCounts());
                            useInfo.setUseUnm(useInfoDTO.getUseCount());
                            useInfoList.add(useInfo);
                            usingFormBackModelInfo.setUseInfoList(useInfoList);
                        }
                    });
            });
        return usingFormBackDetailVO;
@@ -307,21 +283,12 @@
    @Override
    public PageUtil selectPageByDetail(UsingFormBackQry usingFormBackParam) {
        StringBuilder sql = new StringBuilder("SELECT\n"
            + "\tufb.ID,\n"
            + "\tufb.BUSINESS_FORM_CODE,\n"
            + "\tufbm.BASE_GOODS_TEMPLATE_NAME,\n"
            + "\tufbm.BASE_GOODS_MODELS_NAME,\n"
            + "\tufbm.counts,\n"
            + "\tufb.AGENCY_NAME,\n"
            + "\tufb.DEPARTMENT_NAME,\n"
            + "\tufb.OPERATOR_NAME,\n"
            + "\tufb.DEAL_TIME\n"
            + "FROM\n"
            + "\tusing_form_back ufb\n"
        StringBuilder sql = new StringBuilder("SELECT\n" + "\tufb.ID,\n" + "\tufb.BUSINESS_FORM_CODE,\n"
            + "\tufbm.BASE_GOODS_TEMPLATE_NAME,\n" + "\tufbm.BASE_GOODS_MODELS_NAME,\n" + "\tufbm.counts,\n"
            + "\tufb.AGENCY_NAME,\n" + "\tufb.DEPARTMENT_NAME,\n" + "\tufb.OPERATOR_NAME,\n" + "\tufb.DEAL_TIME\n"
            + "FROM\n" + "\tusing_form_back ufb\n"
            + "\tLEFT JOIN using_form_back_goods ufbg ON ufb.ID = ufbg.USING_FORM_BACK_ID\n"
            + "\tLEFT JOIN using_form_back_model ufbm ON ufbg.ID = ufbm.USING_FORM_BACK_GOODS_ID\n"
            + "where 1=1 ");
            + "\tLEFT JOIN using_form_back_model ufbm ON ufbg.ID = ufbm.USING_FORM_BACK_GOODS_ID\n" + "where 1=1 ");
        String businessFormCode = usingFormBackParam.getBusinessFormCode();
        Long departmentId = usingFormBackParam.getDepartmentId();
@@ -370,8 +337,8 @@
            map.put("createName", createName);
        }
        sql.append("ORDER BY ufb.CREATE_TIME DESC ");
        GenericPager<Map<String, Object>> mapGenericPager = this.selectSplit(sql.toString(), map, usingFormBackParam.getPageNum(),
            usingFormBackParam.getPageSize(), new MapperUtil());
        GenericPager<Map<String, Object>> mapGenericPager = this.selectSplit(sql.toString(), map,
            usingFormBackParam.getPageNum(), usingFormBackParam.getPageSize(), new MapperUtil());
        PageUtil pageUtil = new PageUtil(mapGenericPager);
        List<UsingFormBackDetailListVO> pageList = Lists.newArrayList();
        mapGenericPager.getDatas().forEach(item -> {
@@ -382,10 +349,9 @@
        return pageUtil;
    }
    @Transactional
    public Long addUsingFormBack(FinSysTenantUser sysInfo, Long departmentId, String departmentName, Long operatorId, String operatorName, Long backTime,
        String procureDoc) {
    public Long addUsingFormBack(FinSysTenantUser sysInfo, Long departmentId, String departmentName, Long operatorId,
        String operatorName, Long backTime, String procureDoc) {
        UsingFormBack usingFormBack = new UsingFormBack();
        usingFormBack.setId(IdUtil.generateId());
        usingFormBack.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.GOBACK));