1

parent 9a49ce04
...@@ -40,5 +40,8 @@ export const feedbackList = params => instance.post("/feedback/list", params); ...@@ -40,5 +40,8 @@ export const feedbackList = params => instance.post("/feedback/list", params);
//获取公司申诉信息 //获取公司申诉信息
export const appealInfo = params => instance.post("/company/appeal/info", params); export const appealInfo = params => instance.post("/company/appeal/info", params);
//营业执照ocr
export const ocrLicense = params => instance.postForm("/ocr/license", params);
//根据id获取反馈信息 //根据id获取反馈信息
export const feedbackById = params => instance.post(`/feedback/${params}`); export const feedbackById = params => instance.post(`/feedback/${params}`);
@font-face {
font-family: "YSBTH";
src: url('./ysbth.TTF');
font-weight: normal;
font-style: normal;
}
\ No newline at end of file
...@@ -3,13 +3,16 @@ import App from "./App.vue"; ...@@ -3,13 +3,16 @@ import App from "./App.vue";
import store from "./store"; import store from "./store";
import Vconsole from "vconsole"; import Vconsole from "vconsole";
import NavBar from "@/components/navBar/index.vue"; import NavBar from "@/components/navBar/index.vue";
// 字体
import '@/assets/font.css';
import { formatTimestamp } from "@/utils/utils"; import { formatTimestamp } from "@/utils/utils";
export function createApp() { export function createApp() {
const app = createSSRApp(App); const app = createSSRApp(App);
app.config.globalProperties.$formatTimestamp = formatTimestamp; app.config.globalProperties.$formatTimestamp = formatTimestamp;
app.component("NavBar", NavBar); app.component("NavBar", NavBar);
const vConsole = new Vconsole(); const vConsole = new Vconsole();
app.use(store,vConsole); app.use(store);
// app.use(vConsole);
return { return {
app app
}; };
......
...@@ -19,11 +19,8 @@ import articleList from "@/components/articleList/index.vue"; ...@@ -19,11 +19,8 @@ import articleList from "@/components/articleList/index.vue";
import { getArticleListApi, getArticleTypesApi } from "@/api/article.js"; import { getArticleListApi, getArticleTypesApi } from "@/api/article.js";
import { reactive, ref } from "vue"; import { reactive, ref } from "vue";
const contentHeight = ref("100rpx"); const contentHeight = ref("100rpx");
const active = ref(""); const active = ref("zph");
const typeList = ref([ const typeList = ref([{ id: "zph", name: "招聘会" }]);
{ id: "", name: "全部" },
{ id: "zph", name: "招聘会" }
]);
getArticleTypesApi(2).then(res => { getArticleTypesApi(2).then(res => {
typeList.value.push(...res.data); typeList.value.push(...res.data);
}); });
......
...@@ -3,14 +3,14 @@ ...@@ -3,14 +3,14 @@
<NavBar :showIcon="false" :showTitle="true" title="登录"></NavBar> <NavBar :showIcon="false" :showTitle="true" title="登录"></NavBar>
<!-- pages/login/login.wxml --> <!-- pages/login/login.wxml -->
<view class="login-page"> <view class="login-page">
<nav-bar class="nav-bar"> <view></view>
<template #title>   <text class="student">登录</text> </template>
</nav-bar>
<view class="title"> <view class="title">
<text class="t1">乐业观山湖</text> <text class="t1">乐业观山湖</text>
<text class="t2">您最贴心的求职小伙伴</text> <text class="t2">安全、便捷的就业、创业服务平台</text>
</view> </view>
<button class="login-btn" @click="login">授权手机号登录</button> <button class="login-btn" @click="login">授权手机号登录</button>
<view class="unit-name">观山湖区人力资源与社会保障局</view>
</view> </view>
<!-- {{ res }} --> <!-- {{ res }} -->
</div> </div>
...@@ -69,6 +69,10 @@ const login = () => { ...@@ -69,6 +69,10 @@ const login = () => {
background-size: auto 100%; background-size: auto 100%;
} }
.login-page { .login-page {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.student { .student {
font-size: 36rpx; font-size: 36rpx;
font-weight: 600; font-weight: 600;
...@@ -83,24 +87,32 @@ const login = () => { ...@@ -83,24 +87,32 @@ const login = () => {
.t1 { .t1 {
font-size: 80rpx; font-size: 80rpx;
font-weight: normal; font-weight: normal;
font-family: ysbth;
color: #0e2761; color: #0e2761;
} }
.t2 { .t2 {
font-size: 24rpx; font-size: 24rpx;
font-weight: 500;
color: #1b2026; color: #1b2026;
} }
} }
.login-btn { .login-btn {
position: absolute; // position: fixed;
bottom: 336rpx; // bottom: 336rpx;
left: 50%; // left: 50%;
margin-top: 371 * 2rpx;
width: 640rpx; width: 640rpx;
height: 96rpx; height: 96rpx;
font-size: 34rpx; font-size: 34rpx;
line-height: 96rpx; line-height: 96rpx;
color: #ffffff; color: #ffffff;
background-color: #1f86ff; background-color: #1f86ff;
transform: translate(-50%, 0); }
.unit-name {
margin-top: 240rpx;
font-size: 24rpx;
font-weight: 500;
color: #1b2026;
} }
} }
</style> </style>
...@@ -206,7 +206,7 @@ const handleConfirm = ({ selectedItems, value }) => { ...@@ -206,7 +206,7 @@ const handleConfirm = ({ selectedItems, value }) => {
}; };
const myJobId = ref(""); const myJobId = ref("");
function changeType(v) { function changeType(v) {
activeEducation0value = v.code; activeEducation.value = v.code;
myJobId.value = v.id; myJobId.value = v.id;
getResumeRecommendList(); getResumeRecommendList();
} }
...@@ -375,7 +375,9 @@ const confirmFilter = () => { ...@@ -375,7 +375,9 @@ const confirmFilter = () => {
getApplicationListParams.value.pageNo = 1; getApplicationListParams.value.pageNo = 1;
getApplicationListParams.value.pageSize = 10; getApplicationListParams.value.pageSize = 10;
// 获取推荐列表 // 获取推荐列表
getResumeRecommendList(); refresh().then(() => {
getResumeRecommendList();
});
showOtherFilter.value = false; showOtherFilter.value = false;
}; };
/* 跳转到发布职位 */ /* 跳转到发布职位 */
......
...@@ -211,6 +211,14 @@ const benefits = ref([ ...@@ -211,6 +211,14 @@ const benefits = ref([
{ {
text: "生日福利", text: "生日福利",
active: false active: false
},
{
text: "五险一金",
active: false
},
{
text: "三险一金",
active: false
} }
]); ]);
const onChangeBenefits = e => { const onChangeBenefits = e => {
......
<template> <template>
<NavBar v-if="showTab" :showIcon="true" :showTitle="false" title="" backgroundBox="#FFFFFF"></NavBar>
<div class="page"> <div class="page">
<NavBar v-if="showTab" :showIcon="true" :showTitle="false" title="" backgroundBox="#FFFFFF"></NavBar>
<view class="title"> <view class="title">
<view class="t1">3/5工作地点</view> <view class="t1">3/5工作地点</view>
<view class="t2">添加准确的就职工作地址</view> <view class="t2">添加准确的就职工作地址</view>
...@@ -75,29 +75,29 @@ const next = () => { ...@@ -75,29 +75,29 @@ const next = () => {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "./common.scss"; @import "./common.scss";
image { image {
width: 24rpx; width: 12px;
height: 26rpx; height: 13px;
} }
:deep(#u-a-c .uni-system-choose-location .nav) { :deep(#u-a-c .uni-system-choose-location .nav) {
top: 40rpx !important; top: 20px !important;
background-image: none; background-image: none;
} }
:deep(#u-a-c .uni-system-choose-location .nav-btn) { :deep(#u-a-c .uni-system-choose-location .nav-btn) {
background-color: #007aff; background-color: #007aff;
border-radius: 20rpx; border-radius: 10px;
} }
:deep(#u-a-c .uni-system-choose-location .nav-btn.back) { :deep(#u-a-c .uni-system-choose-location .nav-btn.back) {
background-color: #007aff; background-color: #007aff;
border-radius: 20rpx; border-radius: 10px;
top: 140rpx; top: 50px;
left: 20rpx; left: 10px;
} }
:deep(#u-a-c .uni-system-choose-location .nav-btn.confirm) { :deep(#u-a-c .uni-system-choose-location .nav-btn.confirm) {
background-color: #007aff; background-color: #007aff;
border-radius: 20rpx; border-radius: 10px;
top: 140rpx; top: 50px;
right: 20rpx; right: 10px;
} }
.foot-btn { .foot-btn {
position: fixed; position: fixed;
......
...@@ -17,13 +17,43 @@ ...@@ -17,13 +17,43 @@
</view> </view>
<view class="content"> <view class="content">
<view class="name" v-if="step === 1"> <view class="name" v-if="step === 1">
<view class="t1">个人信息</view>
<div class="content">
<div class="item flex-between">
<p class="label">头像</p>
<div class="flex-align-center" @click="chooseImage">
<image
v-if="params.avatarPath"
class="avatar"
:src="evn.APP_IMAGE_BASE_API + params.avatarPath"
mode=""
/>
<image v-else class="avatar" src="@/static/image/user/default-avatar.png" mode="" />
<div class="arrow"></div>
</div>
</div>
<div class="item">
<p class="label">姓名</p>
<input type="text" v-model="params.realName" placeholder="请输入姓名" />
</div>
<div class="item">
<p class="label">职位</p>
<input type="text" v-model="params.position" placeholder="请输入职位" />
</div>
<div class="item">
<p class="label">电话</p>
<input type="number" v-model="params.phone" placeholder="请输入电话" />
</div>
</div>
</view>
<!-- <view class="name" v-if="step === 1">
<view class="t1">企业信息</view> <view class="t1">企业信息</view>
<input type="text" v-model="pinias.formData.name" placeholder="请输入企业名称" /> <input type="text" v-model="pinias.formData.name" placeholder="请输入企业名称" />
</view> </view> -->
<view class="name" v-if="step === 2"> <!-- <view class="name" v-if="step === 2">
<view class="t1">信用代码</view> <view class="t1">信用代码</view>
<input type="text" v-model="pinias.formData.creditCode" placeholder="请输入信用代码" /> <input type="text" v-model="pinias.formData.creditCode" placeholder="请输入信用代码" />
</view> </view> -->
<view class="image-upload" v-if="step === 3"> <view class="image-upload" v-if="step === 3">
<view class="t1">营业执照照片</view> <view class="t1">营业执照照片</view>
<view class="t2">注:执照信息清晰可见,照片内容真实有效,不做任何修改,大小不超过10M</view> <view class="t2">注:执照信息清晰可见,照片内容真实有效,不做任何修改,大小不超过10M</view>
...@@ -66,9 +96,16 @@ ...@@ -66,9 +96,16 @@
import { ref } from "vue"; import { ref } from "vue";
import evn from "@/utils/config"; import evn from "@/utils/config";
import { uploadFiles } from "@/utils/fileUpload"; import { uploadFiles } from "@/utils/fileUpload";
import { ocrLicense, getLoginUserApi } from "@/api/user.js";
import { useDefineStore } from "./store"; import { useDefineStore } from "./store";
const pinias = useDefineStore(); const pinias = useDefineStore();
const params = reactive({
avatarPath: "",
realName: "",
phone: "",
position: ""
});
onLoad(() => { onLoad(() => {
console.log(uni); console.log(uni);
}); });
...@@ -78,7 +115,28 @@ const showPopout = ref(false); ...@@ -78,7 +115,28 @@ const showPopout = ref(false);
onShow(() => { onShow(() => {
step.value = 1; step.value = 1;
// getLoginUserApiFn();
}); });
function ocrLicenseFn(uri) {
return ocrLicense({ uri }).then(res => {
if (res.code == 200) {
pinias.setFormDataKey("name", res.data.name);
pinias.setFormDataKey("creditCode", res.data.regNum);
}
});
}
// function getLoginUserApiFn() {
// getLoginUserApi().then(user => {
// if (user.code == 200) {
// const { avatarPath, realName, phone, position } = user.data;
// params.avatarPath = avatarPath;
// params.realName = realName;
// params.phone = phone;
// params.position = position;
// }
// console.log("user", user);
// });
// }
const nextStep = () => { const nextStep = () => {
let flag = false; let flag = false;
switch (step.value) { switch (step.value) {
...@@ -113,6 +171,7 @@ const chooseImage = sourceType => { ...@@ -113,6 +171,7 @@ const chooseImage = sourceType => {
success: async ({ tempFiles }) => { success: async ({ tempFiles }) => {
const res = await uploadFiles(tempFiles); const res = await uploadFiles(tempFiles);
pinias.setFormDataKey("licensePath", res[0].key); pinias.setFormDataKey("licensePath", res[0].key);
ocrLicenseFn(res[0].key);
showPopout.value = false; showPopout.value = false;
} }
}); });
...@@ -132,6 +191,36 @@ const chooseImage = sourceType => { ...@@ -132,6 +191,36 @@ const chooseImage = sourceType => {
// padding-top: 54rpx; // padding-top: 54rpx;
background-color: #1f86ff; background-color: #1f86ff;
.content {
flex: 1;
padding: 0 16px;
.item {
display: flex;
align-items: center;
// justify-content: space-between;
padding: 16px 0;
border-bottom: 1px solid #f3f4f8;
.label {
flex: 0 0 100px;
font-size: 12px;
font-weight: 500;
line-height: 18px;
color: #77818f;
}
input {
font-size: 14px;
font-weight: normal;
line-height: 18px;
color: #1b2026;
}
image {
width: 28px;
height: 28px;
border-radius: 50%;
}
}
}
} }
.welcome { .welcome {
padding: 54rpx 80rpx 0 66rpx; padding: 54rpx 80rpx 0 66rpx;
......
...@@ -91,7 +91,7 @@ const navList = reactive([ ...@@ -91,7 +91,7 @@ const navList = reactive([
{ {
icon: new URL("@/static/image/user/question.png", import.meta.url).href, icon: new URL("@/static/image/user/question.png", import.meta.url).href,
url: "/pages/user/problemRecord/index", url: "/pages/user/problemRecord/index",
text: "问题反馈" text: "问题建议"
}, },
{ {
icon: new URL("@/static/image/user/loginout.png", import.meta.url).href, icon: new URL("@/static/image/user/loginout.png", import.meta.url).href,
...@@ -100,20 +100,20 @@ const navList = reactive([ ...@@ -100,20 +100,20 @@ const navList = reactive([
removeToken(); removeToken();
}, },
text: "退出登录" text: "退出登录"
},
{
icon: new URL("@/static/image/user/loginout.png", import.meta.url).href,
url: "/pages/login/test",
fn: () => {
removeToken();
},
text: "退出登录(去测试登录)"
},
{
icon: new URL("@/static/image/user/loginout.png", import.meta.url).href,
url: "/pages/user/businessLicense/fillIn",
text: "企业认证"
} }
// {
// icon: new URL("@/static/image/user/loginout.png", import.meta.url).href,
// url: "/pages/login/test",
// fn: () => {
// removeToken();
// },
// text: "退出登录(去测试登录)"
// },
// {
// icon: new URL("@/static/image/user/loginout.png", import.meta.url).href,
// url: "/pages/user/businessLicense/fillIn",
// text: "企业认证"
// }
]); ]);
/* 个人信息 */ /* 个人信息 */
const userInfo = ref({}); const userInfo = ref({});
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
>{{ item.replyMessage ? "已回复" : "待回复" }}</view >{{ item.replyMessage ? "已回复" : "待回复" }}</view
> >
</view> </view>
<wd-status-tip v-if="list.length == 0" image="content" tip="暂无内容" />
<wd-tabbar <wd-tabbar
@click="navigateTo" @click="navigateTo"
custom-style="display: flex;justify-content: center !important;" custom-style="display: flex;justify-content: center !important;"
......
import axios from "axios"; import axios from "axios";
import { getToken,removeToken } from "@/utils/token"; import { getToken,removeToken } from "@/utils/token";
const baseURL = "https://lygsh-api.wjzpgz.com/"; // const baseURL = "https://lygsh-api.wjzpgz.com/";
// const baseURL = "http://192.168.11.181:8080/"; const baseURL = "http://192.168.11.61:8080/";
// 创建一个 axios 实例 // 创建一个 axios 实例
const instance = axios.create({ const instance = axios.create({
baseURL, // 设置基础 URL baseURL, // 设置基础 URL
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment