lyuis 7 bulan lalu
induk
melakukan
70008d215f

+ 92 - 12
my/jilu/bossMianshiDetail.vue

@@ -3,15 +3,37 @@
     <view class="detail-bg"></view>
     <nav-bar title="面试详情"></nav-bar>
     <view class="detail-index">
-      <view class="detail-title">明天14:00面试</view>
+      <view class="detail-title"><block v-if="info.status==2">
+		  <block v-if="currentStep === 1&&info.restHour>3">
+	  {{info.statusText}} {{info.interviewDate}}
+	  </block>
+	  <block v-else-if="currentStep === 1&&info.restHour<=3&&info.restHour>0">
+		  {{info.restHour*60}}分钟后面试
+	  </block>
+	  <block v-else-if="currentStep === 1&&info.restHour==0">
+	  		  面试已开始,待签到
+	  </block>
+	  <block v-else-if="currentStep === 2">
+	  		  面试已签到
+	  </block>
+	  <block v-else-if="currentStep === 3">
+	  		  面试中
+	  </block>
+	  <block v-else-if="currentStep === 4">
+	  		  面试已完成
+	  </block>
+	  </block>
+	  <block v-else-if="info.status==3">
+		  面试已取消
+		</block></view>
       <view class="detail-item">
         <view class="user-title">
           <view class="user-img-name">
             <view class="user-img">
-              <image src="@/static/images/geren.png" mode="aspectFill" />
+              <image :src="info.userEntity&&info.userEntity.avatar||'@/static/images/geren.png'" mode="aspectFill" />
             </view>
-            <view class="user-name"
-              >孙先生
+            <view @click="goTo('/pages/talentSearch/resumeDetail?resumesId=255&postPushId='+info.postPush.postPushId)" class="user-name"
+              >{{info.userEntity&&info.userEntity.userName||'匿名'}}
               <u-icon
                 name="arrow-right"
                 color="#c6c5ca"
@@ -25,7 +47,7 @@
               <image src="@/static/images/my/fujianjianli.svg" mode="scaleToFill" />
               <text>附件简历</text>
             </view>
-            <view class="img-item-icon">
+            <view @click="callPhone(info.userEntity.phone)" class="img-item-icon">
               <image src="@/static/images/my/dianhua.svg" mode="scaleToFill" />
               <text>电话</text>
             </view>
@@ -37,23 +59,23 @@
         <view class="msg-box">
           <view class="msg-item">
             <view class="msg-label">时间</view>
-            <view class="msg-value">2025-09-19 20:00:00</view>
+            <view class="msg-value">{{info.interviewDateTime}}</view>
           </view>
           <view class="msg-item">
             <view class="msg-label">职位</view>
-            <view class="msg-value">资深产品经理 15-25K·16薪</view>
+            <view class="msg-value">{{info.postPush&&info.postPush.ruleClassifyName}} {{info.postPush&&info.postPush.salaryRange}} · {{info.postPush&&info.postPush.salaryTimes||12}}薪</view>
           </view>
           <view class="msg-item">
             <view class="msg-label">联系人</view>
-            <view class="msg-value">熊女士·18000000000</view>
+            <view class="msg-value">{{info.hrName}}  {{info.hrPhone}}</view>
           </view>
           <view class="msg-item">
             <view class="msg-label">备注</view>
-            <view class="msg-value">请携带一份最新的简历</view>
+            <view class="msg-value">{{info.remarks}}</view>
           </view>
           <view class="msg-item">
             <view class="msg-label">地址</view>
-            <view class="msg-value">光谷软件园F21602栋</view>
+            <view class="msg-value">{{info.address}} {{info.detailedAddress}}</view>
           </view>
         </view>
       </view>
@@ -248,13 +270,60 @@ export default {
       text: "",
       cancelInterview:false,
       cancelList:['已招到人员','求职者已招到工作','面试官有事','时间不合适','其他'],
-      cancel:false
+      cancel:false,
+	  info:{},
+	  recordId:'',
     };
   },
   components: {
     navBar,
   },
