gz_gqj_web/js/accessory/child/pro_count_detail.js

309 lines
9.2 KiB
JavaScript

let objParam;
let form, table, upload, tableIns, layer;
let pageNum = 1;
function setParams(params) {
objParam = JSON.parse(params);
$('#proStatus').html(setProStatus('1'));
$('#titleName').html(objParam.inputDay + '配件记录');
layui.use(["form", "table", 'upload', 'layer'], function () {
form = layui.form;
table = layui.table;
upload = layui.upload;
layer = layui.layer;
getInputDetails();
initTable();
});
}
// 获取配件到货入库详情
function getInputDetails() {
let params = {
encryptedData: JSON.stringify({
'id': objParam.id
})
};
let url = dataUrl + 'backstage/partInput/getInputDetails';
ajaxRequest(url, "POST", params, true, function () {
}, function (result) {
console.error(result);
if (result.code === 200) {
setTableData(result.data);
} else {
}
}, function (xhr, status, error) {
errorFn(xhr, status, error)
}, null);
// 基本数据表格赋值
function setTableData(obj) {
$('#codeValue').html(obj.code);
$('#inputNum').html(obj.inputNum);
$('#allPrice').html(obj.allPrice);
$('#inputUser').html(obj.inputUser);
$('#inputDay').html(obj.inputDay);
$('#remark').html(obj.remark);
setFileTable(obj.fileList);
}
}
// 附件文档赋值
function setFileTable(fileList) {
$('#file-table tbody tr:not(:first)').remove();
let html = '';
if (fileList && fileList.length > 0) {
$.each(fileList, function (index, item) {
html += '<tr>' +
'<td>' + handleFileType(item.fileName) + item.fileName + '</td>' +
'<td>' + (item.suffix.replace('.', '')) + '</td>' +
'<td><img src="../../../images/user_head_icon.png" width="20px" height="20px">' + item.createName + '</td>' +
'<td>' + item.createTime + '</td>' +
'<td><a style="margin:0 5px;color:#409EFF;cursor: pointer;" onclick=\'viewFile(' + JSON.stringify(item) + ')\'>预览</a>' +
'<a style="margin:0 5px;color:#409EFF;cursor: pointer;" onclick=\'downLoadFile(' + JSON.stringify(item) + ')\'>下载</a>' +
'</td>' +
'</tr>';
})
} else {
html = '<tr><td colspan="5" style="text-align: center;">暂无数据</td></tr>';
}
$('#file-table tbody').after(html);
}
// 处理文件类型
function handleFileType(value) {
value = value.toLowerCase();
let src = '';
if (value.indexOf('docx') > -1 || value.indexOf('doc') > -1) {
src = '../../../images/docx.png'
} else if (value.indexOf('xls') > -1 || value.indexOf('xlsx') > -1) {
src = '../../../images/xlsx.png'
} else if (value.indexOf('pdf') > -1) {
src = '../../../images/pdf.png'
} else if (value.indexOf('png') > -1 || value.indexOf('jpg') > -1 || value.indexOf('jpeg') > -1) {
src = '../../../images/img_icon.png'
}
return '<img width="20px" height="20px" src = "' + src + '" style="margin:0 5px;">'
}
// 查询/重置
function queryTable(type) {
if (type === 1) {
reloadTable(1);
} else if (type === 2) {
$('#type').val('');
$('#name').val('');
$('#model').val('');
layui.form.render();
reloadTable(1);
}
}
// 刷新页面数据
function reloadData() {
reloadData(pageNum);
}
// 重载表格
function reloadTable(pageNum) {
table.reload("currentTableId", {
page: {
curr: pageNum ? pageNum : 1,
},
where: {
encryptedData: JSON.stringify({
'type': $('#type').val(),
'name': $('#name').val(),
'model': $('#model').val(),
'id': objParam.id
}),
},
},
);
}
// 初始化表格
function initTable() {
tableIns = table.render({
elem: "#currentTableId",
id: 'currentTableId',
headers: {
authorization: sessionStorage.getItem("gz-token"),
},
height: "full",
url: dataUrl + "backstage/partInput/getInputDetailListByPage",
where: {
encryptedData: JSON.stringify({
'type': $('#type').val(),
'name': $('#name').val(),
'model': $('#model').val(),
'id': objParam.id
}),
},
request: {
pageName: 'pageNum',
limitName: 'pageSize'
},
parseData: function (res) { // res 即为原始返回的数据
return {
"code": 0, // 解析接口状态
"msg": '获取成功', // 解析提示文本
"count": res.total, // 解析数据长度
"data": res.list // 解析数据列表
};
},
cols: [
[
{
width: '7.9%',
title: "序号",
align: "center",
templet: function (d) {
return d.LAY_NUM;
},
},
{
field: "partType",
width: '12%',
title: "配件类型",
unresize: true,
align: "center",
},
{
field: "partName",
width: '12%',
title: "配件名称",
unresize: true,
align: "center",
},
{
field: "partModel",
title: "规格型号",
width: '12%',
unresize: true,
align: "center",
},
{
field: "partUnit",
title: "单位",
width: '8%',
unresize: true,
align: "center",
},
{
field: "inputNum",
title: "使用量",
width: '8%',
unresize: true,
align: "center",
},
{
field: "partPrice",
width: '8%',
title: "金额(元)",
unresize: true,
align: "center",
},
{
field: "vendName",
width: '8%',
title: "领用量",
unresize: true,
align: "center",
},
{
field: "vendName",
width: '8%',
title: "金额(元)",
unresize: true,
align: "center",
},
{
field: "remark",
title: "退回量",
width: '8%',
align: "center",
unresize: true,
},
{
field: "remark",
title: "金额(元)",
width: '8%',
align: "center",
unresize: true,
},
],
],
limits: [10, 15, 20, 25, 50, 100],
limit: 10,
page: true,
done: function (res, curr, count) {
pageNum = tableIns.config.page.curr;
table.resize("currentTableId");
},
});
}
// 导出
function exportExcel() {
let params = {
'name': $('#name').val(),
'module': $('#module').val(),
'proId': objParam.proId,
'id': id,
'curryDay': time
}
let url = dataUrl + "backstage/export/exportPcList";
exportExcelUtil(url, '发货详情-批次-' + time, JSON.stringify(params));
}
// 预览文件
function viewFile(obj) {
let fileName = obj.fileName.toLowerCase();
if (fileName.indexOf('png') || fileName.indexOf('jpg') || fileName.indexOf('jpeg')) {
layer.photos({
shade: 0.5,
photos: {
"title": "图片预览",
"start": 0,
"data": [
{
"alt": "layer",
"pid": 1,
"src": fileUrl + obj.fileUrl + '?token=' + sessionStorage.getItem("gz-token"),
}
]
}
});
} else {
// 调用公司的预览文件的服务
}
}
// 下载文件
function downLoadFile(obj) {
console.log(obj);
let url = dataUrl + "backstage/export/download?fileId=" + obj.id;
downLoadFileUtil(url, obj.fileName, null);
}
// 打印
function print() {
Print('#body', {
onStart: function () {
console.log('onStart', new Date())
},
onEnd: function () {
console.log('onEnd', new Date())
}
})
}
// 工程状态
function setProStatus(status) {
if (status === '1') {
return "<span style='color:#19BE6B;margin:0 5px 0 5px;font-size:16px'>●</span>在建";
} else if (status === '2') {
return "<span style='color:#999;margin:0 5px 0 5px;font-size:16px;'>●</span>完工";
}
}