This commit is contained in:
weipengfei 2023-08-30 11:39:41 +08:00
commit 16805da789
6 changed files with 268 additions and 225 deletions

28
App.vue
View File

@ -5,6 +5,18 @@
// #endif // #endif
export default { export default {
onLaunch: async function() { onLaunch: async function() {
// let noticeArr = []
// jpushModule.addNotificationListener(res => {
// if (!noticeArr.includes(res.messageID)) {
// const audioContext = uni.createInnerAudioContext()
// //
// audioContext.src = `/static/audio/order.mp3`;
// // console.log(res.messageID)
// audioContext.play()
// noticeArr.push(res.messageID)
// console.log("app")
// }
// })
console.log('App Launch') console.log('App Launch')
this.$store.dispatch('initConfig'); this.$store.dispatch('initConfig');
try { try {
@ -20,22 +32,14 @@
onShow: function() { onShow: function() {
const audioContext = uni.createInnerAudioContext() const audioContext = uni.createInnerAudioContext()
// //
audioContext.src = './static/mp3/order.mp3' audioContext.src = '/static/mp3/order.mp3'
let noticeArr = []
// //
//#ifdef APP-PLUS //#ifdef APP-PLUS
jpushModule.addNotificationListener(res => { jpushModule.addNotificationListener(res => {
if (!noticeArr.includes(res.messageID)) { if (res.notificationEventType == 'notificationOpened') return
console.log(res.messageID)
audioContext.play() audioContext.play()
noticeArr.push(res.messageID) uni.vibrateLong();
console.log("app的") console.log("app的监听")
uni.vibrateLong({
success: function() {
console.log('success');
}
});
}
}) })
// //
// Updater.update({ // Updater.update({

View File

@ -1,19 +1,24 @@
import oahttp from "@/utils/logistics.js"; import oahttp from "@/utils/oahttp.js";;
/** /**
* 车辆列表 * 车辆列表
*/ */
export const getvehicleList = (data) => oahttp.get('/courierLstData', data) // https://worker-task.lihaink.cn/api/vehicle/addCar
export const getvehicleListApi = (data) => oahttp.get('/vehicle/vehicleIndex', data)
// 车辆详情 // 车辆详情
export const getvehicleDetail = (data) => oahttp.get('/courierLstData', data) export const getvehicleDetailApi = (data) => oahttp.get('/courierLstData', data)
// 车辆上传
export const upVehicleApi = (data) => oahttp.post('/vehicle/addCar', data)
// 申请用车
export const applycarApi = (data) => oahttp.post('/vehicle/addCar', data)
// 显示轨迹 // 显示轨迹
export const locusApi = (data) => oahttp.get('/courierLstData', data) export const locusApi = (data) => oahttp.get('/courierLstData', data)
// 签约列表 // 签约列表
export const getAgencyList = (data) => oahttp.get('/courierLstData', data) export const getAgencyListApi = (data) => oahttp.get('/courierLstData', data)
// 签约公司详情 // 签约公司详情
export const getAgencyDetail = (data) => oahttp.get('/courierLstData', data) export const getAgencyDetailApi = (data) => oahttp.get('/courierLstData', data)
// 车辆租赁 // 车辆租赁
export const leaseApi = (data) => oahttp.get('/courierLstData', data) export const leaseApi = (data) => oahttp.post('/vehicle/setContractByTownCompany', data)
// 生成合同 // 生成合同
export const contractApi = (data) => oahttp.get('/courierLstData', data) export const contractApi = (data) => oahttp.get('/courierLstData', data)
// 申请驳回 // 申请驳回

View File

@ -6,8 +6,25 @@
class="home_header" class="home_header"
:class="!ApproveList.length > 0 ? 'home_header_no_data' : ''" :class="!ApproveList.length > 0 ? 'home_header_no_data' : ''"
> >
<view style="position: absolute;bottom: 0;left: 0;overflow: hidden;border-radius: 0 0 30rpx 30rpx;"> <view
<hx-lottie :options="options" ref="lottie" style="width: 100vw;height: 440rpx;transform: scale(1.2);background-color: #0122c7;"/> style="
position: absolute;
bottom: 0;
left: 0;
overflow: hidden;
border-radius: 0 0 30rpx 30rpx;
"
>
<hx-lottie
:options="options"
ref="lottie"
style="
width: 100vw;
height: 440rpx;
transform: scale(1.2);
background-color: #0122c7;
"
/>
</view> </view>
<!-- #ifdef APP-PLUS||H5 --> <!-- #ifdef APP-PLUS||H5 -->
<view style="height: var(--status-bar-height)"></view> <view style="height: var(--status-bar-height)"></view>
@ -123,6 +140,7 @@
<!-- <block v-if="myTaskList.length>0"> <!-- <block v-if="myTaskList.length>0">
<taskCard></taskCard> <taskCard></taskCard>
</block> --> </block> -->
<!-- <button @click="test">按钮</button> -->
<view v-if="orderList.length > 0"> <view v-if="orderList.length > 0">
<globalPopup ref="globalPopup"></globalPopup> <globalPopup ref="globalPopup"></globalPopup>
<logistiBriefCard <logistiBriefCard
@ -514,6 +532,7 @@ export default {
transform: translate(-50%, -50%); transform: translate(-50%, -50%);
} }
} }
.head_text { .head_text {
font-size: 33rpx; font-size: 33rpx;
text-overflow: ellipsis; text-overflow: ellipsis;

View File

@ -63,7 +63,7 @@
<view class="btns"> <view class="btns">
<u-button type="primary" @click="showPop=true" style="margin-bottom: 20rpx;width: 100%;" color="#FF7C32" <u-button type="primary" @click="showPop=true" style="margin-bottom: 20rpx;width: 100%;" color="#FF7C32"
text="申请驳回"></u-button> text="申请驳回"></u-button>
<u-button type="primary" text="生成合同" color="#0122C7"></u-button> <u-button type="primary" text="生成合同" @tap="contractFn" color="#0122C7"></u-button>
</view> </view>
<view class=""> <view class="">
<u-modal :show="showPop" @close="showPop=false" @confirm="confirm" :closeOnClickOverlay="true" <u-modal :show="showPop" @close="showPop=false" @confirm="confirm" :closeOnClickOverlay="true"
@ -86,19 +86,36 @@
contractApi, contractApi,
overruleApi overruleApi
} from "@/api/property.js" } from "@/api/property.js"
import {
Toast
} from "../../libs/uniApi"
export default { export default {
data() { data() {
return { return {
dataList: [],
overruleValue: "", overruleValue: "",
showPop: false, showPop: false,
checked: [], checked: [],
carList: [1, 2] carList: [1, 2]
} }
}, },
onLaunch() {
getAgencyDetail().then(res => {
this.dataList = res
})
},
methods: { methods: {
confirm() { confirm() {
console.log(this.overruleValue) // console.log(this.overruleValue)
overruleApi().then(res => {
Toast("操作成功")
this.showPop = false this.showPop = false
})
},
contractFn() {
contractApi().then(res => {
Toast("操作成功")
})
}, },
navTo(url) { navTo(url) {
uni.navigateTo({ uni.navigateTo({
@ -113,11 +130,9 @@
<style lang="scss" scoped> <style lang="scss" scoped>
.date { .date {
padding: 10rpx 28rpx 0; padding: 10rpx 28rpx 0;
} }
.cards { .cards {
margin: 28rpx; margin: 28rpx;
width: 694rpx; width: 694rpx;
background: #ffffff; background: #ffffff;

View File

@ -1,5 +1,36 @@
<template> <template>
<view> <view class="">
<!-- 没有测含量 -->
<view class="noCar" v-if='dataList.length==0'>
<!-- 申请 -->
<view class="" v-if="step==1">
<view class="">
你还没有所属车辆哦,请向镇公司申请用车或使用自有车辆并绑定系统
</view>
<view class="" style="margin: 20rpx 0;">
<u-button @tap="applycarFn" type="primary" style="background-color: #0122C7;border: none;"
class="btn">
申请用车</u-button>
</view>
<view class="">
<u-button @tap="show=true" type="primary" style="background-color: #0122C7;border: none;"
class="btn">
上传自有车辆</u-button>
</view>
<u-modal :show="show" @close="show=false" @confirm="upCarFn" :closeOnClickOverlay="true" title="车辆上传">
<view class="slot-content">
<u--input placeholder="请输入您的车牌号" v-model="carLicense"></u--input>
</view>
</u-modal>
</view>
<!-- 等待 -->
<view class="" v-if='step==2'>
<view class="">
您已上传自用车辆,系统正在审核中,请耐心等待
</view>
</view>
</view>
<view v-else>
<!-- <view class="serch"> <!-- <view class="serch">
<u-search placeholder="输入车牌号进行搜索" :show-action="true" bg-color="white" v-model="keywords" @search="serchFn" <u-search placeholder="输入车牌号进行搜索" :show-action="true" bg-color="white" v-model="keywords" @search="serchFn"
@custom="serchFn"></u-search> @custom="serchFn"></u-search>
@ -111,70 +142,15 @@
你已发起租赁{{newCarNum}}两新车的申请,后台正在为您加急处理中,请稍后~~ 你已发起租赁{{newCarNum}}两新车的申请,后台正在为您加急处理中,请稍后~~
</view> --> </view> -->
</view> </view>
<!--
<view v-else>
<view class="personnel_list" @click="toDetail('/subpkg/property/vehicle_a')">
<view class="cards">
<view class="cards_head">
<text>车牌号</text>
</view>
<view class="cards_content">
<view class="right">
<view class="li">
<text>行驶总里程: </text>
<text> { item.name }</text>
</view>
<view class="li">
<text>本公司签约时间: </text>
<text>{ item.phone }</text>
</view>
<view class="li">
<text>承租公司: </text>
<text> 所属片区 </text>
</view>
<view class="li">
<text>负责人: </text>
<text> 所属片区 </text>
</view>
<view class="li">
<text>联系方式: </text>
<text> 所属片区 </text>
</view>
<view class="li">
<text>所属区域: </text>
<text> 所属片区 </text>
</view>
<view class="li">
<text>承租时间: </text>
<text> 所属片区 </text>
</view>
</view>
</view>
</view>
</view>
</view> -->
<u-modal :show="showPop" @close="showPop=false" @confirm="confirm" :closeOnClickOverlay="true" <u-modal :show="showPop" @close="showPop=false" @confirm="confirm" :closeOnClickOverlay="true"
:title="newcarTit"> :title="`请输入您需要租赁的车辆数量(上限为${dataList[0]})`">
<view class="slot-content"> <view class="slot-content">
<u--input placeholder="请输入内容" type="number" v-model="newCarNum"></u--input> <u--input placeholder="请输入内容" type="number" v-model="newCarNum"></u--input>
</view> </view>
</u-modal> </u-modal>
<!-- <u-modal @close="show=false" @cancel="show=false" @confirm="relieveFn" :show="show" :showCancelButton="true" <!-- <u-modal @close="show=false" @cancel="show=false" @confirm="relieveFn" :show="show" :showCancelButton="true"
:showConfirmButton='true' :content='content'></u-modal> --> :showConfirmButton='true' :content='content'></u-modal> -->
<view class="" v-if='!curNow && dataList.length>0'>
<!-- <view class="add" @click="showPop=true">
<u-icon name="plus-circle" color="#0122C7" size="60"></u-icon>
签约新车
</view> -->
<!-- <mybtn position="position" text="签约" @click="signFn">
<u-icon name="edit-pen-fill" color="white" size="20"></u-icon>
</mybtn> -->
</view> </view>
</view> </view>
@ -184,9 +160,10 @@
<script> <script>
import { import {
getvehicleList, getvehicleListApi,
getAgencyList, getAgencyListApi,
leaseApi leaseApi,
upVehicleApi
} from "@/api/property.js" } from "@/api/property.js"
// import mybtn from "@/components/mybtn/mybtn.vue" // import mybtn from "@/components/mybtn/mybtn.vue"
import { import {
@ -200,10 +177,13 @@
name: "vehicle", name: "vehicle",
data() { data() {
return { return {
step: 1,
applicationList: [1, 1], applicationList: [1, 1],
isNewCheck: true, // isNewCheck: true,
show: false,
carLicense: "",
showPop: false, showPop: false,
dataList: [1, 2, 3], dataList: [],
tabLists: [{ tabLists: [{
name: '未出租', name: '未出租',
}, { }, {
@ -218,10 +198,11 @@
}; };
}, },
onLoad() { onLoad() {
getvehicleList().then(res => { getvehicleListApi().then(res => {
console.log(res)
// this.getvehicleList = res // this.getvehicleList = res
}) })
getAgencyList().then(res => { getAgencyListApi().then(res => {
// this.applicationList=res // this.applicationList=res
}) })
@ -230,18 +211,32 @@
methods: { methods: {
applycarFn() {
this.step = 2
},
upCarFn() {
upVehicleApi({
license: this.carLicense
}).then(res => {
this.show = false
})
console.log(this.carLicense)
},
signFn() { signFn() {
this.toDetail("/subpkg/property/chosseCompany") this.toDetail("/subpkg/property/chosseCompany")
}, },
// serchFn() {
// console.log(this.keywords)
// },
confirm() { confirm() {
if (!this.newCarNum) return if (!this.newCarNum) return
// leaseApi().then(res=>{}) leaseApi({
num: Number(this.newCarNum)
}).then(res => {
this.newCarNum = ""
Toast(res.msg)
})
this.showPop = false this.showPop = false
this.isNewCheck = true
// this.isNewCheck = true
}, },
@ -265,6 +260,11 @@
margin: 28rpx 28rpx 0 28rpx; margin: 28rpx 28rpx 0 28rpx;
} }
.noCar {
// background-color: red;
padding: 50rpx;
}
.info { .info {
display: flex; display: flex;
justify-content: space-around; justify-content: space-around;

View File

@ -22,7 +22,7 @@
<view class="personnel_list" @click="toDetail('/subpkg/property/vehicle')"> <view class="personnel_list" @click="toDetail('/subpkg/property/vehicle')">
<view class="cards"> <view class="cards">
<view class="cards_head"> <view class="cards_head">
<text><!-- <!-- {{datas.}} --> --></text> <text><!-- <!-- {{datas.}} --></text>
</view> </view>
<view class="cards_content"> <view class="cards_content">
<view class="right"> <view class="right">