+  onLoad(options){
+  		this.recordId=options&&options.recordId?options.recordId:''
+  		this.getData()
+  },
   methods: {
+	  getData(){
+	  	var that=this
+	  	this.$Request.getT("/app/interviewRecord/getInterviewInfo", {recordId:this.recordId}).then((res) => {
+	  	  if (res.code == 0) {
+	  			  let statusArr=['','待接受','已同意','已拒绝','已过期']
+	  			  res.data.statusText=statusArr[res.data.status]
+	  			  var detailTime=res.data.detailTime?that.$queue.convert12to24(res.data.detailTime):''
+	  			  res.data.interviewDateTime=res.data.interviewDateTime.substring(0,10)+' '+detailTime
+	  			   var expired=that.$queue.isDateExpired(res.data.interviewDateTime)
+	  			   res.data.expired=expired[0]
+	  				res.data.restHour=expired[1]
+	  			  res.data.interviewDate=res.data.interviewDateTime.slice(0, 10)
+	  		  that.info=res.data
+	  			  console.log(that.info)
+	  			  that.currentStep=!res.data.interviewProcesses||res.data.interviewProcesses==0?res.data.interviewProcesses+1:res.data.interviewProcesses
+	  			  /* that.covers.push({
+	  				  id:1,
+	  				latitude: res.data.lat,
+	  				longitude: res.data.lng,
+	  				iconPath:'../../static/images/mapMarker.png',
+	  				alpha:0.5,
+	  				width:20,
+	  				height:20,
+	  					callout: {
+	  						content: res.data.detailedAddress,
+	  						color: '#000', //文字颜色
+	  						fontSize: 10, //文本大小
+	  						padding: 5, //附近留白
+	  						borderRadius: 24, //边框圆角
+	  						bgColor: '#FFFFFF', //背景颜色
+	  						display: 'ALWAYS', //常显
+	  					}
+	  			  }) */
+	  	  } else {
+	  	    uni.showToast({
+	  	      title: res.msg,
+	  	      icon: "none",
+	  	    });
+	  	  }
+	  	});
+	  }, 
     CheckTag(index) {
       this.isCheck = index;
     },
@@ -294,7 +363,18 @@ export default {
       uni.navigateTo({
         url: '/my/jilu/editInterview'
       })
-    }
+    },
+	goTo(url){
+		uni.navigateTo({
+		  url
+		})
+	},
+	callPhone(phone){
+		if (phone == ""||!phone) return;
+		uni.makePhoneCall({
+			phoneNumber: phone, //仅为示例
+		});
+	}
   },
 };
 </script>

+ 5 - 2
my/jilu/jilu.vue

@@ -60,7 +60,7 @@
           <view style="width: 100%; height: 1rpx; background: #eeeeee"> </view>
           <view class="flex align-center padding-tb justify-end padding-lr">
             <view class="flex align-center">
-              <view class="btn" @click.stop="goInfo(item.userEntity)"> 简历详情</view>
+              <view class="btn" @click.stop="goInfo(item)"> 简历详情</view>
             </view>
             <view class="flex align-center">
               <view
