c27edf9c5689c80b2cc1f4eafb3f929bee8c4d09..bf321083251d5a14f4043ab0d70295b7af8610e6
2023-12-02 cy
feat: id生成方法替换
bf3210 对比 | 目录
2023-12-02 cy
feat: 部门报废详情、明细
b938f2 对比 | 目录
11个文件已修改
310 ■■■■■ 已修改文件
consum-base/src/main/java/com/consum/base/controller/DepFormScrappedController.java 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/controller/LWhWarningConfigController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/core/WarehouseCoreService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/query/LDeptFormScrappedQry.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/DepFormScrappedServiceImpl.java 73 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LGoodsUserRecordCoreService.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LWhFormInventoryCoreService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LWhFormOutputCoreService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LWhFormTransferCoreService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/controller/DepFormScrappedController.java
@@ -13,6 +13,7 @@
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.web.ResponseValue;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -26,12 +27,8 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -188,61 +185,83 @@
        }
    }
    public static void main(String[] args) {
        TemplateExportParams exportParams = new TemplateExportParams("D:\\MyProjects\\jmy\\低值易耗品\\low-consum-manage\\deploy-jar-single\\src\\main\\resources\\import\\deptScrapped.xlsx");
        exportParams.setHeadingStartRow(2);
    @GetMapping("/deptListByModel")
    public ResponseValue export() {
        LDeptFormScrappedQry param = CommonUtil.getObjFromReq(LDeptFormScrappedQry.class);
        LDeptFormScrappedQry query = new LDeptFormScrappedQry();
        CommonUtil.copyProperties(param, query);
        param = query;
        List<Map<String, Object>> export = new ArrayList<>();
        // 创建第一条数据
        Map<String, Object> data1 = new HashMap<>();
        data1.put("agencyName", 1);
        data1.put("baseGoodsTemplateName", "Bob");
        data1.put("scrappedName", "Bob");
        data1.put("bz", "Bob");
        data1.put("baseGoodsModelsName", 30);
        data1.put("counts", 30);
        data1.put("totalPrice", 30);
        export.add(data1);
        // 创建第二条数据
        Map<String, Object> data2 = new HashMap<>();
        data2.put("agencyName", 2);
        data2.put("baseGoodsTemplateName", "Bob");
        data2.put("scrappedName", "Bob");
        data2.put("bz", "Bob");
        data2.put("baseGoodsModelsName", 30);
        data2.put("counts", 30);
        data2.put("totalPrice", 30);
        export.add(data2);
        Map<String, Object> map = new HashMap<>();
        map.put("code", "2023");
        map.put("date", "2023");
        map.put("name", "operatorName");
        map.put("countNum", 0);
        map.put("totalAmount", 0);
        map.put("maplist", export);
        Workbook workbook = ExcelExportUtil.exportExcel(exportParams, map);
        File file = new File("C:\\Users\\cy\\Desktop\\新建文件夹");
        OutputStream stream = null;
        try {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy_MM_dd");
            stream = new FileOutputStream(new File(file, "机构客户信息表.xls"));
            //document.write(stream);
            workbook.write(stream);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (stream != null) ;
            try {
                stream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        FinSysTenantUser sysInfo = getSysInfo();
        if (sysInfo == null) {
            throw new RuntimeException("登录用户信息不存在");
        }
        /*当前登录人只能看到自己机构下的列表*/
        String tenantId = sysInfo.getTenantId();
        String paramAgencyId = param.getAgencyId();
        if (StringUtils.isEmpty(paramAgencyId) || !paramAgencyId.startsWith(tenantId)) {
            param.setAgencyId(tenantId);
        }
        List<Map<String, Object>> export = depFormScrappedService.listByModel(param);
        return ResponseValue.success(export);
    }
//    public static void main(String[] args) {
//        TemplateExportParams exportParams = new TemplateExportParams("D:\\MyProjects\\jmy\\低值易耗品\\low-consum-manage\\deploy-jar-single\\src\\main\\resources\\import\\deptScrapped.xlsx");
//        exportParams.setHeadingStartRow(2);
//
//        List<Map<String, Object>> export = new ArrayList<>();
//
//        // 创建第一条数据
//        Map<String, Object> data1 = new HashMap<>();
//        data1.put("agencyName", 1);
//        data1.put("baseGoodsTemplateName", "Bob");
//        data1.put("scrappedName", "Bob");
//        data1.put("bz", "Bob");
//        data1.put("baseGoodsModelsName", 30);
//        data1.put("counts", 30);
//        data1.put("totalPrice", 30);
//        export.add(data1);
//
//        // 创建第二条数据
//        Map<String, Object> data2 = new HashMap<>();
//        data2.put("agencyName", 2);
//        data2.put("baseGoodsTemplateName", "Bob");
//        data2.put("scrappedName", "Bob");
//        data2.put("bz", "Bob");
//        data2.put("baseGoodsModelsName", 30);
//        data2.put("counts", 30);
//        data2.put("totalPrice", 30);
//        export.add(data2);
//
//
//        Map<String, Object> map = new HashMap<>();
//        map.put("code", "2023");
//        map.put("date", "2023");
//        map.put("name", "operatorName");
//        map.put("countNum", 0);
//        map.put("totalAmount", 0);
//        map.put("maplist", export);
//
//        Workbook workbook = ExcelExportUtil.exportExcel(exportParams, map);
//
//        File file = new File("C:\\Users\\cy\\Desktop\\新建文件夹");
//        OutputStream stream = null;
//        try {
//            SimpleDateFormat sdf = new SimpleDateFormat("yyyy_MM_dd");
//            stream = new FileOutputStream(new File(file, "机构客户信息表.xls"));
//            //document.write(stream);
//            workbook.write(stream);
//        } catch (Exception e) {
//            e.printStackTrace();
//        } finally {
//            if (stream != null) ;
//            try {
//                stream.close();
//            } catch (IOException e) {
//                e.printStackTrace();
//            }
//        }
//    }
}
consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java
@@ -7,63 +7,33 @@
import com.consum.base.core.CodeGeneratorEnum;
import com.consum.base.core.CodeGeneratorService;
import com.consum.base.core.WhBusinessEnum;
import com.consum.base.core.utils.CommonUtil;
import com.consum.base.core.utils.MapUtils;
import com.consum.base.core.utils.MapperUtil;
import com.consum.base.core.utils.PageUtil;
import com.consum.base.core.utils.*;
import com.consum.base.pojo.LWhFormProcureGoodsInfoParam;
import com.consum.base.pojo.LWhFormProcureParam;
import com.consum.base.pojo.LWhProcureModelParam;
import com.consum.base.pojo.excel.ProcureExcelTemplate;
import com.consum.base.pojo.query.FormProcureQry;
import com.consum.base.pojo.response.FormProcureVO;
import com.consum.base.pojo.response.FromProcureTemplateInfoVO;
import com.consum.base.pojo.response.GoodsModelVO;
import com.consum.base.pojo.response.LWhFormProcureExtendVO;
import com.consum.base.pojo.response.LWhFormProcureGoodsVO;
import com.consum.base.service.BaseGoodsTemplateServiceImpl;
import com.consum.base.service.BaseWarehouseServiceImpl;
import com.consum.base.service.LOrgSupplierServiceImpl;
import com.consum.base.service.LWhFormProcureCoreService;
import com.consum.base.service.LWhFormProcureGoodsService;
import com.consum.base.service.LWhFormProcureService;
import com.consum.base.service.LWhGoodsService;
import com.consum.base.service.LWhProcureModelService;
import com.consum.model.po.BaseGoodsTemplate;
import com.consum.model.po.BaseWarehouse;
import com.consum.model.po.FinSysTenantUser;
import com.consum.model.po.LOrgSupplier;
import com.consum.model.po.LWhFormProcure;
import com.consum.model.po.LWhFormProcureGoods;
import com.consum.model.po.LWhProcureModel;
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.NumberGenerator;
import com.walker.web.ResponseValue;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.compress.utils.Lists;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.lang.reflect.Field;
import java.util.*;
/**
 * @ClassName LWhFormProcureController
@@ -126,7 +96,7 @@
        // 采购单id
        Long whFormProcureId = param.getId();
        if (whFormProcureId == null) {
            whFormProcureId = NumberGenerator.getLongSequenceNumber();
            whFormProcureId = IdUtil.generateId();
        }
        long procureTime = Long.valueOf(param.getProcureTime());
@@ -150,7 +120,7 @@
                return ResponseValue.error("采购单不能为空");
            }
            LWhFormProcureGoods procureGood = new LWhFormProcureGoods();
            long fromProcureGoodsId = NumberGenerator.getLongSequenceNumber();
            long fromProcureGoodsId = IdUtil.generateId();
            procureGood.setId(fromProcureGoodsId);
            procureGood.setWhFormProcureId(whFormProcureId);
            procureGood.setBaseCategoryId(baseCategoryId);
@@ -181,7 +151,7 @@
                // 查询型号库存
                int goodsModelNum = lWhGoodsService.queryGoodsModelNum(0, warehouseId, baseGoodsModelsId, 1, null);
                LWhProcureModel model = new LWhProcureModel();
                model.setId(NumberGenerator.getLongSequenceNumber());
                model.setId(IdUtil.generateId());
                model.setFromProcureGoodsId(fromProcureGoodsId);
                model.setBusinessType(WhBusinessEnum.CAIGOU.getValue() + 0);
                model.setBusinessId(whFormProcureId);
@@ -217,7 +187,7 @@
        supplierList.forEach(supplier -> {
            LOrgSupplier lOrgSupplier = new LOrgSupplier();
            lOrgSupplier.setId(NumberGenerator.getLongSequenceNumber());
            lOrgSupplier.setId(IdUtil.generateId());
            lOrgSupplier.setAgencyId(tenantId);
            lOrgSupplier.setAgencyName(tenantName);
            lOrgSupplier.setSupplier(supplier);
consum-base/src/main/java/com/consum/base/controller/LWhWarningConfigController.java
@@ -7,6 +7,7 @@
import com.consum.base.BaseController;
import com.consum.base.config.WhWarningImportVerifyHandler;
import com.consum.base.core.utils.CommonUtil;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.pojo.WarnConfImEntity;
import com.consum.base.pojo.WhWarningConfigParam;
import com.consum.base.pojo.query.WhWarningConfigQry;
@@ -123,7 +124,7 @@
                return ResponseValue.error("库存上限不能小于下限!");
            }
            WhWarningConfig whWarningConfig = new WhWarningConfig();
            whWarningConfig.setId(NumberGenerator.getLongSequenceNumber());
            whWarningConfig.setId(IdUtil.generateId());
            whWarningConfig.setWarehouseType(0);
            whWarningConfig.setBaseWarehouseId(baseWarehouseId);
            whWarningConfig.setBaseGoodsTemplateId(baseGoodsTemplateId);
@@ -299,7 +300,7 @@
                for (WarnConfImEntity warnConfImEntity : houseModelList) {
                    // 新增
                    WhWarningConfig whWarningConfig = new WhWarningConfig();
                    whWarningConfig.setId(NumberGenerator.getLongSequenceNumber());
                    whWarningConfig.setId(IdUtil.generateId());
                    whWarningConfig.setWarehouseType(0);
                    whWarningConfig.setBaseWarehouseId(warnConfImEntity.getBaseWarehouseId());
                    whWarningConfig.setBaseGoodsTemplateId(warnConfImEntity.getGoodsTemplateId());
@@ -332,7 +333,7 @@
                        limitEditByModeInfo(whWarningConfig);
                    } else {
                        // 新增
                        whWarningConfig.setId(NumberGenerator.getLongSequenceNumber());
                        whWarningConfig.setId(IdUtil.generateId());
                        whWarningConfig.setBaseGoodsTemplateId(warnConfImEntity.getGoodsTemplateId());
                        if (whWarningConfig.getBaseGoodsModelsId() == null) {
                            whWarningConfig.setGoodsType(1);
consum-base/src/main/java/com/consum/base/core/WarehouseCoreService.java
@@ -2,6 +2,7 @@
import com.consum.base.core.param.BaseWarehouseParam;
import com.consum.base.core.utils.DateUtil;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.SqlParameter;
import com.consum.model.po.*;
import com.walker.infrastructure.utils.NumberGenerator;
@@ -190,7 +191,7 @@
                //如果出库的型号与分发单里的型号相同
                if (goods.getBaseGoodsModelsId().longValue() == output.getWhGoods().getBaseGoodsModelsId().longValue()){
                    DepFormLendingModel model = new DepFormLendingModel();
                    model.setId(NumberGenerator.getLongSequenceNumber());
                    model.setId(IdUtil.generateId());
                    model.setCounts(goods.getCounts());
                    model.setDepFormLendingGoodsId(goods.getId());
                    model.setDepFormLendingId(goods.getDepFormLendingId());
@@ -270,7 +271,7 @@
                    //变更状态为调拨
                    nGoods.setStates(param.getOutput_type());
                    nGoods.setWhCount(param.getCount());
                    nGoods.setId(NumberGenerator.getLongSequenceNumber());
                    nGoods.setId(IdUtil.generateId());
                    insert(nGoods);
                    CheckWarehouseResult nresult = new CheckWarehouseResult();
@@ -320,7 +321,7 @@
            WhFormProcure procure = get(new WhFormProcure(),"ID=?",new Object[]{procureModel.getWhFormProcureId()});
            WhGoods goods = new WhGoods();
            goods.setId(NumberGenerator.getLongSequenceNumber());
            goods.setId(IdUtil.generateId());
            goods.setBaseGoodsTemplateId(procureModel.getBaseGoodsTemplateId());
            goods.setGoodsTemplateName(procureModel.getGoodsTemplateName());
            goods.setBaseGoodsModelsId(procureModel.getBaseGoodsModelsId());
consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java
@@ -1,13 +1,13 @@
package com.consum.base.core.service;
import cn.hutool.core.convert.Convert;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.service.BaseGoodsModelsServiceImpl;
import com.consum.base.service.BaseWarehouseServiceImpl;
import com.consum.base.service.LWhWarningServiceImpl;
import com.consum.model.po.BaseWarehouse;
import com.consum.model.po.FinSysTenantUser;
import com.consum.model.po.WhWarning;
import com.walker.infrastructure.utils.NumberGenerator;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
@@ -81,7 +81,7 @@
            List<Map<String, Object>> modelInfoList = baseGoodsModelsService.queryGoodsModelInfo(baseGoodsModelsId);
            Map<String, Object> modelInfo = modelInfoList.get(0);
            whWarning.setId(NumberGenerator.getLongSequenceNumber());
            whWarning.setId(IdUtil.generateId());
            whWarning.setWarehouseType(0);
            whWarning.setBaseWarehouseId(warehouseId);
            whWarning.setBaseWarehouseName(baseWarehouses.getWarehouseName());
consum-base/src/main/java/com/consum/base/pojo/query/LDeptFormScrappedQry.java
@@ -1,5 +1,6 @@
package com.consum.base.pojo.query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@@ -11,6 +12,10 @@
 **/
@Data
public class LDeptFormScrappedQry {
    /**
     * 报废单id
     */
    private Long id;
    /**
     * 报废单号
     */
@@ -37,6 +42,12 @@
     */
    private String agencyId;
    @ApiModelProperty("规格型号")
    private Long baseGoodsModelsId;
    @ApiModelProperty("部门ID")
    private Long departmentId;
    private Integer pageSize = 10;
    private Integer pageNum = 1;
consum-base/src/main/java/com/consum/base/service/DepFormScrappedServiceImpl.java
@@ -3,6 +3,7 @@
import cn.hutool.core.convert.Convert;
import com.consum.base.core.CodeGeneratorEnum;
import com.consum.base.core.CodeGeneratorService;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.MapperUtil;
import com.consum.base.pojo.DepFormScrappedGoodsParam;
import com.consum.base.pojo.DepFormScrappedModelParam;
@@ -15,7 +16,6 @@
import com.walker.db.page.GenericPager;
import com.walker.infrastructure.utils.CollectionUtils;
import com.walker.infrastructure.utils.DateUtils;
import com.walker.infrastructure.utils.NumberGenerator;
import com.walker.infrastructure.utils.StringUtils;
import com.walker.jdbc.service.BaseServiceImpl;
import com.walker.web.ResponseValue;
@@ -60,7 +60,7 @@
        //1.新增报废单记录
        DepFormScrapped lDeptFormScrapped = new DepFormScrapped();
        //报废单id
        long lWhFormScrappedId = NumberGenerator.getLongSequenceNumber();
        long lWhFormScrappedId = IdUtil.generateId();
        lDeptFormScrapped.setId(lWhFormScrappedId);
        lDeptFormScrapped.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.Scrapped));
        lDeptFormScrapped.setProcureDoc(param.getProcureDoc());
@@ -100,7 +100,7 @@
        for (DepFormScrappedGoodsParam depFormScrappedGoodsParam : scrappedGoodsInfo) {
            DepFormScrappedGoods depFormScrappedGoods = new DepFormScrappedGoods();
            depFormScrappedGoods.setId(NumberGenerator.getLongSequenceNumber());
            depFormScrappedGoods.setId(IdUtil.generateId());
            depFormScrappedGoods.setDepFormScrappedId(lWhFormScrappedId);
            depFormScrappedGoods.setBaseGoodsTemplateId(depFormScrappedGoodsParam.getBaseGoodsTemplateId());
            depFormScrappedGoods.setBaseGoodsTemplateName(depFormScrappedGoodsParam.getGoodsTemplateName());
@@ -138,7 +138,7 @@
            for (DepFormScrappedModelParam depFormScrappedModelParam : modelList) {
                DepFormScrappedModel depFormScrappedModel = new DepFormScrappedModel();
                depFormScrappedModel.setId(NumberGenerator.getLongSequenceNumber());
                depFormScrappedModel.setId(IdUtil.generateId());
                depFormScrappedModel.setDepFormScrappedId(lWhFormScrappedId);
                depFormScrappedModel.setDepFormScrappedGoodsId(depFormScrappedGoods.getId());
                //报废原因
@@ -202,8 +202,8 @@
            paramts.put("businessFormCode", param.getBusinessFormCode());
        }
        //机构
        sql.append(" and scrap.AGENCY_ID = :agencyId ");
        if (param.getAgencyId() != null) {
            sql.append(" and scrap.AGENCY_ID = :agencyId ");
            paramts.put("agencyId", param.getAgencyId());
        }
        //物品名称
@@ -244,6 +244,7 @@
        //2.查询报废单物品
        DepFormScrappedGoods goodsQuery = new DepFormScrappedGoods();
        goodsQuery.setDepFormScrappedId(id);
        List<DepFormScrappedGoods> formScrappedGoodsList = select(goodsQuery);
        List<Map> goodsList = new ArrayList<>();
        for (DepFormScrappedGoods scrappedGoods : formScrappedGoodsList) {
@@ -253,15 +254,21 @@
            DepFormScrappedModel depFormScrappedModel = new DepFormScrappedModel();
            depFormScrappedModel.setDepFormScrappedGoodsId(scrappedGoodsId);
            List<DepFormScrappedModel> scrappedModelList = select(depFormScrappedModel);
            scrappedGoodsMap.put("models", scrappedModelList);
            List<List<DepFormScrappedModel>> modelList = scrappedModelList.stream()
                    .collect(Collectors.groupingBy(DepFormScrappedModel::getBaseGoodsModelsId))
                    .values().stream()
                    .map(list -> list.stream().collect(Collectors.toList()))
                    .collect(Collectors.toList());
            scrappedGoodsMap.put("models", modelList);
            goodsList.add(scrappedGoodsMap);
        }
        scrappedExtend.setGoods(goodsList);
        return scrappedExtend;
    }
    private static String EXPORT_SQL = "SELECT scrap.BUSINESS_FORM_CODE,scrap.DEAL_TIME,scrap.OPERATOR_NAME,scrap.AGENCY_NAME,model.BASE_GOODS_TEMPLATE_NAME,model.BASE_GOODS_MODELS_NAME,scrap.OUT_WAREHOUSE_NAME,model.COUNTS,2 AS TOTAL_PRICE,model.SCRAPPED_NAME,NULL AS bz FROM DEP_FORM_SCRAPPED scrap LEFT JOIN DEP_FORM_SCRAPPED_MODEL model ON scrap.id=model.DEP_FORM_SCRAPPED_ID WHERE 1=1 ";
    private static String EXPORT_SQL_END = "order by scrap.BUSINESS_FORM_CODE desc ";
    private static String EXPORT_SQL = "SELECT scrap.id,scrap.BUSINESS_FORM_CODE,model.BASE_GOODS_TEMPLATE_NAME,model.BASE_GOODS_MODELS_NAME,model.COUNTS,scrap.AGENCY_NAME,scrap.DEPARTMENT_NAME,scrap.OPERATOR_NAME,scrap.DEAL_TIME,scrap.OUT_WAREHOUSE_NAME,2 AS TOTAL_PRICE,model.SCRAPPED_NAME,NULL AS bz FROM DEP_FORM_SCRAPPED scrap LEFT JOIN DEP_FORM_SCRAPPED_MODEL model ON scrap.id=model.DEP_FORM_SCRAPPED_ID WHERE 1=1 ";
    private static String EXPORT_SQL_END = "order by scrap.DEAL_TIME DESC";
    public List<Map<String, Object>> export(Long id, String agencyId) {
        HashMap<String, Object> paramts = new HashMap<>();
@@ -278,4 +285,54 @@
        }
        return select(sql.append(EXPORT_SQL_END).toString(), paramts, new MapperUtil());
    }
    public List<Map<String, Object>> listByModel(LDeptFormScrappedQry param) {
        HashMap<String, Object> paramts = new HashMap<>();
        StringBuilder sql = new StringBuilder(EXPORT_SQL);
        //报废单id
        if (param.getId() != null) {
            sql.append(" and scrap.id = :id");
            paramts.put("id", param.getId());
        }
        //报废单号
        if (param.getBusinessFormCode() != null) {
            sql.append(" and scrap.BUSINESS_FORM_CODE= :businessFormCode");
            paramts.put("businessFormCode", param.getBusinessFormCode());
        }
        //物品名称
        if (StringUtils.isNotEmpty(param.getGoodsTemplateName())){
            sql.append(" and model.BASE_GOODS_TEMPLATE_NAME LIKE :goodsTemplateName ");
            paramts.put("goodsTemplateName", StringUtils.CHAR_PERCENT + param.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
        }
        //规格型号
        if (param.getBaseGoodsModelsId() != null) {
            sql.append("and model.BASE_GOODS_MODELS_ID =:baseGoodsModelsId ");
            paramts.put("baseGoodsModelsId", param.getBaseGoodsModelsId());
        }
        //机构
        if (param.getAgencyId() != null) {
            sql.append(" and scrap.AGENCY_ID = :agencyId ");
            paramts.put("agencyId", param.getAgencyId());
        }
        // 部门 此处按的是物品使用部门 而不是 操作人所在部门
        if (param.getDepartmentId() != null) {
            sql.append(" and scrap.OUT_WAREHOUSE_ID= :departmentId");
            paramts.put("departmentId", param.getDepartmentId());
        }
        //创建人
        if (!StringUtils.isEmpty(param.getOperatorName())) {
            sql.append(" and scrap.OPERATOR_NAME LIKE :operatorName ");
            paramts.put("operatorName", StringUtils.CHAR_PERCENT + param.getOperatorName() + StringUtils.CHAR_PERCENT);
        }
        //报废时间
        if (param.getStartTime() != null) {
            sql.append(" and scrap.DEAL_TIME >=:dealTimeStart ");
            paramts.put("dealTimeStart", param.getStartTime() * 1000000);
        }
        if (param.getEndTime() != null) {
            sql.append(" and scrap.DEAL_TIME <:dealTimeEnd ");
            paramts.put("dealTimeEnd", param.getEndTime() * 1000000 + 240000);
        }
        return select(sql.append(EXPORT_SQL_END).toString(), paramts, new MapperUtil());
    }
}
consum-base/src/main/java/com/consum/base/service/LGoodsUserRecordCoreService.java
@@ -1,5 +1,6 @@
package com.consum.base.service;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.LockManage;
import com.consum.model.po.LGoodsUserRecord;
import com.consum.model.po.LWhFormTransfer;
@@ -83,7 +84,7 @@
                }
                for (Long toUserGoodsId : toUserGoodsIds) {
                    LGoodsUserRecord tmp = new LGoodsUserRecord();
                    tmp.setId(NumberGenerator.getLongSequenceNumber());
                    tmp.setId(IdUtil.generateId());
                    tmp.setWhGoodsId(toUserGoodsId);
                    tmp.setRecordType(1);
                    tmp.setTransBusinessId(transBusinessId);
@@ -102,4 +103,8 @@
        return true;
    }
    public static void main(String[] args) {
        System.out.println(IdUtil.generateId());
        System.out.println(NumberGenerator.getLongSequenceNumber() );
    }
}
consum-base/src/main/java/com/consum/base/service/LWhFormInventoryCoreService.java
@@ -235,7 +235,7 @@
            // 查询型号库存
            int goodsModelNum = lWhGoodsService.queryGoodsModelNum(0, warehouseId, baseGoodsModelsId, 1, null);
            LWhProcureModel model = new LWhProcureModel();
            model.setId(NumberGenerator.getLongSequenceNumber());
            model.setId(IdUtil.generateId());
            model.setFromProcureGoodsId(fromProcureGoodsId);
            model.setBusinessType(WhBusinessEnum.CAIGOU.getValue() + 0);
            model.setBusinessId(whFormProcureId);
