Commit ad79177f by sunhaiwei

销售出库页面添加物料编码选择框

parent bb8f25c0
...@@ -7,21 +7,38 @@ ...@@ -7,21 +7,38 @@
v-bind="$attrs" @register="registerModal" :title="getTitle" v-bind="$attrs" @register="registerModal" :title="getTitle"
@ok="handleSubmit" @cancel="handleClose" > @ok="handleSubmit" @cancel="handleClose" >
<ModalForm ref="formRef" v-model:value="state.formModel" :fromPage="FromPageType.MENU" /> <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> </BasicModal>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import { ref, computed, reactive, provide, Ref } from 'vue'; import { ref, computed, reactive, provide, Ref } from 'vue';
import { BasicModal, useModalInner } from '/@/components/Modal'; 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 { useMessage } from '/@/hooks/web/useMessage';
import { useI18n } from '/@/hooks/web/useI18n'; import { useI18n } from '/@/hooks/web/useI18n';
import { formProps } from './config'; import { formProps ,formButtons } from './config';
import ModalForm from './Form.vue'; import ModalForm from './Form.vue';
import { FromPageType } from '/@/enums/workflowEnum'; import { FromPageType } from '/@/enums/workflowEnum';
import { sortBy } from 'lodash-es';
import { executeCurFormEvent } from '/@/utils/event/data';
const emit = defineEmits(['success', 'register']); const emit = defineEmits(['success', 'register']);
...@@ -52,8 +69,8 @@ ...@@ -52,8 +69,8 @@
setModalProps({ setModalProps({
destroyOnClose: true, destroyOnClose: true,
maskClosable: false, maskClosable: false,
showCancelBtn: !state.isView, showCancelBtn: false,
showOkBtn: !state.isView, showOkBtn: false,
canFullscreen: true, canFullscreen: true,
width: 1980, width: 1980,
footer: state.isView ? null : undefined,defaultFullscreen:true, footer: state.isView ? null : undefined,defaultFullscreen:true,
...@@ -128,7 +145,18 @@ ...@@ -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() { function handleClose() {
formRef.value.resetFields(); formRef.value.resetFields();
} }
......
...@@ -1044,7 +1044,7 @@ export const formProps: FormProps = { ...@@ -1044,7 +1044,7 @@ export const formProps: FormProps = {
labelField: 'label', labelField: 'label',
valueField: 'value', valueField: 'value',
pageSize: 10, pageSize: 10,
assoTitle: '', assoTitle: '物料信息',
apiConfig: { apiConfig: {
path: '/jcxx/wlInfoList', path: '/jcxx/wlInfoList',
method: 'GET', method: 'GET',
...@@ -1053,22 +1053,7 @@ export const formProps: FormProps = { ...@@ -1053,22 +1053,7 @@ export const formProps: FormProps = {
{ {
key: '1', key: '1',
title: 'Query Params', title: 'Query Params',
tableInfo: [ tableInfo: [{ name: 'keyword', required: false, bindType: '' }],
{
name: 'keyword',
value: null,
description: null,
required: false,
dataType: null,
type: null,
defaultValue: null,
validateType: null,
error: null,
expression: null,
children: null,
bindType: '',
},
],
}, },
{ key: '2', title: 'Header', tableInfo: [] }, { key: '2', title: 'Header', tableInfo: [] },
{ key: '3', title: 'Body' }, { key: '3', title: 'Body' },
...@@ -1125,7 +1110,6 @@ export const formProps: FormProps = { ...@@ -1125,7 +1110,6 @@ export const formProps: FormProps = {
span: '', span: '',
defaultValue: '', defaultValue: '',
placeholder: '请输入物料名称', placeholder: '请输入物料名称',
maxlength: null,
prefix: '', prefix: '',
suffix: '', suffix: '',
addonBefore: '', addonBefore: '',
...@@ -1408,3 +1392,39 @@ export const formProps: FormProps = { ...@@ -1408,3 +1392,39 @@ export const formProps: FormProps = {
showSubmitButton: false, showSubmitButton: false,
hiddenComponent: [], 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,
},
];
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