@@ -247,7 +247,7 @@ export default {
       console.log(item, "1111111111111");
       if (item && item.resumesId) {
         uni.navigateTo({
-          url: "/pages/index/game/orderDet?resumesId=" + item.resumesId,
+          url:'/pages/talentSearch/resumeDetail?resumesId='+item.resumesId+'&postPushId='+item.postPush.postPushId
         });
       } else {
         uni.showToast({
@@ -257,6 +257,9 @@ export default {
       }
     },
     updataServeType(item) {
+		return uni.navigateTo({
+								url:`/pages/msg/interviewInvitation?mianshiId=${item.recordId}&postPushId=${item.postPush.postPushId}&resumesId=${item.resumesId}&interviewerId=${item.userEntity.userId}`
+							})
       this.miamshi = {
         interviewDateTime: item.interviewDateTime, //面试时间
         companyId: item.companyId, //公司id

+ 1 - 1
my/jilu/mianshiDetail.vue

@@ -242,7 +242,7 @@ export default {
 			  res.data.interviewDate=res.data.interviewDateTime.slice(0, 10)
 	 		  that.info=res.data
 			  console.log(that.info)
-			  that.currentStep=res.data.interviewProcesses==0?res.data.interviewProcesses+1:res.data.interviewProcesses
+			  that.currentStep=!res.data.interviewProcesses||res.data.interviewProcesses==0?res.data.interviewProcesses+1:res.data.interviewProcesses
 			  that.covers.push({
 				  id:1,
 				latitude: res.data.lat,

+ 2 - 1
package/jobIntention/city.vue

@@ -67,7 +67,7 @@
           :id="item.letter"
           class="content-map flex justify-between flex-wrap"
           v-for="(item, index) in cityList"
-          v-if="item.city.length > 0"
+          v-if="item&&item.city.length > 0"
           :key="index"
         >
           <view class="" style="width: 100%">
@@ -153,6 +153,7 @@ export default {
           let arr = res.data;
           let rightList = [];
           arr.map((item) => {
+			if(item&&item.letter)
             rightList.push(item.letter);
           });
           this.list = rightList;

+ 7 - 6
pages/index/index.vue

@@ -743,7 +743,7 @@
 						// that.getUserList();
 						that.getPostType()
 					} else {
-						that.getPeopList()
+						that.getCompanyClassify()
 					}
 					// console.log(uni.getStorageSync('city') == '', '22222222222')
 					if (!uni.getStorageSync('city') || uni.getStorageSync('city') == '' || uni.getStorageSync(
@@ -768,7 +768,7 @@
 					if (that.userType == 1) {
 						that.getPostType()
 					} else {
-						that.getPeopList()
+						that.getCompanyClassify()
 					}
 				}
 			})
@@ -988,7 +988,7 @@
 						this.getComanyList()
 					}
 				} else {
-					this.getPeopList()
+					this.getCompanyClassify()
 				}
 				// if (this.userType == 1) { //用户端岗位
 				// 	that.getPostType();
@@ -1296,15 +1296,15 @@
 						// 	}
 						// })
 						
-						  const list = res.data.map(item => {
+						  const list = res.data.records.map(item => {
 						    // 若技能字段为其他名称(如 skillTags),需映射为 skills
 						    item.skills = item.skillTags || ''; 
 						    return item;
 						  });
 						if (this.page == 1) {
-							this.datasList = res.data
+							this.datasList = list
 						} else {
-							this.datasList = [...this.datasList, ...res.data]
+							this.datasList = [...this.datasList, ...list]
 						}
 						this.totlo = res.data.totalPage
 					} else {
@@ -1334,6 +1334,7 @@
 							arr.push(obj)
 						})
 						this.jobSxTypeList = arr
+						this.getPeopList()
 					}
 				})
 			},

+ 17 - 6
pages/msg/chathistory.vue

@@ -21,7 +21,7 @@
 				<view v-if="item.userId && userId != item.userId" style="width: 83%;margin-right: 15%;">
 					<view class="chat-listitem" style="float: left;margin-left: 10rpx;">
 						<view>
-							<image @tap="goGuanZhu(item)" :src="item.imageUrl ? item.imageUrl : '/static/logo.png'"
+							<image @tap="goGuanZhu(item)" :src="item.avatar ? item.avatar : '/static/logo.png'"
 								class="chat-listitem-image"></image>
 						</view>
 						<view v-if="item.content && item.messageType === 1" class="chat-listitem-text"
@@ -40,9 +40,9 @@
 						</view>
 						<image @tap="viewImg(item.content)" v-if="item.content && item.messageType === 2"
 							:src="item.content" style="height: 200rpx;width: 200rpx;margin-left: 20rpx;"></image>
-						<image class="chat-listitem-text" @tap="viewImg(item.content)"
+						<image class="chat-listitem-text"
 							v-if="item.content && item.messageType === 4"
-							:src="'https://xxpw.xianmxkj.com/emoji/' +item.content"
+							:src="ossUrl +item.content"
 							style="height: 80rpx;width: 80rpx;margin-left: 20rpx;"></image>
 
 
@@ -164,6 +164,15 @@
 								简历请求已同意
 							</view>
 						</view>
+						<view v-if="item.content && item.messageType === 9 && item.content!='简历请求'"
+							@longpress="copy(item.content)" class="chat-listitem-text"
+							style="padding-bottom: 20rpx;;padding-top: 20rpx;margin-left: 20rpx;color: #000000;background-color: #ffffff;border: 1rpx solid #c6fee7;background: linear-gradient(to bottom, #D9FEED, #ffffff);">
+							<view class="flex align-center">
+								<image src="../../static/im/orderInfo.png"
+									style="width: 60rpx;height: 60rpx;margin-right: 10rpx;" mode=""></image>
+								{{item.content}}
+							</view>
+						</view>
 						<view v-if="item.content && item.messageType === 10" class="chat-listitem-text"
 							style="margin-left: 20rpx;color: #000000;background-color: #ffffff;">
 							{{item.content}}
@@ -199,9 +208,9 @@
 							class="chat-listitem-text" style="margin-right: 20rpx;">{{item.content}}</view> -->
 						<image @tap="viewImg(item.content)" v-if="item.content && item.messageType === 2"
 							:src="item.content" style="height: 200rpx;width: 200rpx;margin-right: 20rpx;"></image>
-						<image class="chat-listitem-text" @tap="viewImg(item.content)"
+						<image class="chat-listitem-text"
 							v-if="item.content && item.messageType === 4"
-							:src="'https://xxpw.xianmxkj.com/emoji/' +item.content"
+							:src="ossUrl +item.content"
 							style="height: 80rpx;width: 80rpx;margin-right: 20rpx;">
 						</image>
 						<view v-if="item.messageType === 20" class="chat-listitem-text textColor flex align-center"
@@ -299,6 +308,7 @@
 </template>
 
 <script>
+	import configData from '../../common/config.js'
 	export default {
 		components: {},
 		data() {
@@ -360,7 +370,8 @@
 				chatConversationId: 0,
 				userId: 0,
 				ListItem: [],
-				search: ''
+				search: '',
+				ossUrl:configData.ossUrl
 			};
 		},
 		onLoad(d) {

+ 2 - 2
pages/my/userinfo.vue

@@ -101,7 +101,7 @@
 			</view>
 			
 			<!-- 我的公司 -->
-			<view v-if="false" class="usermain-item item-padding">
+			<view class="usermain-item item-padding">
 				<view class="usermain-item-title">我的公司</view>
 				<view>
 					<view class="form-input-selector" @click="selectCompany">
@@ -113,7 +113,7 @@
 			</view>
 			
 			<!-- 我的职务 -->
-			<view v-if="false" class="usermain-item item-padding">
+			<view class="usermain-item item-padding">
 				<view class="usermain-item-title">我的职务</view>
 				<view>
 					<view class="form-input-selector" @click="selectPosition">