| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649 | 
							- <template>
 
- 	<view class="m_right">
 
- 		<view class="m_right_hander">
 
- 			<button size="mini" class="m_btn_red" @click="addUser()">添加用户</button>
 
- 		</view>
 
- 		<view class="m_right_container">
 
- 			<table style="width: 100%;border: 1px solid #DDDDDD;border-collapse: collapse">
 
- 				<thead class="m-table-hander">
 
- 					<tr>
 
- 						<!-- <th>用户名</th> -->
 
- 						<th>姓名</th>
 
- 						<th>班级</th>
 
- 						<th>学号</th>
 
- 						<th>电话</th>
 
- 						<th>ilab账户</th>
 
- 						<th>注册时间</th>
 
- 						<th>身份</th>
 
- 						<th>分数</th>
 
- 						<th>修改信息</th>
 
- 						<th>删除</th>
 
- 					</tr>
 
- 				</thead>
 
- 				<tbody>
 
- 					<tr v-for="(dataUser,dataUserI) in dataUsers_all" :key="dataUserI">
 
- 						<!-- <th style="color: #EA252C;">{{dataUser.IlabAccount}}</th> -->
 
- 						<th>{{dataUser.Name}}</th>
 
- 						<th>{{dataUser.Class}}</th>
 
- 						<th>{{dataUser.StudentID}}</th>
 
- 						<th>{{dataUser.PhoneNum}}</th>
 
- 						<th>{{dataUser.IlabAccount}}</th>
 
- 						<th>{{dataUser.SignTime}}</th>
 
- 						<th>{{dataUser.Type}}</th>
 
- 						<th>{{dataUser.TotalScore}}</th>
 
- 						<th class="btn_bg"><button type="default" size="mini" class="m_edit" @click="modify(dataUser)">修改</button></th>
 
- 						<th class="btn_bg"><button type="default" size="mini" class="m_delete" @click="deleteUser(dataUser)">删除</button></th>
 
- 					</tr>
 
- 				</tbody>
 
- 			</table>
 
- 		</view>
 
- 		<view class="m_right_footer">
 
- 			<view class="m_paging">
 
- 				<text class="m_paging_item m_paging_upper" v-show="bShowLastPageBtn" @click="last()">上一页</text>
 
- 				<!-- <text class="m_paging_item" :key="i" v-for="i in pageTotalNum" @click="paging(i)" :class="i==index?'p_act':''"> -->
 
- 				<text class="m_paging_item" :key="i" v-for="i in pageTotalNum" @click="paging(i)" :class="i==currentPage?'p_act':''">
 
- 					{{i}}
 
- 				</text>
 
- 				<text class="m_paging_item m_paging_lower" v-show="bShowNextPageBtn" @click="next()">下一页</text>
 
- 			</view>
 
- 		</view>
 
- 		<popForm ref="popForm"></popForm>
 
- 		<popAlert ref="popAlert"></popAlert>
 
- 	</view>
 
- </template>
 
- <script>
 
- 	import popForm from '@/components/popForm.vue'
 
- 	import popAlert from '@/components/popAlert.vue'
 
- 	
 
