diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/StIvtStructivtDailyMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/StIvtStructivtDailyMapper.java index 25d96347..16b9309f 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/StIvtStructivtDailyMapper.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/StIvtStructivtDailyMapper.java @@ -34,5 +34,11 @@ public interface StIvtStructivtDailyMapper extends BaseMapper getIoNum(@Param("query") Map json); + + /** + * 收发存查询 + * @return / + */ + List getPhyIvt(@Param("query") Map json); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/xml/StIvtStructivtDailyMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/xml/StIvtStructivtDailyMapper.xml index ee835387..08a1f96b 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/xml/StIvtStructivtDailyMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/dailyStructivt/dao/mapper/xml/StIvtStructivtDailyMapper.xml @@ -83,4 +83,42 @@ + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/rest/PhyivtController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/rest/PhyivtController.java new file mode 100644 index 00000000..b061a258 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/rest/PhyivtController.java @@ -0,0 +1,38 @@ + +package org.nl.wms.stata_manage.rest; + + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.stata_manage.service.PhyivtService; +import org.springframework.data.domain.Pageable; +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.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +/** + * @author Liuxy + * @date 2022-06-28 + **/ +@RestController +@RequiredArgsConstructor +@Api(tags = "收发存查询") +@RequestMapping("/api/phyivt") +@Slf4j +public class PhyivtController { + + private final PhyivtService phyivtService; + + @GetMapping + @ApiOperation("库存查询") + public ResponseEntity query(@RequestParam Map whereJson, Pageable page) { + return new ResponseEntity<>(phyivtService.queryAll(whereJson, page), HttpStatus.OK); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/service/PhyivtService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/service/PhyivtService.java new file mode 100644 index 00000000..a54c6cca --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/service/PhyivtService.java @@ -0,0 +1,24 @@ + +package org.nl.wms.stata_manage.service; + +import org.springframework.data.domain.Pageable; + +import java.util.Map; + +/** + * @author Liuxy + * @description 服务接口 + * @date 2022-06-28 + **/ +public interface PhyivtService { + + /** + * 查询数据分页 + * + * @param whereJson 条件 + * @param page 分页参数 + * @return Map + */ + Map queryAll(Map whereJson, Pageable page); + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/service/impl/PhyivtServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/service/impl/PhyivtServiceImpl.java new file mode 100644 index 00000000..5e07d1a5 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/stata_manage/service/impl/PhyivtServiceImpl.java @@ -0,0 +1,69 @@ + +package org.nl.wms.stata_manage.service.impl; + + +import cn.hutool.core.map.MapUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.modules.common.utils.PageUtil; +import org.nl.wms.masterdata_manage.storage.service.dailyStructivt.dao.StIvtStructivtDaily; +import org.nl.wms.masterdata_manage.storage.service.dailyStructivt.dao.mapper.StIvtStructivtDailyMapper; +import org.nl.wms.stata_manage.service.PhyivtService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Pageable; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * @author Liuxy + * @description 服务实现 + * @date 2022-06-28 + **/ +@Service +@RequiredArgsConstructor +@Slf4j +public class PhyivtServiceImpl implements PhyivtService { + + @Autowired + private StIvtStructivtDailyMapper stIvtStructivtDailyMapper; + + @Override + public Map queryAll(Map whereJson, Pageable page) { + + whereJson.put("begin_time", MapUtil.getStr(whereJson, "begin_time").substring(0,10)); + whereJson.put("end_time", MapUtil.getStr(whereJson, "end_time").substring(0,10)); + + List phyIvtList = stIvtStructivtDailyMapper.getPhyIvt(whereJson); + + // 计算期初数 + List beginList = stIvtStructivtDailyMapper.selectList( + new QueryWrapper().lambda() + .eq(StIvtStructivtDaily::getCreate_time, MapUtil.getStr(whereJson, "begin_time").substring(0, 10)) + ); + + for(JSONObject json : phyIvtList) { + + List dao = beginList.stream() + .filter(row -> row.getMaterial_id().equals(json.getString("material_id"))) + .collect(Collectors.toList()); + + json.put("begin_qty", ObjectUtil.isNotEmpty(dao) ? dao.get(0).getCanuse_qty() : 0); + + } + + // 处理分页 + Map json = PageUtil.toPage( + PageUtil.toPage(page.getPageNumber(), page.getPageSize(), phyIvtList), + phyIvtList.size() + ); + + return json; + } + +} diff --git a/mes/qd/src/components/Crud/Pagination.vue b/mes/qd/src/components/Crud/Pagination.vue index d4482fbd..4e8ae262 100644 --- a/mes/qd/src/components/Crud/Pagination.vue +++ b/mes/qd/src/components/Crud/Pagination.vue @@ -1,10 +1,11 @@ + + + + diff --git a/mes/qd/src/views/wms/stata_manage/phyivt/phyivt.js b/mes/qd/src/views/wms/stata_manage/phyivt/phyivt.js new file mode 100644 index 00000000..933cafd9 --- /dev/null +++ b/mes/qd/src/views/wms/stata_manage/phyivt/phyivt.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/phyivt', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/phyivt/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/phyivt', + method: 'put', + data + }) +} + +export default { add, edit, del }