Merge remote-tracking branch 'origin/master'

# Conflicts:
#	ruoyi-ui/src/lang/zh.js
This commit is contained in:
lsymicc
2025-06-10 17:35:03 +08:00
14 changed files with 3319 additions and 46 deletions

View File

@@ -47,7 +47,7 @@ export default {
}
// 判断是否为首页
if (!this.isDashboard(matched[0])) {
matched = [{ path: "/index", meta: { title: "首页" } }].concat(matched)
matched = [{ path: "/index", meta: { title: '首页' } }].concat(matched)
}
this.levelList = matched.filter(item => item.meta && item.meta.title && item.meta.breadcrumb !== false)
},

View File

@@ -10,6 +10,9 @@
<el-dropdown-item :disabled="language==='en_US'" command="en_US">
English
</el-dropdown-item>
<el-dropdown-item :disabled="language==='hu'" command="hu">
Magyarország
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template>

View File

@@ -626,6 +626,23 @@ export default {
},
viewsMain: {
title: 'homePage',
unfinishedInboundTask: 'Unfinished Inbound Task Overview',
taskKey: 'Task Key',
unfinishedInboundTaskName: 'Unfinished Inbound Task',
totalUnfinishedCount: 'Total Unfinished Count',
todayUnfinishedCount: 'Today Unfinished Count',
finishedInboundTask: 'Finished Inbound Task Overview',
finishedInboundTaskName: 'Finished Inbound Task',
totalFinishedCount: 'Total Finished Count',
todayFinishedCount: 'Today Finished Count',
unfinishedOutboundTask: 'Unfinished Outbound Task Overview',
unfinishedOutboundTaskName: 'Unfinished Outbound Task',
finishedOutboundTask: 'Finished Outbound Task Overview',
finishedOutboundTaskName: 'Finished Outbound Task'
},
searchViewStockSecure: {
stockId: 'Stock ID',
cargoSpaceId: 'Cargo Space ID',

2806
ruoyi-ui/src/lang/hu.js Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -3,8 +3,10 @@ import VueI18n from 'vue-i18n'
import Cookies from 'js-cookie'
import elementEnLocale from 'element-ui/lib/locale/lang/en' // element-ui lang
import elementZhLocale from 'element-ui/lib/locale/lang/zh-CN'// element-ui lang
import elementHuLocale from 'element-ui/lib/locale/lang/hu'// element-ui lang
import enLocale from './en'
import zhLocale from './zh'
import huLocale from './hu'
Vue.use(VueI18n)
@@ -16,12 +18,16 @@ const messages = {
zh_CN: {
...zhLocale,
...elementZhLocale
},
hu:{
...huLocale,
...elementHuLocale
}
}
const i18n = new VueI18n({
// 设置语言 选项 en | zh
locale: Cookies.get('language') || 'zh_CN',
locale: Cookies.get('language') || 'zh_CN'|| 'hu' ,
// 设置文本内容
messages
})

View File

@@ -632,6 +632,218 @@ export default {
},
searchViewStockSecure: {
stockId: '库存ID',
cargoSpaceId: '货位ID',
stockStatus: '库存状态',
productStatus: '物料状态',
lotNo: '批次号',
inDate: '入库时间',
backDate: '回流时间',
productGuid: '物料GUID',
quantity: '库存数量',
jobId: '作业ID',
trayCode: '托盘条码',
outQuantity: '出库数量',
stockinDetailId: '入库子单ID',
stockinId: '入库主单',
inType: '入库类型',
inputStockId: '请输入库存ID',
inputCargoSpaceId: '请输入货位ID',
selectStockStatus: '请选择库存状态',
selectProductStatus: '请选择物料状态',
inputLotNo: '请输入批次号',
inputInDate: '请输入入库时间',
inputBackDate: '请输入回流时间',
inputProductGuid: '请输入物料GUID',
inputContent: '请输入内容',
inputJobId: '请输入作业ID',
inputTrayCode: '请输入托盘条码',
inputStockinDetailId: '请输入入库子单ID',
inputStockinId: '请输入入库主单',
selectInType: '请选择入库类型',
confirm: '确定',
cancel: '取消',
stockIdRequired: '库存ID不能为空',
addTitle: '添加安全库存查询',
editTitle: '修改安全库存查询',
addSuccess: '新增成功',
editSuccess: '修改成功',
deleteSuccess: '删除成功',
deleteConfirm: '是否确认删除安全库存查询编号为"{stockIds}"的数据项?'
},
// *************供应商管理***************
BasSupplier: {
// 字段
supplierNo: '供应商编号',
supplierGroupNo: '供应商组编号',
supplierName: '供应商名称',
simpleName: '简称',
useable: '是否可用',
remark: '备注',
supplierArae: '地区分类',
taxpayerRegistrationNumber: '纳税人登记号',
country: '国家',
timeZone: '时区',
dataFormat: '数据格式',
receivingCountry: '收货国家',
taxCategory: '税类',
legalPerson: '法人',
registeredCapital: '注册资金',
address: '企业地址',
contactName: '联系人姓名',
contactNumber: '联系电话',
operation: '操作',
// 输入框提示
inputSupplierNo: '请输入供应商编号',
inputSupplierGroupNo: '请输入供应商组编号',
inputSupplierName: '请输入供应商名称',
inputSimpleName: '请输入简称',
inputUseable: '请输入是否可用',
inputRemark: '请输入备注',
inputSupplierArae: '请输入地区分类',
inputTaxpayerRegistrationNumber: '请输入纳税人登记号',
inputCountry: '请输入国家',
inputTimeZone: '请输入时区',
inputDataFormat: '请输入数据格式',
inputReceivingCountry: '请输入收货国家',
inputTaxCategory: '请输入税类',
inputLegalPerson: '请输入法人',
inputRegisteredCapital: '请输入注册资金',
inputAddress: '请输入企业地址',
inputContactName: '请输入联系人姓名',
inputContactNumber: '请输入联系电话',
// 按钮文本
search: '搜索',
reset: '重置',
add: '新增',
edit: '修改',
delete: '删除',
export: '导出',
confirm: '确定',
cancel: '取消',
// 对话框标题
addTitle: '添加供应商管理',
editTitle: '修改供应商管理',
// 成功提示
addSuccess: '新增成功',
editSuccess: '修改成功',
deleteSuccess: '删除成功',
// 删除确认提示
deleteConfirm: '是否确认删除供应商管理编号为{ids}的数据项?',
// 表单校验提示
fidRequired: 'fid不能为空',
useableRequired: '是否可用不能为空'
},
// *************物料管理***************
BasProduct: {
productId: '物料编码',
inputProductId: '请输入物料编码',
productName: '物料名称',
inputProductName: '请输入物料名称',
spare1: '英文描述',
inputSpare1: '请输入英文描述',
unit: '单位',
inputUnit: '请输入单位',
spare2: '单件净重KG',
inputSpare2: '请输入单件净重',
spare3: '箱号',
inputSpare3: '请输入箱号',
spare4: '包装方式',
inputSpare4: '请输入包装方式',
spare5: '长MM',
inputSpare5: '请输入长度',
spare6: '宽MM',
inputSpare6: '请输入宽度',
spare7: '高MM',
inputSpare7: '请输入高度',
spare8: '体积m³',
inputSpare8: '请输入体积m³',
price: '价格',
inputPrice: '请输入价格',
remark: '描述',
inputRemark: '请输入描述',
search: '搜索',
reset: '重置',
add: '新增',
edit: '修改',
delete: '删除',
export: '导出',
confirm: '确定',
cancel: '取消',
operation: '操作',
addTitle: '添加物料管理',
editTitle: '修改物料管理',
deleteConfirm: '是否确认删除物料管理编号为"{productGuids}"的数据项?',
addSuccess: '新增成功',
editSuccess: '修改成功',
deleteSuccess: '删除成功',
productIdRequired: '物料编码不能为空',
productNameRequired: '物料名称不能为空',
unitRequired: '单位不能为空',
priceRequired: '价格不能为空'
},
// *************供应商管理***************
BasPort: {
portName: '点位名称',
inputPortName: '请输入点位名称',
portType: '点位分类',
inputPortType: '请输入点位分类',
portDesc: '点位描述',
inputPortDesc: '请输入点位描述',
search: '搜索',
reset: '重置',
add: '新增',
edit: '修改',
delete: '删除',
export: '导出',
id: 'ID',
createMan: '创建人',
createTime: '创建时间',
operation: '操作',
confirm: '确定',
cancel: '取消',
addTitle: '添加基础点位',
editTitle: '修改基础点位',
addSuccess: '新增成功',
editSuccess: '修改成功',
deleteSuccess: '删除成功',
deleteConfirm: '是否确认删除基础点位编号为"{ids}"的数据项?',
productCode: '物料编码',
inputProductCode: '请输入物料编码',
productName: '物料名称',
inputProductName: '请输入物料名称',
bindStatus: '是否绑定',
selectBindStatus: '请选择状态',
batchBind: '批量绑定',
batchUnbind: '批量解绑',
productEnDesc: '英文描述',
unit: '单位',
netWeight: '单件净重KG',
boxNo: '箱号',
packWay: '包装方式',
length: '长MM',
width: '宽MM',
height: '高MM',
volume: '体积m³',
price: '价格',
description: '描述',
bindProduct: '绑定物料',
unbindProduct: '删除物料',
bindSuccess: '绑定成功',
unbindSuccess: '解绑成功',
selectProduct: '选择物料'
},
// *************库存操作记录***************
stockRecord: {
stockId: '库存编码',
@@ -1132,7 +1344,7 @@ export default {
//基本资料---用户信息
male:'男',
female:'女',
//基本资料---修改密码
oldPassword:'旧密码',
newPassword:'新密码',

View File

@@ -0,0 +1,188 @@
//==本JS是加载Lodop插件或Web打印服务CLodop/Lodop7的综合示例,可直接使用,建议理解后融入自己程序==
//用双端口加载主JS文件Lodop.js(或CLodopfuncs.js兼容老版本)以防其中某端口被占:
var MainJS ="CLodopfuncs.js",
URL_WS1 = "ws://localhost:8000/"+MainJS, //ws用8000/18000
URL_WS2 = "ws://localhost:18000/"+MainJS,
URL_HTTP1 = "http://localhost:8000/"+MainJS, //http用8000/18000
URL_HTTP2 = "http://localhost:18000/"+MainJS,
URL_HTTP3 = "https://localhost.lodop.net:8443/"+MainJS; //https用8000/8443
var CreatedOKLodopObject, CLodopIsLocal, LoadJsState;
//==判断是否需要CLodop(那些不支持插件的浏览器):==
function needCLodop() {
try {
var ua = navigator.userAgent;
if (ua.match(/Windows\sPhone/i) ||
ua.match(/iPhone|iPod|iPad/i) ||
ua.match(/Android/i) ||
ua.match(/Edge\D?\d+/i))
return true;
var verTrident = ua.match(/Trident\D?\d+/i);
var verIE = ua.match(/MSIE\D?\d+/i);
var verOPR = ua.match(/OPR\D?\d+/i);
var verFF = ua.match(/Firefox\D?\d+/i);
var x64 = ua.match(/x64/i);
if ((!verTrident) && (!verIE) && (x64)) return true;
else if (verFF) {
verFF = verFF[0].match(/\d+/);
if ((verFF[0] >= 41) || (x64)) return true;
} else if (verOPR) {
verOPR = verOPR[0].match(/\d+/);
if (verOPR[0] >= 32) return true;
} else if ((!verTrident) && (!verIE)) {
var verChrome = ua.match(/Chrome\D?\d+/i);
if (verChrome) {
verChrome = verChrome[0].match(/\d+/);
if (verChrome[0] >= 41) return true;
}
}
return false;
} catch (err) {
return true;
}
}
//==检查加载成功与否,如没成功则用http(s)再试==
//==低版本CLODOP6.561/Lodop7.043及前)用本方法==
function checkOrTryHttp() {
if (window.getCLodop) {
LoadJsState = "complete";
return true;
}
if (LoadJsState == "loadingB" || LoadJsState == "complete") return;
LoadJsState = "loadingB";
var head = document.head || document.getElementsByTagName("head")[0] || document.documentElement;
var JS1 = document.createElement("script")
,JS2 = document.createElement("script")
,JS3 = document.createElement("script");
JS1.src = URL_HTTP1;
JS2.src = URL_HTTP2;
JS3.src = URL_HTTP3;
JS1.onload = JS2.onload = JS3.onload = JS2.onerror = JS3.onerror=function(){LoadJsState = "complete";}
JS1.onerror = function(e) {
if (window.location.protocol !== 'https:')
head.insertBefore(JS2, head.firstChild); else
head.insertBefore(JS3, head.firstChild);
}
head.insertBefore(JS1,head.firstChild);
}
//==加载Lodop对象的主过程:==
(function loadCLodop(){
if (!needCLodop()) return;
CLodopIsLocal = !!((URL_WS1 + URL_WS2).match(/\/\/localho|\/\/127.0.0./i));
LoadJsState = "loadingA";
if (!window.WebSocket && window.MozWebSocket) window.WebSocket=window.MozWebSocket;
//ws方式速度快(小于200ms)且可避免CORS错误,但要求Lodop版本足够新:
try {
var WSK1=new WebSocket(URL_WS1);
WSK1.onopen = function(e) { setTimeout("checkOrTryHttp()",200); }
WSK1.onmessage = function(e) {if (!window.getCLodop) eval(e.data);}
WSK1.onerror = function(e) {
var WSK2=new WebSocket(URL_WS2);
WSK2.onopen = function(e) {setTimeout("checkOrTryHttp()",200);}
WSK2.onmessage = function(e) {if (!window.getCLodop) eval(e.data);}
WSK2.onerror= function(e) {checkOrTryHttp();}
}
} catch(e){
checkOrTryHttp();
}
})();
//==获取LODOP对象主过程,判断是否安装、需否升级:==
export function getLodop(oOBJECT, oEMBED) {
var strFontTag = "<br><font color='#FF00FF'>打印控件";
var strLodopInstall = strFontTag + "未安装!点击这里<a href='install_lodop32.exe' target='_self'>执行安装</a>";
var strLodopUpdate = strFontTag + "需要升级!点击这里<a href='install_lodop32.exe' target='_self'>执行升级</a>";
var strLodop64Install = strFontTag + "未安装!点击这里<a href='install_lodop64.exe' target='_self'>执行安装</a>";
var strLodop64Update = strFontTag + "需要升级!点击这里<a href='install_lodop64.exe' target='_self'>执行升级</a>";
var strCLodopInstallA = "<br><font color='#FF00FF'>Web打印服务CLodop未安装启动,点击这里<a href='CLodop_Setup_for_Win32NT.exe' target='_self'>下载执行安装</a>";
var strCLodopInstallB = "<br>(若此前已安装过,可<a href='CLodop.protocol:setup' target='_self'>点这里直接再次启动</a>)";
var strCLodopUpdate = "<br><font color='#FF00FF'>Web打印服务CLodop需升级!点击这里<a href='CLodop_Setup_for_Win32NT.exe' target='_self'>执行升级</a>";
var strLodop7FontTag = "<br><font color='#FF00FF'>Web打印服务Lodop7";
var strLodop7HrefX86 = "点击这里<a href='Lodop7_Linux_X86_64.tar.gz' target='_self'>下载安装</a>(下载后解压,点击lodop文件开始执行)";
var strLodop7HrefARM = "点击这里<a href='Lodop7_Linux_ARM64.tar.gz' target='_self'>下载安装</a>(下载后解压,点击lodop文件开始执行)";
var strLodop7Install_X86 = strLodop7FontTag + "未安装启动," + strLodop7HrefX86;
var strLodop7Install_ARM = strLodop7FontTag + "未安装启动," + strLodop7HrefARM;
var strLodop7Update_X86 = strLodop7FontTag + "需升级," + strLodop7HrefX86;
var strLodop7Update_ARM = strLodop7FontTag + "需升级," + strLodop7HrefARM;
var strInstallOK = ",成功后请刷新本页面或重启浏览器。</font>";
var LODOP;
try {
var isWinIE = (/MSIE/i.test(navigator.userAgent)) || (/Trident/i.test(navigator.userAgent));
var isWinIE64 = isWinIE && (/x64/i.test(navigator.userAgent));
var isLinuxX86 = (/Linux/i.test(navigator.platform)) && (/x86/i.test(navigator.platform));
var isLinuxARM = (/Linux/i.test(navigator.platform)) && (/aarch/i.test(navigator.platform));
if (needCLodop() || isLinuxX86 || isLinuxARM) {
try {
LODOP = window.getCLodop();
} catch (err) {}
if (!LODOP && LoadJsState !== "complete") {
if (!LoadJsState)
alert("未曾加载Lodop主JS文件,请先调用loadCLodop过程."); else
alert("网页还没下载完毕,请稍等一下再操作.");
return;
}
var strAlertMessage;
if (!LODOP) {
if (isLinuxX86)
strAlertMessage = strLodop7Install_X86;
else if (isLinuxARM)
strAlertMessage = strLodop7Install_ARM;
else
strAlertMessage = strCLodopInstallA + (CLodopIsLocal ? strCLodopInstallB : "");
document.body.innerHTML = strAlertMessage + strInstallOK + document.body.innerHTML;
return;
} else {
if (isLinuxX86 && LODOP.CVERSION < "7.1.0.1")
strAlertMessage = strLodop7Update_X86;
else if (isLinuxARM && LODOP.CVERSION < "7.1.0.1")
strAlertMessage = strLodop7Update_ARM;
else if (CLODOP.CVERSION < "6.6.2.3")
strAlertMessage = strCLodopUpdate;
if (strAlertMessage)
document.body.innerHTML = strAlertMessage + strInstallOK + document.body.innerHTML;
}
} else {
//==如果页面有Lodop插件就直接使用,否则新建:==
if (oOBJECT || oEMBED) {
if (isWinIE)
LODOP = oOBJECT;
else
LODOP = oEMBED;
} else if (!CreatedOKLodopObject) {
LODOP = document.createElement("object");
LODOP.setAttribute("width", 0);
LODOP.setAttribute("height", 0);
LODOP.setAttribute("style", "position:absolute;left:0px;top:-100px;width:0px;height:0px;");
if (isWinIE)
LODOP.setAttribute("classid", "clsid:2105C259-1E0C-4534-8141-A753534CB4CA");
else
LODOP.setAttribute("type", "application/x-print-lodop");
document.documentElement.appendChild(LODOP);
CreatedOKLodopObject = LODOP;
} else
LODOP = CreatedOKLodopObject;
//==Lodop插件未安装时提示下载地址:==
if ((!LODOP) || (!LODOP.VERSION)) {
document.body.innerHTML = (isWinIE64 ? strLodop64Install : strLodopInstall) + strInstallOK + document.body.innerHTML;
return LODOP;
}
if (LODOP.VERSION < "6.2.2.6") {
document.body.innerHTML = (isWinIE64 ? strLodop64Update : strLodopUpdate) + strInstallOK + document.body.innerHTML;
}
}
//===如下空白位置适合调用统一功能(如注册语句、语言选择等):=======================
//===============================================================================
return LODOP;
} catch (err) {
alert("getLodop出错:" + err);
}
}

View File

@@ -5,6 +5,7 @@ Vue.use(Router)
/* Layout */
import Layout from '@/layout'
import i18n from '@/lang'
/**
* Note: 路由配置项
@@ -70,7 +71,7 @@ export const constantRoutes = [
path: 'index',
component: () => import('@/views/index'),
name: 'Index',
meta: { title: '首页', icon: 'dashboard', affix: true }
meta: { title: i18n.t('viewsMain.title'), icon: 'dashboard', affix: true }
}
]
},

View File

@@ -323,6 +323,7 @@ import {
confirmationStockIn
} from "@/api/in/stockIn"
import {listStockInDetail, barcodePrinting} from "@/api/in/stockInDetail"
import {getLodop} from "@/plugins/LodopFuncs.js"
export default {
@@ -552,15 +553,51 @@ export default {
},
/** 打印条码按钮操作 */
handleBarcodePrinting(row){
const stockInId = row.stockinDetailId ||this.detailIds;
//console.log(stockInId)
var data = {
"stockinIdList": stockInId
let printData = this.stockInDetailListSelected
if (printData.length === 0) {
this.$modal.msgWarning("请选择要打印的数据")
return
}
console.log(printData)
this.printBarcode(printData)
},
/** 打印条码 */
printBarcode(printData) {
try {
// 获取Lodop打印对象
let LODOP = getLodop()
if (!LODOP) {
this.$modal.msgError("打印控件未安装或启动失败")
return
}
LODOP.SET_SHOW_MODE("LANGUAGE", 0);
LODOP.PRINT_INITA(10, 10, 1000, 800, "物资条码");
LODOP.SET_PRINT_PAGESIZE(1, 1000, 500, 0);
LODOP.SET_PRINT_MODE("AUTO_CLOSE_PREWINDOW", 1);
for (let i = 0; i < printData.length; i++) {
LODOP.NewPage();
LODOP.ADD_PRINT_BARCODE(17,35,120,120,"QRCode",printData[i].stockinDetailId);
LODOP.ADD_PRINT_TEXT(22,147,72,20,"物料编码:");
LODOP.ADD_PRINT_TEXT(22,205,180,20,printData[i].productId);
LODOP.ADD_PRINT_TEXT(44,147,66,20,"物料名称:");
LODOP.ADD_PRINT_TEXT(44,206,180,35,printData[i].extraField.materialDesc);
LODOP.ADD_PRINT_TEXT(66,148,64,20,"英文描述:");
LODOP.ADD_PRINT_TEXT(66,205,180,20,printData[i].extraField.englishDesc);
LODOP.ADD_PRINT_TEXT(88,148,64,20,"包装方式:");
LODOP.ADD_PRINT_TEXT(88,205,180,20,printData[i].extraField.packingMethod);
LODOP.ADD_PRINT_TEXT(110,147,61,20,"箱码:");
LODOP.ADD_PRINT_TEXT(110,196,180,20,printData[i].extraField.cartonNo);
}
LODOP.PREVIEW();
} catch (error) {
console.error('打印失败:', error)
this.$modal.msgError("打印失败: " + error.message)
}
barcodePrinting(data).then(response => {
this.$modal.msgSuccess("打印成功")
this.getList()
})
},
/** 提交按钮 */
submitForm() {

View File

@@ -5,24 +5,24 @@
<div class="col-sm-6" style="height: 45vh; padding: 10px;">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>未完成入库任务概览</span>
<span>{{$t('viewsMain.unfinishedInboundTask')}}</span>
</div>
<el-table
:data="table1Data"
style="width: 100%"
:height="tableHeight"
v-loading="loading1">
<el-table-column prop="workValue" label="任务键值" />
<el-table-column prop="workName" label="未完成入库任务" />
<el-table-column prop="workNum" label="全部未完成数量">
<el-table-column prop="workValue" :label="$t('viewsMain.taskKey')" /> <!-- 任务键值 -->
<el-table-column prop="workName" :label="$t('viewsMain.unfinishedInboundTaskName')" /><!-- 未完成入库任务 -->
<el-table-column prop="workNum" :label="$t('viewsMain.totalUnfinishedCount')" ><!-- 全部未完成数量 -->
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.workNum).toFixed(6) }}-->
<!-- </template>-->
</el-table-column>
<el-table-column prop="by1" label="今日未完成数量">
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.by1).toFixed(6) }}-->
<!-- </template>-->
<el-table-column prop="by1" :label="$t('viewsMain.todayUnfinishedCount')"> <!-- 今日未完成数量 -->
<!-- <template slot-scope="scope">
{{ Number(scope.row.by1).toFixed(6) }}
</template>-->
</el-table-column>
</el-table>
</el-card>
@@ -32,23 +32,23 @@
<div class="col-sm-6" style="height: 45vh; padding: 10px;">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>已完成入库任务概览</span>
<span>{{$t('viewsMain.finishedInboundTask')}}</span>
</div>
<el-table
:data="table2Data"
style="width: 100%"
:height="tableHeight"
v-loading="loading2">
<el-table-column prop="workValue" label="任务键值" />
<el-table-column prop="workName" label="已完成入库任务" />
<el-table-column prop="workNum" label="全部已完成数量">
<el-table-column prop="workValue" :label="$t('viewsMain.taskKey')" /><!-- 任务键值 -->
<el-table-column prop="workName" :label="$t('viewsMain.finishedInboundTaskName')" /><!-- 已完成入库任务 -->
<el-table-column prop="workNum" :label="$t('viewsMain.totalFinishedCount')" ><!-- 全部已完成数量 -->
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.workNum).toFixed(6) }}-->
<!-- </template>-->
</el-table-column>
<el-table-column prop="by1" label="今日已完成数量">
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.by1).toFixed(6) }}-->
<el-table-column prop="by1" :label="$t('viewsMain.todayFinishedCount')"> <!-- 今日已完成数量 -->
<!-- <template slot-scope="scope">
{{ Number(scope.row.by1).toFixed(6) }}-->
<!-- </template>-->
</el-table-column>
</el-table>
@@ -59,23 +59,23 @@
<div class="col-sm-6" style="height: 45vh; padding: 10px;">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>未完成出库任务概览</span>
<span>{{$t('viewsMain.unfinishedOutboundTask')}}</span>
</div>
<el-table
:data="table3Data"
style="width: 100%"
:height="tableHeight"
v-loading="loading3">
<el-table-column prop="workValue" label="任务键值" />
<el-table-column prop="workName" label="未完成出库任务" />
<el-table-column prop="workNum" label="全部未完成数量">
<el-table-column prop="workValue" :label="$t('viewsMain.taskKey')" /><!-- 任务键值 -->
<el-table-column prop="workName" :label="$t('viewsMain.unfinishedOutboundTaskName')" /><!-- 未完成出库任务 -->
<el-table-column prop="workNum" :label="$t('viewsMain.totalUnfinishedCount')"><!-- 全部未完成数量 -->
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.workNum).toFixed(6) }}-->
<!-- </template>-->
</el-table-column>
<el-table-column prop="by1" label="今日未完成数量">
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.by1).toFixed(6) }}-->
<el-table-column prop="by1" :label="$t('viewsMain.todayUnfinishedCount')"> <!-- 今日未完成数量 -->
<!-- <template slot-scope="scope">
{{ Number(scope.row.by1).toFixed(6) }}-->
<!-- </template>-->
</el-table-column>
</el-table>
@@ -86,23 +86,23 @@
<div class="col-sm-6" style="height: 45vh; padding: 10px;">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>已完成出库任务概览</span>
<span>{{$t('viewsMain.finishedOutboundTask')}}</span>
</div>
<el-table
:data="table4Data"
style="width: 100%"
:height="tableHeight"
v-loading="loading4">
<el-table-column prop="workValue" label="任务键值" />
<el-table-column prop="workName" label="已完成出库任务" />
<el-table-column prop="workNum" label="全部已完成数量">
<el-table-column prop="workValue" :label="$t('viewsMain.taskKey')" /><!-- 任务键值 -->
<el-table-column prop="workName" :label="$t('viewsMain.finishedOutboundTaskName')" /><!-- 已完成出库任务 -->
<el-table-column prop="workNum" :label="$t('viewsMain.totalFinishedCount')" ><!-- 全部已完成数量 -->
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.workNum).toFixed(6) }}-->
<!-- </template>-->
</el-table-column>
<el-table-column prop="by1" label="今日已完成数量">
<!-- <template slot-scope="scope">-->
<!-- {{ Number(scope.row.by1).toFixed(6) }}-->
<el-table-column prop="by1" :label="$t('viewsMain.todayFinishedCount')"> <!-- 今日已完成数量 -->
<!-- <template slot-scope="scope">
{{ Number(scope.row.by1).toFixed(6) }}-->
<!-- </template>-->
</el-table-column>
</el-table>