From 5edad169a59ef92008c0d7896bd773a4230bf580 Mon Sep 17 00:00:00 2001 From: verou <857149855@qq.com> Date: 星期四, 03 四月 2025 10:53:29 +0800 Subject: [PATCH] Merge branch 'devlop' of http://47.97.1.152:5880/r/wms-master into devlop --- rsf-admin/src/page/asnOrder/AsnOrderList.jsx | 1 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java | 4 + rsf-admin/src/page/task/TaskList.jsx | 39 ++++++++++-- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockItemController.java | 4 rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java | 2 rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java | 2 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java | 2 rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockItem.java | 8 +- rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java | 2 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java | 14 ++-- rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java | 4 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java | 39 +++++++++++- 12 files changed, 89 insertions(+), 32 deletions(-) diff --git a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx index f0a45e4..70af9af 100644 --- a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx +++ b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx @@ -67,7 +67,6 @@ const filters = [ <SearchInput source="condition" alwaysOn />, - <TextInput source="code" label="table.field.asnOrder.code" />, <TextInput source="poCode" label="table.field.asnOrder.poCode" />, <NumberInput source="poId" label="table.field.asnOrder.poId" />, diff --git a/rsf-admin/src/page/task/TaskList.jsx b/rsf-admin/src/page/task/TaskList.jsx index 64b1462..72cfe20 100644 --- a/rsf-admin/src/page/task/TaskList.jsx +++ b/rsf-admin/src/page/task/TaskList.jsx @@ -1,5 +1,7 @@ import React, { useState, useRef, useEffect, useMemo, useCallback } from "react"; import { useNavigate } from 'react-router-dom'; +import request from '@/utils/request'; + import { List, DatagridConfigurable, @@ -15,6 +17,7 @@ useRecordContext, useTranslate, useNotify, + useRefresh, useListContext, FunctionField, TextField, @@ -111,9 +114,9 @@ marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0, }} title={"menu.task"} - // empty={<EmptyData onClick={() => { setCreateDialog(true) }} />} + empty={<EmptyData onClick={() => { }} />} filters={filters} - sort={{ field: "create_time", order: "desc" }} + sort={{ field: "sort", order: "desc" }} actions={( <TopToolbar> <FilterButton /> @@ -212,11 +215,22 @@ */ const CancelButton = () => { const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); const clickCancel = () => { - cancleTask([record]) + cancleTask(record) }; //鍙栨秷浠诲姟 - const cancleTask = async (row) => {} + const cancleTask = async (row) => { + console.log(row); + const { data: { code, data, msg } } = await request.post(`/task/remove/` + row.id); + if (code === 200) { + notify(msg); + refresh(); + } else { + notify(msg); + } + } return ( <Button onClick={clickCancel} @@ -231,11 +245,21 @@ */ const SetTopButton = () => { const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); const clickTop = () => { - topTask([record]) + topTask(record) }; //缃《浠诲姟 - const topTask = async (row) => { } + const topTask = async (row) => { + const { data: { code, data, msg } } = await request.post(`/task/top/` + row.id); + if (code === 200) { + notify(msg); + refresh(); + } else { + notify(msg); + } + } return ( <Button onClick={clickTop} @@ -255,7 +279,7 @@ cancleTask([record]) }; //鍙栨秷浠诲姟 - const cancleTask = async (row) => {} + const cancleTask = async (row) => { } return ( <Button onClick={clickCancel} @@ -283,5 +307,4 @@ <SwapVertIcon /> </Button> ) - } \ No newline at end of file diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java index 13eb3eb..b9cd28e 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java @@ -219,7 +219,7 @@ if (Objects.isNull(params)) { return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - return mobileService.publicToStock(params); + return mobileService.publicToStock(params, getLoginUserId()); } @ApiOperation("鑾峰彇浠诲姟淇℃伅") diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java index 8609f3e..492b889 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java @@ -51,7 +51,7 @@ R operateToStock(OpStockParams params); - R publicToStock(PublicToStockParams params); + R publicToStock(PublicToStockParams params, Long loginUserId); R taskToStock(String code); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java index 8edde8a..150d18a 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java @@ -27,21 +27,18 @@ import com.vincent.rsf.server.system.mapper.TenantMapper; import com.vincent.rsf.server.system.mapper.UserMapper; import com.vincent.rsf.server.system.service.FieldsItemService; -import com.vincent.rsf.server.system.service.FieldsService; import com.vincent.rsf.server.system.service.UserLoginService; import com.vincent.rsf.server.system.utils.SerialRuleUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; -import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -612,12 +609,14 @@ /** * 浜哄伐涓婃灦鍏ュ簱 + * * @param params + * @param loginUserId * @return */ @Override @Transactional(rollbackFor = Exception.class) - public R publicToStock(PublicToStockParams params) { + public R publicToStock(PublicToStockParams params, Long loginUserId) { if (Objects.isNull(params.getLocCode()) || StringUtils.isBlank(params.getLocCode())) { throw new CoolException("搴撲綅涓嶈兘涓虹┖锛侊紒"); } @@ -633,7 +632,9 @@ stock.setAsnId(OrderId).setAsnCode(order.getCode()); if (!Objects.isNull(order.getPoCode()) && StringUtils.isNotBlank(order.getPoCode())) { Purchase purchase = purchaseService.getOne(new LambdaQueryWrapper<Purchase>().eq(Purchase::getCode, order.getPoCode())); - stock.setPlatOrderNo(purchase.getPlatCode()).setPlatToken(purchase.getPlatId()); + if (!Objects.isNull(purchase)) { + stock.setPlatOrderNo(purchase.getPlatCode()).setPlatToken(purchase.getPlatId()); + } } String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_STOCK_CODE, null); if (StringUtils.isBlank(ruleCode)) { @@ -642,7 +643,7 @@ if (!stockService.save(stock)) { throw new CoolException("搴撳瓨淇濆瓨澶辫触锛侊紒"); } - Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, params.getLocCode())); + Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, params.getLocCode())); if (Objects.isNull(loc)) { throw new CoolException("搴撲綅涓嶅瓨鍦紒锛�"); } @@ -653,6 +654,7 @@ stockItem.setAsnItemId(orderItem.getId()) .setBarcode(orderItem.getBarcode()) .setLocId(loc.getId()) + .setUpdateBy(loginUserId) .setId(null) .setStockId(stock.getId()); stockItems.add(stockItem); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockItemController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockItemController.java index 47e8a1b..844c06b 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockItemController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockItemController.java @@ -95,10 +95,10 @@ List<KeyValVo> vos = new ArrayList<>(); LambdaQueryWrapper<StockItem> wrapper = new LambdaQueryWrapper<>(); if (!Cools.isEmpty(condition)) { - wrapper.like(StockItem::getMatnrk, condition); + wrapper.like(StockItem::getMaktx, condition); } stockItemService.page(new Page<>(1, 30), wrapper).getRecords().forEach( - item -> vos.add(new KeyValVo(item.getId(), item.getMatnrk())) + item -> vos.add(new KeyValVo(item.getId(), item.getMaktx())) ); return R.ok().add(vos); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java index b3710c4..11a8dc0 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java @@ -1,6 +1,7 @@ package com.vincent.rsf.server.manager.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; @@ -128,16 +129,46 @@ ExcelUtil.build(ExcelUtil.create(taskService.list(), Task.class), response); } - @PreAuthorize("hasAuthority('manager:task:update')") @ApiOperation("瀹屾垚浠诲姟") - @GetMapping("/task/complete/{id}") + @PostMapping("/task/complete/{id}") public R completeTask(@PathVariable String id) { if (Objects.isNull(id)) { throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } -// return taskService.completeTask(id); - return null; + List<Long> longs = Arrays.asList(TaskStsType.GENERATE_IN.id, TaskStsType.GENERATE_OUT.id); + List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getId, id).in(Task::getTaskStatus, longs)); + if (tasks.isEmpty()) { + throw new CoolException("浠诲姟宸插鎵ц鐘舵�佷笉鍙竴閿畬鎴愶紒锛�"); + } + try { + taskService.completeTask(tasks); + } catch (Exception ex) { + return R.error("浠诲姟寮傚父锛屾棤娉曞畬鎴愶紒锛�"); + } + return R.ok(); + } + + @PreAuthorize("hasAuthority('manager:task:update')") + @ApiOperation("浠诲姟鍑哄簱缃《") + @PostMapping("/task/top/{id}") + public R setTop(@PathVariable String id) { + if (Objects.isNull(id)) { + throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + List<Long> longs = Arrays.asList(TaskStsType.GENERATE_IN.id, TaskStsType.GENERATE_OUT.id); + List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getId, id).in(Task::getTaskStatus, longs)); + if (tasks.isEmpty()) { + throw new CoolException("浠诲姟宸插鎵ц鐘舵�佷笉鍙竴閿疆椤讹紒锛�"); + } + try { + if (!taskService.update(new LambdaUpdateWrapper<Task>().set(Task::getSort, 100).eq(Task::getId, id))) { + throw new CoolException("缃《澶辫触锛侊紒"); + } + } catch (Exception ex) { + return R.error("浠诲姟寮傚父锛屾棤娉曞畬鎴愶紒锛�"); + } + return R.ok(); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java index b2f899c..0e1a978 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java @@ -86,7 +86,7 @@ * 鐗╂枡鏍囪瘑 */ @ApiModelProperty(value= "鐗╂枡鏍囪瘑") - private String matnrId; + private Long matnrId; /** * 鐗╂枡缂栫爜 @@ -233,7 +233,7 @@ public AsnOrderItem() {} - public AsnOrderItem(Long asnId,String asnCode,Long poDetlId, String matnrCode, String poCode,String matnrId,String matnk,Double anfme,String stockUnit,Double purQty,String purUnit,Double qty,String splrCode,String splrName,String qrcode,String barcode,String packName,Integer status, Integer ntyStatus,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) { + public AsnOrderItem(Long asnId,String asnCode,Long poDetlId, String matnrCode, String poCode,Long matnrId,String matnk,Double anfme,String stockUnit,Double purQty,String purUnit,Double qty,String splrCode,String splrName,String qrcode,String barcode,String packName,Integer status, Integer ntyStatus,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) { this.asnId = asnId; this.asnCode = asnCode; this.poDetlId = poDetlId; diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockItem.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockItem.java index d90bbe0..d256b0c 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockItem.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockItem.java @@ -58,7 +58,7 @@ * 鐗╂枡缂栫爜 */ @ApiModelProperty(value= "鐗╂枡缂栫爜") - private String code; + private String matnrCode; @ApiModelProperty(value = "閫氱煡鍗曟槑缁嗘爣璇�") @@ -68,7 +68,7 @@ * 鍚嶇О */ @ApiModelProperty(value= "鍚嶇О") - private String matnrk; + private String maktx; /** * 鏁伴噺 @@ -269,8 +269,8 @@ this.stockId = stockId; this.matnrId = matnrId; this.asnItemId = asnItemId; - this.code = code; - this.matnrk = matnrk; + this.matnrCode = code; + this.maktx = matnrk; this.anfme = anfme; this.workQty = workQty; this.qty = qty; diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java index 3ea93c3..c270e68 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java @@ -129,7 +129,7 @@ .setPurUnit(item.getUnit()) .setMatnrCode(matnr.getCode()) .setMaktx(matnr.getName()) - .setMatnrId(matnr.getId() + ""); + .setMatnrId(matnr.getId()); orderItems.add(orderItem); }); if (!asnOrderItemService.saveBatch(orderItems)) { diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java index b3335ec..2f22214 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java @@ -148,7 +148,9 @@ Stock stock = new Stock(); if (!Objects.isNull(order.getPoCode()) && StringUtils.isNotBlank(order.getPoCode())) { Purchase purchase = purchaseService.getOne(new LambdaQueryWrapper<Purchase>().eq(Purchase::getCode, order.getPoCode())); - stock.setPlatOrderNo(purchase.getPlatCode()).setPlatToken(purchase.getPlatId()); + if (!Objects.isNull(purchase)) { + stock.setPlatOrderNo(purchase.getPlatCode()).setPlatToken(purchase.getPlatId()); + } } String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_STOCK_CODE, null); if (StringUtils.isBlank(ruleCode)) { diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java index cc8f42a..e2c40cb 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java @@ -108,7 +108,7 @@ .setUnit(item.getStockUnit()) .setFieldsIndex(item.getFieldsIndex()) .setUnit(item.getStockUnit()) - .setMatnrId(StringUtils.isNotBlank(item.getMatnrId()) ? Long.parseLong(item.getMatnrId()) : null) + .setMatnrId(item.getMatnrId()) .setMaktx(item.getMaktx()) .setMatnrCode(item.getMatnrCode()); for (PakinItem waitPakinItem : waitPakin.getItems()) { -- Gitblit v1.9.1