futian.liu
2023-11-14 b0841619e23dd01b8fba9561ad9036c7c3d6aa08
出库单管理
3 文件已重命名
3个文件已添加
1个文件已删除
11个文件已修改
1 文件已复制
590 ■■■■ 已修改文件
consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java 111 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/LWhFormOutputParam.java 146 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/query/FormProcureQry.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/query/LWhFormOutputQry.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/query/TransferQry.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/response/FormOutputGoodsVO.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/response/FormOutputTemplateInfoVO.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/response/FormOutputVO.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/response/GoodsModelVO.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputExtendVO.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LGoodsUserRecordServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LWhFormOutputServiceImpl.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LWhFormProcureService.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-model-pojo/src/main/java/com/consum/model/po/LWhFormOutput.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-model-pojo/src/main/java/com/consum/model/po/LWhFormOutput_mapper.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-model-pojo/src/main/java/com/consum/model/po/LWhProcureModel.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java
@@ -2,25 +2,32 @@
import com.consum.base.BaseController;
import com.consum.base.core.utils.CommonUtil;
import com.consum.base.core.utils.MapUtils;
import com.consum.base.pojo.LWhFormOutputExtend;
import com.consum.base.pojo.LWhFormOutputInsertParam;
import com.consum.base.pojo.LWhFormOutputParam;
import com.consum.base.pojo.query.LWhFormOutputQry;
import com.consum.base.pojo.response.FormOutputGoodsVO;
import com.consum.base.pojo.response.FormOutputTemplateInfoVO;
import com.consum.base.pojo.response.FormOutputVO;
import com.consum.base.pojo.response.GoodsModelVO;
import com.consum.base.pojo.response.LWhFormOutputExtendVO;
import com.consum.base.service.LWhFormOutputServiceImpl;
import com.consum.base.service.LWhGoodsService;
import com.consum.base.service.LWhProcureModelService;
import com.consum.model.po.FinSysTenantUser;
import com.consum.model.po.LWhFormOutput;
import com.consum.model.po.LWhProcureModel;
import com.iplatform.model.po.S_user_core;
import com.walker.db.page.GenericPager;
import com.walker.infrastructure.utils.CollectionUtils;
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.List;
import java.util.Map;
import org.apache.commons.compress.utils.Lists;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -51,7 +58,9 @@
     * @Date 2023/10/27
     */
    @ApiOperation(value = "新增出库单", notes = "新增出库单")
