Forráskód Böngészése

更新 航次详情样式及部局

wzh 3 éve
szülő
commit
2a55025dd2
3 módosított fájl, 211 hozzáadás és 154 törlés
  1. 13 0
      src/App.vue
  2. 4 0
      src/styles/index.css
  3. 194 154
      src/views/voyage/voyageDetail.vue

+ 13 - 0
src/App.vue

@@ -148,6 +148,13 @@ export default {
   color: #0094fe;
   margin: 15px 0 15px 0;
 }
+.container-second-title {
+  font-size: 16px;
+  font-family: PingFangSC-Medium, PingFang SC;
+  font-weight: 500;
+  color: #0094fe;
+  margin: 15px 0 15px 0;
+}
 
 .line {
   display: flex;
@@ -205,4 +212,10 @@ export default {
 .ml20 {
   margin-left: 20px;
 }
+
+.hr {
+  border-bottom: 2px solid #3b91fa;
+  opacity: 0.2;
+  margin: 30px 0;
+}
 </style>

+ 4 - 0
src/styles/index.css

@@ -60,6 +60,10 @@
   margin-top: 30px;
 }
 
+.mt40{
+  margin-top: 40px;
+}
+
 .mr5{
   margin-right: 5px;
 }

+ 194 - 154
src/views/voyage/voyageDetail.vue

@@ -10,15 +10,7 @@
   </div>
 
   <div class="container-title df aic jcsb">
-    <div>船舶信息</div>
-    <el-button
-      style="width: 220px; margin-right: 20px"
-      type="primary"
-      @click="downloadExcel"
-      :loading="isLoadingExcel"
-    >
-      下载船舶跟踪表
-    </el-button>
+    <div>航次信息</div>
   </div>
   <div class="line-container-p24">
     <div class="line">
@@ -30,6 +22,7 @@
           disabled
         ></el-input>
       </div>
+      <div class="info-gap"></div>
       <div class="info-line">
         <div class="info-line-title">货主</div>
         <el-input
@@ -59,13 +52,15 @@
     </div> -->
     <div class="line">
       <div class="info-line">
-        <div class="info-line-title">船舶</div>
+        <div class="info-line-title">船舶名称</div>
         <el-input
           class="info-line-text"
           v-model="voyage.shipName"
           disabled
         ></el-input>
       </div>
+      <div class="info-gap">查看船舶证书或汇很多认证</div>
+
       <div class="info-line">
         <div class="info-line-title">MMSI</div>
         <el-input
@@ -130,9 +125,17 @@
         ></el-input>
       </div>
     </div>
-  </div>
-  <div class="container-title">航次信息</div>
-  <div class="line-container-p24">
+    <div class="container-second-title df aic jcsb mt40">
+      <div>船舶运输记录详情</div>
+      <el-button
+        style="width: 220px"
+        type="primary"
+        @click="downloadExcel"
+        :loading="isLoadingExcel"
+      >
+        下载船舶跟踪表
+      </el-button>
+    </div>
     <div class="line">
       <div class="info-line">
         <div class="info-line-title">到达装货港时间</div>
@@ -313,31 +316,89 @@
       <el-button
         v-if="voyage.dischargeEndTime && disabledStatus"
         type="primary"
+        size="small"
         @click="finishVoyage"
       >
         完成航次
       </el-button>
     </div>
-  </div>
-  <div class="container-title df aic jcsb">
-    <div>卸货记录</div>
-    <el-button
-      @click="exportDischargeExcel"
-      style="width: 220px; margin-right: 20px"
-      type="primary"
-      :loading="isDischargeLoadingExcel"
-      >下载卸货信息</el-button
-    >
+    <div class="hr"></div>
+    <div class="container-second-title df aic jcsb">
+      <div>卸货记录</div>
+      <div>
+        <el-button
+          class="mr20"
+          type="primary"
+          @click="isAddPoundVisable = true"
+        >
+          新增卸货记录
+        </el-button>
+        <el-button
+          @click="exportDischargeExcel"
+          style="width: 160px"
+          type="primary"
+          :loading="isDischargeLoadingExcel"
+          >下载卸货信息</el-button
+        >
+      </div>
+    </div>
   </div>
   <div class="line-container-p24">
-    <el-card
-      style="
-        width: 800px;
-        margin-left: 60px;
-        margin-top: 50px;
-        margin-bottom: 40px;
-      "
+    <el-table
+      style="width: 800px"
+      :data="dischargeList"
+      stripe
+      :disabled="disabledStatus"
     >
+      <el-table-column
+        type="index"
+        label="序号"
+        min-width="80"
+        align="center"
+      ></el-table-column>
+      <el-table-column
+        prop="dischargeTons"
+        label="卸货吨位"
+        min-width="100"
+        align="center"
+      ></el-table-column>
+      <el-table-column
+        prop="dischargeTime"
+        label="卸货时间"
+        min-width="120"
+        align="center"
+      ></el-table-column>
+      <el-table-column label="磅单" min-width="150" align="center">
+        <template v-slot="scope">
+          <el-button
+            @click="showUpdateDischarge(scope.row, scope.$index)"
+            type="primary"
+            size="small"
+          >
+            {{ scope.row.files ? "查看" : "上传" }}
+          </el-button>
+        </template>
+      </el-table-column>
+      <el-table-column label="操作" min-width="150" align="center">
+        <template v-slot="scope">
+          <el-button
+            @click="showUpdateDischarge(scope.row, scope.$index)"
+            type="primary"
+            size="small"
+          >
+            修改
+          </el-button>
+          <el-button
+            @click="deleteDischarge(scope.row.id, scope.$index)"
+            type="danger"
+            size="small"
+          >
+            删除
+          </el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-dialog v-model="isAddPoundVisable">
       <el-form :model="formInline">
         <el-form-item label="卸货时间">
           <el-date-picker
@@ -368,133 +429,80 @@
         </el-form-item>
       </el-form>
       <div class="df aic jcfe mb30">
-        <el-button type="primary" @click="addDischarge">
-          新增卸货记录
-        </el-button>
+        <el-button type="primary" @click="addDischarge"> 新增 </el-button>
       </div>
-      <el-table :data="dischargeList" stripe :disabled="disabledStatus">
-        <el-table-column
-          type="index"
-          label="序号"
-          min-width="80"
-          align="center"
-        ></el-table-column>
-        <el-table-column
-          prop="dischargeTons"
-          label="卸货吨位"
-          min-width="100"
-          align="center"
-        ></el-table-column>
-        <el-table-column
-          prop="dischargeTime"
-          label="卸货时间"
-          min-width="120"
-          align="center"
-        ></el-table-column>
-        <el-table-column label="磅单" min-width="150" align="center">
-          <template v-slot="scope">
-            <el-button
-              @click="showUpdateDischarge(scope.row, scope.$index)"
-              type="primary"
-              size="small"
-            >
-              {{ scope.row.files ? "查看" : "上传" }}
-            </el-button>
-          </template>
-        </el-table-column>
-        <el-table-column label="操作" min-width="150" align="center">
-          <template v-slot="scope">
-            <el-button
-              @click="showUpdateDischarge(scope.row, scope.$index)"
-              type="primary"
-              size="small"
-            >
-              修改
-            </el-button>
-            <el-button
-              @click="deleteDischarge(scope.row.id, scope.$index)"
-              type="danger"
-              size="small"
-            >
-              删除
-            </el-button>
-          </template>
-        </el-table-column>
-      </el-table>
-
-      <el-dialog
-        v-model="updateDischargeDialog"
-        title="修改记录"
-        width="700px"
-        center
-      >
-        <el-form :model="updateForm" style="margin-bottom: 20px">
-          <!-- <el-form-item label="记录ID">
+    </el-dialog>
+    <el-dialog
+      v-model="updateDischargeDialog"
+      title="修改记录"
+      width="700px"
+      center
+    >
+      <el-form :model="updateForm" style="margin-bottom: 20px">
+        <!-- <el-form-item label="记录ID">
             <span style="padding-left: 20px">{{ updateForm.id }}</span>
           </el-form-item> -->
-          <el-form-item label="卸货时间">
-            <el-date-picker
-              class="info-line-text"
-              v-model="updateForm.dischargeTime"
-              type="datetime"
-              format="YYYY/MM/DD HH:mm:ss"
-              value-format="YYYY/MM/DD HH:mm:ss"
-              placeholder="卸货时间"
-            ></el-date-picker>
-          </el-form-item>
-          <el-form-item label="卸货吨位">
-            <el-input
-              style="width: 240px"
-              v-model="updateForm.dischargeTons"
-              placeholder="卸货吨位"
-            ></el-input>
-          </el-form-item>
-          <el-form-item label="上传磅单">
-            <Uploader
-              :actionUrl="this.$store.state.wayBillUrl"
-              isVisiable
-              :uploaderId="'updatePound'"
-              :params="updatePoundParams"
-              @onSendFileList="getupdatePoundBillList"
-              :fileList="updatePoundBillList"
-              uploadText="拖拽或点击上传磅单"
-            ></Uploader>
-          </el-form-item>
-        </el-form>
-
-        <template #footer>
-          <el-button @click="cancelUpdateDischarge">取消</el-button>
-          <el-button
-            style="margin-left: 30px"
-            type="primary"
-            @click="updateDischarge"
-          >
-            提交
-          </el-button>
-        </template>
-      </el-dialog>
+        <el-form-item label="卸货时间">
+          <el-date-picker
+            class="info-line-text"
+            v-model="updateForm.dischargeTime"
+            type="datetime"
+            format="YYYY/MM/DD HH:mm:ss"
+            value-format="YYYY/MM/DD HH:mm:ss"
+            placeholder="卸货时间"
+          ></el-date-picker>
+        </el-form-item>
+        <el-form-item label="卸货吨位">
+          <el-input
+            style="width: 240px"
+            v-model="updateForm.dischargeTons"
+            placeholder="卸货吨位"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="上传磅单">
+          <Uploader
+            :actionUrl="this.$store.state.wayBillUrl"
+            isVisiable
+            :uploaderId="'updatePound'"
+            :params="updatePoundParams"
+            @onSendFileList="getupdatePoundBillList"
+            :fileList="updatePoundBillList"
+            uploadText="拖拽或点击上传磅单"
+          ></Uploader>
+        </el-form-item>
+      </el-form>
 
-      <el-dialog v-model="dialogVisible" title="图片预览" width="30%">
-        <el-image
-          :src="dialogImageUrl"
-          style="height: 100%; width: 100%"
-        ></el-image>
-      </el-dialog>
-      <div style="width: 100%; text-align: right; margin-top: 43px">
-        <el-pagination
-          background
-          layout="prev, pager, next"
-          :total="total"
-          @current-change="pageChange"
-        ></el-pagination>
-      </div>
-    </el-card>
+      <template #footer>
+        <el-button @click="cancelUpdateDischarge">取消</el-button>
+        <el-button
+          style="margin-left: 30px"
+          type="primary"
+          @click="updateDischarge"
+        >
+          提交
+        </el-button>
+      </template>
+    </el-dialog>
+    <el-dialog v-model="dialogVisible" title="图片预览" width="30%">
+      <el-image
+        :src="dialogImageUrl"
+        style="height: 100%; width: 100%"
+      ></el-image>
+    </el-dialog>
+    <div style="width: 800px; text-align: right; margin-top: 43px">
+      <el-pagination
+        background
+        layout="prev, pager, next"
+        :total="total"
+        @current-change="pageChange"
+      ></el-pagination>
+    </div>
   </div>
-  <div class="container-title">保险单列表</div>
+  <div class="container-title">单据信息</div>
   <div class="line-container-p24">
     <div class="line">
       <div class="info-line">
-        <div class="info-line-title">上传保险单</div>
+        <div class="info-line-title">保险单</div>
         <el-upload
           drag
           multiple
@@ -511,8 +519,27 @@
         </el-upload>
       </div>
     </div>
+    <div class="line">
+      <div class="info-line">
+        <div class="info-line-title">运单</div>
+        <el-upload
+          drag
+          multiple
+          :action="this.$store.state.wayBillUrl"
+          list-type="picture-card"
+          :on-preview="handlePictureCardPreview"
+          :on-remove="handleRemoveBill"
+          :data="billParams"
+          :on-success="billUploadSuccess"
+          :file-list="voyageBill"
+        >
+          <div class="upload-plus-icon">+</div>
+          <div class="upload-text">拖拽或点击上传</div>
+        </el-upload>
+      </div>
+    </div>
   </div>
-  <div class="container-title">运单列表</div>
+  <!-- <div class="container-title">运单列表</div>
   <div class="line-container-p24">
     <div class="line">
       <div class="info-line">
@@ -533,7 +560,7 @@
         </el-upload>
       </div>
     </div>
-  </div>
+  </div> -->
   <!-- <div class="container-title">磅单列表</div>
   <div class="line-container-p24">
     <div class="line" style="margin-bottom: 60px">
@@ -789,7 +816,6 @@ export default {
     }
     let updateForm = ref({});
     let updateDischargeDialog = ref(false);
-    let currentUpdateIndex = ref(-1);
     async function updateDischarge() {
       let postData = {
         ...updateForm.value,
@@ -836,13 +862,11 @@ export default {
         dischargeTons,
         dischargeTime,
       };
-      currentUpdateIndex.value = index;
     }
     function cancelUpdateDischarge() {
       updateDischargeDialog.value = false;
       updateForm.value = {};
       updatePoundBillList.value = [];
-      currentUpdateIndex.value = -1;
     }
     let mapId = ref(`map${route.query.id}`);
     function initMap() {
@@ -1285,11 +1309,18 @@ export default {
       }
     }
 
+    let isAddPoundVisable = ref(false);
+    let isAddTruckRecordVisable = ref(false);
+    let truckTableData = ref([]);
+
     onMounted(() => {
       getVoyageDetail();
       getDischargeList();
     });
     return {
+      isAddPoundVisable,
+      isAddTruckRecordVisable,
+      truckTableData,
       certs,
       downloadExcel,
       isLoadingExcel,
@@ -1520,4 +1551,13 @@ export default {
   width: 100%;
   height: 148px !important;
 }
+
+.info-gap {
+  width: 120px;
+  font-size: 14px;
+  overflow: visible;
+  white-space: nowrap;
+  color: #006ebc;
+  cursor: pointer;
+}
 </style>