From 7ea1537c02273a796781bb05f8b0c87969aeccc6 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期三, 14 五月 2025 16:48:38 +0800 Subject: [PATCH] 问题清单修改 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/PurchaseController.java | 1 rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogList.jsx | 4 -- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java | 18 ++++++-- rsf-admin/src/page/components/ImportModal.jsx | 5 ++ rsf-admin/src/page/orders/asnOrder/POItemModal.jsx | 12 ++++- rsf-admin/src/page/orders/asnOrder/AsnOrderModal.jsx | 17 ++++---- rsf-admin/src/page/histories/waitPakinLog/WaitPakinItemLogList.jsx | 4 +- 7 files changed, 38 insertions(+), 23 deletions(-) diff --git a/rsf-admin/src/page/components/ImportModal.jsx b/rsf-admin/src/page/components/ImportModal.jsx index 63c2edf..caee07f 100644 --- a/rsf-admin/src/page/components/ImportModal.jsx +++ b/rsf-admin/src/page/components/ImportModal.jsx @@ -21,7 +21,7 @@ import { usePapaParse } from './usePapaParse'; import MatnrList from '../basicInfo/matnr/MatnrList'; import request from '@/utils/request' - +import ImportExportOutlinedIcon from '@mui/icons-material/ImportExportOutlined'; const ImportModal = ({ open, onClose, importTemp, useCodeImport, onceBatch = 10, value, parmas = {}}) => { const refresh = useRefresh(); const translate = useTranslate(); @@ -222,6 +222,7 @@ <Toolbar sx={{ width: '100%', + justifyContent: 'end' }} > {importer.state === 'idle' ? ( @@ -229,6 +230,8 @@ <Button label="common.action.import.title" variant="contained" + startIcon={<ImportExportOutlinedIcon />} + size='medium' onClick={startImport} disabled={!file} /> diff --git a/rsf-admin/src/page/histories/waitPakinLog/WaitPakinItemLogList.jsx b/rsf-admin/src/page/histories/waitPakinLog/WaitPakinItemLogList.jsx index c088062..68179fb 100644 --- a/rsf-admin/src/page/histories/waitPakinLog/WaitPakinItemLogList.jsx +++ b/rsf-admin/src/page/histories/waitPakinLog/WaitPakinItemLogList.jsx @@ -108,7 +108,7 @@ marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0, }} title={"menu.waitPakinItemLog"} - empty={<EmptyData onClick={() => { setCreateDialog(true) }} />} + empty={false} filters={filters} filter={{ logId: recordId }} sort={{ field: "create_time", order: "desc" }} @@ -123,7 +123,7 @@ > <StyledDatagrid preferenceKey='waitPakinItemLog' - bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />} + bulkActionButtons={false} rowClick={ false} omit={['id', 'createTime', 'createBy', 'memo', 'pakinId', 'pakinItemId', 'asnId' ,'asnItemId', 'createBy$', 'fieldsIndex']} > diff --git a/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogList.jsx b/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogList.jsx index 53c8898..7ae94d1 100644 --- a/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogList.jsx +++ b/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogList.jsx @@ -133,10 +133,6 @@ <DateField source="createTime" label="common.field.createTime" showTime /> <BooleanField source="statusBool" label="common.field.status" sortable={false} /> <TextField source="memo" label="common.field.memo" sortable={false} /> - <WrapperField cellClassName="opt" label="common.field.opt"> - {/* <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} /> */} - <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} /> - </WrapperField> </StyledDatagrid> </List> <PageDrawer diff --git a/rsf-admin/src/page/orders/asnOrder/AsnOrderModal.jsx b/rsf-admin/src/page/orders/asnOrder/AsnOrderModal.jsx index d046fdd..1fdb77c 100644 --- a/rsf-admin/src/page/orders/asnOrder/AsnOrderModal.jsx +++ b/rsf-admin/src/page/orders/asnOrder/AsnOrderModal.jsx @@ -541,14 +541,6 @@ ), headerClassName: "custom", }, - // { - // field: 'packName', - // headerName: translate('table.field.asnOrderItem.packName'), - // minWidth: 100, - // flex: 1, - // editable: true, - // }, - { field: 'platItemId', headerName: translate('table.field.asnOrderItem.platItemId') + "*", @@ -557,6 +549,15 @@ editable: true, headerClassName: "custom", }, + { + field: 'splrBatch', + headerName: translate('table.field.asnOrderItem.splrBatch'), + minWidth: 100, + flex: 1, + editable: true, + headerClassName: "custom", + + }, // { // field: 'poCode', diff --git a/rsf-admin/src/page/orders/asnOrder/POItemModal.jsx b/rsf-admin/src/page/orders/asnOrder/POItemModal.jsx index 4bd0981..dcde225 100644 --- a/rsf-admin/src/page/orders/asnOrder/POItemModal.jsx +++ b/rsf-admin/src/page/orders/asnOrder/POItemModal.jsx @@ -109,8 +109,6 @@ "purchaseId": record, "items": tabelData, } - console.log('--------->'); - console.log(parmas); const res = await request.post(`/asnOrder/purchases/save`, parmas); if (res?.data?.code === 200) { notify(res.data.msg); @@ -167,7 +165,7 @@ </Box> </DialogContent> <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}> - <Toolbar sx={{ width: '100%', justifyContent: 'space-between' }} > + <Toolbar sx={{ width: '100%', justifyContent: 'end' }} > <Button disabled={disabled} onClick={handleSubmit} variant="contained" startIcon={<SaveIcon />}> {translate('toolbar.confirm')} </Button> @@ -283,6 +281,14 @@ headerClassName: "custom", }, { + field: 'qty', + headerName: translate('table.field.asnOrderItem.qty') + "*", + type: 'number', + minWidth: 100, + flex: 1, + valueFormatter: (val) => val < 0 ? 0 : val, + }, + { field: 'unit', headerName: translate('table.field.asnOrderItem.stockUnit'), minWidth: 100, diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/PurchaseController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/PurchaseController.java index af7930d..e49c304 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/PurchaseController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/PurchaseController.java @@ -55,6 +55,7 @@ BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<Purchase, BaseParam> pageParam = new PageParam<>(baseParam, Purchase.class); QueryWrapper<Purchase> wrapper = pageParam.buildWrapper(true); + wrapper.apply("anfme > qty"); wrapper.ne("exce_status", POExceStatus.PO_EXCE_STATUS_ALL_DONE.val); return R.ok().add(purchaseService.page(pageParam, wrapper)); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java index 011bd52..beaad9f 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java @@ -254,6 +254,7 @@ * @version 1.0 */ @Override + @Transactional(rollbackFor = Exception.class) public R createByPo(Map<String, Object> params) { Long purchaseId = Long.parseLong(params.get("purchaseId").toString()); List<PurchaseItem> itemList = JSONArray.parseArray(JSONObject.toJSONString(params.get("items")), PurchaseItem.class); @@ -286,6 +287,12 @@ String trackCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_LABEL_CODE, item); if (StringUtils.isBlank(trackCode)) { throw new CoolException("鍗曟嵁璺熻釜鐮佺敓鎴愬け璐ワ細璇锋鏌ャ�宻ys_asn_mantr_label銆嶆槸鍚﹂厤缃畬鎴愶紒锛�"); + } + + PurchaseItem service = purchaseItemService.getById(item.getId()); + Double qty = service.getQty() + item.getAnfme(); + if (qty.compareTo(service.getAnfme()) > 0) { + throw new CoolException("鏂板缓鍗曟嵁鏁伴噺涓嶈兘澶т簬璁″垝鏁伴噺锛侊紒"); } orderItem.setAnfme(item.getAnfme()) .setAsnId(order.getId()) @@ -373,17 +380,18 @@ } } - if (!asnOrderItemService.remove(new LambdaQueryWrapper<AsnOrderItem>() - .in(AsnOrderItem::getAsnId, ids))) { - throw new CoolException("Details Delete Fail"); - } - if (!this.remove(new LambdaQueryWrapper<AsnOrder>() .in(AsnOrder::getId, ids) .eq(AsnOrder::getExceStatus, AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.val))) { throw new CoolException("浠诲姟涓崟鎹笉鍙垹闄わ紒锛�"); } + + if (!asnOrderItemService.remove(new LambdaQueryWrapper<AsnOrderItem>() + .in(AsnOrderItem::getAsnId, ids))) { +// throw new CoolException("Details Delete Fail"); + } + return R.ok("鎿嶄綔鎴愬姛锛侊紒"); } -- Gitblit v1.9.1