- 	export default {
 
- 		name: "manager_user",
 
- 		components: {
 
- 			popForm,
 
- 			popAlert,
 
- 		},
 
- 		data() {
 
- 			return {
 
- 				pageTotalNum:1,
 
- 				currentPage:1,
 
- 				totalItem:2,
 
- 				dataUsers_all: [],
 
- 				bShowLastPageBtn:false,
 
- 				bShowNextPageBtn:false,
 
- 			}
 
- 		},
 
- 		methods: {
 
- 			paging(i) {
 
- 				// console.log('index=',i)
 
- 				uni.showLoading({
 
- 				    title: '加载中'  
 
- 				});
 
- 				
 
- 				let fromIndex = this.totalItem*(i-1);
 
- 				let toIndex = fromIndex+this.totalItem;
 
- 				
 
- 				let data = {
 
- 					"UserID": mydata_userInfo.userID,
 
- 					"BeginNum": fromIndex, //用户数组索引
 
- 					"EndNum": toIndex //用户数组索引结束
 
- 				}
 
- 				console.log('data===',data)
 
- 				uni.request({
 
- 					header: {
 
- 						'Content-Type': 'application/json;charset=UTF-8'
 
- 					},
 
- 					url: mydata_api + '/backstage/getalluser',
 
- 					method: 'POST',
 
- 					data: data,
 
- 					dataType: 'json',
 
- 					success: (res) => {
 
- 						//100成功
 
- 						if (res.data.Code == 100) {
 
- 							console.log("请求全部用户res", res);
 
- 							this.dataUsers_all = res.data.Users;
 
- 							this.pageTotalNum = Math.ceil(res.data.AllNumOfList/this.totalItem);
 
- 							this.currentPage = i;																		
 
- 							this.showNextOrLastPageBtn();
 
- 							
 
- 							this.setTotalScore();
 
- 						}
 
- 						//200失败
 
- 						else {
 
- 							console.log('suc200', res);							
 
- 						}
 
- 						uni.hideLoading();
 
- 					},
 
- 					fail: (res) => {
 
- 						console.log("请求失败****");
 
- 						uni.hideLoading();
 
- 					}
 
- 				});
 
- 			},
 
- 			initPage() {
 
- 				this.paging(1);
 
- 			},
 
- 			//分数合并
 
- 			setTotalScore() {
 
- 				for (let i = 0; i < this.dataUsers_all.length; i++) {
 
- 					
 
- 					let totalScore = 0;
 
- 					
 
- 					if(this.dataUsers_all[i].UserScore!="")
 
- 					{
 
- 						let UserScore = JSON.parse(this.dataUsers_all[i].UserScore);
 
- 						
 
- 						for (let j = 0; j < UserScore.length; j++) {
 
- 							
 
- 							let ascore = Number(UserScore[j].Score);
 
- 							// console.log('ascore=',ascore)
 
- 							if (ascore!=-1) {
 
- 								totalScore += ascore;
 
- 							}
 
- 						}
 
- 					}
 
- 				
 
- 					this.dataUsers_all[i].TotalScore = totalScore;
 
- 				}
 
- 			},
 
- 			last()
 
- 			{
 
- 				this.currentPage--;
 
- 				this.paging(this.currentPage);
 
- 			},
 
- 			next()
 
- 			{
 
- 				this.currentPage++;
 
- 				this.paging(this.currentPage);
 
- 			},
 
- 			showNextOrLastPageBtn()
 
- 			{
 
- 				if(this.pageTotalNum==this.currentPage)
 
- 				{
 
- 					this.bShowLastPageBtn = true;
 
- 					this.bShowNextPageBtn = false;
 
- 					// console.log('11111')
 
- 				}
 
- 				else if(1==this.currentPage)
 
- 				{
 
- 					this.bShowLastPageBtn = false;
 
- 					this.bShowNextPageBtn = true;
 
- 					// console.log('2222')
 
- 				}
 
- 				else
 
- 				{
 
- 					this.bShowLastPageBtn = true;
 
- 					this.bShowNextPageBtn = true;
 
- 					// console.log('333333')
 
- 				}
 
- 				
 
- 				if(this.pageTotalNum==1){
 
- 					this.bShowLastPageBtn = false;
 
- 					this.bShowNextPageBtn = false;
 
- 					// console.log('444444')
 
- 				}
 
- 			},
 
- 			addUser(){
 
- 				this.$refs.popForm.isShow(true);
 
- 				this.$refs.popForm.setTitle('添加用户');
 
- 				let _self = this;
 
- 				let callback = function(content_arr){
 
- 					let data = {
 
- 						"UserID":mydata_userInfo.userID,
 
- 						"Users":[
 
- 							{
 
- 								"IlabAccount":content_arr[0].input,
 
- 								"Name":content_arr[1].input, 
 
- 								"School":content_arr[2].input,
 
- 								"Department":content_arr[3].input,  
 
- 								"Profession":content_arr[4].input,    
 
- 								"Class":content_arr[5].input,          
 
- 								"StudentID":Number(content_arr[6].input),       
 
- 								"Post":content_arr[7].input,            
 
- 								"PhoneNum":Number(content_arr[8].input),
 
- 								"Email":content_arr[9].input,
 
- 								"Nation":content_arr[10].input,             
 
- 								"PoliticsStatus":content_arr[11].input, 
 
- 								"NativePlace":content_arr[12].input,   
 
- 								"Certificate":content_arr[13].input,
 
- 								"CertificateNum":content_arr[14].input,        
 
- 							}
 
- 						]					
 
- 					}
 
- 					// console.log('添加用户data===',data)
 
- 					
 
- 					uni.showLoading({
 
- 					    title: '上传中'  
 
- 					});
 
- 					
 
- 					uni.request({
 
- 						header: {
 
- 							'Content-Type': 'application/json;charset=UTF-8'
 
- 						},
 
- 						url: mydata_api + '/backstage/addusers',
 
- 						method: 'POST',
 
- 						data: data,
 
- 						dataType: 'json',
 
- 						success: (res) => {
 
- 							//100成功
 
- 							if (res.data.Code == 100) {
 
- 								console.log("添加用户成功", res);
 
- 								
 
- 								data = {
 
- 									"UserID":dataUser.Id,
 
- 									"Type":content_arr[15].input,					
 
- 								}
 
- 								uni.request({
 
- 									header: {
 
- 										'Content-Type': 'application/json;charset=UTF-8'
 
- 									},
 
- 									url: mydata_api + '/user/setusertype',
 
- 									method: 'POST',
 
- 									data: data,
 
- 									dataType: 'json',
 
- 									success: (res) => {
 
- 										//100成功
 
- 										if (res.data.Code == 100) {
 
- 											console.log("设置用户Type成功", res);
 
- 											_self.paging(_self.currentPage);
 
- 										}
 
- 										//200失败
 
- 										else {
 
- 											console.log('设置用户Type失败200', res);	
 
- 										}
 
- 										uni.hideLoading();
 
- 									},
 
- 									fail: (res) => {
 
- 										console.log("设置用户Type失败");
 
- 										uni.hideLoading();
 
- 									}
 
- 								});
 
- 							}
 
- 							//200失败
 
- 							else {
 
- 								console.log('添加用户成功失败200', res);	
 
- 							}
 
- 							uni.hideLoading();
 
- 						},
 
- 						fail: (res) => {
 
- 							console.log("添加用户成功失败");
 
- 							uni.hideLoading();
 
- 						}
 
- 					});
 
- 				};
 
- 				this.$refs.popForm.setContent([
 
- 					{
 
- 						'name':'Ilab账号',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'姓名',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'学校',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'院系',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'专业',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'班级',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'学号',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'职务',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'电话',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'邮箱',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'民族',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'政治面貌',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'籍贯',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'证件类型',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'证件号码',
 
- 						'input':'',
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'身份',
 
- 						'input':'学生',
 
- 						'type' :'text'
 
- 					}
 
- 				],callback);
 
- 			},
 
- 			modify(dataUser)
 
- 			{
 
- 				this.$refs.popForm.isShow(true);
 
- 				this.$refs.popForm.setTitle('修改用户信息');
 
- 				
 
- 				let _self = this;
 
- 				
 
- 				let callback = function(content_arr){
 
- 					
 
- 						let data = {
 
- 							"UserID":mydata_userInfo.userID,
 
- 							"SetUserID" : dataUser.Id,
 
- 							"Name":content_arr[0].input,
 
- 							"School":dataUser.School,
 
- 							"Department":dataUser.Department,
 
- 							"Profession":dataUser.Profession,
 
- 							"Class":content_arr[1].input,
 
- 							"StudentID":Number(content_arr[2].input),
 
- 							"Post":dataUser.Post,
 
- 							"PhoneNum":Number(content_arr[3].input),
 
- 							"Email":dataUser.Email,
 
- 							"Nation":dataUser.Nation,
 
- 							"PoliticsStatus":dataUser.PoliticsStatus,
 
- 							"NativePlace":dataUser.NativePlace,
 
- 							"Certificate":dataUser.Certificate,
 
- 							"CertificateNum":dataUser.CertificateNum,
 
- 						}
 
- 						// console.log('data=',data)
 
- 						uni.showLoading({
 
- 						    title: '上传中'  
 
- 						});
 
- 						
 
- 						uni.request({
 
- 							header: {
 
- 								'Content-Type': 'application/json;charset=UTF-8'
 
- 							},
 
- 							url: mydata_api + '/user/setuserinfo',
 
- 							method: 'POST',
 
- 							data: data,
 
- 							dataType: 'json',
 
- 							success: (res) => {
 
- 								//100成功
 
- 								if (res.data.Code == 100) {
 
- 									console.log("修改用户信息成功", res);
 
- 									
 
- 									data = {
 
- 										"UserID":dataUser.Id,
 
- 										"Type":content_arr[4].input,					
 
- 									}
 
- 									uni.request({
 
- 										header: {
 
- 											'Content-Type': 'application/json;charset=UTF-8'
 
- 										},
 
- 										url: mydata_api + '/user/setusertype',
 
- 										method: 'POST',
 
- 										data: data,
 
- 										dataType: 'json',
 
- 										success: (res) => {
 
- 											//100成功
 
- 											if (res.data.Code == 100) {
 
- 												console.log("设置用户Type成功", res);
 
- 												_self.paging(_self.currentPage);
 
- 											}
 
- 											//200失败
 
- 											else {
 
- 												console.log('设置用户Type失败200', res);	
 
- 											}
 
- 											uni.hideLoading();
 
- 										},
 
- 										fail: (res) => {
 
- 											console.log("设置用户Type失败");
 
- 											uni.hideLoading();
 
- 										}
 
- 									});
 
- 								}
 
- 								//200失败
 
- 								else {
 
- 									console.log('修改用户信息失败200', res);
 
- 								}
 
- 								
 
- 								uni.hideLoading();
 
- 							},
 
- 							fail: (res) => {
 
- 								console.log("修改用户信息失败");
 
- 								uni.hideLoading();
 
- 							}
 
- 						});			
 
- 				};
 
- 				this.$refs.popForm.setContent([
 
- 					
 
- 					{
 
- 						'name':'姓名',
 
- 						'input':dataUser.Name,
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'班级',
 
- 						'input':dataUser.Class,
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'学号',
 
- 						'input':dataUser.StudentID,
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'电话',
 
- 						'input':dataUser.PhoneNum,
 
- 						'type' :'text'
 
- 					},
 
- 					{
 
- 						'name':'身份',
 
- 						'input':dataUser.Type,
 
- 						'type' :'text'
 
- 					}
 
- 				],callback);
 
- 			},
 
- 			deleteUser(dataUser)
 
- 			{
 
- 				this.$refs.popAlert.isShow(true);	
 
- 				this.$refs.popAlert.setTitle('提示');
 
- 				let _self = this;		
 
- 				let callback = function(){
 
- 					let data = {
 
- 						"UserID":mydata_userInfo.userID,
 
- 						"DeleteUserID" : dataUser.Id
 
- 					}
 
- 					console.log('data=',data)
 
- 					uni.showLoading({
 
- 					    title: '上传中'  
 
- 					});
 
- 					
 
- 					uni.request({
 
- 						header: {
 
- 							'Content-Type': 'application/json;charset=UTF-8'
 
- 						},
 
- 						url: mydata_api + '/backstage/deleteuser',
 
- 						method: 'POST',
 
- 						data: data,
 
- 						dataType: 'json',
 
- 						success: (res) => {
 
- 							//100成功
 
- 							if (res.data.Code == 100) {
 
- 								console.log("删除用户成功", res);
 
- 								_self.paging(_self.currentPage);
 
- 							}
 
- 							//200失败
 
- 							else {
 
- 								console.log('删除用户失败200', res);
 
- 							}
 
- 							
 
- 							uni.hideLoading();
 
- 						},
 
- 						fail: (res) => {
 
- 							console.log("删除用户失败");
 
- 							uni.hideLoading();
 
- 						}
 
- 					});
 
- 				}
 
- 				
 
- 				this.$refs.popAlert.setContent('是否删除用户',callback);
 
- 			},
 
- 		}
 
- 	}
 
