Commit 80d3812d by 张珈源

feat(ckgl): 添加库存移库和其他出入库功能字段支持

- 在kcyk组件中新增处理状态字段配置
- 在qtck组件中新增批次号字段并完善表单配置
- 在qtrk组件中新增批次号字段并完善表单配置
- 更新相关API模型文件添加对应字段定义
- 在工作流权限配置中添加新字段的权限控制
- 修复货位选择框占位符文案错误
- 移除多余的params和defaultSelect配置项
- 为qtrk模态框添加自定义按钮和事件处理逻辑
parent 4559c117
......@@ -13,6 +13,8 @@ export interface MesWarehouseOtheroutPageParams extends BasicPageParams {
lydj: string;
ck: string;
pch: string;
}
/**
......@@ -32,6 +34,8 @@ export interface MesWarehouseOtheroutPageModel {
ck: string;
cgy: string;
pch: string;
}
/**
......@@ -54,6 +58,8 @@ export interface MesWarehouseOtheroutModel {
cgy: string;
pch: string;
p1: string;
p2: string;
......@@ -135,16 +141,22 @@ export interface MesWarehouseOtheroutInfoModel {
qtid: string;
cpbm: string;
cp: string;
gg: string;
xh: string;
xqsl: string;
jldw: string;
hw: string;
pch: string;
bz: string;
p1: string;
......
......@@ -13,6 +13,8 @@ export interface MesWarehouseOtherPageParams extends BasicPageParams {
lydj: string;
ck: string;
pch: string;
}
/**
......@@ -32,6 +34,8 @@ export interface MesWarehouseOtherPageModel {
ck: string;
cgy: string;
pch: string;
}
/**
......@@ -54,6 +58,8 @@ export interface MesWarehouseOtherModel {
cgy: string;
pch: string;
p1: string;
p2: string;
......@@ -135,10 +141,14 @@ export interface MesWarehouseOtherInfoModel {
qtid: string;
cpbm: string;
cp: string;
gg: string;
xh: string;
xqsl: string;
hgsl: string;
......@@ -149,6 +159,8 @@ export interface MesWarehouseOtherInfoModel {
hw: string;
pch: string;
bz: string;
p1: string;
......
......@@ -44,6 +44,12 @@ export const searchFormSchema: FormSchema[] = [
defaultValue: undefined,
component: 'Input',
},
{
field: 'clzt',
label: '处理状态',
defaultValue: undefined,
component: 'Input',
},
];
export const columns: BasicColumn[] = [
......@@ -189,6 +195,18 @@ export const columns: BasicColumn[] = [
styleConfig: undefined,
listStyle: '',
},
{
resizable: true,
dataIndex: 'clzt',
title: '处理状态',
componentType: 'input',
fixed: false,
sorter: true,
styleConfig: undefined,
listStyle: '',
},
];
//表头合并配置
export const headerMergingData = [];
......@@ -714,6 +732,44 @@ export const formProps: FormProps = {
},
],
},
{
span: 8,
list: [
{
key: 'b62f769fa46d483fa562c8ea6f6a0c80',
field: 'clzt',
label: '处理状态',
type: 'input',
component: 'Input',
colProps: { span: 24 },
defaultValue: '',
componentProps: {
width: '100%',
span: 7,
defaultValue: '',
placeholder: '请输入处理状态',
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: false,
tooltipConfig: { visible: false, title: '提示文本' },
style: { width: '100%' },
},
},
],
},
],
componentProps: {
gutter: 16,
......
......@@ -203,4 +203,21 @@ export const permissionList = [
options: {},
defaultValue: '',
},
{
required: false,
view: true,
edit: true,
disabled: false,
isSaveTable: false,
tableName: '',
fieldName: '处理状态',
fieldId: 'ykzt',
isSubTable: false,
showChildren: true,
type: 'input',
key: 'b62f769fa46d483fa562c8ea6f6a0c80',
children: [],
options: {},
defaultValue: '',
},
];
......@@ -47,6 +47,12 @@ export const searchFormSchema: FormSchema[] = [
getPopupContainer: () => document.body,
},
},
{
field: 'pch',
label: '批次号',
defaultValue: undefined,
component: 'Input',
},
];
export const columns: BasicColumn[] = [
......@@ -127,6 +133,19 @@ export const columns: BasicColumn[] = [
styleConfig: undefined,
listStyle: '',
},
{
resizable: true,
dataIndex: 'pch',
title: '批次号',
componentType: 'input',
fixed: false,
sorter: true,
styleConfig: undefined,
listStyle: '',
},
];
//表头合并配置
export const headerMergingData = [];
......@@ -436,6 +455,45 @@ export const formProps: FormProps = {
},
],
},
{
span: 8,
list: [
{
key: 'd57d758011474935be71d3578ee0c15d',
field: 'pch',
label: '批次号',
type: 'input',
component: 'Input',
colProps: { span: 24 },
defaultValue: '',
componentProps: {
width: '100%',
span: 7,
defaultValue: '',
placeholder: '请输入批次号',
maxlength: null,
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: false,
tooltipConfig: { visible: false, title: '提示文本' },
style: { width: '100%' },
},
},
],
},
],
componentProps: {
gutter: 16,
......@@ -462,6 +520,36 @@ export const formProps: FormProps = {
mainKey: 'mesWarehouseOtheroutInfoList',
columns: [
{
key: '027cd1f24e0540489dac9118e9c15af8',
title: '产品编码',
dataIndex: 'cpbm',
componentType: 'Input',
defaultValue: '',
componentProps: {
width: '100%',
span: '',
defaultValue: '',
placeholder: '请输入产品编码',
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: true,
tooltipConfig: { visible: false, title: '提示文本' },
},
},
{
key: '4db77e7fa1f04dedb3ab9bb8286b6125',
title: '产品',
dataIndex: 'cp',
......@@ -522,6 +610,36 @@ export const formProps: FormProps = {
},
},
{
key: '1b427f7fb70b4b90b10e9dd28c872a2a',
title: '型号',
dataIndex: 'xh',
componentType: 'Input',
defaultValue: '',
componentProps: {
width: '100%',
span: '',
defaultValue: '',
placeholder: '请输入型号',
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: true,
tooltipConfig: { visible: false, title: '提示文本' },
},
},
{
key: '99ab56fd7393405885abab6ee9cb0cfe',
title: '需求数量',
dataIndex: 'xqsl',
......@@ -591,7 +709,7 @@ export const formProps: FormProps = {
componentProps: {
width: '100%',
span: '',
placeholder: '请选择货位货位',
placeholder: '请选择货位',
showLabel: true,
showSearch: false,
isMultiple: false,
......@@ -603,7 +721,6 @@ export const formProps: FormProps = {
{ key: 3, label: 'Option 3', value: 'Option 3' },
],
datasourceType: 'api',
params: null,
labelField: 'label',
valueField: 'value',
apiConfig: {
......@@ -625,11 +742,41 @@ export const formProps: FormProps = {
isShow: true,
tooltipConfig: { visible: false, title: '提示文本' },
itemId: '2010541442849521665',
defaultSelect: null,
listStyle: "return 'border: 0'",
},
},
{
key: '812296a9de414adbace976609e285d93',
title: '批次号',
dataIndex: 'pch',
componentType: 'Input',
defaultValue: '',
componentProps: {
width: '100%',
span: '',
defaultValue: '',
placeholder: '请输入批次号',
maxlength: null,
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: true,
tooltipConfig: { visible: false, title: '提示文本' },
},
},
{
key: '8607126fb71a44eb91a9e0d0506a1888',
title: '备注',
dataIndex: 'bz',
......
......@@ -101,6 +101,23 @@ export const permissionList = [
defaultValue: '',
},
{
required: false,
view: true,
edit: true,
disabled: false,
isSaveTable: false,
tableName: '',
fieldName: '批次号',
fieldId: 'pch',
isSubTable: false,
showChildren: true,
type: 'input',
key: 'd57d758011474935be71d3578ee0c15d',
children: [],
options: {},
defaultValue: '',
},
{
required: true,
view: true,
edit: true,
......@@ -122,6 +139,21 @@ export const permissionList = [
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtheroutInfoList',
fieldName: '产品编码',
fieldId: 'cpbm',
type: 'Input',
key: '027cd1f24e0540489dac9118e9c15af8',
children: [],
},
{
required: true,
view: true,
edit: true,
disabled: false,
isSubTable: false,
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtheroutInfoList',
fieldName: '产品',
fieldId: 'cp',
type: 'Input',
......@@ -152,6 +184,21 @@ export const permissionList = [
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtheroutInfoList',
fieldName: '型号',
fieldId: 'xh',
type: 'Input',
key: '1b427f7fb70b4b90b10e9dd28c872a2a',
children: [],
},
{
required: true,
view: true,
edit: true,
disabled: false,
isSubTable: false,
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtheroutInfoList',
fieldName: '需求数量',
fieldId: 'xqsl',
type: 'InputNumber',
......@@ -197,6 +244,21 @@ export const permissionList = [
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtheroutInfoList',
fieldName: '批次号',
fieldId: 'pch',
type: 'Input',
key: '812296a9de414adbace976609e285d93',
children: [],
},
{
required: true,
view: true,
edit: true,
disabled: false,
isSubTable: false,
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtheroutInfoList',
fieldName: '备注',
fieldId: 'bz',
type: 'Input',
......
......@@ -382,4 +382,4 @@
</style>
</style>
\ No newline at end of file
......@@ -7,21 +7,38 @@
v-bind="$attrs" @register="registerModal" :title="getTitle"
@ok="handleSubmit" @cancel="handleClose" >
<ModalForm ref="formRef" v-model:value="state.formModel" :fromPage="FromPageType.MENU" />
<template #footer v-if=" !state.isView">
<template v-for="(item, index) in sortBy(formButtons, 'index')" :key="item.key">
<template v-if="item.isShow">
<CustomButtonModal v-if="item.type == CustomButtonModalType.Modal" :info="item" />
<a-button
:type="item.style"
v-else
:style="{ marginLeft: index > 0 ? '10px' : 0 }"
@click="customClick(item)"
>
{{ t(item.name) }}
</a-button>
</template>
</template>
</template>
</BasicModal>
</template>
<script lang="ts" setup>
import { ref, computed, reactive, provide, Ref } from 'vue';
import { BasicModal, useModalInner } from '/@/components/Modal';
import { CustomButtonModalType } from '/@/enums/userEnum';
import CustomButtonModal from '/@/components/Form/src/components/CustomButtonModal.vue';
import { useMessage } from '/@/hooks/web/useMessage';
import { useI18n } from '/@/hooks/web/useI18n';
import { formProps } from './config';
import { formProps ,formButtons } from './config';
import ModalForm from './Form.vue';
import { FromPageType } from '/@/enums/workflowEnum';
import { sortBy } from 'lodash-es';
import { executeCurFormEvent } from '/@/utils/event/data';
const emit = defineEmits(['success', 'register']);
......@@ -52,8 +69,8 @@
setModalProps({
destroyOnClose: true,
maskClosable: false,
showCancelBtn: !state.isView,
showOkBtn: !state.isView,
showCancelBtn: false,
showOkBtn: false,
canFullscreen: true,
width: 1980,
footer: state.isView ? null : undefined,defaultFullscreen:true,
......@@ -128,7 +145,18 @@
}
}
function customClick(item) {
if (item.key == 'confirm') {
handleSubmit();
} else if (item.key == 'cancel' && props.formType !== 'normal') {
handleClose();
closeModal();
} else if (item.key == 'reset') {
formRef.value.resetFields();
} else {
executeCurFormEvent(item.event, state.formModel, true);
}
}
function handleClose() {
formRef.value.resetFields();
}
......
......@@ -47,6 +47,12 @@ export const searchFormSchema: FormSchema[] = [
getPopupContainer: () => document.body,
},
},
{
field: 'pch',
label: '批次号',
defaultValue: undefined,
component: 'Input',
},
];
export const columns: BasicColumn[] = [
......@@ -127,6 +133,19 @@ export const columns: BasicColumn[] = [
styleConfig: undefined,
listStyle: '',
},
{
resizable: true,
dataIndex: 'pch',
title: '批次号',
componentType: 'input',
fixed: false,
sorter: true,
styleConfig: undefined,
listStyle: '',
},
];
//表头合并配置
export const headerMergingData = [];
......@@ -436,6 +455,45 @@ export const formProps: FormProps = {
},
],
},
{
span: 8,
list: [
{
key: '14f68a8aebe84763a45a368b16a10eac',
field: 'pch',
label: '批次号',
type: 'input',
component: 'Input',
colProps: { span: 24 },
defaultValue: '',
componentProps: {
width: '100%',
span: 7,
defaultValue: '',
placeholder: '请输入批次号',
maxlength: null,
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: false,
tooltipConfig: { visible: false, title: '提示文本' },
style: { width: '100%' },
},
},
],
},
],
componentProps: {
gutter: 16,
......@@ -462,6 +520,36 @@ export const formProps: FormProps = {
mainKey: 'mesWarehouseOtherInfoList',
columns: [
{
key: '3a565d2e4fe44c40bd72073d2e9f7422',
title: '产品编码',
dataIndex: 'cpbm',
componentType: 'Input',
defaultValue: '',
componentProps: {
width: '100%',
span: '',
defaultValue: '',
placeholder: '请输入产品编码',
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: false,
tooltipConfig: { visible: false, title: '提示文本' },
},
},
{
key: 'd2a05114074246eca3ac7943960783a1',
title: '产品',
dataIndex: 'cp',
......@@ -522,6 +610,36 @@ export const formProps: FormProps = {
},
},
{
key: '28f57f52882848b686927e2cf3712c8e',
title: '型号',
dataIndex: 'xh',
componentType: 'Input',
defaultValue: '',
componentProps: {
width: '100%',
span: '',
defaultValue: '',
placeholder: '请输入型号',
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: false,
tooltipConfig: { visible: false, title: '提示文本' },
},
},
{
key: 'a5b7d019917140768d5c62887f1c64e5',
title: '需求数量',
dataIndex: 'xqsl',
......@@ -640,7 +758,7 @@ export const formProps: FormProps = {
componentProps: {
width: '100%',
span: '',
placeholder: '请选择货位货位',
placeholder: '请选择货位',
showLabel: true,
showSearch: false,
isMultiple: false,
......@@ -652,7 +770,6 @@ export const formProps: FormProps = {
{ key: 3, label: 'Option 3', value: 'Option 3' },
],
datasourceType: 'api',
params: null,
labelField: 'label',
valueField: 'value',
apiConfig: {
......@@ -674,11 +791,41 @@ export const formProps: FormProps = {
isShow: true,
tooltipConfig: { visible: false, title: '提示文本' },
itemId: '2010541442849521665',
defaultSelect: null,
listStyle: "return 'border: 0'",
},
},
{
key: '717de31bf7b54eb386368a8536623927',
title: '批次号',
dataIndex: 'pch',
componentType: 'Input',
defaultValue: '',
componentProps: {
width: '100%',
span: '',
defaultValue: '',
placeholder: '请输入批次号',
maxlength: null,
prefix: '',
suffix: '',
addonBefore: '',
addonAfter: '',
disabled: false,
allowClear: false,
showLabel: true,
required: false,
rules: [],
events: {},
listStyle: '',
isSave: false,
isShow: true,
scan: false,
bordered: true,
isShowAi: false,
tooltipConfig: { visible: false, title: '提示文本' },
},
},
{
key: '42db19d8ca8e4ba9844206d90e76c5e6',
title: '备注',
dataIndex: 'bz',
......@@ -748,3 +895,39 @@ export const formProps: FormProps = {
showSubmitButton: false,
hiddenComponent: [],
};
export const formButtons = [
{
key: 'confirm',
code: 'confirm',
name: '确定',
style: 'primary',
event: [],
isShow: true,
index: 2,
type: 1,
modal: null,
},
{
key: 'cancel',
code: 'cancel',
name: '取消',
style: 'default',
event: [],
isShow: true,
index: 1,
type: 1,
modal: null,
},
{
key: 'reset',
code: 'reset',
name: '重置',
style: 'default',
event: [],
isShow: true,
index: 0,
type: 1,
modal: null,
},
];
......@@ -101,6 +101,23 @@ export const permissionList = [
defaultValue: '',
},
{
required: false,
view: true,
edit: true,
disabled: false,
isSaveTable: false,
tableName: '',
fieldName: '批次号',
fieldId: 'pch',
isSubTable: false,
showChildren: true,
type: 'input',
key: '14f68a8aebe84763a45a368b16a10eac',
children: [],
options: {},
defaultValue: '',
},
{
required: true,
view: true,
edit: true,
......@@ -122,6 +139,21 @@ export const permissionList = [
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtherInfoList',
fieldName: '产品编码',
fieldId: 'cpbm',
type: 'Input',
key: '3a565d2e4fe44c40bd72073d2e9f7422',
children: [],
},
{
required: true,
view: true,
edit: true,
disabled: false,
isSubTable: false,
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtherInfoList',
fieldName: '产品',
fieldId: 'cp',
type: 'Input',
......@@ -152,6 +184,21 @@ export const permissionList = [
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtherInfoList',
fieldName: '型号',
fieldId: 'xh',
type: 'Input',
key: '28f57f52882848b686927e2cf3712c8e',
children: [],
},
{
required: true,
view: true,
edit: true,
disabled: false,
isSubTable: false,
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtherInfoList',
fieldName: '需求数量',
fieldId: 'xqsl',
type: 'InputNumber',
......@@ -227,6 +274,21 @@ export const permissionList = [
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtherInfoList',
fieldName: '批次号',
fieldId: 'pch',
type: 'Input',
key: '717de31bf7b54eb386368a8536623927',
children: [],
},
{
required: true,
view: true,
edit: true,
disabled: false,
isSubTable: false,
isSaveTable: false,
showChildren: false,
tableName: 'mesWarehouseOtherInfoList',
fieldName: '备注',
fieldId: 'bz',
type: 'Input',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment