From 10c2ee4be4508c62b5980cc7059b1e8e95f7a3cc Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 04 七月 2023 17:22:11 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs
---
Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue | 485 +++++++++++++++++++++++++++++++----------------------
1 files changed, 279 insertions(+), 206 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
index f8ab6cd..21a5b5f 100644
--- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
@@ -1,106 +1,138 @@
<template>
<basic-container>
<div class="testbox">
- <div style="margin-top: 10px;display: flex;flex-wrap: wrap;width: 100%;">
- <el-button plain size="small" type="primary" @click="addvisible=true">澧炲姞
+ <div>
+ <el-button plain size="small" type="primary" @click="addvisible = true"
+ >澧炲姞
</el-button>
- <FormTemplateDialog
- :codeClassifyOid="this.codeClassifyOid"
- :codeRuleOid="this.codeRuleOid"
- :disabledProp="disabledProp"
- :templateOid="templateOid"
- type="add"
- :visible.sync="addvisible"
- @submit="AddSumbit"
- >
- </FormTemplateDialog>
- <el-button plain size="small" type="primary" @click="editHandler">缂栬緫
+ <el-button plain size="small" type="primary" @click="editHandler"
+ >缂栬緫
</el-button>
- <FormTemplateDialog
- :codeClassifyOid="this.codeClassifyOid"
- :codeRuleOid="this.codeRuleOid"
- :disabledProp="disabledProp"
- :rowOid="rowOid"
- :templateOid="templateOid"
- type="edit"
- :title="'淇敼缂栫爜淇℃伅'"
- :visible.sync="editvisible"
- @submit="EditSumbit"
- ></FormTemplateDialog>
- <el-button plain size="small" type="primary">鎵归噺瀵煎叆鐢宠</el-button>
- <el-button plain size="small" type="primary">鍘嗗彶鏁版嵁瀵煎叆</el-button>
- <el-button plain size="small" type="primary">鎵归噺鐢宠缂栫爜</el-button>
+ <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">鎵归噺瀵煎叆鐢宠</el-button>
+ <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">鍘嗗彶鏁版嵁瀵煎叆</el-button>
+ <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">鎵归噺鐢宠缂栫爜</el-button>
<el-button plain size="small" type="primary">鎵归噺鍙戝竷</el-button>
<el-button plain size="small" type="primary">鏌ョ湅娴佺▼鍘嗗彶</el-button>
<el-button plain size="small" type="primary">鍒犻櫎</el-button>
- <el-button plain size="small" type="primary" @click="setHandler">鍙戝竷</el-button>
- <set-personnel :visible.sync="visibleFlow" :parameter="parameter"
- ></set-personnel>
- <el-button plain size="small" type="primary" @click="DataChange">鏁版嵁鏇存敼</el-button>
- <FormTemplateDialog
- :codeClassifyOid="this.codeClassifyOid"
- :codeRuleOid="this.codeRuleOid"
- :disabledProp="disabledProp"
- :rowOid="rowOid"
- :templateOid="templateOid"
- :type="edit"
- :title="'宸插彂甯冩暟鎹洿鏀�'"
- :visible.sync="DataVisible"
- ></FormTemplateDialog>
- <el-button plain size="small" type="primary" @click="huishouHandler">鍥炴敹</el-button>
- <el-button plain size="small" type="primary" @click="openD">瀵煎嚭
- <integration-transfer :data="transferData" :props="transferProps"
- :visible.sync="dialogPush" @save="handelTransferSave"></integration-transfer>
+ <el-button plain size="small" type="primary" @click="setHandler"
+ >鍙戝竷</el-button
+ >
+ <el-button plain size="small" type="primary" @click="DataChange"
+ >鏁版嵁鏇存敼</el-button
+ >
+ <el-button plain size="small" type="primary" @click="huishouHandler"
+ >鍥炴敹</el-button
+ >
+ <el-button plain size="small" type="primary" @click="openD"
+ >瀵煎嚭
</el-button>
- <el-button plain size="small" type="primary" @click="findHandler">鏌ヨ
- <advanced-query :options="this.options" :visible.sync="findvisible"
- @echoContion="echoContion"></advanced-query>
+ <el-button plain size="small" type="primary" @click="findHandler"
+ >鏌ヨ
</el-button>
- <el-button plain size="small" type="primary" @click="similarHandler">鐩镐技椤规煡璇�</el-button>
- <ResembleQueryDialog
- :visible.sync="similarVisible"
- :templateOid="templateOid"
- :codeClassifyOid="codeClassifyOid"
- :rowOid="rowOid"
- :codeRuleOid="this.codeRuleOid"
- ></ResembleQueryDialog>
- <el-button plain size="small" style="margin-left: 1px;margin-top:10px" type="primary">鍒锋柊</el-button>
- <el-input placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small"
- style="width: 180px;margin-left: 5px;margin-top:10px"></el-input>
+ <el-button plain size="small" type="primary" @click="similarHandler"
+ >鐩镐技椤规煡璇�</el-button
+ >
+ <el-button plain size="small" type="primary">鍒锋柊</el-button>
+ <el-input
+ placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�"
+ size="small"
+ style="width: 180px; margin-left: 5px; margin-top: 10px"
+ ></el-input>
</div>
- <el-row style="height: 700px;width: 100%">
- <el-table v-loading="isLoading" :data="tableData" max-height="700" style="" @cell-click="handleCellClick"
- @selection-change="handleSelectionChange" @sort-change="sortChange" v-if="tableData.length != 0">
- <el-table-column
- fixed
- type="selection"
- width="55">
+ <el-row style="height: 700px; width: 100%">
+ <el-table
+ v-loading="isLoading"
+ :data="tableData"
+ max-height="700"
+ style=""
+ @cell-click="handleCellClick"
+ @selection-change="handleSelectionChange"
+ @sort-change="sortChange"
+ v-if="tableData.length != 0"
+ >
+ <el-table-column fixed type="selection" width="55"> </el-table-column>
+ <el-table-column fixed label="搴忓彿" type="index" width="55">
</el-table-column>
<el-table-column
- fixed
- label="搴忓彿"
- type="index"
- width="55">
+ v-for="item in this.tableHeadFindData"
+ :key="item.id"
+ :label="item.label"
+ :prop="item.prop"
+ :sortable="item.sortable"
+ :formatter="formatBoolean"
+ :width="item.label.length >=4 ?'150':item.label.length==3 ?'120':'90'"
+ :show-overflow-tooltip="true"
+ align="center"
+ >
+ <!-- 缂栬緫鍜屽睍绀洪�昏緫 -->
+ <!-- <template slot-scope="{ row }">-->
+ <!-- <el-input v-if="editingRow === row && editShow== item.prop" v-model="row[item.prop]" @blur="saveRow"></el-input>-->
+ <!-- <span v-else>{{row[item.prop]}}</span>-->
+ <!-- <el-switch-->
+ <!-- v-if="editShow === 'true'"-->
+ <!-- v-model="row[item.prop]"-->
+ <!-- active-color="#13ce66"-->
+ <!-- inactive-color="#ff4949">-->
+ <!-- </el-switch>-->
+ <!-- </template>-->
</el-table-column>
-<!-- <div>-->
- <el-table-column v-for="(item,index) in this.tableHeadFindData" :key="item.id" :label="item.label" :prop="item.prop" :sortable="item.sortable" >
- <!-- 缂栬緫鍜屽睍绀洪�昏緫 -->
- <!-- <template slot-scope="{ row }">-->
- <!-- <el-input v-if="editingRow === row && editShow== item.prop" v-model="row[item.prop]" @blur="saveRow"></el-input>-->
- <!-- <span v-else>{{row[item.prop]}}</span>-->
- <!-- <el-switch-->
- <!-- v-if="editShow === 'true'"-->
- <!-- v-model="row[item.prop]"-->
- <!-- active-color="#13ce66"-->
- <!-- inactive-color="#ff4949">-->
- <!-- </el-switch>-->
- <!-- </template>-->
- </el-table-column>
-<!-- </div>-->
</el-table>
</el-row>
+ <FormTemplateDialog
+ :codeClassifyOid="this.codeClassifyOid"
+ :codeRuleOid="this.codeRuleOid"
+ :disabledProp="disabledProp"
+ :templateOid="templateOid"
+ type="add"
+ :visible.sync="addvisible"
+ @submit="AddSumbit"
+ >
+ </FormTemplateDialog>
+ <FormTemplateDialog
+ :codeClassifyOid="this.codeClassifyOid"
+ :codeRuleOid="this.codeRuleOid"
+ :disabledProp="disabledProp"
+ :rowOid="rowOid"
+ :templateOid="templateOid"
+ type="edit"
+ :title="'淇敼缂栫爜淇℃伅'"
+ :visible.sync="editvisible"
+ @submit="EditSumbit"
+ ></FormTemplateDialog>
+ <FormTemplateDialog
+ :codeClassifyOid="this.codeClassifyOid"
+ :codeRuleOid="this.codeRuleOid"
+ :disabledProp="disabledProp"
+ :rowOid="rowOid"
+ :templateOid="templateOid"
+ :type="edit"
+ :title="'宸插彂甯冩暟鎹洿鏀�'"
+ :visible.sync="DataVisible"
+ ></FormTemplateDialog>
+ <set-personnel
+ :visible.sync="visibleFlow"
+ :parameter="this.parameter"
+ ></set-personnel>
+ <advanced-query
+ :options="this.options"
+ :visible.sync="findvisible"
+ @echoContion="echoContion"
+ ></advanced-query>
+ <integration-transfer
+ :data="transferData"
+ :props="transferProps"
+ :visible.sync="dialogPush"
+ @save="handelTransferSave"
+ ></integration-transfer>
+ <ResembleQueryDialog
+ :visible.sync="similarVisible"
+ :templateOid="templateOid"
+ :codeClassifyOid="codeClassifyOid"
+ :rowOid="rowOid"
+ :codeRuleOid="this.codeRuleOid"
+ ></ResembleQueryDialog>
</div>
- <div class="block" style="display: flex;justify-content: flex-end">
+ <div class="block" style="display: flex; justify-content: flex-end">
<el-pagination
:current-page="page.currentPage"
:page-size="page.pageSizes"
@@ -108,84 +140,88 @@
:total="page.total"
layout="total, sizes, prev, pager, next, jumper"
@size-change="handleSizeChange"
- @current-change="handleCurrentChange">
+ @current-change="handleCurrentChange"
+ >
</el-pagination>
</div>
+ <BatchImport v-if="batchImportData.visible" :visible.sync="batchImportData.visible" v-bind="batchImportData"></BatchImport>
</basic-container>
</template>
<script>
-import {MasterTable, TableData,FindData} from "@/api/GetItem";
-import {listCodeAttributeByClassId} from '@/api/integration/integration.js'
-import integrationTransfer from '@/views/integration/integrationTransfer'
-import SetPersonnel from '@/components/template/SetPersonnel'
+import { MasterTable, TableData, FindData } from "@/api/GetItem";
+import { listCodeAttributeByClassId } from "@/api/integration/integration.js";
+import integrationTransfer from "@/views/integration/integrationTransfer";
+import SetPersonnel from "@/components/template/SetPersonnel";
import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue";
+import BatchImport from '@/components/BatchImport'
export default {
components: {
integrationTransfer,
SetPersonnel,
- ResembleQueryDialog
+ ResembleQueryDialog,
+ BatchImport
},
name: "Crud.vue",
props: {
page: {
type: Object,
default: () => {
- return {}
- }
+ return {};
+ },
},
codeClassifyOid: {
type: String,
- default: ""
+ default: "",
},
coderuleoid: {
type: String,
- default: ""
+ default: "",
},
tableDataArray: {
type: Array,
},
total: {
type: String,
- default: ""
+ default: "",
},
templateOid: {
type: String,
+ default: "",
},
tableHeadDataFateher: {
type: Array,
},
isLoading: {
type: Boolean,
- default: false
+ default: false,
},
- tableHeadFindData:{
- type:Array,
- }
+ tableHeadFindData: {
+ type: Array,
+ },
},
data() {
return {
//鐩镐技椤规煡璇�
- similarVisible:false,
+ similarVisible: false,
//鍙戝竷
- parameter:{
- ids:['0000','22222222'],
- code:this.templateOid,
- type:'PUBLIC',
- template:'妯℃澘template'
+ parameter: {
+ ids: [],
+ code: "",
+ type: "PUBLIC",
+ template: "",
},
visibleFlow: false,
transferData: [],
transferProps: {
- key: 'oid',
- label: 'name'
+ key: "oid",
+ label: "name",
},
- tableHeadFindDatas:[],
- templateOid: "",
+ tableHeadFindDatas: [],
addvisible: false,
editvisible: false,
findvisible: false,
dialogPush: false,
- rowOid: '',
+ rowOid: "",
disabledProp: ["id"],
editingRow: null,
editShow: "",
@@ -193,7 +229,7 @@
data: [],
options: {},
option: {
- column: []
+ column: [],
},
List: [],
columnType: {
@@ -204,96 +240,125 @@
datetime: "datetime",
},
tableData: [],
- DataVisible:false,
+ DataVisible: false,
tableHeadData: [],
items: {},
seniorQueryColumns: [],
- selectRow: []
- }
+ selectRow: [],
+ userName: "",
+ batchImportData: {
+ visible: false,
+ type: '',
+ codeClassifyOid: ''
+ }
+ };
},
computed: {},
- created() {
- // this.CrudHeaderRend();
- // this.tableHeadHandle()
- },
- mounted() {
-
- },
+ created() {},
+ mounted() {},
activated() {
- this.doLayout()
+ this.doLayout();
},
watch: {
+ tableHeadDataFateher:{
+ handler(newval,oldval){
+ this.options=newval.tableDefineVO.seniorQueryColumns
+ }
+ },
codeClassifyOid: {
handler(newval, oldval) {
this.codeClassifyOid = newval;
-
},
- deep: true
+ deep: true,
},
tableDataArray: {
handler(newval, oldval) {
this.tableData = newval;
- }
+ },
},
- tableHeadFindData:{
+ tableHeadFindData: {
handler(newval, oldval) {
this.tableHeadFindDatas = newval;
- }
+ },
},
total: {
handler(newval, oldval) {
this.page.total = newval;
- }
+ },
+ },
+ templateOid: {
+ handler(newval, oldval) {
+ this.parameter.code = newval;
+ },
+ deep: true,
},
},
methods: {
- setHandler() {
- this.visibleFlow = true;
+ // 杞崲鏁版嵁true鍜宖alse
+ formatBoolean(row, column) {
+ if (column.property === "xiaoshouwl"
+ ||column.property === "shifoupihaoguanli"
+ ||column.property === "caigouwl"
+ ||column.property === "kucunwl"
+ ||column.property === "passing") {
+ return row[column.property] =='true'? "鏄�" : "鍚�";
+ }
+ return row[column.property];
},
- huishouHandler() {
+ // 鍙戝竷
+ setHandler() {
+ console.log("1111");
+ console.log("鐖�", this.parameter);
+ if (this.selectRow.length <= 0) {
+ this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
+ } else {
+ this.userName = localStorage.getItem("username");
+ this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]";
+ this.visibleFlow = true;
+ }
},
openD() {
- this.dialogPush = true;
- this.getListCodeByClassId()
+ this.getListCodeByClassId();
},
async getListCodeByClassId() {
- this.transferData = []
- const response = await listCodeAttributeByClassId({codeClassifyId: this.codeClassifyOid})
+ this.transferData = [];
+ const response = await listCodeAttributeByClassId({
+ codeClassifyId: this.codeClassifyOid,
+ });
if (response.status === 200) {
- const data = response.data.data
- this.transferData = data
+ const data = response.data.data;
+ this.transferData = data;
}
},
rend() {
- this.tableData = this.tableHeadData
+ this.tableData = this.tableHeadData;
},
handleSizeChange(val) {
this.isLoading = true;
setTimeout(() => {
- this.page.pageSize = val
- this.$emit('pageSize', val)
- this.CrudRend()
+ this.page.pageSize = val;
+ this.$emit("pageSize", val);
+ this.CrudRend();
}, 3000);
-
},
handleCurrentChange(val) {
this.isLoading = true;
setTimeout(() => {
- this.page.currentPage = val
- this.$emit('currentPage', val)
- this.CrudRend()
+ this.page.currentPage = val;
+ this.$emit("currentPage", val);
+ this.CrudRend();
}, 3000);
},
// 鐩戝惉鍗曞厓鏍肩偣鍑讳簨浠跺苟瀛樺偍姝e湪缂栬緫鐨勮
handleCellClick(row, column) {
this.editingRow = row;
this.editShow = column.property;
- this.rowOid = row.oid
+ this.rowOid = row.oid;
},
//鍒犻櫎
enumDeleteRow(row) {
- this.tableData.splice(row, 1)
+ this.tableData.splice(row, 1);
},
// 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬�
saveRow() {
@@ -310,23 +375,23 @@
MasterTable({
codeClassifyOid: this.codeClassifyOid,
functionId: 5,
- }).then(res => {
- this.options = res.data.tableDefineVO.seniorQueryColumns
+ }).then((res) => {
+ this.options = res.data.tableDefineVO.seniorQueryColumns;
this.List = res.data.tableDefineVO.cols[0];
- this.List.forEach(item => {
+ this.List.forEach((item) => {
let columnItem = {
label: item.title,
prop: item.field,
type: this.columnType[item.type],
sortable: item.sort,
- width: item.minWidth
+ width: item.minWidth,
};
this.option.column.push(columnItem);
this.option.column = this.tableHeadData;
- this.templateOid = res.data.tableDefineVO.oid
- this.$emit('templateOid', this.templateOid)
- })
- })
+ this.templateOid = res.data.tableDefineVO.oid;
+ this.$emit("templateOid", this.templateOid);
+ });
+ });
}
},
//琛ㄦ牸鏁版嵁
@@ -336,16 +401,16 @@
codeClassifyOid: this.codeClassifyOid,
page: this.page.currentPage,
limit: this.page.pageSize,
- }).then(res => {
+ }).then((res) => {
this.page.total = res.data.total;
this.data = res.data.data;
this.tableData = res.data.data;
- })
+ });
},
// 鎺掑簭
sortChange(val) {
this.isLoading = true;
- let order = ""
+ let order = "";
if (val.order == "ascending") {
order = "asc";
} else {
@@ -358,99 +423,101 @@
sort: val.prop,
page: this.page.currentPage,
limit: this.page.pageSize,
- }).then(res => {
+ }).then((res) => {
setTimeout(() => {
this.data = res.data.data;
this.isLoading = false;
}, 100);
- })
+ });
},
//鍒嗛〉鍒锋柊
async onLoad(val) {
- console.log('鍒嗛〉', this.templateOid)
await TableData({
templateOid: this.templateOid,
codeClassifyOid: this.codeClassifyOid,
page: val.currentPage,
limit: val.pageSize,
- }).then(res => {
+ }).then((res) => {
this.data = res.data.data;
- })
+ });
},
//澶氶��
handleSelectionChange(row) {
- if(this.row){
+ if (this.row) {
this.rowOid = row[0].oid;
- }else {
- this.rowOid=''
+ } else {
+ this.rowOid = "";
}
this.selectRow = row;
- console.log(row)
+ this.parameter.ids = [];
+ row.forEach((item) => {
+ this.parameter.ids.push(item.oid);
+ });
},
//缂栬緫
editHandler() {
- console.log('row',this.rowOid)
- console.log('temp',this.templateOid)
- console.log('code',this.codeClassifyOid)
- console.log('rule',this.coderuleoid)
if (this.selectRow.length <= 0) {
- this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+ this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
} else if (this.selectRow.length > 1) {
- this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
- } else if (this.selectRow[0].lcstatus != 'Editing') {
- this.$message.warning('缂栫爜鐘舵�佷笉鏄�滅紪杈戜腑鈥�,涓嶅彲缂栬緫')
+ this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�");
+ } else if (this.selectRow[0].lcstatus != "Editing") {
+ this.$message.warning("缂栫爜鐘舵�佷笉鏄�滅紪杈戜腑鈥�,涓嶅彲缂栬緫");
} else {
- this.editvisible = true
+ this.editvisible = true;
}
},
//楂樼骇鏌ヨ鎸夐挳
- findHandler(){
- this.findvisible=true
+ findHandler() {
+ this.findvisible = true;
},
// 楂樼骇鏌ヨ
echoContion(val) {
- console.log(val)
- FindData({templateOid:this.templateOid,
+ FindData({
+ templateOid: this.templateOid,
codeClassifyOid: this.codeClassifyOid,
- ...val
- }).then(res=>{
- console.log(res)
- })
+ ...val,
+ }).then((res) => {
+ console.log(res);
+ this.tableData=res.data.data;
+ this.page.total=res.data.total
+ });
},
//鐩镐技椤规煡璇�
- similarHandler(){
+ similarHandler() {
if (this.selectRow.length <= 0) {
- this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+ this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
} else if (this.selectRow.length > 1) {
- this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
- } else {
- this.similarVisible=true;
+ this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�");
+ } else {
+ this.similarVisible = true;
}
-
},
//鏁版嵁鏇存敼
- DataChange(){
+ DataChange() {
if (this.selectRow.length <= 0) {
- this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+ this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
} else if (this.selectRow.length > 1) {
- this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
- } else if (this.selectRow[0].lcstatus != 'Released') {
- this.$message.warning('鍙湁鐘舵�佷负宸插彂甯冪殑鏁版嵁鎵嶈兘杩涜鏁版嵁鏇存敼')
+ this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�");
+ } else if (this.selectRow[0].lcstatus != "Released") {
+ this.$message.warning("鍙湁鐘舵�佷负宸插彂甯冪殑鏁版嵁鎵嶈兘杩涜鏁版嵁鏇存敼");
} else {
- this.DataVisible = true
+ this.DataVisible = true;
}
},
//澧炲姞淇濆瓨
- AddSumbit(val){
- console.log(val)
- this.addvisible=false
+ AddSumbit() {
+ this.addvisible = false;
},
- EditSumbit(val){
- console.log(val)
- this.editvisible=false
+ EditSumbit(val) {
+ this.editvisible = false;
+ },
+ openBatchImport(type) {
+ this.batchImportData.visible = true
+ this.batchImportData.type = type
+ this.batchImportData.codeClassifyOid = this.codeClassifyOid
}
- }
-}
+ },
+};
</script>
<style lang="scss" scoped>
@@ -463,4 +530,10 @@
background-color: #f5f7fa !important;
}
}
+
+/deep/ .el-button {
+ margin: 0 10px 10px 0;
+}
+
+
</style>
--
Gitblit v1.9.3