diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/StorageLogController.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/StorageLogController.java index 9ca23bce..f52b90f3 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/StorageLogController.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/StorageLogController.java @@ -1,6 +1,7 @@ package com.chanko.yunxi.mes.module.heli.controller.admin.storagelog; import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll.StorageLogAllDO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -80,6 +81,14 @@ public class StorageLogController { return success(pageResult); } + @GetMapping("/now") + @Operation(summary = "获得入/出库实时分页") + @PreAuthorize("@ss.hasPermission('heli:storage-log:query')") + public CommonResult> getStorageNowPage(@Valid StorageLogPageReqVO pageReqVO) { + PageResult pageResult = storageLogService.getStorageNowPage(pageReqVO); + return success(pageResult); + } + @GetMapping("/export-excel") @Operation(summary = "导出入/出库日志 Excel") @PreAuthorize("@ss.hasPermission('heli:storage-log:export')") diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/vo/StorageLogPageReqVO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/vo/StorageLogPageReqVO.java index e046a78f..17ce94fd 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/vo/StorageLogPageReqVO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/storagelog/vo/StorageLogPageReqVO.java @@ -37,6 +37,15 @@ public class StorageLogPageReqVO extends PageParam { @Schema(description = "出入库类型") private Integer stockType; + @Schema(description = "仓库") + private Long whId; + + @Schema(description = "库区") + private Long rgId; + + @Schema(description = "库位") + private Long pnId; + } \ No newline at end of file diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/storagelogNow/StorageLogNowDO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/storagelogNow/StorageLogNowDO.java new file mode 100644 index 00000000..f5f45e5e --- /dev/null +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/storagelogNow/StorageLogNowDO.java @@ -0,0 +1,59 @@ +package com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.chanko.yunxi.mes.framework.mybatis.core.dataobject.BaseDO; +import lombok.*; + +import java.math.BigDecimal; + +/** + * 入/出库日志 DO + * + * @author 管理员 + */ +@TableName("v_storage_material_now") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StorageLogNowDO extends BaseDO { + + /** + * 主键id + */ + @TableId + private Long id; + + /** + * 库存良品数量 + */ + private BigDecimal storageOkQty; + /** + * 批次号 + */ + private String lotNo; + + private String matName; + + private String matCode; + + private String matType; + + private Long whId; + private String whName; + + private Long rgId; + private String rgName; + + private Long pnId; + private String pnName; + + private String shortName; + + private String matSpec; + private String matBrand; + private String matUnit; +} \ No newline at end of file diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/pn/PnMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/pn/PnMapper.java index d1c931d3..b3070b9b 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/pn/PnMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/pn/PnMapper.java @@ -37,7 +37,7 @@ public interface PnMapper extends BaseMapperX { } default List> selectSimpleList() { - return selectMaps(new QueryWrapper().select("id", "pn_name").lambda()); + return selectMaps(new QueryWrapper().select("id", "pn_name","rg_id").lambda()); } } \ No newline at end of file diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/rg/RgMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/rg/RgMapper.java index de43c580..1bc6a966 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/rg/RgMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/rg/RgMapper.java @@ -35,7 +35,7 @@ public interface RgMapper extends BaseMapperX { default List> selectSimpleList() { - return selectMaps(new QueryWrapper().select("id", "rg_name").lambda()); + return selectMaps(new QueryWrapper().select("id", "rg_name","wh_id").lambda()); } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/storagelog/StorageLogNowMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/storagelog/StorageLogNowMapper.java new file mode 100644 index 00000000..c9032d78 --- /dev/null +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/storagelog/StorageLogNowMapper.java @@ -0,0 +1,36 @@ +package com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog; + +import com.alibaba.druid.util.StringUtils; +import com.chanko.yunxi.mes.framework.common.pojo.PageResult; +import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX; +import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.StorageLogPageReqVO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO; +import com.github.yulichang.wrapper.MPJLambdaWrapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * 入/出库日志 Mapper + * + * @author 管理员 + */ +@Mapper +public interface StorageLogNowMapper extends BaseMapperX { + + default PageResult selectPage(StorageLogPageReqVO reqVO) { + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + + query.selectAll(StorageLogNowDO.class) + .orderByDesc(StorageLogNowDO::getId); + + query.like(!StringUtils.isEmpty(reqVO.getMatType()),StorageLogNowDO::getMatType, reqVO.getMatType()) + .eq(reqVO.getWhId()!= null,StorageLogNowDO::getWhId, reqVO.getWhId()) + .eq(reqVO.getRgId()!= null,StorageLogNowDO::getRgId, reqVO.getRgId()) + .eq(reqVO.getPnId()!= null,StorageLogNowDO::getPnId, reqVO.getPnId()) + .like(!StringUtils.isEmpty(reqVO.getMatName()), StorageLogNowDO::getMatName, reqVO.getMatName()) + .like(!StringUtils.isEmpty(reqVO.getMatCode()), StorageLogNowDO::getMatCode, reqVO.getMatCode()) + .like(!StringUtils.isEmpty(reqVO.getLotNo()),StorageLogNowDO::getLotNo, reqVO.getLotNo()); + + return selectPage(reqVO,query); + } + PageResult selectAllPage(StorageLogPageReqVO reqVO); +} \ No newline at end of file diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogService.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogService.java index 50c9c1f2..f5506731 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogService.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogService.java @@ -7,6 +7,7 @@ import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll.StorageLogAllDO; import com.chanko.yunxi.mes.framework.common.pojo.PageResult; import com.chanko.yunxi.mes.framework.common.pojo.PageParam; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagemat.StorageMatDO; /** @@ -54,6 +55,8 @@ public interface StorageLogService { */ PageResult getStorageLogPage(StorageLogPageReqVO pageReqVO); + PageResult getStorageNowPage(StorageLogPageReqVO pageReqVO); + void createStorageLogBatch(List storageLogDOs); } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogServiceImpl.java index 313e3deb..133a0b86 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/storagelog/StorageLogServiceImpl.java @@ -1,7 +1,9 @@ package com.chanko.yunxi.mes.module.heli.service.storagelog; import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll.StorageLogAllDO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO; import com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog.StorageLogAllMapper; +import com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog.StorageLogNowMapper; import org.springframework.stereotype.Service; import javax.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -34,6 +36,9 @@ public class StorageLogServiceImpl implements StorageLogService { @Resource private StorageLogAllMapper storageLogAllMapper; + @Resource + private StorageLogNowMapper storageLogNowMapper; + @Override public Long createStorageLog(StorageLogSaveReqVO createReqVO) { // 插入 @@ -76,6 +81,11 @@ public class StorageLogServiceImpl implements StorageLogService { return storageLogAllMapper.selectPage(pageReqVO); } + @Override + public PageResult getStorageNowPage(StorageLogPageReqVO pageReqVO) { + return storageLogNowMapper.selectPage(pageReqVO); + } + @Override public void createStorageLogBatch(List storageLogDOs) { for (StorageLogDO storageLogDo : storageLogDOs){ diff --git a/mes-ui/mes-ui-admin-vue3/src/api/heli/storagelog/index.ts b/mes-ui/mes-ui-admin-vue3/src/api/heli/storagelog/index.ts index e479f3f9..01989c02 100644 --- a/mes-ui/mes-ui-admin-vue3/src/api/heli/storagelog/index.ts +++ b/mes-ui/mes-ui-admin-vue3/src/api/heli/storagelog/index.ts @@ -1,43 +1,48 @@ -import request from '@/config/axios' - -export interface StorageLogVO { - id: number - stockId: number - matId: number - whId: number - rgId: number - pnId: number - storageOkQty: number - lotNo: string - description: string -} - -// 查询入/出库日志分页 -export const getStorageLogPage = async (params) => { - return await request.get({ url: `/heli/storage-log/page`, params }) -} - -// 查询入/出库日志详情 -export const getStorageLog = async (id: number) => { - return await request.get({ url: `/heli/storage-log/get?id=` + id }) -} - -// 新增入/出库日志 -export const createStorageLog = async (data: StorageLogVO) => { - return await request.post({ url: `/heli/storage-log/create`, data }) -} - -// 修改入/出库日志 -export const updateStorageLog = async (data: StorageLogVO) => { - return await request.put({ url: `/heli/storage-log/update`, data }) -} - -// 删除入/出库日志 -export const deleteStorageLog = async (id: number) => { - return await request.delete({ url: `/heli/storage-log/delete?id=` + id }) -} - -// 导出入/出库日志 Excel -export const exportStorageLog = async (params) => { - return await request.download({ url: `/heli/storage-log/export-excel`, params }) -} \ No newline at end of file +import request from '@/config/axios' + +export interface StorageLogVO { + id: number + stockId: number + matId: number + whId: number + rgId: number + pnId: number + storageOkQty: number + lotNo: string + description: string +} + +// 查询入/出库实时分页 +export const getStorageNowPage = async (params) => { + return await request.get({ url: `/heli/storage-log/now`, params }) +} + +// 查询入/出库日志分页 +export const getStorageLogPage = async (params) => { + return await request.get({ url: `/heli/storage-log/page`, params }) +} + +// 查询入/出库日志详情 +export const getStorageLog = async (id: number) => { + return await request.get({ url: `/heli/storage-log/get?id=` + id }) +} + +// 新增入/出库日志 +export const createStorageLog = async (data: StorageLogVO) => { + return await request.post({ url: `/heli/storage-log/create`, data }) +} + +// 修改入/出库日志 +export const updateStorageLog = async (data: StorageLogVO) => { + return await request.put({ url: `/heli/storage-log/update`, data }) +} + +// 删除入/出库日志 +export const deleteStorageLog = async (id: number) => { + return await request.delete({ url: `/heli/storage-log/delete?id=` + id }) +} + +// 导出入/出库日志 Excel +export const exportStorageLog = async (params) => { + return await request.download({ url: `/heli/storage-log/export-excel`, params }) +} diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/StorageLogForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/StorageLogForm.vue index e03e2e6f..900f3a4d 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/StorageLogForm.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/StorageLogForm.vue @@ -1,128 +1,170 @@ + \ No newline at end of file diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/index.vue index 1a6bd0a9..350c6c3d 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagelog/index.vue @@ -70,26 +70,23 @@ @pagination="getList" /> - - \ No newline at end of file