feat(mes): 新增来源单据编号和类型字段,更新必填验证

pull/871/MERGE
YunaiV 2026-03-31 10:03:05 +08:00
parent 4de57ee672
commit c94cfa2ecb
6 changed files with 36 additions and 9 deletions

View File

@ -1,7 +1,6 @@
import request from '@/config/axios'
// MES 杂项入库单行 VO
// TODO @AI搞到line/index.ts 里;
export interface WmMiscReceiptLineVO {
id: number
receiptId: number

View File

@ -315,6 +315,7 @@ export enum DICT_TYPE {
MES_WM_MISC_ISSUE_TYPE = 'mes_wm_misc_issue_type', // MES 杂项出库类型
MES_WM_MISC_ISSUE_STATUS = 'mes_wm_misc_issue_status', // MES 杂项出库单状态
MES_WM_MISC_RECEIPT_TYPE = 'mes_wm_misc_receipt_type', // MES 杂项单类型
MES_WM_MISC_RECEIPT_STATUS = 'mes_wm_misc_receipt_status', // MES 杂项入库单状态
MES_WM_OUTSOURCE_RECEIPT_STATUS = 'mes_wm_outsource_receipt_status', // MES 外协入库单状态
MES_WM_OUTSOURCE_ISSUE_STATUS = 'mes_wm_outsource_issue_status', // MES 外协出库单状态
MES_MD_AUTO_CODE_PART_TYPE = 'mes_md_auto_code_part_type', // MES 编码规则分段类型

View File

@ -439,7 +439,8 @@ export const MesAutoCodeRuleCode = {
WM_LOCATION_CODE: 'WM_LOCATION_CODE', // 库区编码
WM_AREA_CODE: 'WM_AREA_CODE', // 库位编码
WM_PRODUCT_SALES_CODE: 'WM_PRODUCT_SALES_CODE', // 销售出库单编码
WM_MISC_ISSUE_CODE: 'WM_MISC_ISSUE_CODE' // 杂项出库单编码
WM_MISC_ISSUE_CODE: 'WM_MISC_ISSUE_CODE', // 杂项出库单编码
WM_MISC_RECEIPT_CODE: 'WM_MISC_RECEIPT_CODE' // 杂项入库单编码
} as const
/** 获取物料/产品标识的标签 */

View File

@ -122,11 +122,11 @@
</template>
<script setup lang="ts">
import { generateRandomStr } from '@/utils'
import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
import { WmMiscReceiptApi, WmMiscReceiptVO } from '@/api/mes/wm/miscreceipt'
import { AutoCodeRecordApi } from '@/api/mes/md/autocode/record'
import MiscReceiptLineList from './MiscReceiptLineList.vue'
import { MesWmMiscReceiptStatusEnum } from '@/views/mes/utils/constants'
import { MesAutoCodeRuleCode, MesWmMiscReceiptStatusEnum } from '@/views/mes/utils/constants'
defineOptions({ name: 'MiscReceiptForm' })
const emit = defineEmits(['success'])
@ -171,8 +171,10 @@ const formRef = ref()
const originalFormData = ref<string>('') //
/** 生成入库单编号 */
const generateCode = () => {
formData.value.code = 'MR' + generateRandomStr(10)
const generateCode = async () => {
formData.value.code = await AutoCodeRecordApi.generateAutoCode(
MesAutoCodeRuleCode.WM_MISC_RECEIPT_CODE
)
}
/** 打开弹窗 */

View File

@ -106,7 +106,7 @@
</template>
<script setup lang="ts">
import { WmMiscReceiptLineApi, WmMiscReceiptLineVO } from '@/api/mes/wm/miscreceipt/line'
import { WmMiscReceiptLineApi, WmMiscReceiptLineVO } from '@/api/mes/wm/miscreceipt/line/index'
import MdItemSelect from '@/views/mes/md/item/components/MdItemSelect.vue'
import WmWarehouseSelect from '@/views/mes/wm/warehouse/components/WmWarehouseSelect.vue'
import WmWarehouseLocationSelect from '@/views/mes/wm/warehouse/components/WmWarehouseLocationSelect.vue'
@ -171,7 +171,9 @@ const formRules = reactive({
{ required: true, message: '入库数量不能为空', trigger: 'blur' },
{ type: 'number', min: 0.01, message: '入库数量必须大于 0', trigger: 'blur' }
],
warehouseId: [{ required: true, message: '仓库不能为空', trigger: 'change' }]
warehouseId: [{ required: true, message: '仓库不能为空', trigger: 'change' }],
locationId: [{ required: true, message: '库区不能为空', trigger: 'change' }],
areaId: [{ required: true, message: '库位不能为空', trigger: 'change' }]
})
const formRef = ref()

View File

@ -40,6 +40,24 @@
/>
</el-select>
</el-form-item>
<el-form-item label="来源单据编号" prop="sourceDocCode">
<el-input
v-model="queryParams.sourceDocCode"
placeholder="请输入来源单据编号"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="来源单据类型" prop="sourceDocType">
<el-input
v-model="queryParams.sourceDocType"
placeholder="请输入来源单据类型"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="入库日期" prop="receiptDate">
<el-date-picker
v-model="queryParams.receiptDate"
@ -58,6 +76,7 @@
clearable
class="!w-240px"
>
<!-- DONE @AI状态需要放到数据库中目前没弄然后MES_WM_MISC_RECEIPT_STATUS 也没生命到变量里 -->
<el-option
v-for="dict in getIntDictOptions(DICT_TYPE.MES_WM_MISC_RECEIPT_STATUS)"
:key="dict.value"
@ -105,7 +124,8 @@
<dict-tag :type="DICT_TYPE.MES_WM_MISC_RECEIPT_TYPE" :value="scope.row.type" />
</template>
</el-table-column>
<!-- TODO @芋艿待定来源单据编号来源单据类型 -->
<el-table-column label="来源单据编号" align="center" prop="sourceDocCode" min-width="150" />
<el-table-column label="来源单据类型" align="center" prop="sourceDocType" min-width="120" />
<el-table-column
label="入库日期"
align="center"
@ -195,6 +215,8 @@ const queryParams = reactive({
code: undefined,
name: undefined,
type: undefined,
sourceDocCode: undefined,
sourceDocType: undefined,
status: undefined,
receiptDate: undefined
})