he2802 4 yıl önce
ebeveyn
işleme
ebdbfdb5d6

+ 14 - 0
common/httpList/userInfo.js

@@ -17,4 +17,18 @@ export default {
 			data: data,
 		})
 	},
+	getSchoolInfo(data) {
+		return myRequest({
+			url: '/school/info/getInfo',
+			method: 'get',
+			data: data,
+		})
+	},
+	updateSchoolInfo(data) {
+		return myRequest({
+			url: '/school/info/edit',
+			method: 'post',
+			data: data,
+		})
+	},
 }

+ 4 - 1
pages2/bank/detail.vue

@@ -257,9 +257,12 @@ export default {
 			} else {
 				this.getBankDListSJ(options);
 			}
-			this.teacherS(options.teacherIds);
+			if(options.teacherIds!=null){
+				this.teacherS(options.teacherIds);
+			}
 			this.recommendList(options);
 		});
+		
 	},
 	onShow() {},
 	methods: {

+ 202 - 30
pages2/wd/edu_info.vue

@@ -11,74 +11,75 @@
 		</view>
 		<view class="form">
 			<u-form :model="form" ref="uForm">
-				<u-form-item label="学校名称" :label-width="auto"><u-input v-model="form.name" /></u-form-item>
+				<u-form-item label="学校名称" :label-width="auto"><u-input v-model="schoolInfo.schoolName" /></u-form-item>
 				<u-form-item label="全日制" :label-width="auto">
-					<picker @change="bindPickerChangeSex" :value="index_sex" :range="array_sex">
+					<picker @change="bindPickerChangeFull" :value="index_full" :range="dictObj['full_time_school']">
 					              <view class="picker">
-					                {{array_sex[index_sex]}}
+					                {{dictObj['full_time_school'][index_full]}}
 					              </view>
 					    </picker>
 				</u-form-item>
 				<u-form-item  label="入学时间" prop="birth" :label-width="auto">
-					<picker mode="date" :value="form.date"   @change="bindDateChange">
+					<picker mode="date" :value="admissionTime"   @change="bindDateChange">
 						<view class="picker">
-						  {{form.date}}
+						  {{admissionTime}}
 						</view>
 					  </picker>
 				</u-form-item>
 				<u-form-item  label="毕业时间" prop="birth" :label-width="auto">
-					<picker mode="date" :value="form.date"   @change="bindDateChange">
+					<picker mode="date" :value="graduationTime"   @change="bindDateChange2">
 						<view class="picker">
-						  {{form.date}}
+						  {{graduationTime}}
 						</view>
 					  </picker>
 				</u-form-item>
 				<u-form-item label="学历">
-					<picker @change="bindPickerChangeSex" :value="index_sex" :range="array_sex">
+					<picker @change="bindPickerChangeLevel" :value="index_level" :range="dictObj['school_level']">
 					              <view class="picker">
-					                {{array_sex[index_sex]}}
+					                {{dictObj['school_level'][index_level]}}
 					              </view>
 					    </picker>
 				</u-form-item>
 				<u-form-item label="学位">
-					<picker @change="bindPickerChangeSex" :value="index_sex" :range="array_sex">
+					<picker @change="bindPickerChangeDegree" :value="index_degree" :range="dictObj['academic_degree']">
 					              <view class="picker">
-					                {{array_sex[index_sex]}}
+					                {{dictObj['academic_degree'][index_degree]}}
 					              </view>
 					    </picker>
 				</u-form-item>
 				<u-form-item label="学制">
-					<picker @change="bindPickerChangeSex" :value="index_sex" :range="array_sex">
+					<picker @change="bindPickerChangeSystem" :value="index_system" :range="dictObj['educational_system']">
 					              <view class="picker">
-					                {{array_sex[index_sex]}}
+					                {{dictObj['educational_system'][index_system]}}
 					              </view>
 					    </picker>
 				</u-form-item>
 				<u-form-item label="院系">
-					<picker @change="bindPickerChangeSex" :value="index_sex" :range="array_sex">
+					<picker @change="bindPickerChangeDepartment" :value="index_department" :range="dictObj['department']">
 					              <view class="picker">
-					                {{array_sex[index_sex]}}
+					                {{dictObj['department'][index_department]}}
 					              </view>
 					    </picker>
 				</u-form-item>
-				<u-form-item label="专业" :label-width="auto"><u-input v-model="form.name" /></u-form-item>
+				<u-form-item label="专业" :label-width="auto"><u-input v-model="schoolInfo.major" /></u-form-item>
 				<u-form-item label="班级">
-					<picker @change="bindPickerChangeSex" :value="index_sex" :range="array_sex">
+					<picker @change="bindPickerChangeGrade" :value="index_grade" :range="dictObj['grade']">
 					              <view class="picker">
-					                {{array_sex[index_sex]}}
+					                {{dictObj['grade'][index_grade]}}
 					              </view>
 					    </picker>
 				</u-form-item>
 				<u-form-item label="学信网学籍(PDF)" :label-width="auto" label-position="top">
-					<u-upload :auto-upload="false" custom-btn="true" :action="action" :file-list="fileList" width="120" height ="120" size-type="['compressed']" max-count="1">
+					<u-upload @on-list-change="changePhotoListHeader" :auto-upload="false" custom-btn="true" :action="action" :file-list="fileList" width="120" height ="120" size-type="['compressed']" max-count="1">
 						<template v-slot:addBtn >
-							<image src="/static/info_4.png" style="width: 120rpx; height: 120rpx;"></image>
+							<image :src="schoolInfo.studentStatusImg ? $method.splitImgHost(schoolInfo.studentStatusImg) : '/static/info_4.png'" style="width: 120rpx; height: 120rpx;"></image>
 						</template>
 					</u-upload>
 				</u-form-item>
 				
 			</u-form>
 		</view>
+		<button  @click="submitForm" class="submit_btn">提交</button>
 	</view>
 </template>
 
@@ -87,31 +88,198 @@
 	export default {
 		data() {
 			return {
+				index_degree:0,
+				index_system:0,
+				index_department:0,
+				index_grade:0,
+				index_level:0,
+				index_full:0,
 				action: '33',
 				fileList: [],
-				fileList1: [],
-				fileList2: [],
 				defaultRegionCode:'440112',
 				form:{
 					date:'1990-01-01',
 					region1: ['广东省', '广州市', '天河区'],
 					region2: ['广东省', '广州市', '天河区'],
 				},
+				index_full_day: 0,
+				full_day: ['男', '女'],	
 				index_sex: 0,
 				array_sex: ['男', '女'],	
 				index_marry: 0,
 				array_marry: ['未婚', '已婚'],	
 				index_politic: 0,
 				array_politic: ['群众', '团员', '党员'],	
+				schoolInfo:{},
+				admissionTime:'2011-09-01',
+				graduationTime:'2015-09-01',
+				studentStatusImg:''
 			}
 		},
 		onLoad(option) {
-			
+			this.getSchoolInfo()
 		},
 		onShow(){
 		},
 		computed: {...mapGetters(['dictObj'])},
 		methods: {	
+			changePhotoListHeader(lists, name) {
+				this.fileList = lists;
+			},
+			submitForm(){
+				if(this.schoolInfo.schoolName==''){
+					uni.showModal({
+						title: "提示",
+						content: '学校名不能为空',
+						showCancel: false
+					})
+					return
+				}
+				this.submitImage()
+			},
+			async submitImage(){
+				console.log(this.fileList,33)
+				if(this.fileList.length > 0){
+					const waitYS = await this.imageInfos();
+				}
+				this.resultForm()
+			},
+			imageInfos(){
+				var self = this
+				return new Promise((resolve, reject) => {
+					uni.getImageInfo({
+						src: self.fileList[0].url,
+						success: async res => {
+							let canvasWidth = res.width; //图片原始长宽
+							let canvasHeight = res.height;
+							if (canvasWidth > 1000 || canvasHeight > 1000) {
+								uni.compressImage({
+									src: self.fileList[0].url,
+									quality: 75,
+									width: '50%',
+									height: '50%',
+									success: async rest => {
+										const waitUpload = await self.uploadFile(rest.tempFilePath, 0);
+										resolve()
+									} 
+								});
+							} else {
+								console.log('无需压缩');
+								const waitUpload = await self.uploadFile(self.fileList[0].url, 0);
+								resolve()
+							}
+						}
+					});
+				});
+			},
+			uploadFile(options, int) {
+				return new Promise((resolve, reject) => {
+					var self = this;
+					var data = {
+						imageStatus: int
+					};
+					this.$api.aliyunpolicy(data).then(res => {
+						var ossToken = res.data.data.resultContent;
+						uni.uploadFile({
+							url: ossToken.host,
+							name: 'file',
+							filePath: options,
+							fileType: 'image',
+							header: {
+								AuthorizationToken: 'WX ' + uni.getStorageSync('token')
+							},
+							formData: {
+								key: ossToken.dir,
+								OSSAccessKeyId: ossToken.accessid,
+								policy: ossToken.policy,
+								Signature: ossToken.signature,
+								callback: ossToken.callback,
+								success_action_status: 200
+							},
+							success: result => {
+								if (result.statusCode === 200) {
+									self.schoolInfo.studentStatusImg = ossToken.dir;
+									resolve();
+								} else {
+									uni.showToast({
+										title: '上传失败',
+										icon: 'none'
+									});
+									return;
+								}
+							},
+							fail: error => {
+								uni.showToast({
+									title: '上传接口报错',
+									icon: 'none'
+								});
+								return;
+							}
+						});
+					});
+				});
+			},
+			resultForm(){
+				let that = this
+				this.schoolInfo.fullTimeSchool = this.dictObj['full_time_school'][this.index_full]
+				this.schoolInfo.admissionTime = this.admissionTime
+				this.schoolInfo.graduationTime = this.graduationTime
+				this.schoolInfo.education = this.dictObj['school_level'][this.index_level]
+				this.schoolInfo.academicDegree = this.dictObj['academic_degree'][this.index_degree]
+				this.schoolInfo.educationalSystem = this.dictObj['educational_system'][this.index_system]
+				this.schoolInfo.department = this.dictObj['department'][this.index_department]
+				this.schoolInfo.grade = this.dictObj['grade'][this.index_grade]
+				this.$api.updateSchoolInfo(this.schoolInfo).then(res => {
+					if (res.data.code === 200) {
+						uni.showToast({
+							title: '提交成功',
+							icon: 'none'
+						});
+					}
+				});
+			},
+			bindPickerChangeDegree(e){
+				this.index_degree= e.detail.value
+			},
+			bindPickerChangeSystem(e){
+				this.index_system= e.detail.value
+			},
+			bindPickerChangeDepartment(e){
+				this.index_department= e.detail.value
+			},
+			bindPickerChangeGrade(e){
+				this.index_grade= e.detail.value
+			},
+			bindPickerChangeFull(e){
+				this.index_full= e.detail.value
+			},
+			bindPickerChangeLevel(e){
+				this.index_level= e.detail.value
+			},
+			getSchoolInfo(){
+				let that = this
+				this.$api.getSchoolInfo().then(res => {
+					if (res.data.code === 200) {
+						that.schoolInfo = res.data.data
+						if(this.schoolInfo.fullTimeSchool)
+							this.index_full = this.dictObj['full_time_school'].indexOf((this.schoolInfo.fullTimeSchool))
+						if(this.schoolInfo.admissionTime)
+							this.admissionTime = this.schoolInfo.admissionTime
+						if(this.schoolInfo.graduationTime)
+							this.graduationTime = this.schoolInfo.graduationTime
+						if(this.schoolInfo.education)
+							this.index_level = this.dictObj['school_level'].indexOf((this.schoolInfo.education))
+						if(this.schoolInfo.graduationTime)
+							this.index_degree = this.dictObj['academic_degree'].indexOf((this.schoolInfo.academicDegree))
+						if(this.schoolInfo.graduationTime)
+							this.index_system = this.dictObj['educational_system'].indexOf((this.schoolInfo.educationalSystem))
+						if(this.schoolInfo.graduationTime)
+							this.index_department = this.dictObj['department'].indexOf((this.schoolInfo.department))
+						if(this.schoolInfo.graduationTime)
+							this.index_grade = this.dictObj['grade'].indexOf((this.schoolInfo.grade))
+					}
+				});
+			},
 			bindPickerChangeSex(e){
 				this.index_sex= e.detail.value
 			},
@@ -139,13 +307,10 @@
 				
 			},
 			bindDateChange(e){
-				this.form.date=e.detail.value
-				var year=this.date.substr(0,4);
-				var month=this.date.substr(5,2);
-				var day=this.date.substr(8,2);
-			//	this.index = (parseInt(year)-1948)%12;
-			//	console.log(this.getAstro(month,day))
-			//	this.index_s = this.getAstro(month,day)
+				this.admissionTime=e.detail.value
+			},
+			bindDateChange2(e){
+				this.graduationTime=e.detail.value
 			},
 			actionSheetCallback(index) {
 				uni.hideKeyboard();
@@ -157,6 +322,13 @@
 </script>
 
 <style scope>
+	.submit_btn{
+		background-color: #32467B !important;
+		border-color: #32467B !important;
+		color: #FFFFFF;
+		font-size: 30rpx;
+		padding: 5rpx;
+	}
 	.picker{
 		text-align: right;
 	}

+ 0 - 1
pages2/wd/info.vue

@@ -177,7 +177,6 @@ export default {
 	onLoad(option) {
 		const Verify = require('@/wxcomponents/verify_mpsdk/main.js');
 		Verify.init();
-		
 	},
 	methods: {
 		getUserInfos() {

+ 3 - 2
pages2/wd/menu.vue

@@ -35,12 +35,13 @@
 						for(let i =0 ;i<list.length;i++){
 							let item = list[i]
 							if(newList.hasOwnProperty(item.dictType)){
-								newList[item.dictType].push(item)
+								newList[item.dictType].push(item.dictLabel)
 							}else{
-								newList[item.dictType] = [item]
+								newList[item.dictType] = [item.dictLabel]
 							}
 						}
 						that.$store.state.dictObj = newList;
+						console.log(newList)
 					}
 				});
 			}

+ 2 - 2
store/index.js

@@ -20,8 +20,8 @@ const store = new Vuex.Store({
 			}
 			return state.userInfo
 		},
-		dictList:state => {
-			return state.dictList
+		dictObj:state => {
+			return state.dictObj
 		},
 	},
     mutations: {