consum-base/src/main/java/com/consum/base/service/LWhFormOutputCoreService.java
@@ -6,6 +6,7 @@
import com.consum.base.core.WhBusinessEnum;
import com.consum.base.core.param.BaseWarehouseParam1;
import com.consum.base.core.service.LWhWarningCoreServiceImpl;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.LockManage;
import com.consum.model.po.*;
import com.iplatform.model.po.S_user_core;
@@ -105,7 +106,7 @@
        // 调拨单物品 已经按型号分好了
        goodsModelNumList.forEach(itemModelInfo -> {
            // 复用对象
            itemModelInfo.setId(NumberGenerator.getLongSequenceNumber());
            itemModelInfo.setId(IdUtil.generateId());
            itemModelInfo.setFromProcureGoodsId(null);
            itemModelInfo.setBusinessType(3);
            itemModelInfo.setBusinessId(outWarehouseFormId);
consum-base/src/main/java/com/consum/base/service/LWhFormTransferCoreService.java
@@ -3,6 +3,7 @@
import cn.hutool.core.convert.Convert;
import com.consum.base.core.WhBusinessEnum;
import com.consum.base.core.service.LWhWarningCoreServiceImpl;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.LockManage;
import com.consum.model.po.*;
import com.iplatform.model.po.S_user_core;
@@ -177,7 +178,7 @@
            Long oldRecordId = whGoodsRecord.getId();
            Long baseGoodsModelsId = whGoodsRecord.getBaseGoodsModelsId();
            allChangModelList.add(baseGoodsModelsId);
            whGoodsRecord.setId(NumberGenerator.getLongSequenceNumber());
            whGoodsRecord.setId(IdUtil.generateId());
            whGoodsRecord.setWarehouseType(inWarehouseType);
            whGoodsRecord.setWarehouseId(inWarehouseId);
            whGoodsRecord.setDealTime(dealTime);