From c4f0393ee2ef22eeb180fb384a15316566747259 Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期三, 20 三月 2024 10:17:14 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/silk/silk-web --- src/views/systemSetting/silkStandardSetting/index.vue | 184 +++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 164 insertions(+), 20 deletions(-) diff --git a/src/views/systemSetting/silkStandardSetting/index.vue b/src/views/systemSetting/silkStandardSetting/index.vue index 43383a0..f5a7c22 100644 --- a/src/views/systemSetting/silkStandardSetting/index.vue +++ b/src/views/systemSetting/silkStandardSetting/index.vue @@ -5,7 +5,7 @@ <template slot="leftButton"> <el-button size="small" type="primary" @click="addBtnClick" :disabled="!isEdit">鏂板</el-button> <el-button size="small" type="primary" @click="refreshClick">鍒锋柊</el-button> - <el-button size="small" type="primary" @click="printClick">鎵撳嵃</el-button> + <el-button size="small" type="primary" @click="printClick" disabled>鎵撳嵃</el-button> </template> </CommonSearch> </div> @@ -26,6 +26,7 @@ @deleteClick="clearupProject" @addColumnClick="addColumnClick" @clearupColumn="clearupColumn" + @addColumnInputChange="addColumnInputChange" > </SilkTableList> </div> @@ -35,6 +36,8 @@ <script> import SilkTableList from "@/views/systemSetting/silkStandardSetting/components/silkTableList" +import { getRankStandard, saveRankStandard } from "@/api/systemSetting/silkStandardSetting" +import { getDataByType } from "@/api/data" export default { name: "silkStandardSetting", props: {}, @@ -46,29 +49,90 @@ isEdit: false, silkTableList: {}, tableData: [], - tableColumn: [ - { label: "妫�鏌ラ」鐩悕绉�", prop: "projectName", projectName: true }, - { label: "寮�濮嬬氦搴�", prop: "start", inputFloat: true }, - { label: "缁撴潫绾ゅ害", prop: "end", inputFloat: true }, - { label: "閲庣氦", prop: "price1", inputFloat: true }, - { label: "澶ч噹", prop: "price2", inputFloat: true }, - { label: "鐗归噹", prop: "price3", inputFloat: true } + defaultColumn: [ + { + label: "妫�鏌ラ」鐩悕绉�", + prop: "checkItem", + projectName: true, + isCallMethod: true, + getCallMethod: this.getCheckItemName + }, + { label: "寮�濮嬬氦搴�", prop: "startFineness", inputFloat: true }, + { label: "缁撴潫绾ゅ害", prop: "endFineness", inputFloat: true }, + { label: "閲庣氦", prop: "rankA", inputFloat: true }, + { label: "澶ч噹", prop: "rankB", inputFloat: true }, + { label: "鐗归噹", prop: "rankC", inputFloat: true } ], + tableColumn: [], columnNum: 0, dataObj: { - projectName: "", - start: 0, - end: 0, - price1: 0, - price2: 0, - price3: 0 - } + checkItem: 1, + startFineness: 0, + endFineness: 0, + rankA: 0, + rankB: 0, + rankC: 0 + }, + projectOptions: getDataByType("projectOptions"), + rankObj: {}, + columnInputList: [], + dynamicsRanks: [] } }, created() { this.setTableForm() + this.getData() }, methods: { + // 鑾峰彇鏁版嵁 + getData() { + getRankStandard().then((res) => { + console.log(res) + if (res.code === 200) { + if (res.data.length > 0) { + this.tableData = [] + this.tableColumn = this.defaultColumn + this.columnDataProcess(res.data[0].dynamicsRanks) + this.rankObj = {} + this.allDataProcess(res.data) + } + } + }) + }, + // 鏁翠綋鏁版嵁澶勭悊 + allDataProcess(dataList) { + let rankList = dataList.map((ite) => { + for (let i = 0; i < ite.dynamicsRanks.length; i++) { + this.$set(this.rankObj, ite.dynamicsRanks[i].rankProp, ite.dynamicsRanks[i].rankValue) + this.$set(this.dataObj, ite.dynamicsRanks[i].rankProp, 0) + } + return { + ...ite, + ...this.rankObj + } + }) + this.tableData = rankList || [] + this.silkTableList.tableData = this.tableData + }, + // 鍒椾俊鎭暟鎹鐞� + columnDataProcess(data) { + this.columnInputList = data.map((ite) => { + return { ...ite } + }) + let list = data.map((item) => { + return { + label: item.rankName, + prop: item.rankProp, + inputFloat: true + } + }) + this.columnNum = list.length + 1 + for (let j = 0; j < list.length; j++) { + this.tableColumn.splice(2, 0, list[j]) + } + console.log(this.tableColumn) + this.silkTableList.tableColumn = this.tableColumn + }, setTableForm() { this.silkTableList = { tableData: this.tableData, @@ -85,12 +149,33 @@ this.tableData.push(this.dataObj) }, // 鍒锋柊 - refreshClick() {}, + refreshClick() { + this.getData() + }, // 鎵撳嵃 printClick() {}, // 鍒楄〃杈撳叆鍥炶皟 - inputContent(val, prop, row) { - console.log(val, prop, row) + inputContent(val, prop, scope) { + console.log(val, prop, scope) + let list = this.tableData.map((item, index) => { + let dynamicsRanks = this.columnInputList.map((ite) => { + if (ite.rankProp == prop) { + ite.rankValue = val + } + return { + ...ite + } + }) + if (index === scope.$index) { + item[prop] = val + item.dynamicsRanks = dynamicsRanks + } + return { + ...item + } + }) + console.log(list) + this.tableData = list }, // 鍒犻櫎 clearupProject(data, index) { @@ -100,15 +185,53 @@ // 淇濆瓨缂栬緫鎸夐挳鍒囨崲 editSaveClick() { this.isEdit = !this.isEdit + if (!this.isEdit) { + let params = this.saveParam() + saveRankStandard({ + rankStandard: params + }).then((res) => { + console.log(res) + if (res.code == 200) { + this.$message.success("淇濆瓨鎴愬姛") + this.getData() + } + }) + } + }, + saveParam() { + let saveList = this.tableData.map((item) => { + return { + checkItem: item.checkItem, + dynamicsRanks: item.dynamicsRanks, + endFineness: item.endFineness, + lineId: item.lineId || "", + rankA: item.rankA, + rankB: item.rankB, + rankC: item.rankC, + startFineness: item.startFineness + } + }) + return saveList }, // 娣诲姞鍒� addColumnClick() { - let propStr = "trends" + this.columnNum + let propStr = "prop" + this.columnNum this.tableColumn.splice(2, 0, { label: "", prop: propStr, inputFloat: true, addColumn: true }) this.$set(this.dataObj, propStr, 0) - console.log(this.tableColumn) + this.$set(this.rankObj, propStr, 0) + console.log(this.columnInputList) + this.columnInputList.push({ rankProp: propStr, rankName: "", rankValue: 0 }) + console.log(this.tableColumn, this.dataObj, "32323", this.columnInputList) this.silkTableList.tableColumn = this.tableColumn this.columnNum += 1 + let allList = this.tableData.map((item) => { + return { + ...item, + [propStr]: 0 + } + }) + this.tableData = allList + this.silkTableList.tableData = allList }, // 鍒犻櫎鍒� clearupColumn(prop) { @@ -121,6 +244,27 @@ this.tableColumn.splice(currentIndex, 1) this.silkTableList.tableColumn = this.tableColumn this.$delete(this.dataObj, prop) + }, + // 鍒楄〃澶磋緭鍏ュ洖璋� + addColumnInputChange(val, prop) { + console.log(val, prop, this.columnInputList) + this.columnInputList.forEach((item) => { + if (item.rankProp == prop) { + item.rankName = val + } + }) + console.log(this.columnInputList, "888") + }, + getCheckItemName(val) { + if (val) { + for (let i in this.projectOptions) { + if (this.projectOptions[i].id == val) { + return this.projectOptions[i].value + } + } + } else { + return "--" + } } } } -- Gitblit v1.8.0