11wqe1 před 1 měsícem
rodič
revize
692d0c9b7d

+ 0 - 60
src/components/instupdata.vue

@@ -260,66 +260,6 @@ export default {
 			this.inData.content = html;
 			// console.log(html);
 		},
-		// async beforeUpload1(event) {
-		// 	var file = event.target.files;
-		//     console.log('event.target.files',event.target.files);
-
-		// 	var credentials = {
-		// 		accessKeyId: "AKIATLPEDU37QV5CHLMH",
-		// 		secretAccessKey: "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",
-		// 	}; //秘钥形式的登录上传
-		// 	window.AWS.config.update(credentials);
-		// 	window.AWS.config.region = "cn-northwest-1"; //设置区域
-
-		// 	var bucket = new window.AWS.S3({ params: { Bucket: "ccrb" } }); //选择桶
-		// 	var _this = this;
-		// 	// _this.progress = 0;
-		// 	var photoA = [
-		// 		'PDF'
-		// 	];
-		// 	if (
-		// 		photoA.indexOf(
-		// 			file.name.split(".")[file.name.split(".").length - 1].toLocaleUpperCase()
-		// 		) == -1
-		// 	) {
-		// 		_this.$message.error("请上传PDF!");
-		// 		return;
-		// 	}
-
-		// 	if (file) {
-		// 		var params = {
-		// 			Key:
-		// 				file.name.split(".")[0] +
-		// 				new Date().getTime() +
-		// 				"." +
-		// 				file.name.split(".")[file.name.split(".").length - 1],
-		// 			ContentType: file.type,
-		// 			Body: file,
-		// 			"Access-Control-Allow-Credentials": "*",
-		// 			ACL: "public-read",
-		// 		}; //key可以设置为桶的相抵路径,Body为文件, ACL最好要设置
-		// 		var options = {
-		// 			// partSize: 2048 * 1024 * 1024,
-		// 			partSize: 1024 * 1024 * 1024,
-		// 			queueSize: 2,
-		// 			leavePartsOnError: true,
-		// 		};
-		// 		bucket
-		// 			.upload(params, options)
-		// 			.on("httpUploadProgress", function () {
-		// 				//这里可以写进度条
-		// 			})
-		// 			.send(function (err, data) {
-		// 				if (err) {
-
-		// 					_this.$message.error("上传失败");
-		// 				} else {
-		//                     _this.inData.file.push(data.Location)
-		// 					console.log(data.Location);
-		// 				}
-		// 			});
-		// 	}
-		// },
 		async beforeUpload1(event) {
 			var files = Array.from(event.target.files);
 			console.log("上传文件列表:", files);

+ 88 - 3
src/components/organList.vue

@@ -355,6 +355,44 @@
 							end-placeholder="结束日期"
 							:default-time="['12:00:00', '08:00:00']">
 						</el-date-picker>
+                    </div>
+                    <div class="el-form-item" style="align-items:flex-start;">
+                        <label class="el-form-item__label" style="width: 100px;flex-shrink: 0;">自定义分类</label>
+						<div style="">
+							<el-button size="mini" type="primary" @click="addType()">添加分类</el-button>
+							<div v-if="editCyInfo.typeL && editCyInfo.typeL.length" style="margin-top: 10px;">
+								<div v-for="(item,index) in editCyInfo.typeL" :key="item.id">
+									<div style="display: flex;gap: 20px;">
+										<div style="display: flex;align-items: center;gap: 10px;">
+											<el-input 
+												v-if="item.eit == 0" 
+												v-model="editCyInfo.typeL[index].name" placeholder="请输入内容">
+											</el-input>
+											<span v-else>{{ item.name }}</span>
+										</div>
+										<span class="btn" @click="Deltype(index)">删除</span>
+										<span class="btn" v-if="item.eit == 0" @click="editCyInfo.typeL[index].eit = 1">确定</span>
+										<span class="btn" v-else @click="editCyInfo.typeL[index].eit = 0">编辑</span>
+									</div>
+									<div class="tagL">
+										<template v-if="item.children.length">
+											<span style="display: flex;gap: 10px;align-items: center;" v-for="(i,ind) in item.children" :key="i.id">
+												<el-input 
+													v-if="i.eit == 0" 
+													v-model="editCyInfo.typeL[index].children[ind].name" placeholder="请输入内容">
+												</el-input>
+												<span v-else>{{ i.name }}</span>
+												<span class="btn" @click="Deltag(index,ind)">删除</span>
+												<span class="btn" v-if="i.eit == 0" @click="editCyInfo.typeL[index].children[ind].eit = 1">确定</span>
+												<span class="btn" v-else @click="editCyInfo.typeL[index].children[ind].eit = 0">编辑</span>
+											</span>
+										</template>
+										<span @click="Addtag(index)">添加</span>
+									</div>
+								</div>
+							</div>
+							
+						</div>
                     </div>
 					<div class="el-form-item">
                         <label class="el-form-item__label" style="width: 100px">banner</label>
@@ -550,6 +588,27 @@ export default {
 
     // },
     methods: {
+        addType(){
+			this.editCyInfo.typeL.push({
+				id: Date.now(),
+				name: '',
+				eit: 0,
+				children: []
+			})
+		},
+		Deltype(ind){
+			this.editCyInfo.typeL.splice(ind,1)
+		},
+		Deltag(index,ind){
+			this.editCyInfo.typeL[index].children.splice(ind,1)
+		},
+		Addtag(index){
+			this.editCyInfo.typeL[index].children.push({
+				id: Date.now(),
+				name: '',
+				eit:0,
+			})
+		},
         // 表头的背景色
         headerCellStyle() {
             return { backgroundColor: "#f1f1f1" };
@@ -1017,6 +1076,7 @@ export default {
                 oid:this.cyInfo.id,
                 ban: this.editCyInfo.banner,
                 eva: this.editCyInfo.evatime ? JSON.stringify(this.editCyInfo.evatime) : '',
+                typ: (this.editCyInfo.typeL && this.editCyInfo.typeL.length) ? JSON.stringify(this.editCyInfo.typeL) : '',
             };
             addCommunity(params)
               .then(async (response) => {
@@ -1035,7 +1095,7 @@ export default {
                     });
                     this.dialogcyADD = false;
                     this.getCy()
-                    this.editCyInfo = {name:'',banner:'',evatime:''};
+                    this.editCyInfo = {name:'',banner:'',evatime:'',typeL:[]};
                 }
               })
               .catch((error) => {
@@ -1051,6 +1111,7 @@ export default {
                 nam: this.editCyInfo.name,
                 ban: this.editCyInfo.banner,
                 eva: this.editCyInfo.evatime ? JSON.stringify(this.editCyInfo.evatime) : '',
+                typ: (this.editCyInfo.typeL && this.editCyInfo.typeL.length) ? JSON.stringify(this.editCyInfo.typeL) : '',
             };
             console.log('params',params);
             
@@ -1071,7 +1132,7 @@ export default {
                     });
                     this.dialogcyADD = false;
                     this.getCy()
-                    this.editCyInfo = {name:'',banner:'',evatime:''};
+                    this.editCyInfo = {name:'',banner:'',evatime:'',typeL:[]};
                 }
               })
               .catch((error) => {
@@ -1309,7 +1370,7 @@ export default {
         },
         handleClose2(){
             this.editCyInfo = ''
-            this.editCyInfo = {name:'',banner:'',evatime:''};
+            this.editCyInfo = {name:'',banner:'',evatime:'',typeL:[]};
             this.dialogcyADD=false;
             this.dialogcyperson = false
         }
@@ -1472,4 +1533,28 @@ export default {
 	position: absolute;top: 0;right: 5px;
 	cursor: pointer;
 }
+ .custom-tree-node {
+    flex: 1;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    font-size: 14px;
+    padding-right: 8px;
+  }
+  .tagL{
+	display: flex;
+	align-items: center;
+	flex-wrap: wrap;
+	gap: 5px;
+	margin-top: 10px;
+  }
+  .tagL span{
+	background: aqua;
+    padding: 5px 3px;
+    border-radius: 5px;
+	flex-shrink: 0;
+  }
+  .btn{
+	cursor: pointer;
+  }
 </style>

+ 90 - 4
src/components/schoolList.vue

@@ -430,6 +430,44 @@
 							end-placeholder="结束日期"
 							:default-time="['12:00:00', '08:00:00']">
 						</el-date-picker>
+                    </div>
+					<div class="el-form-item" style="align-items:flex-start;">
+                        <label class="el-form-item__label" style="width: 100px;flex-shrink: 0;">自定义分类</label>
+						<div style="">
+							<el-button size="mini" type="primary" @click="addType()">添加分类</el-button>
+							<div v-if="editCyInfo.typeL && editCyInfo.typeL.length" style="margin-top: 10px;">
+								<div v-for="(item,index) in editCyInfo.typeL" :key="item.id">
+									<div style="display: flex;gap: 20px;">
+										<div style="display: flex;align-items: center;gap: 10px;">
+											<el-input 
+												v-if="item.eit == 0" 
+												v-model="editCyInfo.typeL[index].name" placeholder="请输入内容">
+											</el-input>
+											<span v-else>{{ item.name }}</span>
+										</div>
+										<span class="btn" @click="Deltype(index)">删除</span>
+										<span class="btn" v-if="item.eit == 0" @click="editCyInfo.typeL[index].eit = 1">确定</span>
+										<span class="btn" v-else @click="editCyInfo.typeL[index].eit = 0">编辑</span>
+									</div>
+									<div class="tagL">
+										<template v-if="item.children.length">
+											<span style="display: flex;gap: 10px;align-items: center;" v-for="(i,ind) in item.children" :key="i.id">
+												<el-input 
+													v-if="i.eit == 0" 
+													v-model="editCyInfo.typeL[index].children[ind].name" placeholder="请输入内容">
+												</el-input>
+												<span v-else>{{ i.name }}</span>
+												<span class="btn" @click="Deltag(index,ind)">删除</span>
+												<span class="btn" v-if="i.eit == 0" @click="editCyInfo.typeL[index].children[ind].eit = 1">确定</span>
+												<span class="btn" v-else @click="editCyInfo.typeL[index].children[ind].eit = 0">编辑</span>
+											</span>
+										</template>
+										<span @click="Addtag(index)">添加</span>
+									</div>
+								</div>
+							</div>
+							
+						</div>
                     </div>
 					<div class="el-form-item">
                         <label class="el-form-item__label" style="width: 100px">banner</label>
@@ -553,7 +591,7 @@ export default {
             cyloading:false,
 
             // 社区添加与修改所存储的信息 
-            editCyInfo:{name:'',banner:'',evatime:''},
+            editCyInfo:{name:'',banner:'',evatime:'',typeL:[]},
             // 添加与修改社区共用一个弹框 0是添加信息 1 修改信息
             isedit:0,
             // 添加与修改社区弹框
@@ -624,6 +662,27 @@ export default {
 		};
 	},
 	methods: {
+		addType(){
+			this.editCyInfo.typeL.push({
+				id: Date.now(),
+				name: '',
+				eit: 0,
+				children: []
+			})
+		},
+		Deltype(ind){
+			this.editCyInfo.typeL.splice(ind,1)
+		},
+		Deltag(index,ind){
+			this.editCyInfo.typeL[index].children.splice(ind,1)
+		},
+		Addtag(index){
+			this.editCyInfo.typeL[index].children.push({
+				id: Date.now(),
+				name: '',
+				eit:0,
+			})
+		},
 		// 表头的背景色
 		headerCellStyle() {
 			return { backgroundColor: "#f1f1f1" };
@@ -1093,6 +1152,7 @@ export default {
 							e.evatime = JSON.parse(e.evatime)
 							e.evatime2 = e.evatime.map(dateStr => this.formatDateCy(dateStr)).join('——')
 						}
+						e.typeL = JSON.parse(e.typeL)
 					});
                     this.cytableData = data
 					console.log('this.cytableData',this.cytableData);
@@ -1144,6 +1204,7 @@ export default {
                 oid:this.cyInfo.id,
                 ban: this.editCyInfo.banner,
                 eva: this.editCyInfo.evatime ? JSON.stringify(this.editCyInfo.evatime) : '',
+                typ: (this.editCyInfo.typeL && this.editCyInfo.typeL.length) ? JSON.stringify(this.editCyInfo.typeL) : '',
             };
             addCommunity(params)
               .then(async (response) => {
@@ -1162,7 +1223,7 @@ export default {
                     });
                     this.dialogcyADD = false;
                     this.getCy()
-                    this.editCyInfo = {name:'',banner:'',evatime:''};
+                    this.editCyInfo = {name:'',banner:'',evatime:'',typeL:[]};
                 }
               })
               .catch((error) => {
@@ -1178,6 +1239,7 @@ export default {
                 nam: this.editCyInfo.name,
                 ban: this.editCyInfo.banner,
                 eva: this.editCyInfo.evatime ? JSON.stringify(this.editCyInfo.evatime) : '',
+                typ: (this.editCyInfo.typeL && this.editCyInfo.typeL.length) ? JSON.stringify(this.editCyInfo.typeL) : '',
             };
             console.log('params',params);
 
@@ -1198,7 +1260,7 @@ export default {
                     });
                     this.dialogcyADD = false;
                     this.getCy()
-                    this.editCyInfo = {name:'',banner:'',evatime:''};
+                    this.editCyInfo = {name:'',banner:'',evatime:'',typeL:[]};
                 }
               })
               .catch((error) => {
@@ -1436,7 +1498,7 @@ export default {
         },
         handleClose2(){
             this.editCyInfo = ''
-            this.editCyInfo = {name:'',banner:'',evatime:''};
+            this.editCyInfo = {name:'',banner:'',evatime:'',typeL:[]};
             this.dialogcyADD=false;
             this.dialogcyperson = false
         }
@@ -1605,4 +1667,28 @@ export default {
 	position: absolute;top: 0;right: 5px;
 	cursor: pointer;
 }
+ .custom-tree-node {
+    flex: 1;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    font-size: 14px;
+    padding-right: 8px;
+  }
+  .tagL{
+	display: flex;
+	align-items: center;
+	flex-wrap: wrap;
+	gap: 5px;
+	margin-top: 10px;
+  }
+  .tagL span{
+	background: aqua;
+    padding: 5px 3px;
+    border-radius: 5px;
+	flex-shrink: 0;
+  }
+  .btn{
+	cursor: pointer;
+  }
 </style>