diff --git a/src/api/Inventory/CreatePickingList.js b/src/api/Inventory/CreatePickingList.js index d724d3ef..4244809e 100644 --- a/src/api/Inventory/CreatePickingList.js +++ b/src/api/Inventory/CreatePickingList.js @@ -1,7 +1,7 @@ import request from '@/utils/request' import state from '@/store' import router from '@/router' - +// var postData // 初始化人员 export function initPickPerson() { return request({ @@ -30,6 +30,8 @@ export function initMachineProject() { } // 组件查询 export function searchgroup(num) { + // postData = new URLSearchParams() + // postData.append('param', num) return request({ url: '', method: 'post', diff --git a/src/api/MarketingCenter/ContractInformationManagement.js b/src/api/MarketingCenter/ContractInformationManagement.js index 2c7e69f2..87edffbe 100644 --- a/src/api/MarketingCenter/ContractInformationManagement.js +++ b/src/api/MarketingCenter/ContractInformationManagement.js @@ -308,7 +308,7 @@ export function selectBidBond() { UserID: state.state.user.id, ModularID: router.currentRoute.path, type: '1', - name: '投标保证金管理_投标保证金查询_新', + name: '投标保证金管理_投标保证金查询', param: '保金类型_check=' + arguments[0] + '&保金类型=' + arguments[1] + '&投标人_check=' + arguments[2] + '&投标人=' + arguments[3] + '&招标企业_check=' + arguments[4] + '&招标企业=' + arguments[5] + '&开始日期_check=' + arguments[6] + '&开始日期=' + arguments[7] + '&结束日期_check=' + arguments[8] + '&结束日期=' + arguments[9] } }) diff --git a/src/api/PurchasingCenter/CreateInquirySheet.js b/src/api/PurchasingCenter/CreateInquirySheet.js index e42b0bb6..bbb695a1 100644 --- a/src/api/PurchasingCenter/CreateInquirySheet.js +++ b/src/api/PurchasingCenter/CreateInquirySheet.js @@ -100,7 +100,7 @@ export function changeNum(num, num1, num2, num3, num4) { }) } // 查询分配后的标准件和外购件 -export function searchMaterial(pageCurrent, pageSize, num1, check1, val1, check2, val2, check3, val3, person, check4, val4, check5, val5, check6, val6, val8, val9, val10, check8, val11) { +export function searchMaterial(pageCurrent, pageSize, num1, check1, val1, check2, val2, check3, val3, person, check4, val4, check5, val5, check6, val6, val8, val9, val10, check8, val11, ordername, order) { return request({ url: '', method: 'post', @@ -108,14 +108,30 @@ export function searchMaterial(pageCurrent, pageSize, num1, check1, val1, check2 UserID: state.state.user.id, ModularID: router.currentRoute.path, type: '1', - name: 'xqs_采购管理_采购部采购_查询物料_分配后_带库存_创建询价单', - param: `物料状态编号=${num1}&物料名称_check=${check1}&物料名称=${val1}&物料规格_check=${check2}&物料规格=${val2}&物料型号_check=${check3}&物料型号=${val3}&人员编号=${person}&项目流水号_check=${check4}&项目流水号=${val4}&机床流水号_check=${check5}&机床流水号=${val5}&组件流水号_check=${check6}&组件流水号=${val6}&时间_check=${val8}&开始时间=${val9}&结束时间=${val10}&供货商_check=${check8}&供货商=${val11}`, - Pagination: pageCurrent + '&' + pageSize + // name: 'xqs_采购管理_采购部采购_查询物料_分配后_带库存_创建询价单', + name: 'xqs_采购管理_采购部采购_查询物料_分配后_带库存_创建询价单_分页', + param: `物料状态编号=${num1}=int&物料名称_check=${check1}=int&物料名称=${val1}&物料规格_check=${check2}=int&物料规格=${val2}&物料型号_check=${check3}=int&物料型号=${val3}&人员编号=${person}&项目流水号_check=${check4}=int&项目流水号=${val4}&机床流水号_check=${check5}=int&机床流水号=${val5}&组件流水号_check=${check6}&组件流水号=${val6}&时间_check=${val8}=int&开始时间=${val9}&结束时间=${val10}&供货商_check=${check8}=int&供货商=${val11}&排序名称=${ordername}=int&排序方式=${order}=int&PageCurrent=${pageCurrent}=int&PageSize=${pageSize}=int&PageCount=1=int=output&ItemCount=1=int=output` + // Pagination: pageCurrent + '&' + pageSize } }) } + +// export function searchmaterial(check1, MaterialName, check2, FullNameOfMaterial, check3, MaterialSpecification, check4, MaterialModel, pageCurrent, pageSize, check5, MaterialCategoryValue, check6, MaterialVarietyValue, check7, MeasurementUnitValue, check8, MaterialSourceValue, check9, supplierValue) { +// return request({ +// url: '', +// method: 'post', +// data: { +// UserID: state.state.user.id, +// ModularID: router.currentRoute.path, +// type: '1', +// name: '库存管理_物料主文件_基本_采购部_查询数据_分页', +// param: '物料流水号_check=0&物料代码_check=0&物料名称_check=' + check1 + '=int&物料名称=' + MaterialName + '&物料全名_check=' + check2 + '=int&物料全名=' + FullNameOfMaterial + '&物料规格_check=' + check3 + '=int&物料规格=' + MaterialSpecification + '&物料型号_check=' + check4 + '=int&物料型号=' + MaterialModel + '&物料类别流水号_check=' + check5 + '=int&物料类别流水号=' + MaterialCategoryValue + '&物料品种流水号_check=' + check6 + '=int&物料品种流水号=' + MaterialVarietyValue + '&供货商流水号_check=' + check9 + '&供货商流水号=' + supplierValue + '&计量单位流水号_check=' + check7 + '&计量单位流水号=' + MeasurementUnitValue + '&物料来源流水号_check=' + check8 + '&物料来源流水号=' + MaterialSourceValue + '&PageCurrent=' + pageCurrent + '=int&PageSize=' + pageSize + '=int&PageCount=1=int=output&ItemCount=1=int=output' +// } +// }) +// } + // 查询分配后的基本件 -export function searchPart(pageCurrent, pageSize, num1, check1, val1, check2, val2, check3, val3, person, check4, val4, check5, val5, check6, val6, val8, val9, val10, check8, val11) { +export function searchPart(pageCurrent, pageSize, num1, check1, val1, check2, val2, check3, val3, person, check4, val4, check5, val5, check6, val6, val8, val9, val10, check8, val11, ordername, order) { return request({ url: '', method: 'post', @@ -124,8 +140,7 @@ export function searchPart(pageCurrent, pageSize, num1, check1, val1, check2, va ModularID: router.currentRoute.path, type: '1', name: '采购管理_采购部采购_查询物料_基本件_分配后_创建询价单', - param: `物料状态编号=${num1}&零件图号_check=${check1}&零件图号=${val1}&零件名称_check=${check2}&零件名称=${val2}&零件规格_check=${check3}&零件规格=${val3}&人员编号=${person}&项目流水号_check=${check4}&项目流水号=${val4}&机床流水号_check=${check5}&机床流水号=${val5}&组件流水号_check=${check6}&组件流水号=${val6}&时间_check=${val8}&开始时间=${val9}&结束时间=${val10}&供货商_check=${check8}&供货商=${val11}`, - Pagination: pageCurrent + '&' + pageSize + param: `物料状态编号=${num1}&零件图号_check=${check1}=int&零件图号=${val1}&零件名称_check=${check2}=int&零件名称=${val2}&零件规格_check=${check3}=int&零件规格=${val3}&人员编号=${person}&项目流水号_check=${check4}=int&项目流水号=${val4}&机床流水号_check=${check5}=int&机床流水号=${val5}&组件流水号_check=${check6}=int&组件流水号=${val6}&时间_check=${val8}=int&开始时间=${val9}&结束时间=${val10}&供货商_check=${check8}=int&供货商=${val11}&排序名称=${ordername}=int&排序方式=${order}=int&PageCurrent=${pageCurrent}=int&PageSize=${pageSize}=int&PageCount=1=int=output&ItemCount=1=int=output` } }) } diff --git a/src/api/PurchasingCenter/ReceiveCheck.js b/src/api/PurchasingCenter/ReceiveCheck.js index 0c482003..170f47b5 100644 --- a/src/api/PurchasingCenter/ReceiveCheck.js +++ b/src/api/PurchasingCenter/ReceiveCheck.js @@ -44,7 +44,7 @@ export function searchGroup(num) { }) } // 初始化项目金额统计表 -export function searchReceiveCheck(check1, num1, check2, num2, check3, num3) { +export function searchReceiveCheck(check1, num1, check2, num2, check3, num3, check4, num4, pageCurrent, pageSize) { return request({ url: '', method: 'post', @@ -53,10 +53,24 @@ export function searchReceiveCheck(check1, num1, check2, num2, check3, num3) { ModularID: router.currentRoute.path, type: '1', name: '采购管理_领用核算_查询数据', - param: `项目流水号_check=${check1}&项目流水号=${num1}&机床流水号_check=${check2}&机床流水号=${num2}&组件流水号_check=${check3}&组件流水号=${num3}` + param: `项目流水号_check=${check1}&项目流水号=${num1}&机床流水号_check=${check2}&机床流水号=${num2}&组件流水号_check=${check3}&组件流水号=${num3}&机床号物料名称_check=${check4}&机床号物料名称=${num4}&PageCurrent=${pageCurrent}=int&PageSize=${pageSize}=int&PageCount=1=int=output&ItemCount=1=int=output` } }) } +export function searchsum(check1, num1, check2, num2, check3, num3, check4, num4) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '1', + name: '采购管理_领用核算_查询数据_合计', + param: `项目流水号_check=${check1}&项目流水号=${num1}&机床流水号_check=${check2}&机床流水号=${num2}&组件流水号_check=${check3}&组件流水号=${num3}&机床号物料名称_check=${check4}&机床号物料名称=${num4}` + } + }) +} + // 机床名称 export function getMachines() { return request({ diff --git a/src/utils/setMethods.js b/src/utils/setMethods.js new file mode 100644 index 00000000..fc7d9f82 --- /dev/null +++ b/src/utils/setMethods.js @@ -0,0 +1,90 @@ + +/** + * Parse the time to string + * @param {(Object|string|number)} time + * @param {string} cFormat + * @returns {string} + */ +export function parseTime(time, cFormat) { + if (arguments.length === 0) { + return null + } + const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}' + let date + if (typeof time === 'object') { + date = time + } else { + if (typeof time === 'string' && /^[0-9]+$/.test(time)) { + time = parseInt(time) + } + if (typeof time === 'number' && time.toString().length === 10) { + time = time * 1000 + } + date = new Date(time) + } + const formatObj = { + y: date.getFullYear(), + m: date.getMonth() + 1, + d: date.getDate(), + h: date.getHours(), + i: date.getMinutes(), + s: date.getSeconds(), + a: date.getDay() + } + // eslint-disable-next-line + const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => { + let value = formatObj[key] + // Note: getDay() returns 0 on Sunday + if (key === 'a') { + return ['日', '一', '二', '三', '四', '五', '六'][value] + } + if (result.length > 0 && value < 10) { + value = '0' + value + } + return value || 0 + }) + // eslint-disable-next-line + return time_str +} + +/** + * Parse the json to excel + * tableJson 导出数据 ; filenames导出表的名字; autowidth表格宽度自动 true or false; bookTypes xlsx & csv & txt + * @param {(Object)} tableJson + * @param {string} filenames + * @param {boolean} autowidth + * @param {string} bookTypes + */ +export function json2excel(tableJson, filenames, autowidth, bookTypes) { + import('@/vendor/Export2Excel').then(excel => { + var tHeader = [] + var dataArr = [] + var sheetnames = [] + for (var i in tableJson) { + tHeader.push(tableJson[i].tHeader) + dataArr.push(formatJson(tableJson[i].filterVal, tableJson[i].tableDatas)) + sheetnames.push(tableJson[i].sheetName) + } + console.log(dataArr, 9191) + excel.export_json_to_excel2({ + header: tHeader, + data: dataArr, + sheetname: sheetnames, + filename: filenames, + autoWidth: autowidth, + bookType: bookTypes + }) + }) +} +// 数据过滤,时间过滤 +function formatJson(filterVal, jsonData) { + return jsonData.map(v => + filterVal.map(j => { + if (j === 'timestamp') { + return parseTime(v[j]) + } else { + return v[j] + } + }) + ) +} diff --git a/src/vendor/Export2Excel.js b/src/vendor/Export2Excel.js index 81ce705b..b8a07763 100644 --- a/src/vendor/Export2Excel.js +++ b/src/vendor/Export2Excel.js @@ -218,3 +218,106 @@ export function export_json_to_excel({ type: "application/octet-stream" }), `${filename}.${bookType}`); } + +//主要修改此函数内的方法 +export function export_json_to_excel2({ + multiHeader = [], + header, + data, + sheetname, + filename, + merges = [], + autoWidth = true, + bookType = "xlsx" + } = {}) { + /* original data */ + filename = filename || "excel-list" + data = [...data] + + for (var i = 0; i < header.length; i++) { + data[i].unshift(header[i]) + } + + // data.unshift(header) + + for (let i = multiHeader.length - 1; i > -1; i--) { + data.unshift(multiHeader[i]) + } + + var ws_name = sheetname + var wb = new Workbook(), + ws = [] + for (var j = 0; j < header.length; j++) { + ws.push(sheet_from_array_of_arrays(data[j])) + } + + if (merges.length > 0) { + if (!ws["!merges"]) ws["!merges"] = [] + merges.forEach(item => { + ws["!merges"].push(XLSX.utils.decode_range(item)) + }) + } + // console.log("width", autoWidth) + if (autoWidth) { + /*设置worksheet每列的最大宽度*/ + var colWidth = [] + for (var k = 0; k < header.length; k++) { + colWidth.push( + data[k].map(row => + row.map(val => { + /*先判断是否为null/undefined*/ + if (val == null) { + return { + wch: 10 + } + } else if (val.toString().charCodeAt(0) > 255) { + /*再判断是否为中文*/ + return { + wch: val.toString().length * 2 + } + } else { + return { + wch: val.toString().length + } + } + }) + ) + ) + } + + /*以第一行为初始值*/ + let result = [] + for (var k = 0; k < colWidth.length; k++) { + result[k] = colWidth[k][0] + for (let i = 1; i < colWidth[k].length; i++) { + for (let j = 0; j < colWidth[k][i].length; j++) { + if (result[k][j]["wch"] < colWidth[k][i][j]["wch"]) { + result[k][j]["wch"] = colWidth[k][i][j]["wch"] + } + } + } + } + // 分别给sheet表设置宽度 + for (var l = 0; l < result.length; l++) { + ws[l]["!cols"] = result[l] + } + } + + /* add worksheet to workbook */ + for (var k = 0; k < header.length; k++) { + wb.SheetNames.push(ws_name[k]) + wb.Sheets[ws_name[k]] = ws[k] + } + + var wbout = XLSX.write(wb, { + bookType: bookType, + bookSST: false, + type: "binary" + }) + saveAs( + new Blob([s2ab(wbout)], { + type: "application/octet-stream" + }), + `${filename}.${bookType}` + ) +} diff --git a/src/views/Assembly/SparePartsOutStockRecord/index.vue b/src/views/Assembly/SparePartsOutStockRecord/index.vue index 0301e37c..87acf530 100644 --- a/src/views/Assembly/SparePartsOutStockRecord/index.vue +++ b/src/views/Assembly/SparePartsOutStockRecord/index.vue @@ -21,14 +21,16 @@ + 零件图号: + 时间区间: - 查询 + 查询 - + - + diff --git a/src/views/Inventory/CreatePickingList/index.vue b/src/views/Inventory/CreatePickingList/index.vue index df6dad6e..010bc753 100644 --- a/src/views/Inventory/CreatePickingList/index.vue +++ b/src/views/Inventory/CreatePickingList/index.vue @@ -1,6 +1,6 @@