From 0cab12d746914719bcd777399909b155e4e03e73 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期五, 18 四月 2025 13:41:57 +0800 Subject: [PATCH] 问题修复 --- rsf-admin/src/page/histories/taskLog/TaskLogEdit.jsx | 14 +++ rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java | 47 ++++++++++- rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderType.java | 15 +++ rsf-admin/src/page/waitPakin/WaitPakinEdit.jsx | 16 +--- rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogEdit.jsx | 33 ++++--- rsf-admin/src/page/waitPakin/WaitPakinCreate.jsx | 13 --- rsf-admin/src/page/task/TaskList.jsx | 6 rsf-admin/src/page/orders/asnOrder/AsnOrderItemList.jsx | 2 rsf-admin/src/page/waitPakin/WaitPakinList.jsx | 6 - rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/AsnExceStatus.java | 32 ++++++++ rsf-admin/src/page/task/TaskEdit.jsx | 14 +++ rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderWorkType.java | 19 ++++ rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderLogServiceImpl.java | 6 + 13 files changed, 167 insertions(+), 56 deletions(-) diff --git a/rsf-admin/src/page/histories/taskLog/TaskLogEdit.jsx b/rsf-admin/src/page/histories/taskLog/TaskLogEdit.jsx index 3552cc7..46226d0 100644 --- a/rsf-admin/src/page/histories/taskLog/TaskLogEdit.jsx +++ b/rsf-admin/src/page/histories/taskLog/TaskLogEdit.jsx @@ -20,7 +20,8 @@ const { getValues } = useFormContext(); return ( <Toolbar sx={{ justifyContent: 'end' }}> - <SaveButton /> + <></> + {/* <SaveButton /> */} {/* <DeleteButton mutationMode="optimistic" /> */} </Toolbar> ) @@ -42,6 +43,17 @@ toolbar={<FormToolbar />} mode="onTouched" defaultValues={{}} + sx={{ + "& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled": { + bgcolor: 'white', + WebkitTextFillColor: "rgba(0, 0, 0)" + }, + + "& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled": { + bgcolor: 'white', + WebkitTextFillColor: "rgba(0, 0, 0)" + } + }} > <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}> <Grid item xs={24} md={16}> diff --git a/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogEdit.jsx b/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogEdit.jsx index 112f7f2..33c6fcd 100644 --- a/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogEdit.jsx +++ b/rsf-admin/src/page/histories/waitPakinLog/WaitPakinLogEdit.jsx @@ -35,8 +35,9 @@ return ( <Toolbar sx={{ justifyContent: 'end' }}> - <SaveButton /> - <DeleteButton mutationMode="optimistic" /> + <></> + {/* <SaveButton /> + <DeleteButton mutationMode="optimistic" /> */} </Toolbar> ) } @@ -53,25 +54,24 @@ aside={<EditBaseAside />} > <SimpleForm - sx={{ - '& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled': { - bgcolor: "white", - color: "black", - '-webkit-text-fill-color': "rgba(0, 0, 0)" - }, - '& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled': { - color: 'rgba(0, 0, 0, 0.77)' - } - }} shouldUnregister warnWhenUnsavedChanges toolbar={<FormToolbar />} mode="onTouched" defaultValues={{}} - // validate={(values) => { }} > <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}> - <Grid item xs={24} md={12}> + <Grid item xs={24} md={12} sx={{ + "& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled": { + bgcolor: 'white', + WebkitTextFillColor: "rgba(0, 0, 0)" + }, + + "& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled": { + bgcolor: 'white', + WebkitTextFillColor: "rgba(0, 0, 0)" + } + }}> <Typography variant="h6" gutterBottom> {translate('common.edit.title.main')} </Typography> @@ -79,25 +79,30 @@ <NumberInput label="table.field.waitPakinLog.pakinId" source="pakinId" + readOnly autoFocus /> <TextInput label="table.field.waitPakinLog.code" source="code" + readOnly parse={v => v} /> <TextInput label="table.field.waitPakinLog.barcode" source="barcode" + readOnly parse={v => v} /> <NumberInput label="table.field.waitPakinLog.anfme" + readOnly source="anfme" /> <SelectInput label="table.field.waitPakinLog.ioStatus" source="ioStatus" + readOnly choices={[ { id: 0, name: '寰呭叆搴�' }, { id: 1, name: ' 鍏ュ簱涓�' }, diff --git a/rsf-admin/src/page/orders/asnOrder/AsnOrderItemList.jsx b/rsf-admin/src/page/orders/asnOrder/AsnOrderItemList.jsx index 2e52eff..4593642 100644 --- a/rsf-admin/src/page/orders/asnOrder/AsnOrderItemList.jsx +++ b/rsf-admin/src/page/orders/asnOrder/AsnOrderItemList.jsx @@ -125,7 +125,7 @@ <MyCreateButton onClick={() => { setCreateDialog(true) }} /> <SelectColumnsButton preferenceKey='asnOrderItem' /> <ImportButton value={'asnOrderItem'} parmas={{ asnId: asnId }} /> - <MyExportButton /> + {/* <MyExportButton /> */} </TopToolbar> )} perPage={DEFAULT_ITEM_PAGE_SIZE} diff --git a/rsf-admin/src/page/task/TaskEdit.jsx b/rsf-admin/src/page/task/TaskEdit.jsx index 166b846..e5c4a9f 100644 --- a/rsf-admin/src/page/task/TaskEdit.jsx +++ b/rsf-admin/src/page/task/TaskEdit.jsx @@ -20,7 +20,8 @@ const { getValues } = useFormContext(); return ( <Toolbar sx={{ justifyContent: 'end' }}> - <SaveButton /> + <></> + {/* <SaveButton /> */} {/* <DeleteButton mutationMode="optimistic" /> */} </Toolbar> ) @@ -42,6 +43,17 @@ toolbar={<FormToolbar />} mode="onTouched" defaultValues={{}} + sx={{ + "& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled": { + bgcolor: 'white', + WebkitTextFillColor: "rgba(0, 0, 0)" + }, + + "& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled": { + bgcolor: 'white', + WebkitTextFillColor: "rgba(0, 0, 0)" + } + }} > <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}> <Grid item xs={24} md={16}> diff --git a/rsf-admin/src/page/task/TaskList.jsx b/rsf-admin/src/page/task/TaskList.jsx index 498a236..c743ee5 100644 --- a/rsf-admin/src/page/task/TaskList.jsx +++ b/rsf-admin/src/page/task/TaskList.jsx @@ -122,7 +122,7 @@ <BulkDeleteButton mutationMode={OPERATE_MODE} /> </> } - rowClick={false} + rowClick={'edit'} expand={false} expandSingle={true} omit={['id', 'createTime', 'createBy', 'memo', 'robotCode', 'exceStatus', 'expDesc', 'expCode', 'status', 'sort']} @@ -175,8 +175,8 @@ const record = useRecordContext(); const notify = useNotify(); const refresh = useRefresh(); - const clickComplete = () => { - console.log('------->'); + const clickComplete = (event) => { + event.stopPropagation(); completeTask([record]) }; //瀹屾垚浠诲姟 diff --git a/rsf-admin/src/page/waitPakin/WaitPakinCreate.jsx b/rsf-admin/src/page/waitPakin/WaitPakinCreate.jsx index e5250df..f5d112f 100644 --- a/rsf-admin/src/page/waitPakin/WaitPakinCreate.jsx +++ b/rsf-admin/src/page/waitPakin/WaitPakinCreate.jsx @@ -93,19 +93,6 @@ /> </Grid> <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.waitPakin.ansId" - source="ansId" - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.waitPakin.asnCode" - source="asnCode" - parse={v => v} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.waitPakin.barcode" source="barcode" diff --git a/rsf-admin/src/page/waitPakin/WaitPakinEdit.jsx b/rsf-admin/src/page/waitPakin/WaitPakinEdit.jsx index b1c51b6..8af2f5a 100644 --- a/rsf-admin/src/page/waitPakin/WaitPakinEdit.jsx +++ b/rsf-admin/src/page/waitPakin/WaitPakinEdit.jsx @@ -71,22 +71,14 @@ parse={v => v} autoFocus /> - <NumberInput - label="table.field.waitPakin.ansId" - readOnly - source="ansId" - /> - <TextInput - label="table.field.waitPakin.asnCode" - readOnly - source="asnCode" - parse={v => v} - /> <SelectInput label="table.field.waitPakin.flagDefect" readOnly source="flagDefect" - parse={v => v} + choices={[ + { id: 0, name: '鍚�' }, + { id: 1, name: ' 鏄�' }, + ]} /> </Stack> <Stack direction='row' gap={2}> diff --git a/rsf-admin/src/page/waitPakin/WaitPakinList.jsx b/rsf-admin/src/page/waitPakin/WaitPakinList.jsx index c306d20..c593b01 100644 --- a/rsf-admin/src/page/waitPakin/WaitPakinList.jsx +++ b/rsf-admin/src/page/waitPakin/WaitPakinList.jsx @@ -65,8 +65,6 @@ const filters = [ <SearchInput source="condition" alwaysOn />, <TextInput source="code" label="table.field.waitPakin.code" />, - <NumberInput source="ansId" label="table.field.waitPakin.ansId" />, - <TextInput source="asnCode" label="table.field.waitPakin.asnCode" />, <TextInput source="barcode" label="table.field.waitPakin.barcode" />, <NumberInput source="anfme" label="table.field.waitPakin.anfme" />, <SelectInput source="ioStatus" label="table.field.waitPakin.ioStatus" @@ -118,8 +116,6 @@ const BulkActionButtons = () => { } - - return ( <Box display="flex"> <List @@ -157,8 +153,6 @@ > <NumberField source="id" /> <TextField source="code" label="table.field.waitPakin.code" /> - {/* <NumberField source="ansId" label="table.field.waitPakin.ansId" /> */} - {/* <TextField source="asnCode" label="table.field.waitPakin.asnCode" /> */} <TextField source="barcode" label="table.field.waitPakin.barcode" /> <NumberField source="anfme" label="table.field.waitPakin.anfme" /> <TextField source="ioStatus$" label="table.field.waitPakin.ioStatus" sortable={false} /> diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderType.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderType.java index 1980df2..3fe7a04 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderType.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderType.java @@ -40,4 +40,19 @@ return null; } + public static String getValType(String type) { + if (type.equals(OrderType.ORDER_IN.type)) { + return OrderType.ORDER_IN.desc; + } else if (type.equals(OrderType.ORDER_OUT.type)) { + return OrderType.ORDER_OUT.desc; + } else if (type.equals(OrderType.ORDER_PLAT_IN.type)) { + return OrderType.ORDER_PLAT_IN.desc; + } else if (type.equals(OrderType.ORDER_RECEIPT.type)) { + return OrderType.ORDER_RECEIPT.desc; + } else if (type.equals(OrderType.ORDER_PURCHASE_IN.type)) { + return OrderType.ORDER_PURCHASE_IN.desc; + } + return null; + } + } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderWorkType.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderWorkType.java index 32079e6..a4426f6 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderWorkType.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderWorkType.java @@ -45,5 +45,24 @@ return null; } + public static String getWorkDesc(String type) { + if (type.equals(OrderWorkType.ORDER_WORK_TYPE_DONE_IN.type)) { + return OrderWorkType.ORDER_WORK_TYPE_DONE_IN.desc; + } else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_PROD.type)) { + return OrderWorkType.ORDER_WORK_TYPE_PROD.desc; + } else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_PURCHASE.type)) { + return OrderWorkType.ORDER_WORK_TYPE_PURCHASE.desc; + } else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_SALE.type)) { + return OrderWorkType.ORDER_WORK_TYPE_SALE.desc; + } else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_RETURN.type)) { + return OrderWorkType.ORDER_WORK_TYPE_RETURN.desc; + } else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_SUPPLIER.type)) { + return OrderWorkType.ORDER_WORK_TYPE_SUPPLIER.desc; + }else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_RETURN_ORDER.type)) { + return OrderWorkType.ORDER_WORK_TYPE_RETURN_ORDER.desc; + } + return null; + } + } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java index 84681bd..fb9005b 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java @@ -7,6 +7,8 @@ import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; +import com.vincent.rsf.server.api.entity.enums.OrderType; +import com.vincent.rsf.server.api.entity.enums.OrderWorkType; import com.vincent.rsf.server.common.utils.ExcelUtil; import com.vincent.rsf.server.common.annotation.OperationLog; import com.vincent.rsf.server.common.domain.BaseParam; @@ -15,7 +17,11 @@ import com.vincent.rsf.server.manager.controller.params.AsnOrderAndItemsParams; import com.vincent.rsf.server.manager.controller.params.BatchUpdateParam; import com.vincent.rsf.server.manager.entity.AsnOrder; +import com.vincent.rsf.server.manager.entity.AsnOrderItem; import com.vincent.rsf.server.manager.entity.Matnr; +import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate; +import com.vincent.rsf.server.manager.enums.AsnExceStatus; +import com.vincent.rsf.server.manager.service.AsnOrderItemService; import com.vincent.rsf.server.manager.service.AsnOrderService; import com.vincent.rsf.server.system.constant.SerialRuleCode; import com.vincent.rsf.server.system.controller.BaseController; @@ -30,6 +36,7 @@ import javax.mail.Multipart; import javax.servlet.http.HttpServletResponse; import java.util.*; +import java.util.stream.Collectors; @RestController @Api(tags = "ASN鍏ュ簱閫氱煡鍗�") @@ -37,6 +44,8 @@ @Autowired private AsnOrderService asnOrderService; + @Autowired + private AsnOrderItemService asnOrderItemService; @PreAuthorize("hasAuthority('manager:asnOrder:list')") @PostMapping("/asnOrder/page") @@ -130,16 +139,44 @@ if (!ids.isEmpty()) { orders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, ids)); } else { - orders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>()); + orders = asnOrderService.list(new LambdaQueryWrapper<>()); } } else { - orders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>()); + orders = asnOrderService.list(); } - ExcelUtil.build(ExcelUtil.create(orders, AsnOrder.class), response); + List<AsnOrderTemplate> orderTemplates = new ArrayList<>(); + for (AsnOrder order : orders) { + List<AsnOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getAsnId, order.getId())); + for (AsnOrderItem item : orderItems) { + if (Objects.isNull(item)) { + continue; + } + AsnOrderTemplate template = new AsnOrderTemplate(); + template.setCode(order.getCode()) + .setType(OrderType.getValType(order.getType())) + .setWkType(OrderWorkType.getWorkDesc(order.getWkType())) + .setExceStatus(AsnExceStatus.getExceStatus(order.getExceStatus())) + .setAnfme(item.getAnfme() + "") + .setMaktx(item.getMaktx()).setMemo(item.getMemo()) + .setMatnrCode(item.getMatnrCode()) + .setPoCode(item.getPoCode()) + .setPoId(order.getPoId() + "") + .setPackName(item.getPackName()) + .setPlatItemId(item.getPlatItemId()) + .setSplrBatch(item.getSplrBatch()) + .setSplrCode(item.getSplrCode()) + .setStockUnit(item.getStockUnit()) + .setPurQty(item.getPurQty() + "") + .setPurUnit(item.getPurUnit()); + orderTemplates.add(template); + } + } + ExcelUtil.build(ExcelUtil.create(orderTemplates, AsnOrderTemplate.class), response); } /** * 璐ㄦ涓婃姤 + * * @param orders * @return */ @@ -160,7 +197,7 @@ @PostMapping("/asnOrder/matnr/list") @ApiOperation("鐗╂枡鑾峰彇璁㈠崟") @PreAuthorize("hasAuthority('manager:asnOrder:list')") - public R getListByMatnr(@RequestBody Map<String, String> params){ + public R getListByMatnr(@RequestBody Map<String, String> params) { if (Objects.isNull(params)) { return R.error("鏌ヨ鏉′欢涓嶈兘涓虹┖锛侊紒"); } @@ -173,7 +210,7 @@ @PreAuthorize("hasAuthority('manager:asnOrder:save')") public R orderAndItem(@RequestBody AsnOrderAndItemsParams params) throws Exception { if (Objects.isNull(params)) { - return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } return asnOrderService.saveOrderAndItems(params, getLoginUserId()); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/AsnExceStatus.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/AsnExceStatus.java index 98148e4..b272641 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/AsnExceStatus.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/AsnExceStatus.java @@ -24,4 +24,36 @@ public Short val; public String desc; + public static String getExceStatus(Short val) { + if (val.equals(AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.val)) { + return AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.desc; + } else if (val.equals(AsnExceStatus.ASN_EXCE_STATUS_EXCE_ING.val)) { + return AsnExceStatus.ASN_EXCE_STATUS_EXCE_ING.desc; + } else if (val.equals(AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val)) { + return AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.desc; + } else if (val.equals(AsnExceStatus.ASN_EXCE_STATUS_TASK_CANCEL.val)) { + return AsnExceStatus.ASN_EXCE_STATUS_TASK_CANCEL.desc; + } else if (val.equals(AsnExceStatus.ASN_EXCE_STATUS_TASK_CLOSE.val)) { + return AsnExceStatus.ASN_EXCE_STATUS_TASK_CLOSE.desc; + } else { + return null; + } + } + + public static Short getExcelStatusDesc(String desc) { + if (desc.equals(AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.desc)) { + return AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.val; + } else if (desc.equals(AsnExceStatus.ASN_EXCE_STATUS_EXCE_ING.desc)) { + return AsnExceStatus.ASN_EXCE_STATUS_EXCE_ING.val; + } else if (desc.equals(AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.desc)) { + return AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val; + } else if (desc.equals(AsnExceStatus.ASN_EXCE_STATUS_TASK_CANCEL.desc)) { + return AsnExceStatus.ASN_EXCE_STATUS_TASK_CANCEL.val; + } else if (desc.equals(AsnExceStatus.ASN_EXCE_STATUS_TASK_CLOSE.desc)) { + return AsnExceStatus.ASN_EXCE_STATUS_TASK_CLOSE.val; + } else { + return null; + } + } + } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderLogServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderLogServiceImpl.java index 440a2b5..e2f1ef7 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderLogServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderLogServiceImpl.java @@ -51,6 +51,12 @@ order.setId(orderLog.getAsnId()) .setDeleted(0) .setExceStatus(AsnExceStatus.ASN_EXCE_STATUS_EXCE_ING.val); + + AsnOrder asnOrder = asnOrderService.getOne(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getCode, orderLog.getCode())); + if (Objects.isNull(asnOrder)) { + throw new CoolException("鏀惰揣鍗曟嵁宸叉坊鍔狅紝鍒锋柊鍚庡啀鎿嶄綔锛侊紒"); + } + if (!asnOrderService.saveOrUpdate(order)) { throw new CoolException("鍗曟嵁淇濆瓨澶辫触锛侊紒"); } -- Gitblit v1.9.1