From 3ff6166ea62799068064845fb083d1abb3d902a6 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期一, 09 十二月 2024 14:47:42 +0800
Subject: [PATCH] plt-slice属性调整后WEB端引用的旧属性也做了相应的调整
---
Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue | 128 ++++++++++++++++++++++++++++++++----------
1 files changed, 96 insertions(+), 32 deletions(-)
diff --git a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue
index 8afee4f..da12fef 100644
--- a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue
+++ b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue
@@ -1,62 +1,91 @@
<template>
- <el-dialog
- v-dialogDrag
- :close-on-click-modal="false"
- :destroy-on-close="true"
- :title="title"
- :visible.sync="visible"
- append-to-body="true"
- class="avue-dialog"
- style="text-align: center"
- width="40%"
- @close="dialogClose">
+ <el-dialog
+ v-dialogDrag
+ :close-on-click-modal="false"
+ :title="title"
+ :visible.sync="visible"
+ append-to-body="true"
+ class="avue-dialog"
+ width="800px"
+ @close="dialogClose">
+ <div style="height: 42px;line-height: 30px;margin-top: -5px;" v-if="topMethodsObj !== {} && topMethodsObj">
+ <div>
+ <span>瀵煎嚭鏂瑰紡锛�</span>
+ <el-radio-group v-model="radio">
+ <el-radio :label="0" v-if="topMethodsObj.select">閫夋嫨</el-radio>
+ <el-radio :label="1" v-if="topMethodsObj.all">鍏ㄩ儴</el-radio>
+ <el-radio :label="2" v-if="topMethodsObj.page">椤电爜</el-radio>
+ </el-radio-group>
+ <span v-if="radio === 2" style="margin-left: 20px;color: #F56C6C; ">
+ <el-input v-model="pageExport" style="width: 150px" size="mini"></el-input> 锛堣緭鍏ラ〉鐮佹垨鑰呴〉闈㈣寖鍥达紝濡傦細1-10锛�</span>
+ </div>
+ </div>
+ <div style="text-align: center">
<el-transfer
v-model="rightRoleData"
v-loading="loading"
:data="data"
:filter-method="filterMethod"
:render-content="renderFunc"
- :titles="['鐜版湁瑙掕壊', '鎷ユ湁瑙掕壊']"
- filter-placeholder="瑙掕壊鍚嶇О鎼滅储"
+ @change="handleChange"
+ :titles="transferTitle"
+ filter-placeholder="鍏抽敭璇嶆悳绱�"
filterable
- style="text-align: left; display: inline-block;">
+ style="text-align:left;display: inline-block;">
</el-transfer>
- <span slot="footer" class="dialog-footer">
- <el-button @click="visible = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="sendHandler">纭� 瀹�</el-button>
- </span>
- </el-dialog>
+ </div>
+
+ <div slot="footer" class="dialog-footer">
+ <div v-if="bottomValue" class="valueInfo">宸茶缃殑鍊间负锛歔{{ bottomValue }}]</div>
+ <el-button size="small" type="primary" @click="sendHandler">纭� 瀹�</el-button>
+ <el-button size="small" @click="visible = false">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
</template>
<script>
+import func from "@/util/func";
+
export default {
name: "transfer",
- props: ['title', 'leftRoleData', 'rightRoleData'],
+ props: ['title', 'leftRoleData', 'rightRoleData', 'transferTitle', 'bottomValue', 'topMethodsObj', 'selectList'],
+ /**
+ * topMethodsObj:{
+ select:true,
+ all:true,
+ page:false
+ },
+ 鎺у埗椤跺眰閫夋嫨椤规槸鍚﹀睍绀猴紝闇�瑕侀厤鍚坰electList浣跨敤
+ * @returns {object}
+ */
data() {
return {
+ radio: 0,
+ pageExport: "",
visible: false, // 閫氳繃 this.$refs.transfer.visible = true; 寮�鍚瓙缁勪欢瀵硅瘽妗�
data: [],
- value: [],
loading: false,
filterMethod(query, item) {
return item.label.indexOf(query) > -1;
},
renderFunc(h, option) {
- return <span><i class="el-icon-s-custom"></i> { option.label }</span>;
+ return <span><i class="el-icon-s-custom"></i> {option.label}</span>;
}
}
},
watch: {
//娓叉煋绌挎妗�
leftRoleData: {
- handler(newval, oldval) {
+ // 闇�瑕佸湪鎵撳紑绌挎妗嗙粍浠剁殑鏃跺�欏leftRoleData杩涜璧嬪�硷紙鍙互鍙傝�僡ction绠$悊-action鍒楄〃 瀵煎嚭鍔熻兘锛� 濡傛灉鍦╠ata閲岄潰瀹氫箟鐨勬暟鎹紝缁勪欢鍐厀atch浼氱洃鍚笉鍒皀ewVal
+ handler(newval) {
if (newval) {
// 娓呯┖data鏁扮粍
this.data = [];
- newval.forEach((city, index) => {
+ newval.forEach((item) => {
this.data.push({
- label: city.name,
- key: city.oid,
+ ...item,
+ label: item.name,
+ key: item.oid
});
});
this.loading = false;
@@ -70,23 +99,58 @@
methods: {
dialogClose() {
this.visible = false;
- this.data = [];
- this.leftRoleData = [];
+ //this.data = [];
+ //this.rightRoleData = [];
},
sendHandler() {
- this.$emit('transferSend', this.rightRoleData);
+ if (func.isEmptyObject(this.topMethodsObj)) {
+ this.$emit('transferSend', this.rightRoleData);
+ } else {
+ if (this.radio === 0) {
+ if (this.selectList.length <= 0) {
+ this.$message.warning('璇烽�夋嫨瑕佸鍑虹殑妯℃澘')
+ return
+ }
+ this.$emit('transferSend', this.rightRoleData, 0);
+ } else if (this.radio === 1) {
+ this.$emit('transferSend', this.rightRoleData, 1);
+ }
+ }
+
this.visible = false;
},
+ handleChange(value, direction, movedKeys) {
+ }
}
}
</script>
<style lang="scss" scoped>
-/deep/ .el-transfer-panel{ /* 宸﹀彸涓や釜绌挎妗嗙殑楂樺害鍜屽搴� */
- height: 450px;
+/deep/ .el-transfer-panel {
+ height: 450px; /* 宸﹀彸涓や釜绌挎妗嗙殑楂樺害鍜屽搴� */
+ width: 322px;
}
+
/deep/ .el-transfer-panel__list.is-filterable {
height: 323px; /* 绌挎妗嗗垪琛ㄩ珮搴� */
}
-
+/deep/ .el-transfer__buttons .el-button{
+ display: block;
+ margin: 30px 0;
+ padding: 8px 15px;
+}
+/deep/ .el-transfer__button:first-child{
+ transform: translateY(200%);
+}
+/deep/ .el-transfer__button:nth-child(2){
+ transform: translateY(-200%);
+}
+.valueInfo {
+ float: left;
+ border: 1px solid #E9E7E7;
+ display: inline-block;
+ vertical-align: middle;
+ padding: 6px 12px;
+ line-height: 1;
+}
</style>
--
Gitblit v1.9.3