cyl/master-0822
wangxia 7 months ago
parent e3a2cbcd58
commit 204ff32e8c

@ -18,8 +18,11 @@ let jobInfo = {
job_getPolicyShare: '/yishoudan/store/job/getPolicyByStoreJobId',// 获取共享职位政策 job_getPolicyShare: '/yishoudan/store/job/getPolicyByStoreJobId',// 获取共享职位政策
job_ai: '/yishoudan/common/structure/get', // 获取ai结果 job_ai: '/yishoudan/common/structure/get', // 获取ai结果
yi_job_class_new: "/labels/getListByTypeAndIndustry", // 新职位要求接口(新) yi_job_class_new: "/labels/getListByTypeAndIndustry", // 新职位要求接口(新)
job_get_cus: "/yishoudan/job/customer/support/getJobCustomerSupportIMAccid", // 获取客服ID
job_get_agency_cus: "/yishoudan/job/customer/support/getAgencyCustomerSupportIMAccid", // 获取代理客服ID // job_get_cus: "/yishoudan/job/customer/support/getJobCustomerSupportIM", // 获取客服ID(老)
// job_get_cus: "/yishoudan/job/customer/support/getJobCustomerSupportIMAccid", // 获取客服ID
job_get_cus: "/yishoudan/job/customer/support/getJobCustomerSupportIM", // 获取客服ID(新)
job_get_agency_cus: "/yishoudan/job/customer/support/getAgencyCustomerSupportIM", // 获取代理客服ID
hasSee: "/yishoudan/job/view/record/addRecord", hasSee: "/yishoudan/job/view/record/addRecord",
getCityNameByLatLng: '/location/getCityNameByLatLng' ,// 根据经纬度获取城市 getCityNameByLatLng: '/location/getCityNameByLatLng' ,// 根据经纬度获取城市

@ -278,10 +278,9 @@ $main_color: #00b666;
} }
&_none { &_none {
background-color: #fff; background-color: #fff;
color: #666; color: #333;
border: 1rpx solid #ccc;
&.thover { &.thover {
background-color: #ddd; opacity: .8;
} }
} }
&_disabled { &_disabled {
@ -293,6 +292,16 @@ $main_color: #00b666;
opacity: 1; opacity: 1;
} }
} }
&_noStyle {
background-color: rgba(0, 0, 0, 0.05);
color: #333;
font-weight: 600;
// border: 1rpx solid rgba(0, 0, 0, 0.05);
&.thover {
// background-color: rgba(0, 0, 0, 0.05);
opacity: .8;
}
}
&_gradual { &_gradual {
background: v-bind("gradual"); background: v-bind("gradual");
color: #fff; color: #fff;

@ -30,48 +30,6 @@ export default {
}, 2000); }, 2000);
} }
} }
// if (this.userInfo.agencyId) {
// this.tabbarInfo = [
// {
// iconPath: "icon-home g_c_9",
// selectedIconPath: "icon-home g_c_main",
// pagePath: "/pages/home/index",
// text: "",
// iconSize: 48,
// },
// {
// iconPath: "icon-fadanhao-32 g_c_9",
// selectedIconPath: "icon-fadanhao-32 g_c_main",
// pagePath: "/pages/home/order",
// text: "",
// iconSize: 48,
// },
// {
// iconPath: "icon-order_active g_c_9",
// selectedIconPath: "icon-order_active g_c_main",
// pagePath: "/pages/workBench/index",
// text: "",
// iconSize: 48,
// count: 0,
// },
// {
// iconPath: "icon-message g_c_9",
// selectedIconPath: "icon-message g_c_main",
// pagePath: "/pages/message/index",
// text: "",
// iconSize: 78,
// iconType: "custom",
// },
// {
// iconPath: "icon-user g_c_9",
// selectedIconPath: "icon-user g_c_main",
// pagePath: "/pages/person/index",
// text: "",
// iconSize: 48,
// },
// ];
// } else {
if (!this.userInfo.agencyId) { if (!this.userInfo.agencyId) {
this.tabbarInfo = [ this.tabbarInfo = [
{ {
@ -81,15 +39,6 @@ export default {
text: "首页", text: "首页",
iconSize: 48, iconSize: 48,
}, },
{
iconPath: "icon-order_active g_c_9",
selectedIconPath: "icon-order_active g_c_main",
pagePath: "/pages/workBench/index",
text: "工单",
iconSize: 48,
count: 0,
},
{ {
iconPath: "icon-message g_c_9", iconPath: "icon-message g_c_9",
selectedIconPath: "icon-message g_c_main", selectedIconPath: "icon-message g_c_main",
@ -99,6 +48,15 @@ export default {
iconType: "custom", iconType: "custom",
count: 0, count: 0,
}, },
{
iconPath: "icon-order_active g_c_9",
selectedIconPath: "icon-order_active g_c_main",
pagePath: "/pages/workBench/index",
text: "工单",
iconSize: 48,
count: 0,
},
{ {
iconPath: "icon-user g_c_9", iconPath: "icon-user g_c_9",
selectedIconPath: "icon-user g_c_main", selectedIconPath: "icon-user g_c_main",
@ -147,15 +105,6 @@ export default {
text: "发单号", text: "发单号",
iconSize: 48, iconSize: 48,
}, },
{
iconPath: "icon-order_active g_c_9",
selectedIconPath: "icon-order_active g_c_main",
pagePath: "/pages/workBench/index",
text: "工单",
iconSize: 48,
count: 0,
},
{ {
iconPath: "icon-message g_c_9", iconPath: "icon-message g_c_9",
selectedIconPath: "icon-message g_c_main", selectedIconPath: "icon-message g_c_main",
@ -165,6 +114,15 @@ export default {
iconType: "custom", iconType: "custom",
count: 0, count: 0,
}, },
{
iconPath: "icon-order_active g_c_9",
selectedIconPath: "icon-order_active g_c_main",
pagePath: "/pages/workBench/index",
text: "工单",
iconSize: 48,
count: 0,
},
{ {
iconPath: "icon-user g_c_9", iconPath: "icon-user g_c_9",
selectedIconPath: "icon-user g_c_main", selectedIconPath: "icon-user g_c_main",
@ -192,7 +150,6 @@ export default {
let that = this; let that = this;
console.log("datadatadatadatadatadata", data); console.log("datadatadatadatadatadata", data);
for (var k in that.tabbarInfo) { for (var k in that.tabbarInfo) {
console.log("that.tabbarInfo[k].pagePath", that.tabbarInfo[k]);
if (that.tabbarInfo[k].pagePath == "/pages/message/index") { if (that.tabbarInfo[k].pagePath == "/pages/message/index") {
if (data) { if (data) {
// console.log(that.messageCount + "+++++++++++++++++" + that.noticeCount); // console.log(that.messageCount + "+++++++++++++++++" + that.noticeCount);

@ -165,7 +165,7 @@ export default {
lifetimes: { lifetimes: {
// //
detached() { detached() {
console.log('detacheddetacheddetacheddetacheddetached'); console.log("detacheddetacheddetacheddetacheddetached");
uni.removeStorageSync("poster_img"); uni.removeStorageSync("poster_img");
}, },
}, },
@ -546,7 +546,15 @@ export default {
// that.G.fillTextLineBreak(ctx, "" + info.jobUpdateNum, 140, 400, ("" + info.jobUpdateNum).length * 56, 56, "#999", 56, 500, "left"); // // that.G.fillTextLineBreak(ctx, "" + info.jobUpdateNum, 140, 400, ("" + info.jobUpdateNum).length * 56, 56, "#999", 56, 500, "left"); //
console.log("that.formatNumberAdvanced(info.jobNum)", that.formatNumberAdvanced(info.jobNum)); console.log("that.formatNumberAdvanced(info.jobNum)", that.formatNumberAdvanced(info.jobNum));
const textSegments = [{ content: that.formatNumberAdvanced(info.jobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: info.jobNum < 10000 ? 10 : 0 }, info.jobNum < 10000 ? null : { content: "万", color: "#000", fontWeight: 500, fontSize: 64, space: 10 }, { content: "总职位", color: "#666", fontWeight: 500, fontSize: 56, space: 70 }, { content: that.formatNumberAdvanced(info.recruitmentJobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 }, { content: "在招", color: "#666", fontWeight: 500, fontSize: 56, space: 70 }, { content: that.formatNumberAdvanced(info.downNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 }, { content: "粉丝", color: "#666", fontWeight: 500, fontSize: 56, space: 40 }]; const textSegments = [
// { content: that.formatNumberAdvanced(info.jobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: info.jobNum < 10000 ? 10 : 0 },
// info.jobNum < 10000 ? null : { content: "", color: "#000", fontWeight: 500, fontSize: 64, space: 10 },
// { content: "", color: "#666", fontWeight: 500, fontSize: 56, space: 70 },
{ content: that.formatNumberAdvanced(info.recruitmentJobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 },
{ content: "在招", color: "#666", fontWeight: 500, fontSize: 56, space: 70 },
{ content: that.formatNumberAdvanced(info.downNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 },
{ content: "粉丝", color: "#666", fontWeight: 500, fontSize: 56, space: 40 },
];
that.G.drawCenteredText(ctx, mycenter + 20, 745, textSegments); that.G.drawCenteredText(ctx, mycenter + 20, 745, textSegments);
imgres(canvas); imgres(canvas);
}; };

@ -293,6 +293,15 @@
"backgroundColorBottom": "#ededed" "backgroundColorBottom": "#ededed"
} }
}, },
{
"path": "changeTeam",
"style": {
"navigationBarTitleText": "切换团队",
"backgroundColor": "#ededed",
"backgroundColorTop": "#ededed",
"backgroundColorBottom": "#ededed"
}
},
{ {
"path": "addOrUpdataMember", "path": "addOrUpdataMember",
"style": { "style": {

@ -4,7 +4,7 @@
:style="{ color: color, fontSize: fontSize + 'px' }" :style="{ color: color, fontSize: fontSize + 'px' }"
> >
{{ appellation }} {{ appellation }}
<span v-if="subtitle" style="color: orange;">{{ subtitle }}</span> <span v-if="subtitle" style="color: orange;font-size:14px">{{ subtitle }}</span>
</span </span
> >
</template> </template>

@ -4,18 +4,18 @@
<div class="conversation-list-wrapper" v-if="conversationList && conversationList.length > 0"> <div class="conversation-list-wrapper" v-if="conversationList && conversationList.length > 0">
<!-- 此处的key如果用session.id会在ios上渲染存在问题会出现会话列表显示undefined --> <!-- 此处的key如果用session.id会在ios上渲染存在问题会出现会话列表显示undefined -->
<div v-for="(conversation, index) in conversationList" :key="conversation.renderKey"> <div v-for="(conversation, index) in conversationList" :key="conversation.renderKey">
<ConversationItem :key="conversation.renderKey" :loading="loading" :showMoreActions="currentMoveSessionId === conversation.conversationId" :conversation="conversation" @delete="handleSessionItemDeleteClick" :heihei="'mmp'+index" @stickyToTop="handleSessionItemStickTopChange" @click="handleSessionItemClick" @leftSlide="handleSessionItemLeftSlide" /> <ConversationItem :key="conversation.renderKey" :loading="loading" :showMoreActions="currentMoveSessionId === conversation.conversationId" :conversation="conversation" @delete="handleSessionItemDeleteClick" :heihei="'mmp' + index" @stickyToTop="handleSessionItemStickTopChange" @click="handleSessionItemClick" @leftSlide="handleSessionItemLeftSlide" />
</div> </div>
</div> </div>
<div style="height: 48px; background-color: #ededed" v-if="conversationList && conversationList.length > 0"></div> <!-- <div style="height: 48px; background-color: #ededed" v-if="conversationList && conversationList.length > 0"></div> -->
<div v-if="conversationList.length == 0" style='padding-top: 130px;background-color: #ededed;'> <div v-if="conversationList.length == 0" style="padding-top: 130px; background-color: #ededed">
<g-empty text="暂无会话" style="margin-top: 0px" /> <g-empty text="暂无会话" style="margin-top: 0px" />
</div> </div>
</div> </div>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import { onUnmounted, ref, defineExpose } from "../../../utils/transformVue"; import { onUnmounted, ref, defineExpose, watch } from "../../../utils/transformVue";
import { autorun } from "mobx"; import { autorun } from "mobx";
import { onHide } from "@dcloudio/uni-app"; import { onHide } from "@dcloudio/uni-app";
import Icon from "../../../components/Icon.vue"; import Icon from "../../../components/Icon.vue";
@ -139,39 +139,36 @@ onHide(() => {
}); });
const conversationListWatch = autorun(() => { const conversationListWatch = autorun(() => {
const conversations = deepClone(uni.$UIKitStore?.uiStore?.conversations) || []; console.log("uni.$UIKitStore?.uiStore?.conversations", uni.$UIKitStore?.uiStore?.conversations);
const conversations = deepClone(uni.$UIKitStore?.uiStore?.conversations) || [];
// renderKey
const conversationsWithKey = conversations.map((conversation: V2NIMConversation) => ({ // renderKey
...conversation, const conversationsWithKey = conversations.map((conversation: V2NIMConversation) => ({
renderKey: conversation.conversationId, ...conversation,
})); renderKey: conversation.conversationId,
}));
//
const stickyList = conversationsWithKey.filter((conv: V2NIMConversation) => conv.stickTop); //
const normalList = conversationsWithKey.filter((conv: V2NIMConversation) => !conv.stickTop); const stickyList = conversationsWithKey.filter((conv: V2NIMConversation) => conv.stickTop);
const normalList = conversationsWithKey.filter((conv: V2NIMConversation) => !conv.stickTop);
// console.log("stickyList", stickyList);
// console.log("normalList", normalList); // console.log("stickyList", stickyList);
// console.log("normalList", normalList);
//
// const sortStickyList = (list: V2NIMConversation[]) => list.sort((a, b) => new Date(b.updateTime).getTime() - new Date(a.updateTime).getTime());
const sortStickyList = (list: V2NIMConversation[]) =>
list.sort((a, b) => new Date(b.updateTime).getTime() - new Date(a.updateTime).getTime()); const sortNormalList = (list: V2NIMConversation[]) => list.sort((a, b) => new Date(b.lastMessage?.messageRefer.createTime || b.updateTime).getTime() - new Date(a.lastMessage?.messageRefer.createTime || a.updateTime).getTime());
const sortNormalList = (list: V2NIMConversation[]) => //
list.sort((a, b) => new Date(b.lastMessage?.messageRefer.createTime || b.updateTime).getTime() - new Date(a.lastMessage?.messageRefer.createTime || a.updateTime).getTime()); conversationList.value = [...sortStickyList(stickyList), ...sortNormalList(normalList)];
// setTimeout(() => {
conversationList.value = [...sortStickyList(stickyList), ...sortNormalList(normalList)]; loading.value = false;
}, 2000);
setTimeout(() => {
loading.value = false; console.log("conversationListWatch", conversationList.value);
}, 2000); setTabUnread();
console.log("conversationListWatch", conversationList.value);
setTabUnread();
}); });
// const conversationListWatch = autorun(() => { // const conversationListWatch = autorun(() => {
// const conversations = deepClone(uni.$UIKitStore?.uiStore?.conversations) || []; // const conversations = deepClone(uni.$UIKitStore?.uiStore?.conversations) || [];
@ -185,8 +182,6 @@ const conversationListWatch = autorun(() => {
// // // //
// const stickyList = conversationsWithKey.filter((conv: V2NIMConversation) => conv.stickTop); // const stickyList = conversationsWithKey.filter((conv: V2NIMConversation) => conv.stickTop);
// const normalList = conversationsWithKey.filter((conv: V2NIMConversation) => !conv.stickTop); // const normalList = conversationsWithKey.filter((conv: V2NIMConversation) => !conv.stickTop);
// // updateTime // // updateTime
// const sortList = (list: V2NIMConversation[]) => list.sort((a: V2NIMConversation, b: V2NIMConversation) => new Date(b.updateTime).getTime() - new Date(a.updateTime).getTime()); //list // const sortList = (list: V2NIMConversation[]) => list.sort((a: V2NIMConversation, b: V2NIMConversation) => new Date(b.updateTime).getTime() - new Date(a.updateTime).getTime()); //list
@ -215,8 +210,6 @@ onUnmounted(() => {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.conversation-wrapper { .conversation-wrapper {
overflow: hidden; overflow: hidden;
} }
@ -278,8 +271,6 @@ onUnmounted(() => {
width: 100%; width: 100%;
overflow-y: auto; overflow-y: auto;
overflow-x: hidden; overflow-x: hidden;
} }
.logo-box { .logo-box {

@ -65,7 +65,7 @@ export const setTabUnread = (val): void => {
'pages/workBench/index', 'pages/workBench/index',
'pages/message/index', 'pages/message/index',
'pages/person/index', 'pages/person/index',
'root/person/info' 'root/person/changeTeam'
] ]
console.log('11111111111111111111111111111111111111111111'); console.log('11111111111111111111111111111111111111111111');
if (curRoute && !tabPaths.includes(curRoute)) { if (curRoute && !tabPaths.includes(curRoute)) {
@ -79,16 +79,16 @@ export const setTabUnread = (val): void => {
console.log('store?.conversationStore.totalUnreadCount', store?.conversationStore.totalUnreadCount); console.log('store?.conversationStore.totalUnreadCount', store?.conversationStore.totalUnreadCount);
uni.$emit('newMessage', { count: store?.conversationStore.totalUnreadCount, type: 'message' }) uni.$emit('newMessage', { count: store?.conversationStore.totalUnreadCount, type: 'message' })
uni.setStorageSync("chat_info", { count: store?.conversationStore.totalUnreadCount, type: 'message' }); uni.setStorageSync("chat_info", { count: store?.conversationStore.totalUnreadCount, type: 'message' });
if (unread === 0) { // if (unread === 0) {
uni.hideTabBarRedDot({ // uni.hideTabBarRedDot({
//隐藏数字 // //隐藏数字
index: 3, //tabbar下标 // index: 3, //tabbar下标
}) // })
} else { // } else {
uni.showTabBarRedDot({ // uni.showTabBarRedDot({
index: 3, //tabbar下标 // index: 3, //tabbar下标
}) // })
} // }
} }
export const setContactTabUnread = (): void => { export const setContactTabUnread = (): void => {
@ -100,21 +100,21 @@ export const setContactTabUnread = (): void => {
'pages/workBench/index', 'pages/workBench/index',
'pages/message/index', 'pages/message/index',
'pages/person/index', 'pages/person/index',
'root/person/info' 'root/person/changeTeam'
] ]
if (curRoute && !tabPaths.includes(curRoute)) { if (curRoute && !tabPaths.includes(curRoute)) {
// 不是首页和聊天页不需要设置tabbar的badge // 不是首页和聊天页不需要设置tabbar的badge
return return
} }
const unread = uni.$UIKitStore?.sysMsgStore?.getTotalUnreadMsgsCount() const unread = uni.$UIKitStore?.sysMsgStore?.getTotalUnreadMsgsCount()
if (unread === 0) { // if (unread === 0) {
uni.hideTabBarRedDot({ // uni.hideTabBarRedDot({
//隐藏数字 // //隐藏数字
index: 3, //tabbar下标 // index: 3, //tabbar下标
}) // })
} else { // } else {
uni.showTabBarRedDot({ // uni.showTabBarRedDot({
index: 3, //tabbar下标 // index: 3, //tabbar下标
}) // })
} // }
} }

@ -33,7 +33,7 @@
<div class="sticky" v-if="isLogin"> <div class="sticky" v-if="isLogin">
<div class="g_flex_row_between flex_center" :class="toTop ? 'g_bg_f' : 'g_bg_f_5'" :style="{ 'box-shadow': toTop ? '0px 2px 3px 0px rgba(214, 214, 214, 0.3)' : '' }" id="tttop"> <div class="g_flex_row_between flex_center" :class="toTop ? 'g_bg_f' : 'g_bg_f_5'" :style="{ 'box-shadow': toTop ? '0px 2px 3px 0px rgba(214, 214, 214, 0.3)' : '' }" id="tttop">
<div class="g_flex_1"> <div class="g_flex_1">
<u-tabs bg-color="transparent" from="index" gutter="20" :list="tabInfo.list" :is-scroll="true" :current="tabInfo.active" active-color="#00b666" bar-width="64" bar-height="6" @change="handleUpdateTab" font-size="34" duration="0.05" height="76"></u-tabs> <u-tabs bg-color="transparent" from="index" gutter="20" :list="tabInfo.list" :is-scroll="true" v-model="tabInfo.active" active-color="#00b666" bar-width="64" bar-height="6" @change="handleUpdateTab" font-size="34" duration="0.05" height="76"></u-tabs>
</div> </div>
<div class="g_flex_row_end"> <div class="g_flex_row_end">
<div class="csbf" :class="toTop ? 'g_bg_f_5' : 'g_bg_f'" @click="chooseNl('sort')"> <div class="csbf" :class="toTop ? 'g_bg_f_5' : 'g_bg_f'" @click="chooseNl('sort')">
@ -157,8 +157,8 @@ export default {
onLoad() { onLoad() {
let that = this; let that = this;
that.navInfo = that.G.getNavInfo(); that.navInfo = that.G.getNavInfo();
that.tabInfo.active = 0;
that.isLogin = uni.getStorageSync("apply-token"); that.isLogin = uni.getStorageSync("apply-token");
that.tabInfo.active = 0;
if (!that.isLogin) { if (!that.isLogin) {
that.loading = false; that.loading = false;
@ -169,58 +169,15 @@ export default {
}, 100); }, 100);
} else { } else {
uni.$on("updateJobList", () => { uni.$on("updateJobList", () => {
that.getList(); that.updateJobInfo();
}); });
that.getList();
if (uni.getStorageSync("SHOW_INVITE_ALL")) { if (uni.getStorageSync("SHOW_INVITE_ALL")) {
if (uni.getStorageSync("SHOW_INVITE_ALL") == 1 && uni.getStorageSync("SHOW_INVITE") == 1) { if (uni.getStorageSync("SHOW_INVITE_ALL") == 1 && uni.getStorageSync("SHOW_INVITE") == 1) {
that.getInviteList(); that.getInviteList();
} }
} }
console.log('uni.getStorageSync("apply-supplierAccount")', uni.getStorageSync("apply-supplierAccount")); console.log('uni.getStorageSync("apply-supplierAccount")', uni.getStorageSync("apply-supplierAccount"));
if (uni.getStorageSync("apply-supplierAccount") == 1) { that.updateJobInfo();
//
that.tabInfo.list = [
{
name: "关注",
num: 0,
tip: 0,
classify: 2,
},
{
name: "收藏",
num: 0,
tip: 1,
classify: 3,
},
{
name: "我的",
num: 0,
tip: 2,
classify: 99,
},
];
// that.tabInfo.active = 0;
that.isShowTab = true;
} else {
//
that.tabInfo.list = [
{
name: "关注",
num: 0,
tip: 0,
classify: 2,
},
{
name: "收藏",
num: 0,
tip: 1,
classify: 3,
},
];
// that.tabInfo.active = 0;
that.isShowTab = false;
}
} }
// #ifdef MP-WEIXIN // #ifdef MP-WEIXIN
// this.searchAnimate(); // this.searchAnimate();
@ -248,7 +205,7 @@ export default {
userInfo: {}, userInfo: {},
whichOneShow: "", whichOneShow: "",
toTop: false, // toTop: false, //
showToTop: false, // showToTop: false, //
tabbarHeight: 0, tabbarHeight: 0,
getFilterData: { getFilterData: {
sex: "-1", sex: "-1",
@ -278,7 +235,6 @@ export default {
tip: 0, tip: 0,
}, },
], ],
isShowTab: false,
showPop: false, // showPop: false, //
attentionList: [], // attentionList: [], //
subAttentionList: [], subAttentionList: [],
@ -392,6 +348,50 @@ export default {
} }
}, },
methods: { methods: {
updateJobInfo() {
let that = this;
if (uni.getStorageSync("apply-supplierAccount") == 1) {
//
that.tabInfo.list = [
{
name: "关注",
num: 0,
tip: 0,
classify: 2,
},
{
name: "收藏",
num: 0,
tip: 1,
classify: 3,
},
{
name: "我的",
num: 0,
tip: 2,
classify: 99,
},
];
that.tabInfo.active = 2;
} else {
//
that.tabInfo.list = [
{
name: "关注",
num: 0,
tip: 0,
classify: 2,
},
{
name: "收藏",
num: 0,
tip: 1,
classify: 3,
},
];
}
that.getList();
},
loadSelectedCityFromCache() { loadSelectedCityFromCache() {
// 'selectedCity' // 'selectedCity'
const cachedCity = wx.getStorageSync("selectedCity"); const cachedCity = wx.getStorageSync("selectedCity");
@ -422,7 +422,6 @@ export default {
if (data.top <= 0) { if (data.top <= 0) {
that.toTop = true; that.toTop = true;
that.showToTop = true; that.showToTop = true;
} else { } else {
that.toTop = false; that.toTop = false;
that.showToTop = false; that.showToTop = false;
@ -463,6 +462,7 @@ export default {
let that = this; let that = this;
this.loading = true; this.loading = true;
console.log("job_list __F________________________", 1); console.log("job_list __F________________________", 1);
console.log("that.tabInfo.active", that.tabInfo.active);
let time = new Date().getTime(); let time = new Date().getTime();
that.G.Post( that.G.Post(
that.api.job_list, that.api.job_list,

@ -84,10 +84,10 @@
</view> </view>
<view class="g_fs_14 g_c_9 g_mt_4"> <view class="g_fs_14 g_c_9 g_mt_4">
<view class="g_flex_row_start"> <view class="g_flex_row_start">
<view class="g_flex_row_start"> <!-- <view class="g_flex_row_start">
<view>总职位</view> <view>总职位</view>
<view class="g_mr_8">{{ item.jobNum ? item.jobNum : "0" }}</view> <view class="g_mr_8">{{ item.jobNum ? item.jobNum : "0" }}</view>
</view> </view> -->
<view class="g_flex_row_start"> <view class="g_flex_row_start">
<view>在招</view> <view>在招</view>
<view class="g_mr_8">{{ item.recruitmentJobNum ? item.recruitmentJobNum : "0" }}</view> <view class="g_mr_8">{{ item.recruitmentJobNum ? item.recruitmentJobNum : "0" }}</view>

@ -1,20 +1,22 @@
<template> <template>
<div style="" class="g_bg_page"> <div :style="{ minHeight: `calc(100vh - ${tabbarHeight}px)` }" class="g_bg_page">
<!-- <view class="m-tabs" v-if="isLogin" style="position: fixed; width: 100%; z-index: 999"> <!-- <view class="m-tabs" v-if="isLogin" style="position: fixed; width: 100%; z-index: 999">
<u-tabs :list="typeGroup" :is-scroll="false" v-model="current" @change="updateType" item-width="126" :active-color="globalData.themeColor" bar-width="60" bar-height="6" font-size="32" :gutter="22" duration="0.1" itemWidth="auto" height="84"></u-tabs> <u-tabs :list="typeGroup" :is-scroll="false" v-model="current" @change="updateType" item-width="126" :active-color="globalData.themeColor" bar-width="60" bar-height="6" font-size="32" :gutter="22" duration="0.1" itemWidth="auto" height="84"></u-tabs>
</view> --> </view> -->
<!-- - ${isLogin ? tabbarHeight + 43 : 0}px --> <!-- - ${isLogin ? tabbarHeight + 43 : 0}px -->
<!-- isLogin ? '43px' : --> <!-- isLogin ? '43px' : -->
<scroll-view @scroll="getScrollInfo" :scroll-top="resetScroll" :style="{ minHeight: `calc(100vh - ${tabbarHeight}px)`, 'padding-top': '' }" :scroll-y="true" v-if="isLogin"> <scroll-view @scroll="getScrollInfo" :scroll-top="resetScroll" :style="{ minHeight: `calc(100vh - ${tabbarHeight}px)`, 'padding-top': '' }" :scroll-y="true" v-if="isLogin">
<view class="" v-show="current == 0"> <view class="g_bg_ed" v-show="current == 0">
<view class="g_h_10"></view> <view class="g_h_10"></view>
<view class=""> <!-- background-color: #ededed; -->
<view class="g_radius_6" style="margin: 0 10px; overflow: hidden">
<ConversationList ref="contactList" /> <ConversationList ref="contactList" />
</view> </view>
</view> </view>
<view class="" v-if="current == 1"> <view class="" v-if="current == 1">
<telPanel /> <telPanel />
</view> </view>
<div style="height: 48px; background-color: #ededed" ></div>
</scroll-view> </scroll-view>
<view class="g_h_all" v-if="!isLogin"> <view class="g_h_all" v-if="!isLogin">
<view class="" hover-class="none" hover-stop-propagation="false" style="height: 108px"> </view> <view class="" hover-class="none" hover-stop-propagation="false" style="height: 108px"> </view>
@ -127,18 +129,24 @@ onShow(() => {
trackInit("ConversationUIKit"); trackInit("ConversationUIKit");
// //
uni.$UIKitStore?.uiStore.selectConversation(""); uni.$UIKitStore?.uiStore.selectConversation("");
// (im, , )
uni.$UIKitStore.conversationStore.getConversationListActive(0, 100).then((res) => {
console.log("reresresresress", res);
console.log("contactListcontactListcontactListcontactListcontactList", contactList.value.conversationList);
contactList.value.conversationList = res.conversationList;
});
setTimeout(() => { setTimeout(() => {
const unread = uni.$UIKitNIM.V2NIMConversationService.getTotalUnreadCount(); const unread = uni.$UIKitNIM.V2NIMConversationService.getTotalUnreadCount();
if (unread === 0) { // if (unread === 0) {
uni.hideTabBarRedDot({ // uni.hideTabBarRedDot({
// // //
index: 3, //tabbar // index: 3, //tabbar
}); // });
} else { // } else {
uni.showTabBarRedDot({ // uni.showTabBarRedDot({
index: 3, //tabbar // index: 3, //tabbar
}); // });
} // }
}, 1000); }, 1000);
current.value = 0; current.value = 0;
} }
@ -204,7 +212,7 @@ const updateType = (e) => {
<style lang="scss"> <style lang="scss">
page { page {
background-color: #ededed; background-color: #ededed;
} }
.i-items { .i-items {
// border-bottom: 1px solid #eee; // border-bottom: 1px solid #eee;

@ -115,7 +115,7 @@
" :goto-user-card="true" /> " :goto-user-card="true" />
<div class="msg-content"> <div class="msg-content">
<div class="msg-name 2" v-if="!props.msg.isSelf"> <div class="msg-name 2" v-if="!props.msg.isSelf">
{{ appellation }} <span v-if="subtitle" style="color: orange;">{{ subtitle }}</span> {{ appellation }} <span v-if="subtitle" style="color: orange;font-size:14px">{{ subtitle }}</span>
</div> </div>
<MessageBubble :msg="props.msg" :tooltip-visible="true" :bg-visible="true"> <MessageBubble :msg="props.msg" :tooltip-visible="true" :bg-visible="true">
<ReplyMessage v-if="!!replyMsg" :replyMsg="replyMsg"></ReplyMessage> <ReplyMessage v-if="!!replyMsg" :replyMsg="replyMsg"></ReplyMessage>

@ -535,8 +535,8 @@ export default {
// that.G.fillTextLineBreak(ctx, "" + info.jobUpdateNum, 140, 400, ("" + info.jobUpdateNum).length * 56, 56, "#999", 56, 500, "left"); // // that.G.fillTextLineBreak(ctx, "" + info.jobUpdateNum, 140, 400, ("" + info.jobUpdateNum).length * 56, 56, "#999", 56, 500, "left"); //
console.log("that.formatNumberAdvanced(info.jobNum)", that.formatNumberAdvanced(info.jobNum)); console.log("that.formatNumberAdvanced(info.jobNum)", that.formatNumberAdvanced(info.jobNum));
const textSegments = [ const textSegments = [
{ content: that.formatNumberAdvanced(info.jobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 }, // { content: that.formatNumberAdvanced(info.jobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 },
{ content: "总职位", color: "#666", fontWeight: 500, fontSize: 56, space: 70 }, // { content: "", color: "#666", fontWeight: 500, fontSize: 56, space: 70 },
{ content: that.formatNumberAdvanced(info.recruitmentJobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 }, { content: that.formatNumberAdvanced(info.recruitmentJobNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 },
{ content: "在招数", color: "#666", fontWeight: 500, fontSize: 56, space: 70 }, { content: "在招数", color: "#666", fontWeight: 500, fontSize: 56, space: 70 },
{ content: that.formatNumberAdvanced(info.downNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 }, { content: that.formatNumberAdvanced(info.downNum).toString(), color: "#000", fontWeight: 500, fontSize: 80, space: 10 },

@ -177,6 +177,10 @@
<g-panel-record :item="orderDetail.records" @clickInfo="goRecordInfo" /> <g-panel-record :item="orderDetail.records" @clickInfo="goRecordInfo" />
</view> </view>
</view> </view>
<!-- <div hover-class="none" class="g_bg_main g_flex_column_center g_radius_50 g_w_52 g_h_52 g_text_c g_c_f g_fs_14" style="position: fixed; right: 20px; bottom: 120px; z-index: 0" @click="goIm">
<i class="g_fsi_20 iconfont icon-kefu" style="color: #fff"></i>
<div class="" style="line-height: 1">客服</div>
</div> -->
</view> </view>
<u-popup v-model="recordModal.isShow" mode="bottom" border-radius="16" height="980" :mask-close-able="true"> <u-popup v-model="recordModal.isShow" mode="bottom" border-radius="16" height="980" :mask-close-able="true">
@ -295,8 +299,8 @@
</view> </view>
</view> </view>
<view class="g_flex_row_between g_border_e_t"> <view class="g_flex_row_between g_border_e_t">
<view class="g_c_3 g_fs_18 g_pt_18 g_pb_18 g_flex_c g_fw_700" style="width: 50%; height: 49px" @click="handleCopy"></view> <view class="g_c_3 g_fs_18 g_flex_c g_fw_700" style="width: 49%; height: 49px" @click="handleCopy"></view>
<view class="g_c_main g_fs_18 g_pt_18 g_pb_18 g_flex_c" style="width: 50%; height: 49px; border-left: 1rpx solid #eee" @click="infoModal.isShow = false">知道了</view> <view class="g_c_main g_fs_18 g_flex_c" style="width: 50%; height: 49px; border-left: 1rpx solid #eee" @click="infoModal.isShow = false">知道了</view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
@ -367,7 +371,21 @@
</view> </view>
</slot> </slot>
</g-panel-fixed> --> </g-panel-fixed> -->
<g-panel-fixed style="box-shadow: 0 -4px 12px #ededed">
<slot>
<view class="g_ml_20 g_mr_20 g_flex_row_between flex_center flex_nw">
<view class="g_flex_column_center flex_center g_mr_12" @click="getServiceInfo({ type: 'tel' })"> <i class="iconfont icon-phone g_c_main"></i><view class="g_fs_12 g_c_6 g_mt_4">电话客服</view> </view>
<view class="g_flex_row_between flex_center g_flex_1">
<view class="g_flex_1 g_mr_12" v-if="orderDetail.downAgencyId && orderDetail.downAgencyId != agencyId">
<g-button @clickBtn="getServiceInfo({ type: 'im', info: 'up' })" size="auto" btnText="下游客服" type="primary" ></g-button>
</view>
<view class="g_flex_1" v-if="orderDetail.upAgencyId && orderDetail.upAgencyId != agencyId">
<g-button @clickBtn="getServiceInfo({ type: 'im', info: 'down' })" size="auto" btnText="上游客服" type="primary" ></g-button>
</view>
</view>
</view>
</slot>
</g-panel-fixed>
<u-popup v-model="shareModal.isShow" mode="bottom" border-radius="16" height="600px" :mask-close-able="true"> <u-popup v-model="shareModal.isShow" mode="bottom" border-radius="16" height="600px" :mask-close-able="true">
<mainPanel :showBg="true" :rid="rid" :oid="oid" :active="1" :name="orderDetail.userName" :job="orderDetail.storeJobName" :recommendList="recommendList[0]" /> <mainPanel :showBg="true" :rid="rid" :oid="oid" :active="1" :name="orderDetail.userName" :job="orderDetail.storeJobName" :recommendList="recommendList[0]" />
</u-popup> </u-popup>
@ -375,7 +393,7 @@
</template> </template>
<script> <script>
import mainPanel from "./myMain.vue"; import mainPanel from "../../components/myMain.vue";
export default { export default {
components: { components: {
mainPanel, mainPanel,
@ -390,6 +408,7 @@ export default {
data() { data() {
return { return {
rid: 0, rid: 0,
goImLoading: false, // loading
recommendList: [], recommendList: [],
shareModal: { shareModal: {
isShow: false, isShow: false,
@ -1130,6 +1149,68 @@ export default {
setReturnFee(returnFee, returnFeeType) { setReturnFee(returnFee, returnFeeType) {
return this.G.setReturnFee(returnFee, returnFeeType); return this.G.setReturnFee(returnFee, returnFeeType);
}, },
getServiceInfo(val) {
let that = this;
if (that.goImLoading) {
return false;
}
that.goImLoading = true;
that.F.wyyxGet(that.api.job_get_agency_cus + "?agencyId=" + val.info == "up" ? that.orderDetail.upAgencyId : that.orderDetail.downAgencyId, {}, (cusData) => {
console.log("cusDatacusDatacusDatacusData", cusData);
if (val.type == "im") {
that.goIm(cusData);
} else {
that.takeTel(cusData.tel);
}
});
},
takeTel(tel) {
let that = this;
uni.makePhoneCall({
phoneNumber: tel,
});
that.goImLoading = false;
},
goIm(cusData) {
let that = this;
that.F.wyyxPost(
that.api.wyyx_create,
{
// senderUserId: uni.getStorageSync("apply-uid"),
// receiverUserId: cusData,
senderAccid: uni.getStorageSync("im-accid"),
receiverAccid: cusData.accid,
},
(res) => {
uni.$UIKitStore.uiStore.selectConversation(res.conversationId);
let params = {
工单信息: "",
"\n姓名": that.orderDetail.userName + that.orderDetail.setTitle,
"\n身份证号": that.orderDetail.idCard ? that.orderDetail.idCard : "-",
"\n企业岗位": that.orderDetail.storeJobName ? that.orderDetail.storeJobName : "-",
"\n电话": that.orderDetail.tel ? that.orderDetail.tel : "-",
};
that.F.wyyxPost(
that.api.wyyx_sendMessage,
{
conversationType: 1,
senderAccid: uni.getStorageSync("im-accid"),
receiverAccid: cusData.accid,
text: that.G.objToStr(params, "copy"),
},
(res) => {
uni.navigateTo({
url: "/root/NEUIKit/pages/Chat/index",
});
that.goImLoading = false;
},
() => {}
);
},
() => {}
);
},
}, },
}; };
</script> </script>

@ -324,7 +324,7 @@
<div class="g_fs_18 g_c_3 g_fw_600 g_flex_column_center">职位描述</div> <div class="g_fs_18 g_c_3 g_fw_600 g_flex_column_center">职位描述</div>
</div> </div>
</div> --> </div> -->
<div class="g_position_rela" v-if="attention && tabInfo.list[tabInfo.active].tip == 1"> <div class="g_position_rela" v-if="tabInfo.list[tabInfo.active].tip == 1">
<view class="" v-if="!jobDetail.cozeStructureRes"> <view class="" v-if="!jobDetail.cozeStructureRes">
<view v-if="jobDetail.notes"> <view v-if="jobDetail.notes">
<view class="detailH3">注意事项</view> <view class="detailH3">注意事项</view>
@ -423,7 +423,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="g_position_rela" v-if="attention && tabInfo.list[tabInfo.active].tip == 3"> <div class="g_position_rela" v-if="tabInfo.list[tabInfo.active].tip == 3">
<div class="g_pt_16 g_fs_16 pri" style=""> <div class="g_pt_16 g_fs_16 pri" style="">
<div @click.stop="setCopy('old')"> <div @click.stop="setCopy('old')">
<span class="desp-copy g_c_main g_border_main">复制</span> <span class="desp-copy g_c_main g_border_main">复制</span>
@ -481,7 +481,7 @@
<div class="g_fs_12 g_c_6 g_w_28" style="margin-top: 8px">编辑</div> <div class="g_fs_12 g_c_6 g_w_28" style="margin-top: 8px">编辑</div>
</button> </button>
</div> </div>
<div class="g_flex_none g_flex_column_center" v-if="attention && from != 'bill'"> <div class="g_flex_none g_flex_column_center" v-if=" from != 'bill'">
<button class="g_pl_0 g_pr_0 g_bg_f g_mr_12 g_w_36" hover-class="thover" style="line-height: 1; border-radius: 0" @click="handleCollection"> <button class="g_pl_0 g_pr_0 g_bg_f g_mr_12 g_w_36" hover-class="thover" style="line-height: 1; border-radius: 0" @click="handleCollection">
<icon v-if="isSc" class="iconfont icon-yishoucang g_fsi_16" style="color: #ff4400; line-height: 1; margin-top: -5px"></icon> <icon v-if="isSc" class="iconfont icon-yishoucang g_fsi_16" style="color: #ff4400; line-height: 1; margin-top: -5px"></icon>
<icon v-else class="iconfont icon-shoucang g_fsi_16" style="color: #787878; line-height: 1; margin-top: -5px"></icon> <icon v-else class="iconfont icon-shoucang g_fsi_16" style="color: #787878; line-height: 1; margin-top: -5px"></icon>
@ -501,7 +501,7 @@
<g-button btnText="联系客服" class="g_w_100" size="small_auto" @clickBtn="goIm"></g-button> <g-button btnText="联系客服" class="g_w_100" size="small_auto" @clickBtn="goIm"></g-button>
</div> </div>
<div class="g_flex_1 g_flex_column_center "> <div class="g_flex_1 g_flex_column_center ">
<g-button btnText="我要报名" class="" size="small_auto" :type="jobDetail.recruitment == 2 || !attention ? 'infro' : 'primary'" @clickBtn="handleOpenApplyPopup" style="width: calc(100% - 32px)"></g-button> <g-button btnText="我要报名" class="" size="small_auto" :type="jobDetail.recruitment == 2 ? 'infro' : 'primary'" @clickBtn="handleOpenApplyPopup" style="width: calc(100% - 32px)"></g-button>
</div> </div>
</div> </div>
</div> </div>
@ -598,7 +598,6 @@ export default {
this.G.setNavStyle(); this.G.setNavStyle();
}, },
onShareAppMessage() { onShareAppMessage() {
this.attention = false;
// return this.G.shareFun("/root/detail/job?id=" + this.jobDetail.id, // return this.G.shareFun("/root/detail/job?id=" + this.jobDetail.id,
// "", this.jobDetail.jobName + " " + this.jobDetail.priceStr + " " + " "); // "", this.jobDetail.jobName + " " + this.jobDetail.priceStr + " " + " ");
let that = this; let that = this;
@ -665,7 +664,6 @@ export default {
dateTime: [], dateTime: [],
from: "", // from: "", //
isSc: false, // isSc: false, //
attention: false, //
selfJob: false, // selfJob: false, //
showPrice: true, // showPrice: true, //
labelColor: ["#c41d7f", "#096dd9", "#531dab", "#d46b08", "#389e0d", "#08979c", "#cf1322"], labelColor: ["#c41d7f", "#096dd9", "#531dab", "#d46b08", "#389e0d", "#08979c", "#cf1322"],
@ -812,7 +810,6 @@ export default {
} }
}); });
that.speed = 1; that.speed = 1;
that.attention = true;
// this.toKnowInfo(res.agencyId); // this.toKnowInfo(res.agencyId);
}); });
} }
@ -861,7 +858,7 @@ export default {
console.log(id); console.log(id);
that.G.Get(that.api.bind_enterpriseDetail + "/" + id, "", (res) => { that.G.Get(that.api.bind_enterpriseDetail + "/" + id, "", (res) => {
if (that.userinfo.agencyId == that.jobDetail.agencyId || res.recordStatus == 1 || res.recordStatus == 2) { if (that.userinfo.agencyId == that.jobDetail.agencyId || res.recordStatus == 1 || res.recordStatus == 2) {
that.attention = true; // that.attention = true;
} else { } else {
that.G.handleConfirm({ that.G.handleConfirm({
title: "关注发单号", title: "关注发单号",
@ -1031,9 +1028,9 @@ export default {
handleOpenApplyPopup() { handleOpenApplyPopup() {
let that = this; let that = this;
if (!this.attention) { // if (!this.attention) {
return false; // return false;
} // }
let params = { let params = {
jobId: this.jobDetail.id, jobId: this.jobDetail.id,
jobName: this.jobDetail.jobName, jobName: this.jobDetail.jobName,
@ -1367,7 +1364,7 @@ export default {
// senderUserId: uni.getStorageSync("apply-uid"), // senderUserId: uni.getStorageSync("apply-uid"),
// receiverUserId: cusData, // receiverUserId: cusData,
senderAccid: uni.getStorageSync("im-accid"), senderAccid: uni.getStorageSync("im-accid"),
receiverAccid: cusData, receiverAccid: cusData.accid,
}, },
(res) => { (res) => {
uni.$UIKitStore.uiStore.selectConversation(res.conversationId); uni.$UIKitStore.uiStore.selectConversation(res.conversationId);
@ -1387,7 +1384,7 @@ export default {
// senderUserId: uni.getStorageSync("apply-uid"), // id id // senderUserId: uni.getStorageSync("apply-uid"), // id id
// receiverUserId: cusData, // id // receiverUserId: cusData, // id
senderAccid: uni.getStorageSync("im-accid"), senderAccid: uni.getStorageSync("im-accid"),
receiverAccid: cusData, receiverAccid: cusData.accid,
type: 100000, type: 100000,
jobDetail: { jobDetail: {
title: that.jobDetail.jobName, title: that.jobDetail.jobName,

@ -3,7 +3,7 @@
<g-loading text="加载中..."></g-loading> <g-loading text="加载中..."></g-loading>
</div> </div>
<div class="p-root-detail-user g_w_all g_bg_page g_kuaishou" v-if="showPage"> <div class="p-root-detail-user g_w_all g_bg_page g_kuaishou" v-if="showPage">
<u-navbar backIconColor="#333" :borderBottom="false" :immersive="true" :customBack="goHome" :background="background" :backIconName="fromShare ? 'home' : 'arrow-left'"></u-navbar> <u-navbar backIconColor="#333" :borderBottom="false" :immersive="true" :customBack="goHome" :background="{ background: navColor }" :backIconName="fromShare ? 'home' : 'arrow-left'"></u-navbar>
<view class="scroll-container" @touchstart="onTouchStart" @touchmove="onTouchMove" @touchend="onTouchEnd"> <view class="scroll-container" @touchstart="onTouchStart" @touchmove="onTouchMove" @touchend="onTouchEnd">
<view class="background-container" style="width: 100%; overflow: hidden"> <view class="background-container" style="width: 100%; overflow: hidden">
<view <view
@ -69,10 +69,10 @@
<!-- 已关注 1 --> <!-- 已关注 1 -->
<!-- class="g_mr_10" --> <!-- class="g_mr_10" -->
<div class="g_flex_1"> <div class="g_flex_1">
<g-button btnText="已关注发单号" size="auto" @clickBtn="handleCancel" type="disabled" class></g-button> <g-button btnText="已关注发单号" size="auto" @clickBtn="handleCancel" type="noStyle" class></g-button>
</div> </div>
<div class="g_ml_16 g_w_100 g_flex_none"> <div class="g_ml_16 g_flex_1 ">
<g-button btnText="联系客服" class="" size="auto" @clickBtn="goIm"></g-button> <g-button btnText="联系客服" class="" type="noStyle" size="auto" @clickBtn="goIm"></g-button>
</div> </div>
<!-- <div style="width:calc((100vw - 50px) / 2);"> <!-- <div style="width:calc((100vw - 50px) / 2);">
<g-button btnText="联系客服" size="auto" type="disabled" class></g-button> <g-button btnText="联系客服" size="auto" type="disabled" class></g-button>
@ -81,10 +81,10 @@
<div style="width: calc(100vw - 40px)" class="g_flex_row_center" v-else-if="info.recordStatus == 2"> <div style="width: calc(100vw - 40px)" class="g_flex_row_center" v-else-if="info.recordStatus == 2">
<div class="g_flex_1"> <div class="g_flex_1">
<g-button btnText="互相关注" size="auto" type="disabled" @clickBtn="handleCancel" class></g-button> <g-button btnText="互相关注" size="auto" type="noStyle" @clickBtn="handleCancel" class></g-button>
</div> </div>
<div class="g_ml_16 g_w_100 g_flex_none"> <div class="g_ml_16 g_flex_1 ">
<g-button btnText="联系客服" class="" size="auto" @clickBtn="goIm"></g-button> <g-button btnText="联系客服" class="" type="noStyle" size="auto" @clickBtn="goIm"></g-button>
</div> </div>
</div> </div>
@ -93,7 +93,7 @@
</div> </div>
<!-- --> <!-- -->
<div style="width: calc(100vw - 40px)" v-else-if="info.recordStatus == 5"> <div style="width: calc(100vw - 40px)" v-else-if="info.recordStatus == 5">
<g-button btnText="申请中" icon="icon-time-circle g_mr_4" size="auto" type="disabled" class></g-button> <g-button btnText="申请中" icon="icon-time-circle g_mr_4" size="auto" type="noStyle" class></g-button>
</div> </div>
<div style="width: calc(100vw - 40px)" v-else-if="info.recordStatus == 6 && !isSelf"> <div style="width: calc(100vw - 40px)" v-else-if="info.recordStatus == 6 && !isSelf">
<g-button btnText="申请关注" size="auto" type="primary" :loading="btnLoading" class @clickBtn="handleSubmit"></g-button> <g-button btnText="申请关注" size="auto" type="primary" :loading="btnLoading" class @clickBtn="handleSubmit"></g-button>
@ -102,7 +102,7 @@
</div> </div>
</view> </view>
<div class="g_bg_f g_pt_8"> <div class="g_bg_f g_pt_8">
<!-- <u-tabs bg-color="transparent" from="index" gutter="20" :list="tabInfo.list" :is-scroll="true" :current="tabInfo.active" active-color="#000" bar-width="64" bar-height="6" @change="handleUpdateTab" font-size="32" duration="0.05" height="56"></u-tabs> --> <u-tabs bg-color="transparent" from="index" gutter="20" :list="tabInfo.list" :is-scroll="true" v-model="tabInfo.active" active-color="#000" bar-width="64" bar-height="6" @change="handleUpdateTab" font-size="32" duration="0.05" height="56"></u-tabs>
</div> </div>
<!-- 基本信息 --> <!-- 基本信息 -->
@ -200,19 +200,19 @@ export default {
tabInfo: { tabInfo: {
list: [ list: [
{ {
name: "最新", name: "全部",
num: 0, num: 0,
tip: 0, tip: 0,
classify: 2, classify: 2,
}, },
{ {
name: "最热", name: "一手",
num: 0, num: 0,
tip: 1, tip: 1,
classify: 3, classify: 3,
}, },
{ {
name: "专属", name: "最新",
num: 0, num: 0,
tip: 2, tip: 2,
classify: 1, classify: 1,
@ -232,8 +232,10 @@ export default {
}; };
}, },
onPageScroll(e) { onPageScroll(e) {
if (e.scrollTop <= 100) { if (e.scrollTop > 120) {
this.navColor = `rgb(255,255,255,${e.scrollTop / 50})`; this.navColor = `rgb(255,255,255,${e.scrollTop / 200})`;
} else {
this.navColor = `rgb(255,255,255,0)`;
} }
}, },
onLoad(options) { onLoad(options) {
@ -769,7 +771,7 @@ export default {
// senderUserId: uni.getStorageSync("apply-uid"), // senderUserId: uni.getStorageSync("apply-uid"),
// receiverUserId: cusData, // receiverUserId: cusData,
senderAccid: uni.getStorageSync("im-accid"), senderAccid: uni.getStorageSync("im-accid"),
receiverAccid: cusData, receiverAccid: cusData.accid,
}, },
(res) => { (res) => {
uni.$UIKitStore.uiStore.selectConversation(res.conversationId); uni.$UIKitStore.uiStore.selectConversation(res.conversationId);

@ -0,0 +1,133 @@
<template>
<scroll-view class="g_bg_page" style="box-sizing: border-box; padding-bottom: 120px" scroll-y="true" hover-class="none">
<view style="padding: 12px 12px">
<view class="g_flex_row_between flex_center g_bg_f g_p_12 g_radius_6 g_mb_8" hover-class="thover" v-for="item in teamList" @click="toogleTeam(item)">
<view class="g_flex_row_start flex_center">
<view>
<img class="g_w_48 g_h_48 g_radius_50" :src="item.logo || 'https://matripe-cms.oss-cn-beijing.aliyuncs.com/ibocai/storeDefault.jpg'" alt="" />
</view>
<view class="g_fs_16 g_ml_12">{{ item.fullName || item.agencyName }}</view>
</view>
<view class style="color: #00b666" hover-class="none">{{ item.checked ? "当前" : "" }}</view>
</view>
</view>
<!--
<view class="g_mt_10 g_position_rela">
<g-panel-form-item
:list="[
{
icon: 'add',
label: '合并团队',
result: readed && readed > 0 ? readed : '',
path: '',
tip: 'margeGroup',
},
]"
@clickItem="goMarge"
/>
</view> -->
</scroll-view>
<g-panel-fixed>
<slot>
<view class="g_ml_10 g_mr_10 g_position_rela">
<div class="g_w_8 g_h_8 g_radius_50 g_bg_f0a g_position_abso" style="right: 50px; top: 0px" v-if="readed && readed > 0"></div>
<g-button btnText="合并团队" type="primary" size="default" @clickBtn="goMarge" />
</view>
</slot>
</g-panel-fixed>
</template>
<script>
export default {
//
name: "",
//
components: {},
//
props: {},
//
data() {
return {
readed: false,
teamList: [], //
};
},
onLoad() {
uni.showLoading({
title: "加载中...",
});
this.getTeamList();
this.getNum();
},
//
computed: {},
//
watch: {},
created() {},
mounted() {},
//
methods: {
getNum() {
let that = this;
that.G.Get(that.api.person_applyNum, {}, (res) => {
that.readed = res;
});
},
goMarge() {
uni.navigateTo({
url: "/root/person/marge",
});
},
/**
* 获取团队列表
*/
getTeamList() {
let that = this;
that.G.Get(that.api.user_getTeamList, {}, (res) => {
console.log("res", res);
res.forEach((item) => {
if (item.id == uni.getStorageSync("apply-agencyId")) {
item.checked = true;
}
});
uni.hideLoading();
that.teamList = res;
});
},
/**
* 切换团队
*/
toogleTeam(item) {
let that = this;
console.log(item);
if (wx.getStorageSync("apply-agencyId") == item.id) {
return false;
}
wx.showLoading({
title: "切换中...",
});
that.G.Get(that.api.user_toggleTeam + `/${item.id}`, {}, (res) => {
uni.setStorageSync("apply-agencyId", item.id);
console.log("res", res);
that.G.checkTokenNew().then(() => {
uni.hideLoading();
uni.showToast({
title: "切换成功",
icon: "success",
duration: 2000,
});
let userInfo = uni.getStorageSync("apply-userinfo");
uni.$emit("isGlogin", {
uid: userInfo.user.id,
});
that.getTeamList();
});
});
},
},
};
</script>
<style scoped lang="less"></style>

@ -110,7 +110,7 @@ export default {
value: that.userinfo.imgSrc, value: that.userinfo.imgSrc,
path: "/root/person/avatar", path: "/root/person/avatar",
tip: "avatar", tip: "avatar",
pColumn: 22, pColumn: 19,
}, },
{ {
icon: "", icon: "",

@ -3,7 +3,7 @@
<unloginInfo></unloginInfo> <unloginInfo></unloginInfo>
</view> --> </view> -->
<div class="g_pb_32" style="min-height: calc(100vh - 47px)" :data-admin="isAdmin"> <div class="g_pb_32" style="min-height: calc(100vh - 47px)" :data-admin="isAdmin">
<view class=""> <!-- <view class="">
<g-panel-form-item <g-panel-form-item
:list="[ :list="[
{ {
@ -31,8 +31,8 @@
]" ]"
@clickItem="goMarge" @clickItem="goMarge"
/> />
</view> </view> -->
<view class="g_mt_10"> <view class="">
<g-panel-form-item :isDisabled="isAdmin ? 0 : 1" class="g_mb_10" :list="companyConfig" @clickItem="handleItemClick"> </g-panel-form-item> <g-panel-form-item :isDisabled="isAdmin ? 0 : 1" class="g_mb_10" :list="companyConfig" @clickItem="handleItemClick"> </g-panel-form-item>
</view> </view>
<view class="g_mt_10"> <view class="g_mt_10">

@ -2,13 +2,18 @@
<view class="p-root-person-userinfo g_w_all g_h_all g_bg_f_5 g_kuaishou"> <view class="p-root-person-userinfo g_w_all g_h_all g_bg_f_5 g_kuaishou">
<view class="g_h_16"></view> <view class="g_h_16"></view>
<view class="g_mb_10"> <view class="g_mb_10">
<g-panel-form-item :list="[{ <g-panel-form-item
icon: '', :list="[
label: '反馈与建议', {
result: '', icon: '',
path: '/root/person/feedback', label: '反馈与建议',
tip: 'message', result: '',
}]" @clickItem="handleClickItem" /> path: '/root/person/feedback',
tip: 'message',
},
]"
@clickItem="handleClickItem"
/>
</view> </view>
<view class="g_pl_10 g_pr_10 g_pb_16" v-if="isCreator"> <view class="g_pl_10 g_pr_10 g_pb_16" v-if="isCreator">
<view class="g_bg_f g_pl_20 g_pr_20 g_radius_8"> <view class="g_bg_f g_pl_20 g_pr_20 g_radius_8">
@ -61,20 +66,21 @@
@clickItem="handleClickItem" @clickItem="handleClickItem"
/> />
</view> </view>
<!-- <view class="g_mt_10"> <view class="g_mt_10 g_ml_10 g_mr_10">
<g-panel-form-item <g-button btnText="切换团队" type="none" size="medium" @clickBtn="toChangeTeam" mode="square" />
<!-- <g-panel-form-item
:list="[ :list="[
{ {
label: '切换团队', label: '切换团队',
result: '', result: '',
path: 'qiehuan', path: '/root/person/changeTeam',
tip: 'set', tip: 'set',
pRow: 12, pRow: 12,
}, },
]" ]"
@clickItem="handleClickItem" @clickItem="handleClickItem"
/> /> -->
</view> --> </view>
<view class="g_mt_24 g_ml_10 g_mr_10"> <view class="g_mt_24 g_ml_10 g_mr_10">
<g-button btnText="退出登录" type="delete" size="medium" @clickBtn="handleLayout" mode="square" /> <g-button btnText="退出登录" type="delete" size="medium" @clickBtn="handleLayout" mode="square" />
</view> </view>
@ -187,6 +193,11 @@ export default {
}); });
} }
}, },
toChangeTeam() {
uni.navigateTo({
url: "/root/person/changeTeam",
});
},
/** /**
* 设置是否显示邀请关注弹窗 * 设置是否显示邀请关注弹窗
*/ */

@ -8,7 +8,7 @@
<!-- $u.getRect()对组件根节点无效因为写了.in(this)故这里获取内层接点尺寸 --> <!-- $u.getRect()对组件根节点无效因为写了.in(this)故这里获取内层接点尺寸 -->
<view :id="id"> <view :id="id">
<scroll-view scroll-x class="u-scroll-view" :scroll-left="scrollLeft" scroll-with-animation> <scroll-view scroll-x class="u-scroll-view" :scroll-left="scrollLeft" scroll-with-animation>
<view class="u-scroll-box" :id="id" :class="{ 'u-tabs-scroll-flex': !isScroll,'g_flex_row_between':flex == 'center' }"> <view class="u-scroll-box" :id="id" :class="{ 'u-tabs-scroll-flex': !isScroll, g_flex_row_between: flex == 'center' }">
<view class="u-tab-item u-line-1" :id="'u-tab-item-' + index" v-for="(item, index) in list" :key="index" @tap="clickTab(index)" :style="[tabItemStyle(index)]"> <view class="u-tab-item u-line-1" :id="'u-tab-item-' + index" v-for="(item, index) in list" :key="index" @tap="clickTab(index)" :style="[tabItemStyle(index)]">
<u-badge :count="item[count] || item['count'] || 0" :offset="offset" size="mini"></u-badge> <u-badge :count="item[count] || item['count'] || 0" :offset="offset" size="mini"></u-badge>
{{ item[name] || item["name"] }} {{ item[name] || item["name"] }}
@ -200,6 +200,7 @@ export default {
current: { current: {
immediate: true, immediate: true,
handler(nVal, oVal) { handler(nVal, oVal) {
console.log("current nVal", nVal);
// //
this.$nextTick(() => { this.$nextTick(() => {
this.currentIndex = nVal; this.currentIndex = nVal;

@ -107,75 +107,83 @@ let data = {
} }
} }
// console.log("公共参数,+++++", Object.assign($parmas, that.setPublicParams())); // console.log("公共参数,+++++", Object.assign($parmas, that.setPublicParams()));
uni.request({ uni.getNetworkType({
url: ajaxUrl + $url, success: function (res) {
data: Object.assign($parmas, that.setPublicParams()), console.log('resresresres networkType',res);
header: Object.assign($header, that.setPublicParams()), if (res.networkType !== 'none') {
method: $method, uni.request({
success: (res) => { url: ajaxUrl + $url,
// console.log('测试报错123123123123123123',res); data: Object.assign($parmas, that.setPublicParams()),
// console.log('测试报错123123123123123123$url',$url); header: Object.assign($header, that.setPublicParams()),
let resData = res.data; method: $method,
success: (res) => {
// console.log('测试报错123123123123123123',res);
// console.log('测试报错123123123123123123$url',$url);
let resData = res.data;
if (resData.status == 200) {// 正常 if (resData.status == 200) {// 正常
callback(resData.data, resData.msg); callback(resData.data, resData.msg);
} else if (resData.status == 9999) {// 登录过期或者身份变动等需要登录的场景 } else if (resData.status == 9999) {// 登录过期或者身份变动等需要登录的场景
uni.showToast({ uni.showToast({
title: resData.msg, title: resData.msg,
icon: "none" icon: "none"
}); });
failback(resData); failback(resData);
setTimeout(() => { setTimeout(() => {
uni.reLaunch({ uni.reLaunch({
url: '/root/person/loginIndex?path=/' + that.getPathCopy().path + '&level=' + that.getPathCopy().level url: '/root/person/loginIndex?path=/' + that.getPathCopy().path + '&level=' + that.getPathCopy().level
}); });
}, 1500); }, 1500);
} else if (resData.status == 500 || resData.status == 502) {// 某种原因导致接口提示该状态码 } else if (resData.status == 500 || resData.status == 502) {// 某种原因导致接口提示该状态码
// if (resData.msg == '系统异常,请稍后') { // if (resData.msg == '系统异常,请稍后') {
// uni.reLaunch({ // uni.reLaunch({
// url: '/root/other/error' // url: '/root/other/error'
// }); // });
// } else { // } else {
uni.showToast({ uni.showToast({
title: resData.msg, title: resData.msg,
// title:'系统异常,请稍后', // title:'系统异常,请稍后',
icon: "none" icon: "none"
}); });
failback(resData.msg); failback(resData.msg);
// } // }
} else if (resData.status == 2002) { } else if (resData.status == 2002) {
uni.showToast({ uni.showToast({
title: '已切换团队,需要重新登录', title: '已切换团队,需要重新登录',
icon: "none" icon: "none"
}); });
setTimeout(() => { setTimeout(() => {
uni.reLaunch({ uni.reLaunch({
url: '/root/person/loginIndex?path=/pages/home/index&level=' + that.getPathCopy().level url: '/root/person/loginIndex?path=/pages/home/index&level=' + that.getPathCopy().level
}); });
}, 1500); }, 1500);
} else {// 其他异常 } else {// 其他异常
if ($url == '/yishoudan/user/apply/order/V2/details') { if ($url == '/yishoudan/user/apply/order/V2/details') {
} else { } else {
uni.showToast({ uni.showToast({
title: resData.msg, title: resData.msg,
icon: "none" icon: "none"
}); });
} }
failback(resData.msg); failback(resData.msg);
}
},
fail (error) {
uni.showToast({
// title: error.errMsg,
title: '系统异常,请稍后',
icon: "none"
})
failback(error);
}
});
} }
}, },
fail (error) { })
uni.showToast({
// title: error.errMsg,
title: '系统异常,请稍后',
icon: "none"
})
failback(error);
}
});
}, },
// 头像上传 // 头像上传

Loading…
Cancel
Save