//    @ApiImplicitParam(name = "param", value = "出库单实体", required = true, dataType = "LWhFormOutputInsertParam", paramType = "body")
    @ApiImplicitParams({
        @ApiImplicitParam(name = "param", value = "出库单实体", required = true, dataType = "LWhFormOutputInsertParam", paramType = "body")
    })
    @PostMapping("/add")
    public ResponseValue add() {
        LWhFormOutputInsertParam param = CommonUtil.getObjFromReqBody(LWhFormOutputInsertParam.class);
@@ -73,63 +82,97 @@
    @ApiImplicitParam(name = "param", value = "出库单实体", required = true, dataType = "LWhFormOutputParam", paramType = "query")
    @GetMapping("/list")
    public ResponseValue queryFormOutputList() {
        LWhFormOutputParam param = CommonUtil.getObjFromReq(LWhFormOutputParam.class);
        LWhFormOutputQry param = CommonUtil.getObjFromReq(LWhFormOutputQry.class);
        S_user_core currentUser = this.getCurrentUser();
        if (currentUser == null) {
            return ResponseValue.error("登录用户信息不存在");
        }
        FinSysTenantUser sysInfo = getSysInfo();
        //只能查询本级 及以下机构的出库单
        //??????
        GenericPager genericPager = lWhFormOutputService.queryFormOutputList(param);
        List<LWhFormOutput> datas = genericPager.getDatas();
        ArrayList<LWhFormOutputExtend> newDatas = new ArrayList<>();
        if (!CollectionUtils.isEmpty(datas)) {
            datas.forEach(item -> {
        List<LWhFormOutput> data = genericPager.getDatas();
        List<FormOutputVO> resultList = Lists.newArrayList();
        if (!CollectionUtils.isEmpty(data)) {
            data.forEach(item -> {
                // 查询型号数量
                LWhProcureModel lWhProcureModel = new LWhProcureModel();
                lWhProcureModel.setBusinessType(3);
                lWhProcureModel.setBusinessId(item.getId());
                List<LWhProcureModel> models = lWhProcureModelService.select(lWhProcureModel);
                LWhFormOutputExtend formProcureExtend = new LWhFormOutputExtend();
                BeanUtils.copyProperties(item, formProcureExtend);
                formProcureExtend.setModels(models);
                newDatas.add(formProcureExtend);
                FormOutputVO formOutputVO = new FormOutputVO();
                BeanUtils.copyProperties(item, formOutputVO);
                List<FormOutputTemplateInfoVO> procureTemplateInfoList = Lists.newArrayList();
                // 查询型号数量
                String sql = "SELECT bgt.id,bgm.GOODS_TEMPLATES_ID,GOODS_NAME,sum( counts ) count FROM "
                    + "l_wh_procure_model pm LEFT JOIN base_goods_models bgm ON pm.BASE_GOODS_MODELS_ID = bgm.id "
                    + "LEFT JOIN base_goods_template bgt ON bgm.GOODS_TEMPLATES_ID = bgt.id "
                    + "WHERE pm.BUSINESS_ID =:id GROUP BY bgm.GOODS_TEMPLATES_ID";
                Map<String, Object> paramMap = new HashMap<>();
                paramMap.put("id", item.getId());
                List<Map<String, Object>> procureModelList = lWhProcureModelService.select(sql, paramMap);
                for (Map<String, Object> map : procureModelList) {
                    FormOutputTemplateInfoVO procureTemplateInfoVO = MapUtils.convertMapToObj(MapUtils.toReplaceKeyLow(map), FormOutputTemplateInfoVO.class);
                    procureTemplateInfoList.add(procureTemplateInfoVO);
                }
                formOutputVO.setFormOutputTemplateInfoList(procureTemplateInfoList);
                resultList.add(formOutputVO);
            });
        }
        try {
            Field fieldDatas = GenericPager.class.getDeclaredField("datas");
            fieldDatas.setAccessible(true);
            fieldDatas.set(genericPager, newDatas);
            fieldDatas.set(genericPager, resultList);
        } catch (Exception e) {
            e.printStackTrace();
        }
//        genericPager.setDatas(newDatas);
        return ResponseValue.success(genericPager);
    }
    /**
     * 根据id查询详情
     */
    @ApiOperation(value = "根据id查询详情", notes = "根据id查询详情")
    @ApiImplicitParam(name = "id", value = "出库单id", required = true, dataType = "Long", paramType = "query")
    @GetMapping("/detail")
    public ResponseValue getById(Long id) throws IllegalAccessException {
        if (id == null) {
            return ResponseValue.error("出库单id为空");
        }
        LWhFormOutput lWhFormOutput = lWhFormOutputService.get(new LWhFormOutput(id));
        LWhFormOutputExtendVO lWhFormOutputExtendVO = new LWhFormOutputExtendVO();
        LWhFormOutputExtend formOutputExtend = new LWhFormOutputExtend();
        BeanUtils.copyProperties(lWhFormOutput, formOutputExtend);
        // 查询型号数量
        LWhProcureModel lWhProcureModel = new LWhProcureModel();
        lWhProcureModel.setBusinessType(3);
        lWhProcureModel.setBusinessId(id);
        List<LWhProcureModel> models = lWhFormOutputService.select(lWhProcureModel);
        formOutputExtend.setModels(models);
        BeanUtils.copyProperties(lWhFormOutput, lWhFormOutputExtendVO);
        return ResponseValue.success("查询成功!", formOutputExtend);
        String sql = "SELECT bgt.id, CATEGORY_ID, CATEGORY_NAME, GOODS_NAME "
            + "FROM l_wh_procure_model pm LEFT JOIN base_goods_models bgm ON bgm.id = pm.BASE_GOODS_MODELS_ID "
            + "LEFT JOIN base_goods_template bgt ON bgt.id = bgm.GOODS_TEMPLATES_ID "
            + "WHERE pm.BUSINESS_ID =:id GROUP BY bgt.id ";
        Map<String, Object> paramMap = new HashMap<>();
        paramMap.put("id", lWhFormOutputExtendVO.getId());
        List<Map<String, Object>> procureModelList = lWhFormOutputService.select(sql, paramMap);
        List<FormOutputGoodsVO> fromOutputGoods = Lists.newArrayList();
        for (Map<String, Object> map : procureModelList) {
            FormOutputGoodsVO procureTemplateInfoVO = MapUtils.convertMapToObj(MapUtils.toReplaceKeyLow(map), FormOutputGoodsVO.class);
            // 查询型号数量
            List<GoodsModelVO> goodsModelVOList = Lists.newArrayList();
            String sql2 = "SELECT pm.id,pm.BASE_GOODS_MODELS_NAME,bgm.UNIT,COUNTS,total_amount "
                + "FROM l_wh_procure_model pm LEFT JOIN base_goods_models bgm ON bgm.id = pm.BASE_GOODS_MODELS_ID "
                + "LEFT JOIN base_goods_template bgt ON bgt.id = bgm.GOODS_TEMPLATES_ID "
                + "WHERE pm.BUSINESS_ID =:id";
            List<Map<String, Object>> modelList = lWhFormOutputService.select(sql2, paramMap);
            modelList.forEach(item -> {
                GoodsModelVO goodsModelVO = MapUtils.convertMapToObj(MapUtils.toReplaceKeyLow(item), GoodsModelVO.class);
                goodsModelVOList.add(goodsModelVO);
            });
            procureTemplateInfoVO.setModels(goodsModelVOList);
            fromOutputGoods.add(procureTemplateInfoVO);
        }
        lWhFormOutputExtendVO.setFromOutputGoods(fromOutputGoods);
        return ResponseValue.success("查询成功!", lWhFormOutputExtendVO);
    }
    /**
@@ -137,6 +180,11 @@
     * @Author 卢庆阳
     * @Date 2023/11/2
     */
    @ApiOperation(value = "根据仓库id和型号id 查询库存", notes = "根据仓库id和型号id 查询库存")
    @ApiImplicitParams({
        @ApiImplicitParam(name = "warehouseId", value = "仓库id", required = true, dataType = "Long", paramType = "query"),
        @ApiImplicitParam(name = "baseGoodsModelsId", value = "型号id", required = true, dataType = "Long", paramType = "query")
    })
    @GetMapping("/select/number")
    public ResponseValue selectNumber(Long warehouseId, Long baseGoodsModelsId) {
        if (warehouseId == null || baseGoodsModelsId == null) {
@@ -145,7 +193,6 @@
        int num = this.lWhGoodsService.queryGoodsModelNum(0, warehouseId, baseGoodsModelsId, (short) 1, null);
        return ResponseValue.success(num);
    }
}
consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java
@@ -10,7 +10,7 @@
import com.consum.base.pojo.LWhFormProcureGoodsParams;
import com.consum.base.pojo.LWhFormProcureParam;
import com.consum.base.pojo.LWhProcureModelParams;
import com.consum.base.pojo.query.FormProcureQryDto;
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;
@@ -103,11 +103,6 @@
        FinSysTenantUser sysTenantUser = this.getSysInfo();
        String tenantId = sysTenantUser.getTenantId();
        String tenantName = sysTenantUser.getTenantName();
//        String tenantId = "100";
//        String tenantName = "河南省分公司";
        // 只能添加本机构仓库的进货单
        //??????
        //
        List<LWhFormProcureGoodsParams> procureGoods = param.getProcureGoods();
        if (CollectionUtils.isEmpty(procureGoods)) {
@@ -228,15 +223,11 @@
        @ApiImplicitParam(name = "param", value = "采购查询条件", required = true, dataType = "FormProcureQryDto", paramType = "query")
    })
    @GetMapping("/list")
    public ResponseValue queryFormProcureList(FormProcureQryDto param) {
    public ResponseValue queryFormProcureList(FormProcureQry param) {
        S_user_core currentUser = this.getCurrentUser();
        if (currentUser == null) {
            return ResponseValue.error("登录用户信息不存在");
        }
        FinSysTenantUser sysInfo = getSysInfo();
        //只能查询本级 及以下机构的进货单
        //??????
        GenericPager genericPager = lWhFormProcureService.queryFormProcureList(param);
        List<LWhFormProcure> data = genericPager.getDatas();
@@ -381,13 +372,13 @@
    @ApiImplicitParams({@ApiImplicitParam(name = "param", value = "采购单明细查询", required = true, dataType = "FormProcureQryDto", paramType = "query")})
    @GetMapping("detail/list")
    public ResponseValue queryFormProcureDetailList() {
        FormProcureQryDto formProcureQryDto = CommonUtil.getObjFromReq(FormProcureQryDto.class);
        FormProcureQry formProcureQry = CommonUtil.getObjFromReq(FormProcureQry.class);
        S_user_core currentUser = this.getCurrentUser();
        if (currentUser == null) {
            return ResponseValue.error("登录用户信息不存在");
        }
        GenericPager genericPager = lWhFormProcureService.queryFormProcureDetailList(formProcureQryDto);
        GenericPager genericPager = lWhFormProcureService.queryFormProcureDetailList(formProcureQry);
        return ResponseValue.success(genericPager);
    }
}
consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java
@@ -6,7 +6,7 @@
import com.consum.base.pojo.ProcureModelInfoDto;
import com.consum.base.pojo.UseRecordDto;
import com.consum.base.pojo.UseRecordSkuDto;
import com.consum.base.pojo.query.TransferQryDto;
import com.consum.base.pojo.query.TransferQry;
import com.consum.base.pojo.response.TransferInfoVO;
import com.consum.base.service.BaseGoodsModelsServiceImpl;
import com.consum.base.service.BaseWarehouseServiceImpl;
@@ -102,7 +102,7 @@
//    1.查询调拨单
//    2.查询物品型号
    @GetMapping("/list")
    public ResponseValue queryFormTransferList(TransferQryDto param) {
    public ResponseValue queryFormTransferList(TransferQry param) {
        S_user_core currentUser = this.getCurrentUser();
        if (currentUser == null) {
            return ResponseValue.error("登录用户信息不存在");
@@ -238,7 +238,7 @@
    /**
     * 部门物品分发列表明细
     *
     * @param transferQryDto
     * @param transferQry
     * @return
     */
    @ApiOperation(value = "部门物品分发列表明细", notes = "部门物品分发列表明细")
@@ -246,13 +246,13 @@
        @ApiImplicitParam(name = "transferQryDto", value = "调拨单查询条件", required = true)
    })
    @GetMapping("/department/list")
    public ResponseValue departmentTransferList(TransferQryDto transferQryDto) {
    public ResponseValue departmentTransferList(TransferQry transferQry) {
        S_user_core currentUser = this.getCurrentUser();
        if (currentUser == null) {
            return ResponseValue.error("登录用户信息不存在");
        }
        GenericPager<Map<String, Object>> transferInfoDetailsVoGenericPager = this.lWhFormTransferService.queryTransferInfo(transferQryDto);
        GenericPager<Map<String, Object>> transferInfoDetailsVoGenericPager = this.lWhFormTransferService.queryTransferInfo(transferQry);
        return ResponseValue.success(transferInfoDetailsVoGenericPager);
    }
consum-base/src/main/java/com/consum/base/pojo/LWhFormOutputParam.java
File was deleted
consum-base/src/main/java/com/consum/base/pojo/query/FormProcureQry.java
File was renamed from consum-base/src/main/java/com/consum/base/pojo/query/FormProcureQryDto.java
@@ -13,7 +13,7 @@
 */
@ApiModel(value = "采购查询条件")
@Data
public class FormProcureQryDto {
public class FormProcureQry {
    @ApiModelProperty(value = "主键")
    private Long id;
@@ -53,13 +53,13 @@
     */
    @ApiModelProperty(value = "入库时间 开始")
    @JsonFormat(pattern = "yyyyMMdd", timezone = "GMT+8")
    private Long incomeTimeStart;
    private Long startTime;
    /**
     * 入库时间 结束
     */
    @ApiModelProperty(value = "入库时间 结束")
    @JsonFormat(pattern = "yyyyMMdd", timezone = "GMT+8")
    private Long incomeTimeEnd;
    private Long endTime;
    /**
     * 规格型号id
     */
consum-base/src/main/java/com/consum/base/pojo/query/LWhFormOutputQry.java
copy from consum-base/src/main/java/com/consum/base/pojo/query/FormProcureQryDto.java copy to consum-base/src/main/java/com/consum/base/pojo/query/LWhFormOutputQry.java
File was copied from consum-base/src/main/java/com/consum/base/pojo/query/FormProcureQryDto.java
@@ -6,14 +6,13 @@
import lombok.Data;
/**
 * @author asus
 * @version 1.0
 * @description: 采购查询条件
 * @date 2023/11/10 16:51
 * @Description 出库单参数
 * @Author 卢庆阳
 * @Date 2023/10/27
 */
@ApiModel(value = "采购查询条件")
@Data
public class FormProcureQryDto {
@ApiModel(value = "出库单参数")
public class LWhFormOutputQry {
    @ApiModelProperty(value = "主键")
    private Long id;
@@ -51,15 +50,15 @@
    /**
     * 入库时间 开始
     */
    @ApiModelProperty(value = "入库时间 开始")
    @ApiModelProperty(value = "开始时间")
    @JsonFormat(pattern = "yyyyMMdd", timezone = "GMT+8")
    private Long incomeTimeStart;
    private Long startTime;
    /**
     * 入库时间 结束
     */
    @ApiModelProperty(value = "入库时间 结束")
    @ApiModelProperty(value = "结束时间")
    @JsonFormat(pattern = "yyyyMMdd", timezone = "GMT+8")
    private Long incomeTimeEnd;
    private Long endTime;
    /**
     * 规格型号id
     */
@@ -70,4 +69,5 @@
    private Integer pageSize = 10;
    @ApiModelProperty(value = "当前页数")
    private Integer pageNum = 1;
}
consum-base/src/main/java/com/consum/base/pojo/query/TransferQry.java
File was renamed from consum-base/src/main/java/com/consum/base/pojo/query/TransferQryDto.java
@@ -12,7 +12,7 @@
 */
@ApiModel(value = "调拨单查询条件")
@Data
public class TransferQryDto {
public class TransferQry {
    /**
@@ -59,12 +59,12 @@
     * 接收时间 开始
     */
    @ApiModelProperty(value = "接收时间 开始")
    private Long inTimeStart;
    private Long startTime;
    /**
     * 接收时间 结束
     */
    @ApiModelProperty(value = "接收时间 结束")
    private Long inTimeEnd;
    private Long endTime;
    /**
     * 规格型号id
consum-base/src/main/java/com/consum/base/pojo/response/FormOutputGoodsVO.java
New file
@@ -0,0 +1,30 @@
package com.consum.base.pojo.response;
import io.swagger.annotations.ApiModel;
import java.util.List;
import lombok.Data;
/**
 * @author asus
 * @version 1.0
 * @description: TODO
 * @date 2023/11/14 13:13
 */
@Data
@ApiModel(description = "输出商品表")
public class FormOutputGoodsVO {
    // 主键
    private Long id;
    //分类编号
    private Long categoryId;
    //分类名称
    private String categoryName;
    //物品模版编号
    private Long baseGoodsTemplateId;
    private String goodsName;
    private List<GoodsModelVO> models;
}
consum-base/src/main/java/com/consum/base/pojo/response/FormOutputTemplateInfoVO.java
New file
@@ -0,0 +1,22 @@
package com.consum.base.pojo.response;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
 * @author asus
 * @version 1.0
 * @description: TODO
 * @date 2023/11/10 11:37
 */
@ApiModel
@Data
public class FormOutputTemplateInfoVO {
    private Long id;
    private Long goodsTemplatesId;
    private String goodsName;
    private Object count;
}
consum-base/src/main/java/com/consum/base/pojo/response/FormOutputVO.java
New file
@@ -0,0 +1,72 @@
package com.consum.base.pojo.response;
import io.swagger.annotations.ApiModel;
import java.util.List;
import lombok.Data;
/**
 * @author asus
 * @version 1.0
 * @description: 出库列表信息
 * @date 2023/11/10 11:37
 */
@ApiModel(value = "出库列表信息")
@Data
public class FormOutputVO {
    // 主键
    private Long id;
    // 属性列表
    private String businessFormCode;
    private Long warehouseId;
    private String warehouseName;
    private Long buyerId;
    private String buyerName;
    private Long procureTime;
    private String procureDoc;
    private Integer buyType;
    private Integer states;
    private Long agencyId;
    private String agencyName;
    private Long incomeId;
    private String incomeName;
    private Long incomeTime;
    private String beiz;
    private Long lWarehouseFlowId;
    private List<FormOutputTemplateInfoVO> formOutputTemplateInfoList;
}
consum-base/src/main/java/com/consum/base/pojo/response/GoodsModelVO.java
@@ -18,6 +18,7 @@
    private Integer counts;
    private Integer worehouseCount;
    private Long baseGoodsModelsId;
    private Long totalAmount;
}
consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputExtendVO.java
File was renamed from consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputVO.java
@@ -1,6 +1,5 @@
package com.consum.base.pojo.response;
import com.consum.model.po.LWhProcureModel;
import io.swagger.annotations.ApiModel;
import java.util.List;
import lombok.Data;
@@ -8,12 +7,12 @@
/**
 * @author asus
 * @version 1.0
 * @description: TODO
 * @description: 出库单信息扩展
 * @date 2023/11/13 16:45
 */
@Data
@ApiModel
public class LWhFormOutputVO {
@ApiModel(value = "出库单信息扩展")
public class LWhFormOutputExtendVO {
    // 主键
@@ -47,6 +46,5 @@
    // 出库手续
    private Long doc;
    private List<FromProcureTemplateInfoVO> fromProcureTemplateInfoList;
    private List<LWhProcureModel> models;
    private List<FormOutputGoodsVO> fromOutputGoods;
}
consum-base/src/main/java/com/consum/base/service/LGoodsUserRecordServiceImpl.java
@@ -1,11 +1,11 @@
package com.consum.base.service;
import com.walker.jdbc.service.BaseServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
 * @ClassName LGoodsUserRecordServiceImpl
@@ -21,12 +21,10 @@
    /**
     * 设置为非最新
     */
    private static String updSetNotLast = "update L_GOODS_USER_RECORD set LAST_RECORD = 0 where WH_GOODS_ID in(?) and LAST_RECORD=1";
    private static String updSetNotLast = "update L_GOODS_USER_RECORD set LAST_RECORD = 0 where LAST_RECORD=1 and WH_GOODS_ID in(   ";
    public int updSetNotLast(List<Long> outGoodsIds) {
        ArrayList<Object> params = new ArrayList<>();
        params.add(outGoodsIds);
        return this.update(updSetNotLast, params.toArray());
        return this.update(updSetNotLast + StringUtils.join(outGoodsIds, ",") + ")", new String[]{});
    }
    /**
consum-base/src/main/java/com/consum/base/service/LWhFormOutputServiceImpl.java
@@ -7,7 +7,7 @@
import com.consum.base.pojo.LWFormsOutputGoodsModelParam;
import com.consum.base.pojo.LWFormsOutputGoodsParam;
import com.consum.base.pojo.LWhFormOutputInsertParam;
import com.consum.base.pojo.LWhFormOutputParam;
import com.consum.base.pojo.query.LWhFormOutputQry;
import com.consum.model.po.BaseGoodsModels;
import com.consum.model.po.BaseWarehouse;
import com.consum.model.po.FinSysTenantUser;
@@ -174,6 +174,7 @@
        lWhFormOutput.setOperatorName(sysInfo.getUserName());
        lWhFormOutput.setDealTime(param.getDealTime());
        lWhFormOutput.setStates(1);
        lWhFormOutput.setOutputDoc(param.getProcureDoc());
        int flag1 = this.insert(lWhFormOutput);
        if (flag1 == 0) {
            log.error("新增出库单记录");
@@ -225,12 +226,12 @@
     * @Author 卢庆阳
     * @Date 2023/10/30
     */
    public GenericPager queryFormOutputList(LWhFormOutputParam param) {
    public GenericPager queryFormOutputList(LWhFormOutputQry param) {
        HashMap<String, Object> paramts = new HashMap<>();
        StringBuilder sql = new StringBuilder(QUERY_FORM_OUTPUT_LIST);
        //出库单号
        if (!StringUtils.isEmpty(param.getBusinessFormCode())) {
            sql.append(" and BUSINESS_FORM_CODE like :businessFormCode ");
            sql.append(" and BUSINESS_FORM_CODE = :businessFormCode ");
            paramts.put("businessFormCode", StringUtils.CHAR_PERCENT + param.getBusinessFormCode() + StringUtils.CHAR_PERCENT);
        }
        //物品名称
@@ -245,9 +246,9 @@
            paramts.put("agencyId", param.getAgencyId() + StringUtils.CHAR_PERCENT);
        }
        //创建人
        if (!StringUtils.isEmpty(param.getOperatorName())) {
        if (!StringUtils.isEmpty(param.getCreateName())) {
            sql.append(" and operator_name =:operator_name ");
            paramts.put("operator_name", param.getOperatorName());
            paramts.put("operator_name", param.getCreateName());
        }
        //状态
        if (param.getStates() != null) {
@@ -255,13 +256,13 @@
            paramts.put("states", param.getStates());
        }
        //出库时间
        if (param.getOutputTimeStart() != null) {
        if (param.getStartTime() != null) {
            sql.append(" and DEAL_TIME >=:outputTimeStart ");
            paramts.put("outputTimeStart", param.getOutputTimeStart() * 1000000);
            paramts.put("outputTimeStart", param.getStartTime() * 1000000);
        }
        if (param.getOutputTimeEnd() != null) {
        if (param.getEndTime() != null) {
            sql.append(" and DEAL_TIME <:outputTimeEnd ");
            paramts.put("outputTimeEnd", param.getOutputTimeEnd() * 1000000 + 240000);
            paramts.put("outputTimeEnd", param.getEndTime() * 1000000 + 240000);
        }
        sql.append(" ORDER BY DEAL_TIME DESC");
consum-base/src/main/java/com/consum/base/service/LWhFormProcureService.java
@@ -1,7 +1,7 @@
package com.consum.base.service;
import com.consum.base.core.utils.MapperUtil;
import com.consum.base.pojo.query.FormProcureQryDto;
import com.consum.base.pojo.query.FormProcureQry;
import com.consum.model.po.LWhFormProcure;
import com.walker.db.page.GenericPager;
import com.walker.infrastructure.utils.StringUtils;
@@ -21,7 +21,7 @@
    private static String QUERY_FORM_PROCURE_LIST = "SELECT * FROM L_WH_FORM_PROCURE WHERE 1 = 1";
    public GenericPager<LWhFormProcure> queryFormProcureList(FormProcureQryDto param) {
    public GenericPager<LWhFormProcure> queryFormProcureList(FormProcureQry param) {
        HashMap<String, Object> paramts = new HashMap<>();
        StringBuilder sql = new StringBuilder(QUERY_FORM_PROCURE_LIST);
        //入库单号
@@ -44,13 +44,13 @@
            paramts.put("states", param.getStates());
        }
        //入库时间
        if (param.getIncomeTimeStart() != null) {
        if (param.getStartTime() != null) {
            sql.append(" and INCOME_TIME >=:incomeTimeStart ");
            paramts.put("incomeTimeStart", param.getIncomeTimeStart() * 1000000);
            paramts.put("incomeTimeStart", param.getStartTime() * 1000000);
        }
        if (param.getIncomeTimeEnd() != null) {
        if (param.getEndTime() != null) {
            sql.append(" and INCOME_TIME <:incomeTimeEnd ");
            paramts.put("incomeTimeEnd", param.getIncomeTimeEnd() * 1000000 + 240000);
            paramts.put("incomeTimeEnd", param.getEndTime() * 1000000 + 240000);
        }
        //物品名称
        if (!StringUtils.isEmpty(param.getGoodsTemplateName())) {
@@ -64,7 +64,7 @@
    }
    public GenericPager<Map<String, Object>> queryFormProcureDetailList(FormProcureQryDto param) {
    public GenericPager<Map<String, Object>> queryFormProcureDetailList(FormProcureQry param) {
        HashMap<String, Object> paramts = new HashMap<>();
        StringBuilder sql = new StringBuilder("SELECT pm.id,fp.BUSINESS_FORM_CODE,fpg.GOODS_TEMPLATE_NAME,pm.PRICE,pm.COUNTS, "
            + "( pm.PRICE * pm.COUNTS ) amount,fp.AGENCY_NAME,fp.BUYER_NAME,fp.PROCURE_TIME,pm.BUSINESS_ID,pm.BASE_GOODS_MODELS_NAME FROM l_wh_procure_model pm "
@@ -90,14 +90,14 @@
            paramts.put("buyerName", param.getCreateName());
        }
        //入库开始时间
        if (param.getIncomeTimeStart() != null) {
        if (param.getStartTime() != null) {
            sql.append("and INCOME_TIME >=:incomeTimeStart ");
            paramts.put("incomeTimeStart", param.getIncomeTimeStart() * 1000000);
            paramts.put("incomeTimeStart", param.getStartTime() * 1000000);
        }
        //入库结束时间
        if (param.getIncomeTimeEnd() != null) {
        if (param.getEndTime() != null) {
            sql.append("and INCOME_TIME <:incomeTimeEnd ");
            paramts.put("incomeTimeEnd", param.getIncomeTimeEnd() * 1000000 + 240000);
            paramts.put("incomeTimeEnd", param.getEndTime() * 1000000 + 240000);
        }
        //规格型号
        if (param.getBaseGoodsModelsId() != null) {
consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java
@@ -2,12 +2,12 @@
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.MapRowMapper;
import com.consum.base.pojo.LWhFormTransferParam;
import com.consum.base.pojo.LWhProcureModelParams;
import com.consum.base.pojo.LWhProcureModelUserDTO;
import com.consum.base.pojo.query.TransferQryDto;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.pojo.query.TransferQry;
import com.consum.model.po.BaseGoodsModels;
import com.consum.model.po.BaseWarehouse;
import com.consum.model.po.FinSysTenant;
@@ -182,7 +182,7 @@
     * @Author 卢庆阳
     * @Date 2023/10/30
     */
    public GenericPager<LWhFormTransfer> queryFormTransferList(TransferQryDto param) {
    public GenericPager<LWhFormTransfer> queryFormTransferList(TransferQry param) {
        HashMap<String, Object> paramts = new HashMap<>();
        StringBuilder sql = new StringBuilder(QUERY_FORM_TRANSFER_LIST);
        //调拨单号
@@ -226,13 +226,13 @@
            paramts.put("createTimeEnd", param.getCreateTimeEnd() * 1000000 + 240000);
        }
        //接收时间
        if (param.getInTimeStart() != null) {
        if (param.getStartTime() != null) {
            sql.append(" and IN_TIME >=:inTimeStart ");
            paramts.put("inTimeStart", param.getInTimeStart() * 1000000);
            paramts.put("inTimeStart", param.getStartTime() * 1000000);
        }
        if (param.getInTimeEnd() != null) {
        if (param.getEndTime() != null) {
            sql.append(" and IN_TIME <:inTimeEnd ");
            paramts.put("inTimeEnd", param.getInTimeEnd() * 1000000 + 240000);
            paramts.put("inTimeEnd", param.getEndTime() * 1000000 + 240000);
        }
        sql.append(" ORDER BY CREATE_TIME DESC");
@@ -324,7 +324,7 @@
        return this.update(lWhFormTransfer);
    }
    public GenericPager<Map<String, Object>> queryTransferInfo(TransferQryDto transferQryDto) {
    public GenericPager<Map<String, Object>> queryTransferInfo(TransferQry transferQry) {
        HashMap<String, Object> paramts = new HashMap<>();
        StringBuilder sql = new StringBuilder("SELECT\n"
@@ -348,43 +348,43 @@
            + "\tLEFT JOIN fin_sys_tenant_department fstd ON fstu.SYS_DEPT_ID = fstd.ID \n"
            + "\tLEFT JOIN fin_sys_tenant fst ON fst.id = fstd.TENANT_ID where 1=1 ");
        //单号
        if (StringUtils.isNotEmpty(transferQryDto.getBusinessFormCode())) {
        if (StringUtils.isNotEmpty(transferQry.getBusinessFormCode())) {
            sql.append("AND BUSINESS_FORM_CODE like :businessFormCode ");
            paramts.put("businessFormCode", StringUtils.CHAR_PERCENT + transferQryDto.getBusinessFormCode() + StringUtils.CHAR_PERCENT);
            paramts.put("businessFormCode", StringUtils.CHAR_PERCENT + transferQry.getBusinessFormCode() + StringUtils.CHAR_PERCENT);
        }
        //物品名称
        if (StringUtils.isNotEmpty(transferQryDto.getGoodsTemplateName())) {
        if (StringUtils.isNotEmpty(transferQry.getGoodsTemplateName())) {
            sql.append("AND bgt.GOODS_NAME like:goodsName ");
            paramts.put("goodsName", StringUtils.CHAR_PERCENT + transferQryDto.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
            paramts.put("goodsName", StringUtils.CHAR_PERCENT + transferQry.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
        }
        // 规格型号
        if (transferQryDto.getBaseGoodsTemplateId() != null) {
        if (transferQry.getBaseGoodsTemplateId() != null) {
            sql.append("AND bgm.id =:goodsModelId ");
            paramts.put("goodsModelId", transferQryDto.getBaseGoodsTemplateId());
            paramts.put("goodsModelId", transferQry.getBaseGoodsTemplateId());
        }
        //调拨机构
        if (transferQryDto.getOutAgencyId() != null) {
        if (transferQry.getOutAgencyId() != null) {
            sql.append("AND OUT_AGENCY_ID = :OUT_AGENCY_ID ");
            paramts.put("OUT_AGENCY_ID", transferQryDto.getOutAgencyId());
            paramts.put("OUT_AGENCY_ID", transferQry.getOutAgencyId());
        }
        //创建人
        if (StringUtils.isNotEmpty(transferQryDto.getOperatorName())) {
        if (StringUtils.isNotEmpty(transferQry.getOperatorName())) {
            sql.append("AND ft.OPERATOR_NAME =:OPERATOR_NAME ");
            paramts.put("OPERATOR_NAME", transferQryDto.getOperatorName());
            paramts.put("OPERATOR_NAME", transferQry.getOperatorName());
        }
        //申请时间
        if (transferQryDto.getCreateTimeStart() != null) {
        if (transferQry.getCreateTimeStart() != null) {
            sql.append("AND ft.CREATE_TIME >=:createTimeStart ");
            paramts.put("createTimeStart", transferQryDto.getCreateTimeStart() * 1000000);
            paramts.put("createTimeStart", transferQry.getCreateTimeStart() * 1000000);
        }
        if (transferQryDto.getCreateTimeEnd() != null) {
        if (transferQry.getCreateTimeEnd() != null) {
            sql.append("AND ft.CREATE_TIME <:createTimeEnd ");
            paramts.put("createTimeEnd", transferQryDto.getCreateTimeEnd() * 1000000 + 240000);
            paramts.put("createTimeEnd", transferQry.getCreateTimeEnd() * 1000000 + 240000);
        }
        sql.append("ORDER BY ft.CREATE_TIME DESC");
        GenericPager<Map<String, Object>> mapGenericPager = this.selectSplit(sql.toString(), paramts, transferQryDto.getPageNum(), transferQryDto.getPageSize(),
        GenericPager<Map<String, Object>> mapGenericPager = this.selectSplit(sql.toString(), paramts, transferQry.getPageNum(), transferQry.getPageSize(),
            new MapRowMapper());
        return mapGenericPager;
consum-model-pojo/src/main/java/com/consum/model/po/LWhFormOutput.java
@@ -96,6 +96,10 @@
    @JsonIgnore
    protected boolean isset_beiz = false;
    private String outputDoc;
    @JsonIgnore
    protected boolean isset_outputDoc = false;
    /**
     * 默认构造函数
     */
@@ -397,6 +401,20 @@
        return this.beiz == null || this.beiz.length() == 0;
    }
    public String getOutputDoc() {
        return this.outputDoc;
    }
    public void setOutputDoc(String outputDoc) {
        this.outputDoc = outputDoc;
        this.isset_outputDoc = true;
    }
    @JsonIgnore
    public boolean isEmptyOutputDoc() {
        return this.outputDoc == null || this.outputDoc.length() == 0;
    }
    /**
     * 重写 toString() 方法
     */
@@ -497,6 +515,9 @@
        if (this.isset_beiz) {
            l_wh_form_output.setBeiz(this.getBeiz());
        }
        if (this.isset_outputDoc) {
            l_wh_form_output.setOutputDoc(this.getOutputDoc());
        }
        return l_wh_form_output;
    }
}
consum-model-pojo/src/main/java/com/consum/model/po/LWhFormOutput_mapper.java
@@ -7,13 +7,10 @@
import com.walker.jdbc.sqlgen.InsertBuilder;
import com.walker.jdbc.sqlgen.SelectBuilder;
import com.walker.jdbc.sqlgen.UpdateBuilder;
import com.walker.jdbc.util.StringUtils;
import org.springframework.jdbc.core.RowMapper;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Map;
import org.springframework.jdbc.core.RowMapper;
/**
 * 表名:L_WH_FORM_OUTPUT *
@@ -47,6 +44,7 @@
    public static final String DealTime = "deal_time";
    public static final String States = "states";
    public static final String Beiz = "beiz";
    public static final String OutputDoc = "output_doc";
    /**
     * 默认构造函数
@@ -117,6 +115,9 @@
        if (lWhFormOutput.isset_beiz) {
            this.setBeiz(lWhFormOutput.getBeiz());
        }
        if (lWhFormOutput.isset_outputDoc) {
            this.setOutputDoc(lWhFormOutput.getOutputDoc());
        }
        // 去掉,2022-09-07
        // this.setDatabaseName_(l_wh_form_output.getDatabaseName_());
    }
@@ -179,6 +180,7 @@
        ib.set(DealTime, this.getDealTime(), this.isset_dealTime);
        ib.set(States, this.getStates(), this.isset_states);
        ib.set(Beiz, this.getBeiz(), this.isset_beiz);
        ib.set(OutputDoc, this.getOutputDoc(), this.isset_outputDoc);
        return ib.genMapSql();
    }
@@ -207,6 +209,7 @@
        ub.set(DealTime, this.getDealTime(), this.isset_dealTime);
        ub.set(States, this.getStates(), this.isset_states);
        ub.set(Beiz, this.getBeiz(), this.isset_beiz);
        ub.set(OutputDoc, this.getOutputDoc(), this.isset_outputDoc);
        ub.where(this.getPkName_(), this.getPkValue_());
        return ub.genMapSql();
    }
@@ -236,6 +239,7 @@
        ub.set(DealTime, this.getDealTime(), this.isset_dealTime);
        ub.set(States, this.getStates(), this.isset_states);
        ub.set(Beiz, this.getBeiz(), this.isset_beiz);
        ub.set(OutputDoc, this.getOutputDoc(), this.isset_outputDoc);
        return ub.genMapSql(where, parameters);
    }
@@ -264,6 +268,7 @@
        ub.set(DealTime, this.getDealTime(), this.isset_dealTime);
        ub.set(States, this.getStates(), this.isset_states);
        ub.set(Beiz, this.getBeiz(), this.isset_beiz);
        ub.set(OutputDoc, this.getOutputDoc(), this.isset_outputDoc);
        return ub.genArraySql(where, parameters);
    }
@@ -476,6 +481,10 @@
        if (columnIndex > 0) {
            l_wh_form_output.setBeiz(rs.getString(columnIndex));
        }
        columnIndex = resultSetUtils.findColumn(rs, LWhFormOutput_mapper.OutputDoc);
        if (columnIndex > 0) {
            l_wh_form_output.setOutputDoc(rs.getString(columnIndex));
        }
        return l_wh_form_output;
    }
}
consum-model-pojo/src/main/java/com/consum/model/po/LWhProcureModel.java
@@ -224,7 +224,7 @@
    }
    public Long getTotalAmount() {
        return totalAmount;
        return this.totalAmount;
    }
    public void setTotalAmount(Long totalAmount) {