页面修改
@ -480,7 +480,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.cards_head {
|
.cards_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
|
@ -1,10 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="card" @click="goDetil(goodsInfo.id)">
|
<view class="card">
|
||||||
<view class="tit">
|
<view class="tit">
|
||||||
<view v-if="goodsInfo.status==0">取货点: {{goodsInfo.shop_name}}</view>
|
<view v-if="goodsInfo.status==0">取货点: {{goodsInfo.shop_name}}</view>
|
||||||
<view v-else>收货人: {{ fuzzyName(goodsInfo.receiver_name) }}</view>
|
<view v-else>收货人: {{ fuzzyName(goodsInfo.receiver_name) }}</view>
|
||||||
|
<view style="float: right;">
|
||||||
|
<u-icon name="arrow-right" color="black" size="20"></u-icon>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="content">
|
<view class="content" @click="callFn(goodsInfo.shop_phone)">
|
||||||
<view v-if="goodsInfo.status==0">
|
<view v-if="goodsInfo.status==0">
|
||||||
<view class="address">店主姓名: {{goodsInfo.shop_user}}</view>
|
<view class="address">店主姓名: {{goodsInfo.shop_user}}</view>
|
||||||
<view @click.stop="callFn(goodsInfo.shop_phone)" class="address">
|
<view @click.stop="callFn(goodsInfo.shop_phone)" class="address">
|
||||||
@ -24,12 +27,12 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="qh_btn" v-if='goodsInfo.status==0'>
|
<view class="qh_btn" v-if='goodsInfo.status==0' @click.stop="goDetil(goodsInfo.id)">
|
||||||
<u-button type="primary" class="custom-style" style="background-color: #0122C7;border: 0;">
|
<u-button type="primary" class="custom-style" style="background-color: #0122C7;border: 0;">
|
||||||
<u-icon name="scan" color="white" size="25" style="margin-right: 10rpx;"></u-icon>
|
<u-icon name="scan" color="white" size="25" style="margin-right: 10rpx;"></u-icon>
|
||||||
待取货/点击查看</u-button>
|
待取货/点击查看</u-button>
|
||||||
</view>
|
</view>
|
||||||
<view class="" v-if='goodsInfo.status==1'>
|
<view class="" v-if='goodsInfo.status==1' @click.stop="goDetil(goodsInfo.id)">
|
||||||
<u-button type="primary" style="background-color: #FF7C32; border: 0;"><u-icon name="car-fill" color="white"
|
<u-button type="primary" style="background-color: #FF7C32; border: 0;"><u-icon name="car-fill" color="white"
|
||||||
size="25" style="margin-right: 10rpx;"></u-icon> 待配送/点击查看</u-button>
|
size="25" style="margin-right: 10rpx;"></u-icon> 待配送/点击查看</u-button>
|
||||||
</view>
|
</view>
|
||||||
@ -88,6 +91,8 @@
|
|||||||
font-size: 30rpx;
|
font-size: 30rpx;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
padding: 20rpx 15rpx;
|
padding: 20rpx 15rpx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between
|
||||||
}
|
}
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
|
@ -383,7 +383,7 @@
|
|||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
margin: 2vh 2vw;
|
margin: 2vh 2vw;
|
||||||
|
|
||||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
|
/* box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); */
|
||||||
/* padding: 2vh 2vw; */
|
/* padding: 2vh 2vw; */
|
||||||
|
|
||||||
.tit {
|
.tit {
|
||||||
|
@ -22,14 +22,15 @@
|
|||||||
</block>
|
</block>
|
||||||
<block v-else>进行中</block>
|
<block v-else>进行中</block>
|
||||||
</block>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view style="display: flex;justify-content: space-between;align-items: center;">
|
<view style="display: flex;justify-content: space-between;align-items: center;">
|
||||||
<view>
|
<view>
|
||||||
<text>完成时间 :</text>
|
<text>完成时间 :</text>
|
||||||
<text>{{datas.end_time}}</text>
|
<text>{{datas.end_time}}</text>
|
||||||
</view>
|
</view>
|
||||||
<text v-if="datas.status==2||datas.status==1" style="background-color: #ff7c32;" class="status">进行中</text>
|
<text v-if="datas.status==2||datas.status==1" style="background-color: #ff7c32;"
|
||||||
|
class="status">进行中</text>
|
||||||
<text v-if="datas.status==3" style="background-color: #488F00;" class="status">已完成</text>
|
<text v-if="datas.status==3" style="background-color: #488F00;" class="status">已完成</text>
|
||||||
<text v-if="datas.status==5" style="background-color: #ccc;" class="status">已关闭</text>
|
<text v-if="datas.status==5" style="background-color: #ccc;" class="status">已关闭</text>
|
||||||
</view>
|
</view>
|
||||||
@ -221,7 +222,7 @@
|
|||||||
|
|
||||||
.personnel_list {
|
.personnel_list {
|
||||||
// padding: 28rpx 0;
|
// padding: 28rpx 0;
|
||||||
padding-bottom: 28rpx;
|
padding-bottom: 28rpx;
|
||||||
|
|
||||||
|
|
||||||
.cards {
|
.cards {
|
||||||
@ -232,7 +233,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.cards_head {
|
.cards_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
|
@ -105,6 +105,7 @@
|
|||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
is_captain: 0,
|
||||||
mapClass: 'custom-map',
|
mapClass: 'custom-map',
|
||||||
showLoading: true,
|
showLoading: true,
|
||||||
showPop: false,
|
showPop: false,
|
||||||
@ -290,6 +291,7 @@
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
|
console.log(JSON.parse(uni.getStorageSync("USER_INFO")).is_captain)
|
||||||
getDetil({
|
getDetil({
|
||||||
logistics_id: options.id
|
logistics_id: options.id
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
|
@ -346,7 +346,7 @@
|
|||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
margin: 2vh 2vw;
|
margin: 2vh 2vw;
|
||||||
|
|
||||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
|
/* box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); */
|
||||||
/* padding: 2vh 2vw; */
|
/* padding: 2vh 2vw; */
|
||||||
|
|
||||||
.tit {
|
.tit {
|
||||||
|
@ -5,12 +5,12 @@
|
|||||||
<view class="home_header" :class="!ApproveList.length > 0 ? 'home_header_no_data' : ''">
|
<view class="home_header" :class="!ApproveList.length > 0 ? 'home_header_no_data' : ''">
|
||||||
<!-- #ifdef APP-PLUS||H5 -->
|
<!-- #ifdef APP-PLUS||H5 -->
|
||||||
<view style="height: var(--status-bar-height)"></view>
|
<view style="height: var(--status-bar-height)"></view>
|
||||||
<view style="height: 100rpx"></view>
|
<view style="height: 30rpx"></view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
<view class="my_info">
|
<view class="my_info">
|
||||||
<view class="head_img">
|
<view class="head_img">
|
||||||
<view class="img_box">
|
<view class="img_box">
|
||||||
<u--image :showLoading="true" width="131.43rpx" height="131.43rpx"
|
<u--image :showLoading="true" width="131.43rpx" height="131.43rpx" class="img_box_img"
|
||||||
:src="myOaInfo.avatar || '../../static/img/public/avatar.png'" shape="circle"></u--image>
|
:src="myOaInfo.avatar || '../../static/img/public/avatar.png'" shape="circle"></u--image>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
@ -67,7 +67,7 @@
|
|||||||
:key="index" @click="clickNotice(item.id)">
|
:key="index" @click="clickNotice(item.id)">
|
||||||
<view class="text">
|
<view class="text">
|
||||||
<text class="text_time">{{
|
<text class="text_time">{{
|
||||||
item.create_time.substring(0, 10)
|
item.create_time.substring(0, 10).replace(/-/g, ".")
|
||||||
}}</text>
|
}}</text>
|
||||||
{{ item.title }}
|
{{ item.title }}
|
||||||
</view>
|
</view>
|
||||||
@ -95,7 +95,8 @@
|
|||||||
<view class="fast_track">
|
<view class="fast_track">
|
||||||
<block v-for="(item, index) in oaHomeData" :key="index">
|
<block v-for="(item, index) in oaHomeData" :key="index">
|
||||||
<view class="track_item" @click="navTwo(item.url, index)">
|
<view class="track_item" @click="navTwo(item.url, index)">
|
||||||
<u--image :showLoading="true" :src="item.icon" width="77.19rpx" height="77.19rpx"></u--image>
|
<u--image :showLoading="true" :src="iconList[index]" mode="widthFix" width="77.19rpx"
|
||||||
|
height="77.19rpx"></u--image>
|
||||||
<view class="title">{{ item.text }}</view>
|
<view class="title">{{ item.text }}</view>
|
||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
@ -194,6 +195,15 @@
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
iconList: [
|
||||||
|
"../../static/img/home/GSXX.png",
|
||||||
|
"../../static/img/home/RYGL.png",
|
||||||
|
"../../static/img/home/HTGL.png",
|
||||||
|
"../../static/img/home/RWGL.png",
|
||||||
|
"../../static/img/home/DAGL.png",
|
||||||
|
"../../static/img/home/GRCW.png",
|
||||||
|
|
||||||
|
],
|
||||||
notArr: [],
|
notArr: [],
|
||||||
orderList: [],
|
orderList: [],
|
||||||
oaHomeData: [],
|
oaHomeData: [],
|
||||||
@ -421,7 +431,7 @@
|
|||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.oa_home {
|
.oa_home {
|
||||||
padding-bottom: 120rpx;
|
// padding-bottom: rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.header_bg {
|
.header_bg {
|
||||||
@ -457,12 +467,22 @@
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
|
||||||
.img_box {
|
.img_box {
|
||||||
width: 131.43rpx;
|
|
||||||
height: 131.43rpx;
|
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
|
||||||
left: -10rpx;
|
left: -10rpx;
|
||||||
top: -15rpx;
|
top: -15rpx;
|
||||||
|
width: 140rpx;
|
||||||
|
height: 140rpx;
|
||||||
|
background-color: white;
|
||||||
|
border-radius: 140rpx;
|
||||||
|
|
||||||
|
.img_box_img {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// font-we
|
// font-we
|
||||||
|
@ -1,337 +1,304 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="login">
|
<view class="login">
|
||||||
<image
|
<!-- <image class="bg-iamge" src="../../static/img/login/login_back_img.png"></image> -->
|
||||||
class="bg-iamge"
|
<!-- #ifdef APP-PLUS||H5 -->
|
||||||
src="../../static/img/login/login_back_img.png"
|
<view style="height: var(--status-bar-height)"></view>
|
||||||
></image>
|
<!-- #endif -->
|
||||||
<!-- #ifdef APP-PLUS||H5 -->
|
<view class="body">
|
||||||
<view style="height: var(--status-bar-height)"></view>
|
<view class="title">欢迎进入里海供销平台!</view>
|
||||||
<!-- #endif -->
|
<view class="login-card">
|
||||||
<view class="body">
|
<view class="top">
|
||||||
<view class="title">欢迎进入里海供销平台!</view>
|
<view class="text item">
|
||||||
<view class="login-card">
|
<u-tabs :list="tabList" @click="changeTabs" lineColor="#0122c7"
|
||||||
<view class="top">
|
itemStyle="padding-left: 15px; padding-right: 15px; height: 34px;font-size: 32rpx;"></u-tabs>
|
||||||
<view class="text item">
|
</view>
|
||||||
<u-tabs
|
<input v-if="current == 0" @click="getId" class="mobile item" v-model="formData.account"
|
||||||
:list="tabList"
|
placeholder="输入账号" />
|
||||||
@click="changeTabs"
|
<input v-if="current == 0" @click="getId" class="mobile item" v-model="formData.password"
|
||||||
lineColor="#0122c7"
|
maxlength="26" placeholder="输入密码" password type="safe-password" />
|
||||||
itemStyle="padding-left: 15px; padding-right: 15px; height: 34px;font-size: 32rpx;"
|
<input v-if="current == 1" class="mobile item" v-model="formData.account" placeholder="输入手机号" />
|
||||||
></u-tabs>
|
<view v-if="current == 1" class="code item">
|
||||||
</view>
|
<input placeholder="输入验证码" v-model="formData.code" maxlength="6" />
|
||||||
<input
|
<u-code :seconds="seconds" @end="end" @start="start" ref="uCode" @change="codeChange"></u-code>
|
||||||
v-if="current == 0"
|
<view class="get-code" @click="getCode">{{ tips }}</view>
|
||||||
@click="getId"
|
</view>
|
||||||
class="mobile item"
|
<view class="btn">
|
||||||
v-model="formData.account"
|
<!-- <view>新用户注册</view> -->
|
||||||
placeholder="输入账号"
|
<!-- <view @click="forgetPWD">忘记密码?</view> -->
|
||||||
/>
|
</view>
|
||||||
<input
|
</view>
|
||||||
v-if="current == 0"
|
<button class="submit_btn" @click="login">登录</button>
|
||||||
@click="getId"
|
</view>
|
||||||
class="mobile item"
|
</view>
|
||||||
v-model="formData.password"
|
</view>
|
||||||
maxlength="26"
|
|
||||||
placeholder="输入密码"
|
|
||||||
password
|
|
||||||
type="safe-password"
|
|
||||||
/>
|
|
||||||
<input
|
|
||||||
v-if="current == 1"
|
|
||||||
class="mobile item"
|
|
||||||
v-model="formData.account"
|
|
||||||
placeholder="输入手机号"
|
|
||||||
/>
|
|
||||||
<view v-if="current == 1" class="code item">
|
|
||||||
<input
|
|
||||||
placeholder="输入验证码"
|
|
||||||
v-model="formData.code"
|
|
||||||
maxlength="6"
|
|
||||||
/>
|
|
||||||
<u-code
|
|
||||||
:seconds="seconds"
|
|
||||||
@end="end"
|
|
||||||
@start="start"
|
|
||||||
ref="uCode"
|
|
||||||
@change="codeChange"
|
|
||||||
></u-code>
|
|
||||||
<view class="get-code" @click="getCode">{{ tips }}</view>
|
|
||||||
</view>
|
|
||||||
<view class="btn">
|
|
||||||
<!-- <view>新用户注册</view> -->
|
|
||||||
<!-- <view @click="forgetPWD">忘记密码?</view> -->
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<button class="submit_btn" @click="login">登录</button>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import {
|
||||||
loginAccount,
|
loginAccount,
|
||||||
userInfo,
|
userInfo,
|
||||||
test
|
test
|
||||||
} from "@/api/oaUser.js"
|
} from "@/api/oaUser.js"
|
||||||
import {
|
import {
|
||||||
Toast
|
Toast
|
||||||
} from "../../libs/uniApi";
|
} from "../../libs/uniApi";
|
||||||
// #ifdef APP-PLUS
|
// #ifdef APP-PLUS
|
||||||
var jpushModule = uni.requireNativePlugin("JG-JPush");
|
var jpushModule = uni.requireNativePlugin("JG-JPush");
|
||||||
|
|
||||||
// #endif
|
// #endif
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
|
||||||
tabList: [{
|
tabList: [{
|
||||||
name: '账号登录'
|
name: '账号登录'
|
||||||
},
|
},
|
||||||
// {name:'手机登录'},
|
// {name:'手机登录'},
|
||||||
],
|
],
|
||||||
current: 0,
|
current: 0,
|
||||||
formData: {
|
formData: {
|
||||||
account: '',
|
account: '',
|
||||||
password: '',
|
password: '',
|
||||||
code: '',
|
code: '',
|
||||||
terminal: 6, //6是APP端
|
terminal: 6, //6是APP端
|
||||||
scene: 1,
|
scene: 1,
|
||||||
register_id: ""
|
register_id: ""
|
||||||
},
|
},
|
||||||
tips: '获取验证码',
|
tips: '获取验证码',
|
||||||
// refCode: null,
|
// refCode: null,
|
||||||
seconds: 60,
|
seconds: 60,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
changeTabs (e) {
|
changeTabs(e) {
|
||||||
this.current = e.index;
|
this.current = e.index;
|
||||||
this.formData.scene = e.index + 1;
|
this.formData.scene = e.index + 1;
|
||||||
},
|
},
|
||||||
// 获取设备id
|
// 获取设备id
|
||||||
getId () {
|
getId() {
|
||||||
// #ifdef APP-PLUS
|
// #ifdef APP-PLUS
|
||||||
if (this.formData.register_id) return
|
if (this.formData.register_id) return
|
||||||
jpushModule.initJPushService()
|
jpushModule.initJPushService()
|
||||||
jpushModule.getRegistrationID(result => {
|
jpushModule.getRegistrationID(result => {
|
||||||
// 绑定极光设备id
|
// 绑定极光设备id
|
||||||
this.formData.register_id = result.registerID || 0
|
this.formData.register_id = result.registerID || 0
|
||||||
|
|
||||||
console.log("设备----", this.formData)
|
console.log("设备----", this.formData)
|
||||||
})
|
})
|
||||||
// #endif
|
// #endif
|
||||||
},
|
},
|
||||||
async login () {
|
async login() {
|
||||||
if (!this.formData.account) return Toast('账号不能为空');
|
if (!this.formData.account) return Toast('账号不能为空');
|
||||||
if (this.formData.scene == 1 && !this.formData.password) return Toast('密码不能为空');
|
if (this.formData.scene == 1 && !this.formData.password) return Toast('密码不能为空');
|
||||||
if (this.formData.scene == 2 && !this.formData.code) return Toast('验证码不能为空');
|
if (this.formData.scene == 2 && !this.formData.code) return Toast('验证码不能为空');
|
||||||
let that = this;
|
let that = this;
|
||||||
// let res = await test();
|
// let res = await test();
|
||||||
// console.log(res);
|
// console.log(res);
|
||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
title: '正在登录中'
|
title: '正在登录中'
|
||||||
})
|
})
|
||||||
let res = await loginAccount(that.formData);
|
let res = await loginAccount(that.formData);
|
||||||
console.log(that.formData)
|
console.log(that.formData)
|
||||||
this.$store.commit('SET_USERINFO', {
|
this.$store.commit('SET_USERINFO', {
|
||||||
user: data,
|
user: data,
|
||||||
token: res.data.token
|
token: res.data.token
|
||||||
})
|
})
|
||||||
let {
|
let {
|
||||||
data
|
data
|
||||||
} = await userInfo();
|
} = await userInfo();
|
||||||
this.$store.commit('setUserInfo', data);
|
this.$store.commit('setUserInfo', data);
|
||||||
uni.hideLoading()
|
uni.hideLoading()
|
||||||
if (data.is_new_user) {
|
if (data.is_new_user) {
|
||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
mask: true,
|
mask: true,
|
||||||
title: '加载中'
|
title: '加载中'
|
||||||
})
|
})
|
||||||
uni.switchTab({
|
uni.switchTab({
|
||||||
url: '/pages/oaHome/oaHome',
|
url: '/pages/oaHome/oaHome',
|
||||||
success: () => {
|
success: () => {
|
||||||
uni.$emit('initOaTask'); // 更新任务
|
uni.$emit('initOaTask'); // 更新任务
|
||||||
uni.hideLoading()
|
uni.hideLoading()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else uni.navigateTo({
|
} else uni.navigateTo({
|
||||||
url: '/pages/updatePasswprd/updatePasswprd'
|
url: '/pages/updatePasswprd/updatePasswprd'
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
initTerminal () {
|
initTerminal() {
|
||||||
// #ifndef APP-PLUS
|
// #ifndef APP-PLUS
|
||||||
this.formData.terminal = 6;
|
this.formData.terminal = 6;
|
||||||
// #endif
|
// #endif
|
||||||
uni.getSystemInfo({
|
uni.getSystemInfo({
|
||||||
success: (res) => {
|
success: (res) => {
|
||||||
const platform = res.platform.toLowerCase();
|
const platform = res.platform.toLowerCase();
|
||||||
if (platform === 'ios') {
|
if (platform === 'ios') {
|
||||||
this.formData.terminal = 5;
|
this.formData.terminal = 5;
|
||||||
} else if (platform === 'windows') {
|
} else if (platform === 'windows') {
|
||||||
this.formData.terminal = 4;
|
this.formData.terminal = 4;
|
||||||
} else if (platform === 'mac') {
|
} else if (platform === 'mac') {
|
||||||
this.formData.terminal = 4;
|
this.formData.terminal = 4;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
// #ifdef H5
|
// #ifdef H5
|
||||||
this.formData.terminal = 3;
|
this.formData.terminal = 3;
|
||||||
// #endif
|
// #endif
|
||||||
// #ifdef MP-WEIXIN
|
// #ifdef MP-WEIXIN
|
||||||
this.formData.terminal = 1;
|
this.formData.terminal = 1;
|
||||||
// #endif
|
// #endif
|
||||||
},
|
},
|
||||||
codeChange (text) {
|
codeChange(text) {
|
||||||
this.tips = text;
|
this.tips = text;
|
||||||
},
|
},
|
||||||
getCode () {
|
getCode() {
|
||||||
if (this.$refs.uCode.canGetCode) {
|
if (this.$refs.uCode.canGetCode) {
|
||||||
// 模拟向后端请求验证码
|
// 模拟向后端请求验证码
|
||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
title: '正在获取验证码'
|
title: '正在获取验证码'
|
||||||
})
|
})
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
uni.hideLoading();
|
uni.hideLoading();
|
||||||
// 这里此提示会被this.start()方法中的提示覆盖
|
// 这里此提示会被this.start()方法中的提示覆盖
|
||||||
uni.$u.toast('验证码已发送');
|
uni.$u.toast('验证码已发送');
|
||||||
// 通知验证码组件内部开始倒计时
|
// 通知验证码组件内部开始倒计时
|
||||||
this.$refs.uCode.start();
|
this.$refs.uCode.start();
|
||||||
}, 2000);
|
}, 2000);
|
||||||
} else {
|
} else {
|
||||||
uni.$u.toast('倒计时结束后再发送');
|
uni.$u.toast('倒计时结束后再发送');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
end () {
|
end() {
|
||||||
// uni.$u.toast('倒计时结束');
|
// uni.$u.toast('倒计时结束');
|
||||||
},
|
},
|
||||||
start () {
|
start() {
|
||||||
// uni.$u.toast('倒计时开始');
|
// uni.$u.toast('倒计时开始');
|
||||||
},
|
},
|
||||||
//忘记密码
|
//忘记密码
|
||||||
forgetPWD () {
|
forgetPWD() {
|
||||||
Toast('暂未开放')
|
Toast('暂未开放')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted() {
|
||||||
|
|
||||||
this.initTerminal();
|
this.initTerminal();
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.login {
|
.login {
|
||||||
width: 100vw;
|
width: 100vw;
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
position: relative;
|
position: relative;
|
||||||
/* #ifdef H5 */
|
background-color: $theme-oa-color;
|
||||||
background-image: url("../../static/img/login/login_back_img.png");
|
/* #ifdef H5 */
|
||||||
|
// background-image: url("../../static/img/login/login_back_img.png");
|
||||||
|
background-color: $theme-oa-color;
|
||||||
|
|
||||||
/* #endif */
|
/* #endif */
|
||||||
.bg-iamge {
|
// .bg-iamge {
|
||||||
width: 100vw;
|
// width: 100vw;
|
||||||
height: 100vh;
|
// height: 100vh;
|
||||||
position: absolute;
|
// position: absolute;
|
||||||
z-index: -99;
|
// z-index: -99;
|
||||||
}
|
// }
|
||||||
|
|
||||||
.body {
|
.body {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
width: 694rpx;
|
width: 694rpx;
|
||||||
height: 74rpx;
|
height: 74rpx;
|
||||||
margin-top: 200rpx;
|
margin-top: 200rpx;
|
||||||
margin-bottom: 51rpx;
|
margin-bottom: 51rpx;
|
||||||
font-size: 53rpx;
|
font-size: 53rpx;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
line-height: 68rpx;
|
line-height: 68rpx;
|
||||||
-webkit-background-clip: text;
|
-webkit-background-clip: text;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login-card {
|
.login-card {
|
||||||
width: 694rpx;
|
width: 694rpx;
|
||||||
height: 643rpx;
|
height: 643rpx;
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
border-radius: 21rpx 21rpx 21rpx 21rpx;
|
border-radius: 21rpx 21rpx 21rpx 21rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding: 38.5rpx 0;
|
padding: 38.5rpx 0;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
|
|
||||||
.top {
|
.top {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-evenly;
|
justify-content: space-evenly;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
.item {
|
.item {
|
||||||
margin-bottom: 35rpx;
|
margin-bottom: 35rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.text {
|
.text {
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
color: rgba(0, 0, 0, 0.8);
|
color: rgba(0, 0, 0, 0.8);
|
||||||
line-height: 35rpx;
|
line-height: 35rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mobile,
|
.mobile,
|
||||||
.code {
|
.code {
|
||||||
width: 613rpx;
|
width: 613rpx;
|
||||||
height: 112rpx;
|
height: 112rpx;
|
||||||
background: #f5f5f5;
|
background: #f5f5f5;
|
||||||
border-radius: 56rpx 56rpx 56rpx 56rpx;
|
border-radius: 56rpx 56rpx 56rpx 56rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
padding: 0 45.56rpx;
|
padding: 0 45.56rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: #333;
|
color: #333;
|
||||||
line-height: 35rpx;
|
line-height: 35rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.code {
|
.code {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
input {
|
input {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.get-code {
|
.get-code {
|
||||||
color: $theme-oa-color;
|
color: $theme-oa-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.submit_btn {
|
.submit_btn {
|
||||||
width: 613rpx;
|
width: 613rpx;
|
||||||
height: 112rpx;
|
height: 112rpx;
|
||||||
background: $theme-oa-color;
|
background: $theme-oa-color;
|
||||||
border-radius: 56rpx 56rpx 56rpx 56rpx;
|
border-radius: 56rpx 56rpx 56rpx 56rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 112rpx;
|
line-height: 112rpx;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
font-size: 35rpx;
|
font-size: 35rpx;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
@ -178,9 +178,11 @@
|
|||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
width: 100vw;
|
width: 100vw;
|
||||||
margin-bottom: 30rpx;
|
margin-bottom: 30rpx;
|
||||||
background-image: url('../../static/img/home/my_bg.png');
|
// background-image: url('../../static/img/home/my_bg.png');
|
||||||
background-size: 100% 100%;
|
background-color: $theme-oa-color;
|
||||||
background-repeat: no-repeat;
|
border-radius: 0 0 30rpx 30rpx;
|
||||||
|
// background-size 100% 100%;
|
||||||
|
// background-repeat: no-repeat;
|
||||||
|
|
||||||
// .head_img {
|
// .head_img {
|
||||||
// position: absolute;
|
// position: absolute;
|
||||||
@ -326,7 +328,7 @@
|
|||||||
margin-top: 84.21rpx;
|
margin-top: 84.21rpx;
|
||||||
width: 614.04rpx;
|
width: 614.04rpx;
|
||||||
height: 84.21rpx;
|
height: 84.21rpx;
|
||||||
background: #3274F9;
|
background: $theme-oa-color;
|
||||||
box-shadow: 0px 9px 26px 1px #E9EFF5;
|
box-shadow: 0px 9px 26px 1px #E9EFF5;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
BIN
static/img/company/DAGL.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
static/img/company/合同 (2)@2x.png
Normal file
After Width: | Height: | Size: 780 B |
BIN
static/img/contract/FQHT.png
Normal file
After Width: | Height: | Size: 398 B |
BIN
static/img/home/DAGL.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
static/img/home/DAGL2.png
Normal file
After Width: | Height: | Size: 5.8 KiB |
BIN
static/img/home/GRCW (2).png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
static/img/home/GRCW.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
static/img/home/GSXX (2).png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
static/img/home/GSXX.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
static/img/home/HTGL (2).png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
static/img/home/HTGL.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
static/img/home/RWGL (2).png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
static/img/home/RWGL.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
static/img/home/RYGL (2).png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
static/img/home/RYGL.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
@ -32,10 +32,10 @@
|
|||||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||||
</view>
|
</view>
|
||||||
-->
|
-->
|
||||||
<u-sticky bgColor="#0022C7" v-if="task_id>0&& !is_admin">
|
<u-sticky bgColor="#0022C7" v-if="task_id>0&& !is_admin">
|
||||||
<u-tabs :list="tabLists" @click="changeCurrent" lineColor='white' :scrollable="false" lineWidth='40'
|
<u-tabs :list="tabLists" @click="changeCurrent" lineColor='white' :scrollable="false" lineWidth='40'
|
||||||
inactiveStyle='color:white' activeStyle="color:white"></u-tabs>
|
inactiveStyle='color:white' activeStyle="color:white"></u-tabs>
|
||||||
</u-sticky>
|
</u-sticky>
|
||||||
<view class="personnel_list">
|
<view class="personnel_list">
|
||||||
<view class="card" v-for="(item, index) in list" :key="item.id">
|
<view class="card" v-for="(item, index) in list" :key="item.id">
|
||||||
<view class="card_head">
|
<view class="card_head">
|
||||||
@ -65,7 +65,7 @@
|
|||||||
|
|
||||||
<view class="left">
|
<view class="left">
|
||||||
<view class="cir">
|
<view class="cir">
|
||||||
<u--image class="u_avatar" :showLoading="true" :src=" '../../static/img/public/man.png'"
|
<u--image class="u_avatar" :showLoading="true" :src=" '../../static/img/company/DAGL.png'"
|
||||||
width="112.28rpx" height="112.28rpx" shape="circle"></u--image>
|
width="112.28rpx" height="112.28rpx" shape="circle"></u--image>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@ -144,12 +144,12 @@
|
|||||||
task_id: -1,
|
task_id: -1,
|
||||||
is_admin: false,
|
is_admin: false,
|
||||||
list: [],
|
list: [],
|
||||||
current: 0,
|
current: 0,
|
||||||
tabLists: [{
|
tabLists: [{
|
||||||
name: '未更新',
|
name: '未更新',
|
||||||
}, {
|
}, {
|
||||||
name: '已更新'
|
name: '已更新'
|
||||||
}],
|
}],
|
||||||
loadConfig: {
|
loadConfig: {
|
||||||
page: 1,
|
page: 1,
|
||||||
limit: 15,
|
limit: 15,
|
||||||
@ -218,19 +218,18 @@
|
|||||||
this.loadConfig.status = "loading"
|
this.loadConfig.status = "loading"
|
||||||
let res = {};
|
let res = {};
|
||||||
if (this.is_admin) {
|
if (this.is_admin) {
|
||||||
res = await taskInformationgist({
|
res = await taskInformationgist({
|
||||||
id: this.task_id
|
id: this.task_id
|
||||||
});
|
});
|
||||||
}
|
} else {
|
||||||
else {
|
let params = {
|
||||||
let params = {
|
page: this.loadConfig.page,
|
||||||
page: this.loadConfig.page,
|
limit: this.loadConfig.limit,
|
||||||
limit: this.loadConfig.limit,
|
user_id: that.user_id,
|
||||||
user_id: that.user_id,
|
};
|
||||||
};
|
this.task_id > 0 ? params.is_update = this.current : null;
|
||||||
this.task_id > 0 ? params.is_update = this.current:null;
|
res = await informationList(params);
|
||||||
res = await informationList(params);
|
}
|
||||||
}
|
|
||||||
this.loadConfig.status = "loadmore"
|
this.loadConfig.status = "loadmore"
|
||||||
if (res.data.length < this.loadConfig.limit) {
|
if (res.data.length < this.loadConfig.limit) {
|
||||||
this.loadConfig.status = "nomore"
|
this.loadConfig.status = "nomore"
|
||||||
@ -239,10 +238,10 @@
|
|||||||
}
|
}
|
||||||
this.list = [...this.list, ...res.data];
|
this.list = [...this.list, ...res.data];
|
||||||
},
|
},
|
||||||
changeCurrent(e) {
|
changeCurrent(e) {
|
||||||
this.current = e.index;
|
this.current = e.index;
|
||||||
this.initLoad();
|
this.initLoad();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onPullDownRefresh() {
|
onPullDownRefresh() {
|
||||||
this.initLoad();
|
this.initLoad();
|
||||||
@ -279,7 +278,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.card_head {
|
.card_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
@ -302,7 +301,7 @@
|
|||||||
|
|
||||||
|
|
||||||
width: 160rpx;
|
width: 160rpx;
|
||||||
background-color: $theme-oa-color;
|
// background-color: $theme-oa-color;
|
||||||
color: white;
|
color: white;
|
||||||
border-radius: 40rpx;
|
border-radius: 40rpx;
|
||||||
|
|
||||||
|
@ -459,7 +459,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.card_head {
|
.card_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
|
@ -198,7 +198,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.card_head {
|
.card_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
|
@ -1,349 +1,366 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="">
|
<view class="">
|
||||||
<company :id="id" type="company"></company>
|
<company :id="id" type="company"></company>
|
||||||
<view class="need_contract" v-if="!company.contract||!company.contract.status||!company.company.is_contract">
|
<view class="need_contract" v-if="!company.contract||!company.contract.status||!company.company.is_contract">
|
||||||
<view class="title">电子合同</view>
|
<view class="title">电子合同</view>
|
||||||
<picker v-if="company.contract&&company.contract.check_status==0||!company.contract" :range="contractTypeList" range-key="name" @change="changeType">
|
<picker v-if="company.contract&&company.contract.check_status==0||!company.contract"
|
||||||
<button class="btn">生成合同</button>
|
:range="contractTypeList" range-key="name" @change="changeType">
|
||||||
<!-- <mybtn text="生成合同" position="false"></mybtn> -->
|
<button class="btn">
|
||||||
</picker>
|
<image src="../../static/img/contract/FQHT.png" width="35rpx" height="35rpx" mode="widthFix">
|
||||||
<view v-if="company.contract&&company.contract.check_status==1">
|
</image> 发起合同
|
||||||
<button class="btn tips_center">合同已生成,请等待审核</button>
|
</button>
|
||||||
<!-- <mybtn text="生成合同" position="false" disabled></mybtn> -->
|
<!-- <mybtn text="生成合同" position="false"></mybtn> -->
|
||||||
</view>
|
</picker>
|
||||||
<view v-if="company.contract&&company.contract.check_status==2&&company.contract.file" class="card">
|
<view v-if="company.contract&&company.contract.check_status==1">
|
||||||
<view class="contract_box send">
|
<button class="btn tips_center">合同已生成,请等待审核</button>
|
||||||
<view class="left">
|
<!-- <mybtn text="生成合同" position="false" disabled></mybtn> -->
|
||||||
<image class="contract_img" src="../../static/img/contract/pdf.png"></image>
|
</view>
|
||||||
<view class="text">
|
<view v-if="company.contract&&company.contract.check_status==2&&company.contract.file" class="card">
|
||||||
<view class="name">{{company.contract.contract_type_name}}</view>
|
<view class="contract_box send">
|
||||||
<view>
|
<view class="left">
|
||||||
<text>{{company.contract&&company.contract.create_time}}</text>
|
<image class="contract_img" src="../../static/img/contract/pdf.png"></image>
|
||||||
</view>
|
<view class="text">
|
||||||
</view>
|
<view class="name">{{company.contract.contract_type_name}}</view>
|
||||||
</view>
|
<view>
|
||||||
<view class="right" @click="naviToContract(company.contract.file)">
|
<text>{{company.contract&&company.contract.create_time}}</text>
|
||||||
<!-- <image class="icon"></image> -->
|
</view>
|
||||||
<uni-icons type="paperclip" color="#3274F9"></uni-icons>
|
</view>
|
||||||
<view>查看</view>
|
</view>
|
||||||
</view>
|
<view class="right" @click="naviToContract(company.contract.file)">
|
||||||
</view>
|
<!-- <image class="icon"></image> -->
|
||||||
<u-line color="#999999FF" style="margin: 31rpx 0;"></u-line>
|
<uni-icons type="paperclip" color="#3274F9"></uni-icons>
|
||||||
<view class="bottom">
|
<view>查看</view>
|
||||||
<button class="send_btn" @click="addContract">发送合同</button>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
<u-line color="#999999FF" style="margin: 31rpx 0;"></u-line>
|
||||||
<view v-if="company.contract&&company.contract.check_status==3" class="card">
|
<view class="bottom">
|
||||||
<view class="contract_box send">
|
<button class="send_btn" @click="addContract">发送合同</button>
|
||||||
<view class="left">
|
</view>
|
||||||
<image class="contract_img" src="../../static/img/contract/pdf.png"></image>
|
</view>
|
||||||
<view class="text">
|
<view v-if="company.contract&&company.contract.check_status==3" class="card">
|
||||||
<view class="name">{{company.contract.contract_type_name}}</view>
|
<view class="contract_box send">
|
||||||
<view>
|
<view class="left">
|
||||||
<text>{{company.contract&&company.contract.create_time}}</text>
|
<image class="contract_img" src="../../static/img/contract/pdf.png"></image>
|
||||||
</view>
|
<view class="text">
|
||||||
</view>
|
<view class="name">{{company.contract.contract_type_name}}</view>
|
||||||
</view>
|
<view>
|
||||||
<view class="right" @click="naviToContract(company.contract.file)">
|
<text>{{company.contract&&company.contract.create_time}}</text>
|
||||||
<!-- <image class="icon"></image> -->
|
</view>
|
||||||
<uni-icons type="paperclip" color="#3274F9"></uni-icons>
|
</view>
|
||||||
<view>查看</view>
|
</view>
|
||||||
</view>
|
<view class="right" @click="naviToContract(company.contract.file)">
|
||||||
</view>
|
<!-- <image class="icon"></image> -->
|
||||||
<u-line color="#999999FF" style="margin: 31rpx 0;"></u-line>
|
<uni-icons type="paperclip" color="#3274F9"></uni-icons>
|
||||||
<view class="bottom">
|
<view>查看</view>
|
||||||
<button class="send_btn" @click="getPostsms" v-if="timerCount==0">再次发送短信</button>
|
</view>
|
||||||
<button class="send_btn tips_center" v-else>{{cTimerCount+'秒后可继续再次发送短信'}}</button>
|
</view>
|
||||||
</view>
|
<u-line color="#999999FF" style="margin: 31rpx 0;"></u-line>
|
||||||
</view>
|
<view class="bottom">
|
||||||
</view>
|
<button class="send_btn" @click="getPostsms" v-if="timerCount==0">再次发送短信</button>
|
||||||
</view>
|
<button class="send_btn tips_center" v-else>{{cTimerCount+'秒后可继续再次发送短信'}}</button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { companyView, initiateContract, Draftingcontracts, postsms } from "@/api/company.js"
|
import {
|
||||||
import { dictDataLists } from "@/api/oaPbulic.js"
|
companyView,
|
||||||
import { Toast } from "../../libs/uniApi";
|
initiateContract,
|
||||||
import {companyContractType} from "@/static/server/contract.js";
|
Draftingcontracts,
|
||||||
export default {
|
postsms
|
||||||
data() {
|
} from "@/api/company.js"
|
||||||
return {
|
import {
|
||||||
id: '',
|
dictDataLists
|
||||||
company: {},
|
} from "@/api/oaPbulic.js"
|
||||||
skeleton: true,
|
import {
|
||||||
show: false,
|
Toast
|
||||||
typeShow: false,
|
} from "../../libs/uniApi";
|
||||||
timer: null, // 计时器
|
import {
|
||||||
timerCount: 0, //倒计时
|
companyContractType
|
||||||
contractTypeList: []
|
} from "@/static/server/contract.js";
|
||||||
}
|
export default {
|
||||||
},
|
data() {
|
||||||
onLoad(options) {
|
return {
|
||||||
this.id = options.id;
|
id: '',
|
||||||
this.initCompany();
|
company: {},
|
||||||
this.initContractTypeList();
|
skeleton: true,
|
||||||
let time = uni.getStorageSync('ctime' + this.id);
|
show: false,
|
||||||
if(time>0&&(time - Date.now())/1000>0){
|
typeShow: false,
|
||||||
this.startTimer((time - Date.now())/1000);
|
timer: null, // 计时器
|
||||||
}
|
timerCount: 0, //倒计时
|
||||||
},
|
contractTypeList: []
|
||||||
onUnload() {
|
}
|
||||||
if(this.timerCount>0) uni.setStorageSync('ctime'+this.id, this.timerCount*1000+Date.now());
|
},
|
||||||
},
|
onLoad(options) {
|
||||||
computed: {
|
this.id = options.id;
|
||||||
cTimerCount() {
|
this.initCompany();
|
||||||
return this.timerCount;
|
this.initContractTypeList();
|
||||||
}
|
let time = uni.getStorageSync('ctime' + this.id);
|
||||||
},
|
if (time > 0 && (time - Date.now()) / 1000 > 0) {
|
||||||
methods: {
|
this.startTimer((time - Date.now()) / 1000);
|
||||||
async initCompany() {
|
}
|
||||||
let res = await companyView({
|
},
|
||||||
id: this.id,
|
onUnload() {
|
||||||
})
|
if (this.timerCount > 0) uni.setStorageSync('ctime' + this.id, this.timerCount * 1000 + Date.now());
|
||||||
this.company = res.data;
|
},
|
||||||
if (this.company.contract == [] || this.company.contract == {} || this.company.contract.length == 0) this
|
computed: {
|
||||||
.company.contract = null;
|
cTimerCount() {
|
||||||
},
|
return this.timerCount;
|
||||||
changeType(e) {
|
}
|
||||||
// console.log(this.contractTypeList[e.detail.value]);
|
},
|
||||||
this.createContract({
|
methods: {
|
||||||
party_b: this.id,
|
async initCompany() {
|
||||||
contract_type: this.contractTypeList[e.detail.value].id,
|
let res = await companyView({
|
||||||
type: 1 //1-公司,2-个人
|
id: this.id,
|
||||||
})
|
})
|
||||||
},
|
this.company = res.data;
|
||||||
// 查看合同
|
if (this.company.contract == [] || this.company.contract == {} || this.company.contract.length == 0)
|
||||||
naviToContract(file) {
|
this
|
||||||
uni.navigateTo({
|
.company.contract = null;
|
||||||
url: `/subpkg/pdfView/pdfView?url=${file}`
|
},
|
||||||
})
|
changeType(e) {
|
||||||
},
|
// console.log(this.contractTypeList[e.detail.value]);
|
||||||
// 初始化合同类型
|
this.createContract({
|
||||||
async initContractTypeList() {
|
party_b: this.id,
|
||||||
let res = await dictDataLists({
|
contract_type: this.contractTypeList[e.detail.value].id,
|
||||||
type_id: 7
|
type: 1 //1-公司,2-个人
|
||||||
})
|
})
|
||||||
res.data = res.data.filter(item=>{
|
},
|
||||||
return companyContractType.find(t=>item.id==t);
|
// 查看合同
|
||||||
})
|
naviToContract(file) {
|
||||||
this.contractTypeList = res.data;
|
uni.navigateTo({
|
||||||
},
|
url: `/subpkg/pdfView/pdfView?url=${file}`
|
||||||
// 生成合同
|
})
|
||||||
async createContract(data) {
|
},
|
||||||
uni.showModal({
|
// 初始化合同类型
|
||||||
content: '请检查信息无误后再生成合同',
|
async initContractTypeList() {
|
||||||
confirmText: '确认无误',
|
let res = await dictDataLists({
|
||||||
cancelText: '我再看看',
|
type_id: 7
|
||||||
confirmColor: '#3175f9',
|
})
|
||||||
success: async (e) => {
|
res.data = res.data.filter(item => {
|
||||||
if (e.confirm) {
|
return companyContractType.find(t => item.id == t);
|
||||||
uni.showLoading({
|
})
|
||||||
title:'合同生成中',
|
this.contractTypeList = res.data;
|
||||||
mask: true
|
},
|
||||||
})
|
// 生成合同
|
||||||
let res = await initiateContract({
|
async createContract(data) {
|
||||||
party_b: data.party_b,
|
uni.showModal({
|
||||||
contract_type: data.contract_type,
|
content: '请检查信息无误后再生成合同',
|
||||||
type: data.type
|
confirmText: '确认无误',
|
||||||
})
|
cancelText: '我再看看',
|
||||||
this.initCompany();
|
confirmColor: '#3175f9',
|
||||||
uni.hideLoading();
|
success: async (e) => {
|
||||||
Toast(res.msg || '合同已生成');
|
if (e.confirm) {
|
||||||
this.navTo('/subpkg/submit/submit?type=' + 1);
|
uni.showLoading({
|
||||||
}
|
title: '合同生成中',
|
||||||
}
|
mask: true
|
||||||
})
|
})
|
||||||
},
|
let res = await initiateContract({
|
||||||
// 发送合同
|
party_b: data.party_b,
|
||||||
async addContract(data) {
|
contract_type: data.contract_type,
|
||||||
uni.showModal({
|
type: data.type
|
||||||
content: '请检查合同无误后再发送',
|
})
|
||||||
confirmText: '确认无误',
|
this.initCompany();
|
||||||
cancelText: '我再看看',
|
uni.hideLoading();
|
||||||
confirmColor: '#3175f9',
|
Toast(res.msg || '合同已生成');
|
||||||
success: async (e) => {
|
this.navTo('/subpkg/submit/submit?type=' + 1);
|
||||||
if (e.confirm) {
|
}
|
||||||
try{
|
}
|
||||||
uni.showLoading({
|
})
|
||||||
title:'合同发送中',
|
},
|
||||||
mask: true
|
// 发送合同
|
||||||
})
|
async addContract(data) {
|
||||||
let res = await Draftingcontracts({
|
uni.showModal({
|
||||||
id: this.id
|
content: '请检查合同无误后再发送',
|
||||||
});
|
confirmText: '确认无误',
|
||||||
this.initCompany();
|
cancelText: '我再看看',
|
||||||
this.startTimer();
|
confirmColor: '#3175f9',
|
||||||
uni.hideLoading();
|
success: async (e) => {
|
||||||
Toast('合同已发送');
|
if (e.confirm) {
|
||||||
// this.navTo('/subpkg/submit/submit');
|
try {
|
||||||
}catch(e){
|
uni.showLoading({
|
||||||
uni.hideLoading();
|
title: '合同发送中',
|
||||||
Toast(e.msg||'合同发送失败');
|
mask: true
|
||||||
}
|
})
|
||||||
}
|
let res = await Draftingcontracts({
|
||||||
}
|
id: this.id
|
||||||
})
|
});
|
||||||
},
|
this.initCompany();
|
||||||
// 发送短信
|
this.startTimer();
|
||||||
async getPostsms() {
|
uni.hideLoading();
|
||||||
try {
|
Toast('合同已发送');
|
||||||
uni.showLoading({
|
// this.navTo('/subpkg/submit/submit');
|
||||||
title: '发送中',
|
} catch (e) {
|
||||||
mask: true
|
uni.hideLoading();
|
||||||
})
|
Toast(e.msg || '合同发送失败');
|
||||||
if (this.timerCount == 0) {
|
}
|
||||||
this.startTimer();
|
}
|
||||||
let res = await postsms({
|
}
|
||||||
id: this.id
|
})
|
||||||
})
|
},
|
||||||
Toast('短信已发送');
|
// 发送短信
|
||||||
// this.navTo('/subpkg/submit/submit');
|
async getPostsms() {
|
||||||
}
|
try {
|
||||||
} catch (e) {
|
uni.showLoading({
|
||||||
uni.hideLoading();
|
title: '发送中',
|
||||||
Toast(e.msg || '合同发送失败');
|
mask: true
|
||||||
}
|
})
|
||||||
},
|
if (this.timerCount == 0) {
|
||||||
// 定时器
|
this.startTimer();
|
||||||
startTimer(time=60){
|
let res = await postsms({
|
||||||
this.timerCount = time.toFixed(0);
|
id: this.id
|
||||||
this.timer = setInterval(() => {
|
})
|
||||||
this.timerCount--;
|
Toast('短信已发送');
|
||||||
if (this.timerCount <= 0) {
|
// this.navTo('/subpkg/submit/submit');
|
||||||
clearInterval(this.timer);
|
}
|
||||||
this.loadUserDetail();
|
} catch (e) {
|
||||||
}
|
uni.hideLoading();
|
||||||
}, 1000);
|
Toast(e.msg || '合同发送失败');
|
||||||
},
|
}
|
||||||
navTo(url) {
|
},
|
||||||
url ?
|
// 定时器
|
||||||
uni.navigateTo({
|
startTimer(time = 60) {
|
||||||
url: url
|
this.timerCount = time.toFixed(0);
|
||||||
}) : Toast('暂未开放')
|
this.timer = setInterval(() => {
|
||||||
},
|
this.timerCount--;
|
||||||
},
|
if (this.timerCount <= 0) {
|
||||||
onPullDownRefresh() {
|
clearInterval(this.timer);
|
||||||
uni.stopPullDownRefresh()
|
this.loadUserDetail();
|
||||||
}
|
}
|
||||||
}
|
}, 1000);
|
||||||
|
},
|
||||||
|
navTo(url) {
|
||||||
|
url ?
|
||||||
|
uni.navigateTo({
|
||||||
|
url: url
|
||||||
|
}) : Toast('暂未开放')
|
||||||
|
},
|
||||||
|
},
|
||||||
|
onPullDownRefresh() {
|
||||||
|
uni.stopPullDownRefresh()
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.need_contract {
|
.need_contract {
|
||||||
padding-bottom: 30rpx;
|
padding-bottom: 30rpx;
|
||||||
.title{
|
|
||||||
font-size: 35rpx;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #333333;
|
|
||||||
margin-bottom: 21rpx;
|
|
||||||
margin-left: 28rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card {
|
.title {
|
||||||
padding-top: 0;
|
font-size: 35rpx;
|
||||||
margin: 28rpx;
|
font-weight: 500;
|
||||||
padding: 28rpx;
|
color: #333333;
|
||||||
background-color: #fff;
|
margin-bottom: 21rpx;
|
||||||
border-radius: 14rpx;
|
margin-left: 28rpx;
|
||||||
|
}
|
||||||
|
|
||||||
.contract_box {
|
.card {
|
||||||
display: flex;
|
padding-top: 0;
|
||||||
justify-content: space-between;
|
margin: 28rpx;
|
||||||
|
padding: 28rpx;
|
||||||
|
background-color: #fff;
|
||||||
|
border-radius: 14rpx;
|
||||||
|
|
||||||
.left {
|
.contract_box {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
.contract_img {
|
.left {
|
||||||
width: 102rpx;
|
display: flex;
|
||||||
height: 102rpx;
|
|
||||||
background: #F5F5F5;
|
|
||||||
border-radius: 14rpx 14rpx 14rpx 14rpx;
|
|
||||||
margin-right: 21rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.text {
|
.contract_img {
|
||||||
display: flex;
|
width: 102rpx;
|
||||||
flex-direction: column;
|
height: 102rpx;
|
||||||
justify-content: space-between;
|
background: #F5F5F5;
|
||||||
|
border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||||
|
margin-right: 21rpx;
|
||||||
|
}
|
||||||
|
|
||||||
.name {
|
.text {
|
||||||
font-size: 32rpx;
|
display: flex;
|
||||||
;
|
flex-direction: column;
|
||||||
font-weight: 500;
|
justify-content: space-between;
|
||||||
color: rgba(0, 0, 0, 0.8);
|
|
||||||
line-height: 35rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nickname {
|
.name {
|
||||||
margin-right: 35rpx;
|
font-size: 32rpx;
|
||||||
}
|
;
|
||||||
|
font-weight: 500;
|
||||||
|
color: rgba(0, 0, 0, 0.8);
|
||||||
|
line-height: 35rpx;
|
||||||
|
}
|
||||||
|
|
||||||
text {
|
.nickname {
|
||||||
height: 39rpx;
|
margin-right: 35rpx;
|
||||||
font-size: 28rpx;
|
}
|
||||||
font-weight: 400;
|
|
||||||
color: #666666;
|
|
||||||
line-height: 35rpx;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.right {
|
text {
|
||||||
font-size: 28rpx;
|
height: 39rpx;
|
||||||
font-weight: 500;
|
font-size: 28rpx;
|
||||||
color: #3274F9;
|
font-weight: 400;
|
||||||
line-height: 35rpx;
|
color: #666666;
|
||||||
display: flex;
|
line-height: 35rpx;
|
||||||
justify-content: center;
|
}
|
||||||
align-items: center;
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.icon {
|
.right {
|
||||||
width: 35rpx;
|
font-size: 28rpx;
|
||||||
height: 39rpx;
|
font-weight: 500;
|
||||||
background-color: #3274F9;
|
color: #3274F9;
|
||||||
opacity: 1;
|
line-height: 35rpx;
|
||||||
margin-right: 10rpx
|
display: flex;
|
||||||
}
|
justify-content: center;
|
||||||
}
|
align-items: center;
|
||||||
|
|
||||||
}
|
.icon {
|
||||||
|
width: 35rpx;
|
||||||
|
height: 39rpx;
|
||||||
|
background-color: #3274F9;
|
||||||
|
opacity: 1;
|
||||||
|
margin-right: 10rpx
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.send {
|
}
|
||||||
padding-top: 28rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.send_btn {
|
.send {
|
||||||
width: 100%;
|
padding-top: 28rpx;
|
||||||
height: 84rpx;
|
}
|
||||||
background: $theme-oa-color;
|
|
||||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
|
||||||
color: #fff;
|
|
||||||
line-height: 80rpx;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tips_center {
|
.send_btn {
|
||||||
background-color: #666;
|
width: 100%;
|
||||||
color: #eee;
|
height: 84rpx;
|
||||||
}
|
background: $theme-oa-color;
|
||||||
}
|
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||||
|
color: #fff;
|
||||||
|
line-height: 80rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
.btn {
|
.tips_center {
|
||||||
margin: 0 auto;
|
background-color: #666;
|
||||||
margin-top: 32rpx;
|
color: #eee;
|
||||||
// margin-bottom: 40rpx;
|
}
|
||||||
width: 694rpx;
|
}
|
||||||
height: 84rpx;
|
|
||||||
background: $theme-oa-color;
|
|
||||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
|
||||||
color: #fff;
|
|
||||||
line-height: 80rpx;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tips_center {
|
.btn {
|
||||||
background-color: #666;
|
margin: 0 auto;
|
||||||
color: #eee;
|
margin-top: 32rpx;
|
||||||
}
|
// margin-bottom: 40rpx;
|
||||||
}
|
width: 694rpx;
|
||||||
|
height: 84rpx;
|
||||||
|
background: $theme-oa-color;
|
||||||
|
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||||
|
color: #fff;
|
||||||
|
line-height: 80rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tips_center {
|
||||||
|
background-color: #666;
|
||||||
|
color: #eee;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
@ -182,7 +182,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.cards_head {
|
.cards_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
|
@ -10,7 +10,8 @@
|
|||||||
</view>
|
</view>
|
||||||
</view> -->
|
</view> -->
|
||||||
<view class="contract_list">
|
<view class="contract_list">
|
||||||
<view class="item" v-for="(item,index) in list" :key="item.id" @click="navTo('/subpkg/contractDetail/contractDetail?id='+item.id)">
|
<view class="item" v-for="(item,index) in list" :key="item.id"
|
||||||
|
@click="navTo('/subpkg/contractDetail/contractDetail?id='+item.id)">
|
||||||
<view class="personnel_list">
|
<view class="personnel_list">
|
||||||
<view class="cards">
|
<view class="cards">
|
||||||
<view class="cards_head">
|
<view class="cards_head">
|
||||||
@ -25,7 +26,8 @@
|
|||||||
<view class="">
|
<view class="">
|
||||||
<text>乙方 :</text>
|
<text>乙方 :</text>
|
||||||
<text v-if="item.party_b_info">{{item.party_b_info.company_name}}</text>
|
<text v-if="item.party_b_info">{{item.party_b_info.company_name}}</text>
|
||||||
<text v-else-if="item.party_b==$store.state.app.userInfo.id">{{$store.state.app.userInfo.nickname}}</text>
|
<text
|
||||||
|
v-else-if="item.party_b==$store.state.app.userInfo.id">{{$store.state.app.userInfo.nickname}}</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="">
|
<view class="">
|
||||||
<text>合同类型 :</text>
|
<text>合同类型 :</text>
|
||||||
@ -125,7 +127,7 @@
|
|||||||
contractList
|
contractList
|
||||||
} from "@/api/contract.js"
|
} from "@/api/contract.js"
|
||||||
import {
|
import {
|
||||||
download_file
|
download_file
|
||||||
} from "@/api/junziqian.js"
|
} from "@/api/junziqian.js"
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
@ -153,17 +155,17 @@
|
|||||||
url: url
|
url: url
|
||||||
}) : Toast('暂未开放')
|
}) : Toast('暂未开放')
|
||||||
},
|
},
|
||||||
navToContract (contract_no) {
|
navToContract(contract_no) {
|
||||||
download_file({
|
download_file({
|
||||||
applyNo: contract_no
|
applyNo: contract_no
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code != 1) {
|
if (res.code != 1) {
|
||||||
Toast(res.msg)
|
Toast(res.msg)
|
||||||
}
|
}
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: `/subpkg/pdfView/pdfView?url=${res.data.url}`
|
url: `/subpkg/pdfView/pdfView?url=${res.data.url}`
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
initLoadConfig() {
|
initLoadConfig() {
|
||||||
this.loadConfig.page = 1;
|
this.loadConfig.page = 1;
|
||||||
@ -250,7 +252,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.cards_head {
|
.cards_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
|
@ -202,10 +202,10 @@
|
|||||||
// console.log(this.userInfo);
|
// console.log(this.userInfo);
|
||||||
if (this.user_id == 0) {
|
if (this.user_id == 0) {
|
||||||
// this.userInfo = this.$store.state.app.userInfo;
|
// this.userInfo = this.$store.state.app.userInfo;
|
||||||
userInfo().then((res)=>{
|
userInfo().then((res) => {
|
||||||
this.$store.commit('setUserInfo', res.data);
|
this.$store.commit('setUserInfo', res.data);
|
||||||
this.userInfo = res.data;
|
this.userInfo = res.data;
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.OtherUserInfo()
|
this.OtherUserInfo()
|
||||||
}
|
}
|
||||||
@ -291,7 +291,7 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding: 10rpx 28rpx;
|
padding: 10rpx 28rpx;
|
||||||
|
|
||||||
@ -299,7 +299,7 @@
|
|||||||
// background-color: red;
|
// background-color: red;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
vertical-align: bottom;
|
width: 24vw;
|
||||||
line-height: 44px;
|
line-height: 44px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -58,7 +58,7 @@
|
|||||||
<view class="personnel_list">
|
<view class="personnel_list">
|
||||||
<view class="card" v-for="(item, index) in userList" :key="item.id">
|
<view class="card" v-for="(item, index) in userList" :key="item.id">
|
||||||
<view class="card_head">
|
<view class="card_head">
|
||||||
<text style="font-size: 32rpx;">创建时间: {{creTime(item.create_time)}}
|
<text>创建时间: {{creTime(item.create_time)}}
|
||||||
</text>
|
</text>
|
||||||
<text @click="navTo('/subpkg/finance/finance?id='+item.id)">财务查看</text>
|
<text @click="navTo('/subpkg/finance/finance?id='+item.id)">财务查看</text>
|
||||||
<text @click="navTo('/subpkg/personnelDetails/personnelDetails?id='+item.id)">信息查看</text>
|
<text @click="navTo('/subpkg/personnelDetails/personnelDetails?id='+item.id)">信息查看</text>
|
||||||
@ -223,7 +223,7 @@
|
|||||||
border-radius: 30rpx;
|
border-radius: 30rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.card_head {
|
.card_head {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
|
190
test.vue
@ -1,119 +1,111 @@
|
|||||||
<template>
|
<template>
|
||||||
|
|
||||||
|
|
||||||
<view class="personnel_list">
|
<view class="personnel_list">
|
||||||
<view class="cards">
|
<view class="cards">
|
||||||
<view class="cards_head">
|
<view class="cards_head">
|
||||||
<text style="font-size: 32rpx">最后更新:2020-25-2</text>
|
<text style="font-size: 32rpx">最后更新:2020-25-2</text>
|
||||||
<text>更新档案</text>
|
<text>更新档案</text>
|
||||||
<text>查看档案</text>
|
<text>查看档案</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="cards_content">
|
<view class="cards_content">
|
||||||
<view class="right">
|
<view class="right">
|
||||||
<view class="">
|
<view class="">
|
||||||
<text>人员姓名 :</text>
|
<text>人员姓名 :</text>
|
||||||
<text> { item.name }</text>
|
<text> { item.name }</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="">
|
<view class="">
|
||||||
<text>联系电话 :</text>
|
<text>联系电话 :</text>
|
||||||
<text>{ item.phone }</text>
|
<text>{ item.phone }</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="">
|
<view class="">
|
||||||
<text>所属片区 :</text>
|
<text>所属片区 :</text>
|
||||||
<text> 所属片区 </text>
|
<text> 所属片区 </text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="left">
|
<view class="left">
|
||||||
<view class="cir">
|
<view class="cir">
|
||||||
<u--image
|
<u--image class="u_avatar" :showLoading="true" :src="'../../static/img/public/man.png'"
|
||||||
class="u_avatar"
|
width="112.28rpx" height="112.28rpx" shape="circle"></u--image>
|
||||||
:showLoading="true"
|
</view>
|
||||||
:src="'../../static/img/public/man.png'"
|
</view>
|
||||||
width="112.28rpx"
|
</view>
|
||||||
height="112.28rpx"
|
</view>
|
||||||
shape="circle"
|
</view>
|
||||||
></u--image>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
.personnel_list {
|
||||||
|
padding: 28rpx 0;
|
||||||
|
margin-bottom: 130rpx;
|
||||||
|
|
||||||
.personnel_list {
|
.cards {
|
||||||
padding: 28rpx 0;
|
margin: 0 auto;
|
||||||
margin-bottom: 130rpx;
|
margin-bottom: 28rpx;
|
||||||
|
width: 694rpx;
|
||||||
|
background: #ffffff;
|
||||||
|
border-radius: 30rpx;
|
||||||
|
opacity: 1;
|
||||||
|
overflow: hidden;
|
||||||
|
// box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||||
|
|
||||||
.cards {
|
.cards_head {
|
||||||
margin: 0 auto;
|
padding: 28rpx;
|
||||||
margin-bottom: 28rpx;
|
background-color: $theme-oa-color;
|
||||||
width: 694rpx;
|
color: white;
|
||||||
background: #ffffff;
|
height: 100rpx;
|
||||||
border-radius: 30rpx;
|
display: flex;
|
||||||
opacity: 1;
|
justify-content: space-between;
|
||||||
overflow: hidden;
|
}
|
||||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
|
||||||
|
|
||||||
.cards_head {
|
.cards_content {
|
||||||
padding: 28rpx;
|
padding: 28rpx;
|
||||||
background-color: $theme-oa-color;
|
display: flex;
|
||||||
color: white;
|
justify-content: space-between;
|
||||||
height: 100rpx;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cards_content {
|
.left {
|
||||||
padding: 28rpx;
|
text-align: center;
|
||||||
display: flex;
|
// padding: 15rpx 25rpx;
|
||||||
justify-content: space-between;
|
padding-top: 20rpx;
|
||||||
|
|
||||||
.left {
|
width: 160rpx;
|
||||||
text-align: center;
|
background-color: $theme-oa-color;
|
||||||
// padding: 15rpx 25rpx;
|
color: white;
|
||||||
padding-top: 20rpx;
|
border-radius: 40rpx;
|
||||||
|
|
||||||
width: 160rpx;
|
.cir {
|
||||||
background-color: $theme-oa-color;
|
width: 120rpx;
|
||||||
color: white;
|
height: 120rpx;
|
||||||
border-radius: 40rpx;
|
background-color: #ffffff;
|
||||||
|
margin-left: 25rpx;
|
||||||
|
border-radius: 120rpx;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.cir {
|
.right {
|
||||||
width: 120rpx;
|
display: flex;
|
||||||
height: 120rpx;
|
flex-direction: column;
|
||||||
background-color: #ffffff;
|
justify-content: space-between;
|
||||||
margin-left: 25rpx;
|
|
||||||
border-radius: 120rpx;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.right {
|
view {
|
||||||
display: flex;
|
text:nth-child(2) {
|
||||||
flex-direction: column;
|
margin-left: 20rpx;
|
||||||
justify-content: space-between;
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
view {
|
.u_avatar {
|
||||||
text:nth-child(2) {
|
position: absolute;
|
||||||
margin-left: 20rpx;
|
top: 50%;
|
||||||
}
|
left: 50%;
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.u_avatar {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|