123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547 |
- <template>
- <view class="wrap">
- <view class="content">
- <view class="row">
- <view class="left">任务编号</view>
- <view>{{detailData.processNo}}</view>
- </view>
- <view class="row">
- <view class="left">货名</view>
- <view>{{detailData.goodsName}}</view>
- </view>
- <view class="row">
- <view class="left">重量</view>
- <view>{{detailData.weight}}</view>
- </view>
- <view class="row">
- <view class="left">发货地址</view>
- <view>{{detailData.sendPrivate}}{{detailData.sendCity}}{{detailData.sendArea}}</view>
- </view>
- <view class="row">
- <view class="left">发货人</view>
- <view>{{detailData.sender}}</view>
- </view>
- <view class="row">
- <view class="left">发货人电话</view>
- <view>{{detailData.senderPhone}}</view>
- </view>
- <view class="row">
- <view class="left">收货地址</view>
- <view>{{detailData.receivePrivate}}{{detailData.receiveCity}}{{detailData.receiveArea}}</view>
- </view>
- <view class="row">
- <view class="left">收货人</view>
- <view>{{detailData.receiver}}</view>
- </view>
- <view class="row">
- <view class="left">收货人电话</view>
- <view>{{detailData.receiverPhone}}</view>
- </view>
- <view class="row">
- <view class="left">发货日期</view>
- <view>{{detailData.deliveryDateStart}}</view>
- </view>
- <view class="row">
- <view class="left">最晚到货日期</view>
- <view>{{detailData.deliveryDateEnd}}</view>
- </view>
- <view class="row">
- <view class="left">合同编号</view>
- <view>{{detailData.contractNo}}</view>
- </view>
- <view class="row">
- <view class="left">运输方式</view>
- <view>{{detailData.tranType}}</view>
- </view>
- </view>
- <view v-if='detailData.tranType=="火运"' class="content">
- <view class="row">
- <view class="left">姓名</view>
- <view>{{detailData.driver}}</view>
- </view>
- <view class="row">
- <view class="left">电话</view>
- <view>{{detailData.driverPhone}}</view>
- </view>
- <view class="row">
- <view class="left">发车日期</view>
- <view>
- <view @click='show1=true'>{{detailData.sendDateStart}}</view>
- <u-picker v-model="show1" mode="time" @confirm='dateChange($event)' :params="params">
- </u-picker>
- </view>
- </view>
- <view class="row">
- <view class="left">预计到站日期</view>
- <view>
- <view>{{detailData.receiveDateEnd}}</view>
- </view>
- </view>
- <view class="row">
- <view class="left">车型</view>
- <view>
- <view>{{detailData.carModel}}</view>
- </view>
- </view>
- </view>
- <view v-if='detailData.tranType=="船运"' class="content">
- <view class="row">
- <view class="left">姓名</view>
- <view>{{detailData.driver}}</view>
- </view>
- <view class="row">
- <view class="left">电话</view>
- <view>{{detailData.driverPhone}}</view>
- </view>
- <view class="row">
- <view class="left">发船日期</view>
- <view>
- <view @click='show1=true'>{{detailData.sendDateStart}}</view>
- <u-picker v-model="show1" mode="time" @confirm='dateChange($event)' :params="params">
- </u-picker>
- </view>
- </view>
- <view class="row">
- <view class="left">预计到港日期</view>
- <view>
- <view>{{detailData.receiveDateEnd}}</view>
- </view>
- </view>
- <view class="row">
- <view class="left">船名</view>
- <view>
- <view>{{detailData.shipName}}</view>
- </view>
- </view>
- <view class="row">
- <view class="left">航次</view>
- <view>
- <view>{{detailData.shipNo}}</view>
- </view>
- </view>
- <view class="row">
- <view class="left">类型</view>
- <view>
- <view>{{detailData.shipType}}</view>
- </view>
- </view>
- <view v-if="detailData.shipType == '集装箱'" class="row">
- <view class="left">数量</view>
- <view>
- <view>{{detailData.boxNumber}}</view>
- </view>
- </view>
- </view>
- <view v-if='detailData.tranType=="火运"'>
- <view style='margin-left:10px;'>装车详情</view>
- <view v-for='(item,index) in freightspace' class="content">
- <view class="row">
- <view class="left">车厢号-{{index+1}}</view>
- <view>{{item.boxNo}}</view>
- </view>
- <view class="row">
- <view class="left">装车净重</view>
- <view v-if="item.status == '已装车' || item.status == '已送达'">{{item.loadNetWeight}}</view>
- <view style='text-align:right;' v-else>
- <input v-model='item.loadNetWeight' class="right-bottom"
- placeholder="输入毛重"></input>
- </view>
- </view>
- <view class="row">
- <view class="left">磅单</view>
- <view v-if="item.loadPoundImg">
- <image style='width:100px;height:100px;' :src="item.loadPoundImg" mode=""></image>
- </view>
- <view v-else>
- <upload class="upload" ref="upload" :action="action" :max-size="maxSize" :max-count="1" :file-list="imgUrl"
- :size-type="['compressed']" :imgIndex='index' @on-success="getImgUrl" @on-error="onError" @on-remove="onRemove"
- @on-uploaded="isAdd = true" :before-upload="filterFileType" @on-progress="onProgress"></upload>
- </view>
- </view>
- <view class="row">
- <view class="left">装车日期</view>
- <view>
- <view v-if="item.status == '已装车' || item.status == '已送达'">{{item.loadingDate}}</view>
- <view v-else @click='show2=true'>{{item.loadingDate?item.loadingDate:'请选择日期'}}</view>
- <u-picker v-model="show2" mode="time" @confirm='dateChange1($event,index)' :params="params">
- </u-picker>
- </view>
- </view>
- <view style='text-align:right;' v-if="item.status == '已装车' || item.status == '已送达'">{{item.status}}</view>
- <u-button v-else @click='submit(index)' type="success">提交</u-button>
- </view>
- </view>
- <view v-if='detailData.tranType=="汽运"'>
- <view style='margin-left:10px;'>装车详情</view>
- <view v-for='(item,index) in freightspace' class="content">
- <view class="row">
- <view class="left">司机-{{index+1}}</view>
- <view>{{item.status}}</view>
- </view>
- <view class="row">
- <view class="left">姓名</view>
- <view>{{item.driver}}</view>
- </view>
- <view class="row">
- <view class="left">司机电话</view>
- <view>{{item.driverPhone}}</view>
- </view>
- <view class="row">
- <view class="left">车牌号</view>
- <view>{{item.carNo}}</view>
- </view>
- <view class="row">
- <view class="left">装车净重</view>
- <view v-if="item.status == '已装车' || item.status == '已送达'">{{item.loadNetWeight}}</view>
- <view style='text-align:right;' v-else>
- <input v-model='item.loadNetWeight' class="right-bottom"
- placeholder="输入毛重"></input>
- </view>
- </view>
- <view class="row">
- <view class="left">装车日期</view>
- <view>
- <view v-if="item.status == '已装车' || item.status == '已送达'">{{item.loadingDate}}</view>
- <view v-else @click='show2=true'>{{item.loadingDate?item.loadingDate:'请选择日期'}}</view>
- <u-picker v-model="show2" mode="time" @confirm='dateChange1($event,index)' :params="params">
- </u-picker>
- </view>
- </view>
- <view class="row">
- <view class="left">磅单</view>
- <view v-if="item.loadPoundImg">
- <image style='width:100px;height:100px;' :src="item.loadPoundImg" mode=""></image>
- </view>
- <view v-else>
- <upload class="upload" ref="upload" :action="action" :max-size="maxSize" :max-count="1" :file-list="imgUrl"
- :size-type="['compressed']" :imgIndex='index' @on-success="getImgUrl" @on-error="onError" @on-remove="onRemove"
- @on-uploaded="isAdd = true" :before-upload="filterFileType" @on-progress="onProgress"></upload>
- </view>
- </view>
- <view class="row">
- <view class="left">箱号</view>
- <view>{{item.caseNo}}</view>
- </view>
- <view class="row">
- <view class="left">封号</view>
- <view>{{item.titleNo}}</view>
- </view>
- <view v-if="item.signStatus == '未签合同'">未签合同</view>
- <view v-if="item.signStatus == '已签合同'">已签合同</view>
- <u-button v-if="item.status != '已装车' && item.status != '已送达'" @click='submit(index)' type="success">保存</u-button>
- </view>
- </view>
- <view v-if='detailData.tranType=="船运"'>
- <view style='margin-left:10px;'>装车详情</view>
- <view v-for='(item,index) in freightspace' class="content">
- <view class="row">
- <view class="left">司机-{{index+1}}</view>
- <view>{{item.status}}</view>
- </view>
- </view>
- </view>
- </view>
- </template>
- <script>
- import upload from '@/components/upload.vue';
- import helper from '@/common/helper.js';
- export default {
- components: {
- upload
- },
- data() {
- return {
- id:'',
- show1: false,
- show2: false,
- currentPage: 1,
- pageSize: 10,
- show1:false,
- positionId: "",
- binNumber: "",
- maxSize: 50 * 1024 * 1024,
- status: '执行中',
- positionName: '',
- statusList: [
- {name:'执行中',value:1},
- {name:'已完货',value:2},
- {name:'全部任务',value:3},
- ],
- params: {
- year: true,
- month: true,
- day: true,
- },
- imgUrl:[],
- action: this.$uploadUrl,
- freightspace:[],
- feedbackFlag:1,
- detailData:{},
- allWarehouse: [],
- showTime: ''
- }
- },
- onLoad(options) {
- this.id = options.id
- },
- onShow() {
- this.getList()
- },
-
- methods: {
- submit(index){
- var that = this
- if(this.detailData.tranType=='火运'){
- if (!this.freightspace[index].loadNetWeight) {
- this.$api.msg('装车净重不能为空!')
- return
- }
- if (
- this.freightspace[index].loadNetWeight < 0 ||
- this.freightspace[index].loadNetWeight > 10000
- ) {
- this.$api.msg('装车净重输入错误!')
- return
- }
- if (!this.freightspace[index].loadingDate) {
- this.$api.msg('装车日期不能为空!')
- return
- }
- uni.showModal({
- content: "提交成功后提醒司机及时签订运输合同,确定提交装车信息?",
- success(res) {
- if (res.confirm) {
- that.tranCarInfoList = that.freightspace
- that.tranCarInfoList.driver = that.detailData.driver
- that.tranCarInfoList.driverPhone = that.detailData.driverPhone
- that.tranCarInfoList.tranCarNo = that.detailData.tranCarNo
- that.tranCarInfoList.carNo = that.detailData.carNo
- that.tranCarInfoList[0].sendDateStart = that.detailData.sendDateStart
- that.tranCarInfoList.loadNetWeight = that.detailData.loadNetWeight
- that.tranCarInfoList.tranType = that.tranType
- that.tranCarInfoList.loadPoundImg = that.detailData.loadPoundImg
- // this.tranCarInfoList.boxNo = this.arr.toString()
- for (var i = 0; i < that.tranCarInfoList.length; i++) {
- that.tranCarInfoList[i].id = that.freightspace[i].id
- if (that.tranCarInfoList[i].temporaryDriverFlag != 0) {
- that.tranCarInfoList[i].temporaryDriverFlag = 1
- that.tranCarInfoList[i].tranType = that.tranType
- }
- }
- var tranProcessInfo = {}
- tranProcessInfo.id = that.detailData.id
- tranProcessInfo.infoId = that.detailData.infoId
- tranProcessInfo.processNo = that.detailData.processNo
- tranProcessInfo.tranPrice = that.detailData.tranPrice
- tranProcessInfo.tranCarInfoList = that.tranCarInfoList
- that.$api.doRequest('post', '/tranProcessInfo/api/insertTranCar', {
- id:this.id
- }).then(res => {
- if (res.data.code == 200) {
- that.$api.msg('提交成功')
- that.detailData = {}
- that.freightspace = {}
- uni.navigateBack({
-
- })
- }
- })
- }
- }
- })
- }
- },
- getList() {
- this.$api.doRequest('get', '/tranProcessInfo/getTranProcess', {
- id:this.id
- }).then(res => {
- if (res.data.code == 200) {
- this.detailData = res.data.data
- if(res.data.data.tranType=='火运'){
- if(res.data.data.tranCarInfoList.length){
- if(res.data.data.tranCarInfoList[0].driver){
- this.detailData.driver = res.data.data.tranCarInfoList[0].driver
- }
- this.detailData.driverPhone =res.data.data.tranCarInfoList[0].driverPhone
- this.$set(this.detailData,'sendDateStart',res.data.data.tranCarInfoList[0].sendDateStart)
- this.detailData.receiveDateEnd =
- res.data.data.tranCarInfoList[0].receiveDateEnd
- this.detailData.carModel = res.data.data.tranCarInfoList[0].carModel
- this.freightspace=res.data.data.tranCarInfoList
- }
- }else if(res.data.data.tranType=='汽运'){
- this.freightspace=res.data.data.tranCarInfoList
-
- }else if(res.data.data.tranType=='船运'){
- if (res.data.data.tranCarInfoList.length > 0) {
- this.detailData.driver = res.data.data.tranCarInfoList[0].driver
- this.detailData.driverPhone =
- res.data.data.tranCarInfoList[0].driverPhone
- this.$set(
- this.detailData,
- 'sendDateStart',
- res.data.data.tranCarInfoList[0].sendDateStart
- )
- this.detailData.receiveDateEnd =
- res.data.data.tranCarInfoList[0].receiveDateEnd
- this.detailData.shipName = res.data.data.tranCarInfoList[0].shipName
- this.detailData.shipNo = res.data.data.tranCarInfoList[0].shipNo
- this.detailData.shipType = res.data.data.tranCarInfoList[0].shipType
- this.detailData.boxNumber = res.data.data.tranCarInfoList[0].boxNumber
- //上传附件计数
- if(this.detailData.tranCarInfoList[0].loadPoundImg){
- this.pictureTotal = this.detailData.tranCarInfoList[0].loadPoundImg.split(",").length
- }
- this.freightspace = res.data.data.tranCarInfoList
- }
-
- }
-
- }
- })
- },
- getImgUrl(res1,res2,res3,res4) {
- // debugger
- console.log(res1,res2,res3,res4,res5)
- this.freightspace[res4].loadPoundImg=res1
- // this.detailData.addressUrl = res
- // console.log(res)
- // console.log('------------res-----------')
- },
- setImgUrl(val){
- debugger
- for(let i = 0;i<freightspace.length;i++){
-
- }
- },
- filterFileType(index, lists) {
- if (lists[index].fileType != 'jpg' && lists[index].fileType != 'png' && lists[index].fileType != 'gif') {
- lists.splice(index, 1);
- // 当前文件不支持
- uni.showModal({
- title: '暂不支持当前图片类型',
- showCancel: false
- });
- } else {
- this.isAdd = false;
- }
- },
- dateChange(e) {
- this.detailData.sendDateStart = e.year + "-" + e.month + "-" + e.day
- },
- dateChange1(e,index){
- this.$set(this.freightspace[index],'loadingDate',e.year + "-" + e.month + "-" + e.day)
- },
- statuschange(e) {
- this.status = this.statusList[e[0]].name
- this.getList()
- },
- goDetail(val) {
- uni.navigateTo({
- url: '/pages/erp/deliveryfeedback/details?data=' + JSON.stringify(val),
- })
- }
- }
- }
- </script>
- <style scoped lang="scss">
- uni-page-body {
- overflow: hidden;
- }
- .content{
- margin:10px 0;
- }
- .wrap {
- margin: 10rpx;
- padding: 20rpx 20rpx 140rpx 20rpx;
-
- .top {
- display: flex;
- margin-bottom: 20rpx;
-
- .top-left {
- margin-right: 20rpx;
- }
- }
- }
-
- .content,
- .content1,
- .content2 {
- border-radius: 20rpx;
- background: white;
- padding: 20rpx;
-
- .title {
- font-size: 28rpx;
- font-weight: 600;
- color: #333333;
- }
-
- .row {
- display: flex;
- justify-content: space-between;
- // border-bottom: 1px solid #EEEEEE;
- padding: 21rpx 0;
-
- .right,
- input {
- font-size: 28rpx;
- color: #333333;
- }
- }
-
- .row-bottom {
-
- // border: 0;
- .right-bottom {
- width: 280rpx;
- text-align: right;
- }
- }
- }
-
- .content1 {
- margin-top: 20rpx;
- }
-
- .content2 {
- margin-top: 10px;
- // display: flex;
- align-items: center;
-
- .left {
- margin-right: 20px;
- }
- }
-
- .submit {
- width: 40%;
- background: #22C572;
- border-radius: 10rpx;
- }
-
- .edit-btn {
- background: #22C572;
- width: 100rpx;
- height: 50rpx;
- margin: 0;
- color: white;
- }
-
- .has-btn {
- align-items: center;
- }
-
- .bottom-btn {
- padding: 30rpx;
- background: #FFFFFF;
- width: 92%;
- position: fixed;
- bottom: 0rpx;
- display: flex;
- z-index: 9999;
- }
- </style>
|