From 3ca8ce266bf5b06556d80c78b31405e7a54aa4e5 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期一, 24 六月 2024 11:01:13 +0800 Subject: [PATCH] 修改 --- web/src/views/modules/basicInfo/ParamData.vue | 521 ++++++++++++++++++++++++++++++++------------------------- 1 files changed, 290 insertions(+), 231 deletions(-) diff --git a/web/src/views/modules/basicInfo/ParamData.vue b/web/src/views/modules/basicInfo/ParamData.vue index 0756990..052c79d 100644 --- a/web/src/views/modules/basicInfo/ParamData.vue +++ b/web/src/views/modules/basicInfo/ParamData.vue @@ -1,241 +1,264 @@ <template> <div> - <el-row :gutter="20"> - <el-col :span="5"> - <div class="fa-card-a"> - <product-model-tree @on-selected="onProductSelected"/> + <el-row :gutter="5"> + <el-col :span="4"> + <div class="fa-card-a" style="margin-right: 5px;height: calc(100vh - 123px)"> + <product-model-tree @on-selected="onProductSelected" showXdy="false"/> </div> </el-col> - <el-col :span="19"> - <div class="mod-basicInfo-paramData}"> - <zt-table-wraper ref="tableObj" :query-url=queryUrl - :delete-url=deleteUrl + <el-col :span="20"> + <div class="mod-basicInfo-paramData fa-card-a" style="margin-left: 5px;"> + <zt-table-wraper ref="tableObj" defaultNotQuery="true" query-url="/basicInfo/ParamData/page" + delete-url="/basicInfo/ParamData/" @dataLoaded="dataLoaded" v-slot="{ table }" :paging='false'> <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> <el-form-item> - <el-input v-model="dataForm.name" placeholder="璇疯緭鍏ュ悕绉�" clearable></el-input> + <zt-dict v-model="dataForm.basicJoinCompute" dict="is_or_not" placeholder="鏄惁鍙備笌璁$畻" clearable></zt-dict> </el-form-item> <el-form-item> - <zt-button type="warning" @click="handleSaveRows">淇濆瓨</zt-button> - <zt-button type="query" @click="table.query()"/> - <zt-button type="add" v-if="dataForm.nodeType==='2'" @click="add()"/> - <zt-button type="delete" @click="table.deleteHandle()"/> + <zt-dict v-model="dataForm.repairable" dict="is_or_not" placeholder="鏄惁鍙淮淇�" clearable></zt-dict> + </el-form-item> + <el-form-item> + <zt-dict v-model="dataForm.reliabDistribType" dict="ReliabDistribType" placeholder="璇烽�夋嫨鍙潬鎬у垎甯冪被鍨�" + clearable></zt-dict> + </el-form-item> + <el-form-item> + <zt-dict v-model="dataForm.repairDistribType" dict="RepairDistribType" placeholder="璇烽�夋嫨缁翠慨鍒嗗竷绫诲瀷" + clearable></zt-dict> + </el-form-item> + <el-form-item> + <zt-button v-if="dataForm.srcId" type="warning" @click="handleSaveRows">淇濆瓨</zt-button> + <zt-button v-if="dataForm.srcId" type="query" @click="table.query()"/> + <zt-button type="add" v-if="dataForm.productType==='3'" @click="add()"/> + <zt-button v-if="dataForm.srcId" type="delete" @click="table.deleteHandle()"/> </el-form-item> </el-form> - <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:70}" - class="paramsDataTable" + <el-tabs v-model="activeName" @tab-click="handleClick"> + <el-tab-pane label="鍩烘湰鍙潬鎬�" name="first"> + <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" + v-adaptive="{bottomOffset:30}" + class="paramsDataTable" + @selection-change="table.selectionChangeHandle"> + <el-table-column type="selection" :key="1" width="40" align="center"/> + <el-table-column prop="name" :key="2" label="鍚嶇О" fixed="left" width="120"/> + <el-table-column v-if="dataForm.productType==='3'||dataForm.productType==='2'" + prop="reliabDistribType" + label="鍙潬鎬у垎甯冪被鍨�" :key="27" + width="100"> + <template v-slot="{ row }"> + <el-select v-if="row.isEdit" v-model="row.reliabDistribType" + placeholder="璇烽�夋嫨"> + <el-option v-for="item in reliabDistribType" + :key="item.value" + :label="item.label" + :value="item.value"> + </el-option> + </el-select> + <zt-dict-tag v-else dict="ReliabDistribType" :value="row.reliabDistribType" :typeS="typeS" + :typeI="typeI" :typeD="typeD" :typeColor="typeColor" :size="size" :effect="effect" + :hit="hit"/> + </template> + </el-table-column> + <el-table-column v-if="dataForm.productType==='4'" :key="3" prop="baseOperatRatio" label="鍩烘湰鍙潬鎬ц繍琛屾瘮"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.baseOperatRatio"></el-input> + <span v-else v-text="scope.row.baseOperatRatio"></span> + </template> + </el-table-column> + <el-table-column v-if="dataForm.productType==='5'||dataForm.productType==='4'" :key="4" + prop="actualRunTime" + label="瀹為檯杩愯鏃堕棿"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.actualRunTime"></el-input> + <span v-else v-text="scope.row.actualRunTime"></span> + </template> + </el-table-column> + <el-table-column v-if="dataForm.productType==='3'||dataForm.productType==='2'" :key="5" + label="鍩烘湰鍙潬鎬ц绠�"> + <!-- <zt-table-column-dict prop="joinCompute" :keys="6" label="鍙傚姞璁$畻" width="100" dict="is_or_not"/>--> + <el-table-column prop="basicJoinCompute" label="鍙傚姞璁$畻" :key="6"> + <template v-slot="{ row }"> + <el-select v-if="row.isEdit" v-model="row.basicJoinCompute" + placeholder="鍙傚姞璁$畻"> + <el-option v-for="item in isOrNot" + :key="item.value" + :label="item.label" + :value="item.value"> + </el-option> + </el-select> + <zt-dict-tag v-else dict="is_or_not" :value="row.basicJoinCompute" :typeS="typeS" :typeI="typeI" + :typeD="typeD" + :typeColor="typeColor" :size="size" :effect="effect" :hit="hit"/> + </template> + </el-table-column> + <el-table-column prop="basicMtbfRegulate" :key="7" label="瑙勫畾MTBF"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicMtbfRegulate"></el-input> + <span v-else v-text="scope.row.basicMtbfRegulate"></span> + </template> + </el-table-column> + <el-table-column prop="basicMtbfAccept" :key="8" label="鍙帴鍙楃殑MTBF" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicMtbfAccept"></el-input> + <span v-else v-text="scope.row.basicMtbfAccept"></span> + </template> + </el-table-column> + <el-table-column prop="basicMtbfRegulSuccRate" :key="9" label="MTBF瑙勫畾鎴愬姛鐜�"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicMtbfRegulSuccRate"></el-input> + <span v-else v-text="scope.row.basicMtbfRegulSuccRate"></span> + </template> + </el-table-column> + <el-table-column prop="basicMtbfAcceptSuccRate" :key="10" label="MTBF鍙帴鍙楁垚鍔熺巼" width="140"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicMtbfAcceptSuccRate"></el-input> + <span v-else v-text="scope.row.basicMtbfAcceptSuccRate"></span> + </template> + </el-table-column> + <el-table-column prop="basicUnitNum" label="鍗曞厓鏁伴噺" :key="11" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicUnitNum"></el-input> + <span v-else v-text="scope.row.basicUnitNum"></span> + </template> + </el-table-column> + <el-table-column prop="basicRunsNum" label="杩愯娆℃暟" :key="12" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicRunsNum"></el-input> + <span v-else v-text="scope.row.basicRunsNum"></span> + </template> + </el-table-column> + <el-table-column prop="basicMtbfOperatingRatio" :key="13" label="MTBF杩愯姣�" width="80"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicMtbfOperatingRatio"></el-input> + <span v-else v-text="scope.row.basicMtbfOperatingRatio"></span> + </template> + </el-table-column> + <el-table-column prop="basicSingleRunTime" :key="14" label="杩愯鏃堕棿" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.basicSingleRunTime"></el-input> + <span v-else v-text="scope.row.basicSingleRunTime"></span> + </template> + </el-table-column> + </el-table-column> + <el-table-column fixed="right" align="center" label="鎿嶄綔" width="100"> + <template slot-scope="scope"> + <zt-table-button size="small" type="primary" @click="edit(scope.row)">淇敼 + </zt-table-button> + <zt-table-button v-if="scope.row.isCanel" size="small" type="primary" @click="canel(scope.row)">鍙栨秷 + </zt-table-button> + </template> + </el-table-column> + </el-table> + </el-tab-pane> - border @selection-change="table.selectionChangeHandle"> - <el-table-column type="selection" :key="1" width="40" align="center"/> - <el-table-column prop="name" :key="2" label="鍚嶇О" fixed="left"/> - <el-table-column v-if="dataForm.nodeType==='4'" :key="3" prop="baseOperatRatio" label="鍩烘湰鍙潬鎬ц繍琛屾瘮"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.baseOperatRatio"></el-input> - <span v-else v-text="scope.row.baseOperatRatio"></span> - </template> - </el-table-column> - <el-table-column v-if="dataForm.nodeType==='5'||dataForm.nodeType==='4'" :key="4" prop="actualRunTime" - label="瀹為檯杩愯鏃堕棿"> - <!-- <template slot-scope="scope"> - <span v-if="editingCell && editingCell.row === scope.row && editingCell.column.property === scope.column.property"> - <el-input ref="editInput" v-model="scope.row.actualRunTime" placeholder="瀹為檯杩愯鏃堕棿"></el-input> - </span> - <span v-else>{{scope.row.actualRunTime}}</span> - </template>--> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.actualRunTime"></el-input> - <span v-else v-text="scope.row.actualRunTime"></span> - </template> - </el-table-column> - <el-table-column v-if="dataForm.nodeType==='2'" :key="5" label="鍩烘湰鍙潬鎬ц绠�"> - <!-- <zt-table-column-dict prop="joinCompute" :keys="6" label="鍙傚姞璁$畻" width="100" dict="is_or_not"/>--> - <el-table-column prop="joinCompute" label="鍙傚姞璁$畻" :key="6" width="100"> - <template v-slot="{ row }"> - <el-select v-if="row.isEdit" v-model="row.joinCompute" - placeholder="鍙傚姞璁$畻"> - <el-option v-for="item in isOrNot" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - <zt-dict-tag v-else dict="is_or_not" :value="row.joinCompute" :typeS="typeS" :typeI="typeI" - :typeD="typeD" - :typeColor="typeColor" :size="size" :effect="effect" :hit="hit"/> - </template> - </el-table-column> - <el-table-column prop="regulateMtbf" :key="7" label="瑙勫畾MTBF" width="120"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.regulateMtbf"></el-input> - <span v-else v-text="scope.row.regulateMtbf"></span> - </template> - </el-table-column> - <el-table-column prop="acceptMtbf" :key="8" label="鍙帴鍙楃殑MTBF" width="160"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.acceptMtbf"></el-input> - <span v-else v-text="scope.row.acceptMtbf"></span> - </template> - </el-table-column> - <el-table-column prop="regulSuccRateMtbf" :key="9" label="MTBF瑙勫畾鎴愬姛鐜�" width="180"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.regulSuccRateMtbf"></el-input> - <span v-else v-text="scope.row.regulSuccRateMtbf"></span> - </template> - </el-table-column> - <el-table-column prop="acceptSuccRateMtbf" :key="10" label="MTBF鍙帴鍙楁垚鍔熺巼" width="180"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.acceptSuccRateMtbf"></el-input> - <span v-else v-text="scope.row.acceptSuccRateMtbf"></span> - </template> - </el-table-column> - <el-table-column prop="unitNum" label="鍗曞厓鏁伴噺" :key="11" width="100"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.unitNum"></el-input> - <span v-else v-text="scope.row.unitNum"></span> - </template> - </el-table-column> - <el-table-column prop="runsNum" label="杩愯娆℃暟" :key="12" width="100"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.runsNum"></el-input> - <span v-else v-text="scope.row.runsNum"></span> - </template> - </el-table-column> - <el-table-column prop="operatingRatioMtbf" :key="13" label="MTBF杩愯姣�" width="140"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.operatingRatioMtbf"></el-input> - <span v-else v-text="scope.row.operatingRatioMtbf"></span> - </template> - </el-table-column> - <el-table-column prop="singleRunTime" :key="14" label="鍗曟杩愯鏃堕棿" width="140"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.singleRunTime"></el-input> - <span v-else v-text="scope.row.singleRunTime"></span> - </template> - </el-table-column> - </el-table-column> - <el-table-column v-if="dataForm.nodeType==='2'" :key="15" label="浠诲姟鍙潬鎬ц绠�"> - <el-table-column prop="regulateMtbcf" :key="16" label="瑙勫畾MTBCF" width="120"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.regulateMtbcf"></el-input> - <span v-else v-text="scope.row.regulateMtbcf"></span> - </template> - </el-table-column> - <el-table-column prop="acceptMtbcf" :key="17" label="鍙帴鍙楃殑MTBCF" width="160"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.acceptMtbcf"></el-input> - <span v-else v-text="scope.row.acceptMtbcf"></span> - </template> - </el-table-column> - <el-table-column prop="regulSuccRateMtbcf" :key="18" label="MTBCF瑙勫畾鎴愬姛鐜�" width="180"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.regulSuccRateMtbcf"></el-input> - <span v-else v-text="scope.row.regulSuccRateMtbcf"></span> - </template> - </el-table-column> - <el-table-column prop="acceptSuccRateMtbcf" :key="19" label="MTBCF鍙帴鍙楁垚鍔熺巼" width="200"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.acceptSuccRateMtbcf"></el-input> - <span v-else v-text="scope.row.acceptSuccRateMtbcf"></span> - </template> - </el-table-column> - <el-table-column prop="operatingRatioMtbcf" :key="20" label="MTBCF杩愯姣�" width="140"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.operatingRatioMtbcf"></el-input> - <span v-else v-text="scope.row.operatingRatioMtbcf"></span> - </template> - </el-table-column> - <el-table-column prop="otherParamsMtbcf" :key="21" label="MTBCF鍏朵粬鍙傛暟" width="160"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.otherParamsMtbcf"></el-input> - <span v-else v-text="scope.row.otherParamsMtbcf"></span> - </template> - </el-table-column> - </el-table-column> + <el-tab-pane label="浠诲姟鍙潬鎬�" name="second" v-if="dataForm.productType==='3'||dataForm.productType==='2'"> + <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" + v-adaptive="{bottomOffset:30}" + class="paramsDataTable" + @selection-change="table.selectionChangeHandle"> + <el-table-column type="selection" :key="1" width="40" align="center"/> + <el-table-column prop="name" :key="2" label="鍚嶇О" fixed="left" width="120"/> - <el-table-column v-if="dataForm.nodeType==='2'" :key="22" label="缁翠慨鍒嗗竷"> - <!-- <zt-table-column-dict prop="repairable" :keys="23" label="鍙淮淇�" dict="is_or_not"/>--> - <el-table-column prop="repairable" label="鍙淮淇�" :key="23"> - <template v-slot="{ row }"> - <el-select v-if="row.isEdit" v-model="row.repairable" - placeholder="褰撳墠鐘舵��"> - <el-option v-for="item in isOrNot" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - <zt-dict-tag v-else dict="is_or_not" :value="row.repairable" :typeS="typeS" :typeI="typeI" - :typeD="typeD" - :typeColor="typeColor" :size="size" :effect="effect" :hit="hit"/> - </template> - </el-table-column> - <!-- <zt-table-column-dict prop="repairDistribType" :keys="24" label="缁翠慨鍒嗗竷绫诲瀷" width="140" dict="RepairDistribType"/>--> - <el-table-column prop="repairDistribType" label="缁翠慨鍒嗗竷绫诲瀷" :key="24" width="140"> - <template v-slot="{ row }"> - <el-select v-if="row.isEdit" v-model="row.repairDistribType" - placeholder="褰撳墠鐘舵��"> - <el-option v-for="item in repairDistribType" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - <zt-dict-tag v-else dict="RepairDistribType" :value="row.repairDistribType" :typeS="typeS" - :typeI="typeI" - :typeD="typeD" :typeColor="typeColor" :size="size" :effect="effect" :hit="hit"/> - </template> - </el-table-column> - <el-table-column prop="mttcr" label="MTTCR" :key="25" width="100"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.mttcr"></el-input> - <span v-else v-text="scope.row.mttcr"></span> - </template> - </el-table-column> - <el-table-column prop="otherParamsMttcr" :key="26" label="MTTCR鍏朵粬鍙傛暟" width="180"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.mttcr"></el-input> - <span v-else v-text="scope.row.mttcr"></span> - </template> - </el-table-column> - </el-table-column> + <el-table-column v-if="dataForm.productType==='3'||dataForm.productType==='2'" :key="15" + label="浠诲姟鍙潬鎬ц绠�"> + <el-table-column prop="taskMtbcfRegulate" :key="16" label="瑙勫畾MTBCF" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.taskMtbcfRegulate"></el-input> + <span v-else v-text="scope.row.taskMtbcfRegulate"></span> + </template> + </el-table-column> + <el-table-column prop="taskMtbcfAccept" :key="17" label="鍙帴鍙楃殑MTBCF" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.taskMtbcfAccept"></el-input> + <span v-else v-text="scope.row.taskMtbcfAccept"></span> + </template> + </el-table-column> + <el-table-column prop="taskMtbcfRegulSuccRate" :key="18" label="MTBCF瑙勫畾鎴愬姛鐜�" width="120"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.taskMtbcfRegulSuccRate"></el-input> + <span v-else v-text="scope.row.taskMtbcfRegulSuccRate"></span> + </template> + </el-table-column> + <el-table-column prop="taskMtbcfAcceptSuccRate" :key="19" label="MTBCF鍙帴鍙楁垚鍔熺巼" width="140"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.taskMtbcfAcceptSuccRate"></el-input> + <span v-else v-text="scope.row.taskMtbcfAcceptSuccRate"></span> + </template> + </el-table-column> + <el-table-column prop="taskMtbcfOperatingRatio" :key="20" label="MTBCF杩愯姣�" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.taskMtbcfOperatingRatio"></el-input> + <span v-else v-text="scope.row.taskMtbcfOperatingRatio"></span> + </template> + </el-table-column> + <el-table-column prop="taskMtbcfOtherParams" :key="21" label="MTBCF鍏朵粬鍙傛暟"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.taskMtbcfOtherParams"></el-input> + <span v-else v-text="scope.row.taskMtbcfOtherParams"></span> + </template> + </el-table-column> + </el-table-column> + <el-table-column v-if="dataForm.productType==='3'||dataForm.productType==='2'" :key="22" label="缁翠慨鍒嗗竷"> + <!-- <zt-table-column-dict prop="repairable" :keys="23" label="鍙淮淇�" dict="is_or_not"/>--> + <el-table-column prop="repairable" label="鍙淮淇�" :key="23"> + <template v-slot="{ row }"> + <el-select v-if="row.isEdit" v-model="row.repairable" + placeholder="璇烽�夋嫨"> + <el-option v-for="item in isOrNot" + :key="item.value" + :label="item.label" + :value="item.value"> + </el-option> + </el-select> + <zt-dict-tag v-else dict="is_or_not" :value="row.repairable" :typeS="typeS" :typeI="typeI" + :typeD="typeD" + :typeColor="typeColor" :size="size" :effect="effect" :hit="hit"/> + </template> + </el-table-column> + <!-- <zt-table-column-dict prop="repairDistribType" :keys="24" label="缁翠慨鍒嗗竷绫诲瀷" width="140" dict="RepairDistribType"/>--> + <el-table-column prop="repairDistribType" label="缁翠慨鍒嗗竷绫诲瀷" :key="24" width="100"> + <template v-slot="{ row }"> + <el-select v-if="row.isEdit" v-model="row.repairDistribType" + placeholder="璇烽�夋嫨"> + <el-option v-for="item in repairDistribType" + :key="item.value" + :label="item.label" + :value="item.value"> + </el-option> + </el-select> + <zt-dict-tag v-else dict="RepairDistribType" :value="row.repairDistribType" :typeS="typeS" + :typeI="typeI" + :typeD="typeD" :typeColor="typeColor" :size="size" :effect="effect" :hit="hit"/> + </template> + </el-table-column> + <el-table-column prop="repairMttcr" label="MTTCR" :key="25" width="100"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.repairMttcr"></el-input> + <span v-else v-text="scope.row.repairMttcr"></span> + </template> + </el-table-column> + <el-table-column prop="repairMttcrOtherParams" :key="26" label="MTTCR鍏朵粬鍙傛暟" width="120"> + <template slot-scope="scope"> + <el-input v-if="scope.row.isEdit" v-model="scope.row.repairMttcrOtherParams"></el-input> + <span v-else v-text="scope.row.repairMttcrOtherParams"></span> + </template> + </el-table-column> + </el-table-column> + <el-table-column fixed="right" align="center" label="鎿嶄綔" width="100"> + <template slot-scope="scope"> + <zt-table-button size="small" type="primary" @click="edit(scope.row)">淇敼 + </zt-table-button> + <zt-table-button v-if="scope.row.isCanel" size="small" type="primary" @click="canel(scope.row)">鍙栨秷 + </zt-table-button> + </template> + </el-table-column> - <!-- <zt-table-column-dict v-if="dataForm.nodeType==='2'" :key="27" prop="reliabDistribType" label="鍙潬鎬у垎甯冪被鍨�" - width="160"/>--> - <el-table-column v-if="dataForm.nodeType==='2'" prop="reliabDistribType" label="鍙潬鎬у垎甯冪被鍨�" :key="27" - width="160"> - <template v-slot="{ row }"> - <el-select v-if="row.isEdit" v-model="row.reliabDistribType" - placeholder="褰撳墠鐘舵��"> - <el-option v-for="item in reliabDistribType" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - <zt-dict-tag v-else dict="ReliabDistribType" :value="row.repairDistribType" :typeS="typeS" - :typeI="typeI" :typeD="typeD" :typeColor="typeColor" :size="size" :effect="effect" - :hit="hit"/> - </template> - </el-table-column> - <el-table-column v-if="dataForm.nodeType==='2'" :key="28" prop="runTime" label="杩愯鏃堕棿" width="100"> - <template slot-scope="scope"> - <el-input v-if="scope.row.isEdit" v-model="scope.row.runTime"></el-input> - <span v-else v-text="scope.row.runTime"></span> - </template> - </el-table-column> - <el-table-column fixed="right" align="center" label="鎿嶄綔" width="150"> - <template slot-scope="scope"> - <zt-table-button size="small" type="primary" @click="edit(scope.row)">淇敼 - </zt-table-button> - <zt-table-button v-if="scope.row.isCanel" size="small" type="primary" @click="canel(scope.row)">鍙栨秷 - </zt-table-button> - </template> - </el-table-column> - - </el-table> + </el-table> + </el-tab-pane> + </el-tabs> <!-- 寮圭獥, 鏂板 / 淇敼 --> <select-ty-model @refreshDataList="table.query" ref="SelectTyModel"/> </zt-table-wraper> @@ -252,8 +275,7 @@ export default { data() { return { - queryUrl: '/basicInfo/ParamData/page', - deleteUrl: '/basicInfo/ParamData', + activeName: 'first', pageCode: '', key: '', typeS: '', @@ -271,7 +293,11 @@ srcId: '', name: '', dataThreeList: null, - nodeType: '5' + productType: '5', + basicJoinCompute: '', + repairable: '', + repairDistribType: '', + reliabDistribType: '' }, isOrNot: [{ value: 1, @@ -289,19 +315,38 @@ reliabDistribType: [ { value: 1, - label: '浜岄」鍒嗗竷' + label: '鎸囨暟鍒嗗竷' }, { value: 2, - label: '濞佸竷灏斿垎甯�' + label: '浜岄」鍒嗗竷' }, { value: 3, - label: '鎸囨暟鍒嗗竷' + label: '濞佸竷灏斿垎甯�' }, ], // editingCell:null, dataList: [], + originalTableData: [], originalData: null, // 璁板綍淇敼鍓嶇殑鏁版嵁 + } + }, + // 鍦ㄧ粍浠朵腑瀹氫箟 beforeRouteLeave 瀵艰埅瀹堝崼 + beforeRouteLeave(to, from, next) { + console.log(this.$store.state.contentTabs, 'this.$store.state.contentTabsActiveName') + if (this.hasUnsavedChanges()) { // 妫�鏌ユ槸鍚︽湁鏈繚瀛樼殑鍙樻洿 + this.$confirm('鎮ㄦ湁鏈繚瀛樼殑鏇存敼锛岃鍏堜繚瀛樸�傛槸鍚︾户缁寮�锛�', '鎻愮ず', { + confirmButtonText: '淇濆瓨', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + this.handleSaveRows(); // 淇濆瓨鏁版嵁 + next(); + }).catch(() => { + next(false); // 鍙栨秷璺敱绂诲紑 + }); + } else { + next(); } }, components: { @@ -314,9 +359,12 @@ console.log(this.pageCode, 'this.pageCode this.pageCode') }, methods: { + handleClick() { + + }, add() { this.$refs.SelectTyModel.$refs.dialog.init(null, { - type: this.dataForm.nodeType - 1, + type: this.dataForm.productType - 1, id: this.dataForm.srcId, pageCode: this.pageCode }) @@ -333,6 +381,8 @@ this.originalData = null this.dataForm.dataThreeList = null this.$refs.tableObj.query() + this.originalTableData = JSON.parse(JSON.stringify(this.dataList)); // 鏇存柊鍒濆鏁版嵁涓哄綋鍓嶆暟鎹� + console.log(this.originalTableData, 'this.originalTableData 褰撳墠琛ㄦ牸json鏁版嵁') } }, edit(row) { @@ -365,9 +415,12 @@ // }, onProductSelected(data) { this.dataForm.srcId = data.id - this.dataForm.nodeType = data.productType + this.dataForm.productType = data.productType + this.activeName = 'first' console.log(data, 'onProductSelected(data)') - this.$refs.tableObj.query() + this.$nextTick(() => { + this.$refs.tableObj.query() + }) }, dataLoaded(data) { this.dataList = data @@ -377,7 +430,13 @@ this.$set(dataList, 'isRemove', false) console.log(dataList, 'dataList') } - } + this.originalTableData = JSON.parse(JSON.stringify(this.dataList)) + console.log(this.originalTableData, 'this.originalTableData 鍒濆琛ㄦ牸json鏁版嵁') + }, + hasUnsavedChanges() { + // 妫�鏌ュ綋鍓嶈〃鏍兼暟鎹笌鍒濆鏁版嵁鏄惁鐩稿悓 + return JSON.stringify(this.dataList) !== JSON.stringify(this.originalTableData); + }, } } </script> -- Gitblit v1.9.1