add:库存变动、库存查看

This commit is contained in:
2024-06-19 15:03:43 +08:00
parent e27627d7ad
commit 129d717fb8
15 changed files with 547 additions and 25 deletions

View File

@@ -1,6 +1,14 @@
package org.nl.wms.stor_manage.record.controller;
import org.nl.common.domain.entity.PageQuery;
import org.nl.wms.stor_manage.record.service.IStIvtStructivtflowService;
import org.nl.wms.stor_manage.record.service.dto.StructIvtFlowQuery;
import org.nl.wms.stor_manage.struct.service.dto.StructattrQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -14,8 +22,15 @@ import org.springframework.web.bind.annotation.RestController;
* @since 2024-05-23
*/
@RestController
@RequestMapping("/stIvtStructivtflow")
@RequestMapping("/api/stIvtStructivtflow")
public class StIvtStructivtflowController {
@Autowired
private IStIvtStructivtflowService stIvtStructivtflowService;
@GetMapping
public ResponseEntity<Object> query(StructIvtFlowQuery query, PageQuery page) {
return new ResponseEntity<>(stIvtStructivtflowService.pageQuery(query, page), HttpStatus.OK);
}
}

View File

@@ -1,7 +1,9 @@
package org.nl.wms.stor_manage.record.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.common.domain.entity.PageQuery;
import org.nl.wms.stor_manage.record.service.dao.StIvtStructivtflow;
import org.nl.wms.stor_manage.record.service.dto.StructIvtFlowQuery;
/**
* <p>
@@ -13,4 +15,5 @@ import org.nl.wms.stor_manage.record.service.dao.StIvtStructivtflow;
*/
public interface IStIvtStructivtflowService extends IService<StIvtStructivtflow> {
Object pageQuery(StructIvtFlowQuery query, PageQuery page);
}

View File

@@ -1,7 +1,13 @@
package org.nl.wms.stor_manage.record.service.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.nl.common.domain.entity.PageQuery;
import org.nl.wms.stor_manage.record.service.dao.StIvtStructivtflow;
import org.nl.wms.stor_manage.record.service.dto.StructIvtFlowQuery;
import java.util.List;
import java.util.Map;
/**
* <p>
@@ -13,4 +19,5 @@ import org.nl.wms.stor_manage.record.service.dao.StIvtStructivtflow;
*/
public interface StIvtStructivtflowMapper extends BaseMapper<StIvtStructivtflow> {
List<Map> getPageQuery(@Param("query") StructIvtFlowQuery query, PageQuery pageQuery);
}

View File

@@ -1,5 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.nl.stor_manage.record.service.dao.mapper.StIvtStructivtflowMapper">
<mapper namespace="org.nl.wms.stor_manage.record.service.dao.mapper.StIvtStructivtflowMapper">
<select id="getPageQuery" resultType="java.util.Map">
SELECT
struct_flow.*,
struct.struct_name,
material.material_code,
material.material_name,
unit.unit_name
FROM
st_ivt_structivtflow struct_flow
left join st_ivt_structattr struct on struct.struct_code = struct_flow.struct_code
left join md_me_materialbase material on struct_flow.material_id = material.material_id
left join bm_measure_unit unit on struct_flow.unit_id = unit.unit_id
<where>
<if test="query.search != null and query.search != ''">
and (struct.struct_code LIKE '%${query.search}%'
or struct.struct_name LIKE '%${query.search}%')
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,17 @@
package org.nl.wms.stor_manage.record.service.dto;
import lombok.Data;
import org.nl.common.domain.entity.BaseQuery;
import org.nl.common.domain.entity.QParam;
import org.nl.common.enums.QueryTEnum;
import org.nl.wms.stor_manage.record.service.dao.StIvtStructivtflow;
/*
* @author ZZQ
* @Date 2023/5/4 19:49
*/
@Data
public class StructIvtFlowQuery extends BaseQuery<StIvtStructivtflow> {
private String search;
}

View File

@@ -2,11 +2,19 @@ package org.nl.wms.stor_manage.record.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.nl.common.TableDataInfo;
import org.nl.common.domain.entity.PageQuery;
import org.nl.wms.stor_manage.record.service.IStIvtStructivtflowService;
import org.nl.wms.stor_manage.record.service.dao.StIvtStructivtflow;
import org.nl.wms.stor_manage.record.service.dao.mapper.StIvtStructivtflowMapper;
import org.nl.wms.stor_manage.record.service.dto.StructIvtFlowQuery;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* <p>
* 仓位库存变动记录表 服务实现类
@@ -18,4 +26,13 @@ import org.springframework.stereotype.Service;
@Service
public class StIvtStructivtflowServiceImpl extends ServiceImpl<StIvtStructivtflowMapper, StIvtStructivtflow> implements IStIvtStructivtflowService {
@Override
public Object pageQuery(StructIvtFlowQuery query, PageQuery pageQuery) {
Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
page.setOrderBy("update_time DESC");
List<Map> mst_detail = this.baseMapper.getPageQuery(query, pageQuery);
TableDataInfo<Map> build = TableDataInfo.build(mst_detail);
build.setTotalElements(page.getTotal());
return build;
}
}

View File

@@ -65,4 +65,8 @@ public class StIvtStructattrController {
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@GetMapping("/getStructIvt")
public ResponseEntity<Object> getStructIvt(StructattrQuery query, PageQuery page) {
return new ResponseEntity<>(structattrService.getStructIvt(query,page), HttpStatus.OK);
}
}

View File

@@ -45,4 +45,6 @@ public interface IStIvtStructattrService extends IService<StIvtStructattr> {
List<StructattrVechielDto> collectVechicle(Map query);
List<StructattrVechielDto> structVehicle(Map query);
Object getStructIvt(StructattrQuery query, PageQuery page);
}

View File

@@ -25,4 +25,6 @@ public interface StIvtStructattrMapper extends BaseMapper<StIvtStructattr> {
List<StructattrVechielDto> collectVehicle(Map query);
List<StructattrVechielDto> structVehicle(Map query);
List<Map> getStructIvt(@Param("query")StructattrQuery query, PageQuery pageQuery);
}

View File

@@ -38,19 +38,19 @@
</select>
<select id="collectVehicle" resultType="org.nl.wms.stor_manage.struct.service.dto.StructattrVechielDto">
SELECT
md_pb_vehicleMater.qty,
md_pb_vehicleMater.frozen_qty,
md_pb_vehicleMater.material_id,
md_pb_vehicleMater.pcsn,
md_pb_vehicleMater.id as vm_id,
st_ivt_structattr.*
md_pb_vehicleMater.qty,
md_pb_vehicleMater.frozen_qty,
md_pb_vehicleMater.material_id,
md_pb_vehicleMater.pcsn,
md_pb_vehicleMater.id as vm_id,
st_ivt_structattr.*
FROM
st_ivt_structattr
LEFT JOIN md_pb_vehicleMater ON st_ivt_structattr.vehicle_code = md_pb_vehicleMater.vehicle_code
st_ivt_structattr
LEFT JOIN md_pb_vehicleMater ON st_ivt_structattr.vehicle_code = md_pb_vehicleMater.vehicle_code
WHERE
material_id = #{material_id}
AND pcsn = #{pcsn}
AND st_ivt_structattr.stor_code = #{stor_code}
material_id = #{material_id}
AND pcsn = #{pcsn}
AND st_ivt_structattr.stor_code = #{stor_code}
<if test="vehicles != null and vehicles.size() > 0">
AND st_ivt_structattr.vehicle_code in
<foreach collection="vehicles" item="value" index="key" open="(" close=")" separator=",">
@@ -62,18 +62,43 @@
</if>
</select>
<select id="structVehicle" resultType="org.nl.wms.stor_manage.struct.service.dto.StructattrVechielDto">
SELECT md_pb_vehicleMater.qty,
md_pb_vehicleMater.frozen_qty,
md_pb_vehicleMater.material_id,
md_pb_vehicleMater.pcsn,
md_pb_vehicleMater.id as vm_id,
st_ivt_structattr.*
FROM st_ivt_structattr
LEFT JOIN md_pb_vehicleMater ON st_ivt_structattr.vehicle_code = md_pb_vehicleMater.vehicle_code
WHERE st_ivt_structattr.vehicle_code is not null
and md_pb_vehicleMater.is_lock = false
</select>
<select id="getStructIvt" resultType="java.util.Map">
SELECT
md_pb_vehicleMater.qty,
md_pb_vehicleMater.frozen_qty,
md_pb_vehicleMater.material_id,
md_pb_vehicleMater.pcsn,
md_pb_vehicleMater.id as vm_id,
st_ivt_structattr.*
struct.struct_code,
struct.struct_name,
struct.sect_code,
struct.stor_code,
struct.vehicle_code,
vm.pcsn,
vm.qty,
vm.frozen_qty,
vm.parent_vehicle_code,
material.material_code,
material.material_name
FROM
st_ivt_structattr
LEFT JOIN md_pb_vehicleMater ON st_ivt_structattr.vehicle_code = md_pb_vehicleMater.vehicle_code
WHERE
st_ivt_structattr.vehicle_code is not null and
md_pb_vehicleMater.is_lock = false
st_ivt_structattr struct
left join md_pb_vehicleMater vm on struct.vehicle_code = vm.vehicle_code
left join md_me_materialbase material on vm.material_id = material.material_id
<where>
<if test="query.search != null and query.search != ''">
and (struct.struct_code LIKE '%${query.search}%'
or struct.struct_name LIKE '%${query.search}%')
</if>
<if test="query.vehicle_code != null and query.vehicle_code != ''">
and struct.vehicle_code LIKE '%${query.vehicle_code}%'
</if>
</where>
</select>
</mapper>

View File

@@ -18,6 +18,7 @@ public class StructattrQuery extends BaseQuery<StIvtStructattr> {
private String sect_code;
private String lock_type;
private Boolean is_used;
private String vehicle_code;
@Override
public void paramMapping() {
super.doP.put("search", QParam.builder().k(new String[]{"struct_code"}).type(QueryTEnum.LK).build());

View File

@@ -146,6 +146,15 @@ public class StIvtStructattrServiceImpl extends ServiceImpl<StIvtStructattrMappe
public List<StructattrVechielDto> structVehicle(Map query) {
List<StructattrVechielDto> structVehicle = this.baseMapper.structVehicle(query);
return structVehicle;
}
@Override
public Object getStructIvt(StructattrQuery query, PageQuery pageQuery) {
Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
page.setOrderBy("struct.create_time DESC");
List<Map> mst_detail = this.baseMapper.getStructIvt(query, pageQuery);
TableDataInfo<Map> build = TableDataInfo.build(mst_detail);
build.setTotalElements(page.getTotal());
return build;
}
}