Commit 7cc63560 authored by youjie's avatar youjie

领队报账

parent 3e2f2341
...@@ -129,6 +129,9 @@ ...@@ -129,6 +129,9 @@
.items-end{ .items-end{
align-items: end; align-items: end;
} }
.items-flex-end{
align-items:flex-end
}
.justify-center{ .justify-center{
justify-content: center; justify-content: center;
} }
...@@ -147,6 +150,9 @@ ...@@ -147,6 +150,9 @@
.justify-end{ .justify-end{
justify-content: end; justify-content: end;
} }
.justify-flex-end{
justify-content: flex-end;
}
.flex1,.col{ .flex1,.col{
flex: 1; flex: 1;
} }
...@@ -304,9 +310,6 @@ ...@@ -304,9 +310,6 @@
.fz52{ .fz52{
font-size: 52rpx; font-size: 52rpx;
} }
.ML5{
margin-left: 5rpx;
}
.ML10{ .ML10{
margin-left: 10rpx; margin-left: 10rpx;
} }
...@@ -442,6 +445,21 @@ ...@@ -442,6 +445,21 @@
.MB255{ .MB255{
margin-bottom: 255rpx; margin-bottom: 255rpx;
} }
.PA10{
padding: 10rpx;
}
.PA20{
padding: 20rpx;
}
.PA30{
padding: 30rpx;
}
.PA40{
padding: 40rpx;
}
.PA50{
padding: 50rpx;
}
.PT20{ .PT20{
padding-top: 20rpx; padding-top: 20rpx;
} }
...@@ -457,6 +475,15 @@ ...@@ -457,6 +475,15 @@
.PB20{ .PB20{
padding-bottom: 20rpx; padding-bottom: 20rpx;
} }
.PB30{
padding-bottom: 30rpx;
}
.PB40{
padding-bottom: 40rpx;
}
.PB50{
padding-bottom: 50rpx;
}
.PB200{ .PB200{
padding-bottom: 200rpx; padding-bottom: 200rpx;
} }
...@@ -467,25 +494,70 @@ ...@@ -467,25 +494,70 @@
padding-bottom: 300rpx; padding-bottom: 300rpx;
} }
.PY20{ .PY20{
padding: 20rpx 0; padding-top: 20rpx;
padding-bottom: 20rpx;
}
.PY30{
padding-top: 30rpx;
padding-bottom: 30rpx;
}
.PY40{
padding-top: 40rpx;
padding-bottom: 50rpx;
}
.PY50{
padding-top: 50rpx;
padding-bottom: 50rpx;
} }
.PY53{ .PY53{
padding: 53rpx 0; padding-top: 53rpx;
padding-bottom: 53rpx;
} }
.PX4{ .PX4{
padding: 0 4rpx; padding-left: 4rpx;
padding-right: 4rpx;
} }
.PX10{ .PX10{
padding: 0 10rpx; padding-left: 10rpx;
padding-right: 310rpx;
} }
.PX20{ .PX20{
padding: 0 20rpx; padding-left: 20rpx;
padding-right: 20rpx;
}
.PX30{
padding-left: 30rpx;
padding-right: 30rpx;
}
.PX40{
padding-left: 40rpx;
padding-right: 40rpx;
} }
.PX50{ .PX50{
padding: 0 50rpx; padding-left: 50rpx;
padding-right: 50rpx;
} }
.PX53{ .PX53{
padding: 0 53rpx; padding-left: 53rpx;
padding-right: 53rpx;
}
.PL10{
padding-left: 10rpx;
}
.PL15{
padding-left: 15rpx;
}
.PL20{
padding-left: 20rpx;
}
.PL30{
padding-left: 30rpx;
}
.PL40{
padding-left: 40rpx;
}
.PL50{
padding-left: 50rpx;
} }
.relativeFT5{ .relativeFT5{
top: -5rpx; top: -5rpx;
......
...@@ -6,7 +6,9 @@ ...@@ -6,7 +6,9 @@
<u-icon name="arrow-left" size="38" :color="color?color:'#000'"></u-icon> <u-icon name="arrow-left" size="38" :color="color?color:'#000'"></u-icon>
</view> </view>
</view> </view>
<view class="carrHeader-title"> <view class="carrHeader-title"
:class="[textAlign?'carrHeader-titleL':'']"
:style="{'color':color?color:'#000','text-align':textAlign?textAlign:'center'}">
<slot>{{title?title:''}}</slot> <slot>{{title?title:''}}</slot>
</view> </view>
</view> </view>
...@@ -14,7 +16,7 @@ ...@@ -14,7 +16,7 @@
</template> </template>
<script> <script>
export default { export default {
props:['title','color'], props:['title','color','textAlign'],
data() { data() {
return { return {
titleStyle:{} titleStyle:{}
...@@ -43,9 +45,11 @@ export default { ...@@ -43,9 +45,11 @@ export default {
position: relative; position: relative;
left: 0; left: 0;
right: 0; right: 0;
text-align: center;
font-size: 32rpx; font-size: 32rpx;
} }
.carrHeader-title.carrHeader-titleL{
text-indent: 80rpx;
}
.carrHeader-left{ .carrHeader-left{
position: absolute; position: absolute;
left: 32rpx; left: 32rpx;
......
...@@ -69,7 +69,7 @@ ...@@ -69,7 +69,7 @@
"quickapp" : {}, "quickapp" : {},
/* 小程序特有相关 */ /* 小程序特有相关 */
"mp-weixin" : { "mp-weixin" : {
"appid": "wx5564525562e92ddb", "appid": "wxcf0727a7c78b501e",
"navigateToMiniProgramAppIdList" : [ "wxacd9f8cc3480d29e" ], "navigateToMiniProgramAppIdList" : [ "wxacd9f8cc3480d29e" ],
"setting" : { "setting" : {
"urlCheck" : true, "urlCheck" : true,
......
...@@ -1063,6 +1063,33 @@ ...@@ -1063,6 +1063,33 @@
"path": "orderdetails"//订单详情 "path": "orderdetails"//订单详情
} }
] ]
},
//领队报账
{
"root": "pages/teamLeader",
"pages": [
{
"path": "list",
"style":{
"navigationBarTitleText" : "团队",
"navigationStyle": "custom"
}
},
{
"path": "index",
"style":{
"navigationBarTitleText" : "统计",
"navigationStyle": "custom"
}
},
{
"path": "reimbursementInfor",
"style":{
"navigationBarTitleText" : "报账",
"navigationStyle": "custom"
}
}
]
} }
], ],
......
...@@ -609,8 +609,8 @@ ...@@ -609,8 +609,8 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
margin-left: 5px; margin-left: 5rpx;
margin-right: 5px; margin-right: 5rpx;
} }
.section>.item>.day>.day-list { .section>.item>.day>.day-list {
......
...@@ -543,8 +543,8 @@ ...@@ -543,8 +543,8 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
margin-left: 5px; margin-left: 5rpx;
margin-right: 5px; margin-right: 5rpx;
} }
.section>.item>.day>.day-list { .section>.item>.day>.day-list {
......
...@@ -170,8 +170,8 @@ ...@@ -170,8 +170,8 @@
day: 0, //多少晚 day: 0, //多少晚
priceStauts: [], //价格状态 priceStauts: [], //价格状态
lastNot: [0, 10], //前置的无房操作 lastNot: [0, 10], //前置的无房操作
userDefaultDate: "", userDefaultDate: "",
scrollTop:0, scrollTop:0,
scrollHeight:0 scrollHeight:0
}; };
}, },
...@@ -191,16 +191,16 @@ ...@@ -191,16 +191,16 @@
this.start = this.setDefaultDate(this.userDefaultDate); this.start = this.setDefaultDate(this.userDefaultDate);
} }
this.priceStauts = this.initPrice(); this.priceStauts = this.initPrice();
setTimeout(()=>{ setTimeout(()=>{
const that =this const that =this
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
query.selectAll('.sign-scroll').boundingClientRect((rects) => { query.selectAll('.sign-scroll').boundingClientRect((rects) => {
that.scrollHeight = rects[0].height that.scrollHeight = rects[0].height
that.calcDefautlOffset() that.calcDefautlOffset()
}).exec(); }).exec();
},200) },200)
}, },
watch: { watch: {
defaultDate(newVal) { defaultDate(newVal) {
this.userDefaultDate = newVal; this.userDefaultDate = newVal;
...@@ -248,15 +248,15 @@ ...@@ -248,15 +248,15 @@
} }
}, },
}, },
methods: { methods: {
calcDefautlOffset(){ calcDefautlOffset(){
const that =this const that =this
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
query.selectAll('.select-style').boundingClientRect((rects) => { query.selectAll('.select-style').boundingClientRect((rects) => {
const top = rects[0].top-(that.scrollHeight) - 20 const top = rects[0].top-(that.scrollHeight) - 20
that.scrollTop = top>0?top:0 that.scrollTop = top>0?top:0
}).exec(); }).exec();
}, },
initPrice() { initPrice() {
//年份 //年份
...@@ -694,8 +694,8 @@ ...@@ -694,8 +694,8 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
margin-left: 5px; margin-left: 5rpx;
margin-right: 5px; margin-right: 5rpx;
} }
.section>.item>.day>.day-list { .section>.item>.day>.day-list {
......
...@@ -715,8 +715,8 @@ ...@@ -715,8 +715,8 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
margin-left: 5px; margin-left: 5rpx;
margin-right: 5px; margin-right: 5rpx;
} }
.section>.item>.day>.day-list { .section>.item>.day>.day-list {
......
...@@ -711,8 +711,8 @@ ...@@ -711,8 +711,8 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
margin-left: 5px; margin-left: 5rpx;
margin-right: 5px; margin-right: 5rpx;
} }
.section>.item>.day>.day-list { .section>.item>.day>.day-list {
......
<style lang="scss" scoped>
@import url("@/asset/css/flex.css");
.currencyTitle{
position: relative;
font-size: 32rpx;
padding: 30rpx 0;
}
.Clear{
position: absolute;
right: 30rpx;
top: 30rpx;
}
.currencyList{
flex-wrap: wrap;
}
.currency-center{
width: 150rpx;
padding: 8rpx 20rpx;
border-radius: 30rpx;
border: 1px solid #fff;
color: #000;
background: #cccc;
margin: 0 20rpx 10rpx 20rpx;
}
.currency-center.active{
border-color: #3F82DD;
background: #D3E5FD;
color: #3F82DD;
}
.currencySure{
padding: 0 20rpx;
margin-top: 80rpx;
}
.currencySure view{
background: #257BF2;
border-radius: 80rpx;
line-height: 80rpx;
font-size: 32rpx;
color: #fff;
}
</style>
<template>
<u-popup mode="bottom" border-radius="20"
:popup="false"
v-model="currencyVisible" :maskCloseAble="true"
length="auto" :safeAreaInsetBottom="true"
@close="popupCurrency" :z-index="9999">
<view class="column">
<view class="currencyTitle text-center">币种
<u-icon class="Clear" name="close" color="#A1A1A1" size="40" @click="close" />
</view>
<view class="currencyList row">
<view v-for="(item,index) in currencyList" :key="index"
class="currency-center text-center"
:class="[item.id==newCurrent?'active':'']"
@click="newCurrent=item.id">{{ item.name }}</view>
</view>
<view class="currencySure">
<view class="text-center" @click="popupCurrency">确定</view>
</view>
</view>
</u-popup>
</template>
<script>
export default {
props:['current','currencyList'],
data() {
return {
currencyVisible: true,
newCurrent: 1,
}
},
watch: {
current:{
handler(newVal,oldVal){
this.newCurrent = newVal
},
immediate:true,
}
},
mounted() {
this.currencyVisible = true
},
methods: {
close(){
this.currencyVisible = false
this.$emit('close')
},
popupCurrency(){
this.$emit('change',this.newCurrent)
},
}
}
</script>
\ No newline at end of file
<style lang="scss" scoped>
@import url("@/asset/css/flex.css");
.editorBox{
background: #fff;
border-radius: 8rpx;
}
.Title{
font-size: 32rpx;
color: #295EEB;
}
.textareaBox textarea{
border: 1px solid #ddd;
height: 200rpx;
}
.SureBox{
font-size: 28rpx;
border-top: 1px solid #F2F2F2;
}
.SureBox view:last-child{
color: #295EEB;
}
.SureBox view:first-child{
border-right: 1px solid #ddd;
color: #8C8C8C;
}
</style>
<template>
<u-popup mode="center" border-radius="20"
:popup="false"
v-model="currencyVisible" :maskCloseAble="true"
length="80%" :safeAreaInsetBottom="true"
@close="close" :z-index="9999">
<view class="editorBox">
<view class="Title text-center PY30">变更{{ title }}</view>
<view class="textareaBox row PX40">
<textarea class="PA20 flex1" placeholder-style="color:#A1A1A1" v-model="textarea" :placeholder="`请输入变更${title}名`"/>
</view>
<view class="SureBox row MT40">
<view class="flex1 PY20 text-center" @click="close">取消</view>
<view class="flex1 PY20 text-center" @click="changeSure">确定</view>
</view>
</view>
</u-popup>
</template>
<script>
export default {
props:['title'],
data() {
return {
currencyVisible: true,
textarea: '',
}
},
watch: {
title:{
handler(newVal,oldVal){
},
deep: true,
immediate:true,
}
},
mounted() {
this.currencyVisible = true
},
methods: {
close(){
this.currencyVisible = false
this.$emit('close')
},
changeSure(){
if(this.textarea) {
this.$emit('change',this.textarea)
this.currencyVisible = false
}else uni.showToast({
title: `请输入变更${this.title}名`,
icon: 'none'
})
},
}
}
</script>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<style lang="scss" scoped>
@import url("@/asset/css/flex.css");
.List{
background: #fff;
padding: 30rpx 20rpx 10rpx 20rpx;
border-radius: 8rpx;
}
.custom-radio {
transform: scale(.7);
margin-right: 5px;
}
</style>
<template>
<u-popup mode="center" border-radius="20"
:popup="false"
v-model="currencyVisible" :maskCloseAble="true"
length="80%" :safeAreaInsetBottom="true"
@close="close" :z-index="9999">
<scroll-view :scroll-y="true" :enable-back-to-top="true" :enable-flex="true"
style="max-height: 60vh;">
<view class="List column">
<radio-group @change="radioChange">
<label class="row items-center justify-center MB20"
v-for="(item, index) in list" :key="item.value">
<view>
<radio :value="item.id" :checked="item.id == newCurrent"
color="#295EEB"
borderColor="#333"
class="custom-radio"/>
</view>
<view class="flex1">{{item.name}}</view>
</label>
</radio-group>
</view>
</scroll-view>
</u-popup>
</template>
<script>
export default {
props:['current','list'],
data() {
return {
currencyVisible: true,
newCurrent: 0,
}
},
watch: {
current:{
handler(newVal,oldVal){
this.newCurrent = newVal
},
immediate:true,
},
list:{
handler(newVal,oldVal){
},
deep: true,
immediate:true,
}
},
mounted() {
this.currencyVisible = true
},
methods: {
close(){
this.currencyVisible = false
this.$emit('close')
},
radioChange(value){
this.$emit('change',Number(value.detail.value))
},
}
}
</script>
\ No newline at end of file
<template>
<view class="upImg row justify-center items-center" @click="chooseImg">
<u-icon name="plus" color="#5B5B5B" size="42"/>
</view>
</template>
<script>
export default {
props: [],
components: { },
data() {
return {
}
},
onLoad(options) {
},
onShow() {
},
mounted() {
},
methods: {
chooseImg() {
let that = this;
uni.chooseImage({
count: 1, //默认9
sizeType: ["original", "compressed"], //可以指定是原图还是压缩图,默认二者都有
sourceType: ["album"], //从相册选择
success: function (res) {
wx.getFileSystemManager().readFile({
filePath: res.tempFilePaths[0],
encoding: "base64", //编码格式
success: (ans) => {
uni.showLoading({
title: "上传中",
});
that.upFile(res.tempFilePaths[0], (uploadRes) => {
let BusinessLicense = JSON.parse(
uploadRes.data
).data;
let infor = {
url: '',
name: ''
}
const tempFilePath = BusinessLicense;
infor.name = tempFilePath.substring(tempFilePath.lastIndexOf('/') + 1);
infor.url = BusinessLicense
console.log('图片名称:');
console.log("infor", infor);
that.$emit('onSuccess', infor);
},err=>{
uni.hideLoading()
});
console.log("res.tempFilePaths[0]",res.tempFilePaths[0]);
},
});
},
});
},
//图片上传
upFile(filePath,resCall) {
let that = this;
let MallBaseId = uni.getStorageSync("mall_UserInfo").MallBaseId ? uni.getStorageSync("mall_UserInfo").MallBaseId : 1;
let action = this.host2 + '/api/File/UploadTencent?MallBaseId=' + MallBaseId
uni.uploadFile({
url: action,
filePath: filePath,
name: 'file',
formData: {
user: 'tesdt'
},
success: (uploadFileRes) => {
if (uploadFileRes.statusCode == 200) {
uni.hideLoading()
resCall(uploadFileRes);
}else{
wx.showToast({
title: uploadFileRes.message,
icon: 'none',
duration: 1000
})
}
},
fail: function(err) {
console.log(err)
wx.showToast({
title: '上传失败!'+JSON.stringify(err),
icon: 'none',
duration: 1000
})
}
});
},
}
}
</script>
<style lang="scss" scoped>
@import url("@/asset/css/flex.css");
.upImg{
width: 208rpx;
height: 208rpx;
border-radius: 10rpx;
border: 1rpx solid #ededed;
}
</style>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -682,8 +682,8 @@ ...@@ -682,8 +682,8 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
margin-left: 5px; margin-left: 5rpx;
margin-right: 5px; margin-right: 5rpx;
} }
.section>.item>.day>.day-list { .section>.item>.day>.day-list {
......
...@@ -120,6 +120,12 @@ ...@@ -120,6 +120,12 @@
<image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Upload/Goods/638749520367368328.png" style="width: 70rpx; height: 70rpx" mode="widthFix"></image> <image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Upload/Goods/638749520367368328.png" style="width: 70rpx; height: 70rpx" mode="widthFix"></image>
<Text style="margin-top: 10rpx;font-size: 24rpx;">领券中心</Text> <Text style="margin-top: 10rpx;font-size: 24rpx;">领券中心</Text>
</view> </view>
<!-- #ifdef MP-DI -->
<view v-if="b2b_user_info&&b2b_user_info.erpBaseInfo&&b2b_user_info.erpBaseInfo.employeeId" class="order_bar_item" style="margin-top: 0;" @click="goUrl('/pages/teamLeader/list')">
<image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Upload/Goods/638868940277617941.png" style="width: 70rpx; height: 70rpx" mode="widthFix"></image>
<Text style="margin-top: 10rpx;font-size: 24rpx;">领队报账</Text>
</view>
<!-- #endif -->
</view> </view>
</view> </view>
</view> </view>
......
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