Commit 4848750c authored by 贺世双's avatar 贺世双

调整app

parent 789b4d77
......@@ -81,6 +81,16 @@
let ua = window.navigator.userAgent.toLowerCase() //判断浏览器类型, 包含浏览器类型、版本、操作系统类型、浏览器引擎类型等信息
return ua.match(/MicroMessenger/i) == 'micromessenger'
},
//获取底部Tab菜单索引 name: 用于识别页面索引的唯一标识,如页面路径为"pages/index/index", 则name取index
getTabIndex(name) {
let tabIndex = 0
this.globalData.tabList.map( (tab, idx) => {
if(tab.pagePath.includes(name)){
tabIndex = idx
}
})
return tabIndex
}
}
}
</script>
......
......@@ -143,6 +143,21 @@ export function saveAppAbnormalEvent(data) {
return Request( `/api/entry/{mini}/m-action/saveAppAbnormalEvent`,data );
}
//明细签收:查询支架货物明细
export function getTbuOrderPodSingDetailList(data) {
return Request( `/api/entry/{mini}/m-action/getTbuOrderPodSingDetailList`,data );
}
//整单签收操作按钮
export function getOrderPodAllSign(data) {
return Request( `/api/entry/{mini}/m-action/getOrderPodAllSign`,data );
}
//支架明细签收操作按钮
export function getOrderPodDetailSign(data) {
return Request( `/api/entry/{mini}/m-action/getOrderPodDetailSign`,data );
}
// 查询货量明细
// OM模式
......
......@@ -32,7 +32,7 @@
<bs-customCell label="车牌号 :" :value="propData.truck_no" labelCol="2" wrapCol="6" />
<bs-customCell label="回单数量 :" :value="propData.pod_count" labelCol="2.5" wrapCol="6" />
</view>
<view class="flex_cen flex_center orderItemButtonGroup" v-if="propData.sign_status != '正常签收' && propData.sign_status != '异常签收'">
<view class="flex_cen flex_center orderItemButtonGroup" v-if="propData.confirm_status != 'CONFIRMED'">
<button class="flex_cen flex_center" @click="onDetailPodSign()">明细上传</button>
<button class="flex_cen flex_center" @click="onAllPodSign()">整单上传</button>
......@@ -54,9 +54,9 @@
methods: {
//跳转明细签收界面
onDetailPodSign() {
getApp().globalData.changeShippingDate = this.propData
getApp().globalData.orderDetailPodSign = this.propData
uni.navigateTo({
url: `/subpkg/changeShippingDate/changeShippingDate`,
url: `/subpkg/orderAllPodSign/orderDetailPodSign`,
})
},
//跳转整单签收界面
......
......@@ -10,13 +10,7 @@
"path": "pages/login/login",
"style": {
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"disableScroll": true
}
}, {
"path": "pages/user/user",
"style": {
"navigationBarTitleText": "个人中心",
"navigationBarTitleText": "TMS运输系统",
"enablePullDownRefresh": false,
"disableScroll": true
}
......@@ -34,6 +28,14 @@
"navigationBarTitleText": "承运商",
"enablePullDownRefresh": false
}
},
{
"path": "pages/user/user",
"style": {
"navigationBarTitleText": "个人中心",
"navigationBarBackgroundColor": "#005BB5",
"enablePullDownRefresh": false
}
}],
"subPackages": [{
"root": "subpkg",
......@@ -149,6 +151,13 @@
"navigationBarTitleText": "委托单",
"enablePullDownRefresh": false
}
},
{
"path": "orderAllPodSign/orderDetailPodSign",
"style": {
"navigationBarTitleText": "明细签收",
"enablePullDownRefresh": false
}
}
]
}],
......@@ -170,23 +179,6 @@
"selectedColor": "#2E75E6",
"backgroundColor": "#fff",
"list": [
/*{
"pagePath": "pages/order/order",
"text": "订单",
"iconPath": "static/img/tabbar/order.png",
"selectedIconPath": "static/img/tabbar/order-active.png"
},{
"pagePath": "pages/order/shipment",
"text": "运单",
"iconPath": "static/img/tabbar/shipment.png",
"selectedIconPath": "static/img/tabbar/shipment-active.png"
},
{
"pagePath": "pages/order/order_pod",
"text": "回单",
"iconPath": "static/img/tabbar/receivebill.png",
"selectedIconPath": "static/img/tabbar/receivebill-active.png"
},*/
{
"pagePath": "pages/dirverMenu/dirverMenu"
......@@ -195,12 +187,10 @@
},
{
"pagePath": "pages/user/user",
"text": "我的",
"iconPath": "static/img/tabbar/user.png",
"selectedIconPath": "static/img/tabbar/user-active.png"
"pagePath": "pages/user/user"
}
]
}
}
<template>
<view class="park_content">
<view class="park_header">
<image class="header-bg" src="../../static/img/bg/souye.png">
</image>
</view>
<view class="shipment_code" style=" display: flex; align-items: center;padding-top:10px;">
<span class="toutitle">运输执行</span>
<!-- <image class="header-bg" src="../../static/img/bg/souye.png">
</image> -->
<image class="header-bg" src="../../static/img/bg/trina_dl.png"></image>
</view>
<view class="section_2 flex-col">
<text class="text_2">运输执行</text>
<view class="park_body flex_sb flex_wrap">
<view class="park_card" v-for="(item,index) in cardList" :key="index" @click="openCard(item.path)">
<image class="image_2" referrerpolicy="no-referrer" :src="item.src" />
<view class="card_title">{{item.title}}</view>
</view>
</view>
</view>
<customTabBar tabIndex="0" />
</view>
</template>
......@@ -114,32 +115,40 @@
.park_header {
background-color: #E9EEF6;
height: 288rpx;
height: 450rpx;
.header-bg {
width: 100%;
height: 100%;
margin-top: -20px;
}
}
.section_2 {
background-color: rgba(255, 255, 255, 1);
border-radius: 24px 24px 0px 0px;
position: relative;
margin-top: -29px;
padding: 5px 2px 130px 2px;
}
.text_2 {
overflow-wrap: break-word;
color: rgba(89, 89, 89, 1);
font-size: 38rpx;
font-family: PingFangSC-Medium;
font-weight: 500;
text-align: left;
white-space: nowrap;
line-height: 44px;
margin-right: 201px;
overflow-wrap: break-word;
color: rgba(89, 89, 89, 1);
font-size: 18px;
font-family: PingFangSC-Medium;
font-weight: 550;
text-align: left;
white-space: nowrap;
line-height: 44px;
margin-right: 560px;
margin-left: 10px;
}
.park_body {
padding: 0 21rpx;
display: flex;
margin-top: -12px;
.park_card {
margin-top: 25rpx;
width: 310rpx;
......@@ -149,7 +158,7 @@
justify-content: center;
align-items: center;
flex-direction: column;
border-radius: 8rpx;
border-radius: 10px;
.image_5 {
width: 199rpx;
......
<template>
<view class="park_content">
<view class="park_header">
<image class="header-bg" src="../../static/img/bg/souye.png">
</image>
</view>
<view class="shipment_code" style=" display: flex; align-items: center;padding-top:10px;">
<span class="toutitle">运输执行</span>
<!-- <image class="header-bg" src="../../static/img/bg/loginBg.png">
</image> -->
<image class="header-bg" src="../../static/img/bg/trina_dl.png"></image>
</view>
<view class="section_2 flex-col">
<text class="text_2">运输执行</text>
<view class="park_body flex_sb flex_wrap">
<view class="park_card" v-for="(item,index) in cardList" :key="index" @click="openCard(item.path)">
<image class="image_2" referrerpolicy="no-referrer" :src="item.src" />
<view class="card_title">{{item.title}}</view>
</view>
</view>
</view>
<customTabBar tabIndex="0" />
</view>
</template>
......@@ -111,32 +112,39 @@
.park_header {
background-color: #E9EEF6;
height: 288rpx;
height: 450rpx;
.header-bg {
width: 100%;
height: 100%;
margin-top: -20px;
}
}
.section_2 {
background-color: rgba(255, 255, 255, 1);
border-radius: 24px 24px 0px 0px;
position: relative;
margin-top: -29px;
padding: 5px 2px 130px 2px;
}
.text_2 {
overflow-wrap: break-word;
color: rgba(89, 89, 89, 1);
font-size: 38rpx;
font-family: PingFangSC-Medium;
font-weight: 500;
text-align: left;
white-space: nowrap;
line-height: 44px;
margin-right: 201px;
overflow-wrap: break-word;
color: rgba(89, 89, 89, 1);
font-size: 18px;
font-family: PingFangSC-Medium;
font-weight: 550;
text-align: left;
white-space: nowrap;
line-height: 44px;
margin-right: 560px;
margin-left: 10px;
}
.park_body {
padding: 0 21rpx;
display: flex;
margin-top: -12px;
.park_card {
margin-top: 25rpx;
width: 310rpx;
......@@ -146,7 +154,7 @@
justify-content: center;
align-items: center;
flex-direction: column;
border-radius: 8rpx;
border-radius: 10px;
.image_5 {
width: 199rpx;
......
......@@ -208,8 +208,8 @@
getApp().globalData.tabList = [{
"pagePath": "pages/carrierMenu/carrierMenu",
"text": "承运商",
"iconPath": "../../static/img/tabbar/receivebill.png",
"selectedIconPath": "../../static/img/tabbar/receivebill-active.png"
"iconPath": "../../static/img/tabbar/shipment.png",
"selectedIconPath": "../../static/img/tabbar/shipment-active.png"
},
{
"pagePath": "pages/user/user",
......
......@@ -32,6 +32,7 @@
</u-cell-group>
</view>
<button class="exit-login flex_cen" @click="exitLog">退出登录</button>
<customTabBar :tabIndex="getTabIndex()" />
</view>
</template>
......@@ -46,10 +47,13 @@
}
},
onLoad: function(options) {
this.getUserInfo()
//this.getUserInfo()
},
methods: {
//获取Tab菜单索引
getTabIndex() {
return getApp().getTabIndex('user')
},
//获取用户信息
getUserInfo() {
userMobileOperation('getUserInfo').then(res => {
......@@ -176,6 +180,7 @@
border-radius: 48rpx;
border: 2rpx solid #8C8C8C;
line-height: 96rpx;
margin-bottom:40px
}
}
</style>
......@@ -53,25 +53,31 @@
<u--form :model="formData" :rules="rules" ref="myForm" errorType='none'>
<view class="basic-info">
<u-form-item prop="sign_time" required label="签收时间" labelWidth="35%" borderBottom>
<view @click="onVisibleDate('sign_time')">
<u-form-item prop="time" label="签收时间" labelWidth="35%" :required="disableSignQ()" borderBottom>
<view @click="onVisibleDate('time')">
<u-input :disabledColor="'#ffffff'" disabled border="none" readonly placeholder="请选择签收时间"
:value="convertTime(formData.sign_time)" />
:value="convertTime(formData.time)" />
</view>
</u-form-item>
<u-form-item prop="m_vsl_voy" label="应签收数量" labelWidth="25%" borderBottom>
<u-input :disabledColor="'#ffffff'" border="none" v-model="formData.m_vsl_voy" />
<u-form-item prop="sign_status" required label="签收状态" labelWidth="35%" borderBottom>
<view @click="onVisible('sign_status')">
<u-input border="none" readonly placeholder="请选择签收状态" :value="viewEnums[formData.sign_status]" />
</view>
</u-form-item>
<u-form-item prop="plan_qty" label="应签收数量" labelWidth="35%" borderBottom>
<u-input :disabledColor="'#cecece'" disabled border="none" v-model="formData.plan_qty" />
</u-form-item>
<u-form-item prop="f_vsl_voy" label="签收数量" labelWidth="35%" borderBottom>
<u-input :disabledColor="'#ffffff'" border="none" v-model="formData.f_vsl_voy" />
<u-form-item prop="sign_qty" label="签收数量" :required="disableSignQ()" labelWidth="35%" borderBottom>
<u-input :disabledColor="'#cecece'" :disabled="disableSign()" border="none" v-model="formData.sign_qty" />
</u-form-item>
<u-form-item prop="remark" label="备注" :required="diableRemark()" labelWidth="35%" borderBottom>
<u-input :disabledColor="'#ffffff'" border="none" v-model="formData.remark" />
</u-form-item>
</view>
</u--form>
<!-- 上传图片 -->
<view class="uploader-img">
<bs-uploader ref="myUploadImg" :required="requiredStatus"
<bs-uploader ref="myUploadImg" :required="true"
uploadTitle="上传图片" />
</view>
</view>
......@@ -82,7 +88,7 @@
</view>
<!-- 类型选择动作面板 -->
<bs-selectPopup :popTitle="popTitle" :selectEnum="optionEnums" :visible="visible2" @onVisible="onVisible"
<bs-selectPopup :popTitle="popTitle" :selectEnum="optionEnums" :visible="visible" @onVisible="onVisible"
@onConfirm="onConfirmPicker" />
<!-- 时间选择 -->
<bs-datetimePicker ref="myTimePicker" :visible="showPopup" @onVisible="onVisibleDate"
......@@ -91,8 +97,7 @@
</template>
<script>
import {queryShipownerAll, updateTmBlEvent,
OMOrderDetail, OROrderDetail } from '../../api/apiList.js'
import { getOrderPodAllSign } from '../../api/apiList.js'
import { formatGMT } from '../../utils/util'
export default {
name: 'orderAllPodSign',
......@@ -104,14 +109,16 @@
podList: '', //订单列表,当默认为{}时,小程序会自动转结构
rows: [], //当前展开面板
formData: {
sign_time: "", //签收时间
time: "", //签收时间
sign_qty: "", //签收数量
plan_qty: "", //应签收数量
sign_status: "", //签收状态
remark: "", //备注
},
rules: {
'sign_time': { required: true },//签收时间
'time': { required: true },//签收时间
'sign_qty': { required: true }, //签收数量
'sign_status': { required: true }, //签收状态
},
showPopup: false, //时间选择
visibleKey: '', //当前显示字段的key
......@@ -121,23 +128,44 @@
viewEnums:[],//船公司枚举视图
searchValue: "", //搜索值--船公司
selectEnum:[],//接受返回值
execute_bu:"",
}
},
onLoad(options) {
const data = getApp().globalData.orderAllPodSign
if(data.execute_bu=='TBU'){
this.formData.plan_qty = data.pod_count;
this.formData.sign_qty = data.pod_count;//签收数量
}
this.execute_bu= data.execute_bu
const isEmpty = !Object.keys(data).length
// this.podList.sp__local_etd = data.sp__local_etd==""?"":formatGMT(data.sp__local_etd, 'D') ;
// this.podList.sp__local_atd = data.sp__local_atd==""?"":formatGMT(data.sp__local_atd, 'D');
// this.podList.sp__local_eta = data.sp__local_eta==""?"":formatGMT(data.sp__local_eta, 'D') ;
// this.podList.sp__local_ata = data.sp__local_ata==""?"":formatGMT(data.sp__local_ata, 'D');
this.podList=data;
this.isEmpty = isEmpty
if (!isEmpty) {
this.activeNames = [data.id]
}
},
methods: {
//判断组件还是直接是否必填
disableSign(){
if(this.execute_bu=='TBU'){
return true;
}else{
return false;
}
},
//判断组件还是直接是否必填
disableSignQ(){
if(this.execute_bu!='TBU'){
return true;
}else{
return false;
}
},
//判断异常签收必填
diableRemark(){
if(this.formData.sign_status=="异常签收"){
return true;
}
},
showProcess() {
this.visible = true
},
......@@ -161,60 +189,79 @@
this.selectEnum = []
this.searchValue =''
},
//类型选择
async onVisible(type) {
if (this.visible2) {
this.visible2 = false
} else {
let optionEnums = []
let setKey = 'viewEnums' //要设置的字段Key
if (type == 'multimodal_transport') {
setKey = 'genderViewEnums'
optionEnums = [{ label: '陆改铁含短驳', value: 'land_to_railway' },
{ label: '陆改水含短驳', value: 'land_to_water' },
{ label: '全程拖车', value: 'road' },
{ label: '第六港', value: 'sixth_port' },
{ label: '内装', value: 'interior' }]
} if (type =="shipowner") {
const res = await queryShipownerAll()
optionEnums = res.data.data.datas
}
this.setViewEnums(optionEnums, setKey)
this.optionEnums = optionEnums
this.visibleKey = type
this.visible2 = true
}
},
// 提交表单数据
onSubmitForm() {
const rows = getApp().globalData.orderAllPodSign;
this.formData.rows= rows;
this.formData.bl_event_code="booking_confirmed";
var baseData = {
"aux": {
"rows":rows,
"aux":this.formData,
},
}
//订舱委托确认操作
updateTmBlEvent(baseData).then(res => {
const row = getApp().globalData.orderAllPodSign;//回单表数据
if (this.formData.sign_status==null || this.formData.sign_status=="") {
uni.showToast({
title: "签收状态必填",
icon: 'none',
duration: 2000
})
return;
}else{
if(this.formData.sign_status=="异常签收"){
if (this.formData.remark==null || this.formData.remark=="") {
uni.showToast({
title: "异常签收时备注必填",
icon: 'none',
duration: 2000
})
return;
}
}
}
//验证金额
var signQty =uni.$u.test.number(this.formData.sign_qty)
if (!signQty && this.execute_bu!='TBU') {
uni.showToast({
title: "请填写正确的金额",
icon: 'none',
duration: 2000
})
return;
}
const imgInstance = this.$refs.myUploadImg //获取图片上传实例
imgInstance.uploadImage(images => {
this.formData.files=images;//图片或者文件
this.formData.time= this.convertTimeHh24(this.formData.time)
var baseData = {
"aux": {
"row":row,
"aux":this.formData,//签收数据
},
}
//整单签收
getOrderPodAllSign(baseData).then(res => {
if (res.data.data.messageType === 'success') {
uni.showToast({
title: '确认成功!',
title: '操作成功!',
duration: 1000
})
setTimeout(() => {
uni.navigateBack()
}, 1500)
}
})
})
})
},
//上报类型选择
async onVisible(type) {
if (this.visible) { //关闭
this.visible = false
} else {
let optionEnums = []
let setKey = 'viewEnums' //要设置的字段Key
if(type=='sign_status'){
setKey = 'viewEnums' //要设置的字段Key
optionEnums = [{ label: '正常签收', value: '正常签收' },
{ label: '异常签收', value: '异常签收' }]
}
this.setViewEnums(optionEnums, setKey)
this.optionEnums = optionEnums
this.visibleKey = type
this.visible = true
}
},
//设置显示枚举
setViewEnums(optionEnums, key) {
......@@ -249,6 +296,16 @@
this.formData[key] = value
}
},
//页面展示时间戳转换为年月日时分秒
convertTimeHh24(timestamp) {
if (!timestamp) return
const nowDate = new Date(timestamp)
var year = nowDate.getFullYear();
var month = nowDate.getMonth() < 10 ? '0' + (nowDate.getMonth() + 1) : nowDate.getMonth() + 1;
var date = nowDate.getDate();
return `${year}-${ month}-${date} 00:00:00`
},
}
}
</script>
......
This diff is collapsed.
......@@ -24,6 +24,7 @@
<script>
import { getOrderPodList, getOrderPodSingList} from '../../api/apiList.js'
import { formatGMT } from '../../utils/util'
export default {
data() {
return {
......@@ -74,7 +75,21 @@
getOrderPodList(reqData).then(res=>{
uni.stopPullDownRefresh()
const data = res.data.data.datas
if (data.length > 0) {
if (data.length > 0) {
data.map(item => { //格式化时间
if(item.sp__local_etd){
item.sp__local_etd = formatGMT(item.sp__local_etd, 'D') ;
}
if(item.sp__local_atd){
item.sp__local_atd = formatGMT(item.sp__local_atd, 'D') ;
}
if(item.sp__local_eta){
item.sp__local_eta = formatGMT(item.sp__local_eta, 'D') ;
}
if(item.sp__local_ata){
item.sp__local_ata = formatGMT(item.sp__local_ata, 'D') ;
}
})
this.orderPod = this.orderPod.concat(data)
this.pageNum += 1
this.loadMore = true
......@@ -84,7 +99,21 @@
getOrderPodSingList(reqData).then(res=>{
uni.stopPullDownRefresh()
const data = res.data.data.datas
if (data.length > 0) {
if (data.length > 0) {
data.map(item => { //格式化时间
if(item.sp__local_etd){
item.sp__local_etd = formatGMT(item.sp__local_etd, 'D') ;
}
if(item.sp__local_atd){
item.sp__local_atd = formatGMT(item.sp__local_atd, 'D') ;
}
if(item.sp__local_eta){
item.sp__local_eta = formatGMT(item.sp__local_eta, 'D') ;
}
if(item.sp__local_ata){
item.sp__local_ata = formatGMT(item.sp__local_ata, 'D') ;
}
})
this.orderPod = this.orderPod.concat(data)
this.pageNum += 1
this.loadMore = true
......
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