rsf-admin/src/page/orders/asnOrder/AsnOrderModal.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-admin/src/page/orders/outStock/OutOrderList.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-admin/src/page/orders/outStock/SelectMatnrModal.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-admin/src/page/orders/wave/ItemToTaskModal.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-admin/src/page/orders/wave/WaveList.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaveController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItem.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
rsf-admin/src/page/orders/asnOrder/AsnOrderModal.jsx
@@ -66,9 +66,7 @@ const notify = useNotify(); const refresh = useRefresh(); const [disabled, setDisabled] = useState(false) const [createDialog, setCreateDialog] = useState(false); const tableRef = useRef(); useEffect(() => { rsf-admin/src/page/orders/outStock/OutOrderList.jsx
@@ -51,7 +51,7 @@ import DictionarySelect from "../../components/DictionarySelect"; import ImportButton from "../../components/ImportButton"; import DetailsIcon from '@mui/icons-material/Details'; import CancelIcon from '@mui/icons-material/Cancel'; import CancelOutlinedIcon from '@mui/icons-material/CancelOutlined'; import OutOrderCreate from "./OutOrderCreate"; import AddIcon from '@mui/icons-material/Add'; import OutOrderModal from "./OutOrderModal"; @@ -266,14 +266,12 @@ return ( <Button onClick={createByOrder} label={'toolbar.asnCreate'}> <AddIcon /> </Button> ) } const CancelButton = () => { const record = useRecordContext(); const notify = useNotify(); const refresh = useRefresh(); const cancelOrder = async () => { const { data: { code, data, msg } } = await request.get(`/outStock/cancel/${record?.id}`); if (code === 200) { @@ -285,6 +283,6 @@ } return ( <ConfirmButton label={"toolbar.cancel"} startIcon={<CancelIcon />} onConfirm={cancelOrder} /> record?.exceStatus == 0 ? <ConfirmButton label={"toolbar.cancel"} startIcon={<CancelOutlinedIcon /> } onConfirm={cancelOrder} /> : <></> ) } rsf-admin/src/page/orders/outStock/SelectMatnrModal.jsx
@@ -133,7 +133,6 @@ "orders": formData, "items": tabelData, } const res = await request.post(`/outStock/items/save`, parmas); if (res?.data?.code === 200) { setOpen(false); rsf-admin/src/page/orders/wave/ItemToTaskModal.jsx
@@ -178,6 +178,7 @@ } else { const res = await request.post(`/wave/public/task`, { wave: record?.record, waveItem: record?.dataSource }); if (res?.data?.code === 200) { record.setOpen(false) notify(res.data.msg); redirect("/task") } else { @@ -185,7 +186,6 @@ } refresh(); } record.setOpen(false) } return (<Button variant="contained" label={"ra.action.save"} onClick={generateTask}></Button>) } rsf-admin/src/page/orders/wave/WaveList.jsx
@@ -184,11 +184,12 @@ const notify = useNotify(); const refresh = useRefresh(); const redirect = useRedirect(); const pubClick = async (event) => { setSelectIds(record); setDetailDialog(true); } return ( <ConfirmButton label={"toolbar.createTask"} startIcon={<PublicIcon />} onConfirm={pubClick} /> record?.exceStatus == 0 ? <ConfirmButton label={"toolbar.createTask"} startIcon={<PublicIcon /> } onConfirm={pubClick} size='small' /> : <></> ); } rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaveController.java
@@ -12,8 +12,10 @@ import com.vincent.rsf.server.common.domain.BaseParam; import com.vincent.rsf.server.common.domain.KeyValVo; import com.vincent.rsf.server.common.domain.PageParam; import com.vincent.rsf.server.manager.entity.TaskItem; import com.vincent.rsf.server.manager.entity.Wave; import com.vincent.rsf.server.manager.entity.WaveItem; import com.vincent.rsf.server.manager.service.TaskItemService; import com.vincent.rsf.server.manager.service.WaveService; import com.vincent.rsf.server.system.controller.BaseController; import io.swagger.annotations.ApiOperation; @@ -30,6 +32,8 @@ @Autowired private WaveService waveService; @Autowired private TaskItemService taskItemService; @PreAuthorize("hasAuthority('manager:wave:list')") @PostMapping("/wave/page") @@ -85,6 +89,13 @@ @OperationLog("Delete 波次单据") @PostMapping("/wave/remove/{ids}") public R remove(@PathVariable Long[] ids) { if (Objects.isNull(ids)) { throw new CoolException("参数不能为空!!"); } List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().in(TaskItem::getSourceId, ids)); if (taskItems.isEmpty()) { throw new CoolException("有未完成任务,不可执行删除操作!!"); } if (!waveService.removeByIds(Arrays.asList(ids))) { return R.error("Delete Fail"); } rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItem.java
@@ -1,6 +1,5 @@ package com.vincent.rsf.server.manager.entity; import com.baomidou.mybatisplus.annotation.TableLogic; import java.text.SimpleDateFormat; import java.util.Date; @@ -10,12 +9,9 @@ import com.vincent.rsf.server.system.service.DictDataService; import lombok.experimental.Accessors; import org.springframework.format.annotation.DateTimeFormat; import java.text.SimpleDateFormat; import java.util.Date; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -25,7 +21,6 @@ import com.vincent.rsf.server.system.service.UserService; import com.vincent.rsf.server.system.entity.User; import java.io.Serializable; import java.util.Date; import java.util.Objects; @Data @@ -60,6 +55,12 @@ @ApiModelProperty("源编码") private Long source; @ApiModelProperty("源单号") private String sourceCode; @ApiModelProperty("源主单ID") private Long sourceId; @ApiModelProperty("单据ID") private Long orderId; @@ -99,10 +100,16 @@ private Double anfme; /** * 库存数量 * 执行数量 */ @ApiModelProperty("库存数量") private Double stockQty; private Double workQty; /** * 完成数量 */ @ApiModelProperty("完成数量") private Double qty; /** * 库存批次 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
@@ -154,6 +154,12 @@ if (Objects.isNull(loc)) { throw new CoolException("库位不存在!!"); } List<TaskItem> items = taskItemService.list(new LambdaQueryWrapper<TaskItem>().in(TaskItem::getSourceId, wave.getId())); if (items.isEmpty()) { throw new CoolException("波次任务已生成,不能重复生成!!"); } task.setTaskCode(ruleCode) .setTaskType(TaskType.TASK_TYPE_OUT.type) .setTaskStatus(TaskStsType.GENERATE_OUT.id) @@ -174,6 +180,8 @@ taskItem.setTaskId(task.getId()) .setAnfme(waveItem.getAnfme()) .setId(null) .setSourceCode(wave.getCode()) .setSourceId(wave.getId()) .setSource(item.getWaveItemId()); taskItems.add(taskItem); }