Przeglądaj źródła

更新 新增卸货记录

wzh 3 lat temu
rodzic
commit
020b36bd39

+ 5 - 2
miniprogram/app.json

@@ -15,7 +15,9 @@
     "pages/voyageManage/myBills/examine/examine",
     "pages/voyageManage/myDaily/myDaily",
     "pages/voyageManage/myVoyages/myVoyages",
-    "pages/voyageManage/myDaily/examine/examine"
+    "pages/voyageManage/myDaily/examine/examine",
+    "pages/voyages/uploadCarLoadRecord/uploadCarLoadRecord",
+    "pages/voyages/uploadDischarge/uploadDischarge"
   ],
   "window": {
     "backgroundColor": "#F6F6F6",
@@ -25,7 +27,8 @@
     "navigationBarTextStyle": "black"
   },
   "tabBar": {
-    "list": [{
+    "list": [
+      {
         "pagePath": "pages/index/index",
         "text": "首页",
         "iconPath": "images/tabBar/index.png",

+ 15 - 5
miniprogram/pages/voyages/detail/detail.js

@@ -9,7 +9,7 @@ import {
 Page({
   data: {
     id: '',
-    tab: 1,
+    tab: 3,
     shipDischargeCurrentPage: 1,
     truckLoadCurrentPage: 1,
     coordinates: [],
@@ -38,7 +38,8 @@ Page({
     currentDischargePortId: '',
     currentDischargePort: '',
     tab2disabled: false,
-    currentDischargeIndex: 0
+    currentDischargeIndex: 0,
+    uploadBillVisable: true
   },
   changeTab(e) {
     let {
@@ -399,10 +400,7 @@ Page({
       voyageId: this.data.id
     }
     let res = await uploadImage("/voyage/uploadVoyageWayBill", postData)
-
     this.getVoyageDetail()
-
-    console.log(res)
   },
   async completeVoyage() {
     wx.showModal({
@@ -444,6 +442,18 @@ Page({
       }
     })
   },
+  goTo(e) {
+    let {
+      url
+    } = e.currentTarget.dataset
+    let {
+      id,
+      currentPortId
+    } = this.data
+    wx.navigateTo({
+      url: `${url}?voyageId=${id}&portId=${currentPortId}`,
+    })
+  },
 
   onLoad(options) {
     let {

+ 3 - 3
miniprogram/pages/voyages/detail/detail.wxml

@@ -179,7 +179,7 @@
         <input disabled="{{tab2disabled}}" bindblur="bindDischargePortChange" value="{{voyageDetails[currentDischargeIndex].actualDischargePieces}}" data-index="{{currentDischargeIndex}}" data-param="actualDischargePieces" type="text" style="width: 10vw;" />{{' 件'}}
       </view>
     </view>
-    <button bindtap="updateVoyage">更新航次</button>
+    <button class="primary" bindtap="updateVoyage">更新航次</button>
   </view>
   <view class="p30" wx:if="{{tab==4}}">
     <view>保险单</view>
@@ -219,7 +219,7 @@
         <view wx:else>暂无</view>
       </view>
       <view bindtap="scrollShip" class="bottom-text">{{shipDischargeTotal==0?'暂无数据':(shipDischargeTotal>pageSize*shipDischargeCurrentPage?'点击或滑动加载更多...':'已加载完毕')}}</view>
-      <view class="next" bindtap="uploadBill" data-type="{{2}}">上传磅单</view>
+      <view class="next" bindtap="goTo" data-url="/pages/voyages/uploadDischarge/uploadDischarge">上传磅单</view>
     </view>
     <view class="truck-load-list" wx:if="{{infoType=='truck'}}">
       <view class="df aic jcsb mb20 mt10 fs22">
@@ -240,7 +240,7 @@
         <view wx:else>暂无</view>
       </view>
       <view bindtap="scrollTruck" class="bottom-text">{{truckLoadTotal==0?'暂无数据':(truckLoadTotal>pageSize*truckLoadCurrentPage?'点击或滑动加载更多...':'已加载完毕')}}</view>
-      <view class="next" bindtap="uploadBill" data-type="{{4}}">上传汽运单</view>
+      <view class="next" bindtap="goTo" data-url="/pages/voyages/uploadCarLoadRecord/uploadCarLoadRecord">上传运单</view>
     </view>
   </view>
   <view wx:if="{{tab==5}}">

+ 9 - 0
miniprogram/pages/voyages/detail/detail.wxss

@@ -206,4 +206,13 @@ input {
   line-height: 100rpx;
   border: 1px solid grey;
   margin: 3vw auto;
+}
+
+.upload-bill-visable {
+  position: fixed;
+  top: 0;
+  right: 0;
+  bottom: 0;
+  left: 0;
+  background: #fff;
 }

+ 69 - 0
miniprogram/pages/voyages/uploadCarLoadRecord/uploadCarLoadRecord.js

@@ -0,0 +1,69 @@
+// pages/voyages/uploadDischarge/uploadDischarge.js
+import {
+  postApi
+} from "../../../apis/api"
+
+import {
+  uploadImage
+} from "../../../utils/uploadImage"
+Page({
+  data: {
+    dischargeTime: '',
+    dischargeTons: 0,
+    dischargePieces: 0,
+    fileList: [],
+  },
+  async uploadBill(e) {
+    let {
+      type
+    } = e.currentTarget.dataset
+    let postData = {
+      type,
+      voyageId: this.data.voyageId
+    }
+
+    let res = await uploadImage("/voyage/uploadVoyageWayBill", postData)
+    let {
+      id,
+      viewUrl
+    } = res.result
+    this.data.fileList.push({
+      id,
+      viewUrl
+    })
+    this.setData({
+      fileList: this.data.fileList
+    })
+  },
+  async submit() {
+    let {
+      dischargeTime,
+      dischargeTons,
+      dischargePieces,
+      fileList,
+      portId,
+      voyageId
+    } = this.data
+    let arr = []
+    for (let i of fileList) {
+      arr.push(i.id)
+    }
+    let postData = {
+      loginAccountId: wx.getStorageSync('loginAccountId'),
+      voyageId,
+      portId,
+      dischargeTons,
+      dischargePieces,
+      dischargeTime: dischargeTime.replaceAll('-', '/') + " 00:00:00",
+      voyageFileIds: arr.join(',')
+    }
+    let res = await postApi("/voyage/addDischarge", postData)
+    wx.navigateBack()
+  },
+  onLoad(options) {
+    this.setData({
+      voyageId: options.voyageId,
+      portId: options.portId
+    })
+  },
+})

+ 4 - 0
miniprogram/pages/voyages/uploadCarLoadRecord/uploadCarLoadRecord.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "navigationBarTitleText": "添加汽车装货记录"
+}

+ 26 - 0
miniprogram/pages/voyages/uploadCarLoadRecord/uploadCarLoadRecord.wxml

@@ -0,0 +1,26 @@
+<view class="box">
+  <view class="df jcsb line">
+    <view>卸货时间</view>
+    <view>
+      <picker mode="date" model:value="{{dischargeTime}}" style="width: 40vw;">
+        <view style="border: 1rpx solid grey;">
+          {{dischargeTime ||"请选择"}}
+        </view>
+      </picker>
+    </view>
+  </view>
+  <view class="df jcsb line">
+    <view>卸货吨位</view>
+    <view><input model:value="{{dischargeTons}}" type="text" placeholder="必填" /></view>
+  </view>
+  <view class="df jcsb line">
+    <view>卸货件数</view>
+    <view><input model:value="{{dischargePieces}}" type="number" /></view>
+  </view>
+  <view>
+    <view>卸货记录</view>
+    <image wx:for="{{fileList}}" class="upload-image" src="{{item.viewUrl}}"></image>
+    <view class="next" style="width: 200rpx;height: 60rpx;line-height: 60rpx;font-size: 26rpx;" bindtap="uploadBill" data-type="{{1}}">上传运单</view>
+    <view class="next" bindtap="submit">提交</view>
+  </view>
+</view>

+ 64 - 0
miniprogram/pages/voyages/uploadCarLoadRecord/uploadCarLoadRecord.wxss

@@ -0,0 +1,64 @@
+/* pages/voyages/uploadDischarge/uploadDischarge.wxss */
+/* pages/shipOwnerManage/addShipOnwer/addShipOnwer.wxss */
+.box {
+  width: 80vw;
+  border: 2rpx solid grey;
+  border-radius: 10rpx;
+  text-align: center;
+  margin: 0 auto;
+  padding: 5vw 0;
+}
+
+.ship-owner-phone {
+  width: 400rpx;
+  height: 60rpx;
+  border: 1rpx solid grey;
+  margin: 0 auto;
+  border-radius: 6rpx;
+  padding-left: 20rpx;
+}
+
+.line {
+  width: 80%;
+  margin: 30rpx auto;
+  font-size: 28rpx;
+}
+
+.line view {
+  line-height: 48rpx;
+
+}
+
+.line input {
+  border: 1px solid grey;
+  height: 48rpx;
+}
+
+.upload {
+  width: 68vw;
+  height: 32vw;
+  border: 1px solid grey;
+  margin: 3vw auto;
+}
+
+page {
+  padding-top: 5vw;
+}
+
+.upload-image {
+  width: 68vw;
+  height: 32vw;
+  border: 1px solid grey;
+  margin: 3vw auto;
+}
+
+.next {
+  width: 300rpx;
+  height: 80rpx;
+  line-height: 80rpx;
+  color: #fff;
+  background: #0094FE;
+  border-radius: 10rpx;
+  margin: 0 auto;
+  margin-top: 8vw;
+}

+ 69 - 0
miniprogram/pages/voyages/uploadDischarge/uploadDischarge.js

@@ -0,0 +1,69 @@
+// pages/voyages/uploadDischarge/uploadDischarge.js
+import {
+  postApi
+} from "../../../apis/api"
+
+import {
+  uploadImage
+} from "../../../utils/uploadImage"
+Page({
+  data: {
+    dischargeTime: '',
+    dischargeTons: 0,
+    dischargePieces: 0,
+    fileList: [],
+  },
+  async uploadBill(e) {
+    let {
+      type
+    } = e.currentTarget.dataset
+    let postData = {
+      type,
+      voyageId: this.data.voyageId
+    }
+
+    let res = await uploadImage("/voyage/uploadVoyageWayBill", postData)
+    let {
+      id,
+      viewUrl
+    } = res.result
+    this.data.fileList.push({
+      id,
+      viewUrl
+    })
+    this.setData({
+      fileList: this.data.fileList
+    })
+  },
+  async submit() {
+    let {
+      dischargeTime,
+      dischargeTons,
+      dischargePieces,
+      fileList,
+      portId,
+      voyageId
+    } = this.data
+    let arr = []
+    for (let i of fileList) {
+      arr.push(i.id)
+    }
+    let postData = {
+      loginAccountId: wx.getStorageSync('loginAccountId'),
+      voyageId,
+      portId,
+      dischargeTons,
+      dischargePieces,
+      dischargeTime: dischargeTime.replaceAll('-', '/') + " 00:00:00",
+      voyageFileIds: arr.join(',')
+    }
+    let res = await postApi("/voyage/addDischarge", postData)
+    wx.navigateBack()
+  },
+  onLoad(options) {
+    this.setData({
+      voyageId: options.voyageId,
+      portId: options.portId
+    })
+  },
+})

+ 4 - 0
miniprogram/pages/voyages/uploadDischarge/uploadDischarge.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "navigationBarTitleText": "添加卸货记录"
+}

+ 26 - 0
miniprogram/pages/voyages/uploadDischarge/uploadDischarge.wxml

@@ -0,0 +1,26 @@
+<view class="box">
+  <view class="df jcsb line">
+    <view>卸货时间</view>
+    <view>
+      <picker mode="date" model:value="{{dischargeTime}}" style="width: 40vw;">
+        <view style="border: 1rpx solid grey;">
+          {{dischargeTime ||"请选择"}}
+        </view>
+      </picker>
+    </view>
+  </view>
+  <view class="df jcsb line">
+    <view>卸货吨位</view>
+    <view><input model:value="{{dischargeTons}}" type="text" placeholder="必填" /></view>
+  </view>
+  <view class="df jcsb line">
+    <view>卸货件数</view>
+    <view><input model:value="{{dischargePieces}}" type="number" /></view>
+  </view>
+  <view>
+    <view>卸货记录</view>
+    <image wx:for="{{fileList}}" class="upload-image" src="{{item.viewUrl}}"></image>
+    <view class="next" style="width: 200rpx;height: 60rpx;line-height: 60rpx;font-size: 26rpx;" bindtap="uploadBill" data-type="{{1}}">上传运单</view>
+    <view class="next" bindtap="submit">提交</view>
+  </view>
+</view>

+ 64 - 0
miniprogram/pages/voyages/uploadDischarge/uploadDischarge.wxss

@@ -0,0 +1,64 @@
+/* pages/voyages/uploadDischarge/uploadDischarge.wxss */
+/* pages/shipOwnerManage/addShipOnwer/addShipOnwer.wxss */
+.box {
+  width: 80vw;
+  border: 2rpx solid grey;
+  border-radius: 10rpx;
+  text-align: center;
+  margin: 0 auto;
+  padding: 5vw 0;
+}
+
+.ship-owner-phone {
+  width: 400rpx;
+  height: 60rpx;
+  border: 1rpx solid grey;
+  margin: 0 auto;
+  border-radius: 6rpx;
+  padding-left: 20rpx;
+}
+
+.line {
+  width: 80%;
+  margin: 30rpx auto;
+  font-size: 28rpx;
+}
+
+.line view {
+  line-height: 48rpx;
+
+}
+
+.line input {
+  border: 1px solid grey;
+  height: 48rpx;
+}
+
+.upload {
+  width: 68vw;
+  height: 32vw;
+  border: 1px solid grey;
+  margin: 3vw auto;
+}
+
+page {
+  padding-top: 5vw;
+}
+
+.upload-image {
+  width: 68vw;
+  height: 32vw;
+  border: 1px solid grey;
+  margin: 3vw auto;
+}
+
+.next {
+  width: 300rpx;
+  height: 80rpx;
+  line-height: 80rpx;
+  color: #fff;
+  background: #0094FE;
+  border-radius: 10rpx;
+  margin: 0 auto;
+  margin-top: 8vw;
+}

+ 5 - 19
project.private.config.json

@@ -4,36 +4,22 @@
       "list": [
         {
           "name": "",
-          "pathName": "pages/voyageManage/myDaily/myDaily",
-          "query": "id=170",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "",
-          "pathName": "pages/voyageManage/voyageManage",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "",
-          "pathName": "pages/voyageManage/myDaily/examine/examine",
+          "pathName": "pages/voyages/detail/detail",
           "query": "id=170",
           "launchMode": "default",
           "scene": null
         },
         {
           "name": "",
-          "pathName": "pages/voyages/detail/detail",
-          "query": "id=170",
+          "pathName": "pages/voyages/uploadCarLoadRecord/uploadCarLoadRecord",
+          "query": "voyageId=170&portId=4",
           "launchMode": "default",
           "scene": null
         },
         {
           "name": "",
-          "pathName": "pages/voyageManage/myBills/myBills",
-          "query": "id=170",
+          "pathName": "pages/voyages/uploadDischarge/uploadDischarge",
+          "query": "voyageId=170&portId=1",
           "launchMode": "default",
           "scene": null
         }