<template>
|
<div style="margin-top: -40px;">
|
<el-form ref="formData" :model="formData" label-width="100px">
|
<div style="padding: 10px; ">
|
<el-button type="primary" size="small" @click="printClick">报表打印</el-button>
|
</div>
|
<el-table v-loading="loading" :data="printdata" ref="printTable" max-height="540"
|
@selection-change="handleSelectionChange" :row-class-name="rowSysIndex" border>
|
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column align="center" label="模块代码" prop="HNumber" />
|
<el-table-column align="center" label="模板名称" prop="模板名称" />
|
</el-table>
|
</el-form>
|
<el-dialog title="报表打印" :visible.sync="openPrint" width="800px" append-to-body>
|
<div ref="print" id="printId">111</div>
|
<el-button type="primary" size="small" @click="printClick">打印</el-button>
|
</el-dialog>
|
</div>
|
</template>
|
|
<script>
|
import axios from 'axios'
|
|
export default {
|
name: 'PrintList',
|
props: {
|
linterid: { type: Number, },
|
MyMsg: { type: Number, },
|
Type: { type: String, },
|
HModName: { type: String, }
|
},
|
data() {
|
return {
|
openPrint: false,
|
selRowData: [],
|
baseURL: 'http://47.96.97.237/API',
|
user: 'admin',//登录用户名
|
// 表格数据
|
printdata: [],
|
// 选中数组index
|
selIndex: [],
|
// 非单个禁用
|
single: true,
|
// 非多个禁用
|
multiple: true,
|
// 遮罩层
|
loading: true,
|
formData: {
|
HFixCols: '',
|
HFontSize: '',
|
HColumnWidth: '',
|
HPageSize: '',
|
HSortFlag: '',
|
HSelTotal: ''
|
},
|
colTitleName: '',
|
tableIns: null,
|
option: {},
|
tableData: []
|
}
|
},
|
created() {
|
this.getDisplay()
|
},
|
methods: {
|
handlePrint() {
|
this.openPrint = true
|
},
|
printClick() {
|
const routeUrl = this.$router.resolve({ path: '/hBarPlanPrint',query:{linterid:this.linterid.toString(),Type:this.Type.toString(),OpenTmp: encodeURIComponent(this.rowForm.模板名称)} });
|
window.open(routeUrl.href, '_blank');
|
},
|
getDisplay() {
|
this.loading = true
|
axios.get(this.baseURL + '/Open_PrintTem/GetOpenTmpList_Json', {
|
params: { "HNumber": this.Type },
|
}).then(response => {
|
console.log(response)
|
var result = response.data
|
this.printdata = result.data
|
this.loading = false
|
}).catch(error => {
|
console.log(error)
|
this.$modal.msgError("接口请求失败!");
|
});
|
},
|
//上一行
|
handleMoveRowUp(row) {
|
if (this.selRowData.length != 1) {
|
this.$modal.msgError("请选择一行数据!")
|
} else {
|
let num = row.index - 1
|
if (num == 0) {
|
this.$modal.msgError("第一行数据无法上移");
|
} else { // 确保不是第一行
|
const record = this.rowTitleData.splice(num, 1)[0];
|
this.rowTitleData.splice(num - 1, 0, record);
|
}
|
}
|
console.log(this.rowTitleData)
|
},
|
//下一行
|
handleMoveRowDown(row) {
|
if (this.selRowData.length != 1) {
|
this.$modal.msgError("请选择一行数据")
|
} else {
|
let num = row.index - 1
|
if (num == this.rowTitleData.length - 1) {
|
this.$modal.msgError("最后一行数据无法下移");
|
} else { // 确保不是第一行
|
const record = this.rowTitleData.splice(num, 1)[0];
|
this.rowTitleData.splice(num + 1, 0, record);
|
}
|
}
|
},
|
// 多选框选中数据
|
handleSelectionChange(selection) {
|
//单选
|
if (selection.length > 1) {
|
const del_row = selection.shift()
|
this.$refs.printTable.toggleRowSelection(del_row, false) //设置这一行取消选中
|
}
|
this.rowForm = {}
|
this.ids = selection.map(item => item.HItemID)
|
this.rowForm = selection[0]
|
},
|
//表格行索引
|
rowSysIndex({ row, rowIndex }) {
|
row.index = rowIndex + 1;
|
},
|
//全选
|
handleCheckAll() {
|
for (var i = 0; i < this.rowTitleData.length; i++) {
|
this.rowTitleData[i].IsHide = true;
|
}
|
},
|
//全清
|
handleClearBill() {
|
for (var i = 0; i < this.rowTitleData.length; i++) {
|
this.rowTitleData[i].IsHide = false;
|
}
|
},
|
//全居中
|
handleCenter() {
|
for (var i = 0; i < this.rowTitleData.length; i++) {
|
this.rowTitleData[i].Alignment = 'M';
|
}
|
},
|
//保存
|
handleSave() {
|
const cache = this.rowTitleData
|
const num = cache.filter(item => item !== "").map((item, i) => {
|
item.LAY_TABLE_INDEX = i
|
return item
|
})
|
// 验证分页参数
|
const HPageSize = this.formData.HPageSize
|
if (HPageSize && !/^[0-9]+$/.test(HPageSize)) {
|
this.$modal.msgError("默认分页不为正整数!")
|
return
|
}
|
const sMainStr = JSON.stringify(this.formData)
|
const sSubStr = JSON.stringify(num)
|
const OperationType = "1"
|
const sMainSub = `${sMainStr};${sSubStr};${this.HModName};${OperationType};${this.user}`
|
axios({
|
method: 'post',
|
url: this.baseURL + "/Xt_grdAlignment_WMES/AddgrdAlignmentWMES",
|
data: {
|
'sMainSub': sMainSub
|
},
|
}).then(response => {
|
console.log(1, response)
|
if (response.data.count == 1) {
|
this.$modal.msgSuccess("提交成功")
|
} else {
|
this.$modal.msgError(response.data.Message);
|
}
|
}).catch(error => {
|
console.log(2, error)
|
|
this.$modal.msgError("接口请求失败!");
|
});
|
},
|
//退出
|
handleExit() {
|
this.$emit('rowEditClose', false)
|
},
|
// 删除
|
handleDel() {
|
this.$modal.confirm('确认要删除吗,删除后不能恢复').then(() => {
|
console.log(this.rowForm.hmainid.toString())
|
axios.get(this.baseURL + "/Xt_grdAlignment_WMES/DelgrdAlignmentWMES", {
|
params: { "HModName": this.HModName, "user": this.user }
|
}).then(response => {
|
let result = response.data
|
if (response.data.count == 1) {
|
this.getList()
|
this.$modal.msgSuccess(result.Message)
|
} else {
|
this.$modal.msgError("错误:" + result.code + result.Message);
|
}
|
}).catch(error => {
|
console.log(error)
|
this.$modal.msgError("接口请求失败!");
|
});
|
}).catch(() => { })
|
},
|
}
|
}
|
</script>
|