lb #1
@@ -144,7 +144,7 @@ export default {
 | 
			
		||||
				code: i18n.t('code'),
 | 
			
		||||
				remark: i18n.t('remark'),
 | 
			
		||||
				description: i18n.t('desc'),
 | 
			
		||||
				specifications: '规格'
 | 
			
		||||
				specifications: i18n.t('prod.spec')
 | 
			
		||||
				// add more...
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
@@ -168,7 +168,7 @@ export default {
 | 
			
		||||
				code: i18n.t('code'),
 | 
			
		||||
				remark: i18n.t('remark'),
 | 
			
		||||
				description: i18n.t('desc'),
 | 
			
		||||
				specifications: '规格'
 | 
			
		||||
				specifications: i18n.t('prod.spec')
 | 
			
		||||
				// add more...
 | 
			
		||||
			},
 | 
			
		||||
			defaultPlaceholders: {}, // 自动根据 defaultNames 计算得来
 | 
			
		||||
 
 | 
			
		||||
@@ -159,7 +159,7 @@ export default {
 | 
			
		||||
				code: i18n.t('code'),
 | 
			
		||||
				remark: i18n.t('remark'),
 | 
			
		||||
				description: i18n.t('desc'),
 | 
			
		||||
				specifications: '规格'
 | 
			
		||||
				specifications: i18n.t('prod.spec')
 | 
			
		||||
				// add more...
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
@@ -183,7 +183,7 @@ export default {
 | 
			
		||||
				code: i18n.t('code'),
 | 
			
		||||
				remark: i18n.t('remark'),
 | 
			
		||||
				description: i18n.t('desc'),
 | 
			
		||||
				specifications: '规格'
 | 
			
		||||
				specifications: i18n.t('prod.spec')
 | 
			
		||||
				// add more...
 | 
			
		||||
			},
 | 
			
		||||
			defaultPlaceholders: {}, // 自动根据 defaultNames 计算得来
 | 
			
		||||
 
 | 
			
		||||
@@ -107,6 +107,7 @@ t.manufacturer = '制造商'
 | 
			
		||||
t.hints = {}
 | 
			
		||||
t.hints.date = '请选择日期'
 | 
			
		||||
t.hints.number = '请输入正确的数值'
 | 
			
		||||
t.hints.addr = '请输入地址'
 | 
			
		||||
t.hints.upload2m = '上传文件大小不要超过 2mb (2048kb)'
 | 
			
		||||
t.hints.upload2mPic = '上传图片文件,且大小不要超过 2mb (2048kb)'
 | 
			
		||||
 | 
			
		||||
@@ -116,11 +117,27 @@ t.factory.name = '工厂名称'
 | 
			
		||||
t.factory.code = '工厂编码'
 | 
			
		||||
 | 
			
		||||
t.prod = {}
 | 
			
		||||
t.prod.id = '产品ID'
 | 
			
		||||
t.prod.name = '产品名称'
 | 
			
		||||
t.prod.code = '产品编码'
 | 
			
		||||
t.prod.type = '产品类型'
 | 
			
		||||
t.prod.area = '单位平方数'
 | 
			
		||||
t.prod.spec = '规格'
 | 
			
		||||
t.prod.attr = '动态属性'
 | 
			
		||||
t.prod.attrcode = '属性编码'
 | 
			
		||||
t.prod.attrcodeHints = '请输入属性编码'
 | 
			
		||||
t.prod.attrname = '属性名称'
 | 
			
		||||
t.prod.attrnameHints = '请输入属性名称'
 | 
			
		||||
t.prod.attrvalueHints = '请输入属性值'
 | 
			
		||||
t.prod.descHints = '请输入描述'
 | 
			
		||||
t.prod.processTime = '加工时间'
 | 
			
		||||
t.prod.processTimeHints = '请输入加工时间'
 | 
			
		||||
t.prod.relatedPid = '关联产品'
 | 
			
		||||
 | 
			
		||||
t.alarm = {}
 | 
			
		||||
t.alarm.name = '报警'
 | 
			
		||||
t.alarm.info = '报警信息'
 | 
			
		||||
t.alarm.view = '查看报警'
 | 
			
		||||
t.alarm.eq = '报警设备'
 | 
			
		||||
t.alarm.type = '报警类型'
 | 
			
		||||
t.alarm.code = '报警编码'
 | 
			
		||||
@@ -175,6 +192,7 @@ t.file.typeCode = '文件类型编号'
 | 
			
		||||
 | 
			
		||||
t.eq = {}
 | 
			
		||||
t.eq.title = '设备'
 | 
			
		||||
t.eq.id = '设备ID'
 | 
			
		||||
t.eq.name = '设备名称'
 | 
			
		||||
t.eq.code = '设备编码'
 | 
			
		||||
t.eq.type = '设备类型'
 | 
			
		||||
@@ -194,12 +212,23 @@ t.eq.dtypeoutput = '下片数据设备'
 | 
			
		||||
t.eq.upload = '上传资料'
 | 
			
		||||
t.eq.image = '设备图片'
 | 
			
		||||
t.eq.viewattr = '查看设备属性'
 | 
			
		||||
t.eq.plcbarcode = 'plc条码'
 | 
			
		||||
t.eq.plccode = 'PLC编码'
 | 
			
		||||
t.eq.plcname = 'PLC名称'
 | 
			
		||||
t.eq.port = '端口'
 | 
			
		||||
t.eq.type = '类型名称'
 | 
			
		||||
t.eq.typecode = '类型编码'
 | 
			
		||||
t.eq.parent = '父类'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
t.pl = {}
 | 
			
		||||
t.pl.title = '产线'
 | 
			
		||||
t.pl.name = '产线名称'
 | 
			
		||||
t.pl.code = '产线编码'
 | 
			
		||||
t.pl.status = '产线状态'
 | 
			
		||||
t.pl.belong = '所属产线'
 | 
			
		||||
t.pl.tvalue = '产线TT值(每小时下片数量)'
 | 
			
		||||
t.pl.factoryHints = '请选择所属工厂'
 | 
			
		||||
 | 
			
		||||
t.prompt = {}
 | 
			
		||||
t.prompt.title = '提示'
 | 
			
		||||
@@ -407,6 +436,9 @@ t.params.name = '参数名称'
 | 
			
		||||
t.params.code = '参数编码'
 | 
			
		||||
t.params.paramCode = '编码'
 | 
			
		||||
t.params.paramValue = '值'
 | 
			
		||||
t.params.paramStdValue = '参数设定标准值'
 | 
			
		||||
t.params.plctitle = 'PLC采集参数'
 | 
			
		||||
t.params.plcid = 'PLC连接表ID'
 | 
			
		||||
t.params.remark = '备注'
 | 
			
		||||
 | 
			
		||||
t.role = {}
 | 
			
		||||
 
 | 
			
		||||
@@ -41,14 +41,14 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'alarmContent', name: '报警详细内容' },
 | 
			
		||||
	{ prop: 'alarmEquipmentId', name: '报警设备id 关联equipment表' },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'creatorId', name: '创建人' },
 | 
			
		||||
	{ prop: 'creatorName', name: '创建人姓名' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'creatorId', name: i18n.t('creator') },
 | 
			
		||||
	{ prop: 'creatorName', name: i18n.t('creatorName') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'updaterId', name: '更新人' },
 | 
			
		||||
	{ prop: 'updaterName', name: '更新人姓名' },
 | 
			
		||||
	{ prop: 'updateTime', name: '更新时间', filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: '版本号' },
 | 
			
		||||
	{ prop: 'updaterId', name: i18n.t('updator') },
 | 
			
		||||
	{ prop: 'updaterName', name: i18n.t('updatorName') },
 | 
			
		||||
	{ prop: 'updateTime', name: i18n.t('updateTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: i18n.t('version') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -39,16 +39,16 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'equipmentId', name: '设备ID' },
 | 
			
		||||
	{ prop: 'fileId', name: '文件ID' },
 | 
			
		||||
	{ prop: 'description', name: i18n.t('desc') },
 | 
			
		||||
	{ prop: 'enabled', name: '启用状态:0 、停用,1、启用' },
 | 
			
		||||
	{ prop: 'enabled', name: i18n.t('enabled') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'creatorId', name: '创建人' },
 | 
			
		||||
	{ prop: 'creatorName', name: '创建人姓名' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'creatorId', name: i18n.t('creator') },
 | 
			
		||||
	{ prop: 'creatorName', name: i18n.t('creatorName') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'updaterId', name: '更新人' },
 | 
			
		||||
	{ prop: 'updaterName', name: '更新人姓名' },
 | 
			
		||||
	{ prop: 'updateTime', name: '更新时间', filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: '版本号' },
 | 
			
		||||
	{ prop: 'updaterId', name: i18n.t('updator') },
 | 
			
		||||
	{ prop: 'updaterName', name: i18n.t('updatorName') },
 | 
			
		||||
	{ prop: 'updateTime', name: i18n.t('updateTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: i18n.t('version') },
 | 
			
		||||
	{ prop: 'typeCode', name: '文件类型编号' },
 | 
			
		||||
	{ prop: 'fileName', name: '文件名字' },
 | 
			
		||||
	{ prop: 'fileUrl', name: i18n.t('downloadurl') },
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
	<div class="mod-config">
 | 
			
		||||
		<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
 | 
			
		||||
			<el-form-item>
 | 
			
		||||
				<el-input v-model="dataForm.key" :placeholder="$t('eq.groupname')+' / '+$t('eq.groupcode')" clearable></el-input>
 | 
			
		||||
				<el-input v-model="dataForm.key" :placeholder="$t('eq.groupname') + ' / ' + $t('eq.groupcode')" clearable></el-input>
 | 
			
		||||
			</el-form-item>
 | 
			
		||||
			<el-form-item>
 | 
			
		||||
				<el-button @click="getDataList()">{{ $t('query') }}</el-button>
 | 
			
		||||
@@ -38,17 +38,17 @@ import TableTextComponent from '@/components/base-table/components/detailCompone
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'name', name: '分组名称' },
 | 
			
		||||
	{ prop: 'code', name: '分组编码' },
 | 
			
		||||
	{ prop: 'name', name: i18n.t('eq.groupname') },
 | 
			
		||||
	{ prop: 'code', name: i18n.t('eq.groupcode') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'alarm', name: '报警', buttonContent: '查看报警', subcomponent: TableTextComponent, actionName: 'view-alarm' },
 | 
			
		||||
	{ prop: 'alarm', name: i18n.t('alarm.name'), buttonContent: i18n.t('alarm.view'), subcomponent: TableTextComponent, actionName: 'view-alarm' },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
const addOrUpdateConfigs = {
 | 
			
		||||
	type: 'dialog',
 | 
			
		||||
	infoUrl: '/monitoring/equipmentGroup',
 | 
			
		||||
	fields: [{ name: 'name', label: '分组名称' }, { name: 'code', label: '分组编码' }, 'remark'],
 | 
			
		||||
	fields: [{ name: 'name', label: i18n.t('eq.groupname') }, { name: 'code', label: i18n.t('eq.groupcode') }, 'remark'],
 | 
			
		||||
	operations: [
 | 
			
		||||
		{ name: 'cancel', showAlways: true },
 | 
			
		||||
		{ name: 'save', url: '/monitoring/equipmentGroup', permission: 'monitoring:equipmentgroup:save', showOnEdit: false },
 | 
			
		||||
@@ -153,7 +153,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -56,10 +56,10 @@ const dictEntries = {
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'code', name: '报警编码' },
 | 
			
		||||
	{ prop: 'typeDictValue', name: '报警类型' },
 | 
			
		||||
	{ prop: 'gradeDictValue', name: '报警级别' },
 | 
			
		||||
	{ prop: 'alarmContent', name: '报警内容' },
 | 
			
		||||
	{ prop: 'code', name: i18n.t('alarm.code') },
 | 
			
		||||
	{ prop: 'typeDictValue', name: i18n.t('alarm.type') },
 | 
			
		||||
	{ prop: 'gradeDictValue', name: i18n.t('alarm.level') },
 | 
			
		||||
	{ prop: 'alarmContent', name: i18n.t('alarm.content') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
@@ -67,10 +67,10 @@ const addOrUpdateConfigs = {
 | 
			
		||||
	type: 'dialog',
 | 
			
		||||
	infoUrl: '/monitoring/equipmentGroupAlarm',
 | 
			
		||||
	fields: [
 | 
			
		||||
		{ name: 'code', label: '报警编码', required: true },
 | 
			
		||||
		{ name: 'typeDictValue', label: '报警类型', type: 'select', options: [] },
 | 
			
		||||
		{ name: 'gradeDictValue', label: '报警级别', type: 'select', options: [] },
 | 
			
		||||
		{ name: 'alarmContent', label: '报警内容', required: true }
 | 
			
		||||
		{ name: 'code', label: i18n.t('alarm.code'), required: true },
 | 
			
		||||
		{ name: 'typeDictValue', label: i18n.t('alarm.type'), type: 'select', options: [] },
 | 
			
		||||
		{ name: 'gradeDictValue', label: i18n.t('alarm.level'), type: 'select', options: [] },
 | 
			
		||||
		{ name: 'alarmContent', label: i18n.t('alarm.content'), required: true }
 | 
			
		||||
	],
 | 
			
		||||
	operations: [
 | 
			
		||||
		{ name: 'cancel', showAlways: true },
 | 
			
		||||
 
 | 
			
		||||
@@ -34,7 +34,7 @@ import AddOrUpdate from '@/components/base-dialog/addOrUpdate'
 | 
			
		||||
import i18n from '@/i18n'
 | 
			
		||||
import BaseTable from '@/components/base-table'
 | 
			
		||||
import TableOperateComponent from '@/components/base-table/components/operationComponent'
 | 
			
		||||
import TableTextComponent from '@/components/base-table/components/detailComponent'
 | 
			
		||||
// import TableTextComponent from '@/components/base-table/components/detailComponent'
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ type: 'index', width: 100, name: i18n.t('index') },
 | 
			
		||||
@@ -42,10 +42,10 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'name', name: i18n.t('name') },
 | 
			
		||||
	{ prop: 'enName', name: i18n.t('enname') },
 | 
			
		||||
	{ prop: 'description', name: i18n.t('desc') },
 | 
			
		||||
	{ prop: 'barcode', name: 'plc条码' },
 | 
			
		||||
	{ prop: 'barcode', name: i18n.t('eq.plcbarcode') },
 | 
			
		||||
	{ prop: 'collection', name: i18n.t('collectOrNot'), filter: val => ({ 0: i18n.t('notCollect'), 1: i18n.t('collect') }[val]) },
 | 
			
		||||
	{ prop: 'ip', name: 'IP' },
 | 
			
		||||
	{ prop: 'port', name: '端口号' },
 | 
			
		||||
	{ prop: 'port', name: i18n.t('eq.port') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
@@ -68,10 +68,10 @@ const addOrUpdateConfigs = {
 | 
			
		||||
			]
 | 
			
		||||
		},
 | 
			
		||||
		{ name: 'ip', label: 'IP', required: true, placeholder: '0.0.0.0' },
 | 
			
		||||
		{ name: 'port', label: '端口', placeholder: '443' },
 | 
			
		||||
		{ name: 'port', label: i18n.t('eq.port'), placeholder: '443' },
 | 
			
		||||
		'description',
 | 
			
		||||
		'remark',
 | 
			
		||||
		{ name: 'barcode', label: 'plc条码', span: 24 }
 | 
			
		||||
		{ name: 'barcode', label: i18n.t('eq.plcbarcode'), span: 24 }
 | 
			
		||||
	],
 | 
			
		||||
	operations: [
 | 
			
		||||
		{ name: 'cancel', url: true, showAlways: true },
 | 
			
		||||
@@ -166,7 +166,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -29,7 +29,7 @@
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { calcMaxHeight } from '@/utils'
 | 
			
		||||
import { timeFilter } from '@/utils/filters'
 | 
			
		||||
// import { timeFilter } from '@/utils/filters'
 | 
			
		||||
// import AddOrUpdate from './equipmentPlcConnect-add-or-update'
 | 
			
		||||
import AddOrUpdate from '@/components/base-dialog/addOrUpdate'
 | 
			
		||||
import i18n from '@/i18n'
 | 
			
		||||
@@ -41,12 +41,12 @@ import { dictFilter } from '@/utils/filters'
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ type: 'index', width: 100, name: i18n.t('index') },
 | 
			
		||||
	{ prop: 'lineName', name: '产线' },
 | 
			
		||||
	{ prop: 'sectionName', name: '工段' },
 | 
			
		||||
	{ prop: 'lineName', name: i18n.t('pl.title') },
 | 
			
		||||
	{ prop: 'sectionName', name: i18n.t('ws.title') },
 | 
			
		||||
	{ prop: 'equName', name: i18n.t('equipment') },
 | 
			
		||||
	{ prop: 'equCode', name: i18n.t('eq.code') },
 | 
			
		||||
	{ prop: 'plcCode', name: 'PLC编码' },
 | 
			
		||||
	{ prop: 'plcName', name: 'PLC名称' },
 | 
			
		||||
	{ prop: 'plcCode', name: i18n.t('eq.plccode') },
 | 
			
		||||
	{ prop: 'plcName', name: i18n.t('eq.plcname') },
 | 
			
		||||
	{ prop: 'plcIp', name: 'PLC IP' },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
@@ -61,7 +61,7 @@ const addOrUpdateConfigs = {
 | 
			
		||||
	infoUrl: '/monitoring/equipmentPlcConnect',
 | 
			
		||||
	fields: [
 | 
			
		||||
		{ name: 'equipmentId', label: i18n.t('equipment'), required: true, type: 'select', options: [] },
 | 
			
		||||
		{ name: 'plcId', label: 'PLC名称', required: true, type: 'select', options: [] }
 | 
			
		||||
		{ name: 'plcId', label: i18n.t('eq.plcname'), required: true, type: 'select', options: [] }
 | 
			
		||||
	],
 | 
			
		||||
	operations: [
 | 
			
		||||
		{ name: 'cancel', url: true, showAlways: true },
 | 
			
		||||
@@ -69,19 +69,18 @@ const addOrUpdateConfigs = {
 | 
			
		||||
		{ name: 'update', url: '/monitoring/equipmentPlcConnect', permission: 'monitoring:equipmentplcconnect:update', showOnEdit: true }
 | 
			
		||||
	],
 | 
			
		||||
	subtable: {
 | 
			
		||||
		title: 'PLC采集参数',
 | 
			
		||||
		title: i18n.t('params.plctitle'),
 | 
			
		||||
		url: '/monitoring/equipmentPlcParam',
 | 
			
		||||
		relatedField: 'plcConId',
 | 
			
		||||
		tableConfigs: [
 | 
			
		||||
			{ type: 'index', width: 100, name: i18n.t('index') },
 | 
			
		||||
			// { prop: 'plcConId', name: 'plc连接表ID' },
 | 
			
		||||
			{ prop: 'paramCode', name: '参数编码', formField: true, rules: [{ required: true, message: i18n.t('required'), trigger: 'blur' }] },
 | 
			
		||||
			{ prop: 'paramName', name: '参数名称', formField: true, rules: [{ required: true, message: i18n.t('required'), trigger: 'blur' }] },
 | 
			
		||||
			{ prop: 'paramCode', name: i18n.t('params.code'), formField: true, rules: [{ required: true, message: i18n.t('required'), trigger: 'blur' }] },
 | 
			
		||||
			{ prop: 'paramName', name: i18n.t('params.name'), formField: true, rules: [{ required: true, message: i18n.t('required'), trigger: 'blur' }] },
 | 
			
		||||
			{ prop: 'paramAddress', name: i18n.t('paramUrl'), formField: true },
 | 
			
		||||
			{ prop: 'unitDictValue', name: i18n.t('unit'), filter: dictFilter(UnitDictTypeId), formField: true, formType: 'select', formOptions: getUnitList() },
 | 
			
		||||
			{ prop: 'minValue', name: i18n.t('min'), formField: true },
 | 
			
		||||
			{ prop: 'maxValue', name: i18n.t('max'), formField: true },
 | 
			
		||||
			{ prop: 'defaultValue', name: '参数设定标准值', formField: true },
 | 
			
		||||
			{ prop: 'defaultValue', name: i18n.t('params.paramStdValue'), formField: true },
 | 
			
		||||
			{ prop: 'description', name: i18n.t('desc'), formField: true },
 | 
			
		||||
			{
 | 
			
		||||
				prop: 'enabled',
 | 
			
		||||
@@ -97,7 +96,6 @@ const addOrUpdateConfigs = {
 | 
			
		||||
				]
 | 
			
		||||
			},
 | 
			
		||||
			{ prop: 'remark', name: i18n.t('remark'), formField: true },
 | 
			
		||||
			// { prop: 'createTime', name: i18n.t('createTime') },
 | 
			
		||||
			{
 | 
			
		||||
				prop: 'collection',
 | 
			
		||||
				name: i18n.t('collectOrNot'),
 | 
			
		||||
@@ -232,7 +230,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -28,7 +28,7 @@
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { calcMaxHeight } from '@/utils'
 | 
			
		||||
import { timeFilter } from '@/utils/filters'
 | 
			
		||||
// import { timeFilter } from '@/utils/filters'
 | 
			
		||||
import AddOrUpdate from './equipmentPlcParam-add-or-update'
 | 
			
		||||
import i18n from '@/i18n'
 | 
			
		||||
import BaseTable from '@/components/base-table'
 | 
			
		||||
@@ -40,14 +40,14 @@ const UnitDictTypeId = '1557173812109242370'
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ type: 'index', width: 100, name: i18n.t('index') },
 | 
			
		||||
	{ prop: 'plcConId', name: 'plc连接表ID' },
 | 
			
		||||
	{ prop: 'paramCode', name: '参数编码' },
 | 
			
		||||
	{ prop: 'paramName', name: '参数名称' },
 | 
			
		||||
	{ prop: 'plcConId', name: i18n.t('params.plcid') },
 | 
			
		||||
	{ prop: 'paramCode', name: i18n.t('params.code') },
 | 
			
		||||
	{ prop: 'paramName', name: i18n.t('params.name') },
 | 
			
		||||
	{ prop: 'paramAddress', name: i18n.t('paramUrl') },
 | 
			
		||||
	{ prop: 'unitDictValue', name: i18n.t('unit'), filter: dictFilter(UnitDictTypeId) },
 | 
			
		||||
	{ prop: 'minValue', name: i18n.t('min') },
 | 
			
		||||
	{ prop: 'maxValue', name: i18n.t('max') },
 | 
			
		||||
	{ prop: 'defaultValue', name: '参数设定标准值' },
 | 
			
		||||
	{ prop: 'defaultValue', name: i18n.t('params.paramStdValue') },
 | 
			
		||||
	{ prop: 'description', name: i18n.t('desc') },
 | 
			
		||||
	{ prop: 'enabled', name: i18n.t('enabled'), filter: val => [i18n.t('disable'), i18n.t('enable')][+val] },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
 
 | 
			
		||||
@@ -48,14 +48,14 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'nokQuantity', name: '设备上报的报废数量' },
 | 
			
		||||
	{ prop: 'description', name: '' },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'creatorId', name: '创建人' },
 | 
			
		||||
	{ prop: 'creatorName', name: '创建人姓名' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'creatorId', name: i18n.t('creator') },
 | 
			
		||||
	{ prop: 'creatorName', name: i18n.t('creatorName') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'updaterId', name: '更新人' },
 | 
			
		||||
	{ prop: 'updaterName', name: '更新人姓名' },
 | 
			
		||||
	{ prop: 'updateTime', name: '更新时间', filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: '版本号' },
 | 
			
		||||
	{ prop: 'updaterId', name: i18n.t('updator') },
 | 
			
		||||
	{ prop: 'updaterName', name: i18n.t('updatorName') },
 | 
			
		||||
	{ prop: 'updateTime', name: i18n.t('updateTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: i18n.t('version') },
 | 
			
		||||
	{ prop: 'recordTime', name: '生产数量的记录时间' },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 
 | 
			
		||||
@@ -45,14 +45,14 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'status', name: '状态,0正常 1计划停机 2故障' },
 | 
			
		||||
	{ prop: 'logTime', name: i18n.t('recordTime') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'creatorId', name: '创建人' },
 | 
			
		||||
	{ prop: 'creatorName', name: '创建人姓名' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'creatorId', name: i18n.t('creator') },
 | 
			
		||||
	{ prop: 'creatorName', name: i18n.t('creatorName') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'updaterId', name: '更新人' },
 | 
			
		||||
	{ prop: 'updaterName', name: '更新人姓名' },
 | 
			
		||||
	{ prop: 'updateTime', name: '更新时间', filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: '版本号' },
 | 
			
		||||
	{ prop: 'updaterId', name: i18n.t('updator') },
 | 
			
		||||
	{ prop: 'updaterName', name: i18n.t('updatorName') },
 | 
			
		||||
	{ prop: 'updateTime', name: i18n.t('updateTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: i18n.t('version') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -38,8 +38,8 @@ import TableOperateComponent from '@/components/base-table/components/operationC
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'name', name: '类型名称' },
 | 
			
		||||
	{ prop: 'code', name: '类型编码' },
 | 
			
		||||
	{ prop: 'name', name: i18n.t('eq.type') },
 | 
			
		||||
	{ prop: 'code', name: i18n.t('eq.typecode') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
@@ -48,9 +48,9 @@ const addOrUpdateConfigs = {
 | 
			
		||||
	type: 'dialog',
 | 
			
		||||
	infoUrl: '/monitoring/equipmentType',
 | 
			
		||||
	fields: [
 | 
			
		||||
		{ name: 'name', label: '设备类型名称' },
 | 
			
		||||
		{ name: 'code', label: '设备类型编码', api: '/monitoring/equipmentType/getCode' },
 | 
			
		||||
		{ name: 'parentId', label: '父类', type: 'cascader', props: { label: 'name', value: 'id', checkStrictly: true, emitPath: false }, options: [] },
 | 
			
		||||
		{ name: 'name', label: i18n.t('eq.type') },
 | 
			
		||||
		{ name: 'code', label: i18n.t('eq.typecode'), api: '/monitoring/equipmentType/getCode' },
 | 
			
		||||
		{ name: 'parentId', label: i18n.t('eq.parent'), type: 'cascader', props: { label: 'name', value: 'id', checkStrictly: true, emitPath: false }, options: [] },
 | 
			
		||||
		'remark'
 | 
			
		||||
	],
 | 
			
		||||
	operations: [
 | 
			
		||||
@@ -69,7 +69,7 @@ const addOrUpdateConfigs = {
 | 
			
		||||
				url: '/monitoring/attachment/uploadFileFormData',
 | 
			
		||||
				extraParams: { typeCode: 'EquipmentTypeFile' },
 | 
			
		||||
				buttonContent: i18n.t('upload.button'),
 | 
			
		||||
				tip: '上传文件大小不要超过 2mb (2048kb)'
 | 
			
		||||
				tip: i18n.t('hints.upload2m')
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	]
 | 
			
		||||
@@ -177,7 +177,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -39,20 +39,20 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'id', name: 'ID' },
 | 
			
		||||
	{ prop: 'equipmentTypeId', name: '设备类型ID' },
 | 
			
		||||
	{ prop: 'fileId', name: '文件ID' },
 | 
			
		||||
	{ prop: 'typeCode', name: '文件类型编码' },
 | 
			
		||||
	{ prop: 'fileName', name: '文件名称' },
 | 
			
		||||
	{ prop: 'typeCode', name: i18n.t('file.typeCode') },
 | 
			
		||||
	{ prop: 'fileName', name: i18n.t('file.name') },
 | 
			
		||||
	{ prop: 'fileUrl', name: i18n.t('downloadurl') },
 | 
			
		||||
	{ prop: 'description', name: i18n.t('desc') },
 | 
			
		||||
	{ prop: 'enabled', name: '启用状态:0 、停用,1、启用' },
 | 
			
		||||
	{ prop: 'enabled', name: i18n.t('enabled') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'creatorId', name: '创建人' },
 | 
			
		||||
	{ prop: 'creatorName', name: '创建人姓名' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'creatorId', name: i18n.t('creator') },
 | 
			
		||||
	{ prop: 'creatorName', name: i18n.t('creatorName') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'updaterId', name: '更新人' },
 | 
			
		||||
	{ prop: 'updaterName', name: '更新人姓名' },
 | 
			
		||||
	{ prop: 'updateTime', name: '更新时间', filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: '版本号' },
 | 
			
		||||
	{ prop: 'updaterId', name: i18n.t('updator') },
 | 
			
		||||
	{ prop: 'updaterName', name: i18n.t('updatorName') },
 | 
			
		||||
	{ prop: 'updateTime', name: i18n.t('updateTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: i18n.t('version') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -33,12 +33,12 @@ import AddOrUpdate from './equipmentAttr-add-or-update'
 | 
			
		||||
import i18n from '@/i18n'
 | 
			
		||||
import BaseTable from '@/components/base-table'
 | 
			
		||||
import TableOperateComponent from '@/components/base-table/components/operationComponent'
 | 
			
		||||
import TableTextComponent from '@/components/base-table/components/detailComponent'
 | 
			
		||||
// import TableTextComponent from '@/components/base-table/components/detailComponent'
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'equipmentId', name: '设备ID' },
 | 
			
		||||
	{ prop: 'attrName', name: '属性名称' },
 | 
			
		||||
	{ prop: 'equipmentId', name: i18n.t('eq.id') },
 | 
			
		||||
	{ prop: 'attrName', name: i18n.t('attrName') },
 | 
			
		||||
	{ prop: 'attrValue', name: i18n.t('attrValue') },
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'operations',
 | 
			
		||||
@@ -126,7 +126,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -34,12 +34,12 @@ import AddOrUpdate from '@/components/base-dialog/addOrUpdate'
 | 
			
		||||
import i18n from '@/i18n'
 | 
			
		||||
import BaseTable from '@/components/base-table'
 | 
			
		||||
import TableOperateComponent from '@/components/base-table/components/operationComponent'
 | 
			
		||||
import TableTextComponent from '@/components/base-table/components/detailComponent'
 | 
			
		||||
// import TableTextComponent from '@/components/base-table/components/detailComponent'
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'name', name: '工厂名称' },
 | 
			
		||||
	{ prop: 'code', name: '工厂编码' },
 | 
			
		||||
	{ prop: 'name', name: i18n.t('factory.name') },
 | 
			
		||||
	{ prop: 'code', name: i18n.t('factory.code') },
 | 
			
		||||
	{ prop: 'address', name: i18n.t('addr') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
@@ -57,7 +57,7 @@ const addOrUpdateConfigs = {
 | 
			
		||||
		{
 | 
			
		||||
			name: 'address',
 | 
			
		||||
			label: i18n.t('addr'),
 | 
			
		||||
			placeholder: '请输入地址'
 | 
			
		||||
			placeholder: i18n.t('hints.addr')
 | 
			
		||||
		},
 | 
			
		||||
		'remark'
 | 
			
		||||
	],
 | 
			
		||||
@@ -155,7 +155,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -48,9 +48,9 @@ const ProductTypeDictTypeId = '1557179530308616193'
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ type: 'index', width: 100, name: i18n.t('index') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'name', name: '产品名称' },
 | 
			
		||||
	{ prop: 'code', name: '产品编码' },
 | 
			
		||||
	{ prop: 'specifications', name: '规格' },
 | 
			
		||||
	{ prop: 'name', name: i18n.t('prod.name') },
 | 
			
		||||
	{ prop: 'code', name: i18n.t('prod.code') },
 | 
			
		||||
	{ prop: 'specifications', name: i18n.t('prod.spec') },
 | 
			
		||||
	{ prop: 'unitDictValue', name: i18n.t('unit'), filter: dictFilter(UnitDictTypeId) },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['viewAttr', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
@@ -66,8 +66,8 @@ const addOrUpdateConfigs = {
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'processTime',
 | 
			
		||||
			label: '加工时间',
 | 
			
		||||
			placeholder: '请输入加工时间',
 | 
			
		||||
			label: i18n.t('prod.processTime'),
 | 
			
		||||
			placeholder: i18n.t('prod.processTimeHints'),
 | 
			
		||||
			type: 'number',
 | 
			
		||||
			required: true,
 | 
			
		||||
			rules: [
 | 
			
		||||
@@ -75,13 +75,13 @@ const addOrUpdateConfigs = {
 | 
			
		||||
					type: 'number',
 | 
			
		||||
					trigger: 'blur',
 | 
			
		||||
					transform: val => Number(val),
 | 
			
		||||
					message: '必须输入数字'
 | 
			
		||||
					message: i18n.t('hints.number')
 | 
			
		||||
				}
 | 
			
		||||
			]
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'typeDictValue',
 | 
			
		||||
			label: '产品类型', // 对于非常见属性,最好自己指定label
 | 
			
		||||
			label: i18n.t('prod.type'), // 对于非常见属性,最好自己指定label
 | 
			
		||||
			type: 'select',
 | 
			
		||||
			options: [
 | 
			
		||||
				// 动态获取
 | 
			
		||||
@@ -98,9 +98,9 @@ const addOrUpdateConfigs = {
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'area',
 | 
			
		||||
			label: '单位平方数',
 | 
			
		||||
			label: i18n.t('prod.area'),
 | 
			
		||||
			type: 'number',
 | 
			
		||||
			rules: [{ type: 'number', transform: val => Number(val), message: '请输入数字', trigger: 'blur' }]
 | 
			
		||||
			rules: [{ type: 'number', transform: val => Number(val), message: i18n.t('hints.number'), trigger: 'blur' }]
 | 
			
		||||
		},
 | 
			
		||||
		'specifications',
 | 
			
		||||
		'remark'
 | 
			
		||||
@@ -112,13 +112,13 @@ const addOrUpdateConfigs = {
 | 
			
		||||
	],
 | 
			
		||||
	subtable: {
 | 
			
		||||
		// for i18n
 | 
			
		||||
		title: '动态属性',
 | 
			
		||||
		title: i18n.t('prod.attr'),
 | 
			
		||||
		url: '/monitoring/productArrt',
 | 
			
		||||
		relatedField: 'productId',
 | 
			
		||||
		tableConfigs: [
 | 
			
		||||
			{ type: 'index', width: 100, name: i18n.t('index') },
 | 
			
		||||
			{ prop: 'createTime', name: i18n.t('createTime'), filter: val => (val ? moment(val).format('YYYY-MM-DD hh:mm:ss') : '-') },
 | 
			
		||||
			{ prop: 'name', name: '属性名称', formField: true, rules: [{ required: true, message: i18n.t('required'), trigger: 'blur' }] },
 | 
			
		||||
			{ prop: 'name', name: i18n.t('attrName'), formField: true, rules: [{ required: true, message: i18n.t('required'), trigger: 'blur' }] },
 | 
			
		||||
			{ prop: 'code', name: i18n.t('attrValue'), formField: true },
 | 
			
		||||
			{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
		]
 | 
			
		||||
@@ -237,7 +237,7 @@ export default {
 | 
			
		||||
				  this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -39,8 +39,8 @@ import TableOperateComponent from '@/components/base-table/components/operationC
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'name', name: i18n.t('attrName') },
 | 
			
		||||
	{ prop: 'code', name: '属性编码' },
 | 
			
		||||
	{ prop: 'productId', name: '产品id' },
 | 
			
		||||
	{ prop: 'code', name: i18n.t('prod.attrcode') },
 | 
			
		||||
	{ prop: 'productId', name: i18n.t('prod.id') },
 | 
			
		||||
	{ prop: 'value', name: i18n.t('attrValue') },
 | 
			
		||||
	{ prop: 'description', name: i18n.t('desc') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
@@ -53,28 +53,28 @@ const addOrUpdateConfigs = {
 | 
			
		||||
		{
 | 
			
		||||
			name: 'name',
 | 
			
		||||
			label: i18n.t('attrName'),
 | 
			
		||||
			placeholder: '请输入属性名称'
 | 
			
		||||
			placeholder: i18n.t('prod.attrnameHints')
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'code',
 | 
			
		||||
			label: '属性编码',
 | 
			
		||||
			placeholder: '请输入属性编码'
 | 
			
		||||
			label: i18n.t('prod.attrcode'),
 | 
			
		||||
			placeholder: i18n.t('prod.attrcodeHints')
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'productId',
 | 
			
		||||
			label: '关联产品',
 | 
			
		||||
			label: i18n.t('prod.relatedPid'),
 | 
			
		||||
			type: 'select',
 | 
			
		||||
			options: []
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'value',
 | 
			
		||||
			label: i18n.t('attrValue'),
 | 
			
		||||
			placeholder: '请输入属性值'
 | 
			
		||||
			placeholder: i18n.t('prod.attrvalueHints')
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'description',
 | 
			
		||||
			label: i18n.t('desc'),
 | 
			
		||||
			placeholder: '请输入描述'
 | 
			
		||||
			placeholder: i18n.t('prod.descHints')
 | 
			
		||||
		}
 | 
			
		||||
	],
 | 
			
		||||
	operations: [
 | 
			
		||||
@@ -192,7 +192,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -37,10 +37,10 @@ import TableOperateComponent from '@/components/base-table/components/operationC
 | 
			
		||||
 | 
			
		||||
const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'factoryName', name: '工厂' },
 | 
			
		||||
	{ prop: 'name', name: '产线名称' },
 | 
			
		||||
	{ prop: 'code', name: '产线编码' },
 | 
			
		||||
	{ prop: 'status', name: '产线状态' },
 | 
			
		||||
	{ prop: 'factoryName', name: i18n.t('factory.title') },
 | 
			
		||||
	{ prop: 'name', name: i18n.t('pl.name') },
 | 
			
		||||
	{ prop: 'code', name: i18n.t('pl.code') },
 | 
			
		||||
	{ prop: 'status', name: i18n.t('pl.status') },
 | 
			
		||||
	{ prop: 'description', name: i18n.t('desc') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
@@ -54,18 +54,18 @@ const addOrUpdateConfigs = {
 | 
			
		||||
		{ name: 'code', api: '/monitoring/productionLine/getCode' },
 | 
			
		||||
		{
 | 
			
		||||
			name: 'factoryId',
 | 
			
		||||
			label: '工厂',
 | 
			
		||||
			label: i18n.t('factory.title'),
 | 
			
		||||
			type: 'select',
 | 
			
		||||
			placeholder: '请选择所属工厂',
 | 
			
		||||
			placeholder: i18n.t('pl.factoryHints'),
 | 
			
		||||
			options: []
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			name: 'tvalue',
 | 
			
		||||
			label: '产线TT值(每小时下片数量)',
 | 
			
		||||
			placeholder: '请输入合理数值',
 | 
			
		||||
			label: i18n.t('pl.tvalue'),
 | 
			
		||||
			placeholder: i18n.t('hints.number'),
 | 
			
		||||
			type: 'number', // TODO: 可改进为自动应用 number 验证,此时还必须添加下述规则:
 | 
			
		||||
			required: true,
 | 
			
		||||
			rules: [{ type: 'number', transform: val => Number(val), trigger: 'blur', message: '请输入数字类型' }]
 | 
			
		||||
			rules: [{ type: 'number', transform: val => Number(val), trigger: 'blur', message: i18n.t('hints.number') }]
 | 
			
		||||
		},
 | 
			
		||||
		'description',
 | 
			
		||||
		'remark'
 | 
			
		||||
@@ -181,7 +181,7 @@ export default {
 | 
			
		||||
				: this.dataListSelections.map(item => {
 | 
			
		||||
						return item.id
 | 
			
		||||
				  })
 | 
			
		||||
			this.$confirm(`${ i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() }) }`, i18n.t('prompt.title'), {
 | 
			
		||||
			this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
 | 
			
		||||
				confirmButtonText: i18n.t('confirm'),
 | 
			
		||||
				cancelButtonText: i18n.t('cancel'),
 | 
			
		||||
				type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -41,7 +41,7 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'inputNum', name: '上一次记录时间至该条记录时间端内上片数量' },
 | 
			
		||||
	{ prop: 'outputNum', name: '上一次记录时间至该条记录时间端内下片数量' },
 | 
			
		||||
	{ prop: 'recordTime', name: i18n.t('recordTime') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'sumInputNum', name: '该记录时间点的累计上片数量' },
 | 
			
		||||
	{ prop: 'sumOutputNum', name: '该记录时间点的累计下片数量' },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
 
 | 
			
		||||
@@ -66,8 +66,8 @@ const addOrUpdateConfigs = {
 | 
			
		||||
	infoUrl: '/monitoring/qualityInspectionRecord',
 | 
			
		||||
	fields: [
 | 
			
		||||
		{ name: 'checkTime', label: '检测时间', type: 'date', props: { style: 'width: 100%', type: 'datetime' }, placeholder: '请选择检测时间' },
 | 
			
		||||
		{ name: 'productionId', label: '产线', type: 'select', options: [] },
 | 
			
		||||
		{ name: 'sectionId', label: '工段', type: 'select', options: [] },
 | 
			
		||||
		{ name: 'productionId', label: i18n.t('pl.title'), type: 'select', options: [] },
 | 
			
		||||
		{ name: 'sectionId', label: i18n.t('ws.title'), type: 'select', options: [] },
 | 
			
		||||
		{
 | 
			
		||||
			name: 'source',
 | 
			
		||||
			label: '来源',
 | 
			
		||||
 
 | 
			
		||||
@@ -174,7 +174,7 @@ export default {
 | 
			
		||||
		setStaticTableProps() {
 | 
			
		||||
			// Step1: 设置静态的 table props
 | 
			
		||||
			const staticTableProps = [
 | 
			
		||||
				{ prop: 'lineName', label: '产线', fixed: true },
 | 
			
		||||
				{ prop: 'lineName', label: i18n.t('pl.title'), fixed: true },
 | 
			
		||||
				{ prop: 'equName', label: i18n.t('equipment'), fixed: true },
 | 
			
		||||
				{ prop: 'totalProduction', label: '总产量', fixed: true }
 | 
			
		||||
			]
 | 
			
		||||
 
 | 
			
		||||
@@ -157,7 +157,7 @@ export default {
 | 
			
		||||
 | 
			
		||||
		setStaticTableProps() {
 | 
			
		||||
			// Step1: 设置静态的 table props
 | 
			
		||||
			const staticTableProps = [{ prop: 'lineName', label: '产线', fixed: true }]
 | 
			
		||||
			const staticTableProps = [{ prop: 'lineName', label: i18n.t('pl.title'), fixed: true }]
 | 
			
		||||
			this.tableProps = staticTableProps
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -40,7 +40,7 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'name', name: '报表名称' },
 | 
			
		||||
	{ prop: 'code', name: '报表编码' },
 | 
			
		||||
	{ prop: 'category', name: '报表分类' },
 | 
			
		||||
	{ prop: 'fileName', name: '文件名称' },
 | 
			
		||||
	{ prop: 'fileName', name: i18n.t('file.name') },
 | 
			
		||||
	{ prop: 'url', name: '链接地址' },
 | 
			
		||||
	{ prop: 'description', name: i18n.t('desc') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
 
 | 
			
		||||
@@ -39,17 +39,17 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'id', name: '主键,自增' },
 | 
			
		||||
	{ prop: 'typeCode', name: '文件类型编号' },
 | 
			
		||||
	{ prop: 'fileCode', name: '文件编号' },
 | 
			
		||||
	{ prop: 'fileName', name: '文件名称' },
 | 
			
		||||
	{ prop: 'fileName', name: i18n.t('file.name') },
 | 
			
		||||
	{ prop: 'fileUrl', name: '文件路径URL' },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'creatorId', name: '创建人' },
 | 
			
		||||
	{ prop: 'creatorName', name: '创建人姓名' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'creatorId', name: i18n.t('creator') },
 | 
			
		||||
	{ prop: 'creatorName', name: i18n.t('creatorName') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'updaterId', name: '更新人' },
 | 
			
		||||
	{ prop: 'updaterName', name: '更新人姓名' },
 | 
			
		||||
	{ prop: 'updateTime', name: '更新时间', filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: '版本号' },
 | 
			
		||||
	{ prop: 'updaterId', name: i18n.t('updator') },
 | 
			
		||||
	{ prop: 'updaterName', name: i18n.t('updatorName') },
 | 
			
		||||
	{ prop: 'updateTime', name: i18n.t('updateTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: i18n.t('version') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -39,14 +39,14 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'typeCode', name: '文件类型编号' },
 | 
			
		||||
	{ prop: 'typeName', name: '文件类型名称' },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'valid', name: '删除标志,是否有效:1 可用 0不可用' },
 | 
			
		||||
	{ prop: 'creatorId', name: '创建人' },
 | 
			
		||||
	{ prop: 'creatorName', name: '创建人姓名' },
 | 
			
		||||
	{ prop: 'valid', name: i18n.t('delMark') },
 | 
			
		||||
	{ prop: 'creatorId', name: i18n.t('creator') },
 | 
			
		||||
	{ prop: 'creatorName', name: i18n.t('creatorName') },
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'updaterId', name: '更新人' },
 | 
			
		||||
	{ prop: 'updaterName', name: '更新人姓名' },
 | 
			
		||||
	{ prop: 'updateTime', name: '更新时间', filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: '版本号' },
 | 
			
		||||
	{ prop: 'updaterId', name: i18n.t('updator') },
 | 
			
		||||
	{ prop: 'updaterName', name: i18n.t('updatorName') },
 | 
			
		||||
	{ prop: 'updateTime', name: i18n.t('updateTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'version', name: i18n.t('version') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -40,7 +40,7 @@ const tableConfigs = [
 | 
			
		||||
	{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
 | 
			
		||||
	{ prop: 'name', name: '工段名称' },
 | 
			
		||||
	{ prop: 'code', name: '工段编码' },
 | 
			
		||||
	{ prop: 'productionLineName', name: '产线' },
 | 
			
		||||
	{ prop: 'productionLineName', name: i18n.t('pl.title') },
 | 
			
		||||
	{ prop: 'remark', name: i18n.t('remark') },
 | 
			
		||||
	{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
 | 
			
		||||
]
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user