- </script>
 
- <style lang="scss">
 
- 	// 允许文字被选择
 
- 	th
 
- 	{
 
- 	moz-user-select: -moz-text;
 
- 	-moz-user-select: text;
 
- 	-o-user-select: text;
 
- 	-khtml-user-select: text;
 
- 	-webkit-user-select: text;
 
- 	-ms-user-select: text;
 
- 	user-select: text;
 
- 	}
 
- 	.m_right {
 
- 		width: 100%;
 
- 		margin-top: 5rpx;
 
- 		padding: 0 150rpx;
 
- 		background-color: #fff;
 
- 		box-shadow: 3px 0px 6px 0px rgba(0, 0, 0, 0.1);
 
- 		.m_right_hander {
 
- 			text-align: right;
 
- 			height: 250rpx;
 
- 			position: relative;
 
- 			.m_btn_red {
 
- 				position: absolute;
 
- 				height: 80rpx;
 
- 				line-height: 80rpx;
 
- 				padding: 0 40rpx;
 
- 				right: 0;
 
- 				top: 50%;
 
- 				transform: translateY(-50%);
 
- 				background: #EA252C;
 
- 				color: #fff;
 
- 			}
 
- 		}
 
- 	}
 
- 	tbody tr {
 
- 		// border-top: 2rpx solid #DDDDDD !important;
 
- 		border: 2rpx solid #DDDDDD !important;
 
- 	}
 
- 	th {
 
- 		border: 2rpx solid #DDDDDD !important;
 
- 	}
 
- 	
 
- 	tbody tr th {
 
- 		font-weight: 400 !important;
 
- 		height: 140rpx;
 
- 		line-height: 140rpx;
 
- 		border: 2rpx solid #DDDDDD !important;
 
- 	}
 
- 	// tbody tr:hover {
 
- 	// 	// color: #fff;
 
- 	// 	background: #FDEBEC;
 
- 	// 	// opacity: 0.08;
 
- 	// }
 
- 	.center{
 
- 		display: flex;
 
- 		justify-content: center;
 
- 		align-items: center;
 
- 	}
 
- 	.m-table-hander {
 
- 		background-color: #FFF8F7;
 
- 		height: 140rpx;
 
- 		line-height: 140rpx;
 
- 		font-family: MicrosoftYaHei-Bold, MicrosoftYaHei;
 
- 		font-weight: bold;
 
- 	}
 
- 	.btn_bg{
 
- 		// border: 1rpx solid #DDDDDD;
 
- 		
 
- 		// display: flex;
 
- 		// justify-content: center;
 
- 		// align-items: center;
 
- 	}
 
- 	.m_edit {
 
- 		// position: relative;
 
- 		// top: 50%;
 
- 		// left: 50%;
 
- 		// transform: translate(-50%, -50%);
 
- 		background: rgb(67, 127, 250);
 
- 		color: rgb(255, 255, 255);
 
- 		// width: 60%;
 
- 	}
 
- 	.m_delete {
 
- 		background: rgb(234, 37, 44);
 
- 		color: rgb(255, 255, 255);
 
- 		// width: 60%;
 
- 	}
 
- 	.m_right_footer {
 
- 		margin-top: 80rpx;
 
- 	}
 
- 	.m_paging {
 
- 		text-align: right;
 
- 		.m_paging_item {
 
- 			padding: 10rpx 18rpx;
 
- 			border: 1rpx solid #DDDDDD;
 
- 			border-radius: 8rpx;
 
- 			margin-right: 10rpx;
 
- 		}
 
- 		.p_act {
 
- 			background: #EA252C;
 
- 			color: #fff;
 
- 			border: inherit;
 
- 		}
 
- 	}
 
- 	.m_paging_item:hover {
 
- 		background: #EA252C;
 
- 		color: #fff;
 
- 		border: inherit;
 
- 	}
 
- 	.m_act1 {
 
- 		color: #FF0019;
 
- 	}
 
- 	
 
- </style>
 
 
  |