代码更新:
This commit is contained in:
parent
1326ab0b33
commit
386ed14035
|
|
@ -66,72 +66,54 @@ const downloadStockExcel = (data) => {
|
||||||
const downloadInRecordExcel = (data) => {
|
const downloadInRecordExcel = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/excel/downloadInRecordExcel',
|
url: '/excel/downloadInRecordExcel',
|
||||||
method: 'get',
|
method: 'post',
|
||||||
responseType: 'blob',
|
responseType: 'blob',
|
||||||
params: {
|
data: data
|
||||||
vehicleId: data.vehicleId,
|
|
||||||
goodsId: data.goodsId
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const downloadOutRecordExcel = (params) => {
|
const downloadOutRecordExcel = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/excel/downloadOutRecordExcel',
|
url: '/excel/downloadOutRecordExcel',
|
||||||
method: 'get',
|
method: 'post',
|
||||||
responseType: 'blob',
|
responseType: 'blob',
|
||||||
params: {
|
data: data
|
||||||
vehicleId: params.vehicleId,
|
|
||||||
goodsId: params.goodsId
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const downloadInventoryRecordExcel = (params) => {
|
const downloadInventoryRecordExcel = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/excel/downloadInventoryRecordExcel',
|
url: '/excel/downloadInventoryRecordExcel',
|
||||||
method: 'get',
|
method: 'post',
|
||||||
responseType: 'blob',
|
responseType: 'blob',
|
||||||
params: {
|
data: data
|
||||||
vehicleId: params.vehicleId,
|
|
||||||
goodsId: params.goodsId
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const downloadMaterialExcel = () => {
|
const downloadGoodsExcel = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/excel/downloadMaterialExcel',
|
url: '/excel/downloadGoodsExcel',
|
||||||
method: 'get',
|
method: 'post',
|
||||||
responseType: 'blob'
|
responseType: 'blob',
|
||||||
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const downloadVehicleExcel = (vehicleQuery) => {
|
const downloadVehicleExcel = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/excel/downloadVehicleExcel',
|
url: '/excel/downloadVehicleExcel',
|
||||||
method: 'get',
|
method: 'post',
|
||||||
responseType: 'blob',
|
responseType: 'blob',
|
||||||
params: {
|
data: data
|
||||||
vehicleId: vehicleQuery.vehicleId,
|
|
||||||
locationId: vehicleQuery.locationId,
|
|
||||||
isEmpty: vehicleQuery.isEmpty,
|
|
||||||
vehicleStatus: vehicleQuery.vehicleStatus
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const downloadLocationsExcel = (params) => {
|
const downloadLocationsExcel = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/excel/downloadLocationsExcel',
|
url: '/excel/downloadLocationsExcel',
|
||||||
method: 'get',
|
method: 'post',
|
||||||
responseType: 'blob',
|
responseType: 'blob',
|
||||||
params: {
|
data: data
|
||||||
locationId: params.locationId,
|
|
||||||
areaId: params.areaId,
|
|
||||||
isLock: params.isLock,
|
|
||||||
locationStatus: params.locationStatus
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -160,7 +142,7 @@ export {
|
||||||
uploadExcelOrders,
|
uploadExcelOrders,
|
||||||
uploadExcelInventoryList,
|
uploadExcelInventoryList,
|
||||||
downloadStockExcel,
|
downloadStockExcel,
|
||||||
downloadMaterialExcel,
|
downloadGoodsExcel,
|
||||||
downloadVehicleExcel,
|
downloadVehicleExcel,
|
||||||
downloadInRecordExcel,
|
downloadInRecordExcel,
|
||||||
downloadOutRecordExcel,
|
downloadOutRecordExcel,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,8 @@
|
||||||
import request from "@/http/request";
|
import request from "@/http/request";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页查找物料
|
||||||
|
*/
|
||||||
const getGoodsInfoByPage = (params) => {
|
const getGoodsInfoByPage = (params) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/goods/getGoodsInfoByPage',
|
url: '/goods/getGoodsInfoByPage',
|
||||||
|
|
@ -8,6 +11,51 @@ const getGoodsInfoByPage = (params) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新物料信息
|
||||||
|
*/
|
||||||
|
const updateGoodsInfo = (params) => {
|
||||||
|
return request({
|
||||||
|
url: '/goods/updateGoodsInfo',
|
||||||
|
method: 'post',
|
||||||
|
data: params
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询所有物料信息
|
||||||
|
*/
|
||||||
|
const getGoodsInfo = (params) => {
|
||||||
|
return request({
|
||||||
|
url: '/goods/getGoodsInfo',
|
||||||
|
method: 'post',
|
||||||
|
data: params
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询自动补全时可用的物料信息
|
||||||
|
*/
|
||||||
|
const getGoodsInfoByGoodsId = (params) => {
|
||||||
|
return request({
|
||||||
|
url: '/goods/getGoodsInfoByGoodsId',
|
||||||
|
method: 'post',
|
||||||
|
data: params
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const deleteGoodsInfo = (params) => {
|
||||||
|
return request({
|
||||||
|
url: '/goods/deleteGoodsInfo',
|
||||||
|
method: 'post',
|
||||||
|
data: params
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
export {
|
export {
|
||||||
getGoodsInfoByPage
|
getGoodsInfoByPage,
|
||||||
|
deleteGoodsInfo,
|
||||||
|
getGoodsInfoByGoodsId,
|
||||||
|
getGoodsInfo,
|
||||||
|
updateGoodsInfo
|
||||||
}
|
}
|
||||||
|
|
@ -12,6 +12,7 @@ import store from '@/store'
|
||||||
import { ref, reactive } from 'vue';
|
import { ref, reactive } from 'vue';
|
||||||
import { uploadExcelDbs } from '@/api/excel.js'
|
import { uploadExcelDbs } from '@/api/excel.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox';
|
||||||
import { sizeFormatter } from '@/utils/formatter.js'
|
import { sizeFormatter } from '@/utils/formatter.js'
|
||||||
import loading from '@/utils/loading.js'
|
import loading from '@/utils/loading.js'
|
||||||
import { getHashString } from '@/utils/hashUtils.js'
|
import { getHashString } from '@/utils/hashUtils.js'
|
||||||
|
|
@ -41,11 +42,11 @@ const changeFile = (uploadFile) => {
|
||||||
const uploadRef = ref()
|
const uploadRef = ref()
|
||||||
const uploadDbs = () => {
|
const uploadDbs = () => {
|
||||||
if (uploadForm == undefined || file.value == undefined) {
|
if (uploadForm == undefined || file.value == undefined) {
|
||||||
ElMessage.error('请选择文件之后再上传')
|
errorBox('请选择文件之后再上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
||||||
ElMessage.error('请勿重复上传')
|
errorBox('请勿重复上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
currentHash = uploadForm.data.hash
|
currentHash = uploadForm.data.hash
|
||||||
|
|
@ -68,13 +69,13 @@ const uploadDbs = () => {
|
||||||
})
|
})
|
||||||
clearFileInfos()
|
clearFileInfos()
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.data.message)
|
errorBox(res.data.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
loading.close()
|
loading.close()
|
||||||
currentHash = ''
|
currentHash = ''
|
||||||
console.log(err)
|
console.log(err)
|
||||||
ElMessage.error('上传错误')
|
errorBox('上传错误')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const clearFileInfos = () => {
|
const clearFileInfos = () => {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import store from '@/store'
|
||||||
import { ref, reactive } from 'vue';
|
import { ref, reactive } from 'vue';
|
||||||
import { uploadExcelGoods } from '@/api/excel.js'
|
import { uploadExcelGoods } from '@/api/excel.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox';
|
||||||
import { sizeFormatter } from '@/utils/formatter.js'
|
import { sizeFormatter } from '@/utils/formatter.js'
|
||||||
import loading from '@/utils/loading.js'
|
import loading from '@/utils/loading.js'
|
||||||
import { getHashString } from '@/utils/hashUtils.js'
|
import { getHashString } from '@/utils/hashUtils.js'
|
||||||
|
|
@ -41,11 +42,11 @@ const changeFile = (uploadFile) => {
|
||||||
const uploadRef = ref()
|
const uploadRef = ref()
|
||||||
const uploadGoods = () => {
|
const uploadGoods = () => {
|
||||||
if (uploadForm == undefined || file.value == undefined) {
|
if (uploadForm == undefined || file.value == undefined) {
|
||||||
ElMessage.error('请选择文件之后再上传')
|
errorBox('请选择文件之后再上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
||||||
ElMessage.error('请勿重复上传')
|
errorBox('请勿重复上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
currentHash = uploadForm.data.hash
|
currentHash = uploadForm.data.hash
|
||||||
|
|
@ -68,13 +69,13 @@ const uploadGoods = () => {
|
||||||
})
|
})
|
||||||
clearFileInfos()
|
clearFileInfos()
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.data.message)
|
errorBox(res.data.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
loading.close()
|
loading.close()
|
||||||
currentHash = ''
|
currentHash = ''
|
||||||
console.log(err)
|
console.log(err)
|
||||||
ElMessage.error('上传错误')
|
errorBox('上传错误')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const clearFileInfos = () => {
|
const clearFileInfos = () => {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import store from '@/store'
|
||||||
import { ref, reactive } from 'vue';
|
import { ref, reactive } from 'vue';
|
||||||
import { uploadExcelInventoryList } from '@/api/excel.js'
|
import { uploadExcelInventoryList } from '@/api/excel.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox';
|
||||||
import { sizeFormatter } from '@/utils/formatter.js'
|
import { sizeFormatter } from '@/utils/formatter.js'
|
||||||
import loading from '@/utils/loading.js'
|
import loading from '@/utils/loading.js'
|
||||||
import { getHashString } from '@/utils/hashUtils.js'
|
import { getHashString } from '@/utils/hashUtils.js'
|
||||||
|
|
@ -41,11 +42,11 @@ const changeFile = (uploadFile) => {
|
||||||
const uploadRef = ref()
|
const uploadRef = ref()
|
||||||
const uploadInventory = () => {
|
const uploadInventory = () => {
|
||||||
if (uploadForm == undefined || file.value == undefined) {
|
if (uploadForm == undefined || file.value == undefined) {
|
||||||
ElMessage.error('请选择文件之后再上传')
|
errorBox('请选择文件之后再上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
||||||
ElMessage.error('请勿重复上传')
|
errorBox('请勿重复上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
currentHash = uploadForm.data.hash
|
currentHash = uploadForm.data.hash
|
||||||
|
|
@ -68,13 +69,13 @@ const uploadInventory = () => {
|
||||||
})
|
})
|
||||||
clearFileInfos()
|
clearFileInfos()
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.data.message)
|
errorBox(res.data.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
loading.close()
|
loading.close()
|
||||||
currentHash = ''
|
currentHash = ''
|
||||||
console.log(err)
|
console.log(err)
|
||||||
ElMessage.error('上传错误')
|
errorBox('上传错误')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const clearFileInfos = () => {
|
const clearFileInfos = () => {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import store from '@/store'
|
||||||
import { ref, reactive } from 'vue';
|
import { ref, reactive } from 'vue';
|
||||||
import { uploadExcelOrders } from '@/api/excel.js'
|
import { uploadExcelOrders } from '@/api/excel.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox';
|
||||||
import { sizeFormatter } from '@/utils/formatter.js'
|
import { sizeFormatter } from '@/utils/formatter.js'
|
||||||
import loading from '@/utils/loading.js'
|
import loading from '@/utils/loading.js'
|
||||||
import { getHashString } from '@/utils/hashUtils.js'
|
import { getHashString } from '@/utils/hashUtils.js'
|
||||||
|
|
@ -41,11 +42,11 @@ const changeFile = (uploadFile) => {
|
||||||
const uploadRef = ref()
|
const uploadRef = ref()
|
||||||
const uploadOrders = () => {
|
const uploadOrders = () => {
|
||||||
if (uploadForm == undefined || file.value == undefined) {
|
if (uploadForm == undefined || file.value == undefined) {
|
||||||
ElMessage.error('请选择文件之后再上传')
|
errorBox('请选择文件之后再上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
||||||
ElMessage.error('请勿重复上传')
|
errorBox('请勿重复上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
currentHash = uploadForm.data.hash
|
currentHash = uploadForm.data.hash
|
||||||
|
|
@ -68,13 +69,13 @@ const uploadOrders = () => {
|
||||||
})
|
})
|
||||||
clearFileInfos()
|
clearFileInfos()
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.data.message)
|
errorBox(res.data.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
loading.close()
|
loading.close()
|
||||||
currentHash = ''
|
currentHash = ''
|
||||||
console.log(err)
|
console.log(err)
|
||||||
ElMessage.error('上传错误')
|
errorBox('上传错误')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const clearFileInfos = () => {
|
const clearFileInfos = () => {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import store from '@/store'
|
||||||
import { ref, reactive } from 'vue';
|
import { ref, reactive } from 'vue';
|
||||||
import { uploadStationConfig } from '@/api/excel.js'
|
import { uploadStationConfig } from '@/api/excel.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox';
|
||||||
import { sizeFormatter } from '@/utils/formatter.js'
|
import { sizeFormatter } from '@/utils/formatter.js'
|
||||||
import loading from '@/utils/loading.js'
|
import loading from '@/utils/loading.js'
|
||||||
import { getHashString } from '@/utils/hashUtils.js'
|
import { getHashString } from '@/utils/hashUtils.js'
|
||||||
|
|
@ -41,11 +42,11 @@ const changeFile = (uploadFile) => {
|
||||||
const uploadRef = ref()
|
const uploadRef = ref()
|
||||||
const uploadDbs = () => {
|
const uploadDbs = () => {
|
||||||
if (uploadForm == undefined || file.value == undefined) {
|
if (uploadForm == undefined || file.value == undefined) {
|
||||||
ElMessage.error('请选择文件之后再上传')
|
errorBox('请选择文件之后再上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
||||||
ElMessage.error('请勿重复上传')
|
errorBox('请勿重复上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
currentHash = uploadForm.data.hash
|
currentHash = uploadForm.data.hash
|
||||||
|
|
@ -68,13 +69,13 @@ const uploadDbs = () => {
|
||||||
})
|
})
|
||||||
clearFileInfos()
|
clearFileInfos()
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.data.message)
|
errorBox(res.data.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
loading.close()
|
loading.close()
|
||||||
currentHash = ''
|
currentHash = ''
|
||||||
console.log(err)
|
console.log(err)
|
||||||
ElMessage.error('上传错误')
|
errorBox('上传错误')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const clearFileInfos = () => {
|
const clearFileInfos = () => {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import store from '@/store'
|
||||||
import { ref, reactive } from 'vue';
|
import { ref, reactive } from 'vue';
|
||||||
import { uploadExcelStock } from '@/api/excel.js'
|
import { uploadExcelStock } from '@/api/excel.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox';
|
||||||
import { sizeFormatter } from '@/utils/formatter.js'
|
import { sizeFormatter } from '@/utils/formatter.js'
|
||||||
import loading from '@/utils/loading.js'
|
import loading from '@/utils/loading.js'
|
||||||
import { getHashString } from '@/utils/hashUtils.js'
|
import { getHashString } from '@/utils/hashUtils.js'
|
||||||
|
|
@ -41,11 +42,11 @@ const changeFile = (uploadFile) => {
|
||||||
const uploadRef = ref()
|
const uploadRef = ref()
|
||||||
const uploadStock = () => {
|
const uploadStock = () => {
|
||||||
if (uploadForm == undefined || file.value == undefined) {
|
if (uploadForm == undefined || file.value == undefined) {
|
||||||
ElMessage.error('请选择文件之后再上传')
|
errorBox('请选择文件之后再上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
if (currentHash != '' && currentHash == uploadForm.data.hash) {
|
||||||
ElMessage.error('请勿重复上传')
|
errorBox('请勿重复上传')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
currentHash = uploadForm.data.hash
|
currentHash = uploadForm.data.hash
|
||||||
|
|
@ -68,13 +69,13 @@ const uploadStock = () => {
|
||||||
})
|
})
|
||||||
clearFileInfos()
|
clearFileInfos()
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.data.message)
|
errorBox(res.data.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
loading.close()
|
loading.close()
|
||||||
currentHash = ''
|
currentHash = ''
|
||||||
console.log(err)
|
console.log(err)
|
||||||
ElMessage.error('上传错误')
|
errorBox('上传错误')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const clearFileInfos = () => {
|
const clearFileInfos = () => {
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@
|
||||||
<div style="display: flex; margin-top: 20px;">
|
<div style="display: flex; margin-top: 20px;">
|
||||||
<div class="display-form-div-left">
|
<div class="display-form-div-left">
|
||||||
<el-input-number v-model.number="workFormEntity.needNum"
|
<el-input-number v-model.number="workFormEntity.needNum"
|
||||||
controls-position="right" :min="0" />
|
controls-position="right" :min="0" :max="20" />
|
||||||
</div>
|
</div>
|
||||||
<div class="display-form-div-right">
|
<div class="display-form-div-right">
|
||||||
<span class="display-form-text-right">个</span>
|
<span class="display-form-text-right">个</span>
|
||||||
|
|
@ -90,7 +90,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { callEmptyVehicle } from '@/api/task'
|
import { callEmptyVehicle } from '@/api/task'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -233,7 +234,7 @@ export default {
|
||||||
callEmptyVehicle(request).then(res => {
|
callEmptyVehicle(request).then(res => {
|
||||||
const response = res.data
|
const response = res.data
|
||||||
if (response.code == 0) {
|
if (response.code == 0) {
|
||||||
successBox(response.message)
|
ElMessage.success(response.message)
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
} else {
|
} else {
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
|
|
|
||||||
|
|
@ -235,7 +235,8 @@ import store from '@/store'
|
||||||
import { getClcKanbanRequirement } from '@/api/kateWork'
|
import { getClcKanbanRequirement } from '@/api/kateWork'
|
||||||
import { downloadClcKanbanRequirementExcel } from '@/api/excel'
|
import { downloadClcKanbanRequirementExcel } from '@/api/excel'
|
||||||
import { dateFormatter } from '@/utils/formatter.js'
|
import { dateFormatter } from '@/utils/formatter.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -300,7 +301,7 @@ export default {
|
||||||
this.workFormEntity.NumOfBoxOf811 = response.returnData.NumOfBoxOf811
|
this.workFormEntity.NumOfBoxOf811 = response.returnData.NumOfBoxOf811
|
||||||
this.workFormEntity.NumOfBoxOf911 = response.returnData.NumOfBoxOf911
|
this.workFormEntity.NumOfBoxOf911 = response.returnData.NumOfBoxOf911
|
||||||
this.workFormEntity.NumOfBoxOf822 = response.returnData.NumOfBoxOf822
|
this.workFormEntity.NumOfBoxOf822 = response.returnData.NumOfBoxOf822
|
||||||
successBox("获取CLC看板需求成功。")
|
ElMessage.success("获取CLC看板需求成功。")
|
||||||
} else {
|
} else {
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
|
|
|
||||||
|
|
@ -183,7 +183,7 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { clcNoPlan, clcNoPlanConfirmBack } from '@/api/task'
|
import { clcNoPlan, clcNoPlanConfirmBack } from '@/api/task'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { getStockNumByGoodsId } from '@/api/stock'
|
import { getStockNumByGoodsId } from '@/api/stock'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
|
@ -293,7 +293,7 @@ export default {
|
||||||
clcNoPlan(requestParams).then(res => {
|
clcNoPlan(requestParams).then(res => {
|
||||||
const response = res.data
|
const response = res.data
|
||||||
if (response.code == 0) {
|
if (response.code == 0) {
|
||||||
successBox(response.message)
|
ElMessage.success(response.message)
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
} else {
|
} else {
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
|
|
@ -319,7 +319,7 @@ export default {
|
||||||
clcNoPlanConfirmBack(confirmParams).then(res => {
|
clcNoPlanConfirmBack(confirmParams).then(res => {
|
||||||
const response = res.data
|
const response = res.data
|
||||||
if (response.code == 0) {
|
if (response.code == 0) {
|
||||||
successBox(response.message)
|
ElMessage.success(response.message)
|
||||||
this.resetConfirmForms()
|
this.resetConfirmForms()
|
||||||
} else {
|
} else {
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
|
|
|
||||||
|
|
@ -131,8 +131,8 @@
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getDbs, deleteDbs, updateDbs } from '@/api/kateWork.js'
|
import { getDbs, deleteDbs, updateDbs } from '@/api/kateWork.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { ElMessageBox } from 'element-plus'
|
import { ElMessageBox, ElMessage } from 'element-plus'
|
||||||
import { errorBox, infoBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import UploadExcelDbs from '@/excel/UploadExcelDbs.vue'
|
import UploadExcelDbs from '@/excel/UploadExcelDbs.vue'
|
||||||
|
|
@ -231,7 +231,7 @@ export default {
|
||||||
}
|
}
|
||||||
deleteDbs(params).then(res => {
|
deleteDbs(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
successBox('删除DBS信息成功')
|
ElMessage.success('删除DBS信息成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -241,7 +241,7 @@ export default {
|
||||||
errorBox('删除DBS信息成功')
|
errorBox('删除DBS信息成功')
|
||||||
})
|
})
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
infoBox('操作取消')
|
ElMessage.info('操作取消')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
submitDbsInfo(formData) {
|
submitDbsInfo(formData) {
|
||||||
|
|
@ -256,7 +256,7 @@ export default {
|
||||||
updateDbs(params).then(res => {
|
updateDbs(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新DBS成功。')
|
ElMessage.success('更新DBS成功。')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
|
||||||
|
|
@ -140,7 +140,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getWorkByStandAndGoods, confirmFinishWork, queryFinishByStandAndGoods } from '@/api/task'
|
import { getWorkByStandAndGoods, confirmFinishWork, queryFinishByStandAndGoods } from '@/api/task'
|
||||||
import { errorBox, successBox, warningBox } from '@/utils/myMessageBox.js'
|
import { errorBox, warningBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -233,7 +234,7 @@ export default {
|
||||||
this.workFormEntity.tip = response.returnData.tip
|
this.workFormEntity.tip = response.returnData.tip
|
||||||
warningBox(this.workFormEntity.tip)
|
warningBox(this.workFormEntity.tip)
|
||||||
} else {
|
} else {
|
||||||
successBox(response.message)
|
ElMessage.success(response.message)
|
||||||
}
|
}
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
}
|
}
|
||||||
|
|
@ -270,7 +271,7 @@ export default {
|
||||||
this.workFormEntity.tip = response.returnData.tip
|
this.workFormEntity.tip = response.returnData.tip
|
||||||
}
|
}
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
successBox(response.message)
|
ElMessage.success(response.message)
|
||||||
} else {
|
} else {
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -85,7 +85,7 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
|
|
@ -149,10 +149,10 @@ export default {
|
||||||
this.pickTaskList = tableResponse.returnData.lists
|
this.pickTaskList = tableResponse.returnData.lists
|
||||||
this.total = tableResponse.returnData.total
|
this.total = tableResponse.returnData.total
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(tableResponse.message)
|
errorBox(tableResponse.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
ElMessage.error('查询拣选任务错误' + err.message)
|
errorBox('查询拣选任务错误' + err.message)
|
||||||
})
|
})
|
||||||
this.loading = false
|
this.loading = false
|
||||||
},
|
},
|
||||||
|
|
@ -207,10 +207,10 @@ export default {
|
||||||
})
|
})
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.data.message)
|
errorBox(res.data.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
ElMessage.error('更新拣选任务失败。')
|
errorBox('更新拣选任务失败。')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getCurrentRow(row) {
|
getCurrentRow(row) {
|
||||||
|
|
|
||||||
|
|
@ -85,7 +85,7 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
|
|
@ -149,7 +149,7 @@ export default {
|
||||||
this.pickTaskList = tableResponse.returnData.lists
|
this.pickTaskList = tableResponse.returnData.lists
|
||||||
this.total = tableResponse.returnData.total
|
this.total = tableResponse.returnData.total
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(tableResponse.message)
|
errorBox(tableResponse.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
ElMessage.error('查询拣选任务错误' + err.message)
|
ElMessage.error('查询拣选任务错误' + err.message)
|
||||||
|
|
|
||||||
|
|
@ -113,21 +113,21 @@
|
||||||
<div style="width: 0;height: 0;overflow: hidden">
|
<div style="width: 0;height: 0;overflow: hidden">
|
||||||
<div id="printArea" class="objectDialogFlowPrint">
|
<div id="printArea" class="objectDialogFlowPrint">
|
||||||
<!-- <div class="myPrint"> -->
|
<!-- <div class="myPrint"> -->
|
||||||
<div class="pageWarp" v-for="item in printTabs">
|
<div class="pageWarp" v-for="item in printTabs">
|
||||||
<div class="print-tab-left">
|
<div class="print-tab-left">
|
||||||
<div class="print-disp">
|
<div class="print-disp">
|
||||||
小盒子号:{{ item.sequenceNo }}</div>
|
小盒子号:{{ item.sequenceNo }}</div>
|
||||||
<div class="print-disp"> 小工位:{{ item.smallWorkCenter }}</div>
|
<div class="print-disp"> 小工位:{{ item.smallWorkCenter }}</div>
|
||||||
<div class="print-disp"> 料号数量:{{ item.goodsCount }}</div>
|
<div class="print-disp"> 料号数量:{{ item.goodsCount }}</div>
|
||||||
<div class="print-disp"> 配料人员:{{ item.opUser }}</div>
|
<div class="print-disp"> 配料人员:{{ item.opUser }}</div>
|
||||||
</div>
|
|
||||||
<div class="print-tab-right">
|
|
||||||
<div class="print-disp"> 机器序列号:{{ item.machineNo }}</div>
|
|
||||||
<div class="print-disp"> 工单:{{ item.workOrder }}</div>
|
|
||||||
<div class="print-disp"> 零件数量:{{ item.goodsNumCount }}</div>
|
|
||||||
<div class="print-disp"> 配料日期:{{ item.opTime }}</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
<div class="print-tab-right">
|
||||||
|
<div class="print-disp"> 机器序列号:{{ item.machineNo }}</div>
|
||||||
|
<div class="print-disp"> 工单:{{ item.workOrder }}</div>
|
||||||
|
<div class="print-disp"> 零件数量:{{ item.goodsNumCount }}</div>
|
||||||
|
<div class="print-disp"> 配料日期:{{ item.opTime }}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<!-- </div> -->
|
<!-- </div> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -139,7 +139,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getFinishedWorkInfo, confirmFinishedWork, requestPrintData } from '@/api/task'
|
import { getFinishedWorkInfo, confirmFinishedWork, requestPrintData } from '@/api/task'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -225,7 +226,7 @@ export default {
|
||||||
confirmFinishedWork(confirmParams).then(res => {
|
confirmFinishedWork(confirmParams).then(res => {
|
||||||
const response = res.data
|
const response = res.data
|
||||||
if (response.code == 0) {
|
if (response.code == 0) {
|
||||||
successBox('response.message')
|
ElMessage.success('response.message')
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
} else {
|
} else {
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
|
|
|
||||||
|
|
@ -174,14 +174,14 @@
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getGoodsInfoByPage } from '@/api/goods.js'
|
import { getGoodsInfoByPage, deleteGoodsInfo, updateGoodsInfo } from '@/api/goods.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { ElMessageBox } from 'element-plus'
|
import { ElMessageBox, ElMessage } from 'element-plus'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { errorBox, infoBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import UploadExcelGoods from '@/excel/UploadExcelGoods.vue'
|
import UploadExcelGoods from '@/excel/UploadExcelGoods.vue'
|
||||||
import { downloadMaterialExcel } from '@/api/excel.js'
|
import { downloadGoodsExcel } from '@/api/excel.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
|
|
@ -277,9 +277,9 @@ export default {
|
||||||
goodsId: this.goodsId,
|
goodsId: this.goodsId,
|
||||||
userName: store.getters.getUserName
|
userName: store.getters.getUserName
|
||||||
}
|
}
|
||||||
deleteAllKateTasks(params).then(res => {
|
deleteGoodsInfo(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
successBox('删除物料信息成功')
|
ElMessage.success('删除物料信息成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -289,14 +289,32 @@ export default {
|
||||||
errorBox('删除物料信息失败')
|
errorBox('删除物料信息失败')
|
||||||
})
|
})
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
infoBox('操作取消')
|
ElMessage.info('操作取消')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
submitGoodsInfo(formData) {
|
submitGoodsInfo(formData) {
|
||||||
updatePartInfo(formData).then(res => {
|
const request = {
|
||||||
|
goodsId: formData.goodsId,
|
||||||
|
goodsName: formData.goodsName,
|
||||||
|
goodsUnit: formData.goodsUnit,
|
||||||
|
goodsType: formData.goodsType,
|
||||||
|
providerType: formData.providerType,
|
||||||
|
weight: formData.weight,
|
||||||
|
weightUnit: formData.weightUnit,
|
||||||
|
quantityPerBox: formData.quantityPerBox,
|
||||||
|
unpackingType: formData.unpackingType,
|
||||||
|
vehicleType: formData.vehicleType,
|
||||||
|
vehicleTypeDescription: formData.vehicleTypeDescription,
|
||||||
|
goodsInVehicleType: formData.goodsInVehicleType,
|
||||||
|
feedingType: formData.feedingType,
|
||||||
|
feedingValue: formData.feedingValue,
|
||||||
|
dataSource: formData.dataSource,
|
||||||
|
userName: store.getters.getUserName
|
||||||
|
}
|
||||||
|
updateGoodsInfo(request).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新物料信息成功')
|
ElMessage.success('更新物料信息成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -309,13 +327,17 @@ export default {
|
||||||
this.goodsId = row.goodsId
|
this.goodsId = row.goodsId
|
||||||
},
|
},
|
||||||
exportExcel() {
|
exportExcel() {
|
||||||
downloadMaterialExcel().then(res => {
|
const params = {
|
||||||
|
goodsId: this.goodsIdQuery.trim(),
|
||||||
|
userName: store.getters.getUserName
|
||||||
|
}
|
||||||
|
downloadGoodsExcel(params).then(res => {
|
||||||
const link = document.createElement('a');//创建a标签
|
const link = document.createElement('a');//创建a标签
|
||||||
try {
|
try {
|
||||||
// let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
// let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
||||||
let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
||||||
// let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
// let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
||||||
let _fileName = "导出物料信息" + dateFormatter(new Date) + ".xlsx"
|
let _fileName = "物料报表" + dateFormatter(new Date) + ".xlsx"
|
||||||
link.style.display = 'none'//隐藏
|
link.style.display = 'none'//隐藏
|
||||||
|
|
||||||
// 兼容不同浏览器的URL对象
|
// 兼容不同浏览器的URL对象
|
||||||
|
|
@ -336,14 +358,6 @@ export default {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
// watch: {
|
|
||||||
// currentPage() {
|
|
||||||
// this.getCurrentPageGoods()
|
|
||||||
// },
|
|
||||||
// pageSize() {
|
|
||||||
// this.getCurrentPageGoods()
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,7 @@
|
||||||
<div style="display: flex; margin-top: 20px;">
|
<div style="display: flex; margin-top: 20px;">
|
||||||
<div class="display-form-div-left">
|
<div class="display-form-div-left">
|
||||||
<el-input-number v-model.number="workFormEntity.goodsNum"
|
<el-input-number v-model.number="workFormEntity.goodsNum"
|
||||||
controls-position="right" :min="0" :max="99999999" ref="goodsNum"
|
controls-position="right" :min="0" :max="9999" ref="goodsNum"
|
||||||
v-on:keyup.enter="addTempTask()" />
|
v-on:keyup.enter="addTempTask()" />
|
||||||
</div>
|
</div>
|
||||||
<div class="display-form-div-right">
|
<div class="display-form-div-right">
|
||||||
|
|
@ -101,7 +101,8 @@ import store from '@/store'
|
||||||
import { sendGoodsInTask } from '@/api/task'
|
import { sendGoodsInTask } from '@/api/task'
|
||||||
import { replaceEnglishAndNumberIGAI } from '@/utils/formatter'
|
import { replaceEnglishAndNumberIGAI } from '@/utils/formatter'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
@ -119,7 +120,8 @@ export default {
|
||||||
workFormRef: ref(),
|
workFormRef: ref(),
|
||||||
workFormEntity: reactive({
|
workFormEntity: reactive({
|
||||||
vehicleId: '',
|
vehicleId: '',
|
||||||
goodsId: ''
|
goodsId: '',
|
||||||
|
goodsNum: null
|
||||||
}),
|
}),
|
||||||
rules: reactive({
|
rules: reactive({
|
||||||
vehicleId: [
|
vehicleId: [
|
||||||
|
|
@ -141,31 +143,79 @@ export default {
|
||||||
resetForms() {
|
resetForms() {
|
||||||
this.workFormEntity = reactive({
|
this.workFormEntity = reactive({
|
||||||
vehicleId: '',
|
vehicleId: '',
|
||||||
goodsId: ''
|
goodsId: '',
|
||||||
|
goodsNum: null
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
addTempTask() {
|
addTempTask() {
|
||||||
this.workFormEntity.vehicleId = replaceEnglishAndNumberIGAI(this.workFormEntity.vehicleId)
|
this.workFormEntity.vehicleId = replaceEnglishAndNumberIGAI(this.workFormEntity.vehicleId)
|
||||||
if (this.workFormEntity.vehicleId != '' && this.workFormEntity.goodsId != '' && this.workFormEntity.goodsNum != null && this.workFormEntity.goodsNum > 0) {
|
if (this.workFormEntity.vehicleId != '' && this.workFormEntity.goodsId != '' && this.workFormEntity.goodsNum != null && this.workFormEntity.goodsNum > 0) {
|
||||||
|
if (this.workFormEntity.vehicleId == this.workFormEntity.goodsId) {
|
||||||
|
errorBox('料箱号与料号不能相同')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.workFormEntity.goodsId == this.workFormEntity.goodsNum) {
|
||||||
|
errorBox('料号与数量不能相同')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.workFormEntity.vehicleId == this.workFormEntity.goodsNum) {
|
||||||
|
errorBox('料箱号与数量不能相同')
|
||||||
|
return
|
||||||
|
}
|
||||||
if (this.currentVehicleId != '' && this.currentVehicleId != this.workFormEntity.vehicleId) {
|
if (this.currentVehicleId != '' && this.currentVehicleId != this.workFormEntity.vehicleId) {
|
||||||
errorBox('请下发之前料箱的任务后再继续绑定新的料箱')
|
errorBox('请下发之前料箱的任务后再继续绑定新的料箱')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const sameIndex = this.tempTasks.findIndex(task => task.goodsId == this.workFormEntity.goodsId)
|
if (this.workFormEntity.goodsNum == 9999) {
|
||||||
if (sameIndex != -1) {// 绑定过相同物料
|
ElMessageBox.confirm(
|
||||||
var sameGoods = this.tempTasks[sameIndex]
|
'当前数量达最大值9999。\n是否继续',
|
||||||
sameGoods.goodsNum = sameGoods.goodsNum + this.workFormEntity.goodsNum
|
'警告',
|
||||||
} else {
|
{
|
||||||
this.tempTasks.push({
|
confirmButtonText: '确认',
|
||||||
vehicleId: this.workFormEntity.vehicleId,
|
cancelButtonText: '取消',
|
||||||
goodsId: this.workFormEntity.goodsId,
|
type: 'warning',
|
||||||
goodsNum: this.workFormEntity.goodsNum
|
}
|
||||||
|
).then(() => {
|
||||||
|
const sameIndex = this.tempTasks.findIndex(task => task.goodsId == this.workFormEntity.goodsId)
|
||||||
|
if (sameIndex != -1) {// 绑定过相同物料
|
||||||
|
var sameGoods = this.tempTasks[sameIndex]
|
||||||
|
sameGoods.goodsNum = sameGoods.goodsNum + this.workFormEntity.goodsNum
|
||||||
|
} else {
|
||||||
|
this.tempTasks.push({
|
||||||
|
vehicleId: this.workFormEntity.vehicleId,
|
||||||
|
goodsId: this.workFormEntity.goodsId,
|
||||||
|
goodsNum: this.workFormEntity.goodsNum
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.currentVehicleId = this.workFormEntity.vehicleId
|
||||||
|
this.workFormEntity.goodsId = ''
|
||||||
|
this.workFormEntity.goodsNum = null
|
||||||
|
this.$refs.goodsId.focus()
|
||||||
|
return
|
||||||
|
}).catch(() => {
|
||||||
|
ElMessage.info('操作取消')
|
||||||
|
this.workFormEntity.goodsNum = null
|
||||||
|
this.$refs.goodsNum.focus()
|
||||||
|
return
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
const sameIndex = this.tempTasks.findIndex(task => task.goodsId == this.workFormEntity.goodsId)
|
||||||
|
if (sameIndex != -1) {// 绑定过相同物料
|
||||||
|
var sameGoods = this.tempTasks[sameIndex]
|
||||||
|
sameGoods.goodsNum = sameGoods.goodsNum + this.workFormEntity.goodsNum
|
||||||
|
} else {
|
||||||
|
this.tempTasks.push({
|
||||||
|
vehicleId: this.workFormEntity.vehicleId,
|
||||||
|
goodsId: this.workFormEntity.goodsId,
|
||||||
|
goodsNum: this.workFormEntity.goodsNum
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.currentVehicleId = this.workFormEntity.vehicleId
|
||||||
|
this.workFormEntity.goodsId = ''
|
||||||
|
this.workFormEntity.goodsNum = null
|
||||||
|
this.$refs.goodsId.focus()
|
||||||
|
return
|
||||||
}
|
}
|
||||||
this.currentVehicleId = this.workFormEntity.vehicleId
|
|
||||||
this.workFormEntity.goodsId = ''
|
|
||||||
this.workFormEntity.goodsNum = null
|
|
||||||
this.$refs.goodsId.focus()
|
|
||||||
} else {
|
} else {
|
||||||
if (this.workFormEntity.vehicleId == '') {
|
if (this.workFormEntity.vehicleId == '') {
|
||||||
this.$refs.vehicleId.focus()
|
this.$refs.vehicleId.focus()
|
||||||
|
|
@ -200,7 +250,7 @@ export default {
|
||||||
sendGoodsInTask(request).then(res => {
|
sendGoodsInTask(request).then(res => {
|
||||||
const response = res.data
|
const response = res.data
|
||||||
if (response.code == 0) {
|
if (response.code == 0) {
|
||||||
successBox('入库确认成功。')
|
ElMessage.success('入库确认成功。')
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
this.currentVehicleId = ''
|
this.currentVehicleId = ''
|
||||||
this.tempTasks = []
|
this.tempTasks = []
|
||||||
|
|
|
||||||
|
|
@ -126,7 +126,7 @@ import { sendGoodsInTask, callEmptyVehicle } from '@/api/task'
|
||||||
import { queryPartInfoByPartNo } from '@/api/goods'
|
import { queryPartInfoByPartNo } from '@/api/goods'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import UploadExcelPart from '@/excel/UploadExcelPart.vue'
|
import UploadExcelPart from '@/excel/UploadExcelPart.vue'
|
||||||
const taskInRequestRef = ref()
|
const taskInRequestRef = ref()
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,7 @@ import { sendGoodsOutTask, getTasksByPage, getTasks, finishPickingAndBack } from
|
||||||
import { taskStatusFormatter, dueFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { taskStatusFormatter, dueFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
const taskOutRequestRef = ref()
|
const taskOutRequestRef = ref()
|
||||||
const pickConfirmRef = ref()
|
const pickConfirmRef = ref()
|
||||||
|
|
|
||||||
|
|
@ -88,7 +88,7 @@ import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ import { getTaskRecords } from '@/api/record.js'
|
||||||
import { dateFormatter, taskStatusFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, taskStatusFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { downloadInRecordExcel } from '@/api/excel.js'
|
import { downloadInRecordExcel } from '@/api/excel.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -113,7 +113,8 @@ export default {
|
||||||
exportExcel() {
|
exportExcel() {
|
||||||
const params = {
|
const params = {
|
||||||
vehicleId: this.vehicleIdQuery.trim(),
|
vehicleId: this.vehicleIdQuery.trim(),
|
||||||
goodsId: this.goodsIdQuery.trim()
|
goodsId: this.goodsIdQuery.trim(),
|
||||||
|
userName: store.getters.getUserName
|
||||||
}
|
}
|
||||||
downloadInRecordExcel(params).then(res => {
|
downloadInRecordExcel(params).then(res => {
|
||||||
const link = document.createElement('a');//创建a标签
|
const link = document.createElement('a');//创建a标签
|
||||||
|
|
|
||||||
|
|
@ -88,7 +88,8 @@
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getWorkByStandAndGoods, confirmFinishWork, queryFinishByStandAndGoods } from '@/api/task'
|
import { getWorkByStandAndGoods, confirmFinishWork, queryFinishByStandAndGoods } from '@/api/task'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import UploadExcelInventoryList from '@/excel/UploadExcelInventoryList.vue'
|
import UploadExcelInventoryList from '@/excel/UploadExcelInventoryList.vue'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -176,7 +177,7 @@ export default {
|
||||||
this.workFormEntity.tip = response.returnData.tip
|
this.workFormEntity.tip = response.returnData.tip
|
||||||
}
|
}
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
successBox(response.message)
|
ElMessage.success(response.message)
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
console.log(err)
|
console.log(err)
|
||||||
|
|
@ -217,7 +218,7 @@ export default {
|
||||||
this.workFormEntity.tip = response.returnData.tip
|
this.workFormEntity.tip = response.returnData.tip
|
||||||
}
|
}
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
successBox(response.message)
|
ElMessage.success(response.message)
|
||||||
} else {
|
} else {
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -158,8 +158,8 @@
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getOrders, deleteOrders, updateOrders } from '@/api/kateWork.js'
|
import { getOrders, deleteOrders, updateOrders } from '@/api/kateWork.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { ElMessageBox } from 'element-plus'
|
import { ElMessageBox, ElMessage } from 'element-plus'
|
||||||
import { errorBox, infoBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import UploadExcelOrders from '@/excel/UploadExcelOrders.vue'
|
import UploadExcelOrders from '@/excel/UploadExcelOrders.vue'
|
||||||
|
|
@ -264,7 +264,7 @@ export default {
|
||||||
}
|
}
|
||||||
deleteOrders(params).then(res => {
|
deleteOrders(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
successBox('删除工单信息成功。')
|
ElMessage.success('删除工单信息成功。')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -274,7 +274,7 @@ export default {
|
||||||
errorBox('删除工单信息成功')
|
errorBox('删除工单信息成功')
|
||||||
})
|
})
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
infoBox('操作取消')
|
ElMessage.info('操作取消')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
submitOrdersInfo(formData) {
|
submitOrdersInfo(formData) {
|
||||||
|
|
@ -292,7 +292,7 @@ export default {
|
||||||
updateOrders(params).then(res => {
|
updateOrders(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新工单成功。')
|
ElMessage.success('更新工单成功。')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,7 @@ import store from '@/store'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { getLocations, updateLocation } from '@/api/location.js'
|
import { getLocations, updateLocation } from '@/api/location.js'
|
||||||
import { ElMessage, ElLoading } from 'element-plus'
|
import { ElMessage, ElLoading } from 'element-plus'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { reactive } from 'vue'
|
import { reactive } from 'vue'
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,17 @@
|
||||||
<template>
|
<template>
|
||||||
<div style="margin-bottom: 10px">
|
<div style="margin-bottom: 10px">
|
||||||
<el-config-provider :locale="zhCn">
|
<el-config-provider :locale="zhCn">
|
||||||
<el-row>
|
<div style="display: flex;justify-content: space-between;">
|
||||||
<el-input v-model="locationIdQuery" style="width: 256px; margin-right: 10px;" placeholder="库位"
|
<el-row>
|
||||||
:suffix-icon="Search" />
|
<el-input v-model="locationIdQuery" style="width: 256px; margin-right: 10px;" placeholder="库位"
|
||||||
<el-button type="primary" @click="search()">搜索</el-button>
|
:suffix-icon="Search" />
|
||||||
<el-button type="warning" @click="reset()">重置</el-button>
|
<el-button type="primary" @click="search()">搜索</el-button>
|
||||||
<!-- <el-button type="success" @click="exportExcel()">导出信息</el-button> -->
|
<el-button type="warning" @click="reset()">重置</el-button>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-button style="background-color: #32CD32; color: #000;" @click="exportExcel()">导出</el-button>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
<br />
|
<br />
|
||||||
<el-table :data="locations" stripe border v-loading="loading" class="table-class" max-height="550px"
|
<el-table :data="locations" stripe border v-loading="loading" class="table-class" max-height="550px"
|
||||||
highlight-current-row @row-click="getCurrentRow" :header-cell-style="{ 'text-align': 'center' }"
|
highlight-current-row @row-click="getCurrentRow" :header-cell-style="{ 'text-align': 'center' }"
|
||||||
|
|
@ -129,12 +133,14 @@
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
|
import { downloadLocationsExcel } from '@/api/excel.js'
|
||||||
import { getLocations, updateLocation } from '@/api/location.js'
|
import { getLocations, updateLocation } from '@/api/location.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { ElMessage } from 'element-plus'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { locationStatusFormatter, locationFormatter } from '@/utils/formatter.js'
|
import { locationStatusFormatter, locationFormatter } from '@/utils/formatter.js'
|
||||||
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -259,7 +265,7 @@ export default {
|
||||||
updateLocation(request).then(res => {
|
updateLocation(request).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新库位信息成功')
|
ElMessage.success('更新库位信息成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -273,45 +279,37 @@ export default {
|
||||||
this.locationId = row.locationId
|
this.locationId = row.locationId
|
||||||
// this.$emit('update:selVehicle', row)
|
// this.$emit('update:selVehicle', row)
|
||||||
},
|
},
|
||||||
// exportExcel() {
|
exportExcel() {
|
||||||
// const request = {
|
const params = {
|
||||||
// vehicleId: formData.vehicleId,
|
locationId: this.locationIdQuery.trim(),
|
||||||
// currentLocation: formData.currentLocation,
|
userName: store.getters.getUserName
|
||||||
// isEmpty: formData.isEmpty,
|
}
|
||||||
// vehicleStatus: formData.vehicleStatus
|
downloadLocationsExcel(params).then(res => {
|
||||||
// }
|
const link = document.createElement('a');//创建a标签
|
||||||
// downloadVehicleExcel(request).then(res => {
|
try {
|
||||||
// const link = document.createElement('a');//创建a标签
|
// let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
||||||
// try {
|
let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
||||||
// // let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
// let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
||||||
// let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
let _fileName = "库位报表" + dateFormatter(new Date) + ".xlsx"
|
||||||
// // let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
link.style.display = 'none'//隐藏
|
||||||
// let _fileName = "导出料箱信息" + dateFormatter(new Date) + ".xlsx"
|
|
||||||
// link.style.display = 'none'//隐藏
|
|
||||||
|
|
||||||
// // 兼容不同浏览器的URL对象
|
// 兼容不同浏览器的URL对象
|
||||||
// const url = window.URL || window.webkitURL || window.moxURL
|
const url = window.URL || window.webkitURL || window.moxURL
|
||||||
// link.href = url.createObjectURL(blob)
|
link.href = url.createObjectURL(blob)
|
||||||
// link.setAttribute('download', _fileName.substring(_fileName.lastIndexOf('_') + 1))
|
link.setAttribute('download', _fileName.substring(_fileName.lastIndexOf('_') + 1))
|
||||||
// document.body.appendChild(link)
|
document.body.appendChild(link)
|
||||||
// link.click()
|
link.click()
|
||||||
// document.body.removeChild(link)
|
document.body.removeChild(link)
|
||||||
// url.revokeObjectURL(link.href)//移除url对象
|
url.revokeObjectURL(link.href)//移除url对象
|
||||||
// } catch (e) {
|
} catch (e) {
|
||||||
// ElMessage({
|
console.log(e)
|
||||||
// message: '下载文件失败:: ' + e,
|
errorBox('下载文件失败')
|
||||||
// type: 'error',
|
}
|
||||||
// showClose: true
|
}).catch(err => {
|
||||||
// })
|
console.log(err)
|
||||||
// }
|
errorBox('导出失败')
|
||||||
// }).catch(err => {
|
})
|
||||||
// ElMessage({
|
},
|
||||||
// message: '导出失败:: ' + err,
|
|
||||||
// type: 'error',
|
|
||||||
// showClose: true
|
|
||||||
// })
|
|
||||||
// })
|
|
||||||
// },
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@
|
||||||
import { getTaskRecords } from '@/api/record.js'
|
import { getTaskRecords } from '@/api/record.js'
|
||||||
import { dateFormatter, taskStatusFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, taskStatusFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { downloadOutRecordExcel } from '@/api/excel.js'
|
import { downloadOutRecordExcel } from '@/api/excel.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
|
|
@ -113,7 +113,8 @@ export default {
|
||||||
exportExcel() {
|
exportExcel() {
|
||||||
const params = {
|
const params = {
|
||||||
vehicleId: this.vehicleIdQuery.trim(),
|
vehicleId: this.vehicleIdQuery.trim(),
|
||||||
goodsId: this.goodsIdQuery.trim()
|
goodsId: this.goodsIdQuery.trim(),
|
||||||
|
userName: store.getters.userName
|
||||||
}
|
}
|
||||||
downloadOutRecordExcel(params).then(res => {
|
downloadOutRecordExcel(params).then(res => {
|
||||||
const link = document.createElement('a');//创建a标签
|
const link = document.createElement('a');//创建a标签
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
|
|
|
||||||
|
|
@ -85,7 +85,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
|
|
@ -201,7 +202,7 @@ export default {
|
||||||
updatePickTaskInfo(params).then(res => {
|
updatePickTaskInfo(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新拣选任务成功。')
|
ElMessage.success('更新拣选任务成功。')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
|
||||||
|
|
@ -37,12 +37,12 @@
|
||||||
</div>
|
</div>
|
||||||
<div style="display: flex; flex-direction: column;">
|
<div style="display: flex; flex-direction: column;">
|
||||||
<div class="display-title-div">
|
<div class="display-title-div">
|
||||||
<span class="display-title-text">工单顺序</span>
|
<span class="display-title-text">数量</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: flex; margin-top: 20px;">
|
<div style="display: flex; margin-top: 20px;">
|
||||||
<div class="display-form-div-left">
|
<div class="display-form-div-left">
|
||||||
<el-input-number v-model.number="workFormEntity.orderOfOrders"
|
<el-input-number v-model.number="workFormEntity.orderOfOrders"
|
||||||
controls-position="right" :min="1" :max="10" />
|
controls-position="right" :min="1" :max="10" disabled />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -66,7 +66,8 @@
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { requestSortBox } from '@/api/task'
|
import { requestSortBox } from '@/api/task'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref } from 'vue'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
@ -107,20 +108,20 @@ export default {
|
||||||
errorBox('请输入大盒子号')
|
errorBox('请输入大盒子号')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.workFormEntity.orderOfOrders == null) {
|
// if (this.workFormEntity.orderOfOrders == null) {
|
||||||
errorBox('请输入工单顺序')
|
// errorBox('请输入工单顺序')
|
||||||
return
|
// return
|
||||||
}
|
// }
|
||||||
const request = {
|
const request = {
|
||||||
standId: this.standId,
|
standId: this.standId,
|
||||||
bigBoxNo: this.workFormEntity.bigBoxNo,
|
bigBoxNo: this.workFormEntity.bigBoxNo,
|
||||||
orderOfOrders: this.workFormEntity.orderOfOrders,
|
// orderOfOrders: this.workFormEntity.orderOfOrders,
|
||||||
userName: store.getters.getUserName
|
userName: store.getters.getUserName
|
||||||
}
|
}
|
||||||
requestSortBox(request).then(res => {
|
requestSortBox(request).then(res => {
|
||||||
const response = res.data
|
const response = res.data
|
||||||
if (response.code == 0) {
|
if (response.code == 0) {
|
||||||
successBox('请根据灯光拣选盒子。')
|
ElMessage.success('请根据灯光拣选盒子。')
|
||||||
this.resetForms()
|
this.resetForms()
|
||||||
} else {
|
} else {
|
||||||
errorBox(response.message)
|
errorBox(response.message)
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@
|
||||||
<el-table-column prop="configId" label="id" fixed="left" min-width="120px" show-overflow-tooltip />
|
<el-table-column prop="configId" label="id" fixed="left" min-width="120px" show-overflow-tooltip />
|
||||||
<el-table-column prop="workStation" label="工站" fixed="left" min-width="120px" />
|
<el-table-column prop="workStation" label="工站" fixed="left" min-width="120px" />
|
||||||
<el-table-column prop="smallBox" label="小盒子" fixed="left" min-width="120px" />
|
<el-table-column prop="smallBox" label="小盒子" fixed="left" min-width="120px" />
|
||||||
|
<el-table-column prop="orderQuantity" label="工单数/大盒子" min-width="120px" />
|
||||||
<el-table-column prop="model" label="机型" min-width="120px" />
|
<el-table-column prop="model" label="机型" min-width="120px" />
|
||||||
<el-table-column prop="workCenter" label="工位" min-width="120px" />
|
<el-table-column prop="workCenter" label="工位" min-width="120px" />
|
||||||
<el-table-column prop="bigBox" label="工位大盒子" min-width="120px" />
|
<el-table-column prop="bigBox" label="工位大盒子" min-width="120px" />
|
||||||
|
|
@ -102,6 +103,12 @@
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="16">
|
<el-row :gutter="16">
|
||||||
<el-col :span="12" :offset="0">
|
<el-col :span="12" :offset="0">
|
||||||
|
<el-form-item label="工单数/大盒子" prop="orderQuantity">
|
||||||
|
<el-input-number v-model.number="configFormEntity.orderQuantity"
|
||||||
|
controls-position="right" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
<el-form-item label="开工时间调整" prop="startDateAdjust">
|
<el-form-item label="开工时间调整" prop="startDateAdjust">
|
||||||
<el-input-number v-model.number="configFormEntity.startDateAdjust"
|
<el-input-number v-model.number="configFormEntity.startDateAdjust"
|
||||||
controls-position="right" clearable />
|
controls-position="right" clearable />
|
||||||
|
|
@ -153,8 +160,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getStationConfigs, deleteStationConfigs, updateStationConfigs } from '@/api/kateWork.js'
|
import { getStationConfigs, deleteStationConfigs, updateStationConfigs } from '@/api/kateWork.js'
|
||||||
import { ElMessageBox } from 'element-plus'
|
import { ElMessageBox, ElMessage } from 'element-plus'
|
||||||
import { errorBox, successBox, infoBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import UploadExcelStationConfig from '@/excel/UploadExcelStationConfig.vue'
|
import UploadExcelStationConfig from '@/excel/UploadExcelStationConfig.vue'
|
||||||
|
|
@ -232,6 +239,7 @@ export default {
|
||||||
configId: row.configId,
|
configId: row.configId,
|
||||||
workStation: row.workStation,
|
workStation: row.workStation,
|
||||||
smallBox: row.smallBox,
|
smallBox: row.smallBox,
|
||||||
|
orderQuantity: row.orderQuantity,
|
||||||
model: row.model,
|
model: row.model,
|
||||||
workCenter: row.workCenter,
|
workCenter: row.workCenter,
|
||||||
bigBox: row.bigBox,
|
bigBox: row.bigBox,
|
||||||
|
|
@ -260,7 +268,7 @@ export default {
|
||||||
}
|
}
|
||||||
deleteStationConfigs(params).then(res => {
|
deleteStationConfigs(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
successBox('工站配置信息删除成功')
|
ElMessage.success('工站配置信息删除成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -270,7 +278,7 @@ export default {
|
||||||
errorBox('删除工站配置信息失败')
|
errorBox('删除工站配置信息失败')
|
||||||
})
|
})
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
infoBox('操作取消')
|
ElMessage.info('操作取消')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
submitConfigInfo(formData) {
|
submitConfigInfo(formData) {
|
||||||
|
|
@ -279,6 +287,7 @@ export default {
|
||||||
workStation: formData.workStation,
|
workStation: formData.workStation,
|
||||||
smallBox: formData.smallBox,
|
smallBox: formData.smallBox,
|
||||||
model: formData.model,
|
model: formData.model,
|
||||||
|
orderQuantity: formData.orderQuantity,
|
||||||
workCenter: formData.workCenter,
|
workCenter: formData.workCenter,
|
||||||
bigBox: formData.bigBox,
|
bigBox: formData.bigBox,
|
||||||
vehicle: formData.vehicle,
|
vehicle: formData.vehicle,
|
||||||
|
|
@ -291,7 +300,7 @@ export default {
|
||||||
updateStationConfigs(params).then(res => {
|
updateStationConfigs(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('工站配置信息更新成功')
|
ElMessage.success('工站配置信息更新成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,17 @@
|
||||||
<el-config-provider :locale="zhCn">
|
<el-config-provider :locale="zhCn">
|
||||||
<div style="display: flex;justify-content: space-between;">
|
<div style="display: flex;justify-content: space-between;">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-input v-model="goodsIdQuery" style="width: 196px; margin-right: 10px;" placeholder="料号"
|
<el-autocomplete v-model="goodsIdQuery" :fetch-suggestions="filterGoodsId"
|
||||||
:suffix-icon="Search" />
|
popper-class="my-autocomplete" placeholder="料号" @select="handleSelectGoodsId"
|
||||||
|
:suffix-icon="Search" style="width: 196px; margin-right: 10px;">
|
||||||
|
<template #default="{ item }">
|
||||||
|
<div>
|
||||||
|
料号:<span class="goods_id">{{ item.goodsId }}</span>
|
||||||
|
;
|
||||||
|
名称:<span class="goods_name">{{ item.goodsName }}</span>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-autocomplete>
|
||||||
<el-input v-model="vehicleIdQuery" style="width: 196px; margin-right: 10px;" placeholder="箱号"
|
<el-input v-model="vehicleIdQuery" style="width: 196px; margin-right: 10px;" placeholder="箱号"
|
||||||
:suffix-icon="Search" />
|
:suffix-icon="Search" />
|
||||||
<el-input v-model="locationIdQuery" style="width: 196px; margin-right: 10px;" placeholder="库位"
|
<el-input v-model="locationIdQuery" style="width: 196px; margin-right: 10px;" placeholder="库位"
|
||||||
|
|
@ -84,8 +93,8 @@
|
||||||
<el-row :gutter="16">
|
<el-row :gutter="16">
|
||||||
<el-col :span="12" :offset="0">
|
<el-col :span="12" :offset="0">
|
||||||
<el-form-item label="入库数量" prop="totalNum">
|
<el-form-item label="入库数量" prop="totalNum">
|
||||||
<el-input-number v-model.number="stockFormEntity.totalNum"
|
<el-input-number v-model.number="stockFormEntity.totalNum" controls-position="right"
|
||||||
controls-position="right" :min="0" disabled />
|
:min="0" disabled />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
|
@ -170,12 +179,14 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getAllStocks, updateStockInfo } from '@/api/stock.js'
|
import { getAllStocks, updateStockInfo } from '@/api/stock.js'
|
||||||
|
import { getGoodsInfoByGoodsId } from '@/api/goods.js'
|
||||||
import { downloadStockExcel } from '@/api/excel.js'
|
import { downloadStockExcel } from '@/api/excel.js'
|
||||||
import { dateFormatter, locationFormatter, timeFormatter, yesOrNoFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, locationFormatter, timeFormatter, yesOrNoFormatter } from '@/utils/formatter.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
// import FileSaver from 'file-saver';
|
// import FileSaver from 'file-saver';
|
||||||
// import * as XLSX from 'xlsx';
|
// import * as XLSX from 'xlsx';
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -252,12 +263,47 @@ export default {
|
||||||
label: '库存锁定'
|
label: '库存锁定'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
goodsList: [],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.search()
|
this.search()
|
||||||
|
this.loadAllGoodsInfo()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
loadAllGoodsInfo() {
|
||||||
|
const request = {
|
||||||
|
userName: store.getters.getUserName
|
||||||
|
}
|
||||||
|
getGoodsInfoByGoodsId(request).then(res => {
|
||||||
|
const tableResponse = res.data
|
||||||
|
if (tableResponse.code == 0) {
|
||||||
|
this.goodsList = tableResponse.returnData
|
||||||
|
} else {
|
||||||
|
errorBox(tableResponse.message)
|
||||||
|
}
|
||||||
|
}).catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
errorBox('查询物料信息异常。')
|
||||||
|
})
|
||||||
|
},
|
||||||
|
filterGoodsId(queryString, cb) {
|
||||||
|
const results = queryString
|
||||||
|
? this.goodsList.filter(this.createFilter(queryString))
|
||||||
|
: this.goodsList
|
||||||
|
// call callback function to return suggestion objects
|
||||||
|
cb(results)
|
||||||
|
},
|
||||||
|
createFilter(queryString) {
|
||||||
|
return (restaurant) => {
|
||||||
|
return (
|
||||||
|
restaurant.goodsId.toLowerCase().indexOf(queryString.toLowerCase()) != -1
|
||||||
|
)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handleSelectGoodsId(item) {
|
||||||
|
this.goodsIdQuery = item.goodsId
|
||||||
|
},
|
||||||
locationFormat: (row, column, cellValue, index) => {
|
locationFormat: (row, column, cellValue, index) => {
|
||||||
return locationFormatter(cellValue)
|
return locationFormatter(cellValue)
|
||||||
},
|
},
|
||||||
|
|
@ -350,6 +396,7 @@ export default {
|
||||||
goodsId: this.goodsIdQuery.trim(),
|
goodsId: this.goodsIdQuery.trim(),
|
||||||
vehicleId: this.vehicleIdQuery.trim(),
|
vehicleId: this.vehicleIdQuery.trim(),
|
||||||
locationId: this.locationIdQuery.trim(),
|
locationId: this.locationIdQuery.trim(),
|
||||||
|
userName: store.getters.getUserName
|
||||||
}
|
}
|
||||||
downloadStockExcel(params).then(res => {
|
downloadStockExcel(params).then(res => {
|
||||||
const link = document.createElement('a');//创建a标签
|
const link = document.createElement('a');//创建a标签
|
||||||
|
|
@ -374,7 +421,7 @@ export default {
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
console.log(err)
|
console.log(err)
|
||||||
errorBox('导出失败')
|
errorBox('导出失败')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
editCurrentRowStock(row) {
|
editCurrentRowStock(row) {
|
||||||
|
|
@ -411,7 +458,7 @@ export default {
|
||||||
updateStockInfo(request).then(res => {
|
updateStockInfo(request).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新库存成功')
|
ElMessage.success('更新库存成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -447,4 +494,32 @@ export default {
|
||||||
.el-row .el-form-item .el-input-number {
|
.el-row .el-form-item .el-input-number {
|
||||||
width: 100% !important;
|
width: 100% !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.my-autocomplete li {
|
||||||
|
width: 196px;
|
||||||
|
line-height: normal;
|
||||||
|
padding: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.my-autocomplete li .name {
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.my-autocomplete li .addr {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #b4b4b4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.my-autocomplete li .highlighted .addr {
|
||||||
|
color: #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.my-autocomplete li .goods_id {
|
||||||
|
color: brown;
|
||||||
|
}
|
||||||
|
|
||||||
|
.my-autocomplete li .goods_name {
|
||||||
|
color: cornflowerblue;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
@ -131,7 +131,8 @@
|
||||||
import { getTasksByPage, updateTaskInfo } from '@/api/task.js'
|
import { getTasksByPage, updateTaskInfo } from '@/api/task.js'
|
||||||
import { dateFormatter, taskStatusFormatter, timeFormatter, dueFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, taskStatusFormatter, timeFormatter, dueFormatter } from '@/utils/formatter.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -220,7 +221,7 @@ export default {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: 999,
|
value: 999,
|
||||||
label: '任务完成'
|
label: '任务异常'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
availableLocationOptions: []
|
availableLocationOptions: []
|
||||||
|
|
@ -332,7 +333,7 @@ export default {
|
||||||
updateTaskInfo(request).then(res => {
|
updateTaskInfo(request).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('修改任务成功')
|
ElMessage.success('修改任务成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,17 @@
|
||||||
<template>
|
<template>
|
||||||
<div style="margin-bottom: 10px">
|
<div style="margin-bottom: 10px">
|
||||||
<el-config-provider :locale="zhCn">
|
<el-config-provider :locale="zhCn">
|
||||||
<el-row>
|
<div style="display: flex;justify-content: space-between;">
|
||||||
<el-input v-model="queryKey" style="width: 256px; margin-right: 10px;" placeholder="箱号"
|
<el-row>
|
||||||
:suffix-icon="Search" />
|
<el-input v-model="queryKey" style="width: 256px; margin-right: 10px;" placeholder="箱号"
|
||||||
<!-- <div v-if="selVehicle == null"><uploadVehicles></uploadVehicles></div> -->
|
:suffix-icon="Search" />
|
||||||
<!-- <el-input v-model="queryKey" style="width: 196px; margin-left: auto; margin-right: 10px;" placeholder="箱号" /> -->
|
<el-button type="primary" @click="search()">搜索</el-button>
|
||||||
<el-button type="primary" @click="search()">搜索</el-button>
|
<el-button type="warning" @click="reset()">重置</el-button>
|
||||||
<el-button type="warning" @click="reset()">重置</el-button>
|
</el-row>
|
||||||
<el-button type="success" @click="exportExcel()" v-if="selVehicle == null">导出信息</el-button>
|
<el-row v-if="selVehicle == null">
|
||||||
</el-row>
|
<el-button style="background-color: #32CD32; color: #000;" @click="exportExcel()">导出</el-button>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
<br />
|
<br />
|
||||||
<el-table :data="vehicles" stripe border v-loading="loading" class="table-class" max-height="550px"
|
<el-table :data="vehicles" stripe border v-loading="loading" class="table-class" max-height="550px"
|
||||||
highlight-current-row @row-click="getCurrentRow" :header-cell-style="{ 'text-align': 'center' }"
|
highlight-current-row @row-click="getCurrentRow" :header-cell-style="{ 'text-align': 'center' }"
|
||||||
|
|
@ -20,7 +22,8 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="vehicleId" label="托盘号" fixed="left" min-width="120px" />
|
<el-table-column prop="vehicleId" label="托盘号" fixed="left" min-width="120px" />
|
||||||
<el-table-column prop="currentLocation" label="库位" fixed="left" :formatter="locationFormat" min-width="120px" show-overflow-tooltip />
|
<el-table-column prop="currentLocation" label="库位" fixed="left" :formatter="locationFormat"
|
||||||
|
min-width="120px" show-overflow-tooltip />
|
||||||
<el-table-column prop="vehicleStatus" label="状态" :formatter="vehicleStatusFormat" min-width="120px" />
|
<el-table-column prop="vehicleStatus" label="状态" :formatter="vehicleStatusFormat" min-width="120px" />
|
||||||
<el-table-column prop="isEmpty" label="空托" :formatter="isEmptyFormat" min-width="120px" />
|
<el-table-column prop="isEmpty" label="空托" :formatter="isEmptyFormat" min-width="120px" />
|
||||||
<el-table-column prop="lastInTime" label="最近入库时间" :formatter="timeFormat" min-width="120px" />
|
<el-table-column prop="lastInTime" label="最近入库时间" :formatter="timeFormat" min-width="120px" />
|
||||||
|
|
@ -36,8 +39,8 @@
|
||||||
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="search"
|
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="search"
|
||||||
@current-change="search" />
|
@current-change="search" />
|
||||||
<el-dialog v-model="dialogVisible" title="料箱信息" width="40%" draggable :show-close="false">
|
<el-dialog v-model="dialogVisible" title="料箱信息" width="40%" draggable :show-close="false">
|
||||||
<el-form ref="vehicleFormRef" :model="vehicleFormEntity" :label-position="labelPosition" label-width="100px"
|
<el-form ref="vehicleFormRef" :model="vehicleFormEntity" :label-position="labelPosition"
|
||||||
style="max-width: 100%" :rules="rules" status-icon>
|
label-width="100px" style="max-width: 100%" :rules="rules" status-icon>
|
||||||
<el-row :gutter="16">
|
<el-row :gutter="16">
|
||||||
<el-col :span="12" :offset="0">
|
<el-col :span="12" :offset="0">
|
||||||
<el-form-item label="箱号" prop="vehicleId">
|
<el-form-item label="箱号" prop="vehicleId">
|
||||||
|
|
@ -81,7 +84,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import { getAllVehicles, updateVehicleInfo } from '@/api/vehicle'
|
import { getAllVehicles, updateVehicleInfo } from '@/api/vehicle'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { vehicleStatusFormatter, locationFormatter, dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { vehicleStatusFormatter, locationFormatter, dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
|
|
@ -212,7 +216,7 @@ export default {
|
||||||
updateVehicleInfo(request).then(res => {
|
updateVehicleInfo(request).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新料箱信息成功')
|
ElMessage.success('更新料箱信息成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
@ -240,7 +244,7 @@ export default {
|
||||||
// let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
// let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
|
||||||
let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
|
||||||
// let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
// let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
|
||||||
let _fileName = "导出料箱信息" + dateFormatter(new Date) + ".xlsx"
|
let _fileName = "料箱报表" + dateFormatter(new Date) + ".xlsx"
|
||||||
link.style.display = 'none'//隐藏
|
link.style.display = 'none'//隐藏
|
||||||
|
|
||||||
// 兼容不同浏览器的URL对象
|
// 兼容不同浏览器的URL对象
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,8 @@ import { configTypeFormatter } from '@/utils/formatter.js'
|
||||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { ElMessage } from 'element-plus'
|
||||||
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
|
|
@ -213,7 +214,7 @@ export default {
|
||||||
updateConfig(request).then(res => {
|
updateConfig(request).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新系统配置成功')
|
ElMessage.success('更新系统配置成功')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
|
||||||
|
|
@ -157,7 +157,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getWorkFlows, updateWorkFlows } from '@/api/kateWork.js'
|
import { getWorkFlows, updateWorkFlows } from '@/api/kateWork.js'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
|
import { ElMessage } from 'element-plus'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
|
|
@ -309,7 +310,7 @@ export default {
|
||||||
updateWorkFlows(params).then(res => {
|
updateWorkFlows(params).then(res => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
successBox('更新工作流信息成功。')
|
ElMessage.success('更新工作流信息成功。')
|
||||||
this.search()
|
this.search()
|
||||||
} else {
|
} else {
|
||||||
errorBox(res.data.message)
|
errorBox(res.data.message)
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
import { getPickTasksByPage, updatePickTaskInfo } from '@/api/taskMonitor.js'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
import { errorBox, successBox } from '@/utils/myMessageBox.js'
|
import { errorBox } from '@/utils/myMessageBox.js'
|
||||||
import { ref, reactive } from 'vue'
|
import { ref, reactive } from 'vue'
|
||||||
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
import { dateFormatter, timeFormatter } from '@/utils/formatter.js'
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { ElMessageBox } from 'element-plus'
|
import { ElMessageBox } from 'element-plus'
|
||||||
|
|
||||||
function errorBox(msg, myCallBack) {
|
function errorBox(msg) {
|
||||||
ElMessageBox.alert(msg, '错误', {
|
ElMessageBox.alert(msg, '错误', {
|
||||||
autofocus: true,
|
autofocus: true,
|
||||||
confirmButtonText: '确认',
|
confirmButtonText: '确认',
|
||||||
|
|
@ -9,12 +9,12 @@ function errorBox(msg, myCallBack) {
|
||||||
closeOnPressEscape: true,
|
closeOnPressEscape: true,
|
||||||
showClose: false,
|
showClose: false,
|
||||||
callback: (action) => {
|
callback: (action) => {
|
||||||
myCallBack()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function successBox(msg, myCallBack) {
|
function successBox(msg) {
|
||||||
ElMessageBox.alert(msg, '成功', {
|
ElMessageBox.alert(msg, '成功', {
|
||||||
autofocus: true,
|
autofocus: true,
|
||||||
confirmButtonText: '确认',
|
confirmButtonText: '确认',
|
||||||
|
|
@ -23,12 +23,12 @@ function successBox(msg, myCallBack) {
|
||||||
closeOnPressEscape: true,
|
closeOnPressEscape: true,
|
||||||
showClose: false,
|
showClose: false,
|
||||||
callback: (action) => {
|
callback: (action) => {
|
||||||
myCallBack()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function infoBox(msg, myCallBack) {
|
function infoBox(msg) {
|
||||||
ElMessageBox.alert(msg, '提示', {
|
ElMessageBox.alert(msg, '提示', {
|
||||||
autofocus: true,
|
autofocus: true,
|
||||||
confirmButtonText: '确认',
|
confirmButtonText: '确认',
|
||||||
|
|
@ -37,12 +37,12 @@ function infoBox(msg, myCallBack) {
|
||||||
closeOnPressEscape: true,
|
closeOnPressEscape: true,
|
||||||
showClose: false,
|
showClose: false,
|
||||||
callback: (action) => {
|
callback: (action) => {
|
||||||
myCallBack()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function warningBox(msg, myCallBack) {
|
function warningBox(msg) {
|
||||||
ElMessageBox.alert(msg, '警告', {
|
ElMessageBox.alert(msg, '警告', {
|
||||||
autofocus: true,
|
autofocus: true,
|
||||||
confirmButtonText: '确认',
|
confirmButtonText: '确认',
|
||||||
|
|
@ -51,7 +51,7 @@ function warningBox(msg, myCallBack) {
|
||||||
closeOnPressEscape: true,
|
closeOnPressEscape: true,
|
||||||
showClose: false,
|
showClose: false,
|
||||||
callback: (action) => {
|
callback: (action) => {
|
||||||
myCallBack()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -107,7 +107,7 @@ onMounted(() => {
|
||||||
client_id: '609f8296-74ab-441e-904f-3a8508030511',
|
client_id: '609f8296-74ab-441e-904f-3a8508030511',
|
||||||
// scope: 'openid',
|
// scope: 'openid',
|
||||||
code: router.currentRoute.value.query.code,
|
code: router.currentRoute.value.query.code,
|
||||||
redirect_uri: 'https://csclasrs.ecorp.cat.com/wms',
|
redirect_uri: 'https://csclasrs.ecorp.cat.com',
|
||||||
grant_type: 'authorization_code',
|
grant_type: 'authorization_code',
|
||||||
// client_secret: 'o6h8Q~iLegnIBG.GzJngXk.03FYdBJzIoCtTtcwj',
|
// client_secret: 'o6h8Q~iLegnIBG.GzJngXk.03FYdBJzIoCtTtcwj',
|
||||||
// response_type: 'id_token',
|
// response_type: 'id_token',
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user