skyouc
2 天以前 7885e0cb06992d03da37105c0a9f56ced99b338d
盘点差异单优化
10个文件已修改
126 ■■■■ 已修改文件
rsf-admin/src/i18n/core/chineseMessages.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/check/CheckOrderList.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/check/checkDiff/CheckDiffEdit.jsx 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/check/checkDiff/CheckDiffList.jsx 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiff.java 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/CheckDiffExceStatus.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/CheckExceStatus.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/system/constant/DictTypeCode.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/i18n/core/chineseMessages.js
@@ -21,6 +21,7 @@
      remove_filter: "移除这个过滤器",
      remove_all_filters: "移除所有",
      remove: "移除",
      approved: "审核",
      save: "保存",
      search: "搜索",
      select_all_button: "全部选中",
rsf-admin/src/page/orders/check/CheckOrderList.jsx
@@ -81,7 +81,7 @@
  <DictionarySelect
    label='table.field.checkOrder.exceStatus'
    name="exceStatus"
    dictTypeCode="sys_asn_exce_status"
    dictTypeCode="sys_check_exce_status"
    alwaysOn
  />,
]
rsf-admin/src/page/orders/check/checkDiff/CheckDiffEdit.jsx
@@ -6,8 +6,6 @@
    useTranslate,
    TextInput,
    NumberInput,
    BooleanInput,
    DateInput,
    SelectInput,
    ReferenceInput,
    ReferenceArrayInput,
@@ -20,7 +18,6 @@
    useRecordContext,
    DeleteButton,
} from 'react-admin';
import { useWatch, useFormContext } from "react-hook-form";
import { Stack, Grid, Box, Typography } from '@mui/material';
import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting';
import EditBaseAside from "../../../components/EditBaseAside";
@@ -72,7 +69,7 @@
                                    label="table.field.checkDiff.orderCode"
                                    source="orderCode"
                                    parse={v => v}
                                    autoFocus
                                    readOnly
                                />
                                <SelectInput
                                    label="table.field.checkDiff.checkType"
@@ -81,29 +78,35 @@
                                        { id: 0, name: '明盘' },
                                        { id: 1, name: '暗盘' },
                                    ]}
                                    readOnly
                                />
                                <NumberInput
                                    label="table.field.checkDiff.areaId"
                                    source="areaId"
                                    readOnly
                                />
                                <TextInput
                                    label="table.field.checkDiff.areaName"
                                    source="areaName"
                                    parse={v => v}
                                    readOnly
                                />
                            </Stack>
                            <Stack direction='row' gap={2}>
                                <NumberInput
                                    label="table.field.checkDiff.anfme"
                                    source="anfme"
                                    readOnly
                                />
                                <NumberInput
                                    label="table.field.checkDiff.checkQty"
                                    source="checkQty"
                                    readOnly
                                />
                                <NumberInput
                                    label="table.field.checkDiff.exceStatus"
                                    source="exceStatus"
                                    readOnly
                                />
                            </Stack>
                        </Grid>
rsf-admin/src/page/orders/check/checkDiff/CheckDiffList.jsx
@@ -31,6 +31,7 @@
    ReferenceArrayInput,
    AutocompleteInput,
    DeleteButton,
    Button,
} from 'react-admin';
import { Box, Typography, Card, Stack } from '@mui/material';
import { styled } from '@mui/material/styles';
@@ -39,6 +40,9 @@
import EmptyData from "../../../components/EmptyData";
import MyCreateButton from "../../../components/MyCreateButton";
import MyExportButton from '../../../components/MyExportButton';
import ApiOutlinedIcon from '@mui/icons-material/ApiOutlined';
import BillStatusField from '../../../components/BillStatusField';
import ConfirmButton from '../../../components/ConfirmButton';
import PageDrawer from "../../../components/PageDrawer";
import MyField from "../../../components/MyField";
import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
@@ -132,20 +136,17 @@
                    <TextField source="areaName" label="table.field.checkDiff.areaName" />
                    <NumberField source="anfme" label="table.field.checkDiff.anfme" />
                    <NumberField source="checkQty" label="table.field.checkDiff.checkQty" />
                    <NumberField source="exceStatus" label="table.field.checkDiff.exceStatus" />
                    <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
                        <TextField source="nickname" />
                    </ReferenceField>
                    {/* <NumberField source="exceStatus" label="table.field.checkDiff.exceStatus" /> */}
                    <NumberField source="updateBy¥" label="common.field.updateBy" />
                    <NumberField source="createBy$" label="common.field.updateBy" />
                    <DateField source="updateTime" label="common.field.updateTime" showTime />
                    <ReferenceField source="createBy" label="common.field.createBy" reference="user" link={false} sortable={false}>
                        <TextField source="nickname" />
                    </ReferenceField>
                    <DateField source="createTime" label="common.field.createTime" showTime />
                    <BooleanField source="statusBool" label="common.field.status" sortable={false} />
                    <BillStatusField cellClassName="status" source="exceStatus" label="table.field.checkOrder.exceStatus" />
                    <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} />
                        {/* <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} /> */}
                        <CheckButton />
                    </WrapperField>
                </StyledDatagrid>
            </List>
@@ -164,3 +165,15 @@
}
export default CheckDiffList;
const CheckButton = () => {
    const record = useRecordContext();
    const handleEditClick = (btn) => {
        btn.stopPropagation()
    }
    return (
        <ConfirmButton label={"ra.action.approved"} startIcon={<ApiOutlinedIcon />} onConfirm={handleEditClick} size={"small"} />
    )
}
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiff.java
@@ -1,11 +1,18 @@
package com.vincent.rsf.server.manager.entity;
import com.baomidou.mybatisplus.annotation.TableLogic;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.system.constant.DictTypeCode;
import com.vincent.rsf.server.system.entity.DictData;
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;
@@ -20,8 +27,10 @@
import com.vincent.rsf.framework.common.SpringUtils;
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
@Accessors(chain = true)
@@ -134,7 +143,8 @@
    @ApiModelProperty(value= "备注")
    private String memo;
    public CheckDiff() {}
    public CheckDiff() {
    }
    public CheckDiff(String orderCode,Integer checkType,Long areaId,String areaName,Double anfme,Double checkQty,Integer exceStatus,Integer status,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
        this.orderCode = orderCode;
@@ -173,7 +183,9 @@
//    );
    public String getCheckType$(){
        if (null == this.checkType){ return null; }
        if (null == this.checkType) {
            return null;
        }
        switch (this.checkType){
            case 0:
                return "明盘";
@@ -184,8 +196,24 @@
        }
    }
    public String getExceStatus$() {
        if (Cools.isEmpty(this.exceStatus)) {
            return "";
        }
        DictDataService dictDataService = SpringUtils.getBean(DictDataService.class);
        DictData dictData = dictDataService.getOne(new LambdaQueryWrapper<DictData>()
                .eq(DictData::getDictTypeCode, DictTypeCode.SYS_CHECK_DIFF_EXCE_STATUS)
                .eq(DictData::getValue, this.exceStatus));
        if (Objects.isNull(dictData)) {
            return null;
        }
        return dictData.getLabel();
    }
    public String getStatus$(){
        if (null == this.status){ return null; }
        if (null == this.status) {
            return null;
        }
        switch (this.status){
            case 1:
                return "正常";
@@ -229,9 +257,10 @@
    }
    public Boolean getStatusBool(){
        if (null == this.status){ return null; }
        if (null == this.status) {
            return null;
        }
        switch (this.status){
            case 1:
                return true;
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java
@@ -4,6 +4,10 @@
import java.text.SimpleDateFormat;
import java.util.Date;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.server.system.constant.DictTypeCode;
import com.vincent.rsf.server.system.entity.DictData;
import com.vincent.rsf.server.system.service.DictDataService;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.text.SimpleDateFormat;
@@ -22,6 +26,7 @@
import com.vincent.rsf.server.system.entity.User;
import java.io.Serializable;
import java.util.Date;
import java.util.Objects;
@Data
@Accessors(chain = true)
@@ -108,6 +113,9 @@
     */
    @ApiModelProperty(value= "差异原因")
    private String reason;
    @ApiModelProperty("执行状态")
    private Integer exceStatus;
    /**
     * 状态 1: 正常  0: 冻结  
@@ -219,6 +227,21 @@
        }
    }
    public String getExceStatus$() {
        if (Cools.isEmpty(this.exceStatus)) {
            return "";
        }
        DictDataService dictDataService = SpringUtils.getBean(DictDataService.class);
        DictData dictData = dictDataService.getOne(new LambdaQueryWrapper<DictData>()
                .eq(DictData::getDictTypeCode, DictTypeCode.SYS_CHECK_DIFF_EXCE_STATUS)
                .eq(DictData::getValue, this.exceStatus));
        if (Objects.isNull(dictData)) {
            return null;
        }
        return dictData.getLabel();
    }
    public String getCreateBy$(){
        UserService service = SpringUtils.getBean(UserService.class);
        User user = service.getById(this.createBy);
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/CheckDiffExceStatus.java
@@ -1,13 +1,18 @@
package com.vincent.rsf.server.manager.enums;
/**
 * @author Ryan
 * @date 2025/7/19
 * @description: 盘点差异单枚举
 * @version 1.0
 */
public enum CheckDiffExceStatus {
    //盘点差异单执行状态
    CHECK_DIFF_EXCE_STATUS_UN("0", "未执行"),
    CHECK_DIFF_EXCE_STATUS_INIT("1", "初始化"),
    CHECK_DIFF_EXCE_STATUS_ING("2", "执行中"),
    CHECK_DIFF_EXCE_STATUS_DONE("3", "执行完成"),
    CHECK_DIFF_EXCE_STATUS_INIT("0", "初始化"),
    CHECK_DIFF_EXCE_STATUS_HOLD("1", "待审核"),
    CHECK_DIFF_EXCE_STATUS_END("2", "已审核"),
    ;
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/CheckExceStatus.java
@@ -2,7 +2,7 @@
public enum CheckExceStatus {
    //盘点单执行状态
    CHECK_ORDER_STATUS_UN_EXCE("0", "未执行"),
    CHECK_ORDER_STATUS_INIT("1", "初始化"),
    CHECK_ORDER_STATUS_EXCE_ING("2", "执行中"),
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java
@@ -68,7 +68,7 @@
                checkDiff.setAnfme(order.getAnfme())
                        .setCheckType(order.getCheckType())
                        .setOrderCode(order.getCode())
                        .setExceStatus(CheckDiffExceStatus.CHECK_DIFF_EXCE_STATUS_ING.val)
                        .setExceStatus(CheckDiffExceStatus.CHECK_DIFF_EXCE_STATUS_INIT.val)
                        .setCreateBy(loginUserId)
                        .setCreateTime(new Date())
                        .setUpdateBy(loginUserId)
rsf-server/src/main/java/com/vincent/rsf/server/system/constant/DictTypeCode.java
@@ -85,4 +85,6 @@
    /**盘点单执行状态*/
    public final static String SYS_CHECK_EXCE_STATUS =  "sys_check_exce_status";
    /**盘点差异单执行状态*/
    public final static String SYS_CHECK_DIFF_EXCE_STATUS =  "sys_check_diff_exce_status";
}