样式优化

This commit is contained in:
橙子
2022-10-14 02:18:25 +08:00
parent 8456320884
commit 88073aaa20
37 changed files with 132 additions and 1766 deletions

View File

@@ -1,97 +0,0 @@
测试测试测试账号密码123456
shLEBG部门管理员拥有全部权限最高权限
xz 星能研究所管理员,能查看星能研究所及以下的所有的权限
cdb星能研究所访客测试除了通用软件框架其他星能研究所下的权限能看可自定义配置
ccb通用软件框架部门个人管理员只能看到自我全权限范围最小
ynb: plc部门管理员只能看plc部门的权限
杨建c语言开发过学生管理系统专业能力比较低不太了解行业未来规划较模糊。和语言绑定只要c和c++就可以,抗压能力大。
张傲学习期间成绩较好大概年纪百分之10在工业界做过相关光伏损伤图形检测。表达思路比较清晰。抗压能力较强参与多项学硕的项目担任学院研究生主席。
第一年根据公司具体的项目,着手锻炼专业技能,第二年根据公司发展,融入公司。
黄炳洁:
在校经历:
在校发表三篇论文在工业界江苏宁阳公司实习进行智能电表通信模块的开发与测试在同事指导下工作。本科成绩前百分之40硕士成绩前百分之50
职业规划:
第一年对公司业务不太熟悉,需要一定的嵌入式知识的学习。认为第一年会有导师来带项目。
工作一年之后,有了经验,第二年绩效考核,进入公司之后刻苦学习。
遇到学习上的困难,可以请教别人有经验的人,相信自己可以克服困难。
问题解答:
表达沟通比较吞吐,总结能力不太强。有一定的自学能力
杨哲:
机械专业面试图像算法
1、在校经历
机械专业图像算法方向。本科成绩排名百分之前30研究生成绩前百分之10。一直在做导师的项目在工业界没有经验。
2、职业规划
第一年熟悉公司算法库的流程,怎么调用,然后从项目的一部分开始熟悉项目的流程,争取独立完成项目的一部分内容
第二年先继续学习算法的内容,争取完成一个项目的经历。
遇到困难,有准备,现在目前只能从加班。
自学能力比较强,完成度比较高。
前期充当学习的角色,后期担当负责人
季建杰:
1、在校经历
做过无人机点源处理成绩比较靠后后百分之50。公司内没有无人机相关不太了解海目星。
对于学习新领域的知识,自学去找比较困难,请教身边的人。从事无人机激光测距专业。
2、职业规划
为什么选择这个岗位:因为其他岗位更不了解,这个岗位稍微好点
对规划挺少的,不太了解未来
只要给的够多,抗压不是问题。
自学能力比较强,在校期间基本是自学。
性格比较开朗,没有很多突出的地方,比较随和
没有说明补充的。
为什么选择这个岗位
目标是什么
来海目星担当什么角色
抗压能力怎么样
自学能力怎么样
相比于其他人你的独特的优势是什么
李志刚
1、在校经历
研究生成绩综合排名前百分之5实习经历没有没有在工控行业的经验。学习过桥梁缺陷检测
2、职业规划
对于应届生做一个长远规划不太现实
前两年主要是学习
相比于理论,更喜欢实践。
碰到不会,以自学为主,最后在找人
为什么选择这个岗位:专业对口,能力比较强
来海目星担当什么角色:刚开始是学习的角度,积累经验
抗压能力怎么样:抗压能力还可以,就业压力,放松心态
自学能力怎么样:自学能力在校期间基本都是靠自己自学,主要靠自己搭建自己知识体系
优势:兴趣,自律,信用
沟通比较清楚,有些紧张

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -17,10 +17,13 @@ const count = ref(0)
.col-body
{
text-align: center;
font-size: small;
}
.col-body .van-icon
{
color: #FF689B;
margin-bottom: 0.6rem;
}
p{

View File

@@ -10,11 +10,12 @@ round
<script setup lang="ts">
import { type } from 'os';
import { ref } from 'vue'
defineProps<{ src: {type:string,default:'null',required:false},
width:{type:string,default:'3rem',required:false},
height:{type:string,default:'3rem',required:false},
const props= defineProps({
src: {type:String,default:'null',required:false},
width:{type:String,default:'3rem',required:false},
height:{type:String,default:'3rem',required:false}
})
}>()
const url = `${import.meta.env.VITE_APP_BASE_API}/file/`;
</script>
<style scoped>

View File

@@ -1,17 +1,14 @@
<template>
<van-tabbar v-model="active" active-color="#ee0a24" inactive-color="#000">
<van-tabbar-item icon="home-o" to="/">主页</van-tabbar-item>
<van-tabbar-item icon="search">发现</van-tabbar-item>
<van-tabbar v-model="active" active-color="#FF689B" inactive-color="#9C9C9C" @change="onChange" z-index="100">
<van-tabbar-item v-for="item in tabbar.slice(0,2)" :to="item.to" :icon="item.icon">{{item.title}}</van-tabbar-item>
<van-tabbar-item @click="show = true">
<template #icon="props">
<van-icon class="add" name="add-square" color="#1989fa" size="3rem" />
<van-icon class="add" name="add-square" color="#FF689B" size="3rem" />
<!-- <img :src="props.active ? icon.active : icon.inactive" /> -->
</template>
</van-tabbar-item>
<van-tabbar-item icon="friends-o">商城</van-tabbar-item>
<van-tabbar-item icon="setting-o" to="/my">我的</van-tabbar-item>
<van-tabbar-item v-for="item in tabbar.slice(3)" :to="item.to" :icon="item.icon">{{item.title}}</van-tabbar-item>
</van-tabbar>
<van-action-sheet v-model:show="show" >
@@ -33,6 +30,25 @@
import { ref } from 'vue'
const active = ref(0);
const show = ref(false);
let tabbar=ref([
{icon:"wap-home",to:"/",title:"主页"},
{icon:"location-o",to:"",title:"发现"},
{icon:"",to:"",title:""},
{icon:"friends-o",to:"",title:"商城"},
{icon:"setting-o",to:"/my",title:"我的"},
])
const onChange=(index:number)=>{
tabbar.value=[
{icon:"wap-home-o",to:"/",title:"主页"},
{icon:"location-o",to:"",title:"发现"},
{icon:"",to:"",title:""},
{icon:"friends-o",to:"",title:"商城"},
{icon:"setting-o",to:"/my",title:"我的"},
];
tabbar.value[index].icon=tabbar.value[index].icon.replace("-o","")
}
</script>
<style>
.btn1

View File

@@ -3,10 +3,8 @@
<van-row class="row" >
<van-col span="4" class="icon"><van-icon name="sign" size="1.6rem"/></van-col>
<van-col span="16">
<van-tabs v-model:active="active" class="tabs" sticky >
<van-tab title="关注" to="/follow" class="tab" ></van-tab>
<van-tab title="推荐" to="/recommend" class="tab" ></van-tab>
<van-tab title="广场" to="/square" class="tab" ></van-tab>
<van-tabs v-model:active="active" class="tabs" sticky swipeable color="#FF689B">
<van-tab v-for="item in tabs" :title="item.title" :to="item.to" class="tab" :style="{fontSize: 0 + 'px'}" ></van-tab>
</van-tabs>
</van-col>
<van-col span="4" class="icon"><van-icon name="search" size="1.6rem" /></van-col>
@@ -20,6 +18,11 @@
<script setup lang="ts">
import { ref } from "vue";
const active = ref(1);
const tabs=ref([
{title:"关注",to:"/follow"},
{title:"推荐",to:"/recommend"},
{title:"广场",to:"/square"},
])
</script>
<style scoped>
.row{
@@ -35,4 +38,8 @@ const active = ref(1);
.tabs {
width: 100%;
}
.icon .van-icon
{
color:#FF689B;
}
</style>

View File

@@ -7,7 +7,7 @@ const useUserStore = defineStore(
{
state: () => ({
token: getToken(),
user:{username:"",nick:""},
user:{username:"",nick:"",icon:""},
roles: [],
permissions: []
}),
@@ -21,6 +21,10 @@ const useUserStore = defineStore(
return new Promise((resolve, reject) => {
login(username, password, code, uuid).then(res => {
if(!res.status)
{
reject(res)
}
setToken(res.data.token);
this.token = res.data.token;
resolve(res);
@@ -36,7 +40,7 @@ const useUserStore = defineStore(
const res=response.data;
const user = res.user
// const avatar = (user.avatar == "" || user.avatar == null) ? defAva : import.meta.env.VITE_APP_BASE_API + user.avatar;
const avatar=""
if (res.roleCodes && res.roleCodes.length > 0) { // 验证返回的roles是否是一个非空数组
this.roles = res.roleCodes
this.permissions = res.permissionCodes
@@ -50,7 +54,7 @@ const useUserStore = defineStore(
// this.permissions=["*:*:*"]
this.user.username = user.userName;
this.user.nick=user.nick
this.avatar = avatar;
this.user.icon = user.icon;
resolve(res)
}).catch(error => {
reject(error)

View File

@@ -47,46 +47,20 @@ myaxios.interceptors.response.use(async function(response) {
}, async function(error) {
//未授权、失败
const resp = error.response.data
if (resp.code == undefined && resp.message == undefined) {
Notify({ type: 'danger', message: '未知错误' });
} else if (resp.code == 401) {
if (!isRelogin.show) {
// if (!isRelogin.show) {
Notify({ type: 'warning', message: '登录过期' });
//登出
useUserStore().logOut().then(() => {
location.href = '/';
})
isRelogin.show = false;
}
// const router = useRouter();
// router.push({ path:"/login" });
// const res = await vm.$dialog.error({
// text: `错误代码:${resp.code},原因:${resp.message}<br>是否重新进行登录?`,
// title: '错误',
// actions: {
// 'false': '取消',
// 'true': '跳转'
// }
// });
// if (res) {
// vm.$router.push({ path: "/login" });
// }
} else if (resp.code !== 200) {
Notify({ type: 'danger', message: `错误代码:${resp.code},原因:${resp.message}` });
// vm.$dialog.notify.error(`错误代码:${resp.code},原因:${resp.message}`, {
// position: "top-right",
// timeout: 5000,
// });
}
return Promise.reject(error);
});
export default myaxios

View File

@@ -1,6 +1,6 @@
<template>
<div class="div-top">
<span class="title">农夫山泉</span>
<span class="title">大白荟</span>
<br />
<span class="subtitle">农夫山泉有点甜</span>
</div>
@@ -16,18 +16,20 @@
class="van-field-password"
v-model="loginForm.password"
label="密码"
type="password"
placeholder="请输入密码"
/>
<van-button type="primary" @click="login">进入农夫山泉</van-button>
<van-button type="primary" @click="login">进入大白荟</van-button>
<p>其他方式登录<van-icon name="arrow" /></p>
<van-row style="margin-top: 6rem">
<van-row class="row-bottom" style="margin-top: 6rem">
<van-col span="24"><p>第三方登录</p></van-col>
<van-col span="3"></van-col>
<van-col span="6"><van-icon name="like" size="2rem" /></van-col>
<van-col span="6"><van-icon name="like" size="2rem" /></van-col>
<van-col span="6"><van-icon name="like" size="2rem" /></van-col>
<van-col span="3"></van-col>
<van-col span="2"></van-col>
<van-col span="5"><van-icon name="smile-o" size="2rem" /></van-col>
<van-col span="5"><van-icon name="smile-o" size="2rem" /></van-col>
<van-col span="5"><van-icon name="smile-o" size="2rem" /></van-col>
<van-col span="5"><van-icon name="smile-o" size="2rem" /></van-col>
<van-col span="2"></van-col>
</van-row>
</div>
</template>
@@ -59,6 +61,7 @@ const login = () => {
router.push({ path: redirect.value || "/" });
})
.catch((response:any) => {
loginForm.value.password="";
Toast({
message: response.message,
position: "bottom",
@@ -73,7 +76,7 @@ const login = () => {
</script>
<style scoped>
.div-top {
background-color: aqua;
background-color: #FF689B;
position: absolute;
top: 0;
left: 0;
@@ -81,7 +84,7 @@ const login = () => {
bottom: 60%;
}
.div-bottom {
background-color: bisque;
background-color: #FFFFFF;
position: absolute;
top: 25%;
left: 0;
@@ -98,12 +101,14 @@ const login = () => {
transform: translateX(-50%);
font-size: 1.8rem;
font-weight: bolder;
color: #FFFFFF;
}
.subtitle {
transform: translateX(-50%);
position: absolute;
top: 30%;
font-weight: lighter;
color: #FFFFFF;
}
.van-field-username {
margin-top: 2rem;
@@ -113,17 +118,21 @@ const login = () => {
}
h5 {
text-align: left;
font-size: 1.2rem;
font-size: 1.1rem;
font-weight: bolder;
}
.div-bottom .van-button {
margin-top: 1rem;
width: 100%;
border-radius: 0.4rem;
background-color: #FF689B;
border: 0;
}
.div-bottom p {
text-align: center;
color: #666666;
}
.row-bottom {
color: #FF689B;
}
</style>

View File

@@ -156,14 +156,15 @@ const getList = () => {
</script>
<style scoped>
.list {
background-color: #efefef;
background-color: #F4F4F4;
}
.row {
background-color: white;
padding-top: 1rem;
margin-bottom: 1rem;
padding-left: 1rem;
padding-right: 1rem;
margin-bottom: 0.6rem;
}
.rowBody {
text-align: left;
@@ -196,7 +197,7 @@ const getList = () => {
font-size: large;
}
.bottomRow {
color: #979797;
color: #999999;
}
.down {
text-align: right;

View File

@@ -33,14 +33,14 @@
<van-row class="btnRow">
<van-col span="12">
<van-button class="btn">
<van-icon name="bag" size="1.8rem" /> 我的购物<van-icon
<van-icon name="bag" size="1.8rem" /> <span>我的购物</span><van-icon
name="arrow"
size="1.2rem" /></van-button
></van-col>
<van-col span="12">
<van-button class="btn"
><van-icon name="send-gift" size="1.8rem" />我的签到<van-icon
><van-icon name="send-gift" size="1.8rem" /> <span>我的签到</span><van-icon
name="arrow"
size="1.2rem" /></van-button
></van-col>
@@ -177,6 +177,22 @@ const outLog = () => {
</script>
<style scoped>
.bodyCol
{
color: #9B9B9B;
}
.bodyCol span{
color: black;
font-size:larger;
font-weight: 500;
}
.btn .van-icon{
color: #FF689B;
}
.btn span{
font-size:medium;
font-weight:600;
}
.grid {
width: 100%;
margin-top: 1rem;
@@ -198,7 +214,7 @@ const outLog = () => {
}
.subtitle {
line-height: 4rem;
color: #cbcbcb;
color: #9B9B9B;
}
.bodyCol {
text-align: center;
@@ -212,6 +228,7 @@ const outLog = () => {
background-color: #ffffff;
border: none;
color: black;
}
.btnRow {
margin-top: 1.5rem;

View File

@@ -9,7 +9,7 @@
</router-link>
</van-col>
<van-col span="18"><span>发图文</span></van-col>
<van-col span="3" @click="send">发布</van-col>
<van-col span="3" @click="send" :style="{color: isSend?'#FE70A0':'#979797'}">发布</van-col>
</van-row>
</van-sticky>
@@ -22,7 +22,7 @@
label-width="0"
:show-word-limit="true"
maxlength="500"
placeholder="每一天,都是为了下一天"
placeholder="大于5字每一天,都是为了下一天"
/>
</van-cell-group>
<van-row class="body-row">
@@ -31,7 +31,7 @@
</van-col>
<van-col span="4"></van-col>
<van-col span="10"
><span>选择更多人看到</span>
><span class="right-span">选择更多人看到</span>
<van-icon name="arrow" size="1.2rem" />
</van-col>
</van-row>
@@ -46,10 +46,11 @@
</transition>
</template>
<script setup lang="ts">
import { ref, onMounted, reactive, toRefs } from "vue";
import { ref, onMounted, reactive, toRefs,watch } from "vue";
import { ArticleEntity } from "@/type/interface/ArticleEntity.ts";
import fileApi from "@/api/fileApi.ts";
import articleApi from "@/api/articleApi.ts";
import { Toast } from "vant";
import { useRouter } from 'vue-router'
const router = useRouter();
const form = reactive<ArticleEntity>({
@@ -59,6 +60,7 @@ const form = reactive<ArticleEntity>({
isDeleted: false,
});
const isSend=ref(false)
const { images, content } = toRefs(form);
const fileList = ref([]);
const visible = ref<boolean>(false);
@@ -91,17 +93,39 @@ file.forEach((f:any) => {
};
const send = () => {
if(form.content.length<5)
{
Toast({
message: "请输入至少5个字符",
position: "bottom",
});
}
else
{
articleApi.add(form).then((response:any)=>{
router.push({ path: '/recommend'});
})
}
};
watch(()=>form.content,(newValue,oldValue)=>{
if(newValue.length<5)
{
isSend.value=false
}
else
{
isSend.value=true
}
console.log(isSend.value?'#FFF':'#111')
})
</script>
<style scoped>
.head-row {
background-color: #f8f8f8;
padding: 2rem 1rem 1.5rem 1rem;
padding: 1.2rem 1rem 0.8rem 1rem;
}
.head-row span {
@@ -135,4 +159,8 @@ const send = () => {
.img-col {
text-align: left;
}
.right-span
{
color: #979797;
}
</style>