Commit 88b0dcd5 authored by Fuzy's avatar Fuzy

修正

parent 98e02c8f
...@@ -24,9 +24,7 @@ if (process.env.npm_config_preview || rawArgv.includes('--preview')) { ...@@ -24,9 +24,7 @@ if (process.env.npm_config_preview || rawArgv.includes('--preview')) {
) )
app.listen(port, function () { app.listen(port, function () {
console.log(chalk.green(`> Preview at http://localhost:${port}${publicPath}`))
if (report) { if (report) {
console.log(chalk.green(`> Report at http://localhost:${port}${publicPath}report.html`))
} }
}) })
......
...@@ -48,6 +48,7 @@ ...@@ -48,6 +48,7 @@
"clipboard": "2.0.6", "clipboard": "2.0.6",
"connect": "3.6.6", "connect": "3.6.6",
"core-js": "3.8.1", "core-js": "3.8.1",
"decimal": "^0.0.2",
"echarts": "4.9.0", "echarts": "4.9.0",
"element-ui": "2.15.0", "element-ui": "2.15.0",
"eslint": "7.15.0", "eslint": "7.15.0",
......
...@@ -4,7 +4,6 @@ import Excel from 'exceljs'; ...@@ -4,7 +4,6 @@ import Excel from 'exceljs';
import FileSaver from 'file-saver'; import FileSaver from 'file-saver';
const exportExcel = function (luckysheet, value, contrast, id) { const exportExcel = function (luckysheet, value, contrast, id) {
// 函数体 // 函数体
// 参数为luckysheet.getluckysheetfile()获取的对象 // 参数为luckysheet.getluckysheetfile()获取的对象
// 1.创建工作簿,可以为工作簿添加属性 // 1.创建工作簿,可以为工作簿添加属性
...@@ -14,7 +13,7 @@ const exportExcel = function (luckysheet, value, contrast, id) { ...@@ -14,7 +13,7 @@ const exportExcel = function (luckysheet, value, contrast, id) {
luckysheet = [luckysheet]; luckysheet = [luckysheet];
} }
luckysheet.forEach(function (table) { luckysheet.forEach(function (table) {
if (table.data.length === 0) { return true; } if (table.data.length === 0) { return true; }
// ws.getCell('B2').fill = fills. // ws.getCell('B2').fill = fills.
const worksheet = workbook.addWorksheet(table.name); const worksheet = workbook.addWorksheet(table.name);
...@@ -36,11 +35,9 @@ const exportExcel = function (luckysheet, value, contrast, id) { ...@@ -36,11 +35,9 @@ const exportExcel = function (luckysheet, value, contrast, id) {
// return // return
// 4.写入 buffer // 4.写入 buffer
const buffer = workbook.xlsx.writeBuffer().then(data => { const buffer = workbook.xlsx.writeBuffer().then(data => {
// console.log('data', data)
const blob = new Blob([data], { const blob = new Blob([data], {
type: 'application/vnd.ms-excel;charset=utf-8' type: 'application/vnd.ms-excel;charset=utf-8'
}); });
console.log('导出成功!');
FileSaver.saveAs(blob, `${value}.xlsx`); FileSaver.saveAs(blob, `${value}.xlsx`);
}); });
return buffer; return buffer;
...@@ -62,14 +59,11 @@ var setMerge = function (luckyMerge = {}, worksheet) { ...@@ -62,14 +59,11 @@ var setMerge = function (luckyMerge = {}, worksheet) {
var setBorder = function (luckyBorderInfo, worksheet) { var setBorder = function (luckyBorderInfo, worksheet) {
if (!Array.isArray(luckyBorderInfo)) { return; } if (!Array.isArray(luckyBorderInfo)) { return; }
// console.log('luckyBorderInfo', luckyBorderInfo)
luckyBorderInfo.forEach(function (elem) { luckyBorderInfo.forEach(function (elem) {
// 现在只兼容到borderType 为range的情况 // 现在只兼容到borderType 为range的情况
// console.log('ele', elem)
if (elem.rangeType === 'range') { if (elem.rangeType === 'range') {
let border = borderConvert(elem.borderType, elem.style, elem.color); let border = borderConvert(elem.borderType, elem.style, elem.color);
let rang = elem.range[0]; let rang = elem.range[0];
// console.log('range', rang)
let row = rang.row; let row = rang.row;
let column = rang.column; let column = rang.column;
for (let i = row[0] + 1; i < row[1] + 2; i++) { for (let i = row[0] + 1; i < row[1] + 2; i++) {
...@@ -90,10 +84,8 @@ var setBorder = function (luckyBorderInfo, worksheet) { ...@@ -90,10 +84,8 @@ var setBorder = function (luckyBorderInfo, worksheet) {
delete borderData.col_index; delete borderData.col_index;
delete borderData.row_index; delete borderData.row_index;
let border = addborderToCell(borderData, row_index, col_index); let border = addborderToCell(borderData, row_index, col_index);
// console.log('bordre', border, borderData)
worksheet.getCell(row_index + 1, col_index + 1).border = border; worksheet.getCell(row_index + 1, col_index + 1).border = border;
} }
// console.log(rang.column_focus + 1, rang.row_focus + 1)
// worksheet.getCell(rang.row_focus + 1, rang.column_focus + 1).border = border // worksheet.getCell(rang.row_focus + 1, rang.column_focus + 1).border = border
}); });
}; };
...@@ -297,7 +289,6 @@ var borderConvert = function (borderType, style = 1, color = '#000') { ...@@ -297,7 +289,6 @@ var borderConvert = function (borderType, style = 1, color = '#000') {
} else { } else {
border[luckyToExcel.type[borderType]] = template; border[luckyToExcel.type[borderType]] = template;
} }
// console.log('border', border)
return border; return border;
}; };
...@@ -327,9 +318,7 @@ function addborderToCell(borders, row_index, col_index) { ...@@ -327,9 +318,7 @@ function addborderToCell(borders, row_index, col_index) {
13: 'thick' 13: 'thick'
} }
}; };
// console.log('borders', borders)
for (const bor in borders) { for (const bor in borders) {
// console.log(bor)
if (borders[bor].color.indexOf('rgb') === -1) { if (borders[bor].color.indexOf('rgb') === -1) {
border[luckyExcel.type[bor]] = { border[luckyExcel.type[bor]] = {
style: luckyExcel.style[borders[bor].style], style: luckyExcel.style[borders[bor].style],
......
This diff is collapsed.
...@@ -90,7 +90,6 @@ export function machGzdata(list,jsonData) { ...@@ -90,7 +90,6 @@ export function machGzdata(list,jsonData) {
} }
}); });
console.log("123", list);
// 对比 c 和 r 是否与 CompositeTable[0]["celldata"] 中相应对象相同 // 对比 c 和 r 是否与 CompositeTable[0]["celldata"] 中相应对象相同
for (let k = 0; k < CompositeTable[0]["celldata"].length; k++) { for (let k = 0; k < CompositeTable[0]["celldata"].length; k++) {
for (let i = 0; i < list.length; i++) { for (let i = 0; i < list.length; i++) {
......
...@@ -63,6 +63,22 @@ export function getyy(newData) { ...@@ -63,6 +63,22 @@ export function getyy(newData) {
data: newData, data: newData,
}); });
} }
// 林西的电力汇总生成凭证
export function inquireAboutSubjectAssistance(newData) {
return request({
url: `powerVoucherConversion/inquireAboutSubjectAssistance`,
method: "post",
data: newData,
});
}
// 单侯的电力汇总生成凭证
export function axiosShanHouVoucherConversion(newData) {
return request({
url: `powerVoucherConversion/shanHouVoucherConversion`,
method: "post",
data: newData,
});
}
//展示excel模板 //展示excel模板
export function listSuppliesTemplateId(id) { export function listSuppliesTemplateId(id) {
return request({ return request({
...@@ -78,6 +94,13 @@ export function getSuppliesTemplate(id) { ...@@ -78,6 +94,13 @@ export function getSuppliesTemplate(id) {
method: "get", method: "get",
}); });
} }
export function axiosPowerDisplayPeek(data) {
return request({
url: "/powerDisplay/peek/",
method: "post",
data
});
}
// 修改导入规则 // 修改导入规则
export function updateSuppliesrole(id) { export function updateSuppliesrole(id) {
...@@ -325,7 +348,7 @@ export function listMyluckyexcel(query) { ...@@ -325,7 +348,7 @@ export function listMyluckyexcel(query) {
// params: query // params: query
// }) // })
// } // }
//通过code和矿ID查询一二级分类
export function asiccData(data) { export function asiccData(data) {
return request({ return request({
url: 'asicc/getData', url: 'asicc/getData',
...@@ -333,7 +356,7 @@ export function asiccData(data) { ...@@ -333,7 +356,7 @@ export function asiccData(data) {
data, data,
}); });
} }
// 保存通用材料模版的数据
export function asmInfoSave(data) { export function asmInfoSave(data) {
return request({ return request({
url: 'asmInfo/save', url: 'asmInfo/save',
...@@ -341,3 +364,18 @@ export function asmInfoSave(data) { ...@@ -341,3 +364,18 @@ export function asmInfoSave(data) {
data, data,
}); });
} }
export function axiosPowerLx(arr) {
return request({
url: 'power/lxPower',
method: "post",
data:{lxPowers:arr}
});
}
export function axiosHistorySave(data) {
return request({
url: 'history/save',
method: "post",
data
});
}
...@@ -360,7 +360,6 @@ export default { ...@@ -360,7 +360,6 @@ export default {
}); });
// .catch(error => { // .catch(error => {
// console.error("An error occurred while transforming Excel files:", error);
// // 处理错误情况 // // 处理错误情况
// }); // });
}, },
......
...@@ -45,7 +45,6 @@ ...@@ -45,7 +45,6 @@
handleApply: function () { handleApply: function () {
const id = this.row.id; const id = this.row.id;
const requestMapping = this.requestMapping; const requestMapping = this.requestMapping;
console.log("requestMapping:" , requestMapping);
this.$confirm('是否提交ID为"' + id + '"的申请单据?', "警告", { this.$confirm('是否提交ID为"' + id + '"的申请单据?', "警告", {
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
......
...@@ -119,7 +119,6 @@ ...@@ -119,7 +119,6 @@
}, },
handleApprove(){ handleApprove(){
console.log('this.row.processKey', this.$refs);
this.open = true; this.open = true;
}, },
......
...@@ -14,7 +14,6 @@ import { ...@@ -14,7 +14,6 @@ import {
getSuppliesTemplate, getSuppliesTemplate,
listSuppliesTemplate, listSuppliesTemplate,
roleList, roleList,
materialListPZ,
accountingcode, accountingcode,
department, department,
roleListid, roleListid,
...@@ -22,8 +21,6 @@ import { ...@@ -22,8 +21,6 @@ import {
} from "@/api/ruoyi-myLuckyexcel/myluckyexcel"; } from "@/api/ruoyi-myLuckyexcel/myluckyexcel";
import { import {
addInsert, addInsert,
addInsertAccount1,
addInsertAccount2,
datahistoryContentCopy datahistoryContentCopy
} from "@/api/system/historydata"; } from "@/api/system/historydata";
/*import luckysheet from 'luckysheet'*/ /*import luckysheet from 'luckysheet'*/
...@@ -130,10 +127,8 @@ export default { ...@@ -130,10 +127,8 @@ export default {
mounted() { mounted() {
this.init(); this.init();
fileName = "新建XLSX工作表"; fileName = "新建XLSX工作表";
// this.list()
}, },
methods: { methods: {
delect() { delect() {
this.mine = ""; this.mine = "";
this.selectname = ""; this.selectname = "";
...@@ -284,6 +279,10 @@ export default { ...@@ -284,6 +279,10 @@ export default {
let suffixArr = sysSupplies[0].templateName.split("."); let suffixArr = sysSupplies[0].templateName.split(".");
fileName = suffixArr[0]; fileName = suffixArr[0];
//luckysheet.destroy() //luckysheet.destroy()
console.log(a)
luckysheet.create({ luckysheet.create({
container: "luckysheet", // Luckysheet 的容器元素 ID container: "luckysheet", // Luckysheet 的容器元素 ID
title: fileName, // Excel 文件名 title: fileName, // Excel 文件名
...@@ -407,6 +406,7 @@ export default { ...@@ -407,6 +406,7 @@ export default {
luckysheet.create(options); luckysheet.create(options);
}, },
async handleFileChange(evt) { async handleFileChange(evt) {
if (modify) { if (modify) {
this.$confirm( this.$confirm(
"再次导入将会清空表内数据,是否继续操作?", "再次导入将会清空表内数据,是否继续操作?",
...@@ -472,7 +472,7 @@ export default { ...@@ -472,7 +472,7 @@ export default {
//转换方法 //转换方法
transformPromises() { transformPromises() {
// try { // try {
let result = this.result let result = this.result
this.dialogTableVisible = false this.dialogTableVisible = false
let cc = result; let cc = result;
...@@ -555,7 +555,7 @@ export default { ...@@ -555,7 +555,7 @@ export default {
let names = this.cleaning[0].sourceColoumn let names = this.cleaning[0].sourceColoumn
? this.cleaning[0].sourceColoumn - 1 ? this.cleaning[0].sourceColoumn - 1
: null; : null;
let name = names let name = names
? c ? c
.flat() .flat()
...@@ -566,7 +566,7 @@ export default { ...@@ -566,7 +566,7 @@ export default {
obj.r > headRow obj.r > headRow
) )
: null; : null;
//材料名称所在列 //材料名称所在列
let materias = this.cleaning[0].NameColumn - 1; let materias = this.cleaning[0].NameColumn - 1;
let materianame = c let materianame = c
...@@ -752,7 +752,6 @@ export default { ...@@ -752,7 +752,6 @@ export default {
let material = CompositeTable[0]["celldata"] let material = CompositeTable[0]["celldata"]
.flat() .flat()
.filter((obj) => obj.r && obj.r === matchedItems); .filter((obj) => obj.r && obj.r === matchedItems);
console.log(material)
duplicateData.forEach((obj) => { duplicateData.forEach((obj) => {
obj.v.material='' obj.v.material=''
material.forEach((cell) => { material.forEach((cell) => {
...@@ -761,7 +760,6 @@ export default { ...@@ -761,7 +760,6 @@ export default {
} }
}); });
}); });
console.log(duplicateData,'2222222222')
var cellList = []; var cellList = [];
var newHistoryContent = JSON.parse( var newHistoryContent = JSON.parse(
this.ImportTables.historyContent this.ImportTables.historyContent
...@@ -817,10 +815,10 @@ export default { ...@@ -817,10 +815,10 @@ export default {
this.middle = CompositeTable; this.middle = CompositeTable;
this.duplicateData.push(...duplicateData); this.duplicateData.push(...duplicateData);
this.Vouchers(this.duplicateData); this.Vouchers(this.duplicateData);
// } catch (error) { // } catch (error) {
// this.open4(); // this.open4();
// this.showMask = false; // this.showMask = false;
// } // }
}, },
zhuan(file) { zhuan(file) {
let cc = ''; let cc = '';
...@@ -879,7 +877,7 @@ export default { ...@@ -879,7 +877,7 @@ export default {
"*核算账簿", "*核算账簿",
"*单据日期", "*单据日期",
"*凭证类型", "*凭证类型",
"*制单人", "制单人",
"*分录摘要", "*分录摘要",
"*币种", "*币种",
"本币汇率类型", "本币汇率类型",
...@@ -997,8 +995,6 @@ export default { ...@@ -997,8 +995,6 @@ export default {
this.generate.identifyingCode = 1; this.generate.identifyingCode = 1;
this.generate.date = this.date; this.generate.date = this.date;
this.generate.mining = this.select; this.generate.mining = this.select;
// , this.generate
let list = [this.ImportTables];
let filteredArr; let filteredArr;
accountingcode(newData).then((response) => { accountingcode(newData).then((response) => {
// 合并起来的每行的值转换成一行一个编码 知道哪行合并了起来 // 合并起来的每行的值转换成一行一个编码 知道哪行合并了起来
...@@ -1018,6 +1014,9 @@ export default { ...@@ -1018,6 +1014,9 @@ export default {
if (item.accountingCode) { if (item.accountingCode) {
extractedItem.accountingCode = item.accountingCode; extractedItem.accountingCode = item.accountingCode;
} }
if (item.department) {
extractedItem.department = item.department
}
if (item.indexcoloumn) { if (item.indexcoloumn) {
extractedItem.indexcoloumn = item.indexcoloumn; extractedItem.indexcoloumn = item.indexcoloumn;
} }
...@@ -1031,7 +1030,6 @@ export default { ...@@ -1031,7 +1030,6 @@ export default {
}); });
let historyContent = []; let historyContent = [];
for (let i = 0; i < this.ImportTables.historyRole.length; i++) { for (let i = 0; i < this.ImportTables.historyRole.length; i++) {
// && this.ImportTables.historyRole[i].accountingCode
if (this.ImportTables.historyRole[i].indexRow) { if (this.ImportTables.historyRole[i].indexRow) {
const indexRowArray = const indexRowArray =
this.ImportTables.historyRole[i].indexRow.split( this.ImportTables.historyRole[i].indexRow.split(
...@@ -1041,7 +1039,7 @@ export default { ...@@ -1041,7 +1039,7 @@ export default {
this.ImportTables.historyRole[i].indexcoloumn; this.ImportTables.historyRole[i].indexcoloumn;
for (let j = 0; j < indexRowArray.length; j++) { for (let j = 0; j < indexRowArray.length; j++) {
let historyRole = { let historyRole = {
value: `${this.ImportTables.historyRole[i].accountingCode},${this.ImportTables.historyRole[i].name}`, value: `${this.ImportTables.historyRole[i].accountingCode},${this.ImportTables.historyRole[i].name}-${this.ImportTables.historyRole[i].department}`,
key: String(indexRowArray[j]), key: String(indexRowArray[j]),
coloumn: String(indexcoloumn), coloumn: String(indexcoloumn),
}; };
...@@ -1127,7 +1125,6 @@ export default { ...@@ -1127,7 +1125,6 @@ export default {
} }
isArray.push(newRow1, newRow2); isArray.push(newRow1, newRow2);
} }
for (let i = 0; i < filteredArr.length; i++) { for (let i = 0; i < filteredArr.length; i++) {
const codeValue = filteredArr[i]?.accountingCode; const codeValue = filteredArr[i]?.accountingCode;
if (codeValue) { if (codeValue) {
...@@ -1240,10 +1237,7 @@ export default { ...@@ -1240,10 +1237,7 @@ export default {
}; };
isArray.push(newRow, newRow1); isArray.push(newRow, newRow1);
} }
VoucherForm[0].celldata.push(...isArray); VoucherForm[0].celldata.push(...isArray);
if (this.value.includes("凭证")) { if (this.value.includes("凭证")) {
luckysheet.create({ luckysheet.create({
container: "luckysheet", // Luckysheet 的容器元素 ID container: "luckysheet", // Luckysheet 的容器元素 ID
...@@ -1257,7 +1251,7 @@ export default { ...@@ -1257,7 +1251,7 @@ export default {
modify = true; modify = true;
this.showMask = false; this.showMask = false;
} }
console.log(list,'11111111111') let list = [this.ImportTables];
addInsert(list).then((response) => { addInsert(list).then((response) => {
if (response.code == 200) { if (response.code == 200) {
this.$message({ this.$message({
...@@ -1267,7 +1261,6 @@ export default { ...@@ -1267,7 +1261,6 @@ export default {
} }
}); });
if (this.mining !== "011701") { if (this.mining !== "011701") {
this.historyContent = []; this.historyContent = [];
this.duplicateData = []; this.duplicateData = [];
} }
...@@ -1285,7 +1278,6 @@ export default { ...@@ -1285,7 +1278,6 @@ export default {
}, },
}; };
// 配置项111 // 配置项111
function getss(data) { function getss(data) {
let setXColumnObj = setXColumn(data, 2, '', 0, 9) let setXColumnObj = setXColumn(data, 2, '', 0, 9)
let arrkses = Object.keys(setXColumnObj) let arrkses = Object.keys(setXColumnObj)
...@@ -1351,9 +1343,7 @@ function workbookCreateAfter(operate, mining) { ...@@ -1351,9 +1343,7 @@ function workbookCreateAfter(operate, mining) {
}) })
return neearray return neearray
} }
// debounce函数定义 // debounce函数定义
function debounce(func, delay) { function debounce(func, delay) {
let timer; let timer;
return function () { return function () {
...@@ -1364,19 +1354,4 @@ function debounce(func, delay) { ...@@ -1364,19 +1354,4 @@ function debounce(func, delay) {
func.apply(context, args); func.apply(context, args);
}, delay); }, delay);
}; };
} }
function getKeyByValue(map, value) { \ No newline at end of file
for (let [key, val] of map) {
if (val === value) {
return key;
}
if (Array.isArray(val) && val.includes(value)) {
return key;
}
}
}
function generateUUID() {
let array = new Uint32Array(4);
window.crypto.getRandomValues(array);
return array.join("-");
}
...@@ -41,9 +41,13 @@ export function lvMine(CompositeTable,cjson,codess,code) { ...@@ -41,9 +41,13 @@ export function lvMine(CompositeTable,cjson,codess,code) {
}); });
}else{ }else{
mincolumn=head.filter(item=>item.c>=12) mincolumn=head.filter(item=>item.c>=12)
} }
let min =''
// 获取最小列 // 获取最小列
const min = mincolumn[0].c - 1; if (mincolumn && mincolumn[0] && mincolumn[0].c ) {
min = mincolumn[0].c - 1;
}
// 使用 filter 方法筛选包含有效值的对象 // 使用 filter 方法筛选包含有效值的对象
const max = c.filter(obj => obj.v.v); const max = c.filter(obj => obj.v.v);
for (let i = max.length - 1; i >= 0; i--) { for (let i = max.length - 1; i >= 0; i--) {
......
...@@ -124,6 +124,36 @@ export const constantRoutes = [ ...@@ -124,6 +124,36 @@ export const constantRoutes = [
meta: { title: '修改生成配置' } meta: { title: '修改生成配置' }
} }
] ]
},
{
path: '/rules',
component: Layout,
hidden: true, // 隐藏在侧边栏和顶部栏
children: [
{
path: '',
component: (resolve) => require(['@/views/system/rules/rules'], resolve),
name: 'RulesPage',
meta: { title: '规则页面', icon: 'rules', breadcrumb: false }
}
]
},
{
path: '/rulescopy',
component: Layout,
hidden: true, // 隐藏在侧边栏和顶部栏
children: [
{
path: '',
component: (resolve) => require(['@/views/system/rules/rulesCopy'], resolve),
name: 'RulesPage',
meta: { title: '数据库规则页面', icon: 'rulesCopy', breadcrumb: false }
}
]
} }
] ]
......
...@@ -15,10 +15,8 @@ Vue.directive('dialogDrag', { ...@@ -15,10 +15,8 @@ Vue.directive('dialogDrag', {
// 鼠标按下,计算当前元素距离可视区的距离 // 鼠标按下,计算当前元素距离可视区的距离
const disX = e.clientX - headerElement.offsetLeft const disX = e.clientX - headerElement.offsetLeft
const disY = e.clientY - headerElement.offsetTop const disY = e.clientY - headerElement.offsetTop
console.log(e.clientX, headerElement.offsetLeft)
// 获取到的值带px 正则匹配替换 // 获取到的值带px 正则匹配替换
let styL, styT let styL, styT
console.log(sty.left)
// 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
if (sty.left.includes('%')) { if (sty.left.includes('%')) {
...@@ -33,7 +31,6 @@ Vue.directive('dialogDrag', { ...@@ -33,7 +31,6 @@ Vue.directive('dialogDrag', {
// 通过事件委托,计算移动的距离 // 通过事件委托,计算移动的距离
const l = e.clientX - disX const l = e.clientX - disX
const t = e.clientY - disY const t = e.clientY - disY
console.log(disX)
// 移动当前元素 // 移动当前元素
dragDialog.style.left = `${l + styL}px` dragDialog.style.left = `${l + styL}px`
dragDialog.style.top = `${t + styT}px` dragDialog.style.top = `${t + styT}px`
......
...@@ -43,7 +43,6 @@ service.interceptors.request.use(config => { ...@@ -43,7 +43,6 @@ service.interceptors.request.use(config => {
} }
return config return config
}, error => { }, error => {
console.log(error)
Promise.reject(error) Promise.reject(error)
}) })
......
This diff is collapsed.
...@@ -131,7 +131,6 @@ export default { ...@@ -131,7 +131,6 @@ export default {
//根据选中的下拉选项值获取相应的信息 //根据选中的下拉选项值获取相应的信息
getSuppliesTemplate(this.selectedOption).then(response => { getSuppliesTemplate(this.selectedOption).then(response => {
tempId = this.selectedOption; tempId = this.selectedOption;
console.log(this.uuid);
const sysSupplies = response.rows; const sysSupplies = response.rows;
this.luckysheetData = sysSupplies[0].templateContent; this.luckysheetData = sysSupplies[0].templateContent;
//将接收到的json存到json_data中 //将接收到的json存到json_data中
...@@ -239,14 +238,12 @@ export default { ...@@ -239,14 +238,12 @@ export default {
const exportJson = await cons; const exportJson = await cons;
await this.summary(exportJson); await this.summary(exportJson);
this.submit(exportJson); this.submit(exportJson);
//console.log('summary 执行完毕');
} catch (Error) { } catch (Error) {
this.$message({ this.$message({
message: Error.message, message: Error.message,
type: "error" type: "error"
}); });
console.log(Error.message);
console.log("这里是最外面的地方");
} finally { } finally {
// 导入完成后关闭遮罩层 // 导入完成后关闭遮罩层
this.showMask = false; this.showMask = false;
......
...@@ -230,7 +230,6 @@ export default { ...@@ -230,7 +230,6 @@ export default {
}, },
/**启用 */ /**启用 */
toggleEnable(ActClassification) { toggleEnable(ActClassification) {
console.log('你点击了【' + ActClassification.name + '】的开关控件,当前开关值:' + ActClassification.status);
let enableText = ['启用', '禁用']; let enableText = ['启用', '禁用'];
if (ActClassification.status === 0) { if (ActClassification.status === 0) {
toggleEnable(ActClassification.id).then((response) => { toggleEnable(ActClassification.id).then((response) => {
...@@ -331,7 +330,6 @@ export default { ...@@ -331,7 +330,6 @@ export default {
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
console.log(this.form)
this.$refs["form"].validate(valid => { this.$refs["form"].validate(valid => {
if (valid) { if (valid) {
if (this.form.id != null) { if (this.form.id != null) {
......
...@@ -364,7 +364,6 @@ export default { ...@@ -364,7 +364,6 @@ export default {
/**启用 */ /**启用 */
toggleEnable(actSuppliesDetails){ toggleEnable(actSuppliesDetails){
console.log('你点击了【' + actSuppliesDetails.detailsName+'】的开关控件,当前开关值:' + actSuppliesDetails.status);
let enableText=['启用','禁用']; let enableText=['启用','禁用'];
if(actSuppliesDetails.status === 0) { if(actSuppliesDetails.status === 0) {
toggleEnable(actSuppliesDetails.id).then((response) =>{ toggleEnable(actSuppliesDetails.id).then((response) =>{
......
...@@ -42,8 +42,6 @@ ...@@ -42,8 +42,6 @@
</el-col> </el-col>
</el-row> </el-row>
<!-- luckysheet容器 --> <!-- luckysheet容器 -->
<div id="luckysheet" style="margin: 0px; padding: 0px; position: absolute; width: 100%; height:80vh; z-index: 0"> <div id="luckysheet" style="margin: 0px; padding: 0px; position: absolute; width: 100%; height:80vh; z-index: 0">
</div> </div>
...@@ -54,5 +52,4 @@ ...@@ -54,5 +52,4 @@
</div> </div>
</template> </template>
<script src="@/conversion/conversion"></script> <script src="@/conversion/conversion"></script>
<style scoped src="./actsuppMine.css"></style> <style scoped src="./actsuppMine.css"></style>
...@@ -377,7 +377,6 @@ export default { ...@@ -377,7 +377,6 @@ export default {
/**启用 */ /**启用 */
toggleEnable(actSupplies){ toggleEnable(actSupplies){
console.log('你点击了【' + actSupplies.suppliesName+'】的开关控件,当前开关值:' + actSupplies.status);
let enableText=['启用','禁用']; let enableText=['启用','禁用'];
if(actSupplies.status === 0) { if(actSupplies.status === 0) {
toggleEnable(actSupplies.id).then((response) =>{ toggleEnable(actSupplies.id).then((response) =>{
......
...@@ -26,10 +26,6 @@ ...@@ -26,10 +26,6 @@
<el-button plain size="mini" icon="el-icon-download" type="primary">导入</el-button> </el-upload> <el-button plain size="mini" icon="el-icon-download" type="primary">导入</el-button> </el-upload>
</el-col> </el-col>
</el-row> </el-row>
<div v-if="showMask" class="mask">
<div class="loading-spinner"></div>
</div>
<el-table v-loading="loading" :data="comList"> <el-table v-loading="loading" :data="comList">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="单位" prop="mineId" :formatter="deptFormat" width="150"> <el-table-column label="单位" prop="mineId" :formatter="deptFormat" width="150">
......
...@@ -31,7 +31,6 @@ function setDataV(itemName, CName, data, CConfig, itemConfig) { ...@@ -31,7 +31,6 @@ function setDataV(itemName, CName, data, CConfig, itemConfig) {
let funV = null; let funV = null;
if (data[item]) { if (data[item]) {
if(item === '合计'){ if(item === '合计'){
console.log(data[item],1111)
} }
funV = getValue(data[item], CConfig[CName]) funV = getValue(data[item], CConfig[CName])
} else { } else {
......
...@@ -88,7 +88,6 @@ export default { ...@@ -88,7 +88,6 @@ export default {
}, },
methods: { methods: {
huizi(){ huizi(){
console.log(this.shuju)
this.views = '汇总'; this.views = '汇总';
luckysheet.create({ luckysheet.create({
container: "luckysheet", // Luckysheet 的容器元素 ID container: "luckysheet", // Luckysheet 的容器元素 ID
...@@ -375,12 +374,13 @@ export default { ...@@ -375,12 +374,13 @@ export default {
// 第三步 生成凭证 // 第三步 生成凭证
let template = await getSuppliesTemplate(1248) let template = await getSuppliesTemplate(1248)
let createData = tzcCreateData( let createData = tzcCreateData(
JSON.parse(template.rows[0].templateContent)[0], JSON.parse(template.rows[0].templateContent),
transformJson(res.data), transformJson(res.data),
luckysheet, luckysheet,
this.phone , this.phone,
this.wageMonth this.wageMonth
); );
luckysheet.create({ luckysheet.create({
container: "luckysheet", // Luckysheet 的容器元素 ID container: "luckysheet", // Luckysheet 的容器元素 ID
title: '凭证', // Excel 文件名 title: '凭证', // Excel 文件名
......
<template>
<testComponent
:kobj = ' { name: "林西矿", id: "011704" }'
:depssfilter = '[1282]'
></testComponent>
</template>
<script> <script>
//1.先使用import导入你要在该组件中使用的子组件 function debounce(func, delay) {
import testComponent from './index.vue' let timer;
export default { return function () {
//2.然后,在components中写入子组件 const context = this;
components: {testComponent}, const args = arguments;
clearTimeout(timer);
timer = setTimeout(function () {
func.apply(context, args);
}, delay);
};
} }
import { choose, migrateCellDatas } from '@/utils/YLW'
import {
getSuppliesTemplate,
} from '@/api/ruoyi-myLuckyexcel/myluckyexcel'
import LuckyExcel from "luckyexcel";
import {
listSuppliesTemplate,
} from "@/api/ruoyi-myLuckyexcel/myluckyexcel";
import { exportExcel } from '/public/exportExcel'
import { ruleselect } from '@/api/system/rules';
export default {
data() {
return {
views: 'a',
selectedOption: "",
wageMonth: "",
templateList: [],
// 凭证模版
pzTemplate: null,
// 汇总模版
huiZongTemplate: null,
oldhuz: null,
rulesshow: '',
rulessql:''
};
},
mounted() {
this.initialize()
},
methods: {
handleOptionChange(e) {
ruleselect(e).then(res => {
let rules = res.data
this.rulesshow = rules.filter(item => item.type == 0)
this.rulessql = rules.filter(item => item.type == 1)
})
getSuppliesTemplate(e).then((response) => {
let json_data = JSON.parse(response.rows[0].templateContent);
luckysheet.create({
container: "luckysheet", // Luckysheet 的容器元素 ID
title: '11111111', // Excel 文件名
data: json_data, // Excel 数据
allowEdit: false, //作用:是否允许前台编辑
showinfobar: false, //是否显示顶部名称栏
lang: "zh",
});
});
},
initialize() {
listSuppliesTemplate(this.queryParams).then((response) => {
this.templateList = response.rows
});
// getSuppliesTemplate(1248).then((response) => {
// // this.pzTemplate = JSON.parse(response.rows[0].templateContent);
// });
},
async handleFileChange(evt) {
const transformPromise = new Promise((resolve, reject) => {
LuckyExcel.transformExcelToLucky(evt, (lucksheetfile) => {
resolve(lucksheetfile);
});
});
transformPromise.then((result) => {
result = result.sheets
let newdata = choose(this.rulesshow, result, luckysheet.getAllSheets())
newdata.forEach(item => {
item.data = luckysheet.transToData(item.celldata)
item.celldata = luckysheet.transToCellData(item.data)
})
console.log(newdata)
luckysheet.create({
container: "luckysheet", // Luckysheet 的容器元素 ID
title: '11111111', // Excel 文件名
data: newdata, // Excel 数据
allowEdit: false, //作用:是否允许前台编辑
showinfobar: false, //是否显示顶部名称栏
lang: "zh",
});
// let luckydata = []
// this.rulessql.forEach(item => {
// if (item.firstRule == 1) {
// item.rules.forEach(obj => {
// if (obj.secondRule == 1) {
// let data = migrateCellDatas(obj, result)
// luckydata.push(...data)
// } else {
// let data = migrateCellDatas(obj, luckysheet.getAllSheets())
// luckydata.push(...data)
// }
// })
// }
// })
// console.log(luckydata)
});
},
handleExport: debounce(function () {
exportExcel(luckysheet.getAllSheets(), '林西');
}, 500),
importData(e) {
},
},
};
</script> </script>
<template>
<div class="app-container">
<el-form ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="模板" prop="name">
<el-select @change="handleOptionChange" v-model="selectedOption" size="mini" filterable
placeholder="请选择您要查看的模板">
<el-option v-for="item in templateList" :key="item.id" :label="item.templateName" :value="item.id"
:disabled="item.disabled">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="时间" prop="wageMonth">
<el-date-picker v-model="wageMonth" value-format="yyyy-MM" type="month" placeholder="选择月">
</el-date-picker>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-upload2" @click="handleExport" size="mini">导出</el-button>
</el-col>
<el-col :span="1.5">
<el-upload type="file" name="file" ref="upload" :before-upload="handleFileChange" action=''
accept='.xlsx' :limit="1" :show-file-list=false>
<el-button plain :disabled="!wageMonth || !selectedOption" size="mini" icon="el-icon-download"
type="primary">导入</el-button>
</el-upload>
</el-col>
<el-col :span="1.5">
<el-button plain icon="el-icon-upload2" @click="scpz" v-if="views === 'b'" size="mini">生成凭证</el-button>
<el-button plain icon="el-icon-upload2" @click="fhhz" v-if="views === 'c'" size="mini">返回汇总</el-button>
</el-col>
</el-row>
<div id="luckysheet"
style="margin: 0px; padding: 0px; position: absolute; width: 100%; height:80vh; z-index: 0">
</div>
</div>
</template>
<style scoped src="@/assets/css/power/index.css"></style>
...@@ -113,7 +113,6 @@ export default { ...@@ -113,7 +113,6 @@ export default {
luckysheet.create(options); luckysheet.create(options);
}, },
handleSelectChange() { handleSelectChange() {
console.log(this.date, this.mine)
}, },
handleExport: debounce(function () { handleExport: debounce(function () {
// 导出 // 导出
......
...@@ -232,7 +232,6 @@ export default { ...@@ -232,7 +232,6 @@ export default {
const sysSupplies = response.rows; const sysSupplies = response.rows;
this.luckysheetData = sysSupplies[0].templateContent; this.luckysheetData = sysSupplies[0].templateContent;
console.log(sysSupplies)
var json_data = JSON.parse(sysSupplies[0].templateContent); var json_data = JSON.parse(sysSupplies[0].templateContent);
roleList(this.selectedOption).then(response => { roleList(this.selectedOption).then(response => {
...@@ -1479,18 +1478,6 @@ export default { ...@@ -1479,18 +1478,6 @@ export default {
type: "warning" type: "warning"
}); });
} }
// 记录结束时间
const endTime = new Date().getTime();
// 计算执行时间(以毫秒为单位)
const executionTime = endTime - startTime;
const executionTime1 = endTime1 - startTime1;
const executionTime2 = endTime2 - startTime2;
const executionTime3 = endTime3 - startTime3;
// 输出执行时间
console.log(`代码执行时间:${executionTime} 毫秒`);
console.log(`转换编码执行时间:${executionTime1} 毫秒`);
console.log(`map汇总执行时间:${executionTime2} 毫秒`);
console.log(`页面渲染执行时间:${executionTime3} 毫秒`);
resolve(response.rows); resolve(response.rows);
innerResolve(); // 标记当前异步任务完成 innerResolve(); // 标记当前异步任务完成
}).catch(Error => { }).catch(Error => {
...@@ -1505,7 +1492,6 @@ export default { ...@@ -1505,7 +1492,6 @@ export default {
} }
//切换到想要的sheet //切换到想要的sheet
luckysheet.setSheetActive(0); luckysheet.setSheetActive(0);
console.log(luckysheet.getConfig(0))
Promise.all(asyncTasks) Promise.all(asyncTasks)
.then(() => { .then(() => {
resolve(); // 所有异步请求执行完成 resolve(); // 所有异步请求执行完成
......
...@@ -262,7 +262,6 @@ export default { ...@@ -262,7 +262,6 @@ export default {
const minvalue = this.miningValue.find(obj => obj.id === this.mining) const minvalue = this.miningValue.find(obj => obj.id === this.mining)
const Luckysheetlabel = this.luckyrule.find(obj => obj.id === this.selectedRule); const Luckysheetlabel = this.luckyrule.find(obj => obj.id === this.selectedRule);
console.log(this.cleaning, this.mining)
if (this.date == '' || this.date == null) { if (this.date == '' || this.date == null) {
this.disableNextButton = true; this.disableNextButton = true;
this.$message.error('请选择时间日期!'); this.$message.error('请选择时间日期!');
...@@ -273,7 +272,6 @@ export default { ...@@ -273,7 +272,6 @@ export default {
this.disableNextButton = true; this.disableNextButton = true;
this.$message.error('请选择清洗规则!'); this.$message.error('请选择清洗规则!');
} else if (!this.selectname.includes(this.mine)) { } else if (!this.selectname.includes(this.mine)) {
console.log('2222')
this.disableNextButton = true; this.disableNextButton = true;
this.$message.error('清洗规则和所属矿区必须一致!'); this.$message.error('清洗规则和所属矿区必须一致!');
} }
...@@ -1609,7 +1607,6 @@ export default { ...@@ -1609,7 +1607,6 @@ export default {
}, },
//成本表往凭证但转 //成本表往凭证但转
Vouchers(duplicateData) { Vouchers(duplicateData) {
console.log(duplicateData)
this.detail = duplicateData.map(item => { this.detail = duplicateData.map(item => {
if (typeof item.v.v === 'number') { if (typeof item.v.v === 'number') {
item.v.v = Number(item.v.v.toFixed(2)); // 如果是数字,则进行处理 item.v.v = Number(item.v.v.toFixed(2)); // 如果是数字,则进行处理
...@@ -1650,7 +1647,7 @@ export default { ...@@ -1650,7 +1647,7 @@ export default {
"*核算账簿", "*核算账簿",
"*单据日期", "*单据日期",
"*凭证类型", "*凭证类型",
"*制单人", "制单人",
"*分录摘要", "*分录摘要",
"*币种", "*币种",
"本币汇率类型", "本币汇率类型",
...@@ -1783,8 +1780,7 @@ export default { ...@@ -1783,8 +1780,7 @@ export default {
} }
} }
} }
console.log(this.ImportTables.historyRole)
console.log(historyContent)
this.ImportTables.historyRole = JSON.stringify(historyContent) this.ImportTables.historyRole = JSON.stringify(historyContent)
for (let i = 0; i < sum.length; i++) { for (let i = 0; i < sum.length; i++) {
for (let j = 0; j < filteredArr.length; j++) { for (let j = 0; j < filteredArr.length; j++) {
......
...@@ -230,7 +230,6 @@ export default { ...@@ -230,7 +230,6 @@ export default {
data: exportJson.sheets, data: exportJson.sheets,
userInfo: exportJson.info.name.creator userInfo: exportJson.info.name.creator
}) })
console.log(exportJson.sheets,'2222222222222')
data1=exportJson.sheets[0]; data1=exportJson.sheets[0];
name1=exportJson.sheets[0].name; name1=exportJson.sheets[0].name;
let suffixArr = exportJson.info.name.split('.'); let suffixArr = exportJson.info.name.split('.');
......
export function ex(luckysheet) { import { setXColumn, tzcCreateData, transformJson } from '@/utils/tzc'
import Decimal from 'decimal.js';
import { getyy, getSuppliesTemplate } from '@/api/ruoyi-myLuckyexcel/myluckyexcel'
import source from 'echarts/src/data/Source'
export function ex(luckysheetdata, roleObj) {
let list = [] let list = []
for (let index = 1; index < luckysheet.length; index++) { for (let index = 1; index < luckysheetdata.length; index++) {
let funct = {} let funct = {}
luckysheet[index].forEach((item, e) => { luckysheetdata[index].forEach((item, e) => {
if (item &&item.v && (e == 5 || e == 9 || e == 10)) { if (item && item.v && (e == 5 || e == 9 || e == 10)) {
let name = luckysheet[0][e].v; let name = luckysheetdata[0][e].v;
funct[name] = item.v; funct[name] = item.v;
} }
}); });
list.push(funct); list.push(funct);
} }
console.log(list) let result = list.reduce((acc, curr) => {
let existing = acc.find(item => item.费用来源 === curr.费用来源 && item.一级材料类别 === curr.一级材料类别);
if (existing) {
existing.总额 = new Decimal(existing.总额).plus(curr.总额).toString();
} else {
acc.push({ ...curr });
}
return acc;
}, []);
let newdata = luckysheet.transToData(roleObj[0].celldata);
let headers = setXColumn(newdata, 3)
let obj = {
}
result.forEach(item => {
if (obj[item['费用来源']]) {
obj[item['费用来源']].push(item)
} else {
obj[item['费用来源']] = [item]
}
})
Object.entries(obj).forEach(([source, value], rowI) => {
let row = newdata[rowI + 4]
// item.费用来源 === curr.费用来源 && item.一级材料类别
row[0] = { ct: { fa: '@', t: 's' }, fc: "#000000", ff: "宋体", v: source }
value.forEach(item => {
let ci = headers[item['一级材料类别']]
if (ci > -1) {
row[ci] = { ct: { fa: '@', t: 's' }, fc: "#000000", ff: "宋体", v: item['总额'] }
}
})
})
roleObj[0].celldata = luckysheet.transToCellData(newdata)
roleObj[0].calcChain = [];
let as = roleObj[0].celldata.filter(
(item) => item.v.f
);
as.forEach((item) => {
let sum = {
index: roleObj[0].index,
r: item.r,
c: item.c,
};
roleObj[0].calcChain.push(sum);
});
luckysheet.destroy();
luckysheet.create({
forceCalculation: true,
container: "luckysheet", // Luckysheet 的容器元素 ID
lang: 'zh',
title: '汇总模板',
data: roleObj
});
return true
}
export async function Certificate_method(celldatas, mining_id, date, phone) {
let selectedOption = [
{
value: '待分析材料分配',
id: '010102',
noIn: '基本生产原煤-火工品'
},
{
value: '材料分配',
id: '011701',
noIn: '',
},
{
value: '材料分配',
id: '011704',
noIn: '基本生产原煤-木材'
},
{
value: '本月材料分析',
id: '011702',
noIn: ''
},
{
value: '转本月材料分配',
id: '010101',
noIn: '基本生产原煤-火工品'
},
{
value: '转本月材料分配',
id: '011204',
noIn: ''
},
{
value: '原材料分配',
id: '010105',
noIn: '基本生产原煤-火工品'
},
{
value: '宏丰',
id: '011502',
noIn: ''
},
{
value: '云飞',
id: '011504',
noIn: ''
},
{
value: '中润',
id: '011706',
noIn: ''
},
]
let result = selectedOption.find(item => item.id == mining_id);
let merge = []
let disposition = {
endcolumn: '12',//结束列
startcolumn: '1',//开始列
endrow: '28',//结束行
startrow: '4',//开始行
headcolumn: '0',//表头列
headrow: '3',//表头行
}
celldatas.forEach(item => {
if (item.v && item.v.v) {
let funct = {
r: item.r,
c: item.c,
v: item.v.v
}
merge.push(funct)
}
}
)
let head = merge.filter(item => item.r == disposition.headrow && item.c <= disposition.endcolumn && item.c > disposition.headcolumn);
let classary = merge.filter(item => item.c == disposition.headcolumn && item.r > disposition.headrow && item.r < disposition.endrow);
// 筛选数据
let data = merge.filter(item =>
item.r >= disposition.startrow && item.r <= disposition.endrow &&
item.c >= disposition.startcolumn && item.c <= disposition.endcolumn
)
data.forEach(item => {
classary.forEach(obj => {
if (item.r == obj.r) {
item.r = obj.v
}
})
head.forEach(obj => {
if (item.c == obj.c) {
item.c = obj.v
}
})
})
const borrow = data.map(item => {
const newR = item.r.replace(/-/g, '');
const newKey = `${newR}-${item.c}`;
return { "name": newKey, "money": item.v, 'mining': result.id, 'is_debit': 0, 'classary': result.value };
});
let funct = {
name: '其他应付款_待分析',
money: new Decimal(0),
is_debit: 1,
classary: result.value,
mining: result.id
}
let loan = []
borrow.forEach(item => {
if (item.name !== result.noIn) {
funct.money = funct.money.plus(new Decimal(item.money));
} else {
const newItem = { ...item };
newItem.is_debit = 1
}
})
loan.push(funct)
let res = await getyy(JSON.stringify({ borrow, loan }))
let template = await getSuppliesTemplate(1248)
console.log(template)
let createData = tzcCreateData(
JSON.parse(template.rows[0].templateContent),
transformJson(res.data),
luckysheet,
date,
phone
);
console.log(createData)
luckysheet.create({
container: "luckysheet", // Luckysheet 的容器元素 ID
title: '凭证', // Excel 文件名
allowEdit: false, //作用:是否允许前台编辑
data: createData, // Excel 数据
showinfobar: false, //是否显示顶部名称栏
lang: "zh",
});
} }
\ No newline at end of file
...@@ -482,7 +482,6 @@ export default { ...@@ -482,7 +482,6 @@ export default {
} }
}); });
}) })
console.log(newData)
let self = this; let self = this;
let luckyData = luckysheet.getAllSheets(); let luckyData = luckysheet.getAllSheets();
let data = luckyData[0].data let data = luckyData[0].data
...@@ -596,7 +595,7 @@ export default { ...@@ -596,7 +595,7 @@ export default {
// 第三步 生成凭证 // 第三步 生成凭证
let template = await getSuppliesTemplate(1248) let template = await getSuppliesTemplate(1248)
let createData = tzcCreateData( let createData = tzcCreateData(
JSON.parse(template.rows[0].templateContent)[0], JSON.parse(template.rows[0].templateContent),
transformJson(res.data), transformJson(res.data),
luckysheet, luckysheet,
13112312312, 13112312312,
...@@ -636,7 +635,7 @@ export default { ...@@ -636,7 +635,7 @@ export default {
// 第三步 生成凭证 // 第三步 生成凭证
let template = await getSuppliesTemplate(1248) let template = await getSuppliesTemplate(1248)
let createData = tzcCreateData( let createData = tzcCreateData(
JSON.parse(template.rows[0].templateContent)[0], JSON.parse(template.rows[0].templateContent),
transformJson(res.data), transformJson(res.data),
luckysheet, luckysheet,
13112312312, 13112312312,
...@@ -661,8 +660,6 @@ export default { ...@@ -661,8 +660,6 @@ export default {
item.fj = /^\d/.test(newdata[i - 1].name) ? newdata[i - 1].name : newdata[i - 1].fj item.fj = /^\d/.test(newdata[i - 1].name) ? newdata[i - 1].name : newdata[i - 1].fj
} }
}) })
console.log(newdata)
console.log(data)
}, },
jxdfxt() { jxdfxt() {
let data = luckysheet.getAllSheets().find(item => { let data = luckysheet.getAllSheets().find(item => {
...@@ -752,8 +749,7 @@ export default { ...@@ -752,8 +749,7 @@ export default {
return [transformedJSON[key], value]; return [transformedJSON[key], value];
})) }))
}) })
console.log(transformedJSON)
console.log(transformed)
} }
}, },
mounted() { mounted() {
......
...@@ -395,7 +395,6 @@ export default { ...@@ -395,7 +395,6 @@ export default {
}else{ }else{
name1=exportJson.sheets[0].name; name1=exportJson.sheets[0].name;
} }
//console.log(name1);
datast=exportJson.sheets; datast=exportJson.sheets;
namest=exportJson.info.name; namest=exportJson.info.name;
let suffixArr = exportJson.info.name.split('.'); let suffixArr = exportJson.info.name.split('.');
......
...@@ -150,7 +150,6 @@ ...@@ -150,7 +150,6 @@
<!-- 生成输入框 --> <!-- 生成输入框 -->
<div v-for="index in instea" :key="index"> <div v-for="index in instea" :key="index">
<span v-if="isTitle && index == 1" style="color:red;"> <b> 物料编码 </b> </span> <span v-if="isTitle && index == 1" style="color:red;"> <b> 物料编码 </b> </span>
<span v-if="isTitle && index == 2" style="color:red;"> <b> 部门名称 </b> </span> <span v-if="isTitle && index == 2" style="color:red;"> <b> 部门名称 </b> </span>
<span v-if="isTitle && index == 3" style="color:red;"> <b> 计量单位 </b> </span> <span v-if="isTitle && index == 3" style="color:red;"> <b> 计量单位 </b> </span>
...@@ -183,11 +182,9 @@ ...@@ -183,11 +182,9 @@
<el-form-item label="物料编码所在列" prop="cleanIng" class="form-item-inline" v-if="optionid === 6"> <el-form-item label="物料编码所在列" prop="cleanIng" class="form-item-inline" v-if="optionid === 6">
<el-input-number size="medium" v-model="cleanIng.CodeColumn" :min="1" :step="1">1</el-input-number> <el-input-number size="medium" v-model="cleanIng.CodeColumn" :min="1" :step="1">1</el-input-number>
</el-form-item> </el-form-item>
<el-form-item label="导入表行坐标" prop="detailYH" class="form-item-inline" v-else> <el-form-item label="导入表行坐标" prop="detailYH" class="form-item-inline" v-else>
<el-input-number size="medium" v-model="detailYH[index - 1]" :min="1" :step="1">1</el-input-number> <el-input-number size="medium" v-model="detailYH[index - 1]" :min="1" :step="1">1</el-input-number>
</el-form-item> </el-form-item>
<el-form-item label="部门所在列" prop="cleanIng" class="form-item-inline" v-if="optionid === 6"> <el-form-item label="部门所在列" prop="cleanIng" class="form-item-inline" v-if="optionid === 6">
<el-input-number size="medium" v-model="cleanIng.DepartmentColumn" :min="1" <el-input-number size="medium" v-model="cleanIng.DepartmentColumn" :min="1"
:step="1">1</el-input-number> :step="1">1</el-input-number>
...@@ -524,7 +521,6 @@ export default { ...@@ -524,7 +521,6 @@ export default {
/**启用 */ /**启用 */
toggleEnable(suppliesRole) { toggleEnable(suppliesRole) {
console.log('你点击了【' + suppliesRole.s + '】的开关控件,当前开关值:' + suppliesRole.status);
let enableText = ['启用', '禁用']; let enableText = ['启用', '禁用'];
if (suppliesRole.status === 0) { if (suppliesRole.status === 0) {
toggleEnable(suppliesRole.id).then((response) => { toggleEnable(suppliesRole.id).then((response) => {
......
...@@ -497,7 +497,6 @@ export default { ...@@ -497,7 +497,6 @@ export default {
}, },
toggleEnable(suppliesRoleDetail) { toggleEnable(suppliesRoleDetail) {
console.log('你点击了【' + suppliesRoleDetail.s + '】的开关控件,当前开关值:' + suppliesRoleDetail.status);
let enableText = ['启用', '禁用']; let enableText = ['启用', '禁用'];
if (suppliesRoleDetail.status === 0) { if (suppliesRoleDetail.status === 0) {
toggleEnable(suppliesRoleDetail.id).then((response) => { toggleEnable(suppliesRoleDetail.id).then((response) => {
......
...@@ -33,7 +33,7 @@ module.exports = { ...@@ -33,7 +33,7 @@ module.exports = {
proxy: { proxy: {
// detail: https://cli.vuejs.org/config/#devserver-proxy // detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: { [process.env.VUE_APP_BASE_API]: {
// target: `http://192.168.0.192:8080`, target: `http://192.168.0.59:8288`,
// target: `http://192.168.0.61:8080`, // target: `http://192.168.0.61:8080`,
// target: `http://192.168.111.228:8080`, // target: `http://192.168.111.228:8080`,
...@@ -45,7 +45,7 @@ module.exports = { ...@@ -45,7 +45,7 @@ module.exports = {
//target: `http://192.168.3.247:8080`, //target: `http://192.168.3.247:8080`,
// target: `http://localhost:5001`, // target: `http://localhost:5001`,
target: `http://192.168.111.226:8080`, // target: `http://192.168.111.226:8080`,
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
......
package com.ruoyi.system.service.impl; package com.ruoyi.system.service.impl;
import com.ruoyi.system.mapper.PowerDisplayMapper; import com.ruoyi.system.mapper.PowerDisplayMapper;
import com.ruoyi.system.model.newrule.NewRuleRequestModel;
import com.ruoyi.system.model.power.dao.PowerClassificationQueryDao; import com.ruoyi.system.model.power.dao.PowerClassificationQueryDao;
import com.ruoyi.system.model.power.dao.PowerControlDao; import com.ruoyi.system.model.power.dao.PowerControlDao;
import com.ruoyi.system.model.power.dto.ElectricityIntoTheParameterDto;
import com.ruoyi.system.model.power.dto.PowerDisplayDto; import com.ruoyi.system.model.power.dto.PowerDisplayDto;
import com.ruoyi.system.service.PowerDisplayService; import com.ruoyi.system.service.PowerDisplayService;
import com.ruoyi.system.service.impl.saveOnTheLargeScreenPower.*; import com.ruoyi.system.service.impl.saveOnTheLargeScreenPower.*;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -22,15 +19,15 @@ import java.util.stream.Collectors; ...@@ -22,15 +19,15 @@ import java.util.stream.Collectors;
*/ */
@Service @Service
public class PowerDisplayServiceImpl implements PowerDisplayService { public class PowerDisplayServiceImpl implements PowerDisplayService {
private PowerDisplayMapper powerDisplayMapper; private final PowerDisplayMapper powerDisplayMapper;
PowerDisplayServiceImpl(PowerDisplayMapper powerDisplayMapper) { PowerDisplayServiceImpl(PowerDisplayMapper powerDisplayMapper) {
this.powerDisplayMapper = powerDisplayMapper; this.powerDisplayMapper = powerDisplayMapper;
} }
@Override @Override
public void peek(List<ElectricityIntoTheParameterDto> electricityIntoTheParameterDtoDtoList) { public void peek(List<NewRuleRequestModel> electricityIntoTheParameterDtoDtoList) {
String mindId = electricityIntoTheParameterDtoDtoList.get(0).getMindId().replaceAll(" ", ""); String mindId = electricityIntoTheParameterDtoDtoList.get(0).getMineid().replaceAll(" ", "");
List<PowerControlDao> controlList = powerDisplayMapper.selControl(mindId); List<PowerControlDao> controlList = powerDisplayMapper.selControl(mindId);
List<PowerDisplayDto> powerDisplayDtoList = new ArrayList<>(); List<PowerDisplayDto> powerDisplayDtoList = new ArrayList<>();
Class<PowerDisplayDto> powerDisplayDtoClass = PowerDisplayDto.class; Class<PowerDisplayDto> powerDisplayDtoClass = PowerDisplayDto.class;
...@@ -38,6 +35,8 @@ public class PowerDisplayServiceImpl implements PowerDisplayService { ...@@ -38,6 +35,8 @@ public class PowerDisplayServiceImpl implements PowerDisplayService {
electricityIntoTheParameterDtoDtoList.parallelStream().forEach(v -> { electricityIntoTheParameterDtoDtoList.parallelStream().forEach(v -> {
PowerDisplayDto displayDto; PowerDisplayDto displayDto;
if (mindId.equals("011704") && v.getRow().equals("电价(含税)")) return; if (mindId.equals("011704") && v.getRow().equals("电价(含税)")) return;
if (mindId.equals("010105") && (v.getRow().contains("(尖)") || v.getRow().contains("(峰)") || v.getRow().contains("(平)") || v.getRow().contains("(谷)") || v.getColoumn().equals("单价")))
return;
if (powerDisplayDtoList.size() > 0) { if (powerDisplayDtoList.size() > 0) {
b.set(powerDisplayDtoList.parallelStream().anyMatch(a -> a.getClassificationName().equals(v.getRow()))); b.set(powerDisplayDtoList.parallelStream().anyMatch(a -> a.getClassificationName().equals(v.getRow())));
} }
...@@ -62,12 +61,13 @@ public class PowerDisplayServiceImpl implements PowerDisplayService { ...@@ -62,12 +61,13 @@ public class PowerDisplayServiceImpl implements PowerDisplayService {
}); });
List<PowerClassificationQueryDao> dao = powerDisplayMapper.selectClassificationToMid(mindId); List<PowerClassificationQueryDao> dao = powerDisplayMapper.selectClassificationToMid(mindId);
SaveOnTheLargeScreenImpl saveOnTheLargeScreen = null; SaveOnTheLargeScreenImpl saveOnTheLargeScreen = null;
List<String> linXi = Arrays.asList("011704"); List<String> linXi = Collections.singletonList("011704");
List<String> lvJiaTuo = Arrays.asList("011702"); List<String> lvJiaTuo = Collections.singletonList("011702");
List<String> danHou = Arrays.asList("011204"); List<String> danHou = Collections.singletonList("011204");
List<String> dongHuanTuo = Arrays.asList("010102"); List<String> dongHuanTuo = Collections.singletonList("010102");
List<String> qianJiaYing = Collections.singletonList("010105");
if (linXi.contains(mindId)) { if (linXi.contains(mindId)) {
List<ElectricityIntoTheParameterDto> collect = electricityIntoTheParameterDtoDtoList.parallelStream().filter(v -> v.getRow().equals("电价(含税)")).collect(Collectors.toList()); List<NewRuleRequestModel> collect = electricityIntoTheParameterDtoDtoList.parallelStream().filter(v -> v.getRow().equals("电价(含税)")).collect(Collectors.toList());
if (collect.size() != 0) { if (collect.size() != 0) {
collect.parallelStream().forEach(v -> { collect.parallelStream().forEach(v -> {
Optional<PowerControlDao> first = controlList.parallelStream().filter(a -> a.getColumn().equals(v.getColoumn())).findFirst(); Optional<PowerControlDao> first = controlList.parallelStream().filter(a -> a.getColumn().equals(v.getColoumn())).findFirst();
...@@ -91,9 +91,34 @@ public class PowerDisplayServiceImpl implements PowerDisplayService { ...@@ -91,9 +91,34 @@ public class PowerDisplayServiceImpl implements PowerDisplayService {
saveOnTheLargeScreen = new SaveOnTheLargeScreenImpl(new DanHou()); saveOnTheLargeScreen = new SaveOnTheLargeScreenImpl(new DanHou());
} else if (dongHuanTuo.contains(mindId)) { } else if (dongHuanTuo.contains(mindId)) {
saveOnTheLargeScreen = new SaveOnTheLargeScreenImpl(new DongHuanTuo()); saveOnTheLargeScreen = new SaveOnTheLargeScreenImpl(new DongHuanTuo());
} else if (qianJiaYing.contains(mindId)) {
List<NewRuleRequestModel> collect = electricityIntoTheParameterDtoDtoList
.parallelStream()
.filter(v -> v.getRow().contains("(尖)") || v.getRow().contains("(峰)") || v.getRow().contains("(平)") || v.getRow().contains("(谷)"))
.collect(Collectors.toList());
if (collect.size() != 0) {
PowerDisplayDto displayDto;
for (NewRuleRequestModel dto : collect) {
String[] split = dto.getRow().split("-");
Optional<PowerDisplayDto> first = powerDisplayDtoList.parallelStream().filter(v -> v.getClassificationName().equals(split[0])).findFirst();
if (first.isPresent()) displayDto = first.get();
else {
displayDto = new PowerDisplayDto();
displayDto.setClassificationName(split[0]);
}
try {
Method method = powerDisplayDtoClass.getMethod("set" + dto.getColoumn(), String.class);
method.invoke(displayDto, dto.getValue());
} catch (Exception e) {
e.printStackTrace();
}
}
}
saveOnTheLargeScreen = new SaveOnTheLargeScreenImpl(new QianJiaYing());
} }
if (saveOnTheLargeScreen != null) { if (saveOnTheLargeScreen != null) {
List<PowerDisplayDto> list = saveOnTheLargeScreen.save(mindId, powerDisplayDtoList, dao); List<PowerDisplayDto> list = saveOnTheLargeScreen.save(mindId, powerDisplayDtoList, dao);
if (mindId.equals("010105")) method(list, electricityIntoTheParameterDtoDtoList);
list.parallelStream().forEach(v -> { list.parallelStream().forEach(v -> {
if (v.getLevelOneClassification() == null || "".equals(v.getLevelOneClassification())) if (v.getLevelOneClassification() == null || "".equals(v.getLevelOneClassification()))
v.setLevelOneClassification("其他"); v.setLevelOneClassification("其他");
...@@ -101,4 +126,26 @@ public class PowerDisplayServiceImpl implements PowerDisplayService { ...@@ -101,4 +126,26 @@ public class PowerDisplayServiceImpl implements PowerDisplayService {
powerDisplayMapper.insert(list); powerDisplayMapper.insert(list);
} }
} }
/**
* 010105电价的处理方法
*
* @param list
* @param electricityIntoTheParameterDtoDtoList
*/
private void method(List<PowerDisplayDto> list, List<NewRuleRequestModel> electricityIntoTheParameterDtoDtoList) {
for (PowerDisplayDto dto : list) {
if ((dto.getElectricityPriceFlat() == null || dto.getElectricityPriceFlat().equals("")) && (dto.getElectricityPricePeak() == null || dto.getElectricityPricePeak().equals("")) &&
(dto.getElectricityPriceTip() == null || dto.getElectricityPriceTip().equals("")) && (dto.getElectricityPriceValley() == null || dto.getElectricityPriceValley().equals(""))) {
Optional<NewRuleRequestModel> first = electricityIntoTheParameterDtoDtoList.parallelStream().filter(v -> (v.getRow().equals(dto.getLevelOneClassification()) || v.getRow().equals(dto.getLevelTwoClassification())) && v.getColoumn().equals("单价")).findFirst();
if (first.isPresent()) {
NewRuleRequestModel model = first.get();
dto.setElectricityPriceValley(model.getValue());
dto.setElectricityPriceFlat(model.getValue());
dto.setElectricityPricePeak(model.getValue());
dto.setElectricityPriceTip(model.getValue());
}
}
}
}
} }
package com.ruoyi.system.service.impl.saveOnTheLargeScreenPower;
import com.ruoyi.system.model.power.dao.PowerClassificationQueryDao;
import com.ruoyi.system.model.power.dao.PowerControlDao;
import com.ruoyi.system.model.power.dto.PowerDisplayDto;
import java.util.List;
/**
* 2024/8/27
*/
public class DongHuanTuo implements SaveOnTheLargeScreen{
@Override
public List<PowerDisplayDto> save(String mindId, List<PowerDisplayDto> powerDisplayDtoList, List<PowerClassificationQueryDao> dao) {
powerDisplayDtoList.parallelStream().forEach(v -> {
for (PowerClassificationQueryDao queryDao : dao) {
if (queryDao.getClassificationName().equals(v.getClassificationName())){
v.setLevelOneClassification(queryDao.getLevelOneClassification());
v.setLevelTwoClassification(queryDao.getLevelTwoClassification());
v.setLevelThreeClassification(queryDao.getLevelThreeClassification());
dao.remove(queryDao);
break;
}
}
});
return powerDisplayDtoList;
}
}
package com.ruoyi.system.service.impl.saveOnTheLargeScreenPower;
import com.ruoyi.system.model.power.dao.PowerClassificationQueryDao;
import com.ruoyi.system.model.power.dto.PowerDisplayDto;
import java.util.List;
/**
* 2024/8/28
*/
public class QianJiaYing implements SaveOnTheLargeScreen{
@Override
public List<PowerDisplayDto> save(String mindId, List<PowerDisplayDto> powerDisplayDtoList, List<PowerClassificationQueryDao> dao) {
powerDisplayDtoList.parallelStream().forEach(v -> {
for (PowerClassificationQueryDao queryDao : dao) {
if (v.getClassificationName() != null && v.getClassificationName().equals(queryDao.getClassificationName())) {
v.setLevelOneClassification(queryDao.getLevelOneClassification());
v.setLevelTwoClassification(queryDao.getLevelTwoClassification());
v.setLevelThreeClassification(queryDao.getLevelThreeClassification());
break;
}
}
});
return null;
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment