forked from BaoKaiWms/202501-Wms-Kate-Wuxi
Merge branch 'master' of http://112.4.208.194:3000/BaoKaiWms/202501-Wms-Kate-Wuxi
# Conflicts: # dev_wms_client/src/api/goods.js # dev_wms_client/src/api/location.js # dev_wms_serve/src/main/java/com/wms_main/controller/wms/GoodsController.java # dev_wms_serve/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java # dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java
This commit is contained in:
commit
0f69bd4346
26
dev_wms_client/package-lock.json
generated
26
dev_wms_client/package-lock.json
generated
|
|
@ -4254,9 +4254,23 @@
|
|||
}
|
||||
},
|
||||
"node_modules/caniuse-lite": {
|
||||
"version": "1.0.30001434",
|
||||
"resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz",
|
||||
"integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA=="
|
||||
"version": "1.0.30001715",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001715.tgz",
|
||||
"integrity": "sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/browserslist"
|
||||
},
|
||||
{
|
||||
"type": "tidelift",
|
||||
"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
|
||||
},
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/ai"
|
||||
}
|
||||
]
|
||||
},
|
||||
"node_modules/case-sensitive-paths-webpack-plugin": {
|
||||
"version": "2.4.0",
|
||||
|
|
@ -15376,9 +15390,9 @@
|
|||
}
|
||||
},
|
||||
"caniuse-lite": {
|
||||
"version": "1.0.30001434",
|
||||
"resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz",
|
||||
"integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA=="
|
||||
"version": "1.0.30001715",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001715.tgz",
|
||||
"integrity": "sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw=="
|
||||
},
|
||||
"case-sensitive-paths-webpack-plugin": {
|
||||
"version": "2.4.0",
|
||||
|
|
|
|||
|
|
@ -1,18 +1,24 @@
|
|||
import request from "@/http/request";
|
||||
|
||||
const getConfigs = () => {
|
||||
return request.get('/config/getConfigs')
|
||||
export const updateConfig = (params) => {
|
||||
return request({
|
||||
url: '/config/updateConfig',
|
||||
method: 'post',
|
||||
data: params,
|
||||
timeout: 10000
|
||||
})
|
||||
}
|
||||
|
||||
const updateConfig = (params) => {
|
||||
return request.post('/config/updateConfig', params)
|
||||
export const queryConfigsByPage = (params) => {
|
||||
return request({
|
||||
url: '/config/queryConfigsByPage',
|
||||
method: 'post',
|
||||
data: params,
|
||||
timeout: 10000
|
||||
})
|
||||
}
|
||||
|
||||
const getConfigsByPage = (params) => {
|
||||
return request.post('/config/getConfigsByPage', params)
|
||||
}
|
||||
|
||||
const restartSystem = (params) => {
|
||||
export const restartSystem = (params) => {
|
||||
return request({
|
||||
url: '/system/restartSystem',
|
||||
method: 'post',
|
||||
|
|
@ -21,7 +27,7 @@ const restartSystem = (params) => {
|
|||
})
|
||||
}
|
||||
|
||||
const reloadConfig = (params) => {
|
||||
export const reloadConfig = (params) => {
|
||||
return request({
|
||||
url: '/system/reloadConfig',
|
||||
method: 'post',
|
||||
|
|
@ -29,11 +35,3 @@ const reloadConfig = (params) => {
|
|||
timeout: 10000
|
||||
})
|
||||
}
|
||||
|
||||
export {
|
||||
getConfigs,
|
||||
getConfigsByPage,
|
||||
updateConfig,
|
||||
restartSystem,
|
||||
reloadConfig
|
||||
}
|
||||
|
|
@ -8,27 +8,15 @@ export const getGoodsInfoByPage = (params) => {
|
|||
url: '/goods/getGoodsInfoByPage',
|
||||
method: 'post',
|
||||
data: params
|
||||
});
|
||||
};
|
||||
|
||||
})
|
||||
}
|
||||
/**
|
||||
* 更新物料信息
|
||||
* 根据物料id查询物料信息
|
||||
*/
|
||||
export const updateGoodsInfo = (params) => {
|
||||
export const getGoodsInfoByGoodsId = (params) => {
|
||||
return request({
|
||||
url: '/goods/updateGoodsInfo',
|
||||
method: 'post',
|
||||
url: '/goods/getGoodsInfoByGoodsId',
|
||||
method: 'get',
|
||||
data: params
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 关闭物料使用
|
||||
*/
|
||||
export const closeGoodsInfo = (params) => {
|
||||
return request({
|
||||
url: '/goods/closeGoodsInfo',
|
||||
method: 'post',
|
||||
data: params
|
||||
});
|
||||
};
|
||||
})
|
||||
}
|
||||
|
|
@ -180,3 +180,12 @@ export const deleteDbsPlan = (params) => {
|
|||
timeout: 5000
|
||||
})
|
||||
}
|
||||
// 获取物料需求
|
||||
export const getGoodsRequirement = (params) => {
|
||||
return request({
|
||||
url: '/kate/getGoodsRequirement',
|
||||
method: 'post',
|
||||
data: params,
|
||||
timeout: 5000
|
||||
})
|
||||
}
|
||||
|
|
@ -1,48 +1,9 @@
|
|||
import request from "@/http/request";
|
||||
|
||||
const getLocations = (params) => {
|
||||
export const queryLocationsByPage = (params) => {
|
||||
return request({
|
||||
url: '/location/getLocationsByPage',
|
||||
url: '/location/queryLocationsByPage',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
const updateLocation = (params) => {
|
||||
return request({
|
||||
url: '/location/updateLocation',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
const getELocationsByPage = (params) => {
|
||||
return request({
|
||||
url: '/location/getELocationsByPage',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
const updateELocationInfo = (params) => {
|
||||
return request({
|
||||
url: '/location/updateELocationInfo',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
const getAllLocations = () => {
|
||||
return request({
|
||||
url: '/location/getAllLocations',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
export {
|
||||
getLocations,
|
||||
updateLocation,
|
||||
getELocationsByPage,
|
||||
updateELocationInfo,
|
||||
getAllLocations
|
||||
}
|
||||
|
|
@ -1,94 +1,90 @@
|
|||
<template>
|
||||
<el-scrollbar ref="scrollbar" :wrap-style="{ 'align-content': 'center' }">
|
||||
<div class="app-tag">
|
||||
<el-tag closable size="default" v-for="(tag, index) in tags" :key="tag.labelName"
|
||||
:disable-transitions="true" :effect="$route.path === tag.path ? 'dark' : 'plain'"
|
||||
@close="handleClose(tag, index)" @click="handleClick(tag, index)">
|
||||
<el-tooltip effect="light" :content="tag.labelName" placement="top">
|
||||
{{ tag.labelName.length > 4 ? tag.labelName.substring(0, 4) + '..' : tag.labelName }}
|
||||
</el-tooltip>
|
||||
</el-tag>
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
<el-scrollbar ref="scrollbar" :wrap-style="{ 'align-content': 'center' }">
|
||||
<div class="app-tag">
|
||||
<el-tag closable size="default" v-for="(tag, index) in tags" :key="tag.labelName"
|
||||
:disable-transitions="true" :effect="$route.path === tag.path ? 'dark' : 'plain'"
|
||||
@close="handleClose(tag, index)" @click="handleClick(tag, index)">
|
||||
<el-tooltip effect="light" :content="tag.labelName" placement="top">
|
||||
{{ tag.labelName.length > 4 ? tag.labelName.substring(0, 4) + '..' : tag.labelName }}
|
||||
</el-tooltip>
|
||||
</el-tag>
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
|
||||
</template>
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import { nextTick, ref, watch } from 'vue'
|
||||
import { onMounted } from 'vue';
|
||||
import { useRouter } from 'vue-router';
|
||||
import {nextTick, ref, watch} from 'vue'
|
||||
import {onMounted} from 'vue';
|
||||
import {useRouter} from 'vue-router';
|
||||
const router = useRouter()
|
||||
let tags = ref([])
|
||||
const scrollbar = ref()
|
||||
// 生命周期
|
||||
onMounted(() => {
|
||||
tags.value = store.getters.getStateTagsList
|
||||
nextTick(() => {
|
||||
autoScroll(router.currentRoute.value.path)
|
||||
})
|
||||
tags.value = store.getters.getStateTagsList
|
||||
nextTick(() => {
|
||||
autoScroll(router.currentRoute.value.path)
|
||||
})
|
||||
})
|
||||
// 根据路由变化更新标签
|
||||
watch(() => router.currentRoute.value.path, (newVal, oldVal) => {
|
||||
if (newVal != oldVal) {
|
||||
// 找到path对应的tag
|
||||
autoScroll(router.currentRoute.value.path)
|
||||
}
|
||||
if (newVal !== oldVal) {
|
||||
// 找到path对应的tag
|
||||
autoScroll(router.currentRoute.value.path)
|
||||
}
|
||||
})
|
||||
// 关闭标签
|
||||
const closeTag = (tag) => {
|
||||
store.commit('mutationCloseTag', tag)
|
||||
store.commit('mutationCloseTag', tag)
|
||||
}
|
||||
// 处理关闭
|
||||
const handleClose = (tag, index) => {
|
||||
if (tags.value.length === 1) { // 如果只有一个标签则不能关闭
|
||||
return
|
||||
}
|
||||
closeTag(tag) // 删除当前tag
|
||||
if (router.path === tag.path) { // 如果关闭的标签不是当前路由的话,不做路由跳转
|
||||
return
|
||||
} else {
|
||||
if (index === (tags.value.length - 1)) { // 关闭最后一个标签,则路由跳转至最后一个
|
||||
router.push(this.tags[index].path)
|
||||
} else { // 路由跳转至下一个标签页
|
||||
if (index === 0) {
|
||||
router.push(tags.value[0].path)
|
||||
} else {
|
||||
router.push(tags.value[index - 1].path)
|
||||
}
|
||||
}
|
||||
// 处理跳转
|
||||
if (router.currentRoute.value.path === tag.path) {
|
||||
if (tags.value.length === 1) { // 关闭最后一个标签,则路由跳转至最后一个
|
||||
router.push('/home')
|
||||
} else { // 路由跳转至下一个标签页
|
||||
if (index === 0) {
|
||||
router.push(tags.value[index + 1].path)
|
||||
} else {
|
||||
router.push(tags.value[index - 1].path)
|
||||
}
|
||||
}
|
||||
}
|
||||
closeTag(tag) // 删除当前tag
|
||||
}
|
||||
// 点击tags具体标签
|
||||
const handleClick = (tag) => {
|
||||
router.push(tag.path)
|
||||
autoScroll(router.currentRoute.value.path)
|
||||
router.push(tag.path)
|
||||
autoScroll(router.currentRoute.value.path)
|
||||
}
|
||||
// 设置滚动
|
||||
const autoScroll = (path) => {
|
||||
// 找到path对应的tag
|
||||
tags.value.forEach((item, index) => {
|
||||
if (item.path === path) {
|
||||
scrollbar.value.setScrollLeft(index * 80)
|
||||
}
|
||||
})
|
||||
// 找到path对应的tag
|
||||
tags.value.forEach((item, index) => {
|
||||
if (item.path === path) {
|
||||
scrollbar.value.setScrollLeft(index * 80)
|
||||
}
|
||||
})
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
.app-tag {
|
||||
display: flex;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.app-tag .el-tag {
|
||||
display: flex;
|
||||
cursor: pointer;
|
||||
height: 30px;
|
||||
min-width: 80px;
|
||||
max-width: 80px;
|
||||
margin-right: 2px;
|
||||
display: flex;
|
||||
cursor: pointer;
|
||||
height: 30px;
|
||||
min-width: 80px;
|
||||
max-width: 80px;
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
.app-tag .el-tag:hover {
|
||||
color: #000;
|
||||
background-color: #5A9CF8;
|
||||
color: #000;
|
||||
background-color: #5A9CF8;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -1,39 +1,41 @@
|
|||
<template>
|
||||
<div class="menu-title">主菜单</div>
|
||||
<!-- 侧边栏菜单区域 -->
|
||||
<el-menu :default-active="route.path" active-text-color="#409Eff" background-color="#fff" text-color="#000" :router="true" unique-opened>
|
||||
<!-- 一级菜单 -->
|
||||
<el-sub-menu :index="item.id" v-for="item in menuList" :key="item.id">
|
||||
<!-- 一级菜单模板区域 -->
|
||||
<template #title>
|
||||
<el-icon>
|
||||
<component :is="item.iconValue"></component>
|
||||
</el-icon>
|
||||
<span>{{ item.labelName }}</span>
|
||||
</template>
|
||||
<!-- 二级菜单 -->
|
||||
<el-menu-item :index="subItem.path" v-for="subItem in item.children" :key="subItem.id"
|
||||
@click="clickMenu(subItem)">
|
||||
<template #title>
|
||||
<span>{{ subItem.labelName }}</span>
|
||||
</template>
|
||||
</el-menu-item>
|
||||
</el-sub-menu>
|
||||
</el-menu>
|
||||
<div class="menu-title">主菜单</div>
|
||||
<!-- 侧边栏菜单区域 -->
|
||||
<el-menu :default-active="route.path" active-text-color="#409Eff" background-color="#fff" text-color="#000"
|
||||
:router="true" unique-opened>
|
||||
<!-- 一级菜单 -->
|
||||
<el-sub-menu :index="item.id" v-for="item in menuList" :key="item.id">
|
||||
<!-- 一级菜单模板区域 -->
|
||||
<template #title>
|
||||
<el-icon>
|
||||
<component :is="item.iconValue"></component>
|
||||
</el-icon>
|
||||
<span>{{ item.labelName }}</span>
|
||||
</template>
|
||||
<!-- 二级菜单 -->
|
||||
<el-menu-item :index="subItem.path" v-for="subItem in item.children" :key="subItem.id"
|
||||
@click="clickMenu(subItem)">
|
||||
<template #title>
|
||||
<span>{{ subItem.labelName }}</span>
|
||||
</template>
|
||||
</el-menu-item>
|
||||
</el-sub-menu>
|
||||
</el-menu>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import { useRoute } from 'vue-router'
|
||||
import {useRoute} from 'vue-router'
|
||||
|
||||
const menuList = store.getters.getMenuList
|
||||
const route = useRoute()
|
||||
// 点击菜单
|
||||
const clickMenu = (item) => {
|
||||
store.commit('mutationSelectTags', item)
|
||||
store.commit('mutationSelectTags', item)
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
.menu-title {
|
||||
margin-top: 5px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -264,3 +264,25 @@ export const outTypeOptions = [
|
|||
label: '紧急出库'
|
||||
}
|
||||
]
|
||||
// 是否锁定枚举
|
||||
export const lockOptions = [
|
||||
{
|
||||
value: 0,
|
||||
label: '未锁定'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '已锁定'
|
||||
}
|
||||
]
|
||||
// 是否空闲枚举
|
||||
export const occupyOptions = [
|
||||
{
|
||||
value: 0,
|
||||
label: '空闲'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '占用'
|
||||
}
|
||||
]
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
import axios from 'axios'
|
||||
|
||||
const request = axios.create({
|
||||
baseURL: 'https://s4wwjasrsp01.ap.cat.com/wmsServer/wms',
|
||||
baseURL: 'http://localhost:12315/wms',
|
||||
timeout: 5000
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -62,14 +62,14 @@
|
|||
<el-table-column prop="requestTime" label="请求时间" :formatter="timeFormat" min-width="120px"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<!-- <el-table-column fixed="right" label="操作" width="170px">
|
||||
<el-table-column fixed="right" label="操作" width="170px">
|
||||
<template v-slot="scope">
|
||||
<div style="display: inline-block; align-content: center;">
|
||||
<el-button type="primary"
|
||||
@click="editCurrentRowFormEntity(scope.row)">编辑</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column> -->
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<br/>
|
||||
<el-pagination v-model:current-page="baseTableQuery.currentPage"
|
||||
|
|
|
|||
|
|
@ -20,16 +20,6 @@
|
|||
:options="addAllOptionOfOptions(kanbanStatusOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="工单日期开始(生成看板用)">
|
||||
<el-date-picker v-model="kanbanQuery.planStartDateFrom" type="date"
|
||||
placeholder="请选择开始日期" :shortcuts="shortcuts"
|
||||
style="width: 196px;" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="工单日期结束(生成看板用)">
|
||||
<el-date-picker v-model="kanbanQuery.planStartDateTo" type="date"
|
||||
placeholder="请选择结束日期" :shortcuts="shortcuts"
|
||||
style="width: 196px;" clearable/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<div style="align-content: center;">
|
||||
<el-row>
|
||||
|
|
@ -43,10 +33,6 @@
|
|||
</el-button>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button
|
||||
style="height: 30px; width: 80px; margin: auto 5px 5px auto; background-color: #20B2AA; color: #000;"
|
||||
@click="genKanban()">生成看板
|
||||
</el-button>
|
||||
<el-button
|
||||
style="height: 30px; width: 80px; margin: auto 5px 5px auto; background-color: #32CD32; color: #000;"
|
||||
@click="exportExcel()">导出看板
|
||||
|
|
@ -90,13 +76,12 @@
|
|||
<script setup>
|
||||
import store from '@/store'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import {queryKanbanByPage, genClcKanbanRequirement} from '@/api/kateWork.js'
|
||||
import {queryKanbanByPage} from '@/api/kateWork.js'
|
||||
import {ref, reactive, onMounted, nextTick, onBeforeUnmount} from 'vue'
|
||||
import {ElMessage} from 'element-plus'
|
||||
import {genTableRequest, addAllOptionOfOptions} from '@/utils/generator.js'
|
||||
import {labelPosition, shortcuts} from '@/constant/form'
|
||||
import {labelPosition} from '@/constant/form'
|
||||
import {kanbanStatusOptions} from '@/constant/options'
|
||||
import {loading} from '@/utils/loading.js'
|
||||
import {dateFormatter} from '@/utils/formatter.js'
|
||||
import {exportKanbanExcel} from '@/api/excel.js'
|
||||
|
||||
|
|
@ -122,9 +107,7 @@ let baseTableQuery = reactive({
|
|||
let kanbanQuery = reactive({
|
||||
goodsId: '',
|
||||
kanbanId: '',
|
||||
kanbanStatus: -99,
|
||||
planStartDateFrom: null,
|
||||
planStartDateTo: null
|
||||
kanbanStatus: -99
|
||||
})
|
||||
let kanbanQueryFormRef = ref()
|
||||
let recordId = ''
|
||||
|
|
@ -155,10 +138,10 @@ const search = () => {
|
|||
// 设定查询参数
|
||||
request.goodsId = kanbanQuery.goodsId
|
||||
request.kanbanId = kanbanQuery.kanbanId
|
||||
request.kanbanStatus = kanbanQuery.kanbanStatus == -99 ? null : kanbanQuery.kanbanStatus
|
||||
request.kanbanStatus = kanbanQuery.kanbanStatus === -99 ? null : kanbanQuery.kanbanStatus
|
||||
queryKanbanByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
kanbanList.value = data.lists
|
||||
|
|
@ -188,7 +171,7 @@ const handleSortChange = (data) => {
|
|||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order == 'ascending')
|
||||
baseTableQuery.sortBy.set(data.prop, data.order.toLowerCase() === 'ascending')
|
||||
search()
|
||||
}
|
||||
const getCurrentRow = (row) => {
|
||||
|
|
@ -205,29 +188,6 @@ const kanbanStatusFormat = (row, column, cellValue, index) => {
|
|||
return '异常'
|
||||
}
|
||||
}
|
||||
const genKanban = () => {
|
||||
const request = {
|
||||
planStartDateFrom: dateFormatter(kanbanQuery.planStartDateFrom),
|
||||
planStartDateTo: dateFormatter(kanbanQuery.planStartDateTo),
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
loading.open('生成中...')
|
||||
genClcKanbanRequirement(request).then(res => {
|
||||
loading.close()
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
ElMessage.success('生成看板需求成功。')
|
||||
search()
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
loading.close()
|
||||
console.log(err)
|
||||
ElMessage.error('生成看板需求异常。')
|
||||
})
|
||||
}
|
||||
// 导出看板
|
||||
const exportExcel = () => {
|
||||
const params = {
|
||||
|
|
|
|||
|
|
@ -22,11 +22,31 @@
|
|||
<el-date-picker v-model="dbsQueryFormEntity.planStartDate" type="date"
|
||||
placeholder="计划开工日期" :shortcuts="shortcuts" style="width: 196px;" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="需求工单列表">
|
||||
<el-select
|
||||
v-model="selectedOrders"
|
||||
multiple
|
||||
collapse-tags
|
||||
collapse-tags-tooltip
|
||||
placeholder="请选择工单列表"
|
||||
style="width: 196px"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in orderOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<div style="align-content: center;">
|
||||
<el-row>
|
||||
<el-button type="primary" class="btn-search" @click="search()">查询</el-button>
|
||||
<el-button type="warning" class="btn-search" @click="clearQuery()">清除输入</el-button>
|
||||
<el-button style="background-color: #6495ED;" class="btn-search"
|
||||
@click="openRequirementDialog()">生成需求
|
||||
</el-button>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button style="background-color: #00CED1;" class="btn-search"
|
||||
|
|
@ -35,6 +55,9 @@
|
|||
<el-button type="success" class="btn-search"
|
||||
@click="exportExcel()">导出excel
|
||||
</el-button>
|
||||
<el-button style="background-color: #ADD8E6;" class="btn-search"
|
||||
@click="genKanban()">生成看板
|
||||
</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -86,9 +109,9 @@
|
|||
show-overflow-tooltip/>
|
||||
<el-table-column prop="remark" label="备注" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column fixed="right" label="操作" width="120px">
|
||||
<el-table-column fixed="right" label="操作" width="240px">
|
||||
<template v-slot="scope">
|
||||
<!-- <el-button plain type="primary" @click="editCurrentRowStock(scope.row)">编辑</el-button>-->
|
||||
<el-button plain type="primary" @click="addRequirement(scope.row)">添加需求</el-button>
|
||||
<el-button plain type="danger" @click="deleteCurrentRow(scope.row)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
|
@ -100,6 +123,19 @@
|
|||
@current-change="search" layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="baseTableQuery.total"/>
|
||||
</div>
|
||||
<el-dialog v-model="showGoodsRequireDialog" title="物料需求" width="50%" center >
|
||||
<el-button type="success" style="margin-left: 5px" @click="exportRequirements()">导出需求</el-button>
|
||||
<el-table :data="goodsRequireList" stripe border class="table-class" max-height="450px"
|
||||
:header-cell-style="{ 'text-align': 'center' }" :cell-style="{ 'text-align': 'center' }">
|
||||
<el-table-column prop="goodsId" show-overflow-tooltip label="料号" fixed="left"/>
|
||||
<el-table-column prop="goodsDesc" show-overflow-tooltip label="描述"/>
|
||||
<el-table-column prop="needQty" show-overflow-tooltip label="需求数量"/>
|
||||
<el-table-column prop="stockQty" show-overflow-tooltip label="库存数量"/>
|
||||
<el-table-column prop="lackQty" show-overflow-tooltip label="缺少数量"/>
|
||||
<el-table-column prop="goodsType" show-overflow-tooltip label="补料类型"/>
|
||||
<el-table-column prop="stockType" show-overflow-tooltip label="存放类型"/>
|
||||
</el-table>
|
||||
</el-dialog>
|
||||
<!-- <el-dialog v-model="dialogVisible" title="库存信息" width="40%" draggable :show-close="false">
|
||||
<el-form ref="stockFormRef" :model="stockFormEntity" :label-position="labelPosition"
|
||||
label-width="100px" style="max-width: 100%" :rules="rules" status-icon>
|
||||
|
|
@ -222,7 +258,7 @@
|
|||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import {queryDbsByPage, deleteDbsPlan} from '@/api/kateWork.js'
|
||||
import {queryDbsByPage, deleteDbsPlan, getGoodsRequirement, genClcKanbanRequirement} from '@/api/kateWork.js'
|
||||
import {dateFormatter, timeFormatter} from '@/utils/formatter.js'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import {ref, reactive, onMounted, nextTick, onBeforeUnmount} from 'vue'
|
||||
|
|
@ -233,12 +269,15 @@ import {dbsStatusOptions} from '@/constant/options'
|
|||
import UploadExcelDbs from '@/excel/UploadExcelDbs.vue'
|
||||
import {exportDbsWithExcel} from '@/api/excel'
|
||||
import {loading} from "@/utils/loading";
|
||||
import { useRouter } from 'vue-router';
|
||||
import {exportToExcel} from "@/utils/excelUtils";
|
||||
|
||||
/**
|
||||
* 常量定义
|
||||
*/
|
||||
const USER_NAME = store.getters.getUserName
|
||||
const STAND_ID = store.getters.getStandId
|
||||
const router = useRouter()
|
||||
/**
|
||||
* 变量定义
|
||||
*/
|
||||
|
|
@ -265,6 +304,10 @@ let dbsId = ''
|
|||
let dbsEditFormRef = ref()
|
||||
let dbsEditFormEntity = reactive({})
|
||||
let showDbsUploadDialog = ref(false)
|
||||
let selectedOrders = ref([])
|
||||
let orderOptions = ref([])
|
||||
let goodsRequireList = ref([])
|
||||
let showGoodsRequireDialog = ref(false)
|
||||
/**
|
||||
* 系统方法
|
||||
*/
|
||||
|
|
@ -292,11 +335,11 @@ const search = () => {
|
|||
// 设定查询参数
|
||||
request.workOrder = dbsQueryFormEntity.workOrder.trim()
|
||||
request.productId = dbsQueryFormEntity.productId.trim()
|
||||
request.dbsStatus = dbsQueryFormEntity.dbsStatus == -99 ? null : dbsQueryFormEntity.dbsStatus
|
||||
request.dbsStatus = dbsQueryFormEntity.dbsStatus === -99 ? null : dbsQueryFormEntity.dbsStatus
|
||||
request.planStartDate = dateFormatter(dbsQueryFormEntity.planStartDate)
|
||||
queryDbsByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
displayDbs.value = data.lists
|
||||
|
|
@ -340,7 +383,7 @@ const timeFormat = (row, column, cellValue, index) => {
|
|||
return timeFormatter(cellValue)
|
||||
}
|
||||
const rowStyle = ({row, rowIndex}) => {
|
||||
if (row.dbsStatus == 2) {
|
||||
if (row.dbsStatus === 2) {
|
||||
return {"color": "green"}
|
||||
}
|
||||
}
|
||||
|
|
@ -348,7 +391,7 @@ const handleSortChange = (data) => {
|
|||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order == 'ascending')
|
||||
baseTableQuery.sortBy.set(data.prop, data.order.toLowerCase() === 'ascending')
|
||||
search()
|
||||
}
|
||||
const getCurrentRow = (row) => {
|
||||
|
|
@ -358,7 +401,7 @@ const exportExcel = () => {
|
|||
const params = {
|
||||
workOrder: dbsQueryFormEntity.workOrder,
|
||||
productId: dbsQueryFormEntity.productId,
|
||||
dbsStatus: dbsQueryFormEntity.dbsStatus == -99 ? null : dbsQueryFormEntity.dbsStatus,
|
||||
dbsStatus: dbsQueryFormEntity.dbsStatus === -99 ? null : dbsQueryFormEntity.dbsStatus,
|
||||
planStartDate: dateFormatter(dbsQueryFormEntity.planStartDate)
|
||||
}
|
||||
exportDbsWithExcel(params).then(res => {
|
||||
|
|
@ -406,7 +449,7 @@ const deleteCurrentRow = (row) => {
|
|||
loading.open('删除中...')
|
||||
deleteDbsPlan(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
ElMessage.success(response.message)
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
|
|
@ -425,6 +468,118 @@ const deleteCurrentRow = (row) => {
|
|||
const openUploadDialog = () => {
|
||||
showDbsUploadDialog.value = true
|
||||
}
|
||||
// 添加需求
|
||||
const addRequirement = (row) => {
|
||||
const workOrder = row.workOrder
|
||||
if (workOrder === undefined || workOrder === '') {
|
||||
ElMessage.error('请先选择工单')
|
||||
return
|
||||
}
|
||||
// 判断之前是否选择过
|
||||
if (orderOptions.value.length > 0) {
|
||||
const oldOption = orderOptions.value.find((item) => {return item.value === workOrder})
|
||||
if (oldOption === undefined) {
|
||||
orderOptions.value.push({
|
||||
label: workOrder,
|
||||
value: workOrder
|
||||
})
|
||||
}
|
||||
} else {
|
||||
orderOptions.value.push({
|
||||
label: workOrder,
|
||||
value: workOrder
|
||||
})
|
||||
}
|
||||
addSelectWorkOrders(workOrder)
|
||||
}
|
||||
// 添加选择列表
|
||||
const addSelectWorkOrders = (workOrder) => {
|
||||
if (selectedOrders.value.find((item) => {return item === workOrder}) === undefined) {
|
||||
selectedOrders.value.push(workOrder)
|
||||
} else {
|
||||
ElMessage.error('请勿重复添加工单')
|
||||
}
|
||||
}
|
||||
// 打开物料需求界面
|
||||
const openRequirementDialog = () => {
|
||||
if (selectedOrders.value.length === 0) {
|
||||
ElMessage.error('请选择工单。')
|
||||
return
|
||||
}
|
||||
// 生成请求
|
||||
const request = {
|
||||
orderIds: selectedOrders.value,
|
||||
userName: USER_NAME,
|
||||
standId: STAND_ID
|
||||
}
|
||||
getGoodsRequirement(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
if (response.data != null && response.data.length > 0) {
|
||||
goodsRequireList.value = response.data
|
||||
} else {
|
||||
goodsRequireList.value = []
|
||||
}
|
||||
showGoodsRequireDialog.value = true
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('获取需求列表异常。')
|
||||
})
|
||||
}
|
||||
// 导出需求
|
||||
const exportRequirements = () => {
|
||||
try {
|
||||
const header = {
|
||||
goodsId: '料号',
|
||||
goodsDesc: '物料描述',
|
||||
needQty: '需求数量',
|
||||
stockQty: '库存数量',
|
||||
lackQty: '缺少数量',
|
||||
goodsType: '补料类型',
|
||||
stockType: '存放类型'
|
||||
}
|
||||
exportToExcel(header, goodsRequireList.value, '工单需求', '工单需求')
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
ElMessage.error('导出需求异常。')
|
||||
}
|
||||
|
||||
}
|
||||
// 生成看板
|
||||
const genKanban = () => {
|
||||
if (selectedOrders.value.length === 0) {
|
||||
ElMessage.error('请选择工单。')
|
||||
return
|
||||
}
|
||||
const request = {
|
||||
orderIds: selectedOrders.value,
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
loading.open('生成中...')
|
||||
genClcKanbanRequirement(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
ElMessage.success('生成看板需求成功。')
|
||||
// 跳转界面
|
||||
const menuItem = store.getters.getMenuItemByPath('/clcKanban')
|
||||
if (menuItem !== undefined) {
|
||||
store.commit('mutationSelectTags', menuItem)
|
||||
router.push(menuItem.path)
|
||||
}
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('生成看板需求异常。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
.content {
|
||||
|
|
|
|||
|
|
@ -10,11 +10,11 @@
|
|||
<el-form-item label="入库类型" prop="emptyTask">
|
||||
<el-select-v2 style="width: 196px" v-model="inTaskEntity.emptyTask" placeholder="请选择入库类型"
|
||||
:options="inTypeOptions"
|
||||
:disabled="taskRequestEntity.vehicleId != ''"></el-select-v2>
|
||||
:disabled="taskRequestEntity.vehicleId !== ''"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="箱号" prop="vehicleId">
|
||||
<el-input v-model="inTaskEntity.vehicleId" ref="vehicleId"
|
||||
:disabled="taskRequestEntity.vehicleId != ''" clearable
|
||||
:disabled="taskRequestEntity.vehicleId !== ''" clearable
|
||||
@keyup.enter="handleEnter()"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="料号">
|
||||
|
|
@ -44,13 +44,13 @@
|
|||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<fieldset class="confirm-area" v-if="taskRequestEntity.vehicleId != ''">
|
||||
<fieldset class="confirm-area" v-if="taskRequestEntity.vehicleId !== ''">
|
||||
<el-form ref="taskRequestRef" :model="taskRequestEntity" :label-position="labelPosition"
|
||||
label-width="158px" style="max-width: 100%" :rules="rules" status-icon>
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="入库类型">
|
||||
<el-select-v2 v-model="taskRequestEntity.emptyTask" placeholder="请选择入库类型"
|
||||
<el-select-v2 style="width: 196px" v-model="taskRequestEntity.emptyTask" placeholder="请选择入库类型"
|
||||
:options="inTypeOptions" disabled></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="箱号">
|
||||
|
|
@ -135,6 +135,7 @@ import {nextTick, onMounted, reactive, ref} from 'vue'
|
|||
import {loading} from '@/utils/loading.js'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import {labelPosition} from '@/constant/form'
|
||||
import {getGoodsInfoByGoodsId} from "@/api/goods";
|
||||
|
||||
const inTypeOptions = [
|
||||
{
|
||||
|
|
@ -206,19 +207,19 @@ const changeFocus = () => {
|
|||
// 进行大写格式化
|
||||
inTaskEntity.vehicleId = inTaskEntity.vehicleId.toUpperCase().trim()
|
||||
inTaskEntity.goodsId = inTaskEntity.goodsId.toUpperCase().trim()
|
||||
if (inTaskEntity.vehicleId == '') {
|
||||
if (inTaskEntity.vehicleId === '') {
|
||||
vehicleId.value.focus()
|
||||
return
|
||||
}
|
||||
// 进行格式判断
|
||||
if (inTaskEntity.vehicleId != '') {
|
||||
if (inTaskEntity.vehicleId !== '') {
|
||||
const vehicleArray = inTaskEntity.vehicleId.split('-')
|
||||
if (vehicleArray.length != 2) {
|
||||
if (vehicleArray.length !== 2) {
|
||||
errorBox('箱号格式不正确,正确格式为“ASRS-XXXX”。')
|
||||
vehicleId.value.focus()
|
||||
return
|
||||
} else {
|
||||
if (vehicleArray[0] != 'ASRS' || !numberCheck(vehicleArray[1]) || vehicleArray[1].length != 4) {
|
||||
if (vehicleArray[0] !== 'ASRS' || !numberCheck(vehicleArray[1]) || vehicleArray[1].length !== 4) {
|
||||
errorBox('箱号格式不正确,正确格式为“ASRS-XXXX”。')
|
||||
vehicleId.value.focus()
|
||||
return
|
||||
|
|
@ -238,16 +239,34 @@ const changeFocus = () => {
|
|||
}
|
||||
// 非空箱入库
|
||||
if (!inTaskEntity.emptyTask) {
|
||||
if (inTaskEntity.goodsId == '') {
|
||||
if (inTaskEntity.goodsId === '') {
|
||||
goodsId.value.focus()
|
||||
return
|
||||
} else {
|
||||
// 对料号进行一下格式化
|
||||
inTaskEntity.goodsId = inTaskEntity.goodsId.toUpperCase().trim()
|
||||
if (inTaskEntity.goodsId.substring(0, 1) === 'P') {
|
||||
// 检索一遍数据库,判断是否有该料号
|
||||
loading.open('请求中,请稍等...')
|
||||
getGoodsInfoByGoodsId(inTaskEntity.goodsId).then(res => {
|
||||
const goodsResponse = res.data
|
||||
if (goodsResponse.code !== 0) {
|
||||
// 去除前缀P
|
||||
inTaskEntity.goodsId = inTaskEntity.goodsId.substring(1)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}
|
||||
}
|
||||
if (inTaskEntity.opNum == null || inTaskEntity.opNum == '') {
|
||||
if (inTaskEntity.opNum == null || inTaskEntity.opNum === '') {
|
||||
opNum.value.focus()
|
||||
return
|
||||
}
|
||||
}
|
||||
if (inTaskEntity.goodsId == inTaskEntity.vehicleId || inTaskEntity.goodsId == inTaskEntity.opNum || inTaskEntity.vehicleId == inTaskEntity.opNum) {
|
||||
if (inTaskEntity.goodsId === inTaskEntity.vehicleId || inTaskEntity.goodsId === inTaskEntity.opNum || inTaskEntity.vehicleId === inTaskEntity.opNum) {
|
||||
errorBox('箱号、料号、数量必须为互不相同。')
|
||||
goodsId.value.focus()
|
||||
return
|
||||
|
|
@ -256,7 +275,7 @@ const changeFocus = () => {
|
|||
}
|
||||
// 判断一个字符串是否是数字
|
||||
const numberCheck = (numberStr) => {
|
||||
if (numberStr == null || numberStr == '') {
|
||||
if (numberStr == null || numberStr === '') {
|
||||
return false
|
||||
}
|
||||
try {
|
||||
|
|
@ -267,7 +286,7 @@ const numberCheck = (numberStr) => {
|
|||
}
|
||||
// 清除输入
|
||||
const clearInput = () => {
|
||||
if (taskRequestEntity.vehicleId != '') {
|
||||
if (taskRequestEntity.vehicleId !== '') {
|
||||
if (!taskRequestEntity.emptyTask) {
|
||||
inTaskEntity.goodsId = ''
|
||||
inTaskEntity.opNum = null
|
||||
|
|
@ -286,21 +305,21 @@ const confirmBinding = () => {
|
|||
inTaskEntity.vehicleId = inTaskEntity.vehicleId.toUpperCase().trim()
|
||||
inTaskEntity.goodsId = inTaskEntity.goodsId.toUpperCase().trim()
|
||||
// 判断是否是非空箱入库时,未输入料号和数量
|
||||
if (!inTaskEntity.emptyTask && inTaskEntity.goodsId == '' && inTaskEntity.vehicleId != '') {
|
||||
if (inTaskEntity.vehicleId == '') {
|
||||
if (!inTaskEntity.emptyTask && inTaskEntity.goodsId === '' && inTaskEntity.vehicleId !== '') {
|
||||
if (inTaskEntity.vehicleId === '') {
|
||||
ElMessage.error("请输入箱号。")
|
||||
vehicleId.value.focus()
|
||||
return
|
||||
}
|
||||
// 进行格式判断
|
||||
if (inTaskEntity.vehicleId != '') {
|
||||
if (inTaskEntity.vehicleId !== '') {
|
||||
const vehicleArray = inTaskEntity.vehicleId.split('-')
|
||||
if (vehicleArray.length != 2) {
|
||||
if (vehicleArray.length !== 2) {
|
||||
errorBox('箱号格式不正确,正确格式为“ASRS-XXXX”。')
|
||||
vehicleId.value.focus()
|
||||
return
|
||||
} else {
|
||||
if (vehicleArray[0] != 'ASRS' || !numberCheck(vehicleArray[1]) || vehicleArray[1].length != 4) {
|
||||
if (vehicleArray[0] !== 'ASRS' || !numberCheck(vehicleArray[1]) || vehicleArray[1].length !== 4) {
|
||||
errorBox('箱号格式不正确,正确格式为“ASRS-XXXX”。')
|
||||
vehicleId.value.focus()
|
||||
return
|
||||
|
|
@ -330,18 +349,18 @@ const confirmBinding = () => {
|
|||
}
|
||||
// 添加绑定关系
|
||||
const addBinding = () => {
|
||||
if (taskRequestEntity.vehicleId != '' && taskRequestEntity.vehicleId != inTaskEntity.vehicleId) {
|
||||
if (taskRequestEntity.vehicleId !== '' && taskRequestEntity.vehicleId !== inTaskEntity.vehicleId) {
|
||||
errorBox('请下发已绑定的任务或取消绑定后重试。')
|
||||
return
|
||||
}
|
||||
if (taskRequestEntity.vehicleId == '') {
|
||||
if (inTaskEntity.vehicleId == '') {
|
||||
if (taskRequestEntity.vehicleId === '') {
|
||||
if (inTaskEntity.vehicleId === '') {
|
||||
errorBox('请输入箱号。')
|
||||
vehicleId.value.focus()
|
||||
return
|
||||
}
|
||||
if (!inTaskEntity.emptyTask) {
|
||||
if (inTaskEntity.goodsId != '' && inTaskEntity.opNum != null && inTaskEntity.opNum > 0) {
|
||||
if (inTaskEntity.goodsId !== '' && inTaskEntity.opNum != null && inTaskEntity.opNum > 0) {
|
||||
// 非空入库
|
||||
taskRequestEntity.goodsInfo.push({
|
||||
goodsId: inTaskEntity.goodsId.trim().toUpperCase(),
|
||||
|
|
@ -356,12 +375,12 @@ const addBinding = () => {
|
|||
taskRequestEntity.vehicleId = inTaskEntity.vehicleId.trim().toUpperCase()
|
||||
} else {
|
||||
if (!taskRequestEntity.emptyTask) {
|
||||
if (inTaskEntity.goodsId == '') {
|
||||
if (inTaskEntity.goodsId === '') {
|
||||
errorBox('请输入料号。')
|
||||
goodsId.value.focus()
|
||||
return
|
||||
}
|
||||
if (inTaskEntity.opNum == null || inTaskEntity.opNum == 0) {
|
||||
if (inTaskEntity.opNum == null || inTaskEntity.opNum === 0) {
|
||||
errorBox('请输入正确的数量。')
|
||||
opNum.value.focus()
|
||||
return
|
||||
|
|
@ -384,7 +403,7 @@ const addBinding = () => {
|
|||
// 确认下发任务
|
||||
const confirmTasks = () => {
|
||||
// 判断是否是非空箱入库时,未输入料号和数量
|
||||
if (!taskRequestEntity.emptyTask && taskRequestEntity.goodsInfo.length == 0) {
|
||||
if (!taskRequestEntity.emptyTask && taskRequestEntity.goodsInfo.length === 0) {
|
||||
ElMessageBox.confirm(
|
||||
'非空箱入库未绑定物料,默认生成回库任务。\n是否继续',
|
||||
'警告',
|
||||
|
|
@ -408,7 +427,7 @@ const confirmSend = () => {
|
|||
loading.open()
|
||||
requireStockIn(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
ElMessage.success(response.message)
|
||||
cancelBinding()
|
||||
} else {
|
||||
|
|
@ -430,7 +449,7 @@ const cancelBinding = () => {
|
|||
// 移除当前行
|
||||
const removeThisRow = (row) => {
|
||||
taskRequestEntity.goodsInfo.splice(taskRequestEntity.goodsInfo.indexOf(row), 1)
|
||||
if (taskRequestEntity.goodsInfo.length == 0 && taskRequestEntity.vehicleId != '' && !taskRequestEntity.emptyTask) {
|
||||
if (taskRequestEntity.goodsInfo.length === 0 && taskRequestEntity.vehicleId !== '' && !taskRequestEntity.emptyTask) {
|
||||
// 非空箱且没有料号列表的情况下,解绑当前任务
|
||||
resetTaskEntity()
|
||||
}
|
||||
|
|
@ -454,7 +473,7 @@ const openOutForInDialog = () => {
|
|||
// 添加入库料
|
||||
const addForInGoods = () => {
|
||||
outForInEntity.goodsId = outForInEntity.goodsId.trim()
|
||||
if (outForInEntity.goodsId == '') {
|
||||
if (outForInEntity.goodsId === '') {
|
||||
errorBox('请输入料号。')
|
||||
} else {
|
||||
outForInEntity.goodsId = outForInEntity.goodsId.toUpperCase()
|
||||
|
|
@ -475,7 +494,7 @@ const confirmCallVehicles = () => {
|
|||
const goodsIds = outForInRequestEntity.goodsIds.flatMap(item => {
|
||||
return item.goodsId
|
||||
})
|
||||
if (goodsIds.length == 0) {
|
||||
if (goodsIds.length === 0) {
|
||||
errorBox('请输入料号。')
|
||||
return
|
||||
}
|
||||
|
|
@ -487,7 +506,7 @@ const confirmCallVehicles = () => {
|
|||
loading.open()
|
||||
requireVehiclesForIn(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
successBox(response.message)
|
||||
} else {
|
||||
errorBox(response.message)
|
||||
|
|
|
|||
|
|
@ -1,381 +1,416 @@
|
|||
<template>
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-container class="content">
|
||||
<div class="work-area">
|
||||
<fieldset class="search-area">
|
||||
<el-form ref="outTaskRef" :model="outTaskEntity" :label-position="labelPosition" label-width="158px"
|
||||
style="max-width: 100%" :rules="requestRules" status-icon>
|
||||
<div style="display: flex; justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="出库类型" prop="outType">
|
||||
<el-select-v2 style="width: 196px" v-model="outTaskEntity.outType" placeholder="请选择入库类型"
|
||||
:options="outTypeOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="料号" prop="goodsId">
|
||||
<el-input v-model="outTaskEntity.goodsId" ref="goodsId" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="箱号" prop="vehicleId" v-if="outTaskEntity.outType != 9">
|
||||
<el-input v-model="outTaskEntity.vehicleId" ref="vehicleId" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="数量" prop="needNum">
|
||||
<el-input-number v-model.number="outTaskEntity.needNum" ref="needNum"
|
||||
controls-position="right" :min="1" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="原因" prop="reason" v-if="outTaskEntity.outType == 9">
|
||||
<el-select-v2 style="width: 196px" v-model="outTaskEntity.reason" placeholder="请选择紧急出库原因"
|
||||
:options="resonOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button type="primary"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="confirmOut()">确认出库</el-button>
|
||||
<el-button type="warning"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="clearInput()">清除输入</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<fieldset class="confirm-area">
|
||||
<el-form ref="confirmRef" :model="confirmEntity" :label-position="labelPosition" label-width="158px"
|
||||
style="max-width: 100%" :rules="confirmRules" status-icon>
|
||||
<div style="display: flex; justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-row style="border-bottom: dashed 1px black;">
|
||||
<el-form-item label="出库类型" prop="outType">
|
||||
<el-select-v2 v-model="confirmEntity.outType" placeholder=" "
|
||||
:options="outTypeOptions" disabled></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="物料号" prop="goodsId">
|
||||
<el-input v-model="confirmEntity.goodsId" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="总需求" prop="totalNeed">
|
||||
<el-input v-model="confirmEntity.totalNeed" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="剩余需求" prop="remainNeed">
|
||||
<el-input v-model="confirmEntity.remainNeed" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="本次计划拣选" prop="planPickQty">
|
||||
<el-input v-model="confirmEntity.planPickQty" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="本次实际拣选" prop="realPickQty">
|
||||
<el-input-number v-model.number="confirmEntity.realPickQty"
|
||||
controls-position="right" :min="0" clearable @change="changePlanQty()" />
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-form-item label="箱号" prop="vehicleId">
|
||||
<el-input v-model="confirmEntity.vehicleId" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="计划剩余数量" prop="planRemainQty">
|
||||
<el-input v-model="confirmEntity.planRemainQty" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="实际剩余数量" prop="realRemainQty">
|
||||
<el-input-number v-model.number="confirmEntity.realRemainQty"
|
||||
controls-position="right" :min="0" clearable />
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button type="success"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="confirmOrRelease()">确认/放行</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-container class="content">
|
||||
<div class="work-area">
|
||||
<fieldset class="search-area">
|
||||
<el-form ref="outTaskRef" :model="outTaskEntity" :label-position="labelPosition" label-width="158px"
|
||||
style="max-width: 100%" :rules="requestRules" status-icon>
|
||||
<div style="display: flex; justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="出库类型" prop="outType">
|
||||
<el-select-v2 style="width: 196px" v-model="outTaskEntity.outType" placeholder="请选择入库类型"
|
||||
:options="outTypeOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="料号" prop="goodsId">
|
||||
<el-input v-model="outTaskEntity.goodsId" ref="goodsId" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="箱号" prop="vehicleId" v-if="outTaskEntity.outType != 9">
|
||||
<el-input v-model="outTaskEntity.vehicleId" ref="vehicleId" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="数量" prop="needNum">
|
||||
<el-input-number style="width: 196px" v-model.number="outTaskEntity.needNum" ref="needNum"
|
||||
controls-position="right" :min="1" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="原因" prop="reason" v-if="outTaskEntity.outType == 9">
|
||||
<el-select-v2 style="width: 196px" v-model="outTaskEntity.reason" placeholder="请选择紧急出库原因"
|
||||
:options="reasonOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button type="primary"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="confirmOut()">确认出库
|
||||
</el-button>
|
||||
<el-button type="warning"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="clearInput()">清除输入
|
||||
</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-config-provider>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<fieldset class="confirm-area">
|
||||
<el-form ref="confirmRef" :model="confirmEntity" :label-position="labelPosition" label-width="158px"
|
||||
style="max-width: 100%" :rules="confirmRules" status-icon>
|
||||
<div style="display: flex; justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-row style="border-bottom: dashed 1px black;">
|
||||
<el-form-item label="出库类型" prop="outType">
|
||||
<el-select-v2 style="width: 196px" v-model="confirmEntity.outType" placeholder=" "
|
||||
:options="outTypeOptions" disabled></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="物料号" prop="goodsId">
|
||||
<el-input v-model="confirmEntity.goodsId" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="总需求" prop="totalNeed">
|
||||
<el-input v-model="confirmEntity.totalNeed" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="剩余需求" prop="remainNeed">
|
||||
<el-input v-model="confirmEntity.remainNeed" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="本次计划拣选" prop="planPickQty">
|
||||
<el-input v-model="confirmEntity.planPickQty" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="本次实际拣选" prop="realPickQty">
|
||||
<el-input-number style="width: 196px" v-model.number="confirmEntity.realPickQty"
|
||||
controls-position="right" :min="0" clearable @change="changePlanQty()"/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-form-item label="箱号" prop="vehicleId">
|
||||
<el-input v-model="confirmEntity.vehicleId" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="计划剩余数量" prop="planRemainQty">
|
||||
<el-input v-model="confirmEntity.planRemainQty" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="实际剩余数量" prop="realRemainQty">
|
||||
<el-input-number style="width: 196px" v-model.number="confirmEntity.realRemainQty"
|
||||
controls-position="right" :min="0" clearable/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button type="success"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="confirmOrRelease()">确认/放行
|
||||
</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import { requireStockOut, getCurrentTask, confirmCurrentTask } from '@/api/task.js'
|
||||
import { errorBox, warningBox } from '@/utils/myMessageBox.js'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { reactive, ref } from 'vue'
|
||||
import { loading } from '@/utils/loading'
|
||||
import {requireStockOut, getCurrentTask, confirmCurrentTask} from '@/api/task.js'
|
||||
import {errorBox, warningBox} from '@/utils/myMessageBox.js'
|
||||
import {ElMessage} from 'element-plus'
|
||||
import {nextTick, onBeforeUnmount, onMounted, reactive, ref, watch} from 'vue'
|
||||
import {loading} from '@/utils/loading'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
</script>
|
||||
import {useRoute} from "vue-router";
|
||||
import {labelPosition} from '@/constant/form'
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'goodsOut',
|
||||
data() {
|
||||
return {
|
||||
standId: store.getters.getStandId,
|
||||
userName: store.getters.getUserName,
|
||||
timer: '',
|
||||
labelPosition: 'top',
|
||||
outTaskRef: ref(),
|
||||
outTaskEntity: reactive({
|
||||
outType: 9,
|
||||
goodsId: '',
|
||||
vehicleId: '',
|
||||
reason: '',
|
||||
needNum: null
|
||||
}),
|
||||
requestRules: reactive({
|
||||
outType: [
|
||||
{ required: true, message: '请选择入库类型' }
|
||||
],
|
||||
needNum: [
|
||||
{ required: true, message: '请输入数量' },
|
||||
{ type: 'number', message: '请输入数字值' }
|
||||
],
|
||||
}),
|
||||
outTypeOptions: [
|
||||
{
|
||||
label: '空箱出库',
|
||||
value: 1
|
||||
},
|
||||
{
|
||||
label: '紧急出库',
|
||||
value: 9
|
||||
}
|
||||
],
|
||||
resonOptions: [
|
||||
{
|
||||
label: '补料',
|
||||
value: '补料'
|
||||
},
|
||||
{
|
||||
label: '少K',
|
||||
value: '少K'
|
||||
},
|
||||
{
|
||||
label: '缺料',
|
||||
value: '缺料'
|
||||
},
|
||||
{
|
||||
label: '返工工单',
|
||||
value: '返工工单'
|
||||
}
|
||||
],
|
||||
confirmRef: ref(),
|
||||
confirmEntity: reactive({}),
|
||||
confirmRules: reactive({}),
|
||||
pauseGetPickFlag: false,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.timer = setInterval(() => {
|
||||
this.getTask()
|
||||
}, 1000)
|
||||
})
|
||||
},
|
||||
beforeUnmount() {
|
||||
clearInterval(this.timer)
|
||||
},
|
||||
methods: {
|
||||
// 清除输入
|
||||
clearInput() {
|
||||
this.outTaskEntity = reactive({
|
||||
outType: 9,
|
||||
goodsId: '',
|
||||
vehicleId: '',
|
||||
needNum: null
|
||||
})
|
||||
},
|
||||
// 确认出库
|
||||
confirmOut() {
|
||||
if (this.outTaskEntity.needNum == null) {
|
||||
errorBox('请输入正确的数量。')
|
||||
return
|
||||
}
|
||||
if (this.outTaskEntity.outType != 1) {
|
||||
if (this.outTaskEntity.goodsId == '') {
|
||||
errorBox('非空箱出库时,请输入料号。')
|
||||
return
|
||||
}
|
||||
}
|
||||
if (this.outTaskEntity.outType == 9) {
|
||||
if (this.outTaskEntity.reason == '') {
|
||||
errorBox('紧急出库请选择原因。')
|
||||
return
|
||||
}
|
||||
}
|
||||
const request = {
|
||||
outType: this.outTaskEntity.outType,
|
||||
goodsId: this.outTaskEntity.goodsId.toUpperCase(),
|
||||
vehicleId: this.outTaskEntity.vehicleId,
|
||||
needNum: this.outTaskEntity.needNum,
|
||||
reason: this.outTaskEntity.reason,
|
||||
destination: this.standId,
|
||||
userName: this.userName,
|
||||
standId: this.standId
|
||||
}
|
||||
loading.open('请求中,请稍等...')
|
||||
requireStockOut(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
// 成功
|
||||
ElMessage.success(response.message)
|
||||
this.clearInput()
|
||||
} else {
|
||||
errorBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('请求错误。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
},
|
||||
// 获取拣选信息
|
||||
getTask() {
|
||||
if (this.pauseGetPickFlag) {
|
||||
return
|
||||
}
|
||||
const request = {
|
||||
standId: this.standId,
|
||||
userName: this.userName
|
||||
}
|
||||
// 获取当前拣选信息
|
||||
getCurrentTask(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
const confirmVo = response.data
|
||||
// 设置form
|
||||
this.confirmEntity = {
|
||||
taskId: confirmVo.taskConfirm.taskId,
|
||||
outType: confirmVo.taskConfirm.outType,
|
||||
goodsId: confirmVo.taskConfirm.goodsId,
|
||||
totalNeed: confirmVo.taskConfirm.totalNeed,
|
||||
remainNeed: confirmVo.taskConfirm.remainNeed,
|
||||
planPickQty: confirmVo.taskConfirm.planPickQty,
|
||||
realPickQty: confirmVo.taskConfirm.realPickQty,
|
||||
stockId: confirmVo.stockConfirm.stockId,
|
||||
vehicleId: confirmVo.stockConfirm.vehicleId,
|
||||
planRemainQty: confirmVo.stockConfirm.planRemainQty,
|
||||
realRemainQty: confirmVo.stockConfirm.realRemainQty,
|
||||
isOut: confirmVo.stockConfirm.isOut,
|
||||
putArea: confirmVo.stockConfirm.putArea,
|
||||
warningQty: confirmVo.stockConfirm.warningQty
|
||||
}
|
||||
this.pauseGetPickFlag = true
|
||||
// 如果剩余数量低于预警值,弹框报警
|
||||
if (this.confirmEntity.isOut == 0 && this.confirmEntity.planRemainQty <= this.confirmEntity.warningQty) {
|
||||
warningBox('剩余数量低于预警值,请清点库存数量。')
|
||||
}
|
||||
} else if (response.code == 400) {
|
||||
// 警告,弹框
|
||||
this.pauseGetPickFlag = true
|
||||
warningBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
this.pauseGetPickFlag = true
|
||||
errorBox('请求错误,请检查完原因后刷新界面。')
|
||||
})
|
||||
},
|
||||
// 确认/放行
|
||||
confirmOrRelease() {
|
||||
// 确认放行---与配料工作区分开来
|
||||
const request = {
|
||||
taskConfirm: {
|
||||
taskId: this.confirmEntity.taskId,
|
||||
outType: this.confirmEntity.outType,
|
||||
goodsId: this.confirmEntity.goodsId,
|
||||
totalNeed: this.confirmEntity.totalNeed,
|
||||
remainNeed: this.confirmEntity.remainNeed,
|
||||
planPickQty: this.confirmEntity.planPickQty,
|
||||
realPickQty: this.confirmEntity.realPickQty,
|
||||
},
|
||||
stockConfirm: {
|
||||
stockId: this.confirmEntity.stockId,
|
||||
vehicleId: this.confirmEntity.vehicleId,
|
||||
goodsId: this.confirmEntity.goodsId,
|
||||
planRemainQty: this.confirmEntity.planRemainQty,
|
||||
realRemainQty: this.confirmEntity.realRemainQty,
|
||||
isOut: this.confirmEntity.isOut,
|
||||
putArea: this.confirmEntity.putArea,
|
||||
},
|
||||
standId: this.standId,
|
||||
userName: this.userName
|
||||
}
|
||||
confirmCurrentTask(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
// 设置form
|
||||
this.confirmEntity = reactive({})
|
||||
this.pauseGetPickFlag = false
|
||||
ElMessage.success(response.message)
|
||||
} else if (response.code == 400) {
|
||||
this.pauseGetPickFlag = false
|
||||
warningBox(response.message)
|
||||
} else {
|
||||
// 错误,弹框
|
||||
errorBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('请求错误,请检查完原因后刷新界面。')
|
||||
})
|
||||
},
|
||||
// 当拣选数量修改时,要对应的修改
|
||||
changePlanQty() {
|
||||
if (this.confirmEntity.isOut == 0 && this.confirmEntity.realPickQty != this.confirmEntity.planPickQty) {
|
||||
// 修正量
|
||||
const changeQty = this.confirmEntity.realPickQty - this.confirmEntity.planPickQty
|
||||
// 修正实际剩余数量
|
||||
this.confirmEntity.realRemainQty = this.confirmEntity.planRemainQty - changeQty
|
||||
}
|
||||
}
|
||||
const STAND_ID = store.getters.getStandId
|
||||
const USER_NAME = store.getters.getUserName
|
||||
let timer = ref()
|
||||
let outTaskRef = ref()
|
||||
let outTaskEntity = reactive({
|
||||
outType: 9,
|
||||
goodsId: '',
|
||||
vehicleId: '',
|
||||
reason: '',
|
||||
needNum: null
|
||||
})
|
||||
const requestRules = reactive({
|
||||
outType: [
|
||||
{required: true, message: '请选择入库类型'}
|
||||
],
|
||||
needNum: [
|
||||
{required: true, message: '请输入数量'},
|
||||
{type: 'number', message: '请输入数字值'}
|
||||
],
|
||||
})
|
||||
const outTypeOptions = [
|
||||
{
|
||||
label: '空箱出库',
|
||||
value: 1
|
||||
},
|
||||
{
|
||||
label: '紧急出库',
|
||||
value: 9
|
||||
}
|
||||
]
|
||||
const reasonOptions = [
|
||||
{
|
||||
label: '补料',
|
||||
value: '补料'
|
||||
},
|
||||
{
|
||||
label: '少K',
|
||||
value: '少K'
|
||||
},
|
||||
{
|
||||
label: '缺料',
|
||||
value: '缺料'
|
||||
},
|
||||
{
|
||||
label: '返工工单',
|
||||
value: '返工工单'
|
||||
}
|
||||
]
|
||||
let confirmRef = ref()
|
||||
let confirmEntity = reactive({
|
||||
taskId: '',
|
||||
outType: null,
|
||||
goodsId: '',
|
||||
totalNeed: null,
|
||||
remainNeed: null,
|
||||
planPickQty: null,
|
||||
realPickQty: null,
|
||||
stockId: '',
|
||||
vehicleId: '',
|
||||
planRemainQty: null,
|
||||
realRemainQty: null,
|
||||
isOut: null,
|
||||
putArea: '',
|
||||
warningQty: null
|
||||
})
|
||||
const confirmRules = reactive({})
|
||||
let pauseGetPickFlag = ref(false)
|
||||
const route = useRoute()// 路由
|
||||
// 系统
|
||||
onMounted(() => {
|
||||
nextTick(() => {
|
||||
timer.value = setInterval(() => {
|
||||
timerTask_1()
|
||||
}, 1000)
|
||||
})
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
clearInterval(timer.value)
|
||||
})
|
||||
// 监视路由
|
||||
watch(() => route.path, (newVal, oldVal) => {
|
||||
if (newVal === '/goodsOut') {
|
||||
timer.value = setInterval(() => {
|
||||
timerTask_1()
|
||||
}, 1000)
|
||||
} else {
|
||||
clearInterval(timer.value)
|
||||
}
|
||||
})
|
||||
// 定时器任务1
|
||||
const timerTask_1 = () => {
|
||||
getTask()
|
||||
}
|
||||
// 获取拣选信息
|
||||
const getTask = () => {
|
||||
if (pauseGetPickFlag.value) {
|
||||
return
|
||||
}
|
||||
const request = {
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
// 获取当前拣选信息
|
||||
getCurrentTask(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
const confirmVo = response.data
|
||||
// 设置form
|
||||
confirmEntity.taskId = confirmVo.taskConfirm.taskId
|
||||
confirmEntity.outType = confirmVo.taskConfirm.outType
|
||||
confirmEntity.goodsId = confirmVo.taskConfirm.goodsId
|
||||
confirmEntity.totalNeed = confirmVo.taskConfirm.totalNeed
|
||||
confirmEntity.remainNeed = confirmVo.taskConfirm.remainNeed
|
||||
confirmEntity.planPickQty = confirmVo.taskConfirm.planPickQty
|
||||
confirmEntity.realPickQty = confirmVo.taskConfirm.realPickQty
|
||||
confirmEntity.stockId = confirmVo.stockConfirm.stockId
|
||||
confirmEntity.vehicleId = confirmVo.stockConfirm.vehicleId
|
||||
confirmEntity.planRemainQty = confirmVo.stockConfirm.planRemainQty
|
||||
confirmEntity.realRemainQty = confirmVo.stockConfirm.realRemainQty
|
||||
confirmEntity.isOut = confirmVo.stockConfirm.isOut
|
||||
confirmEntity.putArea = confirmVo.stockConfirm.putArea
|
||||
confirmEntity.warningQty = confirmVo.stockConfirm.warningQty
|
||||
pauseGetPickFlag.value = true
|
||||
// 如果剩余数量低于预警值,弹框报警
|
||||
if (confirmEntity.isOut === 0 && confirmEntity.planRemainQty <= confirmEntity.warningQty) {
|
||||
warningBox('剩余数量低于预警值,请清点库存数量。')
|
||||
}
|
||||
} else if (response.code === 400) {
|
||||
// 警告,弹框
|
||||
pauseGetPickFlag.value = true
|
||||
warningBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
pauseGetPickFlag.value = true
|
||||
errorBox('请求错误,请检查完原因后刷新界面。')
|
||||
})
|
||||
}
|
||||
// 清除输入
|
||||
const clearInput = () => {
|
||||
outTaskEntity.outType = 9
|
||||
outTaskEntity.goodsId = ''
|
||||
outTaskEntity.vehicleId = ''
|
||||
outTaskEntity.needNum = null
|
||||
}
|
||||
// 确认出库
|
||||
const confirmOut = () => {
|
||||
if (outTaskEntity.needNum == null) {
|
||||
errorBox('请输入正确的数量。')
|
||||
return
|
||||
}
|
||||
if (outTaskEntity.outType !== 1) {
|
||||
if (outTaskEntity.goodsId === '') {
|
||||
errorBox('非空箱出库时,请输入料号。')
|
||||
return
|
||||
}
|
||||
}
|
||||
if (outTaskEntity.outType === 9) {
|
||||
if (outTaskEntity.reason === '') {
|
||||
errorBox('紧急出库请选择原因。')
|
||||
return
|
||||
}
|
||||
}
|
||||
const request = {
|
||||
outType: outTaskEntity.outType,
|
||||
goodsId: outTaskEntity.goodsId.toUpperCase().trim(),
|
||||
vehicleId: outTaskEntity.vehicleId.toUpperCase().trim(),
|
||||
needNum: outTaskEntity.needNum,
|
||||
reason: outTaskEntity.reason,
|
||||
destination: STAND_ID,
|
||||
userName: USER_NAME,
|
||||
standId: STAND_ID
|
||||
}
|
||||
loading.open('请求中,请稍等...')
|
||||
requireStockOut(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
// 成功
|
||||
ElMessage.success(response.message)
|
||||
clearInput()
|
||||
} else {
|
||||
errorBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('请求错误。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}
|
||||
// 确认/放行
|
||||
const confirmOrRelease = () => {
|
||||
// 确认放行---与配料工作区分开来
|
||||
const request = {
|
||||
taskConfirm: {
|
||||
taskId: confirmEntity.taskId,
|
||||
outType: confirmEntity.outType,
|
||||
goodsId: confirmEntity.goodsId,
|
||||
totalNeed: confirmEntity.totalNeed,
|
||||
remainNeed: confirmEntity.remainNeed,
|
||||
planPickQty: confirmEntity.planPickQty,
|
||||
realPickQty: confirmEntity.realPickQty,
|
||||
},
|
||||
stockConfirm: {
|
||||
stockId: confirmEntity.stockId,
|
||||
vehicleId: confirmEntity.vehicleId,
|
||||
goodsId: confirmEntity.goodsId,
|
||||
planRemainQty: confirmEntity.planRemainQty,
|
||||
realRemainQty: confirmEntity.realRemainQty,
|
||||
isOut: confirmEntity.isOut,
|
||||
putArea: confirmEntity.putArea,
|
||||
},
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
confirmCurrentTask(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
// 设置form
|
||||
clearConfirmEntity()
|
||||
pauseGetPickFlag.value = false
|
||||
ElMessage.success(response.message)
|
||||
} else if (response.code === 400) {
|
||||
pauseGetPickFlag.value = false
|
||||
warningBox(response.message)
|
||||
} else {
|
||||
// 错误,弹框
|
||||
errorBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('请求错误,请检查完原因后刷新界面。')
|
||||
})
|
||||
}
|
||||
// 当拣选数量修改时,要对应的修改
|
||||
const changePlanQty = () => {
|
||||
if (confirmEntity.isOut === 0 && confirmEntity.realPickQty !== confirmEntity.planPickQty) {
|
||||
// 修正实际剩余数量
|
||||
confirmEntity.realRemainQty = confirmEntity.planRemainQty - confirmEntity.realPickQty + confirmEntity.planPickQty
|
||||
}
|
||||
}
|
||||
// 清楚confirmEntity
|
||||
const clearConfirmEntity = () => {
|
||||
confirmEntity.taskId = ''
|
||||
confirmEntity.outType = null
|
||||
confirmEntity.goodsId = ''
|
||||
confirmEntity.totalNeed = null
|
||||
confirmEntity.remainNeed = null
|
||||
confirmEntity.planPickQty = null
|
||||
confirmEntity.realPickQty = null
|
||||
confirmEntity.stockId = ''
|
||||
confirmEntity.vehicleId = ''
|
||||
confirmEntity.planRemainQty = null
|
||||
confirmEntity.realRemainQty = null
|
||||
confirmEntity.isOut = null
|
||||
confirmEntity.putArea = ''
|
||||
confirmEntity.warningQty = null
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.content {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.work-area {
|
||||
width: 100%;
|
||||
/* padding: 5px; */
|
||||
width: 100%;
|
||||
/* padding: 5px; */
|
||||
}
|
||||
|
||||
.search-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 90%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 90%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.confirm-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 90%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 90%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.el-form-item {
|
||||
margin: 10px 5px 10px 5px;
|
||||
margin: 10px 5px 10px 5px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input {
|
||||
width: 196px;
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.table-class {
|
||||
margin: 5px 5px 5px 5px;
|
||||
width: inherit;
|
||||
margin: 5px 5px 5px 5px;
|
||||
width: inherit;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -46,7 +46,7 @@
|
|||
<el-input v-model="confirmEntity.stockNum" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="确认数量" prop="confirmNum">
|
||||
<el-input-number v-model.number="confirmEntity.confirmNum"
|
||||
<el-input-number style="width: 196px" v-model.number="confirmEntity.confirmNum"
|
||||
controls-position="right" :min="0" clearable/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
|
|
|
|||
|
|
@ -1,152 +1,314 @@
|
|||
|
||||
<template>
|
||||
<div style="margin-bottom: 15px">
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-row>
|
||||
<el-input v-model="goodsIdQuery" style="width: 256px; margin-right: 10px;" placeholder="零件号" />
|
||||
<el-input v-model="vehicleNoQuery" style="width: 256px; margin-right: 10px;" placeholder="箱号" />
|
||||
<el-button type="primary" @click="search()">搜索</el-button>
|
||||
<el-button type="warning" @click="reset()">重置</el-button>
|
||||
<el-button type="success" @click="refresh()">刷新</el-button>
|
||||
</el-row>
|
||||
<br />
|
||||
<el-table :data="tasks" stripe border v-loading="loading" style="width: 100%" max-height="684px"
|
||||
class="table-class" :header-cell-style="{ 'text-align': 'center' }" :cell-style="{ 'text-align': 'center' }">
|
||||
<el-table-column prop="goodsId" label="零件号" fixed="left" min-width="120px" />
|
||||
<el-table-column prop="vehicleNo" label="箱号" fixed="left" min-width="120px" />
|
||||
<el-table-column prop="goodsName" label="零件名称" min-width="120px" />
|
||||
<el-table-column prop="taskType" label="任务类型" :formatter="taskTypeFormat" sortable min-width="120px" />
|
||||
<el-table-column prop="taskGroup" label="任务组" min-width="120px" />
|
||||
<el-table-column prop="origin" label="起点" min-width="120px" />
|
||||
<el-table-column prop="destination" label="终点" min-width="120px" />
|
||||
<el-table-column prop="pickStand" label="拣选站台" min-width="120px" />
|
||||
<el-table-column prop="weight" label="重量" min-width="120px" />
|
||||
<el-table-column prop="productionDate" label="生产日期" :formatter="dateFormat" min-width="120px" />
|
||||
<el-table-column prop="expirationDate" label="有效日期" :formatter="dateFormat" min-width="120px" />
|
||||
<el-table-column prop="operateNum" label="操作数量" min-width="120px" />
|
||||
<el-table-column prop="totalNum" label="库存数量" min-width="120px" />
|
||||
<el-table-column prop="taskPriority" label="任务优先级" sortable min-width="120px" />
|
||||
<el-table-column prop="kateTaskId" label="配件任务号" sortable min-width="140px" />
|
||||
<el-table-column prop="userName" label="操作人员姓名" min-width="120px" />
|
||||
<el-table-column prop="createTime" label="创建时间" :formatter="timeFormat" min-width="120px" />
|
||||
<el-table-column prop="finishTime" label="任务完成时间" :formatter="timeFormat" min-width="120px" />
|
||||
<el-table-column prop="taskStatus" label="任务状态" fixed="right" :formatter="taskStatusFormat" min-width="120px" />
|
||||
<!-- <el-table-column fixed="right" label="操作" width="180px">
|
||||
<template v-slot="scope">
|
||||
<el-popconfirm confirm-button-text="是" cancel-button-text="否" title="请确认是否取消任务?" :hide-after="10" @confirm="">
|
||||
<template #reference>
|
||||
<el-button plain type="warning">取消</el-button>
|
||||
</template>
|
||||
</el-popconfirm>
|
||||
<el-popconfirm confirm-button-text="是" cancel-button-text="否" title="请确认是否完成任务?" :hide-after="10" @confirm="">
|
||||
<template #reference>
|
||||
<el-button plain type="primary">完成</el-button>
|
||||
</template>
|
||||
</el-popconfirm>
|
||||
</template>
|
||||
</el-table-column> -->
|
||||
</el-table>
|
||||
<br />
|
||||
<el-pagination v-model:current-page="currentPage" v-model:page-size="pageSize" :page-sizes="[10, 25, 50]"
|
||||
:small="false" :disabled="false" :background="false" :default-page-size="10"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="search"
|
||||
@current-change="search" />
|
||||
</el-config-provider>
|
||||
</div>
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-container class="content">
|
||||
<div class="work-area">
|
||||
<fieldset class="search-area">
|
||||
<el-form ref="searchQueryFormRef" :model="searchQueryFormEntity" :label-position="labelPosition"
|
||||
label-width="158px" style="max-width: 100%" status-icon>
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="箱号">
|
||||
<el-input v-model="searchQueryFormEntity.vehicleId" @keyup.enter="search()" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="料号">
|
||||
<el-input v-model="searchQueryFormEntity.goodsId" @keyup.enter="search()" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="创建时间from">
|
||||
<el-date-picker v-model="searchQueryFormEntity.fromTime" type="datetime"
|
||||
placeholder="请选择from时间" :shortcuts="shortcuts"
|
||||
style="width: 196px;" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="创建时间to">
|
||||
<el-date-picker v-model="searchQueryFormEntity.toTime" type="datetime"
|
||||
placeholder="请选择to时间" :shortcuts="shortcuts"
|
||||
style="width: 196px;" clearable/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<div style="align-content: center;">
|
||||
<el-row>
|
||||
<el-button type="primary" class="btn-search" @click="search()">查询</el-button>
|
||||
<el-button type="warning" class="btn-search" @click="clearQuery()">清除输入</el-button>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button type="success" class="btn-search"
|
||||
@click="exportExcel()">导出excel
|
||||
</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<div class="table-area">
|
||||
<el-table :data="tableData" stripe border v-loading="tableLoading" class="table-class"
|
||||
:max-height="maxHeight" highlight-current-row @row-click="getCurrentRow"
|
||||
:header-cell-style="{ 'text-align': 'center' }" :cell-style="{ 'text-align': 'center' }"
|
||||
@sort-change="handleSortChange">
|
||||
<el-table-column width="65px" fixed="left">
|
||||
<template v-slot="scope">
|
||||
<el-radio :label="scope.row.taskId" v-model="taskId"> </el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="taskId" label="任务号" fixed="left" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="taskType" label="任务类型" :formatter="taskTypeFormat" min-width="120px"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="taskStatus" label="任务状态" :formatter="taskStatusFormat" min-width="120px"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="taskPriority" label="优先级" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="vehicleId" label="箱号" fixed="left" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="goodsId" label="料号" min-width="120px" fixed="left" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="goodsDesc" label="物料描述"
|
||||
min-width="120px" sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="opNum" label="操作数量" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="stockNum" label="库存数量" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="origin" label="起点" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="destination" label="终点" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="wcsTaskId" label="wcs任务号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="createTime" label="创建时间" :formatter="timeFormat" fixed="right" min-width="120px"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="finishTime" label="完成时间" :formatter="timeFormat" fixed="right" min-width="120px"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="opUser" label="操作用户" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="remark" label="备注" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="callStand" label="呼叫站台" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip/>
|
||||
</el-table>
|
||||
<br/>
|
||||
<el-pagination v-model:current-page="baseTableQuery.currentPage"
|
||||
v-model:page-size="baseTableQuery.pageSize" :page-sizes="[10, 25, 50]" :small="false"
|
||||
:disabled="false" :background="false" :default-page-size="10" @size-change="search"
|
||||
@current-change="search" layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="baseTableQuery.total"/>
|
||||
</div>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { getTaskRecords } from '@/api/record.js'
|
||||
import { dateFormatter, taskStatusFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import { errorBox } from '@/utils/myMessageBox.js'
|
||||
import store from '@/store'
|
||||
</script>
|
||||
<script>
|
||||
export default {
|
||||
name: 'inventoryRecord',
|
||||
data() {
|
||||
return {
|
||||
pageInfo: {},
|
||||
tasks: [],
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
goodsIdQuery: '',
|
||||
vehicleNoQuery: '',
|
||||
loading: true
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.search()
|
||||
},
|
||||
methods: {
|
||||
dateFormat: (row, column, cellValue, index) => {
|
||||
return dateFormatter(cellValue)
|
||||
},
|
||||
timeFormat: (row, column, cellValue, index) => {
|
||||
return timeFormatter(cellValue)
|
||||
},
|
||||
taskStatusFormat: (row, column, cellValue, index) => {
|
||||
return taskStatusFormatter(cellValue)
|
||||
},
|
||||
taskTypeFormat: (row, column, cellValue, index) => {
|
||||
switch (cellValue) {
|
||||
case 1: return '入库'
|
||||
case 2: return '出库'
|
||||
case 3: return '盘点'
|
||||
default: return '未知'
|
||||
}
|
||||
},
|
||||
search() {
|
||||
this.loading = true
|
||||
this.pageInfo.pageNum = this.currentPage
|
||||
this.pageInfo.pageSize = this.pageSize
|
||||
const tableRequest = {
|
||||
page: this.pageInfo,
|
||||
param: {
|
||||
taskType: 3,
|
||||
goodsId: this.goodsIdQuery.trim(),
|
||||
vehicleNo: this.vehicleNoQuery.trim(),
|
||||
userName: store.getters.getUserName
|
||||
}
|
||||
}
|
||||
getTaskRecords(tableRequest).then(res => {
|
||||
const tableResponse = res.data
|
||||
if (tableResponse.code == 0) {
|
||||
this.tasks = tableResponse.rows
|
||||
this.total = tableResponse.total
|
||||
} else {
|
||||
errorBox(tableResponse.message)
|
||||
}
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import {queryInTaskRecordByPage} from '@/api/taskQuery.js'
|
||||
import {timeFormatter, wmsTaskTypeFormatter, wmsTaskStatusFormatter, dateFormatter} from '@/utils/formatter.js'
|
||||
import {ref, reactive, onMounted, nextTick, onBeforeUnmount} from 'vue'
|
||||
import {ElMessage} from 'element-plus'
|
||||
import {genTableRequest} from '@/utils/generator.js'
|
||||
import {labelPosition, shortcuts} from '@/constant/form.js'
|
||||
import {exportInTaskRecordExcel} from '@/api/excel.js'
|
||||
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('查询盘点记录错误')
|
||||
})
|
||||
this.loading = false
|
||||
},
|
||||
reset() {
|
||||
this.goodsIdQuery = ''
|
||||
this.vehicleNoQuery = ''
|
||||
this.search()
|
||||
},
|
||||
},
|
||||
/**
|
||||
* 常量定义
|
||||
*/
|
||||
const STAND_ID = store.getters.getStandId
|
||||
const USER_NAME = store.getters.getUserName
|
||||
/**
|
||||
* 变量定义
|
||||
*/
|
||||
let maxHeight = ref(window.innerHeight * 0.55)
|
||||
let tableLoading = ref(false)
|
||||
let tableData = ref([])
|
||||
let baseTableQuery = reactive({
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
sortBy: new Map([['createTime', false]]),// 按照创建时间倒序
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
})
|
||||
let searchQueryFormEntity = reactive({
|
||||
vehicleId: '',
|
||||
goodsId: '',
|
||||
fromTime: null,
|
||||
toTime: null
|
||||
})
|
||||
let searchQueryFormRef = ref()
|
||||
let taskId = ''
|
||||
/**
|
||||
* 系统方法
|
||||
*/
|
||||
onMounted(() => {
|
||||
nextTick(() => {
|
||||
window.addEventListener('resize', resizeHeight)
|
||||
search()
|
||||
})
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
nextTick(() => {
|
||||
window.removeEventListener('resize', resizeHeight)
|
||||
})
|
||||
})
|
||||
const resizeHeight = () => {
|
||||
maxHeight.value = window.innerHeight * 0.55
|
||||
}
|
||||
/**
|
||||
* 自定义方法
|
||||
*/
|
||||
// 查询
|
||||
const search = () => {
|
||||
tableLoading.value = true
|
||||
let request = genTableRequest(baseTableQuery)
|
||||
// 设定查询参数
|
||||
request.vehicleId = searchQueryFormEntity.vehicleId.trim()
|
||||
request.goodsId = searchQueryFormEntity.goodsId.trim()
|
||||
request.fromTime = searchQueryFormEntity.fromTime == null ? null : timeFormatter(searchQueryFormEntity.fromTime)
|
||||
request.toTime = searchQueryFormEntity.toTime == null ? null : timeFormatter(searchQueryFormEntity.toTime)
|
||||
queryInTaskRecordByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
tableData.value = data.lists
|
||||
baseTableQuery.total = data.total
|
||||
} else {
|
||||
tableData.value = []
|
||||
baseTableQuery.total = 0
|
||||
}
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('查询数据异常。')
|
||||
}).finally(() => {
|
||||
tableLoading.value = false
|
||||
})
|
||||
}
|
||||
const clearQuery = () => {
|
||||
searchQueryFormEntity.vehicleId = ''
|
||||
searchQueryFormEntity.goodsId = ''
|
||||
searchQueryFormEntity.fromTime = null
|
||||
searchQueryFormEntity.toTime = null
|
||||
}
|
||||
const handleSortChange = (data) => {
|
||||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order == 'ascending')
|
||||
search()
|
||||
}
|
||||
const getCurrentRow = (row) => {
|
||||
taskId = row.taskId
|
||||
}
|
||||
const timeFormat = (row, column, cellValue, index) => {
|
||||
return timeFormatter(cellValue)
|
||||
}
|
||||
const taskTypeFormat = (row, column, cellValue, index) => {
|
||||
return wmsTaskTypeFormatter(cellValue)
|
||||
}
|
||||
const taskStatusFormat = (row, column, cellValue, index) => {
|
||||
return wmsTaskStatusFormatter(cellValue)
|
||||
}
|
||||
const exportExcel = () => {
|
||||
const params = {
|
||||
goodsId: searchQueryFormEntity.goodsId,
|
||||
vehicleId: searchQueryFormEntity.vehicleId,
|
||||
fromTime: searchQueryFormEntity.fromTime == null ? null : timeFormatter(searchQueryFormEntity.fromTime),
|
||||
toTime: searchQueryFormEntity.toTime == null ? null : timeFormatter(searchQueryFormEntity.toTime),
|
||||
userName: USER_NAME
|
||||
}
|
||||
exportInTaskRecordExcel(params).then(res => {
|
||||
const link = document.createElement('a');//创建a标签
|
||||
try {
|
||||
// let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
||||
let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
||||
// let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
||||
let _fileName = '入库记录' + dateFormatter(new Date) + '.xlsx'
|
||||
link.style.display = 'none'//隐藏
|
||||
|
||||
// 兼容不同浏览器的URL对象
|
||||
const url = window.URL || window.webkitURL || window.moxURL
|
||||
link.href = url.createObjectURL(blob)
|
||||
link.setAttribute('download', _fileName.substring(_fileName.lastIndexOf('_') + 1))
|
||||
document.body.appendChild(link)
|
||||
link.click()
|
||||
document.body.removeChild(link)
|
||||
url.revokeObjectURL(link.href)//移除url对象
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
ElMessage.error('下载文件失败')
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('导出失败')
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.el-pagination {
|
||||
padding-left: 5px;
|
||||
.content {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.el-row .el-button {
|
||||
width: 72px;
|
||||
margin-left: 0px;
|
||||
margin-right: 5px;
|
||||
.work-area {
|
||||
width: 100%;
|
||||
/* padding: 5px; */
|
||||
}
|
||||
|
||||
.search-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 40%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.table-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 60%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.el-form-item {
|
||||
margin: 5px 5px 5px 5px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input {
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input-number {
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.table-class {
|
||||
width: 100%;
|
||||
margin: 5px 5px 5px 5px;
|
||||
width: inherit;
|
||||
}
|
||||
|
||||
.el-pagination {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.btn-search {
|
||||
height: 30px;
|
||||
width: 80px;
|
||||
margin: auto 5px 5px auto;
|
||||
color: black;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -22,6 +22,11 @@
|
|||
:value="item"/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="K料备注" prop="kittingRemark"
|
||||
v-if="workFormEntity.kittingRemark !== '' && workFormEntity.kittingRemark !== null && workFormEntity.kittingRemark !== undefined">
|
||||
<el-input v-model="workFormEntity.kittingRemark" placeholder="K料备注"
|
||||
:input-style="{'color':'red'}" readonly/>
|
||||
</el-form-item>
|
||||
<el-form-item label="原始成品号" prop="productIdOrigin">
|
||||
<el-input v-model="workFormEntity.productIdOrigin" placeholder="原始成品号" disabled/>
|
||||
</el-form-item>
|
||||
|
|
@ -96,11 +101,15 @@
|
|||
<el-form-item label="料盒号" prop="boxNo">
|
||||
<el-input v-model="confirmEntity.boxNo" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="K料备注" prop="kittingRemark">
|
||||
<el-input v-model="confirmEntity.kittingRemark"
|
||||
:input-style="{'color': 'red'}" readonly/>
|
||||
</el-form-item>
|
||||
<el-form-item label="计划拣选数量" prop="planPickQty">
|
||||
<el-input v-model="confirmEntity.planPickQty" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="实际拣选数量" prop="realPickQty">
|
||||
<el-input-number v-model.number="confirmEntity.realPickQty"
|
||||
<el-input-number style="width: 196px" v-model.number="confirmEntity.realPickQty"
|
||||
controls-position="right" :min="0" clearable @change="changePlanQty()"/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
|
|
@ -111,11 +120,11 @@
|
|||
<el-form-item label="存放区域" prop="putArea">
|
||||
<el-input v-model="confirmEntity.putArea" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="计划剩余数量" prop="planRemainQty" v-if="confirmEntity.isOut != 1">
|
||||
<el-form-item label="计划剩余数量" prop="planRemainQty" v-if="confirmEntity.isOut !== 1">
|
||||
<el-input v-model="confirmEntity.planRemainQty" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="实际剩余数量" prop="realRemainQty" v-if="confirmEntity.isOut != 1">
|
||||
<el-input-number v-model.number="confirmEntity.realRemainQty"
|
||||
<el-form-item label="实际剩余数量" prop="realRemainQty" v-if="confirmEntity.isOut !== 1">
|
||||
<el-input-number style="width: 196px" v-model.number="confirmEntity.realRemainQty"
|
||||
controls-position="right" :min="0" clearable/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
|
|
@ -260,7 +269,8 @@ let workFormEntity = reactive({
|
|||
singleProductId: '',
|
||||
boxNo: '',
|
||||
goodsId: '',
|
||||
planStartDate: null
|
||||
planStartDate: null,
|
||||
kittingRemark: ''
|
||||
})
|
||||
let workFormQuery = reactive({
|
||||
workOrder: '',
|
||||
|
|
@ -319,7 +329,7 @@ onBeforeUnmount(() => {
|
|||
})
|
||||
// 监视路由
|
||||
watch(() => route.path, (newVal, oldVal) => {
|
||||
if (newVal == '/kitting') {
|
||||
if (newVal === '/kitting') {
|
||||
timer.value = setInterval(() => {
|
||||
timerTask_1()
|
||||
}, 1000)
|
||||
|
|
@ -331,29 +341,30 @@ watch(() => route.path, (newVal, oldVal) => {
|
|||
}
|
||||
})
|
||||
watch(() => workFormEntity.workOrder, (newVal, oldVal) => {
|
||||
if (newVal == '') {
|
||||
if (newVal === '') {
|
||||
workFormEntity.productIdOrigin = ''
|
||||
workFormEntity.productId = ''
|
||||
workFormEntity.singleProductId = ''
|
||||
workFormEntity.boxNo = ''
|
||||
workFormEntity.goodsId = ''
|
||||
workFormEntity.kittingRemark = ''
|
||||
}
|
||||
})
|
||||
watch(() => workFormEntity.productId, (newVal, oldVal) => {
|
||||
if (newVal != oldVal) {
|
||||
if (newVal !== oldVal) {
|
||||
workFormEntity.singleProductId = ''
|
||||
workFormEntity.boxNo = ''
|
||||
workFormEntity.goodsId = ''
|
||||
}
|
||||
})
|
||||
watch(() => workFormEntity.singleProductId, (newVal, oldVal) => {
|
||||
if (newVal != oldVal) {
|
||||
if (newVal !== oldVal) {
|
||||
workFormEntity.boxNo = ''
|
||||
workFormEntity.goodsId = ''
|
||||
}
|
||||
})
|
||||
watch(() => workFormEntity.boxNo, (newVal, oldVal) => {
|
||||
if (newVal != oldVal) {
|
||||
if (newVal !== oldVal) {
|
||||
workFormEntity.goodsId = ''
|
||||
}
|
||||
})
|
||||
|
|
@ -368,27 +379,28 @@ const timerTask_1 = () => {
|
|||
}
|
||||
// 自定义方法
|
||||
const solveEnterKey = (e) => {
|
||||
if (e.key.toLocaleLowerCase() == 'enter') {
|
||||
if (e.key.toLowerCase() === 'enter') {
|
||||
confirmReleaseBtn.value.$el.click()
|
||||
}
|
||||
}
|
||||
// 初始化工单options
|
||||
const initWorkOptions = () => {
|
||||
const request = {
|
||||
workOrder: workFormQuery.workOrder != '' ? workFormQuery.workOrder : workFormEntity.workOrder,
|
||||
singleProductId: workFormQuery.singleProductId != '' ? workFormQuery.singleProductId : workFormEntity.singleProductId,
|
||||
boxNo: workFormQuery.boxNo != '' ? workFormQuery.boxNo : workFormEntity.boxNo,
|
||||
goodsId: workFormQuery.goodsId != '' ? workFormQuery.goodsId : workFormEntity.goodsId,
|
||||
workOrder: workFormQuery.workOrder !== '' ? workFormQuery.workOrder : workFormEntity.workOrder,
|
||||
singleProductId: workFormQuery.singleProductId !== '' ? workFormQuery.singleProductId : workFormEntity.singleProductId,
|
||||
boxNo: workFormQuery.boxNo !== '' ? workFormQuery.boxNo : workFormEntity.boxNo,
|
||||
goodsId: workFormQuery.goodsId !== '' ? workFormQuery.goodsId : workFormEntity.goodsId,
|
||||
planStartDate: dateFormatter(workFormEntity.planStartDate)
|
||||
}
|
||||
optionLoading.value = true
|
||||
queryKateWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
workOptions.workOrder = response.data.workOrder
|
||||
// 设置成品号
|
||||
workFormEntity.productIdOrigin = response.data.productIdOrigin
|
||||
workFormEntity.productId = response.data.productId
|
||||
workFormEntity.kittingRemark = response.data.kittingRemark
|
||||
workOptions.singleProductId = response.data.singleProductId
|
||||
workOptions.boxNo = response.data.boxNo
|
||||
workOptions.goodsId = response.data.goodsId
|
||||
|
|
@ -397,6 +409,7 @@ const initWorkOptions = () => {
|
|||
// 重置成品号
|
||||
workFormEntity.productIdOrigin = ''
|
||||
workFormEntity.productId = ''
|
||||
workFormEntity.kittingRemark = ''
|
||||
workOptions.singleProductId = []
|
||||
workOptions.boxNo = []
|
||||
workOptions.goodsId = []
|
||||
|
|
@ -420,6 +433,7 @@ const resetWorkFormQuery = () => {
|
|||
workFormEntity.singleProductId = ''
|
||||
workFormEntity.boxNo = ''
|
||||
workFormEntity.goodsId = ''
|
||||
workFormEntity.kittingRemark = ''
|
||||
}
|
||||
// 确认配料
|
||||
const confirmStart = () => {
|
||||
|
|
@ -434,7 +448,7 @@ const confirmStart = () => {
|
|||
loading.open()
|
||||
initWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
ElMessage.success(response.message)
|
||||
setTimeout(() => {
|
||||
showBoxSummary()
|
||||
|
|
@ -463,7 +477,7 @@ const showBoxSummary = () => {
|
|||
}
|
||||
getBoxesAndLacks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
const boxDetailVo = response.data
|
||||
// 获得打印标签数据
|
||||
getPrintTabs(boxDetailVo.boxSummary)
|
||||
|
|
@ -496,7 +510,7 @@ const getWork = () => {
|
|||
}
|
||||
getCurrentWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
// 设置form
|
||||
confirmEntity.workIndex = response.data.orderConfirm.workIndex
|
||||
confirmEntity.workOrder = response.data.orderConfirm.workOrder
|
||||
|
|
@ -506,6 +520,7 @@ const getWork = () => {
|
|||
confirmEntity.goodsId = response.data.orderConfirm.goodsId
|
||||
confirmEntity.planPickQty = response.data.orderConfirm.planPickQty
|
||||
confirmEntity.realPickQty = response.data.orderConfirm.realPickQty
|
||||
confirmEntity.kittingRemark = response.data.orderConfirm.kittingRemark
|
||||
confirmEntity.stockId = response.data.stockConfirm.stockId
|
||||
confirmEntity.vehicleId = response.data.stockConfirm.vehicleId
|
||||
confirmEntity.planRemainQty = response.data.stockConfirm.planRemainQty
|
||||
|
|
@ -515,10 +530,10 @@ const getWork = () => {
|
|||
confirmEntity.warningQty = response.data.stockConfirm.warningQty
|
||||
pauseGetWorkFlag.value = true
|
||||
// 如果剩余数量低于预警值,弹框报警
|
||||
if (confirmEntity.isOut == 0 && confirmEntity.planRemainQty <= confirmEntity.warningQty) {
|
||||
if (confirmEntity.isOut === 0 && confirmEntity.planRemainQty <= confirmEntity.warningQty) {
|
||||
warningBox('剩余数量低于预警值,请清点库存数量。')
|
||||
}
|
||||
} else if (response.code == 400) {
|
||||
} else if (response.code === 400) {
|
||||
// 警告,弹框
|
||||
pauseGetWorkFlag.value = true
|
||||
warningBox(response.message)
|
||||
|
|
@ -528,11 +543,13 @@ const getWork = () => {
|
|||
confirmEntity.boxNo = response.data.orderConfirm.boxNo
|
||||
confirmEntity.productId = response.data.orderConfirm.productId
|
||||
confirmEntity.singleProductId = response.data.orderConfirm.singleProductId
|
||||
confirmEntity.kittingRemark = response.data.orderConfirm.kittingRemark
|
||||
} else {
|
||||
confirmEntity.workOrder = ''
|
||||
confirmEntity.boxNo = ''
|
||||
confirmEntity.productId = ''
|
||||
confirmEntity.singleProductId = ''
|
||||
confirmEntity.kittingRemark = ''
|
||||
}
|
||||
}
|
||||
}).catch(err => {
|
||||
|
|
@ -543,17 +560,17 @@ const getWork = () => {
|
|||
}
|
||||
// 是否弹出料盒界面
|
||||
const ifNeedShowBoxSummary = () => {
|
||||
if (storeKittingWork.workOrder != '') {
|
||||
if (storeKittingWork.workOrder !== '') {
|
||||
// 需要弹出上一个料盒的缺料打印信息
|
||||
if (confirmEntity.workOrder != storeKittingWork.workOrder
|
||||
|| confirmEntity.productId != storeKittingWork.productId
|
||||
|| confirmEntity.singleProductId != storeKittingWork.singleProductId
|
||||
|| confirmEntity.boxNo != storeKittingWork.boxNo) {
|
||||
if (confirmEntity.workOrder !== storeKittingWork.workOrder
|
||||
|| confirmEntity.productId !== storeKittingWork.productId
|
||||
|| confirmEntity.singleProductId !== storeKittingWork.singleProductId
|
||||
|| confirmEntity.boxNo !== storeKittingWork.boxNo) {
|
||||
printLacks(storeKittingWork.workOrder, storeKittingWork.productId, storeKittingWork.singleProductId, storeKittingWork.boxNo)
|
||||
if (confirmEntity.workOrder == '') {
|
||||
if (confirmEntity.workOrder === '') {
|
||||
// 说明当前工单工作已完成,需要弹框提示工作已完成
|
||||
successBox('当前工单已完成。')
|
||||
} else if (confirmEntity.boxNo != storeKittingWork.boxNo) {
|
||||
} else if (confirmEntity.boxNo !== storeKittingWork.boxNo) {
|
||||
// 前一个料盒已完成,需要弹框提示料盒已完成
|
||||
showBoxSummary()
|
||||
}
|
||||
|
|
@ -599,11 +616,11 @@ const confirmOrRelease = () => {
|
|||
}
|
||||
confirmCurrentWork(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
// 设置form
|
||||
resetConfirmEntity()
|
||||
ElMessage.success(response.message)
|
||||
} else if (response.code == 400) {
|
||||
} else if (response.code === 400) {
|
||||
// 设置form
|
||||
resetConfirmEntity()
|
||||
// 警告
|
||||
|
|
@ -624,6 +641,7 @@ const resetConfirmEntity = () => {
|
|||
confirmEntity.planPickQty = null
|
||||
confirmEntity.realPickQty = null
|
||||
confirmEntity.stockId = ''
|
||||
confirmEntity.kittingRemark = ''
|
||||
confirmEntity.vehicleId = ''
|
||||
confirmEntity.planRemainQty = null
|
||||
confirmEntity.realRemainQty = null
|
||||
|
|
@ -633,7 +651,7 @@ const resetConfirmEntity = () => {
|
|||
}
|
||||
// 当拣选数量修改时,要对应的修改
|
||||
const changePlanQty = () => {
|
||||
if (confirmEntity.isOut == 0 && confirmEntity.realPickQty != confirmEntity.planPickQty) {
|
||||
if (confirmEntity.isOut === 0 && confirmEntity.realPickQty !== confirmEntity.planPickQty) {
|
||||
// 修正量
|
||||
const changeQty = confirmEntity.realPickQty - confirmEntity.planPickQty
|
||||
// 修正实际剩余数量
|
||||
|
|
@ -648,7 +666,7 @@ const requestPrint = () => {
|
|||
// 获得打印数据
|
||||
const getPrintTabs = (boxSummary) => {
|
||||
printTabs.value = []
|
||||
if (boxSummary != undefined) {
|
||||
if (boxSummary !== undefined) {
|
||||
for (let i = 1; i <= boxSummary.boxQty; i++) {
|
||||
printTabs.value.push(
|
||||
{
|
||||
|
|
@ -675,7 +693,7 @@ const searchKittingGoods = () => {
|
|||
request.boxNo = confirmEntity.boxNo
|
||||
queryWorkingGoodsByPage(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
currentBoxGoodsList.value = data.lists
|
||||
|
|
@ -695,7 +713,7 @@ const handleSortChange = (data) => {
|
|||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order == 'ascending')
|
||||
baseTableQuery.sortBy.set(data.prop, data.order.toLowerCase() === 'ascending')
|
||||
searchKittingGoods()
|
||||
}
|
||||
// 打印上一个料盒的缺料信息
|
||||
|
|
@ -710,7 +728,7 @@ const printLacks = (workOrder, productId, singleProductId, boxNo) => {
|
|||
}
|
||||
getLackGoods(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
lackGoodsForPrint.value = response.data
|
||||
nextTick(() => {
|
||||
printLackGoodsBtn.value.click()
|
||||
|
|
|
|||
|
|
@ -1,185 +0,0 @@
|
|||
<template>
|
||||
<div style="margin-bottom: 10px">
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-row style="align-items: center;">
|
||||
<!-- <span>选择库区:</span>
|
||||
<el-select v-model="areaId" placeholder="请选择库区" style="width: 120px;" @change="getAllLocations">
|
||||
<el-option label="3楼库区" :value='1' />
|
||||
<el-option label="2楼库区" :value='2' />
|
||||
</el-select> -->
|
||||
<span style="margin-left: 5px;">状态说明:</span>
|
||||
<el-button color="green">空闲</el-button>
|
||||
<el-button color="red">占用</el-button>
|
||||
<el-button color="yellow">锁定</el-button>
|
||||
<el-button color="#00BFFF" style="margin: 0 0 0 auto;" @click="getAllLocations">刷新</el-button>
|
||||
</el-row>
|
||||
<hr style="border: 1px solid #ff0000" />
|
||||
<div>
|
||||
<el-scrollbar max-height="760px">
|
||||
<div v-for="currentRowLocation in allLocations">
|
||||
<span>第{{ currentRowLocation.row }}排</span>
|
||||
<div class="row" v-for="currentLayerLocation in currentRowLocation.currentLayerLocations">
|
||||
<div class="col" v-for="currentColLocation in currentLayerLocation.currentColLocations">
|
||||
<el-button :color="getLocationStatus(currentColLocation)"
|
||||
@click="showDialog(currentColLocation)">
|
||||
<span style="font-size: 15px;">{{ currentColLocation.queue }}排{{ currentColLocation.line}}列{{ currentColLocation.layer}}层</span>
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<hr style="border: 1px solid #000000" />
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
<el-dialog v-model="dialogVisible" :title="currentLocationTitle" width="30%" draggable :show-close="false">
|
||||
<el-form :model="location">
|
||||
<el-form-item label="占用/解除占用库位" :label-width="140">
|
||||
<el-select v-model="location.locationStatus" placeholder="库位是否占用" style="width: 70%;">
|
||||
<el-option label="空闲" :value='0' />
|
||||
<el-option label="占用" :value='1' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="锁定/解锁库位" :label-width="140">
|
||||
<el-select v-model="location.isLock" placeholder="库位是否锁定" style="width: 70%;">
|
||||
<el-option label="解锁" :value='0' />
|
||||
<el-option label="锁定" :value='1' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="载具" :label-width="140">
|
||||
<el-input v-model="location.vehicleId" style="width: 70%;" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="submitLocationStatus()">
|
||||
确定
|
||||
</el-button>
|
||||
</span>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</el-config-provider>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import { getLocations, updateLocation } from '@/api/location.js'
|
||||
import { ElMessage, ElLoading } from 'element-plus'
|
||||
import { errorBox } from '@/utils/myMessageBox.js'
|
||||
import { reactive } from 'vue'
|
||||
</script>
|
||||
<script>
|
||||
export default {
|
||||
name: 'location',
|
||||
data() {
|
||||
return {
|
||||
dialogVisible: false,
|
||||
currentSelectedLocation: {},
|
||||
allLocations: [],
|
||||
location: reactive({
|
||||
locationStatus: '',
|
||||
isLock: '',
|
||||
vehicleId: ''
|
||||
}),
|
||||
currentLocationTitle: '',
|
||||
areaId: 1
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getAllLocations()
|
||||
},
|
||||
methods: {
|
||||
getLocationStatus: (currentColLocation) => {
|
||||
if (currentColLocation.isLock === 1) {
|
||||
return 'yellow'
|
||||
}
|
||||
if (currentColLocation.locationStatus === 1) {
|
||||
return 'red'
|
||||
}
|
||||
return 'green'
|
||||
},
|
||||
getAllLocations() {
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: 'Loading',
|
||||
background: 'rgba(0, 0, 0, 0.7)',
|
||||
})
|
||||
const data = { areaId: this.areaId }
|
||||
getLocations(data).then(res => {
|
||||
loading.close()
|
||||
if (res.data.code == 0) {
|
||||
console.log(res.data.returnData)
|
||||
this.allLocations = res.data.returnData
|
||||
} else {
|
||||
ElMessage.error(res.data.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
loading.close()
|
||||
ElMessage.error('查询库位失败!')
|
||||
})
|
||||
},
|
||||
showDialog(currentColLocation) {
|
||||
this.dialogVisible = true
|
||||
this.currentSelectedLocation = currentColLocation
|
||||
this.setCurrentLocationTitle()
|
||||
this.location.locationStatus = this.currentSelectedLocation.locationStatus
|
||||
this.location.isLock = this.currentSelectedLocation.isLock
|
||||
this.location.vehicleId = this.currentSelectedLocation.vehicleId
|
||||
},
|
||||
submitLocationStatus() {
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: 'Loading',
|
||||
background: 'rgba(0, 0, 0, 0.7)',
|
||||
})
|
||||
this.currentSelectedLocation.locationStatus = this.location.locationStatus
|
||||
this.currentSelectedLocation.isLock = this.location.isLock
|
||||
this.currentSelectedLocation.vehicleId = this.location.vehicleId
|
||||
updateLocation(this.currentSelectedLocation).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
loading.close()
|
||||
this.dialogVisible = false
|
||||
ElMessage({
|
||||
message: '更新库位信息成功!',
|
||||
type: 'success',
|
||||
})
|
||||
this.getAllLocations()
|
||||
} else {
|
||||
ElMessage.error(res.data.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
loading.close()
|
||||
ElMessage.error('更新库位信息失败')
|
||||
})
|
||||
},
|
||||
setCurrentLocationTitle() {
|
||||
this.currentLocationTitle = '当前选择库位:' + this.currentSelectedLocation.queue + '排' + this.currentSelectedLocation.line + '列' + this.currentSelectedLocation.layer + '层'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.el-pagination {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
.col {
|
||||
/* width: 100px; */
|
||||
/* height: 40px; */
|
||||
padding: 1px;
|
||||
margin: 1px;
|
||||
}
|
||||
|
||||
.col .el-button {
|
||||
width: 100px;
|
||||
height: 50px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,200 +1,190 @@
|
|||
<template>
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-container class="content">
|
||||
<div class="work-area">
|
||||
<fieldset class="search-area">
|
||||
<el-form ref="searchQueryFormRef" :model="searchQueryFormEntity" :label-position="labelPosition"
|
||||
label-width="158px" style="max-width: 100%" status-icon>
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="任务类型">
|
||||
<el-select-v2 v-model="searchQueryFormEntity.taskType" placeholder="任务类型"
|
||||
:options="addAllOptionOfOptions(taskTypeOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="任务状态">
|
||||
<el-select-v2 v-model="searchQueryFormEntity.taskStatus" placeholder="任务状态"
|
||||
:options="addAllOptionOfOptions(wmsTaskStatusOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="箱号">
|
||||
<el-input v-model="searchQueryFormEntity.vehicleId" @keyup.enter="search()" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="料号">
|
||||
<el-input v-model="searchQueryFormEntity.goodsId" @keyup.enter="search()" clearable />
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<div style="align-content: center;">
|
||||
<el-row>
|
||||
<el-button type="primary" class="btn-search" @click="search()">查询</el-button>
|
||||
<el-button type="warning" class="btn-search" @click="clearQuery()">清除输入</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<div class="table-area">
|
||||
<el-table :data="tableData" stripe border v-loading="tableLoading" class="table-class"
|
||||
:max-height="maxHeight" highlight-current-row @row-click="getCurrentRow"
|
||||
:header-cell-style="{ 'text-align': 'center' }" :cell-style="{ 'text-align': 'center' }"
|
||||
@sort-change="handleSortChange">
|
||||
<el-table-column width="65px" fixed="left">
|
||||
<template v-slot="scope">
|
||||
<el-radio :label="scope.row.taskId" v-model="taskId"> </el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="taskId" label="任务号" fixed="left" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="taskType" label="任务类型" fixed="left" :formatter="taskTypeFormat" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="taskStatus" label="任务状态" :formatter="taskStatusFormat" fixed="right" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="taskPriority" label="优先级" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="vehicleId" label="箱号" fixed="left" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="goodsId" label="料号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="goodsDesc" label="物料描述"
|
||||
min-width="120px" sortable="custom" show-overflow-tooltip />
|
||||
<el-table-column prop="opNum" label="操作数量" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="stockNum" label="库存数量" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip />
|
||||
<el-table-column prop="origin" label="起点" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="destination" label="终点" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip />
|
||||
<el-table-column prop="wcsTaskId" label="wcs任务号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="createTime" label="创建时间" :formatter="timeFormat" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="finishTime" label="完成时间" :formatter="timeFormat" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="opUser" label="操作用户" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip />
|
||||
<el-table-column prop="remark" label="备注" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip />
|
||||
<el-table-column prop="callStand" label="呼叫站台" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip />
|
||||
<!-- <el-table-column fixed="right" label="操作" width="170px">
|
||||
<template v-slot="scope">
|
||||
<div style="display: inline-block; align-content: center;">
|
||||
<el-button type="primary"
|
||||
@click="editCurrentRowFormEntity(scope.row)">编辑</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column> -->
|
||||
</el-table>
|
||||
<br />
|
||||
<el-pagination v-model:current-page="baseTableQuery.currentPage"
|
||||
v-model:page-size="baseTableQuery.pageSize" :page-sizes="[10, 25, 50]" :small="false"
|
||||
:disabled="false" :background="false" :default-page-size="10" @size-change="search"
|
||||
@current-change="search" layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="baseTableQuery.total" />
|
||||
</div>
|
||||
<el-dialog v-model="rowEditFlag" title="工作信息" width="40%" draggable :show-close="false">
|
||||
<el-form ref="rowEditFormRef" :model="rowFormEntity" :label-position="labelPosition"
|
||||
label-width="100px" style="max-width: 100%" status-icon>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="工作编号">
|
||||
<el-input v-model="rowFormEntity.workIndex" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="工单号">
|
||||
<el-input v-model="rowFormEntity.workOrder" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="总成号">
|
||||
<el-input v-model="rowFormEntity.productId" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="成品号">
|
||||
<el-input v-model="rowFormEntity.singleProductId" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="料盒号">
|
||||
<el-input v-model="rowFormEntity.boxNo" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="料号">
|
||||
<el-input v-model="rowFormEntity.goodsId" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="需求数量">
|
||||
<el-input-number v-model.number="rowFormEntity.needNum" controls-position="right"
|
||||
:min="0" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="已完成数量">
|
||||
<el-input-number v-model.number="rowFormEntity.finishNum" controls-position="right"
|
||||
:min="0" :max="rowFormEntity.needNum" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="已分配数量">
|
||||
<el-input-number v-model.number="rowFormEntity.distributeNum"
|
||||
controls-position="right" :min="0" :max="rowFormEntity.needNum" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="工作状态">
|
||||
<el-select-v2 v-model="rowFormEntity.workStatus" placeholder="请选择工作状态"
|
||||
:options="workStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="缺料状态">
|
||||
<el-select-v2 v-model="rowFormEntity.lackStatus" placeholder="请选择缺料状态"
|
||||
:options="lackStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-container class="content">
|
||||
<div class="work-area">
|
||||
<fieldset class="search-area">
|
||||
<el-form ref="searchQueryFormRef" :model="searchQueryFormEntity" :label-position="labelPosition"
|
||||
label-width="158px" style="max-width: 100%" status-icon>
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="锁定状态">
|
||||
<el-select-v2 style="width: 196px;" v-model="searchQueryFormEntity.isLock" placeholder="锁定状态"
|
||||
:options="addAllOptionOfOptions(lockOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="占用状态">
|
||||
<el-select-v2 style="width: 196px;" v-model="searchQueryFormEntity.isOccupy" placeholder="占用状态"
|
||||
:options="addAllOptionOfOptions(occupyOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="库位号">
|
||||
<el-input v-model="searchQueryFormEntity.locationId" @keyup.enter="search()" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="箱号">
|
||||
<el-input v-model="searchQueryFormEntity.vehicleId" @keyup.enter="search()" clearable/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<div style="align-content: center;">
|
||||
<el-row>
|
||||
<el-button type="primary" class="btn-search" @click="search()">查询</el-button>
|
||||
<el-button type="warning" class="btn-search" @click="clearQuery()">清除输入</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<div class="table-area">
|
||||
<el-table :data="tableData" stripe border v-loading="tableLoading" class="table-class"
|
||||
:max-height="maxHeight" highlight-current-row @row-click="getCurrentRow"
|
||||
:header-cell-style="{ 'text-align': 'center' }" :cell-style="{ 'text-align': 'center' }"
|
||||
@sort-change="handleSortChange">
|
||||
<el-table-column width="65px" fixed="left">
|
||||
<template v-slot="scope">
|
||||
<el-radio :label="scope.row.locationId" v-model="locationId"> </el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="locationId" label="库位号" fixed="left" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="vehicleId" label="箱号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="isLock" label="锁定状态" min-width="120px" :formatter="isLockFormat"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="isOccupy" label="占用状态" :formatter="isOccupyFormat"
|
||||
min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="equipmentId" label="设备号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="tunnelId" label="巷道号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="lRow" label="排" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="lCol" label="列"
|
||||
min-width="120px" sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="lLayer" label="层" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="lDepth" label="深度" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="subArea" label="子区域" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<!-- <el-table-column fixed="right" label="操作" width="170px">
|
||||
<template v-slot="scope">
|
||||
<div style="display: inline-block; align-content: center;">
|
||||
<el-button type="primary"
|
||||
@click="editCurrentRowFormEntity(scope.row)">编辑</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column> -->
|
||||
</el-table>
|
||||
<br/>
|
||||
<el-pagination v-model:current-page="baseTableQuery.currentPage"
|
||||
v-model:page-size="baseTableQuery.pageSize" :page-sizes="[10, 25, 50]" :small="false"
|
||||
:disabled="false" :background="false" :default-page-size="10" @size-change="search"
|
||||
@current-change="search" layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="baseTableQuery.total"/>
|
||||
</div>
|
||||
<el-dialog v-model="rowEditFlag" title="工作信息" width="40%" draggable :show-close="false">
|
||||
<el-form ref="rowEditFormRef" :model="rowFormEntity" :label-position="labelPosition"
|
||||
label-width="100px" style="max-width: 100%" status-icon>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="工作编号">
|
||||
<el-input v-model="rowFormEntity.workIndex" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="工单号">
|
||||
<el-input v-model="rowFormEntity.workOrder" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="总成号">
|
||||
<el-input v-model="rowFormEntity.productId" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="成品号">
|
||||
<el-input v-model="rowFormEntity.singleProductId" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="料盒号">
|
||||
<el-input v-model="rowFormEntity.boxNo" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="料号">
|
||||
<el-input v-model="rowFormEntity.goodsId" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="需求数量">
|
||||
<el-input-number v-model.number="rowFormEntity.needNum" controls-position="right"
|
||||
:min="0" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="已完成数量">
|
||||
<el-input-number v-model.number="rowFormEntity.finishNum" controls-position="right"
|
||||
:min="0" :max="rowFormEntity.needNum" clearable/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="已分配数量">
|
||||
<el-input-number v-model.number="rowFormEntity.distributeNum"
|
||||
controls-position="right" :min="0" :max="rowFormEntity.needNum" clearable/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="工作状态">
|
||||
<el-select-v2 v-model="rowFormEntity.workStatus" placeholder="请选择工作状态"
|
||||
:options="workStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="缺料状态">
|
||||
<el-select-v2 v-model="rowFormEntity.lackStatus" placeholder="请选择缺料状态"
|
||||
:options="lackStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button type="primary" @click="rowEditFlag = false">取消</el-button>
|
||||
<el-button type="success" @click="submitUpdateRow(rowFormEntity)">
|
||||
确定
|
||||
</el-button>
|
||||
</span>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-config-provider>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import { queryTasksByPage } from '@/api/taskQuery.js'
|
||||
import { timeFormatter, wmsTaskTypeFormatter, wmsTaskStatusFormatter } from '@/utils/formatter.js'
|
||||
import { ref, reactive, onMounted, nextTick, onBeforeUnmount } from 'vue'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { genTableRequest } from '@/utils/generator.js'
|
||||
import { labelPosition } from '@/constant/form.js'
|
||||
import { taskTypeOptions, wmsTaskStatusOptions } from '@/constant/options.js'
|
||||
import { addAllOptionOfOptions } from '@/utils/generator.js'
|
||||
import { loading } from '@/utils/loading'
|
||||
import {timeFormatter} from '@/utils/formatter.js'
|
||||
import {ref, reactive, onMounted, nextTick, onBeforeUnmount} from 'vue'
|
||||
import {ElMessage} from 'element-plus'
|
||||
import {genTableRequest, addAllOptionOfOptions} from '@/utils/generator.js'
|
||||
import {labelPosition} from '@/constant/form.js'
|
||||
import {loading} from '@/utils/loading'
|
||||
import {queryLocationsByPage} from "@/api/location";
|
||||
import {lockOptions, occupyOptions} from "@/constant/options";
|
||||
|
||||
/**
|
||||
* 常量定义
|
||||
*/
|
||||
|
|
@ -207,259 +197,259 @@ let maxHeight = ref(window.innerHeight * 0.55)
|
|||
let tableLoading = ref(false)
|
||||
let tableData = ref([])
|
||||
let baseTableQuery = reactive({
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
sortBy: new Map([['createTime', true]]),// 按照成品号顺序排序
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
sortBy: new Map([['lDepth', true], ['lLayer', true], ['lCol', true], ['lRow', true]]),// 按照成品号顺序排序
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
})
|
||||
let searchQueryFormEntity = reactive({
|
||||
vehicleId: '',
|
||||
goodsId: '',
|
||||
taskType: -99,
|
||||
taskStatus: -99
|
||||
locationId: '',
|
||||
vehicleId: '',
|
||||
isLock: -99,
|
||||
isOccupy: -99
|
||||
})
|
||||
let searchQueryFormRef = ref()
|
||||
let rowEditFlag = ref(false)
|
||||
let taskId = ''
|
||||
let locationId = ''
|
||||
let rowEditFormRef = ref()
|
||||
let rowFormEntity = reactive({})
|
||||
/**
|
||||
* 系统方法
|
||||
*/
|
||||
onMounted(() => {
|
||||
nextTick(() => {
|
||||
window.addEventListener('resize', resizeHeight)
|
||||
search()
|
||||
})
|
||||
nextTick(() => {
|
||||
window.addEventListener('resize', resizeHeight)
|
||||
search()
|
||||
})
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
nextTick(() => {
|
||||
window.removeEventListener('resize', resizeHeight)
|
||||
})
|
||||
nextTick(() => {
|
||||
window.removeEventListener('resize', resizeHeight)
|
||||
})
|
||||
})
|
||||
const resizeHeight = () => {
|
||||
maxHeight.value = window.innerHeight * 0.55
|
||||
maxHeight.value = window.innerHeight * 0.55
|
||||
}
|
||||
/**
|
||||
* 自定义方法
|
||||
*/
|
||||
// 查询
|
||||
const search = () => {
|
||||
tableLoading.value = true
|
||||
let request = genTableRequest(baseTableQuery)
|
||||
// 设定查询参数
|
||||
request.vehicleId = searchQueryFormEntity.vehicleId.trim()
|
||||
request.goodsId = searchQueryFormEntity.goodsId.trim()
|
||||
request.taskType = searchQueryFormEntity.taskType == -99 ? null : searchQueryFormEntity.taskType
|
||||
request.taskStatus = searchQueryFormEntity.taskStatus == -99 ? null : searchQueryFormEntity.taskStatus
|
||||
queryTasksByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
tableData.value = data.lists
|
||||
baseTableQuery.total = data.total
|
||||
} else {
|
||||
tableData.value = []
|
||||
baseTableQuery.total = 0
|
||||
}
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('查询数据异常。')
|
||||
}).finally(() => {
|
||||
tableLoading.value = false
|
||||
})
|
||||
tableLoading.value = true
|
||||
let request = genTableRequest(baseTableQuery)
|
||||
// 设定查询参数
|
||||
request.locationId = searchQueryFormEntity.locationId.trim()
|
||||
request.vehicleId = searchQueryFormEntity.vehicleId.trim()
|
||||
request.isLock = searchQueryFormEntity.isLock === -99 ? null : searchQueryFormEntity.isLock
|
||||
request.isOccupy = searchQueryFormEntity.isOccupy === -99 ? null : searchQueryFormEntity.isOccupy
|
||||
queryLocationsByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
tableData.value = data.lists
|
||||
baseTableQuery.total = data.total
|
||||
} else {
|
||||
tableData.value = []
|
||||
baseTableQuery.total = 0
|
||||
}
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('查询数据异常。')
|
||||
}).finally(() => {
|
||||
tableLoading.value = false
|
||||
})
|
||||
}
|
||||
const clearQuery = () => {
|
||||
searchQueryFormEntity.vehicleId = ''
|
||||
searchQueryFormEntity.goodsId = ''
|
||||
searchQueryFormEntity.locationId = ''
|
||||
searchQueryFormEntity.vehicleId = ''
|
||||
}
|
||||
const handleSortChange = (data) => {
|
||||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order == 'ascending')
|
||||
search()
|
||||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order.toLowerCase() === 'ascending')
|
||||
search()
|
||||
}
|
||||
const getCurrentRow = (row) => {
|
||||
taskId = row.taskId
|
||||
locationId = row.locationId
|
||||
}
|
||||
const timeFormat = (row, column, cellValue, index) => {
|
||||
return timeFormatter(cellValue)
|
||||
return timeFormatter(cellValue)
|
||||
}
|
||||
const taskTypeFormat = (row, column, cellValue, index) => {
|
||||
return wmsTaskTypeFormatter(cellValue)
|
||||
const isLockFormat = (row, column, cellValue, index) => {
|
||||
return cellValue === 1 ? '已锁定' : '未锁定'
|
||||
}
|
||||
const taskStatusFormat = (row, column, cellValue, index) => {
|
||||
return wmsTaskStatusFormatter(cellValue)
|
||||
const isOccupyFormat = (row, column, cellValue, index) => {
|
||||
return cellValue === 1 ? '占用' : '空闲'
|
||||
}
|
||||
// 编辑弹框
|
||||
const editCurrentRowFormEntity = (row) => {
|
||||
// 设置form值
|
||||
rowFormEntity.workIndex = row.workIndex
|
||||
rowFormEntity.workOrder = row.workOrder
|
||||
rowFormEntity.productId = row.productId
|
||||
rowFormEntity.singleProductId = row.singleProductId
|
||||
rowFormEntity.boxNo = row.boxNo
|
||||
rowFormEntity.goodsId = row.goodsId
|
||||
rowFormEntity.needNum = row.needNum
|
||||
rowFormEntity.distributeNum = row.distributeNum
|
||||
rowFormEntity.finishNum = row.finishNum
|
||||
rowFormEntity.workStatus = row.workStatus
|
||||
rowFormEntity.lackStatus = row.lackStatus
|
||||
// 弹出框
|
||||
rowEditFlag.value = true
|
||||
// 设置form值
|
||||
rowFormEntity.workIndex = row.workIndex
|
||||
rowFormEntity.workOrder = row.workOrder
|
||||
rowFormEntity.productId = row.productId
|
||||
rowFormEntity.singleProductId = row.singleProductId
|
||||
rowFormEntity.boxNo = row.boxNo
|
||||
rowFormEntity.goodsId = row.goodsId
|
||||
rowFormEntity.needNum = row.needNum
|
||||
rowFormEntity.distributeNum = row.distributeNum
|
||||
rowFormEntity.finishNum = row.finishNum
|
||||
rowFormEntity.workStatus = row.workStatus
|
||||
rowFormEntity.lackStatus = row.lackStatus
|
||||
// 弹出框
|
||||
rowEditFlag.value = true
|
||||
}
|
||||
// 关闭当前缺料工作
|
||||
const closeLackWork = (row) => {
|
||||
const request = {
|
||||
workIndex: row.workIndex,
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
const request = {
|
||||
workIndex: row.workIndex,
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
loading.open('关闭中...')
|
||||
closeCurrentWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
ElMessage.success(response.message)
|
||||
search()
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
loading.open('关闭中...')
|
||||
closeCurrentWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
ElMessage.success(response.message)
|
||||
search()
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('请求异常。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('请求异常。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}
|
||||
// 更新当前行数据
|
||||
const submitUpdateRow = (rowFormEntity) => {
|
||||
const request = {
|
||||
workIndex: rowFormEntity.workIndex,
|
||||
distributeNum: rowFormEntity.distributeNum,
|
||||
finishNum: rowFormEntity.finishNum,
|
||||
workStatus: rowFormEntity.workStatus,
|
||||
lackStatus: rowFormEntity.lackStatus,
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
const request = {
|
||||
workIndex: rowFormEntity.workIndex,
|
||||
distributeNum: rowFormEntity.distributeNum,
|
||||
finishNum: rowFormEntity.finishNum,
|
||||
workStatus: rowFormEntity.workStatus,
|
||||
lackStatus: rowFormEntity.lackStatus,
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
loading.open('更新中...')
|
||||
updateKateWorks(request).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
ElMessage.success('更新数据成功。')
|
||||
rowEditFlag.value = false
|
||||
search()
|
||||
} else {
|
||||
ElMessage.error('更新数据失败。')
|
||||
}
|
||||
loading.open('更新中...')
|
||||
updateKateWorks(request).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
ElMessage.success('更新数据成功。')
|
||||
rowEditFlag.value = false
|
||||
search()
|
||||
} else {
|
||||
ElMessage.error('更新数据失败。')
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('更新数据异常。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('更新数据异常。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
.content {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.work-area {
|
||||
width: 100%;
|
||||
/* padding: 5px; */
|
||||
width: 100%;
|
||||
/* padding: 5px; */
|
||||
}
|
||||
|
||||
.search-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 40%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 40%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.table-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 60%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 60%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.el-form-item {
|
||||
margin: 5px 5px 5px 5px;
|
||||
margin: 5px 5px 5px 5px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input {
|
||||
width: 196px;
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input-number {
|
||||
width: 196px;
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.el-form-item .el-select-v2 {
|
||||
width: 196px;
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.table-class {
|
||||
margin: 5px 5px 5px 5px;
|
||||
width: inherit;
|
||||
margin: 5px 5px 5px 5px;
|
||||
width: inherit;
|
||||
}
|
||||
|
||||
.el-pagination {
|
||||
padding-left: 5px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.my-autocomplete li {
|
||||
width: 196px;
|
||||
line-height: normal;
|
||||
padding: 7px;
|
||||
width: 196px;
|
||||
line-height: normal;
|
||||
padding: 7px;
|
||||
}
|
||||
|
||||
.my-autocomplete li .name {
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.my-autocomplete li .addr {
|
||||
font-size: 12px;
|
||||
color: #b4b4b4;
|
||||
font-size: 12px;
|
||||
color: #b4b4b4;
|
||||
}
|
||||
|
||||
.my-autocomplete li .highlighted .addr {
|
||||
color: #ddd;
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
.my-autocomplete li .goods_id {
|
||||
color: brown;
|
||||
color: brown;
|
||||
}
|
||||
|
||||
.my-autocomplete li .goods_name {
|
||||
color: cornflowerblue;
|
||||
color: cornflowerblue;
|
||||
}
|
||||
|
||||
.btn-search {
|
||||
height: 30px;
|
||||
width: 80px;
|
||||
margin: auto 5px 5px auto;
|
||||
color: black;
|
||||
height: 30px;
|
||||
width: 80px;
|
||||
margin: auto 5px 5px auto;
|
||||
color: black;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,337 +1,455 @@
|
|||
<template>
|
||||
<div style="margin-bottom: 10px; height: 100%; padding-left: 1%; padding-right: 1%;">
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-container class="content">
|
||||
<div class="work-area">
|
||||
<fieldset class="search-area">
|
||||
<el-form ref="searchQueryFormRef" :model="searchQueryFormEntity" :label-position="labelPosition"
|
||||
label-width="158px" style="max-width: 100%" status-icon>
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="锁定状态">
|
||||
<el-select-v2 style="width: 196px;" v-model="searchQueryFormEntity.isLock" placeholder="锁定状态"
|
||||
:options="addAllOptionOfOptions(lockOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="占用状态">
|
||||
<el-select-v2 style="width: 196px;" v-model="searchQueryFormEntity.isOccupy" placeholder="占用状态"
|
||||
:options="addAllOptionOfOptions(occupyOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="库位号">
|
||||
<el-input v-model="searchQueryFormEntity.locationId" @keyup.enter="search()" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="箱号">
|
||||
<el-input v-model="searchQueryFormEntity.vehicleId" @keyup.enter="search()" clearable/>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<div style="align-content: center;">
|
||||
<el-row>
|
||||
<el-input v-model="standIdQuery" style="width: 158px; margin-right: 10px;" placeholder="站台号"
|
||||
:suffix-icon="Search" />
|
||||
<el-select-v2 v-model="standTypeQuery" style="width: 158px; margin-right: 10px;"
|
||||
placeholder="请选择站台类型" :options="standTypeOptions" @change="search()"></el-select-v2>
|
||||
<el-button type="primary" @click="search()">搜索</el-button>
|
||||
<el-button type="warning" @click="reset()">重置</el-button>
|
||||
<el-button type="primary" class="btn-search" @click="search()">查询</el-button>
|
||||
<el-button type="warning" class="btn-search" @click="clearQuery()">清除输入</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<el-table :data="standList" stripe border v-loading="loading" class="table-class" highlight-current-row
|
||||
max-height="650px" @row-click="getCurrentRow" :header-cell-style="{ 'text-align': 'center' }"
|
||||
:cell-style="{ 'text-align': 'center' }">
|
||||
<el-table-column width="65px" fixed="left">
|
||||
<template v-slot="scope">
|
||||
<el-radio :label="scope.row.standId" v-model="standId"> </el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="standId" label="id" fixed="left" min-width="120px" show-overflow-tooltip />
|
||||
<el-table-column prop="allowIn" label="允许入库" min-width="120px" show-overflow-tooltip />
|
||||
<el-table-column prop="allowOut" label="允许出库" min-width="120px" show-overflow-tooltip />
|
||||
<el-table-column prop="isLock" label="锁定" :formatter="isLockFormat" min-width="120px"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="standStatus" label="状态" :formatter="standStatusFormat" show-overflow-tooltip
|
||||
min-width="120px" />
|
||||
<el-table-column prop="equipmentId" label="设备号" min-width="120px" show-overflow-tooltip />
|
||||
<el-table-column prop="areaId" label="区域" min-width="120px" />
|
||||
<el-table-column prop="standType" label="类型" :formatter="standTypeFormat" min-width="120px" />
|
||||
<el-table-column prop="standIp" label="电脑ip地址" min-width="120px" />
|
||||
<el-table-column prop="outerId" label="外部编号" min-width="120px" />
|
||||
<el-table-column prop="lastUseTime" label="上次使用时间" :formatter="timeFormat" min-width="120px"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column prop="pickGoods" label="拣选料号" show-overflow-tooltip min-width="120px" />
|
||||
<el-table-column prop="pickVehicle" label="拣选箱号" show-overflow-tooltip min-width="120px" />
|
||||
<el-table-column prop="pickTip" label="提示" show-overflow-tooltip min-width="120px" />
|
||||
<el-table-column prop="pickVehicleCount" label="站台料箱数量" min-width="120px" />
|
||||
<el-table-column fixed="right" label="操作" width="120px">
|
||||
<template v-slot="scope">
|
||||
<el-button plain type="primary" @click="editCurrentRow(scope.row)">编辑</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<br />
|
||||
<el-pagination v-model:current-page="currentPage" v-model:page-size="pageSize" :page-sizes="[10, 25, 50]"
|
||||
:small="false" :disabled="false" :background="false" :default-page-size="10"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="search"
|
||||
@current-change="search" />
|
||||
<el-dialog v-model="dialogVisible" title="编辑站台信息" width="40%" draggable :show-close="false">
|
||||
<div
|
||||
style="max-width: 100%; max-height: 500px; overflow: auto; display: flex; justify-content: center;">
|
||||
<el-form ref="standFormRef" :model="standFormEntity" :label-position="labelPosition"
|
||||
label-width="100px" style="width: 95%;" :rules="rules" status-icon>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="站台号" prop="standId">
|
||||
<el-input v-model="standFormEntity.standId" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="类型" prop="isLock">
|
||||
<el-select-v2 v-model="standFormEntity.standType" placeholder="请选择类型"
|
||||
:options="standTypeOptions" disabled></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="锁定" prop="isLock">
|
||||
<el-select-v2 v-model="standFormEntity.isLock" placeholder="请选择是否锁定"
|
||||
:options="isLockOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="状态" prop="standStatus">
|
||||
<el-select-v2 v-model="standFormEntity.standStatus" placeholder="请选择站台状态"
|
||||
:options="standStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="上次使用时间" prop="lastUseTime">
|
||||
<el-input v-model="standFormEntity.lastUseTime" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="站台料箱数量" prop="pickVehicleCount">
|
||||
<el-input-number v-model.number="standFormEntity.pickVehicleCount"
|
||||
controls-position="right" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</div>
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="submitInfo(standFormEntity)">
|
||||
确定
|
||||
</el-button>
|
||||
</span>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<div class="table-area">
|
||||
<el-table :data="tableData" stripe border v-loading="tableLoading" class="table-class"
|
||||
:max-height="maxHeight" highlight-current-row @row-click="getCurrentRow"
|
||||
:header-cell-style="{ 'text-align': 'center' }" :cell-style="{ 'text-align': 'center' }"
|
||||
@sort-change="handleSortChange">
|
||||
<el-table-column width="65px" fixed="left">
|
||||
<template v-slot="scope">
|
||||
<el-radio :label="scope.row.locationId" v-model="locationId"> </el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="locationId" label="库位号" fixed="left" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="vehicleId" label="箱号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="isLock" label="锁定状态" min-width="120px" :formatter="isLockFormat"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="isOccupy" label="占用状态" :formatter="isOccupyFormat"
|
||||
min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="equipmentId" label="设备号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="tunnelId" label="巷道号" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="lRow" label="排" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="lCol" label="列"
|
||||
min-width="120px" sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="lLayer" label="层" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="lDepth" label="深度" min-width="120px"
|
||||
sortable="custom" show-overflow-tooltip/>
|
||||
<el-table-column prop="subArea" label="子区域" min-width="120px" sortable="custom"
|
||||
show-overflow-tooltip/>
|
||||
<!-- <el-table-column fixed="right" label="操作" width="170px">
|
||||
<template v-slot="scope">
|
||||
<div style="display: inline-block; align-content: center;">
|
||||
<el-button type="primary"
|
||||
@click="editCurrentRowFormEntity(scope.row)">编辑</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</el-config-provider>
|
||||
</div>
|
||||
</el-table-column> -->
|
||||
</el-table>
|
||||
<br/>
|
||||
<el-pagination v-model:current-page="baseTableQuery.currentPage"
|
||||
v-model:page-size="baseTableQuery.pageSize" :page-sizes="[10, 25, 50]" :small="false"
|
||||
:disabled="false" :background="false" :default-page-size="10" @size-change="search"
|
||||
@current-change="search" layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="baseTableQuery.total"/>
|
||||
</div>
|
||||
<el-dialog v-model="rowEditFlag" title="工作信息" width="40%" draggable :show-close="false">
|
||||
<el-form ref="rowEditFormRef" :model="rowFormEntity" :label-position="labelPosition"
|
||||
label-width="100px" style="max-width: 100%" status-icon>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="工作编号">
|
||||
<el-input v-model="rowFormEntity.workIndex" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="工单号">
|
||||
<el-input v-model="rowFormEntity.workOrder" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="总成号">
|
||||
<el-input v-model="rowFormEntity.productId" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="成品号">
|
||||
<el-input v-model="rowFormEntity.singleProductId" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="料盒号">
|
||||
<el-input v-model="rowFormEntity.boxNo" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="料号">
|
||||
<el-input v-model="rowFormEntity.goodsId" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="需求数量">
|
||||
<el-input-number v-model.number="rowFormEntity.needNum" controls-position="right"
|
||||
:min="0" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="已完成数量">
|
||||
<el-input-number v-model.number="rowFormEntity.finishNum" controls-position="right"
|
||||
:min="0" :max="rowFormEntity.needNum" clearable/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="已分配数量">
|
||||
<el-input-number v-model.number="rowFormEntity.distributeNum"
|
||||
controls-position="right" :min="0" :max="rowFormEntity.needNum" clearable/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="工作状态">
|
||||
<el-select-v2 v-model="rowFormEntity.workStatus" placeholder="请选择工作状态"
|
||||
:options="workStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="缺料状态">
|
||||
<el-select-v2 v-model="rowFormEntity.lackStatus" placeholder="请选择缺料状态"
|
||||
:options="lackStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button type="primary" @click="rowEditFlag = false">取消</el-button>
|
||||
<el-button type="success" @click="submitUpdateRow(rowFormEntity)">
|
||||
确定
|
||||
</el-button>
|
||||
</span>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import { getStandsByPage, updateStandInfo } from '@/api/stand.js'
|
||||
import { errorBox } from '@/utils/myMessageBox.js'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { ref, reactive } from 'vue'
|
||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||
import { Search } from '@element-plus/icons-vue'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
</script>
|
||||
<script>
|
||||
export default {
|
||||
name: 'standSettings',
|
||||
data() {
|
||||
return {
|
||||
standList: [],
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
standIdQuery: '',
|
||||
standTypeQuery: -99,
|
||||
loading: true,
|
||||
dialogVisible: false,
|
||||
standId: '',
|
||||
standFormEntity: reactive({}),
|
||||
standFormRef: ref(),
|
||||
labelPosition: 'top',
|
||||
rules: reactive({}),
|
||||
standTypeOptions: [
|
||||
{
|
||||
value: -99,
|
||||
label: '全部'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '入库站台'
|
||||
},
|
||||
{
|
||||
value: 2,
|
||||
label: '备料站台'
|
||||
},
|
||||
{
|
||||
value: 3,
|
||||
label: '堆垛机'
|
||||
}
|
||||
],
|
||||
isLockOptions: [
|
||||
{
|
||||
value: 0,
|
||||
label: '未锁定'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '已锁定'
|
||||
},
|
||||
],
|
||||
standStatusOptions: [
|
||||
{
|
||||
value: 0,
|
||||
label: '可用'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '不可用'
|
||||
},
|
||||
],
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.search()
|
||||
},
|
||||
methods: {
|
||||
search() {
|
||||
this.loading = true
|
||||
const request = {
|
||||
pageNo: this.currentPage,
|
||||
pageSize: this.pageSize,
|
||||
standId: this.standIdQuery.trim(),
|
||||
standType: this.standTypeQuery == -99 ? null : this.standTypeQuery,
|
||||
userName: store.getters.getUserName
|
||||
}
|
||||
getStandsByPage(request).then(res => {
|
||||
const tableResponse = res.data
|
||||
if (tableResponse.code == 0) {
|
||||
this.standList = tableResponse.returnData.lists
|
||||
this.total = tableResponse.returnData.total
|
||||
} else {
|
||||
errorBox(tableResponse.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('查询站台信息错误')
|
||||
})
|
||||
this.loading = false
|
||||
},
|
||||
dateFormat: (row, column, cellValue, index) => {
|
||||
return dateFormatter(cellValue)
|
||||
},
|
||||
timeFormat: (row, column, cellValue, index) => {
|
||||
return timeFormatter(cellValue)
|
||||
},
|
||||
standTypeFormat: (row, column, cellValue, index) => {
|
||||
switch (cellValue) {
|
||||
case 1:
|
||||
return '入库站台'
|
||||
case 2:
|
||||
return '备料站台'
|
||||
case 3:
|
||||
return '堆垛机'
|
||||
default:
|
||||
return '未知'
|
||||
}
|
||||
},
|
||||
isLockFormat: (row, column, cellValue, index) => {
|
||||
switch (cellValue) {
|
||||
case 0:
|
||||
return '未锁定'
|
||||
case 1:
|
||||
return '已锁定'
|
||||
default:
|
||||
return '未知'
|
||||
}
|
||||
},
|
||||
standStatusFormat: (row, column, cellValue, index) => {
|
||||
switch (cellValue) {
|
||||
case 0:
|
||||
return '可用'
|
||||
case 1:
|
||||
return '不可用'
|
||||
default:
|
||||
return '未知'
|
||||
}
|
||||
},
|
||||
reset() {
|
||||
this.standIdQuery = ''
|
||||
this.standTypeQuery = -99
|
||||
this.search()
|
||||
},
|
||||
editCurrentRow(row) {
|
||||
this.standId = row.standId
|
||||
this.standFormEntity = {
|
||||
standId: row.standId,
|
||||
standType: row.standType,
|
||||
isLock: row.isLock,
|
||||
standStatus: row.standStatus,
|
||||
lastUseTime: row.lastUseTime,
|
||||
pickVehicleCount: row.pickVehicleCount,
|
||||
}
|
||||
this.dialogVisible = true
|
||||
},
|
||||
submitInfo(formData) {
|
||||
const params = {
|
||||
standId: formData.standId,
|
||||
standType: formData.standType,
|
||||
isLock: formData.isLock,
|
||||
standStatus: formData.standStatus,
|
||||
lastUseTime: formData.lastUseTime,
|
||||
pickVehicleCount: formData.pickVehicleCount,
|
||||
userName: store.getters.getUserName
|
||||
}
|
||||
updateStandInfo(params).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
this.dialogVisible = false
|
||||
ElMessage.success('更新站台信息成功。')
|
||||
this.search()
|
||||
} else {
|
||||
errorBox(res.data.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('更新站台信息失败。')
|
||||
})
|
||||
},
|
||||
getCurrentRow(row) {
|
||||
this.standId = row.standId
|
||||
},
|
||||
},
|
||||
import {timeFormatter} from '@/utils/formatter.js'
|
||||
import {ref, reactive, onMounted, nextTick, onBeforeUnmount} from 'vue'
|
||||
import {ElMessage} from 'element-plus'
|
||||
import {genTableRequest, addAllOptionOfOptions} from '@/utils/generator.js'
|
||||
import {labelPosition} from '@/constant/form.js'
|
||||
import {loading} from '@/utils/loading'
|
||||
import {queryLocationsByPage} from "@/api/location";
|
||||
import {lockOptions, occupyOptions} from "@/constant/options";
|
||||
|
||||
/**
|
||||
* 常量定义
|
||||
*/
|
||||
const STAND_ID = store.getters.getStandId
|
||||
const USER_NAME = store.getters.getUserName
|
||||
/**
|
||||
* 变量定义
|
||||
*/
|
||||
let maxHeight = ref(window.innerHeight * 0.55)
|
||||
let tableLoading = ref(false)
|
||||
let tableData = ref([])
|
||||
let baseTableQuery = reactive({
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
sortBy: new Map([['lDepth', true], ['lLayer', true], ['lCol', true], ['lRow', true]]),// 按照成品号顺序排序
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
})
|
||||
let searchQueryFormEntity = reactive({
|
||||
locationId: '',
|
||||
vehicleId: '',
|
||||
isLock: -99,
|
||||
isOccupy: -99
|
||||
})
|
||||
let searchQueryFormRef = ref()
|
||||
let rowEditFlag = ref(false)
|
||||
let locationId = ''
|
||||
let rowEditFormRef = ref()
|
||||
let rowFormEntity = reactive({})
|
||||
/**
|
||||
* 系统方法
|
||||
*/
|
||||
onMounted(() => {
|
||||
nextTick(() => {
|
||||
window.addEventListener('resize', resizeHeight)
|
||||
search()
|
||||
})
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
nextTick(() => {
|
||||
window.removeEventListener('resize', resizeHeight)
|
||||
})
|
||||
})
|
||||
const resizeHeight = () => {
|
||||
maxHeight.value = window.innerHeight * 0.55
|
||||
}
|
||||
/**
|
||||
* 自定义方法
|
||||
*/
|
||||
// 查询
|
||||
const search = () => {
|
||||
tableLoading.value = true
|
||||
let request = genTableRequest(baseTableQuery)
|
||||
// 设定查询参数
|
||||
request.locationId = searchQueryFormEntity.locationId.trim()
|
||||
request.vehicleId = searchQueryFormEntity.vehicleId.trim()
|
||||
request.isLock = searchQueryFormEntity.isLock === -99 ? null : searchQueryFormEntity.isLock
|
||||
request.isOccupy = searchQueryFormEntity.isOccupy === -99 ? null : searchQueryFormEntity.isOccupy
|
||||
queryLocationsByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
tableData.value = data.lists
|
||||
baseTableQuery.total = data.total
|
||||
} else {
|
||||
tableData.value = []
|
||||
baseTableQuery.total = 0
|
||||
}
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('查询数据异常。')
|
||||
}).finally(() => {
|
||||
tableLoading.value = false
|
||||
})
|
||||
}
|
||||
const clearQuery = () => {
|
||||
searchQueryFormEntity.locationId = ''
|
||||
searchQueryFormEntity.vehicleId = ''
|
||||
}
|
||||
const handleSortChange = (data) => {
|
||||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order.toLowerCase() === 'ascending')
|
||||
search()
|
||||
}
|
||||
const getCurrentRow = (row) => {
|
||||
locationId = row.locationId
|
||||
}
|
||||
const timeFormat = (row, column, cellValue, index) => {
|
||||
return timeFormatter(cellValue)
|
||||
}
|
||||
const isLockFormat = (row, column, cellValue, index) => {
|
||||
return cellValue === 1 ? '已锁定' : '未锁定'
|
||||
}
|
||||
const isOccupyFormat = (row, column, cellValue, index) => {
|
||||
return cellValue === 1 ? '占用' : '空闲'
|
||||
}
|
||||
// 编辑弹框
|
||||
const editCurrentRowFormEntity = (row) => {
|
||||
// 设置form值
|
||||
rowFormEntity.workIndex = row.workIndex
|
||||
rowFormEntity.workOrder = row.workOrder
|
||||
rowFormEntity.productId = row.productId
|
||||
rowFormEntity.singleProductId = row.singleProductId
|
||||
rowFormEntity.boxNo = row.boxNo
|
||||
rowFormEntity.goodsId = row.goodsId
|
||||
rowFormEntity.needNum = row.needNum
|
||||
rowFormEntity.distributeNum = row.distributeNum
|
||||
rowFormEntity.finishNum = row.finishNum
|
||||
rowFormEntity.workStatus = row.workStatus
|
||||
rowFormEntity.lackStatus = row.lackStatus
|
||||
// 弹出框
|
||||
rowEditFlag.value = true
|
||||
}
|
||||
// 关闭当前缺料工作
|
||||
const closeLackWork = (row) => {
|
||||
const request = {
|
||||
workIndex: row.workIndex,
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
loading.open('关闭中...')
|
||||
closeCurrentWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
ElMessage.success(response.message)
|
||||
search()
|
||||
} else {
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('请求异常。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}
|
||||
// 更新当前行数据
|
||||
const submitUpdateRow = (rowFormEntity) => {
|
||||
const request = {
|
||||
workIndex: rowFormEntity.workIndex,
|
||||
distributeNum: rowFormEntity.distributeNum,
|
||||
finishNum: rowFormEntity.finishNum,
|
||||
workStatus: rowFormEntity.workStatus,
|
||||
lackStatus: rowFormEntity.lackStatus,
|
||||
standId: STAND_ID,
|
||||
userName: USER_NAME
|
||||
}
|
||||
loading.open('更新中...')
|
||||
updateKateWorks(request).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
ElMessage.success('更新数据成功。')
|
||||
rowEditFlag.value = false
|
||||
search()
|
||||
} else {
|
||||
ElMessage.error('更新数据失败。')
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('更新数据异常。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.el-pagination {
|
||||
padding-left: 5px;
|
||||
.content {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.el-row .el-button {
|
||||
width: 72px;
|
||||
margin-left: 0px;
|
||||
margin-right: 5px;
|
||||
.work-area {
|
||||
width: 100%;
|
||||
/* padding: 5px; */
|
||||
}
|
||||
|
||||
.search-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 40%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.table-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 60%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.el-form-item {
|
||||
margin: 5px 5px 5px 5px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input {
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input-number {
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.el-form-item .el-select-v2 {
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.table-class {
|
||||
width: 100%;
|
||||
margin: 5px 5px 5px 5px;
|
||||
width: inherit;
|
||||
}
|
||||
|
||||
.el-row .el-form-item {
|
||||
width: 10% inherit;
|
||||
justify-content: center;
|
||||
.el-pagination {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.el-row .el-form-item .el-select-v2 {
|
||||
width: 100% !important;
|
||||
.my-autocomplete li {
|
||||
width: 196px;
|
||||
line-height: normal;
|
||||
padding: 7px;
|
||||
}
|
||||
|
||||
.el-row .el-form-item .el-input-number {
|
||||
width: 100% !important;
|
||||
.my-autocomplete li .name {
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.el-row .el-form-item .el-button {
|
||||
margin: auto;
|
||||
.my-autocomplete li .addr {
|
||||
font-size: 12px;
|
||||
color: #b4b4b4;
|
||||
}
|
||||
|
||||
.title-area {
|
||||
display: flex;
|
||||
/* min-height: 10%; */
|
||||
max-height: max-content;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
flex-direction: column;
|
||||
padding: 10px;
|
||||
.my-autocomplete li .highlighted .addr {
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
.my-autocomplete li .goods_id {
|
||||
color: brown;
|
||||
}
|
||||
|
||||
.my-autocomplete li .goods_name {
|
||||
color: cornflowerblue;
|
||||
}
|
||||
|
||||
.btn-search {
|
||||
height: 30px;
|
||||
width: 80px;
|
||||
margin: auto 5px 5px auto;
|
||||
color: black;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -4,7 +4,7 @@
|
|||
<div class="work-area">
|
||||
<fieldset class="search-area">
|
||||
<el-form ref="stockQueryFormRef" :model="stockQuery" :label-position="labelPosition"
|
||||
label-width="158px" style="max-width: 100%" status-icon>
|
||||
label-width="auto" style="max-width: 100%" status-icon>
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="箱号">
|
||||
|
|
@ -226,8 +226,7 @@
|
|||
<script setup>
|
||||
import store from '@/store'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import { queryStocksByPage, updateStockInfo } from '@/api/stock.js'
|
||||
import { getGoodsInfoByGoodsId } from '@/api/goods.js'
|
||||
import { queryStocksByPage } from '@/api/stock.js'
|
||||
import { exportStockExcel } from '@/api/excel.js'
|
||||
import { dateFormatter, locationFormatter, timeFormatter, yesOrNoFormatter } from '@/utils/formatter.js'
|
||||
import { ref, reactive, onMounted, nextTick, onBeforeUnmount } from 'vue'
|
||||
|
|
@ -297,8 +296,8 @@ const search = () => {
|
|||
request.locationId = stockQuery.locationId.trim()
|
||||
request.stockStatus = stockQuery.stockStatus == -99 ? null : stockQuery.stockStatus
|
||||
request.goodsStatus = stockQuery.goodsStatus == -99 ? null : stockQuery.goodsStatus
|
||||
request.fromDate = stockQuery.fromDate
|
||||
request.toDate = stockQuery.toDate
|
||||
request.fromDate = stockQuery.fromDate == null ? null : dateFormatter(stockQuery.fromDate)
|
||||
request.toDate = stockQuery.toDate == null ? null : dateFormatter(stockQuery.toDate)
|
||||
queryStocksByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<el-form-item label="料号">
|
||||
<el-input v-model="searchQueryFormEntity.goodsId" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="载具号">
|
||||
<el-form-item label="箱号">
|
||||
<el-input v-model="searchQueryFormEntity.vehicleId" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="创建时间from">
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@
|
|||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="任务类型">
|
||||
<el-select-v2 v-model="rowEditFormEntity.taskType" placeholder="请选择任务类型"
|
||||
<el-select-v2 style="width: 196px" v-model="rowEditFormEntity.taskType" placeholder="请选择任务类型"
|
||||
:options="taskTypeOptions" disabled></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
|
@ -120,7 +120,7 @@
|
|||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="任务状态">
|
||||
<el-select-v2 v-model="rowEditFormEntity.taskStatus" placeholder="请选择任务状态"
|
||||
<el-select-v2 style="width: 196px" v-model="rowEditFormEntity.taskStatus" placeholder="请选择任务状态"
|
||||
:options="wmsTaskStatusOptions"></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
|
|
|||
|
|
@ -1,462 +1,8 @@
|
|||
<template>
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-container class="content">
|
||||
<div class="work-area">
|
||||
<fieldset class="main-area">
|
||||
<el-form ref="workFormRef" :model="workFormEntity" :label-position="labelPosition"
|
||||
label-width="158px" style="max-width: 100%" :rules="rules" status-icon>
|
||||
<div style="display: flex; justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-form-item label="计划开工日期" prop="planStartDate">
|
||||
<el-date-picker v-model="workFormEntity.planStartDate" type="date"
|
||||
placeholder="选择开工日期" :shortcuts="shortcuts" style="width: 196px;" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="工单号" prop="workOrder">
|
||||
<el-select v-model="workFormEntity.workOrder" filterable default-first-option
|
||||
placeholder="请选择工单号" style="width: 196px" :loading="optionLoading" remote
|
||||
:remote-method="(query) => {
|
||||
workFormQuery.workOrder = query
|
||||
initWorkOptions()
|
||||
}" remote-show-suffix reserve-keyword clearable>
|
||||
<el-option v-for="item in workOptions.workOrder" :key="item" :label="item"
|
||||
:value="item" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="成品号" prop="productId">
|
||||
<el-select v-model="workFormEntity.productId" filterable default-first-option
|
||||
placeholder="请选择成品号" style="width: 196px" :loading="optionLoading" remote
|
||||
:remote-method="(query) => {
|
||||
workFormQuery.productId = query
|
||||
initWorkOptions()
|
||||
}" remote-show-suffix reserve-keyword clearable>
|
||||
<el-option v-for="item in workOptions.productId" :key="item" :label="item"
|
||||
:value="item" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="单片号" prop="singleProductId">
|
||||
<el-select v-model="workFormEntity.singleProductId" filterable default-first-option
|
||||
placeholder="请选择单片号" style="width: 196px" :loading="optionLoading" remote
|
||||
:remote-method="(query) => {
|
||||
workFormQuery.singleProductId = query
|
||||
initWorkOptions()
|
||||
}" remote-show-suffix reserve-keyword clearable>
|
||||
<el-option v-for="item in workOptions.singleProductId" :key="item" :label="item"
|
||||
:value="item" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="料盒号" prop="boxNo">
|
||||
<el-select v-model="workFormEntity.boxNo" filterable default-first-option
|
||||
placeholder="请选择料盒号" style="width: 196px" :loading="optionLoading" remote
|
||||
:remote-method="(query) => {
|
||||
workFormQuery.boxNo = query
|
||||
initWorkOptions()
|
||||
}" remote-show-suffix reserve-keyword clearable>
|
||||
<el-option v-for="item in workOptions.boxNo" :key="item" :label="item"
|
||||
:value="item" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="原材料号" prop="goodsId">
|
||||
<el-select v-model="workFormEntity.goodsId" filterable default-first-option
|
||||
placeholder="请选择原材料号" style="width: 196px" :loading="optionLoading" remote
|
||||
:remote-method="(query) => {
|
||||
workFormQuery.goodsId = query
|
||||
initWorkOptions()
|
||||
}" remote-show-suffix reserve-keyword clearable>
|
||||
<el-option v-for="item in workOptions.goodsId" :key="item" :label="item"
|
||||
:value="item" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button type="success"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="confirmStart()">确认配料</el-button>
|
||||
<el-button type="warning"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="resetWorkFormQuery()">清除选择</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<fieldset class="confirm-area">
|
||||
<el-form ref="confirmRef" :model="confirmEntity" :label-position="labelPosition" label-width="158px"
|
||||
style="max-width: 100%" :rules="confirmRules" status-icon>
|
||||
<div style="display: flex; justify-content: space-between;">
|
||||
<el-row>
|
||||
<el-row style="border-bottom: dashed 1px black;">
|
||||
<el-form-item label="工单号" prop="workOrder">
|
||||
<el-input v-model="confirmEntity.workOrder" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="成品号" prop="productId">
|
||||
<el-input v-model="confirmEntity.productId" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="单片号" prop="singleProductId">
|
||||
<el-input v-model="confirmEntity.singleProductId" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="物料号" prop="goodsId">
|
||||
<el-input v-model="confirmEntity.goodsId" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="料盒号" prop="boxNo">
|
||||
<el-input v-model="confirmEntity.boxNo" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="计划拣选数量" prop="planPickQty">
|
||||
<el-input v-model="confirmEntity.planPickQty" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="实际拣选数量" prop="realPickQty">
|
||||
<el-input-number v-model.number="confirmEntity.realPickQty"
|
||||
controls-position="right" :min="0" clearable />
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-form-item label="箱号" prop="vehicleId">
|
||||
<el-input v-model="confirmEntity.vehicleId" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="物料号" prop="goodsId">
|
||||
<el-input v-model="confirmEntity.goodsId" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否库外料" prop="isOut">
|
||||
<el-input v-model="confirmEntity.isOut" :formatter="formatter => {
|
||||
return confirmEntity.isOut === 1 ? '是' : '否'
|
||||
}" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="存放区域" prop="putArea">
|
||||
<el-input v-model="confirmEntity.putArea" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="计划剩余数量" prop="planRemainQty">
|
||||
<el-input v-model="confirmEntity.planRemainQty" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="实际剩余数量" prop="realRemainQty">
|
||||
<el-input-number v-model.number="confirmEntity.realRemainQty"
|
||||
controls-position="right" :min="0" clearable />
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-button type="primary"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="showBoxSummary()">显示料盒</el-button>
|
||||
<el-button type="success"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="confirmOrRelease()">确认/放行</el-button>
|
||||
<el-button type="warning"
|
||||
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
|
||||
@click="resetWorkFormQuery()">打印标签</el-button>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</fieldset>
|
||||
<el-dialog v-model="boxShowFlag" title="料盒总览" width="50%" center>
|
||||
<el-table :data="boxSummary" stripe border class="table-class" max-height="450px"
|
||||
:header-cell-style="{ 'text-align': 'center' }" :cell-style="{ 'text-align': 'center' }">
|
||||
<el-table-column prop="workOrder" label="工单号" fixed="left" />
|
||||
<el-table-column prop="productId" label="成品号" />
|
||||
<el-table-column prop="singleProductId" label="单片号" />
|
||||
<el-table-column prop="boxNo" label="料盒号" />
|
||||
<el-table-column prop="boxQty" label="料盒数量" />
|
||||
</el-table>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import { queryKateWorks, initWorks, getCurrentWorks, confirmCurrentWork } from '@/api/kateWork.js'
|
||||
import { errorBox, warningBox } from '@/utils/myMessageBox.js'
|
||||
import { ElMessage, formatter } from 'element-plus'
|
||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||
import { reactive, ref } from 'vue'
|
||||
import loading from '@/utils/loading'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
</script>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'test',
|
||||
data() {
|
||||
return {
|
||||
standId: store.getters.getStandId,
|
||||
userName: store.getters.getUserName,
|
||||
timer: '',
|
||||
labelPosition: 'top',
|
||||
workFormRef: ref(),
|
||||
workFormEntity: reactive({
|
||||
workOrder: '',
|
||||
productId: '',
|
||||
singleProductId: '',
|
||||
boxNo: '',
|
||||
goodsId: '',
|
||||
planStartDate: null
|
||||
}),
|
||||
workFormQuery: reactive({
|
||||
workOrder: '',
|
||||
productId: '',
|
||||
singleProductId: '',
|
||||
boxNo: '',
|
||||
goodsId: '',
|
||||
}),
|
||||
rules: reactive({
|
||||
workOrder: [
|
||||
{ required: true, message: '请选择工单号。' }
|
||||
]
|
||||
}),
|
||||
shortcuts: [
|
||||
{
|
||||
text: '今天',
|
||||
value: new Date(),
|
||||
},
|
||||
{
|
||||
text: '昨天',
|
||||
value: () => {
|
||||
const date = new Date()
|
||||
date.setTime(date.getTime() - 3600 * 1000 * 24)
|
||||
return date
|
||||
},
|
||||
},
|
||||
],
|
||||
optionLoading: false,
|
||||
workOptions: {
|
||||
workOrder: [],
|
||||
productId: [],
|
||||
singleProductId: [],
|
||||
boxNo: [],
|
||||
goodsId: []
|
||||
},
|
||||
confirmRef: ref(),
|
||||
confirmEntity: reactive({}),
|
||||
confirmRules: reactive({}),
|
||||
boxShowFlag: false,
|
||||
boxSummary: [],
|
||||
pauseGetWorkFlag: true,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.initWorkOptions()
|
||||
this.timer = setInterval(() => {
|
||||
this.getWork()
|
||||
}, 1000)
|
||||
},
|
||||
beforeUnmount() {
|
||||
clearInterval(this.timer)
|
||||
},
|
||||
methods: {
|
||||
// 初始化工单options
|
||||
initWorkOptions() {
|
||||
const request = {
|
||||
workOrder: this.workFormQuery.workOrder != '' ? this.workFormQuery.workOrder : this.workFormEntity.workOrder,
|
||||
productId: this.workFormQuery.productId != '' ? this.workFormQuery.productId : this.workFormEntity.productId,
|
||||
singleProductId: this.workFormQuery.singleProductId != '' ? this.workFormQuery.singleProductId : this.workFormEntity.singleProductId,
|
||||
boxNo: this.workFormQuery.boxNo != '' ? this.workFormQuery.boxNo : this.workFormEntity.boxNo,
|
||||
goodsId: this.workFormQuery.goodsId != '' ? this.workFormQuery.goodsId : this.workFormEntity.goodsId,
|
||||
planStartDate: dateFormatter(this.workFormEntity.planStartDate)
|
||||
}
|
||||
this.optionLoading = true
|
||||
queryKateWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
this.workOptions = response.data
|
||||
} else {
|
||||
this.workOptions = {
|
||||
workOrder: [],
|
||||
productId: [],
|
||||
singleProductId: [],
|
||||
boxNo: [],
|
||||
goodsId: []
|
||||
}
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('查询选项错误。')
|
||||
}).finally(() => {
|
||||
this.optionLoading = false
|
||||
})
|
||||
},
|
||||
// 重置参数
|
||||
resetWorkFormQuery() {
|
||||
const planStartDate = this.workFormEntity.planStartDate
|
||||
this.workFormEntity = reactive({
|
||||
workOrder: '',
|
||||
productId: '',
|
||||
singleProductId: '',
|
||||
boxNo: '',
|
||||
goodsId: '',
|
||||
planStartDate: planStartDate
|
||||
})
|
||||
},
|
||||
// 确认配料
|
||||
confirmStart() {
|
||||
const request = {
|
||||
workOrder: this.workFormEntity.workOrder,
|
||||
productId: this.workFormEntity.productId,
|
||||
singleProductId: this.workFormEntity.singleProductId,
|
||||
boxNo: this.workFormEntity.boxNo,
|
||||
goodsId: this.workFormEntity.goodsId,
|
||||
planStartDate: dateFormatter(this.workFormEntity.planStartDate),
|
||||
standId: 'P1',
|
||||
userName: this.userName
|
||||
}
|
||||
loading.open()
|
||||
initWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
ElMessage.success(response.message)
|
||||
} else {
|
||||
errorBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('请求错误。')
|
||||
}).finally(() => {
|
||||
loading.close()
|
||||
})
|
||||
},
|
||||
// 显示料盒总览
|
||||
showBoxSummary() {
|
||||
this.boxShowFlag = true
|
||||
},
|
||||
getWork() {
|
||||
if (this.pauseGetWorkFlag) {
|
||||
return
|
||||
}
|
||||
const request = {
|
||||
standId: this.standId,
|
||||
userName: this.userName
|
||||
}
|
||||
getCurrentWorks(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
// 设置form
|
||||
this.confirmEntity = {
|
||||
workOrder: response.data.orderConfirmVo.workOrder,
|
||||
productId: response.data.orderConfirmVo.productId,
|
||||
singleProductId: response.data.orderConfirmVo.singleProductId,
|
||||
boxNo: response.data.orderConfirmVo.boxNo,
|
||||
goodsId: response.data.orderConfirmVo.goodsId,
|
||||
planPickQty: response.data.orderConfirmVo.planPickQty,
|
||||
realPickQty: response.data.orderConfirmVo.realPickQty,
|
||||
stockId: response.data.stockConfirmVo.stockId,
|
||||
vehicleId: response.data.stockConfirmVo.vehicleId,
|
||||
goodsId: response.data.stockConfirmVo.goodsId,
|
||||
planRemainQty: response.data.stockConfirmVo.planRemainQty,
|
||||
realRemainQty: response.data.stockConfirmVo.realRemainQty,
|
||||
isOut: response.data.stockConfirmVo.isOut,
|
||||
putArea: response.data.stockConfirmVo.putArea,
|
||||
}
|
||||
this.pauseGetWorkFlag = true
|
||||
} else if (response.code == 400) {
|
||||
// 警告,弹框
|
||||
this.pauseGetWorkFlag = true
|
||||
warningBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
this.pauseGetWorkFlag = true
|
||||
errorBox('请求错误,请检查完原因后刷新界面。')
|
||||
})
|
||||
},
|
||||
confirmOrRelease() {
|
||||
const request = {
|
||||
orderConfirm: {
|
||||
workOrder: this.confirmEntity.workOrder,
|
||||
productId: this.confirmEntity.productId,
|
||||
singleProductId: this.confirmEntity.singleProductId,
|
||||
boxNo: this.confirmEntity.boxNo,
|
||||
goodsId: this.confirmEntity.goodsId,
|
||||
planPickQty: this.confirmEntity.planPickQty,
|
||||
realPickQty: this.confirmEntity.realPickQty,
|
||||
},
|
||||
stockConfirm: {
|
||||
stockId: this.confirmEntity.stockId,
|
||||
vehicleId: this.confirmEntity.vehicleId,
|
||||
goodsId: this.confirmEntity.goodsId,
|
||||
planRemainQty: this.confirmEntity.planRemainQty,
|
||||
realRemainQty: this.confirmEntity.realRemainQty,
|
||||
isOut: this.confirmEntity.isOut,
|
||||
putArea: this.confirmEntity.putArea,
|
||||
},
|
||||
standId: this.standId,
|
||||
userName: this.userName
|
||||
}
|
||||
confirmCurrentWork(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
// 设置form
|
||||
this.confirmEntity = reactive({})
|
||||
this.pauseGetWorkFlag = false
|
||||
ElMessage.success(response.message)
|
||||
} else {
|
||||
// 错误,弹框
|
||||
errorBox(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('请求错误,请检查完原因后刷新界面。')
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.content {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.work-area {
|
||||
width: 100%;
|
||||
/* padding: 5px; */
|
||||
}
|
||||
|
||||
.main-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 90%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.confirm-area {
|
||||
margin: auto;
|
||||
min-height: fit-content;
|
||||
max-height: 90%;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.title-area {
|
||||
display: flex;
|
||||
/* min-height: 10%; */
|
||||
max-height: max-content;
|
||||
margin-bottom: 10px;
|
||||
min-width: inherit;
|
||||
border: solid 1px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 15px 10px -15px #000;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.el-form-item {
|
||||
margin: 10px 5px 10px 5px;
|
||||
}
|
||||
|
||||
.el-form-item .el-input {
|
||||
width: 196px;
|
||||
}
|
||||
|
||||
.table-class {
|
||||
margin: 5px 5px 5px 5px;
|
||||
width: inherit;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,261 +0,0 @@
|
|||
<template>
|
||||
<div style="margin-bottom: 10px">
|
||||
<el-config-provider :locale="zhCn">
|
||||
<el-row>
|
||||
<el-input v-model="configNameQuery" style="width: 256px; margin-right: 10px;" placeholder="配置名称"
|
||||
:suffix-icon="Search" />
|
||||
<el-button type="primary" @click="search()">搜索</el-button>
|
||||
<el-button type="warning" @click="reset()">重置</el-button>
|
||||
</el-row>
|
||||
<br />
|
||||
<el-table :data="configList" stripe border v-loading="loading" class="table-class" max-height="550px"
|
||||
highlight-current-row @row-click="getCurrentRow" :header-cell-style="{ 'text-align': 'center' }"
|
||||
:cell-style="{ 'text-align': 'center' }">
|
||||
<el-table-column width="65px" fixed="left">
|
||||
<template v-slot="scope">
|
||||
<el-radio :label="scope.row.configId" v-model="configId"> </el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="configId" label="配置id" fixed="left" min-width="80px" show-overflow-tooltip />
|
||||
<el-table-column prop="configName" label="配置名称" fixed="left" min-width="120px" show-overflow-tooltip />
|
||||
<el-table-column prop="configKey" label="配置键" show-overflow-tooltip min-width="120px" />
|
||||
<el-table-column prop="configValue" label="配置值" show-overflow-tooltip min-width="140px" />
|
||||
<el-table-column prop="configType" label="配置类型" :formatter="configTypeFormat" min-width="100px"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column fixed="right" label="操作" width="120px">
|
||||
<template v-slot="scope">
|
||||
<el-button plain type="primary" @click="editCurrentRow(scope.row)">编辑</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<br />
|
||||
<el-pagination v-model:current-page="currentPage" v-model:page-size="pageSize" :page-sizes="[10, 25, 50]"
|
||||
:small="false" :disabled="false" :background="false" :default-page-size="10" @size-change="search"
|
||||
@current-change="search" layout="total, sizes, prev, pager, next, jumper" :total="total" />
|
||||
<el-dialog v-model="dialogVisible" title="库存信息" width="40%" draggable :show-close="false">
|
||||
<el-form ref="configFormRef" :model="configFormEntity" :label-position="labelPosition"
|
||||
label-width="100px" style="max-width: 100%" :rules="rules" status-icon>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="配置名称" prop="configName">
|
||||
<el-input v-model="configFormEntity.configName" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="配置类型" prop="configType">
|
||||
<el-select-v2 v-model="configFormEntity.configType" placeholder="请选择配置类型"
|
||||
:options="configTypeOptions" disabled></el-select-v2>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="配置键" prop="configKey">
|
||||
<el-input v-model="configFormEntity.configKey" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="配置值" prop="configValue">
|
||||
<el-input v-if="configFormEntity.configType == '1'" type="textarea" :rows="1"
|
||||
v-model="configFormEntity.configValue" placeholder="" :maxlength="-1"
|
||||
:show-word-limit="false" :autosize="{ minRows: 1, maxRows: 4 }">
|
||||
</el-input>
|
||||
<el-select v-if="configFormEntity.configType == '2'"
|
||||
v-model="configFormEntity.configValue" multiple collapse-tags collapse-tags-tooltip
|
||||
:placeholder="'请选择' + configFormEntity.configName">
|
||||
<el-option v-for="(value, index) in mails" :key="index" :label="value"
|
||||
:value="value" />
|
||||
</el-select>
|
||||
<el-switch v-if="configFormEntity.configType == '3'" style="margin-left: 5px;"
|
||||
v-model="configFormEntity.configValue" active-value="1" inactive-value="0" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="submitChange()">
|
||||
确定
|
||||
</el-button>
|
||||
</span>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</el-config-provider>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { getConfigsByPage, updateConfig } from '@/api/config.js'
|
||||
import { configTypeFormatter } from '@/utils/formatter.js'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import { Search } from '@element-plus/icons-vue'
|
||||
import { ref, reactive } from 'vue'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { errorBox } from '@/utils/myMessageBox.js'
|
||||
import store from '@/store'
|
||||
</script>
|
||||
<script>
|
||||
export default {
|
||||
name: 'wmsConfig',
|
||||
data() {
|
||||
return {
|
||||
pageInfo: {},
|
||||
configList: [],
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
configNameQuery: '',
|
||||
loading: false,
|
||||
configId: '',
|
||||
configFormRef: ref(),
|
||||
configFormEntity: reactive({}),
|
||||
rules: reactive({
|
||||
configId: [
|
||||
{ required: true, message: '请输入配置id' }
|
||||
],
|
||||
configName: [
|
||||
{ required: true, message: '请输入配置名称' }
|
||||
],
|
||||
configKey: [
|
||||
{ required: true, message: '请输入配置键' }
|
||||
],
|
||||
configValue: [
|
||||
{ required: true, message: '请输入配置值' }
|
||||
],
|
||||
configType: [
|
||||
{ required: true, message: '请输入配置类型' }
|
||||
]
|
||||
}),
|
||||
labelPosition: 'top',
|
||||
dialogVisible: false,
|
||||
configTypeOptions: [
|
||||
{
|
||||
value: '1',
|
||||
label: '输入框'
|
||||
},
|
||||
{
|
||||
value: '2',
|
||||
label: '下拉多选'
|
||||
},
|
||||
{
|
||||
value: '3',
|
||||
label: '开关'
|
||||
}
|
||||
],
|
||||
mails: []
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.search()
|
||||
},
|
||||
methods: {
|
||||
configTypeFormat: (row, column, cellValue, index) => {
|
||||
return configTypeFormatter(cellValue)
|
||||
},
|
||||
search() {
|
||||
this.loading = true
|
||||
const request = {
|
||||
pageNo: this.currentPage,
|
||||
pageSize: this.pageSize,
|
||||
configName: this.configNameQuery.trim(),
|
||||
userName: store.getters.getUserName
|
||||
}
|
||||
getConfigsByPage(request).then(res => {
|
||||
const tableResponse = res.data
|
||||
if (tableResponse.code == 0) {
|
||||
this.configList = tableResponse.returnData.lists
|
||||
this.configList.forEach((config) => {
|
||||
if (config.configType == '2') {
|
||||
const tempArray = config.configValue.split(';')
|
||||
config.configValue = tempArray
|
||||
}
|
||||
if (config.configKey == 'MAIL_ADDRESS') {
|
||||
const tempArray = config.configValue.split(';')
|
||||
this.mails = tempArray
|
||||
}
|
||||
})
|
||||
this.total = tableResponse.returnData.total
|
||||
} else {
|
||||
errorBox(tableResponse.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('查询配置错误')
|
||||
})
|
||||
this.loading = false
|
||||
},
|
||||
reset() {
|
||||
this.configNameQuery = ''
|
||||
this.search()
|
||||
},
|
||||
getCurrentRow(row) {
|
||||
this.configId = row.configId
|
||||
},
|
||||
editCurrentRow(row) {
|
||||
this.configFormEntity = reactive({
|
||||
configId: row.configId,
|
||||
configName: row.configName,
|
||||
configKey: row.configKey,
|
||||
configValue: row.configValue,
|
||||
configType: row.configType
|
||||
})
|
||||
this.dialogVisible = true
|
||||
},
|
||||
submitChange() {
|
||||
const request = {
|
||||
configId: this.configFormEntity.configId,
|
||||
configName: this.configFormEntity.configName,
|
||||
configKey: this.configFormEntity.configKey,
|
||||
configValue: this.configFormEntity.configValue,
|
||||
configType: this.configFormEntity.configType,
|
||||
userName: store.getters.getUserName
|
||||
}
|
||||
updateConfig(request).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
this.dialogVisible = false
|
||||
ElMessage.success('更新系统配置成功')
|
||||
this.search()
|
||||
} else {
|
||||
errorBox(res.data.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('更新系统配置失败')
|
||||
})
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.el-pagination {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.el-row .el-button {
|
||||
width: 72px;
|
||||
margin-left: 0px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.table-class {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.el-row .el-form-item .el-select-v2 {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.el-row .el-form-item .el-input-number {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.el-row .el-form-item .el-select {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.el-row .el-form-item .el-input {
|
||||
width: 100% !important;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -34,13 +34,13 @@
|
|||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="configId" label="配置id" fixed="left" min-width="80px"
|
||||
show-overflow-tooltip/>
|
||||
show-overflow-tooltip sortable="custom" />
|
||||
<el-table-column prop="configName" label="配置名称" fixed="left" min-width="120px"
|
||||
show-overflow-tooltip/>
|
||||
<el-table-column prop="configKey" label="配置键" show-overflow-tooltip min-width="120px"/>
|
||||
<el-table-column prop="configValue" label="配置值" show-overflow-tooltip min-width="140px"/>
|
||||
show-overflow-tooltip sortable="custom" />
|
||||
<el-table-column prop="configKey" label="配置键" show-overflow-tooltip min-width="120px" sortable="custom" />
|
||||
<el-table-column prop="configValue" label="配置值" show-overflow-tooltip min-width="140px" sortable="custom" />
|
||||
<el-table-column prop="configType" label="配置类型" :formatter="configTypeFormat" min-width="100px"
|
||||
show-overflow-tooltip/>
|
||||
show-overflow-tooltip sortable="custom" />
|
||||
<el-table-column fixed="right" label="操作" width="120px">
|
||||
<template v-slot="scope">
|
||||
<el-button plain type="primary" @click="editCurrentRow(scope.row)">编辑</el-button>
|
||||
|
|
@ -56,7 +56,7 @@
|
|||
</div>
|
||||
<el-dialog v-model="showConfigEditFlag" title="编辑配置信息" width="40%" draggable :show-close="false">
|
||||
<el-form ref="configEditFormRef" :model="configEditFormEntity" :label-position="labelPosition"
|
||||
label-width="100px" style="max-width: 100%" :rules="rules" status-icon>
|
||||
label-width="100px" style="max-width: 100%" :rules="editRules" status-icon>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="配置名称" prop="configName">
|
||||
|
|
@ -73,30 +73,31 @@
|
|||
<el-row :gutter="16">
|
||||
<el-col :span="12" :offset="0">
|
||||
<el-form-item label="配置键" prop="configKey">
|
||||
<el-input v-model="configFormEntity.configKey" disabled/>
|
||||
<el-input v-model="configEditFormEntity.configKey" disabled/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="配置值" prop="configValue">
|
||||
<el-input v-if="configFormEntity.configType == '1'" type="textarea" :rows="1"
|
||||
v-model="configFormEntity.configValue" placeholder="" :maxlength="-1"
|
||||
<el-input v-if="configEditFormEntity.configType === 1" type="textarea" :rows="1"
|
||||
v-model="configEditFormEntity.configValue" placeholder="" :maxlength="-1"
|
||||
:show-word-limit="false" :autosize="{ minRows: 1, maxRows: 4 }">
|
||||
</el-input>
|
||||
<el-select v-if="configFormEntity.configType == '2'"
|
||||
v-model="configFormEntity.configValue" multiple collapse-tags
|
||||
collapse-tags-tooltip :placeholder="'请选择' + configFormEntity.configName">
|
||||
<el-option v-for="(value, index) in mails" :key="index" :label="value"
|
||||
:value="value"/>
|
||||
</el-select>
|
||||
<el-switch v-if="configFormEntity.configType == '3'" style="margin-left: 5px;"
|
||||
v-model="configFormEntity.configValue" active-value="1" inactive-value="0"/>
|
||||
<!-- 类型2需要增加subKey-->
|
||||
<!-- <el-select v-if="configEditFormEntity.configType === 2"-->
|
||||
<!-- v-model="configEditFormEntity.configValue" multiple collapse-tags-->
|
||||
<!-- collapse-tags-tooltip :placeholder="'请选择' + configEditFormEntity.configName">-->
|
||||
<!-- <el-option v-for="(value, index) in mails" :key="index" :label="value"-->
|
||||
<!-- :value="value"/>-->
|
||||
<!-- </el-select>-->
|
||||
<el-switch v-if="configEditFormEntity.configType === 3" style="margin-left: 5px;"
|
||||
v-model="configEditFormEntity.configValue" active-value="1" inactive-value="0"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取消</el-button>
|
||||
<el-button @click="showConfigEditFlag = false">取消</el-button>
|
||||
<el-button type="primary" @click="submitChange()">
|
||||
确定
|
||||
</el-button>
|
||||
|
|
@ -109,20 +110,19 @@
|
|||
</template>
|
||||
|
||||
<script setup>
|
||||
import store from '@/store'
|
||||
import {queryDbsByPage} from '@/api/kateWork.js'
|
||||
import {dateFormatter, timeFormatter, configTypeFormatter} from '@/utils/formatter.js'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import store from '@/store'
|
||||
import {configTypeFormatter} from '@/utils/formatter.js'
|
||||
import {ref, reactive, onMounted, nextTick, onBeforeUnmount} from 'vue'
|
||||
import {ElMessage} from 'element-plus'
|
||||
import {genTableRequest, addAllOptionOfOptions} from '@/utils/generator.js'
|
||||
import {labelPosition, shortcuts} from '@/constant/form'
|
||||
import {dbsStatusOptions} from '@/constant/options'
|
||||
import {exportDbsWithExcel} from '@/api/excel'
|
||||
|
||||
import {genTableRequest} from '@/utils/generator.js'
|
||||
import {labelPosition} from '@/constant/form'
|
||||
import {queryConfigsByPage, updateConfig} from "@/api/config";
|
||||
/**
|
||||
* 常量定义
|
||||
*/
|
||||
const USER_NAME = store.getters.getUserName
|
||||
const STAND_ID = store.getters.getStandId
|
||||
const configTypeOptions = [
|
||||
{
|
||||
value: '1',
|
||||
|
|
@ -137,6 +137,23 @@ const configTypeOptions = [
|
|||
label: '开关'
|
||||
}
|
||||
]
|
||||
const editRules = {
|
||||
configId: [
|
||||
{required: true, message: '请输入配置id'}
|
||||
],
|
||||
configName: [
|
||||
{required: true, message: '请输入配置名称'}
|
||||
],
|
||||
configKey: [
|
||||
{required: true, message: '请输入配置键'}
|
||||
],
|
||||
configValue: [
|
||||
{required: true, message: '请输入配置值'}
|
||||
],
|
||||
configType: [
|
||||
{required: true, message: '请输入配置类型'}
|
||||
]
|
||||
}
|
||||
/**
|
||||
* 变量定义
|
||||
*/
|
||||
|
|
@ -159,7 +176,14 @@ let configQueryFormRef = ref()
|
|||
let showConfigEditFlag = ref(false)
|
||||
let configId = ''
|
||||
let configEditFormRef = ref()
|
||||
let configEditFormEntity = reactive({})
|
||||
let configEditFormEntity = reactive({
|
||||
configId: '',
|
||||
configName: '',
|
||||
configKey: '',
|
||||
configValue: '',
|
||||
configType: null
|
||||
// subKey: ''
|
||||
})
|
||||
/**
|
||||
* 系统方法
|
||||
*/
|
||||
|
|
@ -187,15 +211,15 @@ const search = () => {
|
|||
// 设定查询参数
|
||||
request.configKey = configQueryFormEntity.configKey
|
||||
request.configName = configQueryFormEntity.configName
|
||||
queryDbsByPage(request).then((res) => {
|
||||
queryConfigsByPage(request).then((res) => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
const data = response.data
|
||||
if (data != null) {
|
||||
displayConfigs.value = data.lists
|
||||
baseTableQuery.total = data.total
|
||||
} else {
|
||||
displayDbs.value = []
|
||||
displayConfigs.value = []
|
||||
baseTableQuery.total = 0
|
||||
}
|
||||
} else {
|
||||
|
|
@ -203,22 +227,20 @@ const search = () => {
|
|||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('查询DBS数据异常。')
|
||||
ElMessage.error('查询配置数据异常。')
|
||||
}).finally(() => {
|
||||
tableLoading.value = false
|
||||
})
|
||||
}
|
||||
const clearQuery = () => {
|
||||
dbsQueryFormEntity.workOrder = ''
|
||||
dbsQueryFormEntity.productId = ''
|
||||
dbsQueryFormEntity.dbsStatus = -99
|
||||
dbsQueryFormEntity.planStartDate = null
|
||||
configQueryFormEntity.configKey = ''
|
||||
configQueryFormEntity.configName = ''
|
||||
}
|
||||
const handleSortChange = (data) => {
|
||||
if (baseTableQuery.sortBy.has(data.prop)) {
|
||||
baseTableQuery.sortBy.delete(data.prop)
|
||||
}
|
||||
baseTableQuery.sortBy.set(data.prop, data.order == 'ascending')
|
||||
baseTableQuery.sortBy.set(data.prop, data.order.toLowerCase() === 'ascending')
|
||||
search()
|
||||
}
|
||||
const getCurrentRow = (row) => {
|
||||
|
|
@ -227,70 +249,38 @@ const getCurrentRow = (row) => {
|
|||
const configTypeFormat = (row, column, cellValue, index) => {
|
||||
return configTypeFormatter(cellValue)
|
||||
}
|
||||
const exportExcel = () => {
|
||||
const params = {
|
||||
workOrder: dbsQueryFormEntity.workOrder,
|
||||
productId: dbsQueryFormEntity.productId,
|
||||
dbsStatus: dbsQueryFormEntity.dbsStatus == -99 ? null : dbsQueryFormEntity.dbsStatus,
|
||||
planStartDate: dateFormatter(dbsQueryFormEntity.planStartDate)
|
||||
}
|
||||
exportDbsWithExcel(params).then(res => {
|
||||
const link = document.createElement('a');//创建a标签
|
||||
try {
|
||||
// let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
||||
let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
||||
// let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
||||
let _fileName = 'DBS计划' + dateFormatter(new Date) + '.xlsx'
|
||||
link.style.display = 'none'//隐藏
|
||||
|
||||
// 兼容不同浏览器的URL对象
|
||||
const url = window.URL || window.webkitURL || window.moxURL
|
||||
link.href = url.createObjectURL(blob)
|
||||
link.setAttribute('download', _fileName.substring(_fileName.lastIndexOf('_') + 1))
|
||||
document.body.appendChild(link)
|
||||
link.click()
|
||||
document.body.removeChild(link)
|
||||
url.revokeObjectURL(link.href)//移除url对象
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
ElMessage.error('下载文件失败')
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
ElMessage.error('导出失败')
|
||||
})
|
||||
}
|
||||
const editCurrentRow = (row) => {
|
||||
|
||||
showConfigEditFlag.value = true
|
||||
configEditFormEntity.configId = row.configId
|
||||
configEditFormEntity.configName = row.configName
|
||||
configEditFormEntity.configKey = row.configKey
|
||||
configEditFormEntity.configValue = row.configValue
|
||||
configEditFormEntity.configType = row.configType
|
||||
}
|
||||
const submitStockInfo = () => {
|
||||
const submitChange = () => {
|
||||
const request = {
|
||||
stockId: this.stockFormEntity.stockId,
|
||||
locationId: this.stockFormEntity.locationId,
|
||||
vehicleId: this.stockFormEntity.vehicleId,
|
||||
stockStatus: this.stockFormEntity.stockStatus,
|
||||
goodsId: this.stockFormEntity.goodsId,
|
||||
goodsStatus: this.stockFormEntity.goodsStatus,
|
||||
remainNum: this.stockFormEntity.remainNum,
|
||||
userName: store.getters.getUserName
|
||||
configId: configEditFormEntity.configId,
|
||||
configName: configEditFormEntity.configName,
|
||||
configKey: configEditFormEntity.configKey,
|
||||
configValue: configEditFormEntity.configValue,
|
||||
configType: configEditFormEntity.configType,
|
||||
userName: USER_NAME,
|
||||
standId: STAND_ID
|
||||
}
|
||||
updateStockInfo(request).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
this.dialogVisible = false
|
||||
ElMessage.success('更新库存成功')
|
||||
this.search()
|
||||
updateConfig(request).then(res => {
|
||||
const response = res.data
|
||||
if (response.code === 0) {
|
||||
showConfigEditFlag.value = false
|
||||
ElMessage.success('更新系统配置成功')
|
||||
search()
|
||||
} else {
|
||||
errorBox(res.data.message)
|
||||
ElMessage.error(response.message)
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
errorBox('更新库存失败')
|
||||
ElMessage.error('更新系统配置失败')
|
||||
})
|
||||
}
|
||||
const openUploadDialog = () => {
|
||||
showDbsUploadDialog.value = true
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
.content {
|
||||
|
|
|
|||
|
|
@ -24,12 +24,12 @@
|
|||
<el-input v-model="searchQueryFormEntity.singleProductId" @keyup.enter="search()" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="工作状态">
|
||||
<el-select-v2 v-model="searchQueryFormEntity.workStatus" placeholder="工作状态"
|
||||
<el-select-v2 style="width: 196px" v-model="searchQueryFormEntity.workStatus" placeholder="工作状态"
|
||||
:options="addAllOptionOfOptions(workStatusOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
<el-form-item label="缺料状态">
|
||||
<el-select-v2 v-model="searchQueryFormEntity.lackStatus" placeholder="缺料状态"
|
||||
<el-select-v2 style="width: 196px" v-model="searchQueryFormEntity.lackStatus" placeholder="缺料状态"
|
||||
:options="addAllOptionOfOptions(lackStatusOptions)"
|
||||
@change="search()"></el-select-v2>
|
||||
</el-form-item>
|
||||
|
|
@ -297,7 +297,7 @@ const USER_NAME = store.getters.getUserName
|
|||
/**
|
||||
* 变量定义
|
||||
*/
|
||||
let maxHeight = ref(window.innerHeight * 0.55)
|
||||
let maxHeight = ref(window.innerHeight * 0.48)
|
||||
let tableLoading = ref(false)
|
||||
let tableData = ref([])
|
||||
let baseTableQuery = reactive({
|
||||
|
|
|
|||
|
|
@ -43,6 +43,18 @@ export default createStore({
|
|||
getKittingWork(state) {
|
||||
return state.kittingWork
|
||||
},
|
||||
getMenuItemByPath(state) {
|
||||
return function (path) {
|
||||
for (const item of state.menuList) {
|
||||
for (const subItem of item.children) {
|
||||
if (subItem.path === path) {
|
||||
return subItem
|
||||
}
|
||||
}
|
||||
}
|
||||
return undefined
|
||||
}
|
||||
}
|
||||
},
|
||||
mutations: {
|
||||
/**
|
||||
|
|
@ -51,7 +63,7 @@ export default createStore({
|
|||
mutationSelectTags(state, data) {
|
||||
let result = false
|
||||
for (let i = 0; i < state.stateTagsList.length; i++) {
|
||||
if (state.stateTagsList[i].path == data.path) {
|
||||
if (state.stateTagsList[i].path === data.path) {
|
||||
return result = true
|
||||
}
|
||||
}
|
||||
|
|
|
|||
13
dev_wms_client/src/utils/excelUtils.js
Normal file
13
dev_wms_client/src/utils/excelUtils.js
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
import * as XLSX from 'xlsx'
|
||||
import {timeFormatter} from "@/utils/formatter";
|
||||
|
||||
export const exportToExcel = (excelHead, data, sheetName, fileName) => {
|
||||
const workBook = XLSX.utils.book_new()
|
||||
const dataWithHead = [excelHead, ...data]
|
||||
const worksheet = XLSX.utils.json_to_sheet(dataWithHead, {
|
||||
skipHeader: true
|
||||
})
|
||||
XLSX.utils.book_append_sheet(workBook, worksheet, sheetName)
|
||||
const fileNameWithTime = fileName + timeFormatter(new Date()) + '.xlsx'
|
||||
XLSX.writeFile(workBook, fileNameWithTime)
|
||||
}
|
||||
|
|
@ -39,11 +39,11 @@ export const locationFormatter = (locationId) => {
|
|||
// 配置类型格式化
|
||||
export const configTypeFormatter = (value) => {
|
||||
switch (value) {
|
||||
case '1':
|
||||
case 1:
|
||||
return '输入框'
|
||||
case '2':
|
||||
case 2:
|
||||
return '下拉多选'
|
||||
case '3':
|
||||
case 3:
|
||||
return '开关'
|
||||
default:
|
||||
return '任务类型异常'
|
||||
|
|
|
|||
|
|
@ -8,9 +8,6 @@
|
|||
<el-form-item style="width: 100%">
|
||||
<el-button color="#87CEEB" style="width: 100%; border: none" @click="loginToImage">工作图纸</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item style="width: 100%">
|
||||
<el-button color="#87CEEB" style="width: 100%; border: none" @click="loginToImageTable">所有图纸预览</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item style="width: 100%">
|
||||
<el-button color="#87CEEB" style="width: 100%; border: none" @click="loginToScanImage">产线扫码</el-button>
|
||||
</el-form-item>
|
||||
|
|
@ -30,7 +27,8 @@
|
|||
<script setup>
|
||||
import store from '@/store'
|
||||
import router from '@/router'
|
||||
const user = store.getters.getUserNam// 用户名
|
||||
|
||||
const user = store.getters.getUserName// 用户名
|
||||
const token = store.getters.getToken// 密码
|
||||
// 登录到WMS系统
|
||||
const loginToWms = () => {
|
||||
|
|
@ -40,22 +38,16 @@ const loginToWms = () => {
|
|||
const loginToImage = () => {
|
||||
router.replace({ path: '/imageDisplay' })
|
||||
}
|
||||
// 登录到所有图纸预览系统
|
||||
const loginToImageTable = () => {
|
||||
router.replace({ path: '/imageTable' })
|
||||
}
|
||||
// 登录到产线扫码系统
|
||||
const loginToScanImage = () => {
|
||||
router.replace({ path: '/scanForImage' })
|
||||
}
|
||||
// 登录到WCS系统
|
||||
const loginToWcs = () => {
|
||||
const wcsUrl = `https://cxlasrs.ecorp.cat.com/wcs/#/login?user=user&pwd=user`
|
||||
window.location.href = wcsUrl// 打开新窗口
|
||||
window.location.href = `https://cxlasrs.ecorp.cat.com/wcs/#/login?user=user&pwd=user`// 打开新窗口
|
||||
}
|
||||
const loginToMonitor = () => {
|
||||
const mpnitorUrl = `https://cxlasrs.ecorp.cat.com?user=${user}&token=${token}`
|
||||
window.location.href = mpnitorUrl// 当前窗口跳转
|
||||
window.location.href = `https://cxlasrs.ecorp.cat.com?user=${user}&token=${token}`// 当前窗口跳转
|
||||
}
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ const login = () => {
|
|||
loading.open('登录中...')
|
||||
loginWithAuth(loginForm).then(res => {
|
||||
const response = res.data
|
||||
if (response.code == 0) {
|
||||
if (response.code === 0) {
|
||||
store.commit('mutationUser', response.data.user)// 用户信息
|
||||
store.commit('mutationMenu', response.data.menuList)// 菜单信息
|
||||
store.commit('mutationStand', response.data.stand)
|
||||
|
|
|
|||
|
|
@ -1,10 +1,14 @@
|
|||
package com.wms_main.controller.wms;
|
||||
|
||||
import com.wms_main.model.dto.query.ConfigQuery;
|
||||
import com.wms_main.model.dto.request.wms.ConfigUpdateRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.model.dto.response.wms.WmsApiResponse;
|
||||
import com.wms_main.model.vo.wms.ConfigVo;
|
||||
import com.wms_main.model.vo.wms.PageVo;
|
||||
import com.wms_main.service.controller.IConfigControllerService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.CrossOrigin;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* 配置控制类
|
||||
|
|
@ -15,4 +19,26 @@ import org.springframework.web.bind.annotation.RestController;
|
|||
@RequiredArgsConstructor
|
||||
@RequestMapping("/wms/config")
|
||||
public class ConfigController {
|
||||
private final IConfigControllerService configControllerService;
|
||||
|
||||
/**
|
||||
* 配置查询
|
||||
* @param configQuery 查询参数
|
||||
* @return 查询结果
|
||||
*/
|
||||
@PostMapping("/queryConfigsByPage")
|
||||
public WmsApiResponse<PageVo<ConfigVo>> queryConfigsByPage(@RequestBody ConfigQuery configQuery) {
|
||||
return configControllerService.queryConfigsByPage(configQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 配置更新
|
||||
* @param configUpdateRequest 更新请求
|
||||
* @return 更新结果
|
||||
*/
|
||||
@PostMapping("/updateConfig")
|
||||
public BaseWmsApiResponse updateConfig(@RequestBody ConfigUpdateRequest configUpdateRequest) {
|
||||
return configControllerService.updateConfig(configUpdateRequest);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
package com.wms_main.controller.wms;
|
||||
|
||||
import com.wms_main.model.dto.query.GoodsQuery;
|
||||
import com.wms_main.model.dto.request.wms.UpdateGoodsRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.model.vo.wms.GoodsVo;
|
||||
import com.wms_main.model.vo.wms.PageVo;
|
||||
import com.wms_main.model.dto.response.wms.WmsApiResponse;
|
||||
|
|
@ -32,22 +30,12 @@ public class GoodsController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 更新物料信息
|
||||
* @param updateGoodsRequest 更新请求
|
||||
* @return 更新结果
|
||||
* 根据物料id查询物料信息
|
||||
* @param goodsId 查询参数
|
||||
* @return 查询结果
|
||||
*/
|
||||
@PostMapping("/updateGoodsInfo")
|
||||
public BaseWmsApiResponse updateGoodsInfo(@RequestBody UpdateGoodsRequest updateGoodsRequest) {
|
||||
return goodsControllerService.updateGoodsInfo(updateGoodsRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* 关闭物料使用
|
||||
* @param updateGoodsRequest 关闭请求
|
||||
* @return 关闭结果
|
||||
*/
|
||||
@PostMapping("/closeGoodsInfo")
|
||||
public BaseWmsApiResponse closeGoodsInfo(@RequestBody UpdateGoodsRequest updateGoodsRequest) {
|
||||
return goodsControllerService.closeGoodsInfo(updateGoodsRequest);
|
||||
@GetMapping("/getGoodsInfoByGoodsId")
|
||||
public WmsApiResponse<GoodsVo> getGoodsInfoByGoodsId(@RequestParam("goodsId") String goodsId) {
|
||||
return goodsControllerService.getGoodsInfoByGoodsId(goodsId);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -103,6 +103,16 @@ public class KateWorkController {
|
|||
return kateWorkControllerService.genClcKanbanRequirement(genRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取物料需求
|
||||
* @param goodsRequireRequest 请求参数
|
||||
* @return 处理结果
|
||||
*/
|
||||
@PostMapping("/getGoodsRequirement")
|
||||
WmsApiResponse<List<GoodsRequireVo>> getGoodsRequirement(@RequestBody GoodsRequireRequest goodsRequireRequest) {
|
||||
return kateWorkControllerService.getGoodsRequirement(goodsRequireRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询图纸
|
||||
* @param imageQuery 查询参数
|
||||
|
|
|
|||
|
|
@ -0,0 +1,39 @@
|
|||
package com.wms_main.controller.wms;
|
||||
|
||||
import com.wms_main.model.dto.request.wms.BaseWmsRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.service.controller.ISystemControllerService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* 系统控制类
|
||||
*/
|
||||
@RestController
|
||||
@ResponseBody
|
||||
@CrossOrigin
|
||||
@RequiredArgsConstructor
|
||||
@RequestMapping("/wms/system")
|
||||
public class SystemController {
|
||||
private final ISystemControllerService systemControllerService;// 系统控制类服务
|
||||
|
||||
/**
|
||||
* 重启系统
|
||||
* @param baseWmsRequest 请求
|
||||
* @return 响应结果
|
||||
*/
|
||||
@PostMapping("/restartSystem")
|
||||
public BaseWmsApiResponse restartSystem(@RequestBody BaseWmsRequest baseWmsRequest) {
|
||||
return systemControllerService.restartSystem(baseWmsRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* 重载配置
|
||||
* @param baseWmsRequest 请求
|
||||
* @return 响应结果
|
||||
*/
|
||||
@PostMapping("/reloadConfig")
|
||||
public BaseWmsApiResponse reloadConfig(@RequestBody BaseWmsRequest baseWmsRequest) {
|
||||
return systemControllerService.reloadConfig(baseWmsRequest);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
package com.wms_main.controller.wms;
|
||||
|
||||
import com.wms_main.model.dto.query.InventoryQuery;
|
||||
import com.wms_main.model.dto.query.OutsQuery;
|
||||
import com.wms_main.model.dto.query.PickTaskQuery;
|
||||
import com.wms_main.model.dto.query.WmsTaskQuery;
|
||||
|
|
@ -75,4 +76,15 @@ public class TaskQueryController {
|
|||
{
|
||||
return taskQueryControllerService.queryOutsByPage(outsQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 盘点信息分页查询
|
||||
* @param inventoryQuery 查询参数
|
||||
* @return 查询结果
|
||||
*/
|
||||
@PostMapping("/queryInventoryRecordByPage")
|
||||
public WmsApiResponse<PageVo<InventoryRecordVo>> queryInventoryRecordByPage(@RequestBody InventoryQuery inventoryQuery)
|
||||
{
|
||||
return taskQueryControllerService.queryInventoryRecordByPage(inventoryQuery);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,45 @@
|
|||
package com.wms_main.excel.easypoi.excelTemplate;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 物料需求excel模版
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class GoodsRequireExcelTemplate {
|
||||
/**
|
||||
* 料号
|
||||
*/
|
||||
private String goodsId;
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String goodsDesc;
|
||||
/**
|
||||
* 需求数量
|
||||
*/
|
||||
private Integer needQty;
|
||||
/**
|
||||
* 库存数量
|
||||
*/
|
||||
private Integer stockQty;
|
||||
/**
|
||||
* 缺少数量
|
||||
*/
|
||||
private Integer lackQty;
|
||||
/**
|
||||
* 物料类型
|
||||
* 1: 看板 2: MRP
|
||||
*/
|
||||
private String goodsType;
|
||||
/**
|
||||
* 库存类型
|
||||
* 1: 库内料 2:库外料
|
||||
*/
|
||||
private String stockType;
|
||||
}
|
||||
|
|
@ -1,12 +1,9 @@
|
|||
package com.wms_main.excel.easypoi.excelTemplate;
|
||||
|
||||
import cn.afterturn.easypoi.excel.annotation.Excel;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import java.io.IOException;
|
||||
import java.net.URLEncoder;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -71,11 +72,11 @@ public class BaseExportExcelEasyPoi implements IBaseExportExcelEasyPoi {
|
|||
.eq(stockQuery.getStockStatus() != null, TAppStock::getStockStatus, stockQuery.getStockStatus())
|
||||
.eq(stockQuery.getGoodsStatus() != null, TAppStock::getGoodsStatus, stockQuery.getGoodsStatus());
|
||||
if (stockQuery.getFromDate() != null) {
|
||||
lambdaQueryWrapper.ge(TAppStock::getFirstInTime, stockQuery.getFromDate().atStartOfDay());
|
||||
lambdaQueryWrapper.ge(TAppStock::getFirstInTime, LocalDateTime.of(stockQuery.getFromDate(), LocalDateTime.MIN.toLocalTime()));
|
||||
}
|
||||
if (stockQuery.getToDate() != null) {
|
||||
// toDate + 1天的凌晨。
|
||||
lambdaQueryWrapper.lt(TAppStock::getFirstInTime, stockQuery.getToDate().plusDays(1).atStartOfDay());
|
||||
lambdaQueryWrapper.le(TAppStock::getFirstInTime, LocalDateTime.of(stockQuery.getToDate(), LocalDateTime.MAX.toLocalTime()));
|
||||
}
|
||||
List<TAppStock> stockList = appStockService.list(lambdaQueryWrapper);
|
||||
// excel模版列表
|
||||
|
|
|
|||
|
|
@ -52,4 +52,9 @@ public class OrderConfirmEntity {
|
|||
*/
|
||||
@JsonProperty("realPickQty")
|
||||
private Integer realPickQty;
|
||||
/**
|
||||
* 拣选备注
|
||||
*/
|
||||
@JsonProperty("kittingRemark")
|
||||
private String kittingRemark;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,45 @@
|
|||
package com.wms_main.model.dto.query;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 配置查询
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ConfigQuery extends PageQuery {
|
||||
/**
|
||||
* 配置ID
|
||||
*/
|
||||
@JsonProperty("configId")
|
||||
private String configId;
|
||||
/**
|
||||
* 配置键
|
||||
*/
|
||||
@JsonProperty("configKey")
|
||||
private String configKey;
|
||||
/**
|
||||
* 配置值
|
||||
*/
|
||||
@JsonProperty("configValue")
|
||||
private String configValue;
|
||||
/**
|
||||
* 配置类型
|
||||
* 1:输入框
|
||||
* 2:下拉多选
|
||||
* 3:开关
|
||||
*/
|
||||
@JsonProperty("configType")
|
||||
private Integer configType;
|
||||
/**
|
||||
* 配置显示名称
|
||||
*/
|
||||
@JsonProperty("configName")
|
||||
private String configName;
|
||||
}
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
package com.wms_main.model.dto.query;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 盘点查询参数
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class InventoryQuery extends PageQuery {
|
||||
/**
|
||||
* 查询类型
|
||||
*/
|
||||
@JsonProperty("queryType")
|
||||
private Integer queryType;
|
||||
/**
|
||||
* 盘点id
|
||||
*/
|
||||
@JsonProperty("inventoryId")
|
||||
private String inventoryId;
|
||||
/**
|
||||
* 料号
|
||||
*/
|
||||
@JsonProperty("goodsId")
|
||||
private String goodsId;
|
||||
/**
|
||||
* 载具号
|
||||
*/
|
||||
@JsonProperty("vehicleId")
|
||||
private String vehicleId;
|
||||
/**
|
||||
* 盘点站台
|
||||
*/
|
||||
@JsonProperty("invStand")
|
||||
private String invStand;
|
||||
/**
|
||||
* 盘点类型:1:明盘;2:盲盘
|
||||
*/
|
||||
@JsonProperty("invType")
|
||||
private Integer invType;
|
||||
/**
|
||||
* 盘点状态
|
||||
* 1. 初始化
|
||||
* 2. 已解析
|
||||
* 3. 数量确认
|
||||
* 4. 盘点关闭
|
||||
*/
|
||||
@JsonProperty("invStatus")
|
||||
private Integer invStatus;
|
||||
/**
|
||||
* 盘点结果
|
||||
* -1: 盘亏
|
||||
* 0: 正常
|
||||
* 1: 盘盈
|
||||
*/
|
||||
@JsonProperty("invResult")
|
||||
private Integer invResult;
|
||||
}
|
||||
|
|
@ -46,15 +46,15 @@ public class StockQuery extends PageQuery{
|
|||
/**
|
||||
* 起始日期
|
||||
*/
|
||||
@JsonProperty("起始日期")
|
||||
@JsonProperty("fromDate")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate fromDate;
|
||||
/**
|
||||
* 结束日期
|
||||
*/
|
||||
@JsonProperty("toDate")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonProperty("结束日期")
|
||||
private LocalDate toDate;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,45 @@
|
|||
package com.wms_main.model.dto.request.wms;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 配置更新请求
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ConfigUpdateRequest extends BaseWmsRequest {
|
||||
/**
|
||||
* 配置ID
|
||||
*/
|
||||
@JsonProperty("configId")
|
||||
private String configId;
|
||||
/**
|
||||
* 配置键
|
||||
*/
|
||||
@JsonProperty("configKey")
|
||||
private String configKey;
|
||||
/**
|
||||
* 配置值
|
||||
*/
|
||||
@JsonProperty("configValue")
|
||||
private String configValue;
|
||||
/**
|
||||
* 配置类型
|
||||
* 1:输入框
|
||||
* 2:下拉多选
|
||||
* 3:开关
|
||||
*/
|
||||
@JsonProperty("configType")
|
||||
private Integer configType;
|
||||
/**
|
||||
* 配置显示名称
|
||||
*/
|
||||
@JsonProperty("configName")
|
||||
private String configName;
|
||||
}
|
||||
|
|
@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode;
|
|||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 生成看板需求请求
|
||||
|
|
@ -26,4 +27,9 @@ public class GenKanbanRequirementRequest extends BaseWmsRequest{
|
|||
*/
|
||||
@JsonProperty("planStartDateTo")
|
||||
private LocalDate planStartDateTo;
|
||||
/**
|
||||
* 工单列表
|
||||
*/
|
||||
@JsonProperty("orderIds")
|
||||
private List<String> orderIds;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,24 @@
|
|||
package com.wms_main.model.dto.request.wms;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 获取物料需求 请求类
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class GoodsRequireRequest extends BaseWmsRequest {
|
||||
/**
|
||||
* 工单列表
|
||||
*/
|
||||
@JsonProperty("orderIds")
|
||||
private List<String> orderIds;
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package com.wms_main.model.dto.request.wms;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 出库单更新请求
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class OutsUpdateRequest extends BaseWmsRequest {
|
||||
/**
|
||||
* 任务号
|
||||
*/
|
||||
@JsonProperty("taskId")
|
||||
private String taskId;
|
||||
/**
|
||||
* 更新类型
|
||||
* 1: 取消
|
||||
* 2: 完成
|
||||
* 3: 重置
|
||||
*/
|
||||
@JsonProperty("updateType")
|
||||
private Integer updateType;
|
||||
}
|
||||
|
|
@ -92,4 +92,10 @@ public class TAppStandWork {
|
|||
*/
|
||||
@TableField(value = "put_area")
|
||||
private String putArea;
|
||||
/**
|
||||
* 备注
|
||||
* 主要用于标识ECN
|
||||
*/
|
||||
@TableField(value = "kitting_remark")
|
||||
private String kittingRemark;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -113,4 +113,10 @@ public class TAppWork {
|
|||
*/
|
||||
@TableField(value = "product_type")
|
||||
private Integer productType;
|
||||
/**
|
||||
* 备注
|
||||
* 用于ECN相关
|
||||
*/
|
||||
@TableField(value = "kitting_remark")
|
||||
private String kittingRemark;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -105,4 +105,10 @@ public class TAppWorkRecord {
|
|||
*/
|
||||
@TableField(value = "product_type")
|
||||
private Integer productType;
|
||||
/**
|
||||
* 备注
|
||||
* 用于ECN相关
|
||||
*/
|
||||
@TableField(value = "kitting_remark")
|
||||
private String kittingRemark;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,57 @@
|
|||
package com.wms_main.model.vo.wms;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import com.wms_main.model.po.TAppConfig;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 配置显示类
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ConfigVo {
|
||||
/**
|
||||
* 配置ID
|
||||
*/
|
||||
@JsonProperty("configId")
|
||||
private String configId;
|
||||
/**
|
||||
* 配置键
|
||||
*/
|
||||
@JsonProperty("configKey")
|
||||
private String configKey;
|
||||
/**
|
||||
* 配置值
|
||||
*/
|
||||
@JsonProperty("configValue")
|
||||
private String configValue;
|
||||
/**
|
||||
* 配置类型
|
||||
* 1:输入框
|
||||
* 2:下拉多选
|
||||
* 3:开关
|
||||
*/
|
||||
@JsonProperty("configType")
|
||||
private Integer configType;
|
||||
/**
|
||||
* 配置显示名称
|
||||
*/
|
||||
@JsonProperty("configName")
|
||||
private String configName;
|
||||
|
||||
/**
|
||||
* 将po转化为vo
|
||||
* @param tAppConfig po
|
||||
* @return vo
|
||||
*/
|
||||
public static ConfigVo of(TAppConfig tAppConfig)
|
||||
{
|
||||
if (tAppConfig == null) {
|
||||
return new ConfigVo();
|
||||
}
|
||||
return new ConfigVo(tAppConfig.getConfigId(), tAppConfig.getConfigKey(), tAppConfig.getConfigValue(), tAppConfig.getConfigType(), tAppConfig.getConfigName());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,50 @@
|
|||
package com.wms_main.model.vo.wms;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 物料需求Vo
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class GoodsRequireVo {
|
||||
/**
|
||||
* 料号
|
||||
*/
|
||||
@JsonProperty("goodsId")
|
||||
private String goodsId;
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
@JsonProperty("goodsDesc")
|
||||
private String goodsDesc;
|
||||
/**
|
||||
* 需求数量
|
||||
*/
|
||||
@JsonProperty("needQty")
|
||||
private Integer needQty;
|
||||
/**
|
||||
* 库存数量
|
||||
*/
|
||||
@JsonProperty("stockQty")
|
||||
private Integer stockQty;
|
||||
/**
|
||||
* 缺少数量
|
||||
*/
|
||||
@JsonProperty("lackQty")
|
||||
private Integer lackQty;
|
||||
/**
|
||||
* 物料类型
|
||||
*/
|
||||
@JsonProperty("goodsType")
|
||||
private String goodsType;
|
||||
/**
|
||||
* 库存类型
|
||||
*/
|
||||
@JsonProperty("stockType")
|
||||
private String stockType;
|
||||
}
|
||||
|
|
@ -0,0 +1,150 @@
|
|||
package com.wms_main.model.vo.wms;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import com.wms_main.model.po.TAppInventory;
|
||||
import com.wms_main.model.po.TAppInventoryRecord;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 盘点记录Vo
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class InventoryRecordVo {
|
||||
/**
|
||||
* 盘点id
|
||||
*/
|
||||
@JsonProperty("inventoryId")
|
||||
private String inventoryId;
|
||||
/**
|
||||
* 料号
|
||||
*/
|
||||
@JsonProperty("goodsId")
|
||||
private String goodsId;
|
||||
/**
|
||||
* 载具号
|
||||
*/
|
||||
@JsonProperty("vehicleId")
|
||||
private String vehicleId;
|
||||
/**
|
||||
* 库存数量
|
||||
* 只记录盘点确认时间点
|
||||
*/
|
||||
@JsonProperty("stockNum")
|
||||
private Integer stockNum;
|
||||
/**
|
||||
* 确认数量
|
||||
*/
|
||||
@JsonProperty("confirmNum")
|
||||
private Integer confirmNum;
|
||||
/**
|
||||
* 盘点站台
|
||||
*/
|
||||
@JsonProperty("invStand")
|
||||
private String invStand;
|
||||
/**
|
||||
* 盘点人
|
||||
*/
|
||||
@JsonProperty("invUser")
|
||||
private String invUser;
|
||||
/**
|
||||
* 盘点类型:1:明盘;2:盲盘
|
||||
*/
|
||||
@JsonProperty("invType")
|
||||
private Integer invType;
|
||||
/**
|
||||
* 盘点状态
|
||||
* 1. 初始化
|
||||
* 2. 已解析
|
||||
* 3. 数量确认
|
||||
* 4. 盘点关闭
|
||||
*/
|
||||
@JsonProperty("invStatus")
|
||||
private Integer invStatus;
|
||||
/**
|
||||
* 盘点结果
|
||||
* -1: 盘亏
|
||||
* 0: 正常
|
||||
* 1: 盘盈
|
||||
*/
|
||||
@JsonProperty("invResult")
|
||||
private Integer invResult;
|
||||
/**
|
||||
* 盘点任务创建时间
|
||||
*/
|
||||
@JsonProperty("invCreateTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime invCreateTime;
|
||||
/**
|
||||
* 盘点确认时间
|
||||
*/
|
||||
@JsonProperty("invConfirmTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime invConfirmTime;
|
||||
/**
|
||||
* 这个字段用于合并哪些任务是同一时间下发的
|
||||
*/
|
||||
@JsonProperty("invOrderId")
|
||||
private String invOrderId;
|
||||
|
||||
/**
|
||||
* 将盘点请求的Po转化为Vo
|
||||
* @param inventoryPo 请求Po
|
||||
* @return 盘点Vo
|
||||
*/
|
||||
public static InventoryRecordVo ofTaskPo(TAppInventory inventoryPo) {
|
||||
if (inventoryPo == null) {
|
||||
return new InventoryRecordVo();
|
||||
}
|
||||
return new InventoryRecordVo(
|
||||
inventoryPo.getInventoryId(),
|
||||
inventoryPo.getGoodsId(),
|
||||
inventoryPo.getVehicleId(),
|
||||
inventoryPo.getStockNum(),
|
||||
inventoryPo.getConfirmNum(),
|
||||
inventoryPo.getInvStand(),
|
||||
inventoryPo.getInvUser(),
|
||||
inventoryPo.getInvType(),
|
||||
inventoryPo.getInvStatus(),
|
||||
inventoryPo.getInvResult(),
|
||||
inventoryPo.getInvCreateTime(),
|
||||
inventoryPo.getInvConfirmTime(),
|
||||
inventoryPo.getInvOrderId()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 将盘点记录的Po转化为Vo
|
||||
* @param inventoryRecordPo 盘点记录Po
|
||||
* @return 盘点记录Vo
|
||||
*/
|
||||
public static InventoryRecordVo ofRecordPo(TAppInventoryRecord inventoryRecordPo) {
|
||||
if (inventoryRecordPo == null) {
|
||||
return new InventoryRecordVo();
|
||||
}
|
||||
return new InventoryRecordVo(
|
||||
inventoryRecordPo.getInventoryId(),
|
||||
inventoryRecordPo.getGoodsId(),
|
||||
inventoryRecordPo.getVehicleId(),
|
||||
inventoryRecordPo.getStockNum(),
|
||||
inventoryRecordPo.getConfirmNum(),
|
||||
inventoryRecordPo.getInvStand(),
|
||||
inventoryRecordPo.getInvUser(),
|
||||
inventoryRecordPo.getInvType(),
|
||||
inventoryRecordPo.getInvStatus(),
|
||||
inventoryRecordPo.getInvResult(),
|
||||
inventoryRecordPo.getInvCreateTime(),
|
||||
inventoryRecordPo.getInvConfirmTime(),
|
||||
inventoryRecordPo.getInvOrderId()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -50,4 +50,10 @@ public class KateWorkOptionsVo {
|
|||
*/
|
||||
@JsonProperty("goodsId")
|
||||
private List<String> goodsId = Collections.emptyList();
|
||||
/**
|
||||
* 备注
|
||||
* 主要用于ECN
|
||||
*/
|
||||
@JsonProperty("kittingRemark")
|
||||
private String kittingRemark = "";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -181,11 +181,11 @@ public class ConveyTaskServiceImpl implements IConveyTaskService {
|
|||
}
|
||||
// 生成记录并删除
|
||||
pickRecords.add(new TAppPickTaskBak(
|
||||
targetPickTask.getPickId(),
|
||||
targetPickTask.getPickStand(),
|
||||
targetPickTask.getVehicleId(),
|
||||
forInPickTask.getPickId(),
|
||||
forInPickTask.getPickStand(),
|
||||
forInPickTask.getVehicleId(),
|
||||
WmsPickTaskStatusEnum.FOR_IN.getCode(),
|
||||
targetPickTask.getCreateTime(),
|
||||
forInPickTask.getCreateTime(),
|
||||
null,
|
||||
null,
|
||||
LocalDateTime.now()
|
||||
|
|
@ -347,7 +347,8 @@ public class ConveyTaskServiceImpl implements IConveyTaskService {
|
|||
thisWork.getGoodsId(),
|
||||
thisWork.getBoxNo(),
|
||||
planPickQty,
|
||||
planPickQty
|
||||
planPickQty,
|
||||
thisWork.getKittingRemark()
|
||||
);
|
||||
StockConfirmEntity stockConfirmVo = new StockConfirmEntity(
|
||||
pickPlan.getPlanId(),
|
||||
|
|
|
|||
|
|
@ -144,8 +144,9 @@ public class StackerTaskServiceImpl implements IStackerTaskService {
|
|||
}
|
||||
}
|
||||
return filterResult;
|
||||
}).sorted(Comparator.comparingInt(TAppLocation::getLDepth).reversed())
|
||||
})
|
||||
.sorted(Comparator.comparingInt(location -> location.getLCol() + location.getLLayer()))
|
||||
.sorted(Comparator.comparingInt(TAppLocation::getLDepth).reversed())
|
||||
.toList();
|
||||
// 判断是否输入了subArea
|
||||
if (locationFilter != null && StringUtils.isNotEmpty(locationFilter.getSubArea())) {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,27 @@
|
|||
package com.wms_main.service.controller;
|
||||
|
||||
import com.wms_main.model.dto.query.ConfigQuery;
|
||||
import com.wms_main.model.dto.request.wms.ConfigUpdateRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.model.dto.response.wms.WmsApiResponse;
|
||||
import com.wms_main.model.vo.wms.ConfigVo;
|
||||
import com.wms_main.model.vo.wms.PageVo;
|
||||
|
||||
/**
|
||||
* 配置控制类 服务接口
|
||||
*/
|
||||
public interface IConfigControllerService {
|
||||
/**
|
||||
* 查询配置信息---分页
|
||||
* @param configQuery 查询参数
|
||||
* @return 查询结果
|
||||
*/
|
||||
WmsApiResponse<PageVo<ConfigVo>> queryConfigsByPage(ConfigQuery configQuery);
|
||||
|
||||
/**
|
||||
* 更新配置信息
|
||||
* @param configUpdateRequest 请求参数
|
||||
* @return 更新结果
|
||||
*/
|
||||
BaseWmsApiResponse updateConfig(ConfigUpdateRequest configUpdateRequest);
|
||||
}
|
||||
|
|
@ -1,8 +1,6 @@
|
|||
package com.wms_main.service.controller;
|
||||
|
||||
import com.wms_main.model.dto.query.GoodsQuery;
|
||||
import com.wms_main.model.dto.request.wms.UpdateGoodsRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.model.vo.wms.GoodsVo;
|
||||
import com.wms_main.model.vo.wms.PageVo;
|
||||
import com.wms_main.model.dto.response.wms.WmsApiResponse;
|
||||
|
|
@ -17,19 +15,12 @@ public interface IGoodsControllerService {
|
|||
* @param goodsQuery 查询参数
|
||||
* @return 查询结果
|
||||
*/
|
||||
WmsApiResponse<PageVo<GoodsVo>> getGoodsInfoByPage(@RequestBody GoodsQuery goodsQuery);
|
||||
WmsApiResponse<PageVo<GoodsVo>> getGoodsInfoByPage(GoodsQuery goodsQuery);
|
||||
|
||||
/**
|
||||
* 更新物料信息
|
||||
* @param updateGoodsRequest 更新请求
|
||||
* @return 更新结果
|
||||
* 根据物料id获取物料信息
|
||||
* @param goodsId 物料id
|
||||
* @return 物料信息
|
||||
*/
|
||||
BaseWmsApiResponse updateGoodsInfo(@RequestBody UpdateGoodsRequest updateGoodsRequest);
|
||||
|
||||
/**
|
||||
* 关闭物料使用
|
||||
* @param updateGoodsRequest 关闭请求
|
||||
* @return 关闭结果
|
||||
*/
|
||||
BaseWmsApiResponse closeGoodsInfo(@RequestBody UpdateGoodsRequest updateGoodsRequest);
|
||||
WmsApiResponse<GoodsVo> getGoodsInfoByGoodsId(String goodsId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -69,6 +69,13 @@ public interface IKateWorkControllerService {
|
|||
*/
|
||||
BaseWmsApiResponse genClcKanbanRequirement(GenKanbanRequirementRequest genRequest);
|
||||
|
||||
/**
|
||||
* 获取物料需求
|
||||
* @param goodsRequireRequest 请求参数
|
||||
* @return 请求结果
|
||||
*/
|
||||
WmsApiResponse<List<GoodsRequireVo>> getGoodsRequirement(GoodsRequireRequest goodsRequireRequest);
|
||||
|
||||
/**
|
||||
* 查询图纸
|
||||
* @param imageQuery 查询参数
|
||||
|
|
|
|||
|
|
@ -0,0 +1,23 @@
|
|||
package com.wms_main.service.controller;
|
||||
|
||||
import com.wms_main.model.dto.request.wms.BaseWmsRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
|
||||
/**
|
||||
* 系统控制类服务接口
|
||||
*/
|
||||
public interface ISystemControllerService {
|
||||
/**
|
||||
* 重启系统
|
||||
* @param baseWmsRequest 请求
|
||||
* @return 响应
|
||||
*/
|
||||
BaseWmsApiResponse restartSystem(BaseWmsRequest baseWmsRequest);
|
||||
|
||||
/**
|
||||
* 重载配置
|
||||
* @param baseWmsRequest 请求
|
||||
* @return 响应
|
||||
*/
|
||||
BaseWmsApiResponse reloadConfig(BaseWmsRequest baseWmsRequest);
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
package com.wms_main.service.controller;
|
||||
|
||||
import com.wms_main.model.dto.request.wms.OutsUpdateRequest;
|
||||
import com.wms_main.model.dto.request.wms.WmsTaskRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
|
||||
|
|
@ -20,4 +21,11 @@ public interface ITaskOperationControllerService {
|
|||
* @return 更新结果
|
||||
*/
|
||||
BaseWmsApiResponse updateWmsTask(WmsTaskRequest wmsTaskRequest);
|
||||
|
||||
/**
|
||||
* 更新出库表单---取消或者完成
|
||||
* @param outsUpdateRequest 请求
|
||||
* @return 结果
|
||||
*/
|
||||
BaseWmsApiResponse updateOutsTask(OutsUpdateRequest outsUpdateRequest);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.wms_main.service.controller;
|
||||
|
||||
import com.wms_main.model.dto.query.InventoryQuery;
|
||||
import com.wms_main.model.dto.query.OutsQuery;
|
||||
import com.wms_main.model.dto.query.PickTaskQuery;
|
||||
import com.wms_main.model.dto.query.WmsTaskQuery;
|
||||
|
|
@ -44,4 +45,11 @@ public interface ITaskQueryControllerService {
|
|||
* @return 查询结果---分页
|
||||
*/
|
||||
WmsApiResponse<PageVo<OutsVo>> queryOutsByPage(OutsQuery outsQuery);
|
||||
|
||||
/**
|
||||
* 查询盘点相关信息
|
||||
* @param inventoryQuery 查询参数
|
||||
* @return 查询结果---分页
|
||||
*/
|
||||
WmsApiResponse<PageVo<InventoryRecordVo>> queryInventoryRecordByPage(InventoryQuery inventoryQuery);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,82 @@
|
|||
package com.wms_main.service.controller.serviceImpl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wms_main.dao.ITAppConfigService;
|
||||
import com.wms_main.model.dto.query.ConfigQuery;
|
||||
import com.wms_main.model.dto.request.wms.ConfigUpdateRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.model.dto.response.wms.WmsApiResponse;
|
||||
import com.wms_main.model.po.TAppConfig;
|
||||
import com.wms_main.model.vo.wms.ConfigVo;
|
||||
import com.wms_main.model.vo.wms.PageVo;
|
||||
import com.wms_main.repository.utils.StringUtils;
|
||||
import com.wms_main.service.controller.IConfigControllerService;
|
||||
import com.wms_main.service.system.ISystemService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
/**
|
||||
* 配置控制类服务实现
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class ConfigControllerServiceImpl implements IConfigControllerService {
|
||||
// 配置服务
|
||||
private final ITAppConfigService appConfigService;
|
||||
// 系统服务
|
||||
private final ISystemService systemService;
|
||||
|
||||
/**
|
||||
* 查询系统配置(分页)---实现
|
||||
*
|
||||
* @param configQuery 配置
|
||||
* @return 结果
|
||||
*/
|
||||
public WmsApiResponse<PageVo<ConfigVo>> queryConfigsByPage(ConfigQuery configQuery) {
|
||||
if (configQuery == null) {
|
||||
return WmsApiResponse.error("查询参数不能为NULL", null);
|
||||
}
|
||||
Page<TAppConfig> page = configQuery.toMpPage();
|
||||
LambdaQueryWrapper<TAppConfig> lambdaQueryWrapper = new LambdaQueryWrapper<TAppConfig>()
|
||||
.like(StringUtils.isNotEmpty(configQuery.getConfigKey()), TAppConfig::getConfigKey, configQuery.getConfigKey())
|
||||
.like(StringUtils.isNotEmpty(configQuery.getConfigName()), TAppConfig::getConfigName, configQuery.getConfigName());
|
||||
Page<TAppConfig> configPage = appConfigService.page(page, lambdaQueryWrapper);
|
||||
|
||||
PageVo<ConfigVo> pageVo = PageVo.of(configPage, ConfigVo::of);
|
||||
return WmsApiResponse.success("查询配置数据成功", pageVo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新系统配置
|
||||
*
|
||||
* @param configUpdateRequest 更新请求
|
||||
* @return 结果
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public BaseWmsApiResponse updateConfig(ConfigUpdateRequest configUpdateRequest) {
|
||||
if (configUpdateRequest == null) {
|
||||
return BaseWmsApiResponse.error("更新请求不能为NULL。");
|
||||
}
|
||||
if (StringUtils.isEmpty(configUpdateRequest.getConfigId())) {
|
||||
return BaseWmsApiResponse.error("请求缺少配置id,无法更新。");
|
||||
}
|
||||
// 查询对应的配置信息
|
||||
TAppConfig targetConfig = appConfigService.getById(configUpdateRequest.getConfigId());
|
||||
if (targetConfig == null) {
|
||||
return BaseWmsApiResponse.error("id不正确,未查询到对应的配置信息。");
|
||||
}
|
||||
// 更新配置
|
||||
appConfigService.update(new LambdaUpdateWrapper<TAppConfig>()
|
||||
.set(TAppConfig::getConfigValue, configUpdateRequest.getConfigValue())
|
||||
.eq(TAppConfig::getConfigId, configUpdateRequest.getConfigId()));
|
||||
// 重载配置
|
||||
if (systemService.reloadConfig()) {
|
||||
return BaseWmsApiResponse.success("更新配置成功,重载配置成功。");
|
||||
} else {
|
||||
return BaseWmsApiResponse.success("更新配置成功,但重载配置失败,需手动重载配置。");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,11 +1,8 @@
|
|||
package com.wms_main.service.controller.serviceImpl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wms_main.dao.ITAppGoodsService;
|
||||
import com.wms_main.model.dto.request.wms.UpdateGoodsRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.model.po.TAppGoods;
|
||||
import com.wms_main.model.dto.query.GoodsQuery;
|
||||
import com.wms_main.model.vo.wms.GoodsVo;
|
||||
|
|
@ -16,9 +13,6 @@ import com.wms_main.service.controller.IGoodsControllerService;
|
|||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 物料控制类 服务实现
|
||||
|
|
@ -49,77 +43,19 @@ public class GoodsControllerServiceImpl implements IGoodsControllerService {
|
|||
}
|
||||
|
||||
/**
|
||||
* 实现--更新物料信息
|
||||
* @param updateGoodsRequest 更新请求
|
||||
* @return 更新结果
|
||||
* 根据物料id查询物料信息
|
||||
* @param goodsId 物料id
|
||||
* @return 查询结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public BaseWmsApiResponse updateGoodsInfo(UpdateGoodsRequest updateGoodsRequest) {
|
||||
if (updateGoodsRequest == null) {
|
||||
return BaseWmsApiResponse.error("更新参数不能为NULL");
|
||||
public WmsApiResponse<GoodsVo> getGoodsInfoByGoodsId(String goodsId) {
|
||||
if (StringUtils.isEmpty(goodsId)) {
|
||||
return WmsApiResponse.error("请求参数不能为空。", null);
|
||||
}
|
||||
|
||||
if (StringUtils.isEmpty(updateGoodsRequest.getGoodsId())) {
|
||||
return BaseWmsApiResponse.error("物料编号不能为空");
|
||||
}
|
||||
|
||||
try {
|
||||
// 更新物料信息
|
||||
boolean result = goodsService.update(new LambdaUpdateWrapper<TAppGoods>()
|
||||
.eq(TAppGoods::getGoodsId, updateGoodsRequest.getGoodsId())
|
||||
.set(updateGoodsRequest.getBoxQty() != null, TAppGoods::getBoxQty, updateGoodsRequest.getBoxQty())
|
||||
.set(updateGoodsRequest.getMaxBoxNum() != null, TAppGoods::getMaxBoxNum, updateGoodsRequest.getMaxBoxNum())
|
||||
.set(StringUtils.isNotEmpty(updateGoodsRequest.getPutArea()), TAppGoods::getPutArea, updateGoodsRequest.getPutArea())
|
||||
.set(StringUtils.isNotEmpty(updateGoodsRequest.getHotPoint()), TAppGoods::getHotPoint, updateGoodsRequest.getHotPoint())
|
||||
.set(TAppGoods::getLastUpdateUser, updateGoodsRequest.getUserName())
|
||||
.set(TAppGoods::getLastUpdateTime, LocalDateTime.now()));
|
||||
|
||||
if (result) {
|
||||
return BaseWmsApiResponse.success("更新物料信息成功");
|
||||
} else {
|
||||
return BaseWmsApiResponse.error("更新物料信息失败,未找到对应物料或物料信息未发生变更");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("更新物料信息异常: {}", e.getMessage(), e);
|
||||
return BaseWmsApiResponse.error("更新物料信息异常: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 实现--关闭物料使用
|
||||
* @param updateGoodsRequest 关闭请求
|
||||
* @return 关闭结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public BaseWmsApiResponse closeGoodsInfo(UpdateGoodsRequest updateGoodsRequest) {
|
||||
if (updateGoodsRequest == null) {
|
||||
return BaseWmsApiResponse.error("关闭参数不能为NULL");
|
||||
}
|
||||
|
||||
if (StringUtils.isEmpty(updateGoodsRequest.getGoodsId())) {
|
||||
return BaseWmsApiResponse.error("物料编号不能为空");
|
||||
}
|
||||
|
||||
try {
|
||||
// 这里根据业务需求实现物料关闭逻辑
|
||||
// 例如:将物料设置为不可用状态、更新特定字段等
|
||||
boolean result = goodsService.update(new LambdaUpdateWrapper<TAppGoods>()
|
||||
.eq(TAppGoods::getGoodsId, updateGoodsRequest.getGoodsId())
|
||||
.set(TAppGoods::getPutArea, "已关闭")
|
||||
.set(TAppGoods::getHotPoint, "已关闭")
|
||||
.set(TAppGoods::getLastUpdateUser, updateGoodsRequest.getUserName())
|
||||
.set(TAppGoods::getLastUpdateTime, LocalDateTime.now()));
|
||||
|
||||
if (result) {
|
||||
return BaseWmsApiResponse.success("关闭物料成功");
|
||||
} else {
|
||||
return BaseWmsApiResponse.error("关闭物料失败,未找到对应物料");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("关闭物料异常: {}", e.getMessage(), e);
|
||||
return BaseWmsApiResponse.error("关闭物料异常: " + e.getMessage());
|
||||
TAppGoods targetGoods = goodsService.getById(goodsId);
|
||||
if (targetGoods == null) {
|
||||
return WmsApiResponse.error("查询结果为空。", null);
|
||||
}
|
||||
return WmsApiResponse.success("查询成功。", GoodsVo.of(targetGoods));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -103,6 +103,8 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
result.setProductIdOrigin(dbs.getProductIdOrigin());
|
||||
// 设置过滤成品号
|
||||
result.setProductId(dbs.getProductId());
|
||||
// 设置备注
|
||||
result.setKittingRemark(dbs.getKittingRemark());
|
||||
if (!getWorkOptionsOfServicePieces(kateWorksQuery, dbs.getProductIdOrigin(), result)) {
|
||||
if (getWorkOptionsOfNonServicePieces(kateWorksQuery, dbs.getProductId(), result)) {
|
||||
result.setProductType(1);// 普通成品
|
||||
|
|
@ -298,7 +300,8 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
thisStandWork.getGoodsId(),
|
||||
thisStandWork.getBoxNo(),
|
||||
thisStandWork.getPlanPickQty(),
|
||||
thisStandWork.getRealPickQty()),
|
||||
thisStandWork.getRealPickQty(),
|
||||
thisStandWork.getKittingRemark()),
|
||||
new StockConfirmEntity(
|
||||
thisStandWork.getStockId(),
|
||||
thisStandWork.getVehicleId(),
|
||||
|
|
@ -669,59 +672,23 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public BaseWmsApiResponse genClcKanbanRequirement(GenKanbanRequirementRequest genRequest) {
|
||||
if (genRequest.getPlanStartDateFrom() == null || genRequest.getPlanStartDateTo() == null) {
|
||||
return BaseWmsApiResponse.error("请选择开始时间和结束时间。");
|
||||
// 判断工单列表是否为空
|
||||
if (genRequest == null) {
|
||||
return WmsApiResponse.error("查询参数为空。", null);
|
||||
}
|
||||
if (genRequest.getPlanStartDateFrom().isAfter(genRequest.getPlanStartDateTo())) {
|
||||
return BaseWmsApiResponse.error("开始时间不能大于结束时间。");
|
||||
if (genRequest.getOrderIds() == null || genRequest.getOrderIds().isEmpty()) {
|
||||
return WmsApiResponse.error("工单列表为空,无法生成看板。", null);
|
||||
}
|
||||
// 查找这个时间段内的所有dbs计划---未开始的
|
||||
// 查询出所有的dbs
|
||||
List<TAppDbs> dbsList = appDbsService.list(new LambdaQueryWrapper<TAppDbs>()
|
||||
.between(TAppDbs::getTestPlanStartDate, genRequest.getPlanStartDateFrom(), genRequest.getPlanStartDateTo())
|
||||
.in(TAppDbs::getWorkOrder, genRequest.getOrderIds())
|
||||
.lt(TAppDbs::getDbsStatus, 2));
|
||||
// 总的物料需求
|
||||
Map<String, Integer> totalGoodsRequireMap = new HashMap<>();
|
||||
// 物料数量需求---根据总成号区分
|
||||
Map<String, Map<String, Integer>> goodsRequireByProductMap = new HashMap<>();
|
||||
// 迭代计划表,获取
|
||||
for (TAppDbs dbs : dbsList) {
|
||||
Map<String, Integer> goodsRequireOfDbsMap = new HashMap<>();// 当前dbs的物料需求
|
||||
Map<String, Integer> goodsRequireOfProductMap;// 当前成品的物料需求
|
||||
// 获得物料需求
|
||||
if (dbs.getDbsStatus() == 0) {
|
||||
if (goodsRequireByProductMap.containsKey(dbs.getProductIdOrigin())) {
|
||||
// 包含原始成品号
|
||||
goodsRequireOfProductMap = goodsRequireByProductMap.get(dbs.getProductIdOrigin());
|
||||
} else {
|
||||
goodsRequireOfProductMap = getGoodsRequireMapOfServiceProduct(dbs.getProductIdOrigin());
|
||||
if (!goodsRequireOfProductMap.isEmpty()) {
|
||||
// 存在服务件配料单,添加这个总成的Map
|
||||
goodsRequireByProductMap.put(dbs.getProductIdOrigin(), goodsRequireOfProductMap);
|
||||
} else {
|
||||
if (goodsRequireByProductMap.containsKey(dbs.getProductId())) {
|
||||
// 直接获得当前总成的物料需求
|
||||
goodsRequireOfProductMap = goodsRequireByProductMap.get(dbs.getProductId());
|
||||
} else {
|
||||
// 去查询非服务件配料单
|
||||
goodsRequireOfProductMap = getGoodsRequireMapOfNonServiceProduct(dbs.getProductId());
|
||||
if (goodsRequireOfProductMap.isEmpty()) {
|
||||
return BaseWmsApiResponse.error("工单" + dbs.getWorkOrder() + "的物料需求为空,请检查数据。");
|
||||
}
|
||||
// 添加这个非服务件配件清单的map
|
||||
goodsRequireByProductMap.put(dbs.getProductId(), goodsRequireOfProductMap);
|
||||
}
|
||||
}
|
||||
}
|
||||
// 需求*产量
|
||||
for (String goodsId : goodsRequireOfProductMap.keySet()) {
|
||||
goodsRequireOfDbsMap.put(goodsId, goodsRequireOfProductMap.get(goodsId) * dbs.getPlanProduction());
|
||||
}
|
||||
} else {
|
||||
// 查询已经生成的工作清单里面的物料需求
|
||||
goodsRequireOfDbsMap = getRemainRequireMapOfOrder(dbs.getWorkOrder());
|
||||
}
|
||||
// 合并需求
|
||||
mergeRequire(totalGoodsRequireMap, goodsRequireOfDbsMap);
|
||||
Map<String, Integer> totalGoodsRequireMap;
|
||||
try {
|
||||
totalGoodsRequireMap = getGoodsRequireMap(dbsList);
|
||||
} catch (Exception e) {
|
||||
return BaseWmsApiResponse.error(e.getMessage());
|
||||
}
|
||||
// 获取需要的物料的基本信息
|
||||
List<String> goodsIds = new ArrayList<>(totalGoodsRequireMap.keySet());
|
||||
|
|
@ -795,6 +762,77 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
return BaseWmsApiResponse.success("生成看板需求成功。");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取物料需求
|
||||
* @param goodsRequireRequest 请求参数
|
||||
* @return 响应结果
|
||||
*/
|
||||
@Override
|
||||
public WmsApiResponse<List<GoodsRequireVo>> getGoodsRequirement(GoodsRequireRequest goodsRequireRequest) {
|
||||
// 判断工单列表是否为空
|
||||
if (goodsRequireRequest == null) {
|
||||
return WmsApiResponse.error("查询参数为空。", null);
|
||||
}
|
||||
if (goodsRequireRequest.getOrderIds() == null || goodsRequireRequest.getOrderIds().isEmpty()) {
|
||||
return WmsApiResponse.error("工单列表为空,无法生成需求。", null);
|
||||
}
|
||||
// 查询出所有的dbs
|
||||
List<TAppDbs> dbsList = appDbsService.list(new LambdaQueryWrapper<TAppDbs>()
|
||||
.in(TAppDbs::getWorkOrder, goodsRequireRequest.getOrderIds())
|
||||
.lt(TAppDbs::getDbsStatus, 2));
|
||||
// 总的物料需求
|
||||
Map<String, Integer> totalGoodsRequireMap;
|
||||
try {
|
||||
totalGoodsRequireMap = getGoodsRequireMap(dbsList);
|
||||
} catch (Exception e) {
|
||||
return WmsApiResponse.error(e.getMessage(), null);
|
||||
}
|
||||
// 获取需要的物料的基本信息
|
||||
List<String> goodsIds = new ArrayList<>(totalGoodsRequireMap.keySet());
|
||||
if (goodsIds.isEmpty()) {
|
||||
return WmsApiResponse.success("获取需求成功。", Collections.emptyList());
|
||||
}
|
||||
// 物料信息
|
||||
List<TAppGoods> goodsList = appGoodsService.list(new LambdaQueryWrapper<TAppGoods>()
|
||||
.in(TAppGoods::getGoodsId, goodsIds));
|
||||
// 整合物料信息为map
|
||||
Map<String, TAppGoods> filterGoodsMap = goodsList.stream().collect(Collectors.toMap(TAppGoods::getGoodsId, goods -> goods));
|
||||
// 获取筛选过的需要的物料的库存信息
|
||||
List<TAppStock> stockList = appStockService.list(new LambdaQueryWrapper<TAppStock>()
|
||||
.in(TAppStock::getGoodsId, filterGoodsMap.keySet())
|
||||
.gt(TAppStock::getRemainNum, 0));
|
||||
// 生成物料数量map
|
||||
Map<String, Integer> stockByGoodsMap = new HashMap<>();
|
||||
for (TAppStock stock : stockList) {
|
||||
if (stockByGoodsMap.containsKey(stock.getGoodsId())) {
|
||||
stockByGoodsMap.replace(stock.getGoodsId(), stockByGoodsMap.get(stock.getGoodsId()) + stock.getRemainNum());
|
||||
} else {
|
||||
stockByGoodsMap.put(stock.getGoodsId(), stock.getRemainNum());
|
||||
}
|
||||
}
|
||||
// 获取需求
|
||||
List<GoodsRequireVo> resultList = new ArrayList<>();
|
||||
for (String goodsId : filterGoodsMap.keySet()) {
|
||||
TAppGoods thisGoods = filterGoodsMap.get(goodsId);
|
||||
// 需求数量
|
||||
int needNum = totalGoodsRequireMap.get(goodsId);
|
||||
// 库存数量
|
||||
int stockNum = stockByGoodsMap.getOrDefault(goodsId, 0);
|
||||
resultList.add(new GoodsRequireVo(
|
||||
goodsId,
|
||||
thisGoods.getGoodsDescription(),
|
||||
needNum,
|
||||
stockNum,
|
||||
Math.max(needNum - stockNum, 0),
|
||||
thisGoods.getFeedingType().toUpperCase(),
|
||||
thisGoods.getPutArea().toUpperCase()));
|
||||
}
|
||||
// 对结果集排序,缺料放于最前
|
||||
return WmsApiResponse.success("获取需求成功。", resultList.stream()
|
||||
.sorted(Comparator.comparing(GoodsRequireVo::getLackQty, Comparator.reverseOrder()))
|
||||
.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询图纸---实现
|
||||
*
|
||||
|
|
@ -1329,16 +1367,25 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
Map<String, Integer> goodsRequireMap = new HashMap<>();
|
||||
// 查找到这个工单下未完成的工作
|
||||
List<TAppWork> workList = appWorkService.list(new LambdaQueryWrapper<TAppWork>()
|
||||
.eq(TAppWork::getWorkOrder, workOrder)
|
||||
.ne(TAppWork::getWorkStatus, 2));
|
||||
.eq(TAppWork::getWorkOrder, workOrder));
|
||||
if (workList == null || workList.isEmpty()) {
|
||||
return goodsRequireMap;
|
||||
}
|
||||
for (TAppWork work : workList) {
|
||||
if (goodsRequireMap.containsKey(work.getGoodsId())) {
|
||||
goodsRequireMap.replace(work.getGoodsId(), goodsRequireMap.get(work.getGoodsId()) + work.getNeedNum() - work.getFinishNum());
|
||||
if (work.getWorkStatus() == 2 && work.getLackStatus() == 0) {
|
||||
// 已完成且不缺料
|
||||
continue;
|
||||
}
|
||||
int remainNeedNum;
|
||||
if (work.getWorkStatus() == 2) {
|
||||
remainNeedNum = work.getNeedNum() - work.getFinishNum();
|
||||
} else {
|
||||
goodsRequireMap.put(work.getGoodsId(), work.getNeedNum() - work.getFinishNum());
|
||||
remainNeedNum = work.getNeedNum() - work.getDistributeNum();
|
||||
}
|
||||
if (goodsRequireMap.containsKey(work.getGoodsId())) {
|
||||
goodsRequireMap.replace(work.getGoodsId(), goodsRequireMap.get(work.getGoodsId()) + remainNeedNum);
|
||||
} else {
|
||||
goodsRequireMap.put(work.getGoodsId(), remainNeedNum);
|
||||
}
|
||||
}
|
||||
return goodsRequireMap;
|
||||
|
|
@ -1394,7 +1441,8 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
work.getGoodsId(),
|
||||
work.getBoxNo(),
|
||||
thisNeedNum,
|
||||
thisNeedNum
|
||||
thisNeedNum,
|
||||
work.getKittingRemark()
|
||||
);
|
||||
// 查找到这个库外料
|
||||
TAppGoods outGoods = new TAppGoods();
|
||||
|
|
@ -1658,6 +1706,7 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
tempServiceProductWork.setIsOut(0);
|
||||
}
|
||||
tempServiceProductWork.setLackStatus(0);
|
||||
tempServiceProductWork.setKittingRemark(dbs.getKittingRemark());// ECN备注
|
||||
workList.add(tempServiceProductWork);
|
||||
}
|
||||
// 查询服务件是否包含单片
|
||||
|
|
@ -1692,6 +1741,7 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
tempSingleServiceProductWork.setIsOut(0);
|
||||
}
|
||||
tempSingleServiceProductWork.setLackStatus(0);
|
||||
tempSingleServiceProductWork.setKittingRemark(dbs.getKittingRemark());// ECN备注
|
||||
workList.add(tempSingleServiceProductWork);
|
||||
}
|
||||
}
|
||||
|
|
@ -1728,6 +1778,7 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
tempNonServiceProductWork.setIsOut(0);
|
||||
}
|
||||
tempNonServiceProductWork.setLackStatus(0);
|
||||
tempNonServiceProductWork.setKittingRemark(dbs.getKittingRemark());// ECN备注
|
||||
workList.add(tempNonServiceProductWork);
|
||||
}
|
||||
// 查询服务件是否包含单片
|
||||
|
|
@ -1762,7 +1813,62 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
|
|||
tempSingleNonServiceProductWork.setIsOut(0);
|
||||
}
|
||||
tempSingleNonServiceProductWork.setLackStatus(0);
|
||||
tempSingleNonServiceProductWork.setKittingRemark(dbs.getKittingRemark());// ECN备注
|
||||
workList.add(tempSingleNonServiceProductWork);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有物料需求
|
||||
* @param dbsList dbs计划
|
||||
* @return getGoodsRequireMap 结果
|
||||
* @throws Exception 异常
|
||||
*/
|
||||
private Map<String, Integer> getGoodsRequireMap(List<TAppDbs> dbsList) throws Exception {
|
||||
// 总的物料需求
|
||||
Map<String, Integer> totalGoodsRequireMap = new HashMap<>();
|
||||
// 物料数量需求---根据总成号区分
|
||||
Map<String, Map<String, Integer>> goodsRequireByProductMap = new HashMap<>();
|
||||
// 迭代计划表,获取
|
||||
for (TAppDbs dbs : dbsList) {
|
||||
Map<String, Integer> goodsRequireOfDbsMap = new HashMap<>();// 当前dbs的物料需求
|
||||
Map<String, Integer> goodsRequireOfProductMap;// 当前成品的物料需求
|
||||
// 获得物料需求
|
||||
if (dbs.getDbsStatus() == 0) {
|
||||
if (goodsRequireByProductMap.containsKey(dbs.getProductIdOrigin())) {
|
||||
// 包含原始成品号
|
||||
goodsRequireOfProductMap = goodsRequireByProductMap.get(dbs.getProductIdOrigin());
|
||||
} else {
|
||||
goodsRequireOfProductMap = getGoodsRequireMapOfServiceProduct(dbs.getProductIdOrigin());
|
||||
if (!goodsRequireOfProductMap.isEmpty()) {
|
||||
// 存在服务件配料单,添加这个总成的Map
|
||||
goodsRequireByProductMap.put(dbs.getProductIdOrigin(), goodsRequireOfProductMap);
|
||||
} else {
|
||||
if (goodsRequireByProductMap.containsKey(dbs.getProductId())) {
|
||||
// 直接获得当前总成的物料需求
|
||||
goodsRequireOfProductMap = goodsRequireByProductMap.get(dbs.getProductId());
|
||||
} else {
|
||||
// 去查询非服务件配料单
|
||||
goodsRequireOfProductMap = getGoodsRequireMapOfNonServiceProduct(dbs.getProductId());
|
||||
if (goodsRequireOfProductMap.isEmpty()) {
|
||||
throw new Exception("工单" + dbs.getWorkOrder() + "的物料需求为空,请检查数据。");
|
||||
}
|
||||
// 添加这个非服务件配件清单的map
|
||||
goodsRequireByProductMap.put(dbs.getProductId(), goodsRequireOfProductMap);
|
||||
}
|
||||
}
|
||||
}
|
||||
// 需求*产量
|
||||
for (String goodsId : goodsRequireOfProductMap.keySet()) {
|
||||
goodsRequireOfDbsMap.put(goodsId, goodsRequireOfProductMap.get(goodsId) * dbs.getPlanProduction());
|
||||
}
|
||||
} else {
|
||||
// 查询已经生成的工作清单里面的物料需求
|
||||
goodsRequireOfDbsMap = getRemainRequireMapOfOrder(dbs.getWorkOrder());
|
||||
}
|
||||
// 合并需求
|
||||
mergeRequire(totalGoodsRequireMap, goodsRequireOfDbsMap);
|
||||
}
|
||||
return totalGoodsRequireMap;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -110,7 +110,6 @@ public class LoginControllerServiceImpl implements ILoginControllerService {
|
|||
}
|
||||
List<MenuVo> menuVoList = new LinkedList<>();
|
||||
// 查找一级菜单
|
||||
// TODO 这里可以用递归优化,减少代码量
|
||||
for (TSysMenu firstMenu : menuPoList) {
|
||||
if (AppConstant.ROOT_MENU_ID.equals(firstMenu.getParentId())) {// 查找到所有的一级子菜单
|
||||
MenuVo tempFirstMenu = new MenuVo();
|
||||
|
|
|
|||
|
|
@ -17,6 +17,8 @@ import com.wms_main.service.controller.IStockControllerService;
|
|||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 库存控制类 服务实现
|
||||
*/
|
||||
|
|
@ -45,11 +47,11 @@ public class StockControllerServiceImpl implements IStockControllerService {
|
|||
.eq(stockQuery.getStockStatus() != null, TAppStock::getStockStatus, stockQuery.getStockStatus())
|
||||
.eq(stockQuery.getGoodsStatus() != null, TAppStock::getGoodsStatus, stockQuery.getGoodsStatus());
|
||||
if (stockQuery.getFromDate() != null) {
|
||||
lambdaQueryWrapper.ge(TAppStock::getFirstInTime, stockQuery.getFromDate().atStartOfDay());
|
||||
lambdaQueryWrapper.ge(TAppStock::getFirstInTime, LocalDateTime.of(stockQuery.getFromDate(), LocalDateTime.MIN.toLocalTime()));
|
||||
}
|
||||
if (stockQuery.getToDate() != null) {
|
||||
// toDate + 1天的凌晨。
|
||||
lambdaQueryWrapper.lt(TAppStock::getFirstInTime, stockQuery.getToDate().plusDays(1).atStartOfDay());
|
||||
lambdaQueryWrapper.le(TAppStock::getFirstInTime, LocalDateTime.of(stockQuery.getToDate(), LocalDateTime.MAX.toLocalTime()));
|
||||
}
|
||||
Page<TAppStock> stockPage = appStockService.page(page, lambdaQueryWrapper);
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
package com.wms_main.service.controller.serviceImpl;
|
||||
|
||||
import com.wms_main.model.dto.request.wms.BaseWmsRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.service.controller.ISystemControllerService;
|
||||
import com.wms_main.service.system.ISystemService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 系统控制类 服务实现
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class SystemControllerServiceImpl implements ISystemControllerService {
|
||||
private final ISystemService systemService;// 系统服务
|
||||
|
||||
/**
|
||||
* 重启系统---实现
|
||||
* @param baseWmsRequest 请求
|
||||
* @return 重启结果
|
||||
*/
|
||||
@Override
|
||||
public BaseWmsApiResponse restartSystem(BaseWmsRequest baseWmsRequest) {
|
||||
return systemService.restartSystem() ? BaseWmsApiResponse.success("重启系统成功。") : BaseWmsApiResponse.error("重启系统失败。");
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新加载配置文件---实现
|
||||
* @param baseWmsRequest 请求
|
||||
* @return 重新加载结果
|
||||
*/
|
||||
@Override
|
||||
public BaseWmsApiResponse reloadConfig(BaseWmsRequest baseWmsRequest) {
|
||||
return systemService.reloadConfig() ? BaseWmsApiResponse.success("重载配置成功。") : BaseWmsApiResponse.error("重载配置失败。");
|
||||
}
|
||||
}
|
||||
|
|
@ -4,16 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.wms_main.constant.enums.wcs.WcsStackerTaskStatusEnums;
|
||||
import com.wms_main.constant.enums.wms.WmsStackerTaskStatusEnums;
|
||||
import com.wms_main.dao.ITAppTaskBakService;
|
||||
import com.wms_main.dao.ITAppTaskService;
|
||||
import com.wms_main.dao.ITAppWcsTaskBakService;
|
||||
import com.wms_main.dao.ITAppWcsTaskService;
|
||||
import com.wms_main.dao.*;
|
||||
import com.wms_main.model.dto.request.wms.OutsUpdateRequest;
|
||||
import com.wms_main.model.dto.request.wms.WmsTaskRequest;
|
||||
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
|
||||
import com.wms_main.model.po.TAppTask;
|
||||
import com.wms_main.model.po.TAppTaskBak;
|
||||
import com.wms_main.model.po.TAppWcsTask;
|
||||
import com.wms_main.model.po.TAppWcsTaskBak;
|
||||
import com.wms_main.model.po.*;
|
||||
import com.wms_main.repository.utils.ConvertUtils;
|
||||
import com.wms_main.repository.utils.StringUtils;
|
||||
import com.wms_main.service.controller.ITaskOperationControllerService;
|
||||
|
|
@ -34,9 +29,14 @@ public class TaskOperationControllerServiceImpl implements ITaskOperationControl
|
|||
private final ITAppTaskBakService appTaskBakService;// wms任务记录服务
|
||||
private final ITAppWcsTaskService appWcsTaskService;// wcs任务服务
|
||||
private final ITAppWcsTaskBakService appWcsTaskBakService;// wcs任务记录服务
|
||||
private final ITAppOutsService appOutsService;// 出库单服务
|
||||
private final ITAppOutsRecordService appOutsRecordService;// 出库单记录服务
|
||||
private final ITAppPickPlanService appPickPlanService;// 拣选计划服务
|
||||
private final ITAppPickTaskService appPickTaskService;// 拣选任务服务
|
||||
|
||||
/**
|
||||
* 删除wms任务
|
||||
*
|
||||
* @param wmsTaskRequest 请求参数
|
||||
* @return 删除结果
|
||||
*/
|
||||
|
|
@ -60,6 +60,7 @@ public class TaskOperationControllerServiceImpl implements ITaskOperationControl
|
|||
|
||||
/**
|
||||
* 更新wms任务
|
||||
*
|
||||
* @param wmsTaskRequest 请求参数
|
||||
* @return 更新结果
|
||||
*/
|
||||
|
|
@ -176,24 +177,95 @@ public class TaskOperationControllerServiceImpl implements ITaskOperationControl
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新当前的出库单任务---取消或者完成
|
||||
*
|
||||
* @param outsUpdateRequest 请求
|
||||
* @return 处理结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public BaseWmsApiResponse updateOutsTask(OutsUpdateRequest outsUpdateRequest) {
|
||||
// 校验参数
|
||||
if (outsUpdateRequest == null) {
|
||||
return BaseWmsApiResponse.error("请求参数不能为NULL。");
|
||||
}
|
||||
if (StringUtils.isEmpty(outsUpdateRequest.getTaskId())) {
|
||||
return BaseWmsApiResponse.error("请求缺少任务号taskId。");
|
||||
}
|
||||
if (outsUpdateRequest.getUpdateType() == null) {
|
||||
return BaseWmsApiResponse.error("请求缺少更新类型updateType。");
|
||||
}
|
||||
// 查询对应的出库单
|
||||
TAppOuts targetOuts = appOutsService.getById(outsUpdateRequest.getTaskId());
|
||||
if (targetOuts == null) {
|
||||
return BaseWmsApiResponse.error("未查询到对应的出库单。");
|
||||
}
|
||||
// 查询对应的pickPlan
|
||||
List<TAppPickPlan> pickPlansOfThisTask = appPickPlanService.list(new LambdaQueryWrapper<TAppPickPlan>()
|
||||
.eq(TAppPickPlan::getWorkIndex, targetOuts.getTaskId()));
|
||||
if (pickPlansOfThisTask != null && !pickPlansOfThisTask.isEmpty()) {
|
||||
// 查询这些plan包含的拣选任务
|
||||
List<TAppPickTask> pickTasksOfThisTask = appPickTaskService.list(new LambdaQueryWrapper<TAppPickTask>()
|
||||
.eq(TAppPickTask::getPickStand, targetOuts.getDestination())
|
||||
.in(TAppPickTask::getVehicleId, pickPlansOfThisTask.stream().map(TAppPickPlan::getVehicleId).distinct().toList()));
|
||||
if (pickTasksOfThisTask != null && !pickTasksOfThisTask.isEmpty()) {
|
||||
// 如果存在pickPlan且存在pickTask,那么不允许后续操作。
|
||||
return BaseWmsApiResponse.error("当前任务已经下发且未完成,不可进行后续操作。");
|
||||
}
|
||||
}
|
||||
// 根据不用的更新类型,进行操作
|
||||
if (outsUpdateRequest.getUpdateType() == 1) {// CANCEL
|
||||
// 移除这个出库单,并删除其对应的pickPlan
|
||||
appOutsService.removeById(targetOuts.getTaskId());
|
||||
appPickPlanService.remove(new LambdaQueryWrapper<TAppPickPlan>()
|
||||
.eq(TAppPickPlan::getWorkIndex, targetOuts.getTaskId()));
|
||||
} else if (outsUpdateRequest.getUpdateType() == 2) {// FINISH
|
||||
// 移除这个出库单,生成记录,并删除对应的pickPlan
|
||||
appOutsService.removeById(targetOuts.getTaskId());
|
||||
appOutsRecordService.save(new TAppOutsRecord(
|
||||
targetOuts.getTaskId(),
|
||||
targetOuts.getGoodsId(),
|
||||
targetOuts.getVehicleId(),
|
||||
targetOuts.getNeedNum(),
|
||||
targetOuts.getDistributeNum(),
|
||||
targetOuts.getPickNum(),
|
||||
targetOuts.getOutType(),
|
||||
targetOuts.getDestination(),
|
||||
targetOuts.getUserName(),
|
||||
targetOuts.getReason(),
|
||||
targetOuts.getRequestTime()
|
||||
));
|
||||
appPickPlanService.remove(new LambdaQueryWrapper<TAppPickPlan>()
|
||||
.eq(TAppPickPlan::getWorkIndex, targetOuts.getTaskId()));
|
||||
} else if (outsUpdateRequest.getUpdateType() == 3) {// REBOOT
|
||||
// 将已分配数量更改掉,并删除pickPlan
|
||||
targetOuts.setDistributeNum(targetOuts.getNeedNum() - targetOuts.getPickNum());
|
||||
appOutsService.updateById(targetOuts);
|
||||
appPickPlanService.remove(new LambdaQueryWrapper<TAppPickPlan>()
|
||||
.eq(TAppPickPlan::getWorkIndex, targetOuts.getTaskId()));
|
||||
} else {
|
||||
return BaseWmsApiResponse.error("更新类型错误。");
|
||||
}
|
||||
return BaseWmsApiResponse.success("更新信息成功。");
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新详情
|
||||
* @param targetTask 目标任务
|
||||
*
|
||||
* @param targetTask 目标任务
|
||||
* @param wmsTaskRequest 请求信息
|
||||
*/
|
||||
private void updateDetailInfoExceptStatus(TAppTask targetTask, WmsTaskRequest wmsTaskRequest) {
|
||||
targetTask.setTaskType(wmsTaskRequest.getTaskType());
|
||||
targetTask.setTaskPriority(wmsTaskRequest.getTaskPriority());
|
||||
targetTask.setVehicleId(wmsTaskRequest.getVehicleId());
|
||||
targetTask.setOrigin(wmsTaskRequest.getOrigin());
|
||||
targetTask.setDestination(wmsTaskRequest.getDestination());
|
||||
targetTask.setWcsTaskId(wmsTaskRequest.getWcsTaskId());
|
||||
targetTask.setGoodsId(wmsTaskRequest.getGoodsId());
|
||||
targetTask.setOpNum(wmsTaskRequest.getOpNum());
|
||||
targetTask.setStockNum(wmsTaskRequest.getStockNum());
|
||||
targetTask.setOpUser(wmsTaskRequest.getOpUser());
|
||||
targetTask.setOpUser(wmsTaskRequest.getUserName());
|
||||
targetTask.setRemark(wmsTaskRequest.getRemark());
|
||||
targetTask.setCallStand(wmsTaskRequest.getCallStand());
|
||||
targetTask.setGoodsDesc(wmsTaskRequest.getGoodsDesc());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,18 +3,13 @@ package com.wms_main.service.controller.serviceImpl;
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wms_main.constant.enums.wms.WmsTaskTypeEnums;
|
||||
import com.wms_main.dao.ITAppOutsService;
|
||||
import com.wms_main.dao.ITAppPickTaskService;
|
||||
import com.wms_main.dao.ITAppTaskBakService;
|
||||
import com.wms_main.dao.ITAppTaskService;
|
||||
import com.wms_main.dao.*;
|
||||
import com.wms_main.model.dto.query.InventoryQuery;
|
||||
import com.wms_main.model.dto.query.OutsQuery;
|
||||
import com.wms_main.model.dto.query.PickTaskQuery;
|
||||
import com.wms_main.model.dto.query.WmsTaskQuery;
|
||||
import com.wms_main.model.dto.response.wms.WmsApiResponse;
|
||||
import com.wms_main.model.po.TAppOuts;
|
||||
import com.wms_main.model.po.TAppPickTask;
|
||||
import com.wms_main.model.po.TAppTask;
|
||||
import com.wms_main.model.po.TAppTaskBak;
|
||||
import com.wms_main.model.po.*;
|
||||
import com.wms_main.model.vo.wms.*;
|
||||
import com.wms_main.repository.utils.StringUtils;
|
||||
import com.wms_main.service.controller.ITaskQueryControllerService;
|
||||
|
|
@ -31,6 +26,8 @@ public class TaskQueryControllerServiceImpl implements ITaskQueryControllerServi
|
|||
private final ITAppTaskBakService appTaskBakService;// 任务记录服务
|
||||
private final ITAppPickTaskService appPickTaskService;// 拣选任务服务
|
||||
private final ITAppOutsService appOutsService;// 出库单服务
|
||||
private final ITAppInventoryService appInventoryService;// 盘点请求服务
|
||||
private final ITAppInventoryRecordService appInventoryRecordService;// 盘点记录服务
|
||||
|
||||
/**
|
||||
* 查询wms任务监控---分页
|
||||
|
|
@ -164,4 +161,37 @@ public class TaskQueryControllerServiceImpl implements ITaskQueryControllerServi
|
|||
PageVo<OutsVo> pageVo = PageVo.of(outsPage, OutsVo::of);
|
||||
return WmsApiResponse.success("查询出库单成功。", pageVo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询盘点相关信息---实现
|
||||
* @param inventoryQuery 查询参数
|
||||
* @return 查询结果
|
||||
*/
|
||||
@Override
|
||||
public WmsApiResponse<PageVo<InventoryRecordVo>> queryInventoryRecordByPage(InventoryQuery inventoryQuery) {
|
||||
if (inventoryQuery == null) {
|
||||
return WmsApiResponse.error("查询参数不能为NULL", null);
|
||||
}
|
||||
if (inventoryQuery.getQueryType() == 1) {
|
||||
// 查询盘点请求
|
||||
Page<TAppInventory> page = inventoryQuery.toMpPage();
|
||||
LambdaQueryWrapper<TAppInventory> lambdaQueryWrapper = new LambdaQueryWrapper<TAppInventory>()
|
||||
.like(StringUtils.isNotEmpty(inventoryQuery.getGoodsId()), TAppInventory::getGoodsId, inventoryQuery.getGoodsId())
|
||||
.like(StringUtils.isNotEmpty(inventoryQuery.getVehicleId()), TAppInventory::getVehicleId, inventoryQuery.getVehicleId())
|
||||
.eq(inventoryQuery.getInvResult() != null, TAppInventory::getInvResult, inventoryQuery.getInvResult());
|
||||
Page<TAppInventory> inventoryPage = appInventoryService.page(page, lambdaQueryWrapper);
|
||||
PageVo<InventoryRecordVo> pageVo = PageVo.of(inventoryPage, InventoryRecordVo::ofTaskPo);
|
||||
return WmsApiResponse.success("查询盘点任务成功。", pageVo);
|
||||
} else {
|
||||
// 默认;查询盘点记录
|
||||
Page<TAppInventoryRecord> page = inventoryQuery.toMpPage();
|
||||
LambdaQueryWrapper<TAppInventoryRecord> lambdaQueryWrapper = new LambdaQueryWrapper<TAppInventoryRecord>()
|
||||
.like(StringUtils.isNotEmpty(inventoryQuery.getGoodsId()), TAppInventoryRecord::getGoodsId, inventoryQuery.getGoodsId())
|
||||
.like(StringUtils.isNotEmpty(inventoryQuery.getVehicleId()), TAppInventoryRecord::getVehicleId, inventoryQuery.getVehicleId())
|
||||
.eq(inventoryQuery.getInvResult() != null, TAppInventoryRecord::getInvResult, inventoryQuery.getInvResult());
|
||||
Page<TAppInventoryRecord> inventoryRecordPage = appInventoryRecordService.page(page, lambdaQueryWrapper);
|
||||
PageVo<InventoryRecordVo> pageVo = PageVo.of(inventoryRecordPage, InventoryRecordVo::ofRecordPo);
|
||||
return WmsApiResponse.success("查询盘点记录成功。", pageVo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1102,7 +1102,8 @@ public class OutsExecutorServiceImpl implements IOutsExecutorService {
|
|||
appWork.getFinishTime(),
|
||||
appWork.getLackStatus(),
|
||||
appWork.getIsOut(),
|
||||
appWork.getProductType()
|
||||
appWork.getProductType(),
|
||||
appWork.getKittingRemark()
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,13 +5,13 @@
|
|||
Source Server Type : MySQL
|
||||
Source Server Version : 80404 (8.4.4)
|
||||
Source Host : localhost:3306
|
||||
Source Schema : wms_kate_wuxi_test
|
||||
Source Schema : wms_kate_wuxi
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80404 (8.4.4)
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 11/04/2025 11:03:02
|
||||
Date: 23/04/2025 16:29:31
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
|
|
@ -89,7 +89,6 @@ INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_i
|
|||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1742539653431010007', '110002189152', '3749878-MA', '3749878', '2025-03-28', '2025-03-29', '2025-03-29', '2025-03-31', 3, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 1, 'P3', NULL, NULL, '2025-03-21 14:47:33', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1742539653431010008', '110002203993', '4413485-A', '4413485', '2025-03-28', '2025-03-29', '2025-03-29', '2025-03-31', 4, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 1, 'P3', NULL, NULL, '2025-03-21 14:47:33', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1742539653431010009', '110002203997', '4413485-A', '4413485', '2025-03-28', '2025-03-29', '2025-03-29', '2025-03-31', 4, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-03-21 14:47:33', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1742539653431010010', '110002189126', '6457847-A', '6457847', '2025-03-28', '2025-03-29', '2025-03-29', '2025-03-31', 5, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-03-21 14:47:33', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1742539653431010011', '110002189127', '6457847-A', '6457847', '2025-03-29', '2025-03-31', '2025-03-31', '2025-04-01', 13, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-03-21 14:47:33', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1742539653431010012', '110002189154', '5429999-A', '5429999', '2025-03-29', '2025-03-31', '2025-03-31', '2025-04-01', 9, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 1, 'P3', NULL, NULL, '2025-03-21 14:47:33', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1742539653431010013', '110002189080', '2965662-A', '2965662', '2025-03-26', '2025-03-27', '2025-03-27', '2025-03-28', 10, '2#&3#组装配', '早班', 'NEU', 'Test 03#', NULL, NULL, 1, 'P3', NULL, NULL, '2025-03-21 14:47:33', '管理员', NULL, NULL);
|
||||
|
|
@ -138,7 +137,6 @@ INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_i
|
|||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743059809693010054', '110002196239', '2965662-MA', '2965662', '2025-04-03', '2025-04-07', '2025-04-07', '2025-04-08', 16, '2#&3#组装配', '早班', 'NEU', 'Test 03#', NULL, NULL, 1, 'P3', NULL, NULL, '2025-03-27 15:16:50', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743059809693010055', '110002196234', '2119696-MA', '2119696', '2025-04-03', '2025-04-07', '2025-04-07', '2025-04-08', 4, '2#&3#组装配', '早班', 'NEU', 'Test 03#', NULL, NULL, 1, 'P3', NULL, NULL, '2025-03-27 15:16:50', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743059809693010056', '110002196240', '2965662-MA', '2965662', '2025-04-03', '2025-04-07', '2025-04-07', '2025-04-08', 4, '2#&3#组装配', '早班', 'NEU', 'Test 03#', NULL, NULL, 1, 'P3', NULL, NULL, '2025-03-27 15:16:50', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743059809694010059', '110002188911', '6063779-N', '6063779', '2025-03-31', '2025-04-01', '2025-04-01', '2025-04-02', 30, '1#&4#&5#组装配', '早班', 'TRS', 'Test 05#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-03-27 15:16:50', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743059809694010060', '110002195776', '5426075-A', '5426075', '2025-03-31', '2025-04-01', '2025-04-01', '2025-04-02', 3, '1#&4#&5#组装配', '早班', 'Fenix', 'Test 05#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-03-27 15:16:50', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743059809694010075', '110002195777', '5426077-A', '5426077', '2025-04-03', '2025-04-07', '2025-04-07', '2025-04-08', 4, '1#&4#&5#组装配', '早班', 'Fenix', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-03-27 15:16:50', '管理员', NULL, NULL);
|
||||
INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743659565894010000', '110002196274', '4560777', '4560777', '2025-04-07', '2025-04-08', '2025-04-08', '2025-04-09', 3, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-04-03 13:52:46', '管理员', NULL, NULL);
|
||||
|
|
@ -3849,6 +3847,61 @@ INSERT INTO `t_app_image` (`image_id`, `product_id`, `box_no`, `image_path`, `im
|
|||
INSERT INTO `t_app_image` (`image_id`, `product_id`, `box_no`, `image_path`, `image_name`, `image_detail`, `image_type`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1743584147786010000', '5256743', 'H', './image', '5256743_H.PNG', '', 1, '2025-04-02 16:55:48', '管理员', NULL, NULL);
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for t_app_inventory
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `t_app_inventory`;
|
||||
CREATE TABLE `t_app_inventory` (
|
||||
`inventory_id` varchar(64) NOT NULL COMMENT '盘点任务id',
|
||||
`goods_id` varchar(64) NOT NULL COMMENT '料号',
|
||||
`vehicle_id` varchar(64) NOT NULL COMMENT '载具号',
|
||||
`stock_num` int DEFAULT NULL COMMENT '库存数量',
|
||||
`confirm_num` int DEFAULT NULL COMMENT '确认数量',
|
||||
`inv_stand` varchar(64) NOT NULL COMMENT '盘点站台',
|
||||
`inv_user` varchar(64) DEFAULT NULL COMMENT '盘点用户',
|
||||
`inv_type` int NOT NULL COMMENT '盘点类型',
|
||||
`inv_status` int NOT NULL COMMENT '盘点状态',
|
||||
`inv_result` int DEFAULT NULL COMMENT '盘点结果',
|
||||
`inv_create_time` datetime NOT NULL COMMENT '盘点创建时间',
|
||||
`inv_confirm_time` datetime DEFAULT NULL COMMENT '盘点确认时间',
|
||||
`inv_order_id` varchar(255) NOT NULL COMMENT '盘点单号',
|
||||
PRIMARY KEY (`inventory_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of t_app_inventory
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for t_app_inventory_record
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `t_app_inventory_record`;
|
||||
CREATE TABLE `t_app_inventory_record` (
|
||||
`inventory_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点任务id',
|
||||
`goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料号',
|
||||
`vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号',
|
||||
`stock_num` int DEFAULT NULL COMMENT '库存数量',
|
||||
`confirm_num` int DEFAULT NULL COMMENT '确认数量',
|
||||
`inv_stand` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点站台',
|
||||
`inv_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '盘点用户',
|
||||
`inv_type` int NOT NULL COMMENT '盘点类型',
|
||||
`inv_status` int NOT NULL COMMENT '盘点状态',
|
||||
`inv_result` int DEFAULT NULL COMMENT '盘点结果',
|
||||
`inv_create_time` datetime NOT NULL COMMENT '盘点创建时间',
|
||||
`inv_confirm_time` datetime DEFAULT NULL COMMENT '盘点确认时间',
|
||||
`inv_order_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点单号',
|
||||
PRIMARY KEY (`inventory_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of t_app_inventory_record
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `t_app_inventory_record` (`inventory_id`, `goods_id`, `vehicle_id`, `stock_num`, `confirm_num`, `inv_stand`, `inv_user`, `inv_type`, `inv_status`, `inv_result`, `inv_create_time`, `inv_confirm_time`, `inv_order_id`) VALUES ('1744535455291010000', '7X0448', 'ASRS-0326', 310, 320, 'P1', '管理员', 1, 2, 1, '2025-04-13 17:10:55', '2025-04-13 17:17:21', '1744535455291010000');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for t_app_jobs
|
||||
-- ----------------------------
|
||||
|
|
@ -3868,12 +3921,12 @@ CREATE TABLE `t_app_jobs` (
|
|||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('DataSolver', 'com.wms_main.service.quartz_job.job_executor.DataSolver', '0/2 * * * * ? *', 2000, 1, 0);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('OutsExecutor', 'com.wms_main.service.quartz_job.job_executor.OutsExecutor', '0/1 * * * * ? *', 1000, 1, 0);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('OutsExecutor', 'com.wms_main.service.quartz_job.job_executor.OutsExecutor', '0/1 * * * * ? *', 1000, 1, 1);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('OutsRepair', 'com.wms_main.service.quartz_job.job_executor.OutsRepair', '0/5 * * * * ? *', 5000, 1, 0);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WcsPickTaskSender', 'com.wms_main.service.quartz_job.job_executor.WcsPickTaskSender', '0/1 * * * * ? *', 1000, 1, 0);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WcsStackerTaskSender', 'com.wms_main.service.quartz_job.job_executor.WcsStackerTaskSender', '0/1 * * * * ? *', 1000, 1, 0);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WmsTaskExecutor', 'com.wms_main.service.quartz_job.job_executor.WmsTaskExecutor', '0/1 * * * * ? *', 1000, 1, 0);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WmsTaskFinisher', 'com.wms_main.service.quartz_job.job_executor.WmsTaskFinisher', '0/1 * * * * ? *', 1000, 1, 0);
|
||||
INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WmsTaskFinisher', 'com.wms_main.service.quartz_job.job_executor.WmsTaskFinisher', '0/1 * * * * ? *', 1000, 1, 1);
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
|
|
@ -4951,7 +5004,7 @@ INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lo
|
|||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-06', '', 1, 0, 1, 0, 1, 1, 2, 23, 6, 1, 'ASRS-0147', 1, '');
|
||||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-07', '', 1, 0, 1, 0, 1, 1, 2, 23, 7, 1, 'ASRS-1755', 1, '');
|
||||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-08', '', 1, 0, 1, 0, 1, 1, 2, 23, 8, 1, 'ASRS-1824', 1, '');
|
||||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-09', '', 1, 0, 1, 0, 1, 1, 2, 23, 9, 1, 'ASRS-0326', 1, '');
|
||||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-09', '', 1, 0, 0, 0, 1, 1, 2, 23, 9, 1, '', 1, '');
|
||||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-10', '', 1, 0, 1, 0, 1, 1, 2, 23, 10, 1, 'ASRS-0567', 1, '');
|
||||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-11', '', 1, 0, 1, 0, 1, 1, 2, 23, 11, 1, 'ASRS-1048', 1, '');
|
||||
INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-12', '', 1, 1, 0, 0, 1, 1, 2, 23, 12, 1, '', 1, '');
|
||||
|
|
@ -6216,6 +6269,7 @@ CREATE TABLE `t_app_outs` (
|
|||
-- Records of t_app_outs
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `t_app_outs` (`task_id`, `goods_id`, `vehicle_id`, `need_num`, `distribute_num`, `pick_num`, `out_type`, `destination`, `user_name`, `reason`, `request_time`) VALUES ('1745222923178010000', '', '', 1, 1, 0, 1, 'P1', '管理员', '', '2025-04-21 16:08:43');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
|
|
@ -6349,6 +6403,7 @@ CREATE TABLE `t_app_pick_task` (
|
|||
-- Records of t_app_pick_task
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `t_app_pick_task` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('1744535455422010000', 'P1', 'ASRS-0326', 3, '2025-04-13 17:10:55', '2025-04-20 15:39:14', '2025-04-22 15:39:18', '2025-04-23 15:39:22');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
|
|
@ -7230,7 +7285,7 @@ CREATE TABLE `t_app_product` (
|
|||
`model` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '机型',
|
||||
`product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成品号--dbs零件号',
|
||||
`goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料号',
|
||||
`goods_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料物料描述',
|
||||
`goods_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原材料物料描述',
|
||||
`quantity_1_pair` int NOT NULL COMMENT '单套数量',
|
||||
`box_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料盒号',
|
||||
`quantity_of_pair` int NOT NULL COMMENT '套数',
|
||||
|
|
@ -17635,7 +17690,7 @@ CREATE TABLE `t_app_single_product` (
|
|||
`model` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '机型',
|
||||
`product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成品号--dbs零件号',
|
||||
`goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料号',
|
||||
`goods_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料物料描述',
|
||||
`goods_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原材料物料描述',
|
||||
`quantity_1_pair` int NOT NULL COMMENT '单套数量',
|
||||
`box_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料盒号',
|
||||
`quantity_of_pair` int NOT NULL COMMENT '套数',
|
||||
|
|
@ -17688,7 +17743,7 @@ CREATE TABLE `t_app_stand` (
|
|||
-- Records of t_app_stand
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('P1', 1, 1, '10.90.80.53', '1号拣选站台', '1号拣选站台', '2025-02-15 15:23:08', 'admin');
|
||||
INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('P1', 1, 1, '127.0.0.1', '1号拣选站台', '1号拣选站台', '2025-02-15 15:23:08', 'admin');
|
||||
INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('P2', 1, 1, '10.90.80.114', '2号拣选站台', '2号拣选站台', '2025-02-15 15:23:41', 'admin');
|
||||
INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('P3', 1, 1, '10.90.80.125', '3号拣选站台', '3号拣选站台', '2025-02-15 15:26:25', 'admin');
|
||||
INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('R1', 2, 1, '10.90.21.19', '1号入库站台', '1号入库站台', '2025-02-15 15:28:10', 'admin');
|
||||
|
|
@ -17745,6 +17800,8 @@ CREATE TABLE `t_app_stock` (
|
|||
`goods_desc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
|
||||
`expire_date` date DEFAULT NULL,
|
||||
`sled` int DEFAULT NULL,
|
||||
`last_inventory_time` datetime DEFAULT NULL COMMENT '上次盘点时间',
|
||||
`last_inventory_id` varchar(64) DEFAULT NULL COMMENT '上次盘点id',
|
||||
PRIMARY KEY (`stock_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
|
|
@ -17752,180 +17809,180 @@ CREATE TABLE `t_app_stock` (
|
|||
-- Records of t_app_stock
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534689406010000', 'ASRS-0326', 'A02-23-09', 1, '7X0448', 0, '2025-03-21 13:23:03', 'clc', '2025-03-21 13:24:49', 'clc', 320, 320, 320, 'NUT-HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534724405010000', 'ASRS-0325', 'A04-29-04', 0, '6V8676', 0, '2025-03-21 13:23:56', 'clc', '2025-03-21 13:25:24', 'clc', 300, 300, 300, 'SEAL-O-RING', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534760406010000', 'ASRS-0324', 'A04-31-04', 0, '6V8398', 0, '2025-03-21 13:24:35', 'clc', '2025-04-01 10:09:28', 'clc', 2000, 1879, 1879, 'SEAL-O-RING-ORFS', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534779408010000', 'ASRS-0323', 'A04-30-03', 0, '8T4182', 0, '2025-03-21 13:24:55', 'clc', '2025-03-21 13:26:19', 'clc', 300, 300, 300, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534826405010000', 'ASRS-0322', 'A01-26-11', 0, '4J0519', 0, '2025-03-21 13:25:40', 'clc', '2025-03-21 13:27:06', 'clc', 500, 500, 500, 'SEAL-O-RING', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534865406010000', 'ASRS-0312', 'A04-31-02', 0, '3D4603', 0, '2025-03-21 13:26:19', 'clc', '2025-03-21 13:27:45', 'clc', 250, 250, 250, 'PLUG-PIPE', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534929405010000', 'ASRS-0311', 'A01-31-06', 0, '5S7383', 0, '2025-03-21 13:27:14', 'clc', '2025-03-21 13:28:49', 'clc', 400, 400, 400, 'BOLT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742534983407010000', 'ASRS-0310', 'A04-28-06', 0, '1159977', 0, '2025-03-21 13:28:20', 'clc', '2025-03-21 13:29:43', 'clc', 30, 30, 30, 'PLUG-LDSTOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742535050406010000', 'ASRS-0309', 'A01-32-05', 0, '9X8256', 0, '2025-03-21 13:29:22', 'clc', '2025-03-21 13:30:50', 'clc', 2000, 2000, 2000, 'WASHER-HARD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742535078405010000', 'ASRS-0308', 'A04-29-05', 0, '1H1023', 0, '2025-03-21 13:29:56', 'clc', '2025-03-21 13:31:18', 'clc', 500, 500, 500, 'SEAL-O RING', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742538914406010000', 'ASRS-0321', 'A02-33-04', 0, '7T8797', 0, '2025-03-21 14:33:48', 'clc', '2025-03-21 14:35:14', 'clc', 228, 228, 228, 'SPACER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742538942406010000', 'ASRS-0307', 'A03-27-08', 0, '6K0806', 0, '2025-03-21 14:34:20', 'clc', '2025-03-21 14:35:42', 'clc', 800, 800, 800, 'STRAP-CABLE', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742538976406010000', 'ASRS-0320', 'A02-34-04', 0, '5H6005', 0, '2025-03-21 14:34:47', 'clc', '2025-03-21 14:36:16', 'clc', 1400, 1400, 1400, 'SEAL-O RING', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742539022406010000', 'ASRS-0306', 'A03-35-04', 0, '5M2057', 0, '2025-03-21 14:35:07', 'clc', '2025-04-01 10:15:43', 'clc', 1000, 913, 913, 'SEAL-O-RING', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742539052405010000', 'ASRS-0319', 'A03-28-07', 0, '4J0527', 0, '2025-03-21 14:36:07', 'clc', '2025-03-21 14:37:32', 'clc', 250, 250, 250, 'SEAL-O-RING', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742539087406010000', 'ASRS-0318', 'A02-32-11', 0, '2S4078', 0, '2025-03-21 14:36:39', 'clc', '2025-04-01 09:26:26', 'clc', 450, 405, 405, 'SEAL-O-RING-STOR', '2030-03-20', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742539133405010000', 'ASRS-0317', 'A02-40-04', 0, '9S8001', 0, '2025-03-21 14:37:01', 'clc', '2025-04-01 09:47:03', 'clc', 1188, 1102, 1102, 'PLUG-INTL HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742539135408010000', 'ASRS-0316', 'A01-41-04', 0, '8M3175', 0, '2025-03-21 14:37:32', 'clc', '2025-04-01 10:24:15', 'clc', 700, 526, 526, 'WASHER-HARD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742602980408010000', 'ASRS-0315', 'A01-34-06', 0, '9S4182', 0, '2025-03-22 08:21:36', 'clc', '2025-04-01 10:03:00', 'clc', 350, 56, 56, 'PLUG-EXT HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742603043407010000', 'ASRS-0332', 'A01-32-11', 0, '9S8009', 0, '2025-03-22 08:22:27', 'clc', '2025-04-01 10:03:45', 'clc', 100, 13, 13, 'PLUG-LD STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742603185405010000', 'ASRS-0333', 'A02-42-02', 0, '3676001', 0, '2025-03-22 08:22:06', 'clc', '2025-04-01 10:15:14', 'clc', 160, 72, 72, 'PLUG AS-HD STOR', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742603224405010000', 'ASRS-0305', 'A01-29-07', 0, '9S8003', 0, '2025-03-22 08:24:34', 'clc', '2025-04-01 10:09:16', 'clc', 500, 413, 413, 'PLUG-INTL HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742603279406010000', 'ASRS-0304', 'A03-29-06', 0, '4K1388', 0, '2025-03-22 08:24:46', 'clc', '2025-04-01 10:03:09', 'clc', 600, 505, 505, 'SEAL-O-RING-STOR', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742615490405010000', 'ASRS-0297', 'A03-32-03', 0, '7B8194', 0, '2025-03-22 11:50:05', 'clc', '2025-03-28 09:26:10', 'clc', 183, 167, 167, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742615509408010000', 'ASRS-0299', 'A02-34-11', 0, '9J0477', 0, '2025-03-22 11:50:32', 'clc', '2025-03-28 09:25:42', 'clc', 46, 30, 30, 'PLUG', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742615541408010000', 'ASRS-0269', 'A01-36-07', 0, '8T9535', 0, '2025-03-22 11:50:53', 'clc', '2025-03-22 11:52:21', 'clc', 288, 288, 288, 'BOLT-HEX SKT HD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742615574405010000', 'ASRS-0250', 'A02-35-10', 0, '6J4694', 0, '2025-03-22 11:51:30', 'clc', '2025-03-28 09:26:17', 'clc', 297, 281, 281, 'PLUG-LD STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742615619405010000', 'ASRS-0247', 'A01-42-01', 0, '7T8810', 0, '2025-03-22 11:52:16', 'clc', '2025-03-22 11:53:39', 'clc', 271, 271, 271, 'PLUNGER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624058414010000', 'ASRS-1907', 'A02-38-02', 0, '5H3193', 0, '2025-03-22 14:12:38', 'clc', '2025-03-26 15:31:56', 'clc', 200, 132, 132, 'PIN-SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624101407010000', 'ASRS-0370', 'A04-33-06', 0, '8T4224', 0, '2025-03-22 14:13:35', 'clc', '2025-03-22 14:15:01', 'clc', 3700, 3700, 3700, 'WASHER-HARD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624147405010000', 'ASRS-0368', 'A04-34-05', 0, '8T9383', 0, '2025-03-22 14:14:21', 'clc', '2025-03-22 14:15:47', 'clc', 300, 300, 300, 'BOLT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624151408010000', 'ASRS-0369', 'A02-36-07', 0, '4J9780', 0, '2025-03-22 14:13:49', 'clc', '2025-03-22 14:15:51', 'clc', 125, 125, 125, 'PLUG-NPTF', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624192406010000', 'ASRS-0366', 'A04-35-04', 0, '9J8126', 0, '2025-03-22 14:14:52', 'clc', '2025-03-22 14:16:32', 'clc', 300, 300, 300, 'PLUG-NPTF', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624198405010000', 'ASRS-0367', 'A02-37-06', 0, '8T4896', 0, '2025-03-22 14:14:39', 'clc', '2025-03-22 14:16:38', 'clc', 2500, 2500, 2500, 'WASHER-HARD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624239408010000', 'ASRS-1033', 'A04-36-03', 0, '1212051', 0, '2025-03-22 14:15:25', 'clc', '2025-03-22 14:17:19', 'clc', 200, 200, 200, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624246407010000', 'ASRS-0365', 'A02-38-05', 0, '9T4697', 0, '2025-03-22 14:15:05', 'clc', '2025-03-22 14:17:26', 'clc', 40, 40, 40, 'BOOT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624286407010000', 'ASRS-0363', 'A04-37-02', 0, '9T4685', 0, '2025-03-22 14:15:58', 'clc', '2025-03-22 14:18:06', 'clc', 200, 200, 200, 'SHIM', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624295406010000', 'ASRS-0361', 'A02-39-04', 0, '0304605', 0, '2025-03-22 14:15:33', 'clc', '2025-03-22 14:18:15', 'clc', 260, 260, 260, 'SEAL-O RING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624343405010000', 'ASRS-0267', 'A02-40-03', 0, '7J9933', 0, '2025-03-22 14:16:25', 'clc', '2025-03-22 14:19:03', 'clc', 300, 300, 300, 'SEAL-O RING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624378405010000', 'ASRS-0266', 'A03-29-11', 0, '6V4432', 0, '2025-03-22 14:16:56', 'clc', '2025-03-22 14:19:38', 'clc', 100, 100, 100, 'BOLT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624392407010000', 'ASRS-0268', 'A02-41-02', 0, '4H5232', 0, '2025-03-22 14:16:36', 'clc', '2025-03-22 14:19:52', 'clc', 1000, 1000, 1000, 'PIN-SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624421407010000', 'ASRS-0382', 'A03-30-10', 0, '8T2396', 0, '2025-03-22 14:17:23', 'clc', '2025-03-22 14:20:21', 'clc', 500, 500, 500, 'BOLT-SOCKET HD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624442405010000', 'ASRS-0265', 'A02-42-01', 0, '4J2506', 0, '2025-03-22 14:17:07', 'clc', '2025-03-22 14:20:42', 'clc', 720, 720, 720, 'SEAL-O RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624465405010000', 'ASRS-0380', 'A03-31-09', 0, '7X7888', 0, '2025-03-22 14:17:44', 'clc', '2025-03-22 14:21:05', 'clc', 250, 250, 250, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624489405010000', 'ASRS-0381', 'A01-33-11', 0, '7J0204', 0, '2025-03-22 14:17:35', 'clc', '2025-03-22 14:21:29', 'clc', 1000, 1000, 1000, 'SEAL-O-RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624536407010000', 'ASRS-0379', 'A01-34-10', 0, '6V5391', 0, '2025-03-22 14:17:54', 'clc', '2025-03-22 14:22:16', 'clc', 250, 250, 250, 'SEAL-O RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624556407010000', 'ASRS-0376', 'A02-33-11', 0, '7X0352', 0, '2025-03-22 14:20:47', 'clc', '2025-03-24 12:19:44', 'clc', 40, 36, 36, 'BOLT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624583407010000', 'ASRS-0377', 'A01-35-09', 0, '6J5899', 0, '2025-03-22 14:20:27', 'clc', '2025-03-22 14:23:03', 'clc', 20, 20, 20, 'COVER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624631407010000', 'ASRS-0354', 'A03-34-06', 0, '4J0524', 0, '2025-03-22 14:22:26', 'clc', '2025-03-22 14:23:51', 'clc', 400, 400, 400, 'SEAL-O-RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624645405010000', 'ASRS-0346', 'A01-36-08', 0, '4T1021', 0, '2025-03-22 14:22:37', 'clc', '2025-03-25 13:26:20', 'clc', 60, 55, 55, 'RETAINER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624725407010000', 'ASRS-0341', 'A03-33-07', 0, '4T0993', 0, '2025-03-22 14:23:27', 'clc', '2025-03-25 13:18:59', 'clc', 100, 86, 86, 'RETAINER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624740405010000', 'ASRS-0372', 'A01-38-06', 0, '2458472/X', 0, '2025-03-22 14:23:36', 'clc', '2025-03-22 14:25:40', 'clc', 250, 250, 250, 'PLUG-EXPANSION', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624788406010000', 'ASRS-0387', 'A01-39-05', 0, '4J8997', 0, '2025-03-22 14:23:46', 'clc', '2025-03-22 14:26:28', 'clc', 600, 600, 600, 'SEAL-O-RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624819408010000', 'ASRS-0390', 'A03-38-02', 0, '1089402', 0, '2025-03-22 14:24:14', 'clc', '2025-03-22 14:26:59', 'clc', 20, 20, 20, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624837405010000', 'ASRS-0391', 'A01-40-04', 0, '4D0514', 0, '2025-03-22 14:24:07', 'clc', '2025-03-22 14:27:17', 'clc', 150, 150, 150, 'PLUG-PTF', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624867405010000', 'ASRS-0389', 'A03-39-01', 0, '4T4207', 0, '2025-03-22 14:24:22', 'clc', '2025-03-22 14:27:47', 'clc', 75, 75, 75, 'PLUG-NPTF', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624885405010000', 'ASRS-0340', 'A01-39-06', 0, '1J9671', 0, '2025-03-22 14:24:32', 'clc', '2025-04-01 10:10:04', 'clc', 900, 797, 797, 'SEAL-O-RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624913407010000', 'ASRS-1898', 'A04-29-11', 0, '7M1297', 0, '2025-03-22 14:25:11', 'clc', '2025-03-22 14:28:33', 'clc', 55, 55, 55, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624935407010000', 'ASRS-0388', 'A03-31-04', 0, '6V8647', 0, '2025-03-22 14:25:21', 'clc', '2025-04-01 10:04:01', 'clc', 300, 126, 126, 'ADAPTER-STR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742624989407010000', 'ASRS-1901', 'A04-30-10', 0, '3J5553', 0, '2025-03-22 14:26:14', 'clc', '2025-03-22 14:29:49', 'clc', 150, 150, 150, 'GASKET', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742625029405010000', 'ASRS-0344', 'A02-34-10', 0, '1749194', 0, '2025-03-22 14:26:55', 'clc', '2025-03-22 14:30:29', 'clc', 700, 700, 700, 'BOLT-HEX FLG HD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742625064408010000', 'ASRS-0349', 'A04-31-09', 0, '6V5195', 0, '2025-03-22 14:26:39', 'clc', '2025-03-26 15:01:25', 'clc', 200, 196, 196, 'BOLT-SOCKET HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742625075407010000', 'ASRS-0339', 'A03-39-02', 0, '1D4566', 0, '2025-03-22 14:27:11', 'clc', '2025-03-24 10:11:05', 'clc', 100, 50, 50, 'BOLT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742625122405010000', 'ASRS-1902', 'A04-29-10', 0, '3P9498', 0, '2025-03-22 14:27:44', 'clc', '2025-04-01 10:16:56', 'clc', 100, 13, 13, 'PLUG-NPTF', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742625154405010000', 'ASRS-1905', 'A04-33-07', 0, '7X2535', 0, '2025-03-22 14:27:53', 'clc', '2025-03-22 14:32:34', 'clc', 600, 600, 600, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742627679407010000', 'ASRS-0352', 'A02-35-08', 0, '7X0272', 0, '2025-03-22 15:13:12', '管理员', '2025-03-22 15:14:39', '管理员', 500, 500, 500, 'BOLT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742627750407010000', 'ASRS-0345', 'A01-37-07', 0, '4D9986', 0, '2025-03-22 15:14:19', '管理员', '2025-03-22 15:15:50', '管理员', 1000, 1000, 1000, 'SEAL-O-RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742627757408010000', 'ASRS-0343', 'A04-32-07', 0, '2D6648', 0, '2025-03-22 15:14:42', '管理员', '2025-03-22 15:15:57', '管理员', 700, 700, 700, 'RING-RETAINING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742627831405010000', 'ASRS-0335', 'A01-33-10', 0, '8F9206', 0, '2025-03-22 15:15:41', '管理员', '2025-03-26 14:56:24', '管理员', 3485, 3394, 3394, 'SEAL-O-RING', '2030-03-21', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759169404010000', 'ASRS-1713', 'A02-38-06', 0, '8T5005', 0, '2025-03-24 03:39:53', '管理员', '2025-03-26 15:01:54', '管理员', 235, 183, 183, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759372405010000', 'ASRS-0545', 'A03-35-05', 0, '8T4121', 0, '2025-03-24 03:48:01', '管理员', '2025-03-26 15:07:05', '管理员', 2000, 1896, 1896, 'WASHER-HARD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759392405010000', 'ASRS-1245', 'A02-32-09', 0, '6V3965', 0, '2025-03-24 03:48:27', '管理员', '2025-04-01 09:21:03', '管理员', 250, 219, 219, 'NIPPLE-QDISC', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759472405010000', 'ASRS-1528', 'A01-38-07', 0, '8C3206', 0, '2025-03-24 03:49:21', '管理员', '2025-03-26 15:07:41', '管理员', 70, 18, 18, 'FLANGE-SPLIT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759484407010000', 'ASRS-1683', 'A01-35-10', 0, '6V0852', 0, '2025-03-24 03:49:27', '管理员', '2025-04-01 09:59:38', '管理员', 100, 69, 69, 'CAP-DUST', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759529405010000', 'ASRS-0350', 'A04-32-03', 0, '3D2824', 0, '2025-03-24 03:50:18', '管理员', '2025-04-01 10:04:43', '管理员', 1000, 556, 556, 'SEAL-O-RING-STOR', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759570405010000', 'ASRS-1026', 'A03-37-04', 0, '8T4196', 0, '2025-03-24 03:49:56', '管理员', '2025-03-26 15:08:29', '管理员', 425, 295, 295, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759576405010000', 'ASRS-0351', 'A03-36-04', 0, '7J1089', 0, '2025-03-24 03:50:25', '管理员', '2025-03-26 15:33:51', '管理员', 100, 66, 66, 'PLUG-O-RING SPL', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759617406010000', 'ASRS-0342', 'A04-30-11', 0, '7S0530', 0, '2025-03-24 03:50:46', '管理员', '2025-03-26 15:08:49', '管理员', 60, 47, 47, 'CLIP', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759623405010000', 'ASRS-1524', 'A01-31-08', 0, '2191891', 0, '2025-03-24 03:51:09', '管理员', '2025-04-01 11:40:53', '管理员', 150, 104, 104, 'PLUG AS.', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759670405010000', 'ASRS-0336', 'A01-42-02', 0, '3J1907', 0, '2025-03-24 03:51:13', '管理员', '2025-04-01 09:21:45', '管理员', 2700, 2623, 2623, 'SEAL-O-RING-STOR', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759710405010000', 'ASRS-0521', 'A04-32-08', 0, '6E5289', 0, '2025-03-24 03:51:36', '管理员', '2025-03-26 14:35:02', '管理员', 100, 74, 74, 'ADAPTER-STR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759716405010000', 'ASRS-1900', 'A01-39-02', 0, '9S8002', 0, '2025-03-24 03:51:40', '管理员', '2025-04-01 09:09:55', '管理员', 1000, 774, 774, 'PLUG-INTL HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759757405010000', 'ASRS-1023', 'A03-38-03', 0, '4564624', 0, '2025-03-24 03:52:18', '管理员', '2025-03-26 14:17:00', '管理员', 25, 15, 15, 'VALVE GP-D RLF-B', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759806405010000', 'ASRS-1899', 'A04-35-05', 0, '9S8006', 0, '2025-03-24 03:52:22', '管理员', '2025-03-26 15:34:27', '管理员', 200, 183, 183, 'PLUG-LD STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759810408010000', 'ASRS-0284', 'A03-34-07', 0, '6V9830', 0, '2025-03-24 03:53:47', '管理员', '2025-03-26 14:57:47', '管理员', 200, 174, 174, 'CAP', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759854405010000', 'ASRS-0270', 'A03-40-01', 0, '4564633', 0, '2025-03-24 03:53:11', '管理员', '2025-03-26 14:17:51', '管理员', 25, 15, 15, 'VALVE GP-D RLF-B', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759856407010000', 'ASRS-0383', 'A03-31-06', 0, '6V9833', 0, '2025-03-24 03:53:38', '管理员', '2025-04-01 09:26:42', '管理员', 50, 7, 7, 'CAP', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759946405010000', 'ASRS-1189', 'A03-32-09', 0, '4B9782', 0, '2025-03-24 03:55:05', '管理员', '2025-03-26 14:34:20', '管理员', 200, 127, 127, 'BALL', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759951408010000', 'ASRS-1030', 'A03-30-11', 0, '1298222', 0, '2025-03-24 03:54:33', '管理员', '2025-03-26 15:04:32', '管理员', 15, 12, 12, 'VALVE GP-D RLF-', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759991405010000', 'ASRS-0244', 'A02-34-09', 0, '5J2974', 0, '2025-03-24 03:55:30', '管理员', '2025-03-26 14:57:06', '管理员', 150, 124, 124, 'SEAL-O-RING', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742759999405010000', 'ASRS-1526', 'A02-41-01', 0, '3676002', 0, '2025-03-24 03:55:22', '管理员', '2025-04-01 10:16:35', '管理员', 600, 556, 556, 'PLUG AS-HD STOR', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760038405010000', 'ASRS-0385', 'A02-41-03', 0, '4J0520', 0, '2025-03-24 03:56:52', '管理员', '2025-03-26 15:09:18', '管理员', 300, 261, 261, 'SEAL-O-RING', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760084407010000', 'ASRS-1249', 'A03-36-05', 0, '1268473', 0, '2025-03-24 03:54:37', '管理员', '2025-03-26 15:02:09', '管理员', 100, 87, 87, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760093405010000', 'ASRS-0517', 'A03-38-04', 0, '9S4191', 0, '2025-03-24 03:55:59', '管理员', '2025-04-01 08:41:07', '管理员', 500, 488, 488, 'PLUG-EXT HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760131406010000', 'ASRS-0525', 'A02-35-09', 0, '5H4019', 0, '2025-03-24 03:57:27', '管理员', '2025-03-26 15:08:03', '管理员', 150, 124, 124, 'COVER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760139406010000', 'ASRS-0520', 'A03-34-08', 0, '2M9780', 0, '2025-03-24 03:54:58', '管理员', '2025-04-01 10:06:07', '管理员', 500, 396, 396, 'SEAL-O-RING-STOR', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760178405010000', 'ASRS-0334', 'A02-36-08', 0, '3J7354', 0, '2025-03-24 03:56:58', '管理员', '2025-04-01 10:07:43', '管理员', 1200, 569, 569, 'SEAL-O-RING-STOR', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760186405010000', 'ASRS-0384', 'A03-32-08', 0, '9S4185', 0, '2025-03-24 03:57:23', '管理员', '2025-04-01 09:14:34', '管理员', 250, 5, 5, 'PLUG-EXT HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760225408010000', 'ASRS-0522', 'A03-37-03', 0, '2965987', 0, '2025-03-24 03:57:55', '管理员', '2025-04-01 11:41:12', '管理员', 500, 456, 456, 'PLUG', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742760283405010000', 'ASRS-1027', 'A01-39-08', 0, '3K0360', 0, '2025-03-24 03:57:51', '管理员', '2025-04-01 10:11:11', '管理员', 3000, 2435, 2435, 'SEAL-O-RING-STOR', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742778696406010000', 'ASRS-0527', 'A04-30-09', 0, '4J7533', 0, '2025-03-24 09:10:12', 'clc', '2025-04-01 09:49:34', 'clc', 500, 414, 414, 'SEAL-O-RING-STOR', '2030-03-23', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742778743417010000', 'ASRS-1034', 'A02-33-10', 0, '6E1925', 0, '2025-03-24 09:10:38', 'clc', '2025-04-01 10:20:55', 'clc', 50, 2, 2, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742865961612010000', 'ASRS-1531', 'A01-41-03', 0, '2521631', 0, '2025-03-25 09:24:36', '管理员', '2025-03-31 09:35:11', '管理员', 172, 44, 44, 'PLUG AS.', '2030-03-24', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742870290603010000', 'ASRS-1025', 'A02-37-03', 0, '6E1925', 0, '2025-03-25 10:36:57', '管理员', '2025-03-29 13:30:36', '管理员', 38, 33, 33, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742870321605010000', 'ASRS-1221', 'A02-36-09', 0, '9F6705', 0, '2025-03-25 10:37:32', '管理员', '2025-04-01 10:17:19', '管理员', 48, 33, 33, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742870503606010000', 'ASRS-0337', 'A01-42-05', 0, '6V9834', 0, '2025-03-25 10:40:21', '管理员', '2025-04-01 10:27:25', '管理员', 18, 5, 5, 'CAP-ORFS', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742870522606010000', 'ASRS-0519', 'A02-37-08', 0, '6E1924', 0, '2025-03-25 10:40:46', '管理员', '2025-04-01 10:22:34', '管理员', 38, 13, 13, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742871088605010000', 'ASRS-1088', 'A01-36-09', 0, '2191893', 0, '2025-03-25 10:50:16', '管理员', '2025-04-05 09:10:58', '管理员', 51, 22, 22, 'PLUG AS.', '2030-03-24', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742880319605010000', 'ASRS-1032', 'A01-40-07', 0, '3603693', 0, '2025-03-25 10:50:49', '管理员', '2025-04-01 10:12:37', '管理员', 50, 24, 24, 'PLUG-EXT HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742957508606010000', 'ASRS-1443', 'A02-37-07', 0, '6E5291', 0, '2025-03-26 08:33:07', 'clc', '2025-03-26 14:58:09', 'clc', 150, 124, 124, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742957553607010000', 'ASRS-1030', 'A03-30-11', 0, '1298222', 0, '2025-03-26 08:34:55', 'clc', '2025-03-26 10:52:34', 'clc', 15, 15, 15, 'VALVE GP-D RLF-', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742957598606010000', 'ASRS-0338', 'A04-38-01', 0, '6V5230', 0, '2025-03-26 08:36:59', 'clc', '2025-04-01 10:24:27', 'clc', 250, 126, 126, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742957626605010000', 'ASRS-0386', 'A01-37-08', 0, '6J4568', 0, '2025-03-26 08:37:20', 'clc', '2025-03-31 09:27:23', 'clc', 70, 56, 56, 'BOOT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1742973803606010000', 'ASRS-1528', 'A01-38-07', 0, '8C3206', 0, '2025-03-26 15:22:08', 'clc', '2025-03-26 15:23:24', 'clc', 140, 140, 140, 'FLANGE-SPLIT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125074607010000', 'ASRS-1528', 'A01-38-07', 0, '8C3206', 0, '2025-03-28 09:23:14', 'clc', '2025-03-28 09:24:35', 'clc', 70, 70, 70, 'FLANGE-SPLIT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125323605010000', 'ASRS-1031', 'A01-37-09', 0, '6E1923', 0, '2025-03-28 09:27:26', 'clc', '2025-04-01 10:25:39', 'clc', 40, 13, 13, 'TUBE AS.', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125331608010000', 'ASRS-0386', 'A01-37-08', 0, '6J4568', 0, '2025-03-28 09:26:50', 'clc', '2025-03-28 09:28:52', 'clc', 70, 70, 70, 'BOOT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125369615010000', 'ASRS-1531', 'A01-41-03', 0, '2521631', 0, '2025-03-28 09:28:10', 'clc', '2025-03-28 09:29:30', 'clc', 200, 200, 200, 'PLUG AS.', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125382606010000', 'ASRS-1683', 'A01-35-10', 0, '6V0852', 0, '2025-03-28 09:27:47', 'clc', '2025-03-28 09:29:43', 'clc', 100, 100, 100, 'CAP-DUST', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125415603010000', 'ASRS-0348', 'A03-38-01', 0, '4681134', 0, '2025-03-28 09:28:23', 'clc', '2025-03-28 09:30:16', 'clc', 17, 17, 17, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125434606010000', 'ASRS-1254', 'A02-38-07', 0, '8C3206', 0, '2025-03-28 09:28:42', 'clc', '2025-03-28 09:30:35', 'clc', 70, 70, 70, 'FLANGE-SPLIT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125461606010000', 'ASRS-1250', 'A03-31-10', 0, '3603690', 0, '2025-03-28 09:29:11', 'clc', '2025-03-28 09:31:02', 'clc', 50, 50, 50, 'PLUG-EXT HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125486605010000', 'ASRS-1258', 'A02-39-06', 0, '4829841', 0, '2025-03-28 09:28:58', 'clc', '2025-03-28 09:31:27', 'clc', 100, 100, 100, 'RING-BACKUP', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125507605010000', 'ASRS-1592', 'A03-35-06', 0, '4J0522', 0, '2025-03-28 09:29:38', 'clc', '2025-03-28 09:31:48', 'clc', 400, 400, 400, 'SEAL-O-RING', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125539606010000', 'ASRS-1667', 'A02-40-05', 0, '1P4578', 0, '2025-03-28 09:29:25', 'clc', '2025-03-28 09:32:20', 'clc', 50, 50, 50, 'FLANGE-SPLIT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125551607010000', 'ASRS-0378', 'A04-31-10', 0, '2N7029', 0, '2025-03-28 09:30:06', 'clc', '2025-03-28 09:32:32', 'clc', 50, 50, 50, 'SPRING-CONT PIN', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125592607010000', 'ASRS-1222', 'A02-41-04', 0, '4681135', 0, '2025-03-28 09:29:53', 'clc', '2025-03-28 09:33:13', 'clc', 14, 14, 14, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125596606010000', 'ASRS-1259', 'A04-32-09', 0, '9S8005', 0, '2025-03-28 09:30:34', 'clc', '2025-03-28 09:33:17', 'clc', 200, 200, 200, 'PLUG-INTL HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125641606010000', 'ASRS-1219', 'A04-33-08', 0, '4681133', 0, '2025-03-28 09:30:50', 'clc', '2025-03-28 09:34:02', 'clc', 25, 25, 25, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125646606010000', 'ASRS-1220', 'A02-42-03', 0, '4M8239', 0, '2025-03-28 09:30:20', 'clc', '2025-03-28 09:34:07', 'clc', 60, 60, 60, 'COVER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125720605010000', 'ASRS-1271', 'A04-34-07', 0, '7X5308', 0, '2025-03-28 09:32:15', 'clc', '2025-03-28 09:35:21', 'clc', 100, 100, 100, 'CAP-DUST', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125727605010000', 'ASRS-1223', 'A01-35-11', 0, '9L9068', 0, '2025-03-28 09:31:04', 'clc', '2025-03-28 09:35:28', 'clc', 300, 300, 300, 'DOWEL', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125797605010000', 'ASRS-1660', 'A04-35-06', 0, '2608590', 0, '2025-03-28 09:32:27', 'clc', '2025-03-28 09:36:38', 'clc', 80, 80, 80, 'VALVE GP-SHTL -B', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125810603010000', 'ASRS-1244', 'A01-36-10', 0, '5H4020', 0, '2025-03-28 09:31:19', 'clc', '2025-03-28 09:36:51', 'clc', 100, 100, 100, 'FLANGE-COVER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125926611010000', 'ASRS-0384', 'A03-32-08', 0, '9S4185', 0, '2025-03-28 09:37:29', 'clc', '2025-03-28 09:38:47', 'clc', 250, 250, 250, 'PLUG-EXT HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743125992605010000', 'ASRS-0525', 'A02-35-09', 0, '5H4019', 0, '2025-03-28 09:38:24', 'clc', '2025-03-28 09:39:53', 'clc', 150, 150, 150, 'COVER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126031606010000', 'ASRS-0501', 'A02-36-11', 0, '1488356', 0, '2025-03-28 09:39:08', 'clc', '2025-04-01 10:29:03', 'clc', 16, 2, 2, 'ADAPTER AS-ELBOW', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126083605010000', 'ASRS-0313', 'A01-38-08', 0, '9S4189', 0, '2025-03-28 09:39:56', 'clc', '2025-04-01 10:04:31', 'clc', 75, 63, 63, 'PLUG-EXT HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126089606010000', 'ASRS-0017', 'A04-36-05', 0, '7X5315', 0, '2025-03-28 09:40:11', 'clc', '2025-03-28 09:41:30', 'clc', 100, 100, 100, 'COUPLING-QDISC', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126135603010000', 'ASRS-1885', 'A01-40-05', 0, '6Y4638', 0, '2025-03-28 09:40:23', 'clc', '2025-03-28 09:42:16', 'clc', 60, 60, 60, 'PLUG-LD STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126137606010000', 'ASRS-1630', 'A04-37-04', 0, '9S8004', 0, '2025-03-28 09:40:36', 'clc', '2025-03-28 09:42:18', 'clc', 600, 600, 600, 'PLUG-INTL HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126182606010000', 'ASRS-0523', 'A04-38-03', 0, '2828827', 0, '2025-03-28 09:41:24', 'clc', '2025-03-28 09:43:03', 'clc', 500, 500, 500, 'PLUG-EXPANSION', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126187606010000', 'ASRS-0999', 'A01-39-07', 0, '3603692', 0, '2025-03-28 09:40:54', 'clc', '2025-03-28 09:43:08', 'clc', 300, 300, 300, 'PLUG-HD STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126229609010000', 'ASRS-0362', 'A04-39-02', 0, '9T7419', 0, '2025-03-28 09:41:52', 'clc', '2025-03-28 09:43:50', 'clc', 8, 8, 8, 'VALVE GP-D RLF-B', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126240605010000', 'ASRS-0347', 'A01-40-06', 0, '8T4223', 0, '2025-03-28 09:41:38', 'clc', '2025-03-28 09:44:01', 'clc', 1000, 1000, 1000, 'WASHER-HARD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126277605010000', 'ASRS-0901', 'A04-40-01', 0, '3P1979', 0, '2025-03-28 09:42:15', 'clc', '2025-03-28 09:44:38', 'clc', 71, 71, 71, 'SEAL-O-RING', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126293605010000', 'ASRS-0371', 'A01-41-05', 0, '6V5555', 0, '2025-03-28 09:42:03', 'clc', '2025-03-28 09:44:54', 'clc', 500, 500, 500, 'SEAL-O RING', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126323605010000', 'ASRS-1604', 'A03-31-11', 0, '2660531', 0, '2025-03-28 09:42:58', 'clc', '2025-03-28 09:45:24', 'clc', 300, 300, 300, 'CAP-CONNECTOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126346603010000', 'ASRS-0889', 'A01-42-04', 0, '1483483', 0, '2025-03-28 09:42:31', 'clc', '2025-03-28 09:45:47', 'clc', 1000, 1000, 1000, 'PLUG', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126369607010000', 'ASRS-1371', 'A03-32-10', 0, '2147568', 0, '2025-03-28 09:43:23', 'clc', '2025-03-28 09:46:10', 'clc', 500, 500, 500, 'SEAL-O-RING-STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126399605010000', 'ASRS-1261', 'A02-35-11', 0, '1014845', 0, '2025-03-28 09:43:10', 'clc', '2025-03-28 09:46:40', 'clc', 100, 100, 100, 'PLUG-NPTF', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126414610010000', 'ASRS-0314', 'A03-33-09', 0, '1483483', 0, '2025-03-28 09:44:06', 'clc', '2025-03-28 09:46:55', 'clc', 600, 600, 600, 'PLUG', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126450606010000', 'ASRS-0302', 'A02-36-10', 0, '1160014', 0, '2025-03-28 09:43:51', 'clc', '2025-03-28 09:47:31', 'clc', 10, 10, 10, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126501612010000', 'ASRS-0327', 'A02-37-09', 0, '4681136', 0, '2025-03-28 09:44:32', 'clc', '2025-03-28 09:48:22', 'clc', 25, 25, 25, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743126553606010000', 'ASRS-1257', 'A02-38-08', 0, '7M8485', 0, '2025-03-28 09:44:42', 'clc', '2025-03-28 09:49:14', 'clc', 800, 800, 800, 'SEAL-O-RING-STOR', '2030-03-27', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743133813606010000', 'ASRS-1254', 'A02-38-07', 0, '8C3206', 0, '2025-03-28 11:48:55', 'clc', '2025-03-28 11:50:14', 'clc', 2, 2, 2, 'FLANGE-SPLIT', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743207961607010000', 'ASRS-0359', 'A04-31-05', 0, '1007000', 0, '2025-03-28 21:26:47', 'clc', '2025-04-01 10:13:21', 'clc', 140, 120, 120, 'Ring-back up', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209190603010000', 'ASRS-1529', 'A01-35-04', 0, '1007000', 0, '2025-03-29 08:44:55', '管理员', '2025-03-29 08:46:31', '管理员', 94, 94, 94, 'Ring-back up', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209207606010000', 'ASRS-0249', 'A04-05-06', 0, '6H2948', 0, '2025-03-29 08:45:37', '管理员', '2025-03-29 08:46:48', '管理员', 240, 240, 240, 'DOWEL', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209261607010000', 'ASRS-0276', 'A01-40-03', 0, '1501285', 0, '2025-03-29 08:46:03', '管理员', '2025-03-29 08:47:42', '管理员', 50, 50, 50, 'PLUG-BREATHER', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209300609010000', 'ASRS-1246', 'A04-02-11', 0, '2385082', 0, '2025-03-29 08:47:01', '管理员', '2025-03-29 08:48:21', '管理员', 500, 500, 500, 'SEAL-O-RING-STOR', '2030-03-28', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209314606010000', 'ASRS-0300', 'A01-41-02', 0, '9N4049', 0, '2025-03-29 08:46:10', '管理员', '2025-03-29 08:48:35', '管理员', 100, 100, 100, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209342605010000', 'ASRS-0248', 'A03-34-05', 0, '9S8008', 0, '2025-03-29 08:47:06', '管理员', '2025-03-29 08:49:03', '管理员', 150, 150, 150, 'PLUG-INTL HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209401611010000', 'ASRS-1392', 'A04-28-11', 0, '3603695', 0, '2025-03-29 08:48:32', '管理员', '2025-03-29 08:50:02', '管理员', 100, 100, 100, 'PLUG-HD STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743209407606010000', 'ASRS-1035', 'A01-38-09', 0, '0344160', 0, '2025-03-29 08:47:51', '管理员', '2025-03-29 08:50:08', '管理员', 150, 150, 150, 'BOLT-LOCKING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743220643144010000', 'ASRS-0273', 'A01-33-06', 0, '8T4196', 0, '2025-03-29 11:56:10', '管理员', '2025-03-29 11:57:23', '管理员', 425, 425, 425, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743220676126010000', 'ASRS-0328', 'A02-39-01', 0, '9S4684', 0, '2025-03-29 11:56:22', '管理员', '2025-03-29 11:57:56', '管理员', 50, 50, 50, 'PLUG-O-RING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743220729135010000', 'ASRS-0330', 'A02-39-05', 0, '3603688', 0, '2025-03-29 11:56:39', '管理员', '2025-03-29 11:58:49', '管理员', 200, 200, 200, 'PLUG-HD STOR', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743227358531010000', 'ASRS-0273', 'A01-33-06', 0, '8T4196', 0, '2025-03-29 13:47:59', '管理员', '2025-03-29 13:49:19', '管理员', 425, 425, 425, 'BOLT-HEX HEAD', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743229830531010000', 'ASRS-0331', 'A04-31-08', 0, '3T8236', 0, '2025-03-29 14:29:12', '管理员', '2025-04-01 10:17:45', '管理员', 44, 12, 12, 'SPRING', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743397363532010000', 'ASRS-0329', 'A01-34-11', 0, '8T8987', 0, '2025-03-31 13:01:17', '管理员', '2025-04-01 09:45:10', '管理员', 20, 8, 8, 'ADPTR-ELB 90 DEG', '2030-03-30', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743397406531010000', 'ASRS-0364', 'A01-36-03', 0, '8T8987', 0, '2025-03-31 13:01:50', '管理员', '2025-03-31 14:17:46', '管理员', 10, 9, 9, 'ADPTR-ELB 90 DEG', '2030-03-30', 1825);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743397592536010000', 'ASRS-0303', 'A01-41-06', 0, '8J6815', 0, '2025-03-31 13:05:17', '管理员', '2025-04-01 10:18:51', '管理员', 500, 458, 458, 'PLUG-INTL HEX', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`) VALUES ('1743401862531010000', 'ASRS-0298', 'A01-37-06', 0, '1007000', 0, '2025-03-31 14:15:37', '管理员', '2025-03-31 15:44:42', '管理员', 140, 134, 134, 'Ring-back up', NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534689406010000', 'ASRS-0326', '', 2, '7X0448', 0, '2025-03-21 13:23:03', 'clc', '2025-04-13 17:17:21', 'clc', 320, 320, 320, 'NUT-HEX', NULL, NULL, '2025-04-13 17:17:21', '1744535455291010000');
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534724405010000', 'ASRS-0325', 'A04-29-04', 0, '6V8676', 0, '2025-03-21 13:23:56', 'clc', '2025-03-21 13:25:24', 'clc', 300, 300, 300, 'SEAL-O-RING', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534760406010000', 'ASRS-0324', 'A04-31-04', 0, '6V8398', 0, '2025-03-21 13:24:35', 'clc', '2025-04-01 10:09:28', 'clc', 2000, 1879, 1879, 'SEAL-O-RING-ORFS', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534779408010000', 'ASRS-0323', 'A04-30-03', 0, '8T4182', 0, '2025-03-21 13:24:55', 'clc', '2025-03-21 13:26:19', 'clc', 300, 300, 300, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534826405010000', 'ASRS-0322', 'A01-26-11', 0, '4J0519', 0, '2025-03-21 13:25:40', 'clc', '2025-03-21 13:27:06', 'clc', 500, 500, 500, 'SEAL-O-RING', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534865406010000', 'ASRS-0312', 'A04-31-02', 0, '3D4603', 0, '2025-03-21 13:26:19', 'clc', '2025-03-21 13:27:45', 'clc', 250, 250, 250, 'PLUG-PIPE', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534929405010000', 'ASRS-0311', 'A01-31-06', 0, '5S7383', 0, '2025-03-21 13:27:14', 'clc', '2025-03-21 13:28:49', 'clc', 400, 400, 400, 'BOLT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742534983407010000', 'ASRS-0310', 'A04-28-06', 0, '1159977', 0, '2025-03-21 13:28:20', 'clc', '2025-03-21 13:29:43', 'clc', 30, 30, 30, 'PLUG-LDSTOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742535050406010000', 'ASRS-0309', 'A01-32-05', 0, '9X8256', 0, '2025-03-21 13:29:22', 'clc', '2025-03-21 13:30:50', 'clc', 2000, 2000, 2000, 'WASHER-HARD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742535078405010000', 'ASRS-0308', 'A04-29-05', 0, '1H1023', 0, '2025-03-21 13:29:56', 'clc', '2025-03-21 13:31:18', 'clc', 500, 500, 500, 'SEAL-O RING', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742538914406010000', 'ASRS-0321', 'A02-33-04', 0, '7T8797', 0, '2025-03-21 14:33:48', 'clc', '2025-03-21 14:35:14', 'clc', 228, 228, 228, 'SPACER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742538942406010000', 'ASRS-0307', 'A03-27-08', 0, '6K0806', 0, '2025-03-21 14:34:20', 'clc', '2025-03-21 14:35:42', 'clc', 800, 800, 800, 'STRAP-CABLE', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742538976406010000', 'ASRS-0320', 'A02-34-04', 0, '5H6005', 0, '2025-03-21 14:34:47', 'clc', '2025-03-21 14:36:16', 'clc', 1400, 1400, 1400, 'SEAL-O RING', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742539022406010000', 'ASRS-0306', 'A03-35-04', 0, '5M2057', 0, '2025-03-21 14:35:07', 'clc', '2025-04-01 10:15:43', 'clc', 1000, 913, 913, 'SEAL-O-RING', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742539052405010000', 'ASRS-0319', 'A03-28-07', 0, '4J0527', 0, '2025-03-21 14:36:07', 'clc', '2025-03-21 14:37:32', 'clc', 250, 250, 250, 'SEAL-O-RING', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742539087406010000', 'ASRS-0318', 'A02-32-11', 0, '2S4078', 0, '2025-03-21 14:36:39', 'clc', '2025-04-01 09:26:26', 'clc', 450, 405, 405, 'SEAL-O-RING-STOR', '2030-03-20', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742539133405010000', 'ASRS-0317', 'A02-40-04', 0, '9S8001', 0, '2025-03-21 14:37:01', 'clc', '2025-04-01 09:47:03', 'clc', 1188, 1102, 1102, 'PLUG-INTL HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742539135408010000', 'ASRS-0316', 'A01-41-04', 0, '8M3175', 0, '2025-03-21 14:37:32', 'clc', '2025-04-01 10:24:15', 'clc', 700, 526, 526, 'WASHER-HARD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742602980408010000', 'ASRS-0315', 'A01-34-06', 0, '9S4182', 0, '2025-03-22 08:21:36', 'clc', '2025-04-01 10:03:00', 'clc', 350, 56, 56, 'PLUG-EXT HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742603043407010000', 'ASRS-0332', 'A01-32-11', 0, '9S8009', 0, '2025-03-22 08:22:27', 'clc', '2025-04-01 10:03:45', 'clc', 100, 13, 13, 'PLUG-LD STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742603185405010000', 'ASRS-0333', 'A02-42-02', 0, '3676001', 0, '2025-03-22 08:22:06', 'clc', '2025-04-01 10:15:14', 'clc', 160, 72, 72, 'PLUG AS-HD STOR', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742603224405010000', 'ASRS-0305', 'A01-29-07', 0, '9S8003', 0, '2025-03-22 08:24:34', 'clc', '2025-04-01 10:09:16', 'clc', 500, 413, 413, 'PLUG-INTL HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742603279406010000', 'ASRS-0304', 'A03-29-06', 0, '4K1388', 0, '2025-03-22 08:24:46', 'clc', '2025-04-01 10:03:09', 'clc', 600, 505, 505, 'SEAL-O-RING-STOR', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742615490405010000', 'ASRS-0297', 'A03-32-03', 0, '7B8194', 0, '2025-03-22 11:50:05', 'clc', '2025-03-28 09:26:10', 'clc', 183, 167, 167, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742615509408010000', 'ASRS-0299', 'A02-34-11', 0, '9J0477', 0, '2025-03-22 11:50:32', 'clc', '2025-03-28 09:25:42', 'clc', 46, 30, 30, 'PLUG', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742615541408010000', 'ASRS-0269', 'A01-36-07', 0, '8T9535', 0, '2025-03-22 11:50:53', 'clc', '2025-03-22 11:52:21', 'clc', 288, 288, 288, 'BOLT-HEX SKT HD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742615574405010000', 'ASRS-0250', 'A02-35-10', 0, '6J4694', 0, '2025-03-22 11:51:30', 'clc', '2025-03-28 09:26:17', 'clc', 297, 281, 281, 'PLUG-LD STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742615619405010000', 'ASRS-0247', 'A01-42-01', 0, '7T8810', 0, '2025-03-22 11:52:16', 'clc', '2025-03-22 11:53:39', 'clc', 271, 271, 271, 'PLUNGER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624058414010000', 'ASRS-1907', 'A02-38-02', 0, '5H3193', 0, '2025-03-22 14:12:38', 'clc', '2025-03-26 15:31:56', 'clc', 200, 132, 132, 'PIN-SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624101407010000', 'ASRS-0370', 'A04-33-06', 0, '8T4224', 0, '2025-03-22 14:13:35', 'clc', '2025-03-22 14:15:01', 'clc', 3700, 3700, 3700, 'WASHER-HARD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624147405010000', 'ASRS-0368', 'A04-34-05', 0, '8T9383', 0, '2025-03-22 14:14:21', 'clc', '2025-03-22 14:15:47', 'clc', 300, 300, 300, 'BOLT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624151408010000', 'ASRS-0369', 'A02-36-07', 0, '4J9780', 0, '2025-03-22 14:13:49', 'clc', '2025-03-22 14:15:51', 'clc', 125, 125, 125, 'PLUG-NPTF', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624192406010000', 'ASRS-0366', 'A04-35-04', 0, '9J8126', 0, '2025-03-22 14:14:52', 'clc', '2025-03-22 14:16:32', 'clc', 300, 300, 300, 'PLUG-NPTF', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624198405010000', 'ASRS-0367', 'A02-37-06', 0, '8T4896', 0, '2025-03-22 14:14:39', 'clc', '2025-03-22 14:16:38', 'clc', 2500, 2500, 2500, 'WASHER-HARD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624239408010000', 'ASRS-1033', 'A04-36-03', 0, '1212051', 0, '2025-03-22 14:15:25', 'clc', '2025-03-22 14:17:19', 'clc', 200, 200, 200, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624246407010000', 'ASRS-0365', 'A02-38-05', 0, '9T4697', 0, '2025-03-22 14:15:05', 'clc', '2025-03-22 14:17:26', 'clc', 40, 40, 40, 'BOOT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624286407010000', 'ASRS-0363', 'A04-37-02', 0, '9T4685', 0, '2025-03-22 14:15:58', 'clc', '2025-03-22 14:18:06', 'clc', 200, 200, 200, 'SHIM', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624295406010000', 'ASRS-0361', 'A02-39-04', 0, '0304605', 0, '2025-03-22 14:15:33', 'clc', '2025-03-22 14:18:15', 'clc', 260, 260, 260, 'SEAL-O RING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624343405010000', 'ASRS-0267', 'A02-40-03', 0, '7J9933', 0, '2025-03-22 14:16:25', 'clc', '2025-03-22 14:19:03', 'clc', 300, 300, 300, 'SEAL-O RING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624378405010000', 'ASRS-0266', 'A03-29-11', 0, '6V4432', 0, '2025-03-22 14:16:56', 'clc', '2025-03-22 14:19:38', 'clc', 100, 100, 100, 'BOLT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624392407010000', 'ASRS-0268', 'A02-41-02', 0, '4H5232', 0, '2025-03-22 14:16:36', 'clc', '2025-03-22 14:19:52', 'clc', 1000, 1000, 1000, 'PIN-SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624421407010000', 'ASRS-0382', 'A03-30-10', 0, '8T2396', 0, '2025-03-22 14:17:23', 'clc', '2025-03-22 14:20:21', 'clc', 500, 500, 500, 'BOLT-SOCKET HD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624442405010000', 'ASRS-0265', 'A02-42-01', 0, '4J2506', 0, '2025-03-22 14:17:07', 'clc', '2025-03-22 14:20:42', 'clc', 720, 720, 720, 'SEAL-O RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624465405010000', 'ASRS-0380', 'A03-31-09', 0, '7X7888', 0, '2025-03-22 14:17:44', 'clc', '2025-03-22 14:21:05', 'clc', 250, 250, 250, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624489405010000', 'ASRS-0381', 'A01-33-11', 0, '7J0204', 0, '2025-03-22 14:17:35', 'clc', '2025-03-22 14:21:29', 'clc', 1000, 1000, 1000, 'SEAL-O-RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624536407010000', 'ASRS-0379', 'A01-34-10', 0, '6V5391', 0, '2025-03-22 14:17:54', 'clc', '2025-03-22 14:22:16', 'clc', 250, 250, 250, 'SEAL-O RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624556407010000', 'ASRS-0376', 'A02-33-11', 0, '7X0352', 0, '2025-03-22 14:20:47', 'clc', '2025-03-24 12:19:44', 'clc', 40, 36, 36, 'BOLT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624583407010000', 'ASRS-0377', 'A01-35-09', 0, '6J5899', 0, '2025-03-22 14:20:27', 'clc', '2025-03-22 14:23:03', 'clc', 20, 20, 20, 'COVER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624631407010000', 'ASRS-0354', 'A03-34-06', 0, '4J0524', 0, '2025-03-22 14:22:26', 'clc', '2025-03-22 14:23:51', 'clc', 400, 400, 400, 'SEAL-O-RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624645405010000', 'ASRS-0346', 'A01-36-08', 0, '4T1021', 0, '2025-03-22 14:22:37', 'clc', '2025-03-25 13:26:20', 'clc', 60, 55, 55, 'RETAINER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624725407010000', 'ASRS-0341', 'A03-33-07', 0, '4T0993', 0, '2025-03-22 14:23:27', 'clc', '2025-03-25 13:18:59', 'clc', 100, 86, 86, 'RETAINER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624740405010000', 'ASRS-0372', 'A01-38-06', 0, '2458472/X', 0, '2025-03-22 14:23:36', 'clc', '2025-03-22 14:25:40', 'clc', 250, 250, 250, 'PLUG-EXPANSION', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624788406010000', 'ASRS-0387', 'A01-39-05', 0, '4J8997', 0, '2025-03-22 14:23:46', 'clc', '2025-03-22 14:26:28', 'clc', 600, 600, 600, 'SEAL-O-RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624819408010000', 'ASRS-0390', 'A03-38-02', 0, '1089402', 0, '2025-03-22 14:24:14', 'clc', '2025-03-22 14:26:59', 'clc', 20, 20, 20, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624837405010000', 'ASRS-0391', 'A01-40-04', 0, '4D0514', 0, '2025-03-22 14:24:07', 'clc', '2025-03-22 14:27:17', 'clc', 150, 150, 150, 'PLUG-PTF', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624867405010000', 'ASRS-0389', 'A03-39-01', 0, '4T4207', 0, '2025-03-22 14:24:22', 'clc', '2025-03-22 14:27:47', 'clc', 75, 75, 75, 'PLUG-NPTF', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624885405010000', 'ASRS-0340', 'A01-39-06', 0, '1J9671', 0, '2025-03-22 14:24:32', 'clc', '2025-04-01 10:10:04', 'clc', 900, 797, 797, 'SEAL-O-RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624913407010000', 'ASRS-1898', 'A04-29-11', 0, '7M1297', 0, '2025-03-22 14:25:11', 'clc', '2025-03-22 14:28:33', 'clc', 55, 55, 55, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624935407010000', 'ASRS-0388', 'A03-31-04', 0, '6V8647', 0, '2025-03-22 14:25:21', 'clc', '2025-04-01 10:04:01', 'clc', 300, 126, 126, 'ADAPTER-STR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742624989407010000', 'ASRS-1901', 'A04-30-10', 0, '3J5553', 0, '2025-03-22 14:26:14', 'clc', '2025-03-22 14:29:49', 'clc', 150, 150, 150, 'GASKET', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742625029405010000', 'ASRS-0344', 'A02-34-10', 0, '1749194', 0, '2025-03-22 14:26:55', 'clc', '2025-03-22 14:30:29', 'clc', 700, 700, 700, 'BOLT-HEX FLG HD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742625064408010000', 'ASRS-0349', 'A04-31-09', 0, '6V5195', 0, '2025-03-22 14:26:39', 'clc', '2025-03-26 15:01:25', 'clc', 200, 196, 196, 'BOLT-SOCKET HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742625075407010000', 'ASRS-0339', 'A03-39-02', 0, '1D4566', 0, '2025-03-22 14:27:11', 'clc', '2025-03-24 10:11:05', 'clc', 100, 50, 50, 'BOLT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742625122405010000', 'ASRS-1902', 'A04-29-10', 0, '3P9498', 0, '2025-03-22 14:27:44', 'clc', '2025-04-01 10:16:56', 'clc', 100, 13, 13, 'PLUG-NPTF', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742625154405010000', 'ASRS-1905', 'A04-33-07', 0, '7X2535', 0, '2025-03-22 14:27:53', 'clc', '2025-03-22 14:32:34', 'clc', 600, 600, 600, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742627679407010000', 'ASRS-0352', 'A02-35-08', 0, '7X0272', 0, '2025-03-22 15:13:12', '管理员', '2025-03-22 15:14:39', '管理员', 500, 500, 500, 'BOLT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742627750407010000', 'ASRS-0345', 'A01-37-07', 0, '4D9986', 0, '2025-03-22 15:14:19', '管理员', '2025-03-22 15:15:50', '管理员', 1000, 1000, 1000, 'SEAL-O-RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742627757408010000', 'ASRS-0343', 'A04-32-07', 0, '2D6648', 0, '2025-03-22 15:14:42', '管理员', '2025-03-22 15:15:57', '管理员', 700, 700, 700, 'RING-RETAINING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742627831405010000', 'ASRS-0335', 'A01-33-10', 0, '8F9206', 0, '2025-03-22 15:15:41', '管理员', '2025-03-26 14:56:24', '管理员', 3485, 3394, 3394, 'SEAL-O-RING', '2030-03-21', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759169404010000', 'ASRS-1713', 'A02-38-06', 0, '8T5005', 0, '2025-03-24 03:39:53', '管理员', '2025-03-26 15:01:54', '管理员', 235, 183, 183, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759372405010000', 'ASRS-0545', 'A03-35-05', 0, '8T4121', 0, '2025-03-24 03:48:01', '管理员', '2025-03-26 15:07:05', '管理员', 2000, 1896, 1896, 'WASHER-HARD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759392405010000', 'ASRS-1245', 'A02-32-09', 0, '6V3965', 0, '2025-03-24 03:48:27', '管理员', '2025-04-01 09:21:03', '管理员', 250, 219, 219, 'NIPPLE-QDISC', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759472405010000', 'ASRS-1528', 'A01-38-07', 0, '8C3206', 0, '2025-03-24 03:49:21', '管理员', '2025-03-26 15:07:41', '管理员', 70, 18, 18, 'FLANGE-SPLIT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759484407010000', 'ASRS-1683', 'A01-35-10', 0, '6V0852', 0, '2025-03-24 03:49:27', '管理员', '2025-04-01 09:59:38', '管理员', 100, 69, 69, 'CAP-DUST', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759529405010000', 'ASRS-0350', 'A04-32-03', 0, '3D2824', 0, '2025-03-24 03:50:18', '管理员', '2025-04-01 10:04:43', '管理员', 1000, 556, 556, 'SEAL-O-RING-STOR', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759570405010000', 'ASRS-1026', 'A03-37-04', 0, '8T4196', 0, '2025-03-24 03:49:56', '管理员', '2025-03-26 15:08:29', '管理员', 425, 295, 295, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759576405010000', 'ASRS-0351', 'A03-36-04', 0, '7J1089', 0, '2025-03-24 03:50:25', '管理员', '2025-03-26 15:33:51', '管理员', 100, 66, 66, 'PLUG-O-RING SPL', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759617406010000', 'ASRS-0342', 'A04-30-11', 0, '7S0530', 0, '2025-03-24 03:50:46', '管理员', '2025-03-26 15:08:49', '管理员', 60, 47, 47, 'CLIP', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759623405010000', 'ASRS-1524', 'A01-31-08', 0, '2191891', 0, '2025-03-24 03:51:09', '管理员', '2025-04-01 11:40:53', '管理员', 150, 104, 104, 'PLUG AS.', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759670405010000', 'ASRS-0336', 'A01-42-02', 0, '3J1907', 0, '2025-03-24 03:51:13', '管理员', '2025-04-01 09:21:45', '管理员', 2700, 2623, 2623, 'SEAL-O-RING-STOR', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759710405010000', 'ASRS-0521', 'A04-32-08', 0, '6E5289', 0, '2025-03-24 03:51:36', '管理员', '2025-03-26 14:35:02', '管理员', 100, 74, 74, 'ADAPTER-STR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759716405010000', 'ASRS-1900', 'A01-39-02', 0, '9S8002', 0, '2025-03-24 03:51:40', '管理员', '2025-04-01 09:09:55', '管理员', 1000, 774, 774, 'PLUG-INTL HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759757405010000', 'ASRS-1023', 'A03-38-03', 0, '4564624', 0, '2025-03-24 03:52:18', '管理员', '2025-03-26 14:17:00', '管理员', 25, 15, 15, 'VALVE GP-D RLF-B', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759806405010000', 'ASRS-1899', 'A04-35-05', 0, '9S8006', 0, '2025-03-24 03:52:22', '管理员', '2025-03-26 15:34:27', '管理员', 200, 183, 183, 'PLUG-LD STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759810408010000', 'ASRS-0284', 'A03-34-07', 0, '6V9830', 0, '2025-03-24 03:53:47', '管理员', '2025-03-26 14:57:47', '管理员', 200, 174, 174, 'CAP', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759854405010000', 'ASRS-0270', 'A03-40-01', 0, '4564633', 0, '2025-03-24 03:53:11', '管理员', '2025-03-26 14:17:51', '管理员', 25, 15, 15, 'VALVE GP-D RLF-B', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759856407010000', 'ASRS-0383', 'A03-31-06', 0, '6V9833', 0, '2025-03-24 03:53:38', '管理员', '2025-04-01 09:26:42', '管理员', 50, 7, 7, 'CAP', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759946405010000', 'ASRS-1189', 'A03-32-09', 0, '4B9782', 0, '2025-03-24 03:55:05', '管理员', '2025-03-26 14:34:20', '管理员', 200, 127, 127, 'BALL', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759951408010000', 'ASRS-1030', 'A03-30-11', 0, '1298222', 0, '2025-03-24 03:54:33', '管理员', '2025-03-26 15:04:32', '管理员', 15, 12, 12, 'VALVE GP-D RLF-', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759991405010000', 'ASRS-0244', 'A02-34-09', 0, '5J2974', 0, '2025-03-24 03:55:30', '管理员', '2025-03-26 14:57:06', '管理员', 150, 124, 124, 'SEAL-O-RING', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742759999405010000', 'ASRS-1526', 'A02-41-01', 0, '3676002', 0, '2025-03-24 03:55:22', '管理员', '2025-04-01 10:16:35', '管理员', 600, 556, 556, 'PLUG AS-HD STOR', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760038405010000', 'ASRS-0385', 'A02-41-03', 0, '4J0520', 0, '2025-03-24 03:56:52', '管理员', '2025-03-26 15:09:18', '管理员', 300, 261, 261, 'SEAL-O-RING', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760084407010000', 'ASRS-1249', 'A03-36-05', 0, '1268473', 0, '2025-03-24 03:54:37', '管理员', '2025-03-26 15:02:09', '管理员', 100, 87, 87, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760093405010000', 'ASRS-0517', 'A03-38-04', 0, '9S4191', 0, '2025-03-24 03:55:59', '管理员', '2025-04-01 08:41:07', '管理员', 500, 488, 488, 'PLUG-EXT HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760131406010000', 'ASRS-0525', 'A02-35-09', 0, '5H4019', 0, '2025-03-24 03:57:27', '管理员', '2025-03-26 15:08:03', '管理员', 150, 124, 124, 'COVER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760139406010000', 'ASRS-0520', 'A03-34-08', 0, '2M9780', 0, '2025-03-24 03:54:58', '管理员', '2025-04-01 10:06:07', '管理员', 500, 396, 396, 'SEAL-O-RING-STOR', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760178405010000', 'ASRS-0334', 'A02-36-08', 0, '3J7354', 0, '2025-03-24 03:56:58', '管理员', '2025-04-01 10:07:43', '管理员', 1200, 569, 569, 'SEAL-O-RING-STOR', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760186405010000', 'ASRS-0384', 'A03-32-08', 0, '9S4185', 0, '2025-03-24 03:57:23', '管理员', '2025-04-01 09:14:34', '管理员', 250, 5, 5, 'PLUG-EXT HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760225408010000', 'ASRS-0522', 'A03-37-03', 0, '2965987', 0, '2025-03-24 03:57:55', '管理员', '2025-04-01 11:41:12', '管理员', 500, 456, 456, 'PLUG', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742760283405010000', 'ASRS-1027', 'A01-39-08', 0, '3K0360', 0, '2025-03-24 03:57:51', '管理员', '2025-04-01 10:11:11', '管理员', 3000, 2435, 2435, 'SEAL-O-RING-STOR', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742778696406010000', 'ASRS-0527', 'A04-30-09', 0, '4J7533', 0, '2025-03-24 09:10:12', 'clc', '2025-04-01 09:49:34', 'clc', 500, 414, 414, 'SEAL-O-RING-STOR', '2030-03-23', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742778743417010000', 'ASRS-1034', 'A02-33-10', 0, '6E1925', 0, '2025-03-24 09:10:38', 'clc', '2025-04-01 10:20:55', 'clc', 50, 2, 2, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742865961612010000', 'ASRS-1531', 'A01-41-03', 0, '2521631', 0, '2025-03-25 09:24:36', '管理员', '2025-03-31 09:35:11', '管理员', 172, 44, 44, 'PLUG AS.', '2030-03-24', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742870290603010000', 'ASRS-1025', 'A02-37-03', 0, '6E1925', 0, '2025-03-25 10:36:57', '管理员', '2025-03-29 13:30:36', '管理员', 38, 33, 33, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742870321605010000', 'ASRS-1221', 'A02-36-09', 0, '9F6705', 0, '2025-03-25 10:37:32', '管理员', '2025-04-01 10:17:19', '管理员', 48, 33, 33, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742870503606010000', 'ASRS-0337', 'A01-42-05', 0, '6V9834', 0, '2025-03-25 10:40:21', '管理员', '2025-04-01 10:27:25', '管理员', 18, 5, 5, 'CAP-ORFS', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742870522606010000', 'ASRS-0519', 'A02-37-08', 0, '6E1924', 0, '2025-03-25 10:40:46', '管理员', '2025-04-01 10:22:34', '管理员', 38, 13, 13, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742871088605010000', 'ASRS-1088', 'A01-36-09', 0, '2191893', 0, '2025-03-25 10:50:16', '管理员', '2025-04-05 09:10:58', '管理员', 51, 22, 22, 'PLUG AS.', '2030-03-24', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742880319605010000', 'ASRS-1032', 'A01-40-07', 0, '3603693', 0, '2025-03-25 10:50:49', '管理员', '2025-04-01 10:12:37', '管理员', 50, 24, 24, 'PLUG-EXT HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742957508606010000', 'ASRS-1443', 'A02-37-07', 0, '6E5291', 0, '2025-03-26 08:33:07', 'clc', '2025-03-26 14:58:09', 'clc', 150, 124, 124, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742957553607010000', 'ASRS-1030', 'A03-30-11', 0, '1298222', 0, '2025-03-26 08:34:55', 'clc', '2025-03-26 10:52:34', 'clc', 15, 15, 15, 'VALVE GP-D RLF-', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742957598606010000', 'ASRS-0338', 'A04-38-01', 0, '6V5230', 0, '2025-03-26 08:36:59', 'clc', '2025-04-01 10:24:27', 'clc', 250, 126, 126, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742957626605010000', 'ASRS-0386', 'A01-37-08', 0, '6J4568', 0, '2025-03-26 08:37:20', 'clc', '2025-03-31 09:27:23', 'clc', 70, 56, 56, 'BOOT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1742973803606010000', 'ASRS-1528', 'A01-38-07', 0, '8C3206', 0, '2025-03-26 15:22:08', 'clc', '2025-03-26 15:23:24', 'clc', 140, 140, 140, 'FLANGE-SPLIT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125074607010000', 'ASRS-1528', 'A01-38-07', 0, '8C3206', 0, '2025-03-28 09:23:14', 'clc', '2025-03-28 09:24:35', 'clc', 70, 70, 70, 'FLANGE-SPLIT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125323605010000', 'ASRS-1031', 'A01-37-09', 0, '6E1923', 0, '2025-03-28 09:27:26', 'clc', '2025-04-01 10:25:39', 'clc', 40, 13, 13, 'TUBE AS.', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125331608010000', 'ASRS-0386', 'A01-37-08', 0, '6J4568', 0, '2025-03-28 09:26:50', 'clc', '2025-03-28 09:28:52', 'clc', 70, 70, 70, 'BOOT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125369615010000', 'ASRS-1531', 'A01-41-03', 0, '2521631', 0, '2025-03-28 09:28:10', 'clc', '2025-03-28 09:29:30', 'clc', 200, 200, 200, 'PLUG AS.', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125382606010000', 'ASRS-1683', 'A01-35-10', 0, '6V0852', 0, '2025-03-28 09:27:47', 'clc', '2025-03-28 09:29:43', 'clc', 100, 100, 100, 'CAP-DUST', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125415603010000', 'ASRS-0348', 'A03-38-01', 0, '4681134', 0, '2025-03-28 09:28:23', 'clc', '2025-03-28 09:30:16', 'clc', 17, 17, 17, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125434606010000', 'ASRS-1254', 'A02-38-07', 0, '8C3206', 0, '2025-03-28 09:28:42', 'clc', '2025-03-28 09:30:35', 'clc', 70, 70, 70, 'FLANGE-SPLIT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125461606010000', 'ASRS-1250', 'A03-31-10', 0, '3603690', 0, '2025-03-28 09:29:11', 'clc', '2025-03-28 09:31:02', 'clc', 50, 50, 50, 'PLUG-EXT HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125486605010000', 'ASRS-1258', 'A02-39-06', 0, '4829841', 0, '2025-03-28 09:28:58', 'clc', '2025-03-28 09:31:27', 'clc', 100, 100, 100, 'RING-BACKUP', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125507605010000', 'ASRS-1592', 'A03-35-06', 0, '4J0522', 0, '2025-03-28 09:29:38', 'clc', '2025-03-28 09:31:48', 'clc', 400, 400, 400, 'SEAL-O-RING', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125539606010000', 'ASRS-1667', 'A02-40-05', 0, '1P4578', 0, '2025-03-28 09:29:25', 'clc', '2025-03-28 09:32:20', 'clc', 50, 50, 50, 'FLANGE-SPLIT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125551607010000', 'ASRS-0378', 'A04-31-10', 0, '2N7029', 0, '2025-03-28 09:30:06', 'clc', '2025-03-28 09:32:32', 'clc', 50, 50, 50, 'SPRING-CONT PIN', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125592607010000', 'ASRS-1222', 'A02-41-04', 0, '4681135', 0, '2025-03-28 09:29:53', 'clc', '2025-03-28 09:33:13', 'clc', 14, 14, 14, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125596606010000', 'ASRS-1259', 'A04-32-09', 0, '9S8005', 0, '2025-03-28 09:30:34', 'clc', '2025-03-28 09:33:17', 'clc', 200, 200, 200, 'PLUG-INTL HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125641606010000', 'ASRS-1219', 'A04-33-08', 0, '4681133', 0, '2025-03-28 09:30:50', 'clc', '2025-03-28 09:34:02', 'clc', 25, 25, 25, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125646606010000', 'ASRS-1220', 'A02-42-03', 0, '4M8239', 0, '2025-03-28 09:30:20', 'clc', '2025-03-28 09:34:07', 'clc', 60, 60, 60, 'COVER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125720605010000', 'ASRS-1271', 'A04-34-07', 0, '7X5308', 0, '2025-03-28 09:32:15', 'clc', '2025-03-28 09:35:21', 'clc', 100, 100, 100, 'CAP-DUST', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125727605010000', 'ASRS-1223', 'A01-35-11', 0, '9L9068', 0, '2025-03-28 09:31:04', 'clc', '2025-03-28 09:35:28', 'clc', 300, 300, 300, 'DOWEL', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125797605010000', 'ASRS-1660', 'A04-35-06', 0, '2608590', 0, '2025-03-28 09:32:27', 'clc', '2025-03-28 09:36:38', 'clc', 80, 80, 80, 'VALVE GP-SHTL -B', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125810603010000', 'ASRS-1244', 'A01-36-10', 0, '5H4020', 0, '2025-03-28 09:31:19', 'clc', '2025-03-28 09:36:51', 'clc', 100, 100, 100, 'FLANGE-COVER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125926611010000', 'ASRS-0384', 'A03-32-08', 0, '9S4185', 0, '2025-03-28 09:37:29', 'clc', '2025-03-28 09:38:47', 'clc', 250, 250, 250, 'PLUG-EXT HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743125992605010000', 'ASRS-0525', 'A02-35-09', 0, '5H4019', 0, '2025-03-28 09:38:24', 'clc', '2025-03-28 09:39:53', 'clc', 150, 150, 150, 'COVER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126031606010000', 'ASRS-0501', 'A02-36-11', 0, '1488356', 0, '2025-03-28 09:39:08', 'clc', '2025-04-01 10:29:03', 'clc', 16, 2, 2, 'ADAPTER AS-ELBOW', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126083605010000', 'ASRS-0313', 'A01-38-08', 0, '9S4189', 0, '2025-03-28 09:39:56', 'clc', '2025-04-01 10:04:31', 'clc', 75, 63, 63, 'PLUG-EXT HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126089606010000', 'ASRS-0017', 'A04-36-05', 0, '7X5315', 0, '2025-03-28 09:40:11', 'clc', '2025-03-28 09:41:30', 'clc', 100, 100, 100, 'COUPLING-QDISC', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126135603010000', 'ASRS-1885', 'A01-40-05', 0, '6Y4638', 0, '2025-03-28 09:40:23', 'clc', '2025-03-28 09:42:16', 'clc', 60, 60, 60, 'PLUG-LD STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126137606010000', 'ASRS-1630', 'A04-37-04', 0, '9S8004', 0, '2025-03-28 09:40:36', 'clc', '2025-03-28 09:42:18', 'clc', 600, 600, 600, 'PLUG-INTL HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126182606010000', 'ASRS-0523', 'A04-38-03', 0, '2828827', 0, '2025-03-28 09:41:24', 'clc', '2025-03-28 09:43:03', 'clc', 500, 500, 500, 'PLUG-EXPANSION', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126187606010000', 'ASRS-0999', 'A01-39-07', 0, '3603692', 0, '2025-03-28 09:40:54', 'clc', '2025-03-28 09:43:08', 'clc', 300, 300, 300, 'PLUG-HD STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126229609010000', 'ASRS-0362', 'A04-39-02', 0, '9T7419', 0, '2025-03-28 09:41:52', 'clc', '2025-03-28 09:43:50', 'clc', 8, 8, 8, 'VALVE GP-D RLF-B', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126240605010000', 'ASRS-0347', 'A01-40-06', 0, '8T4223', 0, '2025-03-28 09:41:38', 'clc', '2025-03-28 09:44:01', 'clc', 1000, 1000, 1000, 'WASHER-HARD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126277605010000', 'ASRS-0901', 'A04-40-01', 0, '3P1979', 0, '2025-03-28 09:42:15', 'clc', '2025-03-28 09:44:38', 'clc', 71, 71, 71, 'SEAL-O-RING', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126293605010000', 'ASRS-0371', 'A01-41-05', 0, '6V5555', 0, '2025-03-28 09:42:03', 'clc', '2025-03-28 09:44:54', 'clc', 500, 500, 500, 'SEAL-O RING', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126323605010000', 'ASRS-1604', 'A03-31-11', 0, '2660531', 0, '2025-03-28 09:42:58', 'clc', '2025-03-28 09:45:24', 'clc', 300, 300, 300, 'CAP-CONNECTOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126346603010000', 'ASRS-0889', 'A01-42-04', 0, '1483483', 0, '2025-03-28 09:42:31', 'clc', '2025-03-28 09:45:47', 'clc', 1000, 1000, 1000, 'PLUG', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126369607010000', 'ASRS-1371', 'A03-32-10', 0, '2147568', 0, '2025-03-28 09:43:23', 'clc', '2025-03-28 09:46:10', 'clc', 500, 500, 500, 'SEAL-O-RING-STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126399605010000', 'ASRS-1261', 'A02-35-11', 0, '1014845', 0, '2025-03-28 09:43:10', 'clc', '2025-03-28 09:46:40', 'clc', 100, 100, 100, 'PLUG-NPTF', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126414610010000', 'ASRS-0314', 'A03-33-09', 0, '1483483', 0, '2025-03-28 09:44:06', 'clc', '2025-03-28 09:46:55', 'clc', 600, 600, 600, 'PLUG', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126450606010000', 'ASRS-0302', 'A02-36-10', 0, '1160014', 0, '2025-03-28 09:43:51', 'clc', '2025-03-28 09:47:31', 'clc', 10, 10, 10, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126501612010000', 'ASRS-0327', 'A02-37-09', 0, '4681136', 0, '2025-03-28 09:44:32', 'clc', '2025-03-28 09:48:22', 'clc', 25, 25, 25, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743126553606010000', 'ASRS-1257', 'A02-38-08', 0, '7M8485', 0, '2025-03-28 09:44:42', 'clc', '2025-03-28 09:49:14', 'clc', 800, 800, 800, 'SEAL-O-RING-STOR', '2030-03-27', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743133813606010000', 'ASRS-1254', 'A02-38-07', 0, '8C3206', 0, '2025-03-28 11:48:55', 'clc', '2025-03-28 11:50:14', 'clc', 2, 2, 2, 'FLANGE-SPLIT', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743207961607010000', 'ASRS-0359', 'A04-31-05', 0, '1007000', 0, '2025-03-28 21:26:47', 'clc', '2025-04-01 10:13:21', 'clc', 140, 120, 120, 'Ring-back up', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209190603010000', 'ASRS-1529', 'A01-35-04', 0, '1007000', 0, '2025-03-29 08:44:55', '管理员', '2025-03-29 08:46:31', '管理员', 94, 94, 94, 'Ring-back up', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209207606010000', 'ASRS-0249', 'A04-05-06', 0, '6H2948', 0, '2025-03-29 08:45:37', '管理员', '2025-03-29 08:46:48', '管理员', 240, 240, 240, 'DOWEL', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209261607010000', 'ASRS-0276', 'A01-40-03', 0, '1501285', 0, '2025-03-29 08:46:03', '管理员', '2025-03-29 08:47:42', '管理员', 50, 50, 50, 'PLUG-BREATHER', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209300609010000', 'ASRS-1246', 'A04-02-11', 0, '2385082', 0, '2025-03-29 08:47:01', '管理员', '2025-03-29 08:48:21', '管理员', 500, 500, 500, 'SEAL-O-RING-STOR', '2030-03-28', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209314606010000', 'ASRS-0300', 'A01-41-02', 0, '9N4049', 0, '2025-03-29 08:46:10', '管理员', '2025-03-29 08:48:35', '管理员', 100, 100, 100, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209342605010000', 'ASRS-0248', 'A03-34-05', 0, '9S8008', 0, '2025-03-29 08:47:06', '管理员', '2025-03-29 08:49:03', '管理员', 150, 150, 150, 'PLUG-INTL HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209401611010000', 'ASRS-1392', 'A04-28-11', 0, '3603695', 0, '2025-03-29 08:48:32', '管理员', '2025-03-29 08:50:02', '管理员', 100, 100, 100, 'PLUG-HD STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743209407606010000', 'ASRS-1035', 'A01-38-09', 0, '0344160', 0, '2025-03-29 08:47:51', '管理员', '2025-03-29 08:50:08', '管理员', 150, 150, 150, 'BOLT-LOCKING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743220643144010000', 'ASRS-0273', 'A01-33-06', 0, '8T4196', 0, '2025-03-29 11:56:10', '管理员', '2025-03-29 11:57:23', '管理员', 425, 425, 425, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743220676126010000', 'ASRS-0328', 'A02-39-01', 0, '9S4684', 0, '2025-03-29 11:56:22', '管理员', '2025-03-29 11:57:56', '管理员', 50, 50, 50, 'PLUG-O-RING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743220729135010000', 'ASRS-0330', 'A02-39-05', 0, '3603688', 0, '2025-03-29 11:56:39', '管理员', '2025-03-29 11:58:49', '管理员', 200, 200, 200, 'PLUG-HD STOR', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743227358531010000', 'ASRS-0273', 'A01-33-06', 0, '8T4196', 0, '2025-03-29 13:47:59', '管理员', '2025-03-29 13:49:19', '管理员', 425, 425, 425, 'BOLT-HEX HEAD', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743229830531010000', 'ASRS-0331', 'A04-31-08', 0, '3T8236', 0, '2025-03-29 14:29:12', '管理员', '2025-04-01 10:17:45', '管理员', 44, 12, 12, 'SPRING', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743397363532010000', 'ASRS-0329', 'A01-34-11', 0, '8T8987', 0, '2025-03-31 13:01:17', '管理员', '2025-04-01 09:45:10', '管理员', 20, 8, 8, 'ADPTR-ELB 90 DEG', '2030-03-30', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743397406531010000', 'ASRS-0364', 'A01-36-03', 0, '8T8987', 0, '2025-03-31 13:01:50', '管理员', '2025-03-31 14:17:46', '管理员', 10, 9, 9, 'ADPTR-ELB 90 DEG', '2030-03-30', 1825, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743397592536010000', 'ASRS-0303', 'A01-41-06', 0, '8J6815', 0, '2025-03-31 13:05:17', '管理员', '2025-04-01 10:18:51', '管理员', 500, 458, 458, 'PLUG-INTL HEX', NULL, NULL, NULL, NULL);
|
||||
INSERT INTO `t_app_stock` (`stock_id`, `vehicle_id`, `location_id`, `stock_status`, `goods_id`, `goods_status`, `first_in_time`, `first_in_user`, `last_update_time`, `last_update_user`, `total_num`, `remain_num`, `real_num`, `goods_desc`, `expire_date`, `sled`, `last_inventory_time`, `last_inventory_id`) VALUES ('1743401862531010000', 'ASRS-0298', 'A01-37-06', 0, '1007000', 0, '2025-03-31 14:15:37', '管理员', '2025-03-31 15:44:42', '管理员', 140, 134, 134, 'Ring-back up', NULL, NULL, NULL, NULL);
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
|
|
@ -18796,6 +18853,8 @@ INSERT INTO `t_app_stock_update` (`update_id`, `vehicle_id`, `goods_id`, `first_
|
|||
INSERT INTO `t_app_stock_update` (`update_id`, `vehicle_id`, `goods_id`, `first_in_time`, `before_num`, `after_num`, `reason`, `update_user`, `update_time`) VALUES ('1743478852871010000', 'ASRS-1524', '2191891', '2025-03-24 03:51:09', 108, 104, 'P3:配料拣选', '管理员', '2025-04-01 11:40:53');
|
||||
INSERT INTO `t_app_stock_update` (`update_id`, `vehicle_id`, `goods_id`, `first_in_time`, `before_num`, `after_num`, `reason`, `update_user`, `update_time`) VALUES ('1743478872072010000', 'ASRS-0522', '2965987', '2025-03-24 03:57:55', 460, 456, 'P3:配料拣选', '管理员', '2025-04-01 11:41:12');
|
||||
INSERT INTO `t_app_stock_update` (`update_id`, `vehicle_id`, `goods_id`, `first_in_time`, `before_num`, `after_num`, `reason`, `update_user`, `update_time`) VALUES ('1743478999596010000', 'ASRS-1088', '2191893', '2025-03-25 10:50:16', 39, 23, 'P3:配料拣选', '管理员', '2025-04-01 11:43:20');
|
||||
INSERT INTO `t_app_stock_update` (`update_id`, `vehicle_id`, `goods_id`, `first_in_time`, `before_num`, `after_num`, `reason`, `update_user`, `update_time`) VALUES ('1744535722773010000', 'ASRS-0326', '7X0448', '2025-03-21 13:23:03', 320, 310, 'P1:盘点确认', '管理员', '2025-04-13 17:15:23');
|
||||
INSERT INTO `t_app_stock_update` (`update_id`, `vehicle_id`, `goods_id`, `first_in_time`, `before_num`, `after_num`, `reason`, `update_user`, `update_time`) VALUES ('1744535841320010000', 'ASRS-0326', '7X0448', '2025-03-21 13:23:03', 310, 320, 'P1:盘点确认', '管理员', '2025-04-13 17:17:21');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
|
|
@ -18828,6 +18887,7 @@ CREATE TABLE `t_app_task` (
|
|||
-- Records of t_app_task
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `t_app_task` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('1745222923297010000', 2, 0, 1, 'ASRS-0872', 'A01-02-09', NULL, NULL, '2025-04-21 16:08:43', NULL, '000000000', 0, 0, '管理员', NULL, '', 'P1', '');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
|
|
@ -20014,6 +20074,8 @@ INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_prior
|
|||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('1743474546534010001', 2, 4, 1, 'ASRS-1524', 'A01-36-09', NULL, '1743474547529010000', '2025-04-01 10:29:07', '2025-04-01 10:29:55', '000000000', 0, 0, 'wms_auto', NULL, '', 'P3', '');
|
||||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('1743474596529010001', 2, 4, 1, 'ASRS-0522', 'A01-31-08', NULL, '1743474597530010000', '2025-04-01 10:29:57', '2025-04-01 10:31:16', '000000000', 0, 0, 'wms_auto', NULL, '', 'P3', '');
|
||||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('1743478876528010001', 2, 4, 1, 'ASRS-1088', 'A03-33-08', NULL, '1743478877530010000', '2025-04-01 11:41:17', '2025-04-01 11:42:06', '000000000', 0, 0, 'wms_auto', NULL, '', 'P3', '');
|
||||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('1744534428353010000', 2, 4, 2, 'ASRS-0326', 'A02-23-09', NULL, NULL, '2025-04-13 16:53:48', NULL, '000000000', 0, 0, '管理员', NULL, '', 'P1', '');
|
||||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('1744535455421010000', 2, 4, 2, 'ASRS-0326', 'A02-23-09', NULL, NULL, '2025-04-13 17:10:55', NULL, '000000000', 0, 0, '管理员', NULL, '', 'P1', '');
|
||||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('BACK_1742627181353010000', 1, 4, 1, 'ASRS-0348', 'P3', 'A02-35-08', '1742627207227010000', '2025-03-22 15:06:21', '2025-03-22 15:07:39', '000000000', 0, 0, 'wms_auto', NULL, '', 'P3', '');
|
||||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('BACK_1742627210434010000', 1, 4, 1, 'ASRS-0347', 'P3', 'A04-32-07', '1742627236328010000', '2025-03-22 15:06:50', '2025-03-22 15:08:04', '000000000', 0, 0, 'wms_auto', NULL, '', 'P3', '');
|
||||
INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`, `goods_desc`) VALUES ('BACK_1742775892056010000', 1, 4, 1, 'ASRS-0315', 'P3', 'A01-34-06', '1742775918384010000', '2025-03-24 08:24:52', '2025-03-24 08:26:22', '000000000', 0, 0, 'wms_auto', NULL, '', 'P3', '');
|
||||
|
|
@ -21159,7 +21221,7 @@ INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicl
|
|||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0323', 0, 2, '', 0, 'A04-30-03', '2025-03-21 13:26:19');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0324', 0, 2, '', 0, 'A04-31-04', '2025-04-01 10:10:49');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0325', 0, 2, '', 0, 'A04-29-04', '2025-03-21 13:25:24');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0326', 0, 3, '', 0, 'A02-23-09', '2025-03-21 13:24:49');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0326', 0, 3, '', 0, '', '2025-03-21 13:24:49');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0327', 0, 2, '', 0, 'A02-37-09', '2025-03-28 09:48:22');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0328', 0, 2, '', 0, 'A02-39-01', '2025-03-29 11:57:56');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0329', 0, 2, '', 0, 'A01-34-11', '2025-04-01 09:46:42');
|
||||
|
|
@ -21516,7 +21578,7 @@ INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicl
|
|||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0869', 1, 2, '', 0, 'A02-11-06', '2025-03-05 14:22:30');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0870', 1, 2, '', 0, 'A02-12-05', '2025-03-05 14:23:56');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0871', 1, 2, '', 0, 'A01-08-10', '2025-03-05 14:28:24');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0872', 1, 2, '', 0, 'A01-02-09', '2025-03-05 09:37:25');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0872', 1, 3, '', 0, 'A01-02-09', '2025-03-05 09:37:25');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0873', 1, 2, '', 0, 'A04-33-01', '2025-03-18 15:21:36');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0874', 1, 2, '', 0, 'A01-22-01', '2025-03-15 10:09:29');
|
||||
INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0875', 1, 2, '', 0, 'A01-03-06', '2025-03-05 09:37:26');
|
||||
|
|
@ -25725,19 +25787,21 @@ INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent
|
|||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('2-1', 'DBS计划', '', '/dbsList', '2');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('2-2', '配料单', '', '/kittingList', '2');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('2-3', '配对关系', '', '/kittingRelation', '2');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('2-4', '图纸', '', '/imageTable', '2');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('2-6', '工作详情', '', '/workSummary', '2');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3', '报表', 'DataLine', '', '0');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-1', '库存信息', '', '/stock', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-10', '盘点记录', '', '/inventoryRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-11', '拣选任务', '', '/pickTask', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-2', '库存更新记录', '', '/stockUpdateRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-3', '物料信息', '', '/goods', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-4', '料箱监控', '', '/vehicles', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-5', '站台监控', '', '/standSettings', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-6', '库位监控', '', '/location', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-7', '任务监控', '', '/taskMonitor', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-8', '入库记录', '', '/inTaskRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-9', '出库记录', '', '/outTaskRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-11', '物料信息', '', '/goods', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-21', '库存信息', '', '/stock', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-22', '库存流水', '', '/stockUpdateRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-23', '料箱监控', '', '/vehicles', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-24', '库位监控', '', '/location', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-25', '站台监控', '', '/standSettings', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-31', '任务监控', '', '/taskMonitor', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-32', '拣选任务', '', '/pickTask', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-41', '入库记录', '', '/inTaskRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-42', '出库记录', '', '/outTaskRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-43', '盘点记录', '', '/inventoryRecord', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('3-51', '出库表单', '', '/outsMonitor', '3');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('4', '系统', 'Setting', '', '0');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('4-1', '系统配置', '', '/config', '4');
|
||||
INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('4-2', '角色列表', '', '/rolePermission', '4');
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user