You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
520 lines
17 KiB
520 lines
17 KiB
<template>
|
|
<div class="customer-css">
|
|
<el-dialog :title="titleCon" :close-on-click-modal="false" :visible.sync="visible" width="932px" style="height: 480px;" class="customer-dialog">
|
|
|
|
<el-form :inline="true" label-position="top" label-width="80px">
|
|
<!-- 按钮区域 -->
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item class="customer-button">
|
|
<span>{{labels.labelName}}</span>
|
|
<el-input v-model="pageData.labelName" disabled style="width: 150px;" ></el-input>
|
|
</el-form-item>
|
|
<el-form-item class="customer-button">
|
|
<el-button @click="addLabelParameterModal()" type="primary" style="margin-left: 10px; margin-bottom: 5px;">
|
|
{{buttons.addButton}}</el-button>
|
|
</el-form-item>
|
|
<el-form-item class="customer-button">
|
|
<el-button @click="updateLabelParameterModal()" type="primary" style="margin-left: 10px; margin-bottom: 5px;">
|
|
{{buttons.editButton}}</el-button>
|
|
</el-form-item>
|
|
<el-form-item class="customer-button">
|
|
<el-button @click="deleteLabelContentConfirm()" type="primary" style="margin-left: 10px; margin-bottom: 5px;">
|
|
{{buttons.deleteButton}}</el-button>
|
|
</el-form-item>
|
|
<el-form-item class="customer-button">
|
|
<el-button @click="copyLabelContentMethod()" type="primary" style="margin-left: 10px; margin-bottom: 5px;">
|
|
{{buttons.copyButton}}</el-button>
|
|
</el-form-item>
|
|
<el-form-item class="customer-button">
|
|
<el-button @click="copyLabelContentWithOtherMethod()" type="primary" style="margin-left: 10px; margin-bottom: 5px;">
|
|
{{buttons.copyButtonWithOther}}</el-button>
|
|
</el-form-item>
|
|
<el-form-item class="customer-button">
|
|
<el-button type="primary" @click="refreshCurrentPageTable()" style="margin-left: 10px; margin-bottom: 5px;">
|
|
{{buttons.refreshButton}}</el-button>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-form class="customer-components">
|
|
<el-table @row-click="setCurrentRow"
|
|
:height="height"
|
|
highlight-current-row
|
|
:data="labelArrays"
|
|
border
|
|
v-loading="dataListLoading"
|
|
style="width: 100%;">
|
|
<el-table-column
|
|
v-for="(item,index) in columnList" :key="index"
|
|
:sortable="item.columnSortable"
|
|
:prop="item.columnProp"
|
|
:header-align="item.headerAlign"
|
|
:show-overflow-tooltip="item.showOverflowTooltip"
|
|
:align="item.align"
|
|
:fixed="item.fixed==''?false:item.fixed"
|
|
:width="item.columnWidth"
|
|
:label="item.columnLabel">
|
|
<template slot-scope="scope">
|
|
<span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span>
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
|
|
style="width: 100px; height: 80px"/></span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
fixed="left"
|
|
header-align="center"
|
|
align="center"
|
|
width="150"
|
|
:label=labels.operationLabel>
|
|
<template slot-scope="scope">
|
|
<a class="customer-a" v-if="scope.row.dbFieldName === '流水号'" @click="serialRuleModal(scope.row)">{{ labels.serialRuleLabel }}</a>
|
|
<a class="customer-a" v-if="scope.row.dbFieldName === '流水号'" @click="serialInfoModal(scope.row)">{{ labels.serialInfoLabel }}</a>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form>
|
|
</el-form>
|
|
</el-dialog>
|
|
<!-- 新增或者修改的modal -->
|
|
<comAddUpdateLabel ref="comAddUpdateLabel" @refreshCurrentPageTable="refreshCurrentPageTable" v-drag></comAddUpdateLabel>
|
|
<!-- 复制其他的模版的标签 -->
|
|
<comCopyLabelAllContents ref="comCopyLabelAllContents" @refreshCurrentPageTable="refreshCurrentPageTable" v-drag></comCopyLabelAllContents>
|
|
<!-- 标签内容流水号规则 -->
|
|
<comLabelContentSerialRule ref="comLabelContentSerialRule" @refreshCurrentPageTable="refreshCurrentPageTable" v-drag></comLabelContentSerialRule>
|
|
<!-- 标签内容流水号信息 -->
|
|
<comShowLabelSerialInfo ref="comShowLabelSerialInfo" @refreshCurrentPageTable="refreshCurrentPageTable" v-drag></comShowLabelSerialInfo>
|
|
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import {
|
|
getLabelContentList,
|
|
deleteLabelContent,
|
|
copyLabelContent,
|
|
} from '@/api/labelSetting/com_show_label_content.js';
|
|
|
|
/*引入組件*/
|
|
import comAddUpdateLabel from "./com_add_update_label_content";/*新增或者修改的組件*/
|
|
import comCopyLabelAllContents from "./com_copy_label_content";/*复制报表内容的組件*/
|
|
import comLabelContentSerialRule from "./com_label_content_serial_rule";/*复制报表内容的組件*/
|
|
import comShowLabelSerialInfo from "./com_show_label_serial_info";/*标签内容流水号信息的組件*/
|
|
|
|
/* 动态表头 */
|
|
import {
|
|
saveTableDefaultList,
|
|
getTableDefaultListLanguage,
|
|
getTableUserListLanguage,
|
|
removerDefault,
|
|
removerUser
|
|
} from '@/api/table.js'
|
|
|
|
import {
|
|
searchSysLanguagePackList,
|
|
searchSysLanguageParam,
|
|
searchFunctionButtonList,
|
|
saveButtonList,
|
|
searchSysLanguage,
|
|
searchLanguageListByLanguageCode,
|
|
saveSysLanguageOne,
|
|
searchPageLanguageData,
|
|
removerLanguage,
|
|
saveSysLanguageList
|
|
} from "@/api/sysLanguage.js";
|
|
|
|
var functionId = 'C10000046';
|
|
|
|
export default {
|
|
data() {
|
|
return {
|
|
titleCon: '打印内容定义',
|
|
showDefault: false,
|
|
visible: false,
|
|
height: 200,
|
|
pageData: {
|
|
site: this.$store.state.user.site,
|
|
username: this.$store.state.user.name,
|
|
labelNo: '',
|
|
labelType: '',
|
|
labelName: '',
|
|
labelClass: '',
|
|
remark: '',
|
|
searchFlag: 'N',
|
|
},
|
|
columnList: [
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 'C10000046',
|
|
serialNumber: 'C10000046LabelItemNo',
|
|
tableId: 'C10000046Label',
|
|
tableName: '标签参数定义',
|
|
columnProp: 'itemNo',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '序号',
|
|
columnWidth: 60,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
}, {
|
|
userId: this.$store.state.user.name,
|
|
functionId: 'C10000046',
|
|
serialNumber: 'C10000046LabelItemDesc',
|
|
tableId: 'C10000046Label',
|
|
tableName: '标签参数定义',
|
|
columnProp: 'itemDesc',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '内容描述',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
}, {
|
|
userId: this.$store.state.user.name,
|
|
functionId: 'C10000046',
|
|
serialNumber: 'C10000046LabelObjectName',
|
|
tableId: 'C10000046Label',
|
|
tableName: '标签参数定义',
|
|
columnProp: 'objectName',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: 'Bartender字符串名称',
|
|
columnWidth: 180,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
}, {
|
|
userId: this.$store.state.user.name,
|
|
functionId: 'C10000046',
|
|
serialNumber: 'C10000046LabelObjectGroup',
|
|
tableId: 'C10000046Label',
|
|
tableName: '标签参数定义',
|
|
columnProp: 'objectGroup',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: 'Bartender控件名称',
|
|
columnWidth: 180,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
}, {
|
|
userId: this.$store.state.user.name,
|
|
functionId: 'C10000046',
|
|
serialNumber: 'C10000046LabelDbFieldName',
|
|
tableId: 'C10000046Label',
|
|
tableName: '标签参数定义',
|
|
columnProp: 'dbFieldName',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '对应ERP字段',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
}, {
|
|
userId: this.$store.state.user.name,
|
|
functionId: 'C10000046',
|
|
serialNumber: 'C10000046LabelSequenceBits',
|
|
tableId: 'C10000046Label',
|
|
tableName: '标签参数定义',
|
|
columnProp: 'sequenceBits',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '流水号位数',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
}, {
|
|
userId: this.$store.state.user.name,
|
|
functionId: 'C10000046',
|
|
serialNumber: 'C10000046LabelIntervalValue',
|
|
tableId: 'C10000046Label',
|
|
tableName: '标签参数定义',
|
|
columnProp: 'intervalValue',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '流水码增量',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
],
|
|
currentRow: {},
|
|
labelArrays: [],
|
|
dataListLoading: false,
|
|
queryTable: {
|
|
userId: this.$store.state.user.name,
|
|
functionId: functionId,
|
|
tableId: 'C10000046Label',
|
|
languageCode: this.$i18n.locale
|
|
},
|
|
// 用户table 查询参数
|
|
queryTableUser: {
|
|
userId: this.$store.state.user.name,
|
|
functionId: functionId,
|
|
tableId: 'C10000046Label',
|
|
status: true,
|
|
languageCode: this.$i18n.locale
|
|
},
|
|
buttons: {
|
|
addButton: '新增',
|
|
editButton: '修改',
|
|
deleteButton: '删除',
|
|
copyButton: '复制',
|
|
copyButtonWithOther: '从其他模版复制',
|
|
refreshButton: '刷新',
|
|
},
|
|
queryButton: {
|
|
functionId: functionId,
|
|
table_id: '*',
|
|
languageCode: this.$i18n.locale,
|
|
objectType: 'button'
|
|
},
|
|
labels: {
|
|
titleCon: '打印内容定义',
|
|
labelName: '标签名称:',
|
|
serialRuleLabel: '流水号规则',
|
|
serialInfoLabel: '流水号信息',
|
|
sureDeleteThisRecord: '确定要删除该记录吗?',
|
|
tipsLabel: '提示',
|
|
confirmLabel: '确定',
|
|
cancelLabel: '取消',
|
|
},
|
|
queryLabel: {
|
|
functionId: functionId,
|
|
table_id: '*',
|
|
languageCode: this.$i18n.locale,
|
|
objectType: 'label'
|
|
},
|
|
}
|
|
},
|
|
methods: {
|
|
//初始化组件的参数
|
|
init(currentRow) {
|
|
//初始化参数
|
|
this.pageData = JSON.parse(JSON.stringify(currentRow));
|
|
//打开页面
|
|
this.visible = true;
|
|
//默认不查询
|
|
this.searchFlag = 'Y';
|
|
//判断是否启用多语言
|
|
this.getMultiLanguageList();
|
|
// 获取动态表头的信息
|
|
this.getTableUserColumn();
|
|
//重置标题
|
|
this.titleCon = this.labels.titleCon;
|
|
//组合标签内容
|
|
this.pageData.labelName = this.pageData.labelType +" "+ this.pageData.remark;
|
|
//刷新当前页面的table
|
|
this.getLabelContentMethod();
|
|
},
|
|
|
|
/*刷新页面*/
|
|
refreshCurrentPageTable(){
|
|
this.pageData.searchFlag = 'Y';
|
|
//调用方法 刷新数据
|
|
this.getLabelContentMethod();
|
|
},
|
|
|
|
/*查询列表的参数*/
|
|
getLabelContentMethod(){
|
|
getLabelContentList(this.pageData).then(({data}) => {
|
|
this.labelArrays = data.rows;
|
|
});
|
|
},
|
|
|
|
/* 设置选中行的参数 */
|
|
setCurrentRow(row, column, event) {
|
|
this.currentRow = JSON.parse(JSON.stringify(row))
|
|
},
|
|
|
|
/*新增打印参数*/
|
|
addLabelParameterModal(){
|
|
let currentData = {
|
|
site: this.$store.state.user.site,
|
|
username: this.$store.state.user.name,
|
|
labelNo: this.pageData.labelNo,
|
|
itemNo: '',
|
|
showSeqNo: '',
|
|
itemDesc: '',
|
|
objectName: '',
|
|
objectGroup: '',
|
|
dbFieldName: '',
|
|
sequenceBits: -1,
|
|
intervalValue: -1,
|
|
sequenceNoFlag: 'N',
|
|
addFlag: 'Y',
|
|
};
|
|
//打开组件 去做新增业务
|
|
this.$nextTick(() => {
|
|
this.$refs.comAddUpdateLabel.init(currentData);
|
|
})
|
|
},
|
|
|
|
/*验证时长的参数*/
|
|
updateLabelParameterModal(){
|
|
//打开组件 去做新增业务
|
|
this.$nextTick(() => {
|
|
this.$refs.comAddUpdateLabel.init(this.currentRow);
|
|
})
|
|
},
|
|
|
|
/*删除打印参数*/
|
|
deleteLabelContentConfirm(){
|
|
this.$confirm(this.labels.sureDeleteThisRecord, this.labels.tipsLabel, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
deleteLabelContent(this.currentRow).then(({data}) => {
|
|
if (data && data.code == 200) {
|
|
this.refreshCurrentPageTable();
|
|
this.$message.success(data.msg);
|
|
} else {
|
|
this.$message.error(data.msg);
|
|
}
|
|
});
|
|
});
|
|
},
|
|
|
|
/*复制打印参数*/
|
|
copyLabelContentMethod(){
|
|
copyLabelContent(this.currentRow).then(({data}) => {
|
|
if (data && data.code == 200) {
|
|
this.refreshCurrentPageTable();
|
|
this.$message.success(data.msg);
|
|
} else {
|
|
this.$message.error(data.msg);
|
|
}
|
|
});
|
|
},
|
|
|
|
copyLabelContentWithOtherMethod(){
|
|
//打开组件 去做复制其他标签业务
|
|
this.$nextTick(() => {
|
|
this.$refs.comCopyLabelAllContents.init(this.pageData);
|
|
})
|
|
},
|
|
|
|
/*流水号规则的modal*/
|
|
serialRuleModal(row){
|
|
//打开组件 去做复制其他标签业务
|
|
this.$nextTick(() => {
|
|
this.$refs.comLabelContentSerialRule.init(row);
|
|
})
|
|
},
|
|
|
|
/*流水号信息的modal*/
|
|
serialInfoModal(row){
|
|
//打开组件 去做复制其他标签业务
|
|
this.$nextTick(() => {
|
|
this.$refs.comShowLabelSerialInfo.init(row);
|
|
})
|
|
},
|
|
|
|
/*关闭modal*/
|
|
closeDialog(){
|
|
//刷新报工的页面
|
|
this.$emit('refreshPageTables');
|
|
//关闭当前的页面
|
|
this.visible = false;
|
|
},
|
|
|
|
getMultiLanguageList() {
|
|
//首先查询当前按钮的多语言
|
|
searchFunctionButtonList(this.queryButton).then(({data}) => {
|
|
if (data && data.code == 0 ) {
|
|
this.buttons = data.data
|
|
} else {
|
|
// saveButtonList(this.buttonList).then(({data}) => {
|
|
// })
|
|
}
|
|
});
|
|
//其次查询当前标签的多语言
|
|
searchFunctionButtonList(this.queryLabel).then(({data}) => {
|
|
if (data && data.code == 0 ) {
|
|
this.labels = data.data
|
|
} else {
|
|
// saveButtonList(this.buttonList).then(({data}) => {
|
|
// })
|
|
}
|
|
});
|
|
},
|
|
|
|
// 获取 用户保存的 格式列
|
|
getTableUserColumn() {
|
|
getTableUserListLanguage(this.queryTableUser).then(({data}) => {
|
|
if (data && data.code == 0 && data.rows.length > 0) {
|
|
// this.columnList = []
|
|
this.columnList = data.rows
|
|
} else {
|
|
this.getColumnList()
|
|
}
|
|
})
|
|
},
|
|
|
|
// 获取 tableDefault 列
|
|
getColumnList() {
|
|
getTableDefaultListLanguage(this.queryTable).then(({data}) => {
|
|
if (data && data.code == 0) {
|
|
// this.showDefault = false
|
|
this.columnList = data.rows
|
|
} else {
|
|
// this.showDefault = true
|
|
}
|
|
})
|
|
},
|
|
|
|
|
|
},
|
|
/*组件*/
|
|
components: {
|
|
comAddUpdateLabel,/*标签新增或者修改的组件*/
|
|
comCopyLabelAllContents,/*复制报表的内容*/
|
|
comLabelContentSerialRule,/*标签内容序列号规则*/
|
|
comShowLabelSerialInfo,/*标签内容流水号信息的組件*/
|
|
},
|
|
mounted() {
|
|
this.$nextTick(() => {
|
|
this.height = 265;
|
|
})
|
|
},
|
|
created() {
|
|
// this.factoryList()
|
|
// this.getLanguageList()
|
|
}
|
|
}
|
|
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.customer-css .el-tabs__content{
|
|
padding: 0px !important;
|
|
}
|
|
|
|
</style>
|