入库出库 编辑页面修改

入库出库 编辑页面修改
pull/1/head
siontion 9 months ago
parent 32abd02b36
commit 69e022568f

@ -94,5 +94,9 @@ public class StorageDO extends BaseDO {
* *
*/ */
private LocalDateTime cancelTime; private LocalDateTime cancelTime;
/**
*
*/
private LocalDateTime createTime;
} }

@ -13,7 +13,7 @@
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item prop="name" label="入库单号"> <el-form-item prop="name" label="入库单号">
<el-input v-model="formData.stockNo" disabled /> <el-input v-model="formData.stockNo" disabled placeholder="系统自动生成" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -32,8 +32,8 @@
<el-col :span="8"> <el-col :span="8">
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item prop="name" label="单号日期"> <el-form-item label="单据日期" prop="createTime">
<el-input v-model="formData.name" disabled /> {{ formatDate(formData.createTime, 'YYYY-MM-DD HH:mm') }}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -92,9 +92,9 @@
<el-table :data="formData.productBomItemDOList" class="hl-table" @cell-click="handleCellClick" <el-table :data="formData.productBomItemDOList" class="hl-table" @cell-click="handleCellClick"
@cell-blur="handleCellBlur"> @cell-blur="handleCellBlur">
<el-table-column prop="cid" label="序号" :width="80" /> <el-table-column prop="cid" label="序号" :width="80" />
<el-table-column prop="matCode" label="物料编码" required> <el-table-column prop="matId" label="物料编码" required>
<template #default="scope"> <template #default="scope">
<el-select v-model="scope.row.matCode" placeholder="物料编码" :remote-method="remoteMatCodeSearch" <el-select v-model="scope.row.matId" placeholder="物料编码" :remote-method="remoteMatCodeSearch"
remote-show-suffix remote clearable reserve-keyword filterable :loading="matSelectLoading" remote-show-suffix remote clearable reserve-keyword filterable :loading="matSelectLoading"
@change="(val) => handleMatCode(scope, val)" class="!w-180px"> @change="(val) => handleMatCode(scope, val)" class="!w-180px">
<el-option v-for="item in matList" :key="item.id" :label="item.code" :value="item.id" /> <el-option v-for="item in matList" :key="item.id" :label="item.code" :value="item.id" />
@ -231,36 +231,36 @@
<el-row justify="center"> <el-row justify="center">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="creator" label="创建人"> <el-form-item prop="creator" label="创建人">
<el-input v-model="formData.creator" class="!w-300px" disabled /> {{ userList.find((user) => user.id == formData.creator)?.nickname }}
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="createTime" label="创建时间"> <el-form-item prop="createTime" label="创建时间">
<el-input v-model="formData.createTime" class="!w-300px" disabled /> {{ formatDate(formData.createTime, 'YYYY-MM-DD HH:mm') }}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row justify="center"> <el-row justify="center">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="keeper" label="入库人"> <el-form-item prop="keeper" label="入库人">
<el-input v-model="formData.keeper" class="!w-300px" disabled /> {{ userList.find((user) => user.id == formData.keeper)?.nickname }}
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="keeperTime" label="入库时间"> <el-form-item prop="keeperTime" label="入库时间">
<el-input v-model="formData.keeperTime" class="!w-300px" disabled /> {{ formatDate(formData.keeperTime, 'YYYY-MM-DD HH:mm') }}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row justify="center"> <el-row justify="center">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="outbound" label="作废人"> <el-form-item prop="outbound" label="作废人">
<el-input v-model="formData.outbound" class="!w-300px" disabled /> {{ userList.find((user) => user.id == formData.outbound)?.nickname }}
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="outboundTime" label="作废时间"> <el-form-item prop="outboundTime" label="作废时间">
<el-input v-model="formData.outboundTime" class="!w-300px" disabled /> {{ formatDate(formData.outboundTime, 'YYYY-MM-DD HH:mm') }}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -277,7 +277,7 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref } from 'vue' import { ref } from 'vue'
import { dateFormatter } from "@/utils/formatTime" import { dateFormatter, formatDate } from "@/utils/formatTime"
import type { UploadUserFile } from 'element-plus' import type { UploadUserFile } from 'element-plus'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict' import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import * as StorageApi from '@/api/heli/storage' import * as StorageApi from '@/api/heli/storage'
@ -290,6 +290,7 @@ import * as RgApi from '@/api/heli/rg'
import * as PnApi from '@/api/heli/pn' import * as PnApi from '@/api/heli/pn'
import { deleteFile, downloadFile } from "@/api/infra/file" import { deleteFile, downloadFile } from "@/api/infra/file"
import download from "@/utils/download" import download from "@/utils/download"
import * as UserApi from "@/api/system/user";
const { t } = useI18n() // const { t } = useI18n() //
@ -330,6 +331,8 @@ const formRules = reactive({
}) })
const formRef = ref() // Ref const formRef = ref() // Ref
const userList = ref<UserApi.UserVO[]>([]) //
// ==================== ======================================= // ==================== =======================================
const uploadUrl = ref(import.meta.env.VITE_UPLOAD_BATCH_URL) const uploadUrl = ref(import.meta.env.VITE_UPLOAD_BATCH_URL)
const matUploadRef = ref(); const matUploadRef = ref();
@ -408,16 +411,21 @@ const submitForm = async () => {
try { try {
const data = formData.value as unknown as StorageApi.StorageVO const data = formData.value as unknown as StorageApi.StorageVO
if (router.query.type === 'create') { if (router.query.type === 'create') {
//
storageid.value = await StorageApi.createStorage(data) storageid.value = await StorageApi.createStorage(data)
//
formData.value.productBomItemDOList.forEach(item => { formData.value.productBomItemDOList.forEach(item => {
item.stockId = storageid.value item.stockId = storageid.value
item.whId = formData.value.whId item.whId = formData.value.whId
}) })
const dataMats = formData.value.productBomItemDOList as unknown as StorageMatApi.StorageMatVO[] const dataMats = formData.value.productBomItemDOList as unknown as StorageMatApi.StorageMatVO[]
await StorageMatApi.createStorageMatBatch(dataMats)
var aa = await StorageMatApi.createStorageMatBatch(dataMats) //
matUploadFiles.value = { 'businessType': 'STORAGE', 'businessId': storageid, 'businessFileType': '' }
matUploadFiles.value?.submit()
message.success(t('common.createSuccess')) message.success(t('common.createSuccess'))
} else { } else {
@ -432,7 +440,7 @@ const submitForm = async () => {
} }
} }
const goback = () => { const goback = () => {
} }
var matCount = 1 var matCount = 1
@ -560,7 +568,7 @@ const remoteMatCodeSearch = async (query) => {
const handleMatCode = async (scope, matid) => { const handleMatCode = async (scope, matid) => {
if (matid) { if (matid) {
const matVo = await MaterialApi.getMaterial(scope.row.matCode) const matVo = await MaterialApi.getMaterial(scope.row.matId)
scope.row.matId = matVo.id scope.row.matId = matVo.id
scope.row.matName = matVo.name scope.row.matName = matVo.name
scope.row.matSpec = matVo.spec scope.row.matSpec = matVo.spec
@ -588,6 +596,40 @@ onMounted(async () => {
const data = await WarehouseApi.getWarehouseSimpList() const data = await WarehouseApi.getWarehouseSimpList()
warehouseList.value = data warehouseList.value = data
//------------------- //-------------------
if (router.query.id) {
//
formData.value = await StorageApi.getStorage(router.query.id)
//
const queryParamsMat = reactive({
pageNo: 1,
pageSize: 99,
stockId: router.query.id
})
const dataMats = await StorageMatApi.getStorageMatPage(queryParamsMat)
formData.value.productBomItemDOList = dataMats.list
//
const queryParamsMat2 = reactive({
pageNo: 1,
pageSize: 99,
status: 1
})
const matVos = await MaterialApi.getMaterialPage(queryParamsMat2)
formData.value.productBomItemDOList.forEach(item => {
item.matId = matVos.list.find( (record) => record.id === item.matId)?.id
//item.matCode = matVos.list.find( (record) => record.id === item.matId)?.id
item.matName = matVos.list.find( (record) => record.id === item.matId)?.name
item.matSpec = matVos.list.find( (record) => record.id === item.matId)?.spec
item.matType = matVos.list.find( (record) => record.id === item.matId)?.materialType
item.matUnit = matVos.list.find( (record) => record.id === item.matId)?.unit
})
//
}
userList.value = await UserApi.getSimpleUserList()
}) })
</script> </script>

@ -178,14 +178,14 @@
<el-button <el-button
link link
type="primary" type="primary"
@click="openForm('update', scope.row.id)" @click="openDetail('update', scope.row.id)"
> >
编辑 编辑
</el-button> </el-button>
<el-button <el-button
link link
type="primary" type="primary"
@click="openForm('review', scope.row.id)" @click="openDetail('review', scope.row.id)"
> >
查看 查看
</el-button> </el-button>

Loading…
Cancel
Save