caojunjie 1 anno fa
parent
commit
407f97bbe2

+ 2 - 2
src/views/billM/expenseCenter/index.vue

@@ -259,11 +259,11 @@ export default {
           //   }]
           // },
           // {
-          //   label: "单据类型, DD=直单(默认) MM=主单 MH=分单 HH=从分单",
+          //   label: "单据类型, DD=直单(默认) MM=主单 MH=分单 HH=从分单",
           //   prop: "billType",
           //   rules: [{
           //     required: true,
-          //     message: "请输入单据类型, DD=直单(默认) MM=主单 MH=分单 HH=从分单",
+          //     message: "请输入单据类型, DD=直单(默认) MM=主单 MH=分单 HH=从分单",
           //     trigger: "blur"
           //   }]
           // },

+ 143 - 85
src/views/iosBasicData/SeafreightExportF/bills/assembly/EntrustmentLnformation.vue

@@ -60,13 +60,18 @@
                                                   @corpFocus="remoteMethod($event,'hConsignee')">
                                     </search-query>
                                 </el-col>
-                                <el-col :span="7">
-                                    <span style="padding-left: 20px"></span>
+                                <el-col :span="4">
+                                    <span style="padding-left: 10px"></span>
                                     <el-input type="age" style="width: 100%;" v-model="assemblyForm.hConsigneeCntyName"
                                               size="small" autocomplete="off"
                                               :disabled="detailData.seeDisabled"
                                               clearable placeholder="收货人" ></el-input>
                                 </el-col>
+                                <el-col :span="4">
+                                    <span style="margin-left: 20px"></span>
+                                    <span style="font-size: 12px;color: #1e9fff;cursor: pointer;"
+                                          @click="notifybyfun">同通知人</span>
+                                </el-col>
                             </div>
                         </el-form-item>
                         <div>
@@ -170,14 +175,14 @@
                                       clearable placeholder="商品简称" ></el-input>
                         </div>
                         <div style="margin-top: 4px">
-                            <el-form-item label="货描" prop="cargoType" label-width="90px" >
+                            <el-form-item label="货描" prop="cargoType" label-width="40px" >
                                 <span slot="label">
                                     <span style="color: #1e9fff">货描</span>
                                 </span>
-                                <el-col :span="5">
-                                    <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isLargeCargo">大件货</el-checkbox>
-                                </el-col>
-                                <el-col :span="5">
+                                <!--<el-col :span="5">-->
+                                <!--    <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isLargeCargo">大件货</el-checkbox>-->
+                                <!--</el-col>-->
+                                <el-col :span="18">
                                     <search-query :datalist="cargoTypeData"
                                                   :selectValue="assemblyForm.cargoType"
                                                   :filterable="true"
@@ -270,41 +275,56 @@
                                       @corpFocus="remoteMethod($event,'carrier')" >
                         </search-query>
                     </el-form-item>
-                    <el-form-item label="船司约号" prop="carrierArgreementNo" >
+                    <el-form-item label="船司约号" prop="carrierArgreementNo" >
                         <span slot="label">
-                            <span style="color: #1e9fff">船司约号</span>
+                            <span style="color: #1e9fff">船司约号</span>
                         </span>
                         <el-input type="age" style="width: 100%;" v-model="assemblyForm.carrierArgreementNo"
                                   size="small" autocomplete="off"
                                   :disabled="detailData.seeDisabled"
-                                  clearable placeholder="请选择船司约号" ></el-input>
+                                  clearable placeholder="请选择船司约号" ></el-input>
                     </el-form-item>
-                    <el-form-item label="订舱日期" prop="bookingDate">
+                    <el-form-item label="订舱代理" prop="bookingAgentCnName" >
                         <span slot="label">
-                            <span style="color: #1e9fff">订舱日期</span>
+                            <span style="color: #1e9fff">订舱代理</span>
                         </span>
-                        <el-date-picker v-model="assemblyForm.bookingDate" clearable style="width: 100%"
-                                        type="date" size="small" :disabled="detailData.seeDisabled"
-                                        value-format="yyyy-MM-dd HH:mm:ss"
-                                        placeholder="选择日期">
-                        </el-date-picker>
+                        <el-col :span="8">
+                            <search-query :datalist="bookingAgentData"
+                                          :selectValue="assemblyForm.bookingAgentCnName"
+                                          :filterable="true"
+                                          :clearable="true"
+                                          :remote="true"
+                                          :disabled="detailData.seeDisabled"
+                                          :buttonIf="false"
+                                          :forParameter="{key:'id',label:'cnName',value:'cnName'}"
+                                          @remoteMethod="remoteMethod($event,'bookingAgent')"
+                                          @corpChange="corpChange($event,'bookingAgent')"
+                                          @corpFocus="remoteMethod($event,'bookingAgent')">
+                            </search-query>
+                        </el-col>
+                        <el-col :span="16">
+                            <el-input type="age" style="width: 100%;" v-model="assemblyForm.bookingAgentEnName"
+                                      size="small" autocomplete="off"
+                                      :disabled="detailData.seeDisabled"
+                                      clearable placeholder="订舱代理" ></el-input>
+                        </el-col>
                     </el-form-item>
 
-                    <div>
-                        <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedLand">陆运</el-checkbox>
-                        <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedDeclare">需报关</el-checkbox>
-                        <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedIq">需三检</el-checkbox>
-                    </div>
+                    <!--<div>-->
+                    <!--    <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedLand">陆运</el-checkbox>-->
+                    <!--    <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedDeclare">需报关</el-checkbox>-->
+                    <!--    <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedIq">需三检</el-checkbox>-->
+                    <!--</div>-->
 
-                    <el-form-item label="箱数或件数大写" prop="quantityPackingDescr" label-width="100px">
-                        <span slot="label">
-                            <span style="color: #1e9fff">箱数或件数大写</span>
-                        </span>
-                        <el-input type="age" style="width: 100%;" v-model="assemblyForm.quantityPackingDescr"
-                                  size="small" autocomplete="off"
-                                  :disabled="true"
-                                  clearable placeholder="商品包装件数英文" ></el-input>
-                    </el-form-item>
+                    <!--<el-form-item label="箱数或件数大写" prop="quantityPackingDescr" label-width="100px">-->
+                    <!--    <span slot="label">-->
+                    <!--        <span style="color: #1e9fff">箱数或件数大写</span>-->
+                    <!--    </span>-->
+                    <!--    <el-input type="age" style="width: 100%;" v-model="assemblyForm.quantityPackingDescr"-->
+                    <!--              size="small" autocomplete="off"-->
+                    <!--              :disabled="true"-->
+                    <!--              clearable placeholder="商品包装件数英文" ></el-input>-->
+                    <!--</el-form-item>-->
                     <div>
                         <el-col :span="12">
                             <el-form-item label="件数" prop="quantity" label-width="80px" >
@@ -313,7 +333,7 @@
                                 </span>
                                 <el-input type="age" style="width: 100%;" v-model="assemblyForm.quantity"
                                           size="small" autocomplete="off"
-                                          :disabled="detailData.seeDisabled || assemblyForm.billType == 'MM'"
+                                          :disabled="detailData.seeDisabled"
                                           clearable placeholder="件数" ></el-input>
                             </el-form-item>
                         </el-col>
@@ -345,7 +365,7 @@
                                 </span>
                                 <el-input type="age" style="width: 100%;" v-model="assemblyForm.grossWeight"
                                           size="small" autocomplete="off"
-                                          :disabled="detailData.seeDisabled || assemblyForm.billType == 'MM'"
+                                          :disabled="detailData.seeDisabled"
                                           clearable placeholder="请选择毛重" ></el-input>
                             </el-form-item>
                         </el-col>
@@ -356,7 +376,7 @@
                                 </span>
                                 <el-input type="age" style="width: 100%;" v-model="assemblyForm.measurement"
                                           size="small" autocomplete="off"
-                                          :disabled="detailData.seeDisabled || assemblyForm.billType == 'MM'"
+                                          :disabled="detailData.seeDisabled"
                                           clearable placeholder="请选择尺码/体积" ></el-input>
                             </el-form-item>
                         </el-col>
@@ -538,22 +558,12 @@
                 </el-col>
                 <el-col :span="16">
                     <precontainers :assemblyForm="assemblyForm"
-                                   :seeDisabled="detailData.seeDisabled || assemblyForm.billType == 'MH'"
+                                   :seeDisabled="detailData.seeDisabled"
                                    :pid="assemblyForm.id"
                                    @billsDetailfun="billsDetailfun" >
                     </precontainers>
                 </el-col>
             </el-row>
-            <el-form-item label="备注" prop="remarks" >
-                <span slot="label">
-                   <span style="color: #1e9fff">备注</span>
-                </span>
-                <el-input type="textarea" style="width: 100%;" v-model="assemblyForm.remarks"
-                          size="small" autocomplete="off"
-                          :disabled="detailData.seeDisabled" rows="3"
-                          clearable placeholder="备注"
-                          @blur="textareaBlur('remarks')" ></el-input>
-            </el-form-item>
 
             <el-row :gutter="20">
                 <el-col :span="12">
@@ -575,41 +585,6 @@
                             <bcorpstypedefine></bcorpstypedefine>
                         </search-query>
                     </el-form-item>
-                    <el-form-item label="订舱代理" prop="bookingAgentCnName" >
-                        <span slot="label">
-                            <span style="color: #1e9fff">订舱代理</span>
-                        </span>
-                        <el-col :span="8">
-                            <search-query :datalist="bookingAgentData"
-                                          :selectValue="assemblyForm.bookingAgentCnName"
-                                          :filterable="true"
-                                          :clearable="true"
-                                          :remote="true"
-                                          :disabled="detailData.seeDisabled"
-                                          :buttonIf="false"
-                                          :forParameter="{key:'id',label:'cnName',value:'cnName'}"
-                                          @remoteMethod="remoteMethod($event,'bookingAgent')"
-                                          @corpChange="corpChange($event,'bookingAgent')"
-                                          @corpFocus="remoteMethod($event,'bookingAgent')">
-                            </search-query>
-                        </el-col>
-                        <el-col :span="16">
-                            <el-input type="age" style="width: 100%;" v-model="assemblyForm.bookingAgentEnName"
-                                      size="small" autocomplete="off"
-                                      :disabled="detailData.seeDisabled"
-                                      clearable placeholder="订舱代理" ></el-input>
-                        </el-col>
-                    </el-form-item>
-                    <el-form-item label="订舱备注" prop="bookingRemarks" >
-                        <span slot="label">
-                            <span style="color: #1e9fff">订舱备注</span>
-                        </span>
-                        <el-input type="textarea" style="width: 100%;" v-model="assemblyForm.bookingRemarks"
-                                  size="small" autocomplete="off"
-                                  :disabled="detailData.seeDisabled" rows="3"
-                                  clearable placeholder="订舱备注"
-                                  @blur="textareaBlur('bookingRemarks')" ></el-input>
-                    </el-form-item>
                 </el-col>
                 <el-col :span="12">
                     <el-row>
@@ -632,7 +607,48 @@
                                 </search-query>
                             </el-form-item>
                         </el-col>
+                        <el-col :span="12">
+                            <el-form-item label="订舱日期" prop="bookingDate">
+                                <span slot="label">
+                                    <span style="color: #1e9fff">订舱日期</span>
+                                </span>
+                                <el-date-picker v-model="assemblyForm.bookingDate" clearable style="width: 100%"
+                                                type="date" size="small" :disabled="detailData.seeDisabled"
+                                                value-format="yyyy-MM-dd HH:mm:ss"
+                                                placeholder="选择日期">
+                                </el-date-picker>
+                            </el-form-item>
+                        </el-col>
                     </el-row>
+
+                </el-col>
+            </el-row>
+            <el-row>
+                <el-col :span="6">
+                    <el-form-item label="FORWARDING" prop="bookingRemarks" >
+                        <span slot="label">
+                            <span style="color: #1e9fff">FORWARDING</span>
+                        </span>
+                        <el-input type="textarea" style="width: 100%;" v-model="assemblyForm.forwarding"
+                                  size="small" autocomplete="off"
+                                  :disabled="detailData.seeDisabled" rows="3"
+                                  clearable placeholder="FORWARDING"
+                                  @blur="textareaBlur('FORWARDING')" ></el-input>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="6">
+                    <el-form-item label="订舱备注" prop="bookingRemarks" >
+                        <span slot="label">
+                            <span style="color: #1e9fff">订舱备注</span>
+                        </span>
+                        <el-input type="textarea" style="width: 100%;" v-model="assemblyForm.bookingRemarks"
+                                  size="small" autocomplete="off"
+                                  :disabled="detailData.seeDisabled" rows="3"
+                                  clearable placeholder="订舱备注"
+                                  @blur="textareaBlur('bookingRemarks')" ></el-input>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="6">
                     <el-form-item label="SI备注" prop="siRemarks" >
                         <span slot="label">
                            <span style="color: #1e9fff">SI备注</span>
@@ -644,6 +660,18 @@
                                   @blur="textareaBlur('siRemarks')" ></el-input>
                     </el-form-item>
                 </el-col>
+                <el-col :span="6">
+                    <el-form-item label="备注" prop="remarks" >
+                        <span slot="label">
+                            <span style="color: #1e9fff">备注</span>
+                        </span>
+                        <el-input type="textarea" style="width: 100%;" v-model="assemblyForm.remarks"
+                                  size="small" autocomplete="off"
+                                  :disabled="detailData.seeDisabled" rows="3"
+                                  clearable placeholder="备注"
+                                  @blur="textareaBlur('remarks')" ></el-input>
+                    </el-form-item>
+                </el-col>
             </el-row>
         </el-form>
 
@@ -1054,8 +1082,15 @@ import Vue from "vue";
                         }
                     }
                 }
-                else {
+                else if (name == 'cargoType') {
                     this.$set(this.assemblyForm,'cargoType',value)
+                    if (value == 'danger') {
+                        // 危险品
+                        this.DangerousGoodsAdd()
+                    }
+                }
+                else {
+                    this.$set(this.assemblyForm,name,value)
                 }
             },
             // 通知人添加第二个通知人弹窗
@@ -1130,30 +1165,50 @@ import Vue from "vue";
                 }
                 let arr = ['hShipperDetails','hConsigneeDetails','hNotifyDetails','marks','commodityDescr','hNotify2Details']
                 if (arr.indexOf(name) != -1) {
+                    console.log(this.assemblyForm[name],1133)
                     this.assemblyForm[name] = this.assemblyForm[name].toUpperCase()
                 }
                 this.assemblyForm[name] = textareaWrap(this.assemblyForm[name])
             },
+            // 同通知人
+            notifybyfun(){
+                this.$set(this.assemblyForm,'hNotifyId',this.assemblyForm.hConsigneeId)
+                this.$set(this.assemblyForm,'hNotifyCnName',this.assemblyForm.hConsigneeCnName)
+                this.$set(this.assemblyForm,'hNotifyEnName',this.assemblyForm.hConsigneeEnName)
+                this.$set(this.assemblyForm,'hNotifyCode',this.assemblyForm.hConsigneeCode)
+                this.$set(this.assemblyForm,'hNotifyDetails',this.assemblyForm.hConsigneeDetails)
+                this.$set(this.assemblyForm,'hNotifyCntyName',this.assemblyForm.hConsigneeCntyName)
+                this.$set(this.assemblyForm,'hNotifyCntyCode',this.assemblyForm.hConsigneeCntyCode)
+            },
             // 接口数据请求🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏
             // 获取发货人数据 (往来单位 前四个代理)
             hShipperBcorpsListfun(cnName){
                 let corpType = '1712285382575398914,1712285645314990082,1712285842321448962,1712286433378574338'
                 getBcorpslistByType(1,10,{cnName,corpType}).then(res=>{
-                    this.hShipperData = res.data.data.records
+                    this.hShipperData = res.data.data.records.map(item=>{
+                        item.cnName = item.cnName + ' - ' + item.code
+                        return item
+                    })
                 })
             },
             // 获取收货人数据 (往来单位 前四个代理)
             hConsigneeBcorpsListfun(cnName){
                 let corpType = '1712285382575398914,1712285645314990082,1712285842321448962,1712286433378574338'
                 getBcorpslistByType(1,10,{cnName,corpType}).then(res=>{
-                    this.hConsigneeData = res.data.data.records
+                    this.hConsigneeData = res.data.data.records.map(item=>{
+                        item.cnName = item.cnName + ' - ' + item.code
+                        return item
+                    })
                 })
             },
             // 获取通知人数据 (往来单位 前四个代理)
             hNotifyBcorpsListfun(cnName){
                 let corpType = '1712285382575398914,1712285645314990082,1712285842321448962,1712286433378574338'
                 getBcorpslistByType(1,10,{cnName,corpType}).then(res=>{
-                    this.hNotifyData = res.data.data.records
+                    this.hNotifyData = res.data.data.records.map(item=>{
+                        item.cnName = item.cnName + ' - ' + item.code
+                        return item
+                    })
                 })
             },
             // 获取第二通知人数据 (往来单位 前四个代理)
@@ -1221,7 +1276,10 @@ import Vue from "vue";
             carrierBcorpslistByTypefun(cnName){
                 let corpType = '1712286570540703745'
                 getBcorpslistByType(1,10,{cnName,corpType}).then(res=>{
-                    this.carrierData = res.data.data.records
+                    this.carrierData = res.data.data.records.map(item=>{
+                        item.cnName = item.cnName + ' - ' + item.code
+                        return item
+                    })
                 })
             },
             // 船名

+ 1 - 1
src/views/iosBasicData/SeafreightExportF/bills/assembly/EntrustmentLnformation/precontainers.vue

@@ -28,7 +28,7 @@
                    :disabled="seeDisabled"
                    @click.stop="handleDelete">删 除
         </el-button>
-        <!--<el-button type="success" size="small" plain>均分箱量</el-button>-->
+        <el-button type="success" size="small" plain>均分箱量</el-button>
       </template>
         <template slot-scope="scope" slot="menu">
             <el-button

+ 24 - 3
src/views/iosBasicData/SeafreightExportF/bills/assembly/SplitList.vue

@@ -35,9 +35,10 @@
                 </avue-text-ellipsis>
             </template>
             <template slot-scope="scope" slot="corpEnName">
-                <avue-text-ellipsis :text="scope.row.corpEnName" :height="30" use-tooltip placement="top">
-                    <small slot="more">...</small>
-                </avue-text-ellipsis>
+                <span class="textoverflow" :style="typeMenu?'color: red':''"
+                      @click.stop="corpfun(scope)" >
+                    {{scope.row.corpEnName}}
+                </span>
             </template>
         </avue-crud>
     </div>
@@ -101,6 +102,16 @@
                             width:"160",
                         },
                         {
+                            label: "MB/L NO",
+                            prop: "mblno",
+                            width:"160",
+                        },
+                        {
+                            label: "HB/L NO",
+                            prop: "hblno",
+                            width:"160",
+                        },
+                        {
                             label: "唛头",
                             prop: "marks",
                             width:"160",
@@ -153,6 +164,10 @@
             })
         },
         methods:{
+            // 点击进详情
+            corpfun(scope){
+                this.$emit('corpfun',scope.row)
+            },
             // 批量撤回
             batchWithdrawfun(){
                 if (this.selectionList.length === 0) {
@@ -224,4 +239,10 @@
     text-align: center;
     padding: 4px 0;
 }
+.textoverflow {
+    width: 100%;
+    overflow: hidden;
+    white-space: nowrap;
+    text-overflow: ellipsis;
+}
 </style>

+ 147 - 7
src/views/iosBasicData/SeafreightExportF/bills/assembly/formbottom.vue

@@ -58,9 +58,57 @@
 
             <el-row :gutter="20">
                 <el-col :span="6">
-                    <el-form-item label="背箱时间" prop="cyTrailerTime" >
+                    <el-form-item label="装箱方式" prop="loadType" >
                         <span slot="label">
-                            <span style="color: #1e9fff">背箱时间</span>
+                            <span style="color: #1e9fff">装箱方式</span>
+                        </span>
+                        <search-query :datalist="loadTypeData"
+                                      :selectValue="assemblyForm.loadType"
+                                      :filterable="true"
+                                      :clearable="true"
+                                      :remote="true"
+                                      :disabled="detailData.seeDisabled"
+                                      :buttonIf="false"
+                                      @corpChange="corpChange($event,'loadType')">
+                        </search-query>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="6">
+                    <el-form-item label="业务类型" prop="businessType" >
+                        <span slot="label">
+                            <span style="color: #1e9fff">业务类型</span>
+                        </span>
+                        <search-query :datalist="businessTypeData"
+                                      :selectValue="assemblyForm.businessType"
+                                      :filterable="true"
+                                      :clearable="true"
+                                      :remote="true"
+                                      :disabled="detailData.seeDisabled"
+                                      :buttonIf="false"
+                                      @corpChange="corpChange($event,'businessType')">
+                        </search-query>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="6">
+                    <el-form-item label="单据类型" prop="billType" >
+                        <span slot="label">
+                            <span style="color: #1e9fff">单据类型</span>
+                        </span>
+                        <search-query :datalist="billTypeData"
+                                      :selectValue="assemblyForm.billType"
+                                      :filterable="true"
+                                      :clearable="true"
+                                      :remote="true"
+                                      :disabled="detailData.seeDisabled"
+                                      :buttonIf="false"
+                                      @corpChange="corpChange($event,'billType')">
+                        </search-query>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="6">
+                    <el-form-item label="截单时间" prop="cyTrailerTime" >
+                        <span slot="label">
+                            <span style="color: #1e9fff">截单时间</span>
                         </span>
                         <el-date-picker
                             v-model="assemblyForm.cyTrailerTime"
@@ -69,14 +117,14 @@
                             value-format="yyyy-MM-dd hh:nn"
                             size="small"
                             :disabled="detailData.seeDisabled"
-                            placeholder="选择背箱时间">
+                            placeholder="选择截单时间">
                         </el-date-picker>
                     </el-form-item>
                 </el-col>
                 <el-col :span="6">
-                    <el-form-item label="还箱时间" prop="cyReturnTime" >
+                    <el-form-item label="截港时间" prop="cyReturnTime" >
                         <span slot="label">
-                            <span style="color: #1e9fff">还箱时间</span>
+                            <span style="color: #1e9fff">截港时间</span>
                         </span>
                         <el-date-picker
                             v-model="assemblyForm.cyReturnTime"
@@ -85,11 +133,30 @@
                             value-format="yyyy-MM-dd hh:nn"
                             size="small"
                             :disabled="detailData.seeDisabled"
-                            placeholder="选择还箱时间">
+                            placeholder="选择截港时间">
                         </el-date-picker>
                     </el-form-item>
                 </el-col>
                 <el-col :span="6">
+                    <el-form-item label="签单方式" prop="issueType" >
+                        <span slot="label">
+                            <span style="color: #1e9fff">签单方式</span>
+                        </span>
+                        <search-query :datalist="issueTypeData"
+                                      :selectValue="assemblyForm.issueType"
+                                      :filterable="true"
+                                      :clearable="true"
+                                      :remote="true"
+                                      :disabled="detailData.seeDisabled"
+                                      :buttonIf="false"
+                                      :forParameter="{key:'dictKey',label:'dictValue',value:'dictValue',}"
+                                      @remoteMethod="remoteMethod($event,'issueType')"
+                                      @corpChange="corpChange($event,'issueType')"
+                                      @corpFocus="remoteMethod($event, 'issueType')" >
+                        </search-query>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="6">
                     <el-form-item label="正本份数" prop="numberOfObl" >
                         <span slot="label">
                             <span style="color: #1e9fff">正本份数</span>
@@ -210,6 +277,29 @@
                     </el-form-item>
                 </el-col>
             </el-row>
+            <el-row>
+                <el-col :span="6">
+                    <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isLargeCargo">大件货</el-checkbox>
+                </el-col>
+                <el-col :span="6">
+                    <div>
+                        <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedLand">陆运</el-checkbox>
+                        <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedDeclare">需报关</el-checkbox>
+                        <el-checkbox size="medium" :true-label="1" :false-label="0" v-model="assemblyForm.isNeedIq">需三检</el-checkbox>
+                    </div>
+                </el-col>
+                <el-col :span="6">
+                    <el-form-item label="箱数或件数大写" prop="quantityPackingDescr" label-width="100px">
+                        <span slot="label">
+                            <span style="color: #1e9fff">箱数或件数大写</span>
+                        </span>
+                        <el-input type="age" style="width: 100%;" v-model="assemblyForm.quantityPackingDescr"
+                                  size="small" autocomplete="off"
+                                  :disabled="true"
+                                  clearable placeholder="商品包装件数英文" ></el-input>
+                    </el-form-item>
+                </el-col>
+            </el-row>
         </el-form>
 
 
@@ -279,6 +369,7 @@
 <script>
     import SearchQuery from "@/components/iosbasic-data/searchquery.vue";
     import {getBcorpslistByType} from "@/api/iosBasicData/bcorps";
+    import {getWorkDicts} from "@/api/system/dictbiz";
 
     export default {
         components: {SearchQuery},
@@ -352,6 +443,46 @@
                         value:'TEN'
                     }
                 ],
+                // 签单方式
+                issueTypeData:[],
+                // 装箱方式
+                loadTypeData:[
+                    {
+                       label:'整箱',
+                       value:'FCL'
+                    },
+                    {
+                       label:'拼箱',
+                       value:'LCL'
+                    }
+                ],
+                // 业务类型
+                businessTypeData:[
+                    {
+                        label:'海运出口',
+                        value:'SE'
+                    },
+                    {
+                        label:'海运进口',
+                        value:'SI'
+                    },
+                ],
+                // 单据类型
+                billTypeData:[
+                    {
+                        label:'直单',
+                        value:'DD'
+                    },
+                    {
+                        label:'主单',
+                        value:'MM'
+                    },
+                    {
+                        label:'分单',
+                        value:'MH'
+                    }
+                ],
+
             }
         },
         created() {
@@ -365,7 +496,10 @@
                     this.cyBcorpslistByType(value)
                 }else if (inttraArr.indexOf(name) != -1) {
                     this.inttraBcorpslistByType(value)
-                }else {}
+                }else if (name == 'issueType') {
+                    // 签单方式
+                    this.getWorkDictsfun()
+                } else {}
             },
             // 选择框的回调
             corpChange(value,name){
@@ -455,6 +589,12 @@
                     this.inttraData = res.data.data.records
                 })
             },
+            // 获取签单方式字典数据
+            getWorkDictsfun(){
+                getWorkDicts('issue_type_F').then(res=>{
+                    this.issueTypeData = res.data.data
+                })
+            },
 
 
 

+ 285 - 210
src/views/iosBasicData/SeafreightExportF/bills/billsDetails.vue

@@ -8,6 +8,12 @@
                 </el-button>
             </div>
             <div class="add-customer-btn">
+                <el-button  size="small" type="" style="margin-right: 8px"
+                            :loading="saveLoading" >预 览
+                </el-button>
+                <el-button  size="small" type="warning" style="margin-right: 8px"
+                            :loading="saveLoading" >打 印
+                </el-button>
                 <el-button  size="small" type="primary" style="margin-right: 8px" v-if="detailData.seeDisabled"
                             :loading="saveLoading" @click="editHandle">编 辑
                 </el-button>
@@ -39,7 +45,8 @@
                                                             <!--<div v-if="item[0].type == 'button'" style="width: 100%;background: #1eff11" class="buttomBlNO">-->
                                                             <!--</div>-->
                                                             <el-button v-if="item[0].type == 'button'" :disabled="item[0].disabled"
-                                                                       size="small" type="success" icon="el-icon-edit" circle @click="applyforfun(item[0].label)" >
+                                                                       size="small" type="success" icon="el-icon-edit" circle
+                                                                       @click="applyforfun(item[0].label)" >
                                                             </el-button>
                                                             <search-query v-else-if="item[0].type == 'select'"
                                                                           :datalist="item[0].dicData"
@@ -276,107 +283,6 @@ import {dateFormat} from "@/util/date";
                 },
                 basicData:{
                     column:[
-                        [
-                            {
-                                label: "业务编号",
-                                prop: "billNo",
-                                disabled:true,
-                            },
-                            {
-                                label: "单据日期",
-                                prop: "billDate",
-                                type:'date',
-                                disabled:false,
-                                rules: [{
-                                    required: true,
-                                    message: "请输入单据日期",
-                                    trigger: "blur"
-                                }]
-                            },
-                        ],
-                        [
-                            {
-                                label: "OP",  // 操作id 用户管理下拉 模糊搜索
-                                prop: "operatorName",
-                                type:'select',
-                                dicData:[],
-                                disabled:false,
-                                forParameter:{
-                                    key:'id',
-                                    label:'name',
-                                    value:'name',
-                                },
-                                rules: [{
-                                    required: true,
-                                    message: "请选择OP",
-                                    trigger: "blur"
-                                }]
-                            },
-                            {
-                                label: "业务类型", // SE=海运出口 SI=海运进口"
-                                prop: "businessType",
-                                type:'select',
-                                disabled:false,
-                                dicData:[
-                                    {
-                                        label:'海运出口',
-                                        value:'SE'
-                                    },
-                                    {
-                                        label:'海运进口',
-                                        value:'SI'
-                                    },
-                                ],
-                                rules: [{
-                                    required: true,
-                                    message: "请输入业务类型",
-                                    trigger: "blur"
-                                }]
-                            },
-                        ],
-                        [
-                            {
-                                label: "单据类型", // DD=直单(默认) MM=主单 MH=主分单 HH=从分单
-                                prop: "billType",
-                                type:'select',
-                                disabled:false,
-                                dicData:[
-                                    {
-                                        label:'直单',
-                                        value:'DD'
-                                    },
-                                    {
-                                        label:'主单',
-                                        value:'MM'
-                                    },
-                                    {
-                                        label:'主分单',
-                                        value:'MH'
-                                    }
-                                ],
-                                rules: [{
-                                    required: true,
-                                    message: "请输入单据类型",
-                                    trigger: "blur"
-                                }]
-                            },
-                            {
-                                label: "核算部门", // 核算部门Id accDept 核算部门 accDeptName 调机构管理接口
-                                prop: "accDeptName",
-                                type:'tree',
-                                dicData:[],
-                                disabled:false,
-                                forParameter:{
-                                    label: "title",
-                                    children:'children'
-                                },
-                                rules: [{
-                                    required: true,
-                                    message: "请选择核算部门",
-                                    trigger: "blur"
-                                }]
-                            },
-                        ],
                         {
                             label: "客户名称", // 调往来单位接口
                             prop: "corpCnName",
@@ -437,42 +343,37 @@ import {dateFormat} from "@/util/date";
                         ],
                         [
                             {
-                                label: "签单方式",
-                                prop: "issueType",
-                                type:'select',
-                                dicData:[],
-                                disabled:false,
-                                forParameter:{
-                                    key:'dictKey',
-                                    label:'dictValue',
-                                    value:'dictValue',
-                                },
-                                rules: [{
-                                    required: true,
-                                    message: "请输入签单方式",
-                                    trigger: "blur"
-                                }]
-                            },
-                            {
-                                label: "装箱方式", // FCL=整箱, LCL=拼箱",
-                                prop: "loadType",
+                                label: "业务来源", // OWN=公司  AGENT=代理 SALES=业务员
+                                prop: "srcType",
                                 type:'select',
                                 disabled:false,
                                 dicData:[
                                     {
-                                        label:'整箱',
-                                        value:'FCL'
+                                        label:'公司',
+                                        value:'OWN'
+                                    },
+                                    {
+                                        label:'代理',
+                                        value:'AGENT'
                                     },
                                     {
-                                        label:'拼箱',
-                                        value:'LCL'
+                                        label:'业务员',
+                                        value:'SALES'
                                     }
                                 ],
-                                rules: [{
-                                    required: true,
-                                    message: "请输入装箱方式",
-                                    trigger: "blur"
-                                }]
+                            },
+                            {
+                                label: "",
+                                prop: "srcCnName", // 来源中文 公司不是下拉写死公司两字 业务员调用户管理列表 代理调往来单位四个代理数据
+                                labelWidth:'10px',
+                                type:'select',
+                                disabled:true,
+                                dicData:[],
+                                forParameter:{
+                                    key:'id',
+                                    label:'cnName',
+                                    value:'cnName',
+                                },
                             },
                         ],
                         [
@@ -504,53 +405,39 @@ import {dateFormat} from "@/util/date";
                         ],
                         [
                             {
-                                label: "业务来源", // OWN=公司  AGENT=代理 SALES=业务员
-                                prop: "srcType",
-                                type:'select',
+                                label: "申请B/L NO",  //弹窗点击确认还是取消申请 调后台接口获取到一个编号
+                                prop: "申请B/L NO",
+                                type:'button',
+                                span:7,
+                                disabled:false,
+                            },
+                            {
+                                label: "",
+                                prop: "hblno",
+                                labelWidth:'10px',
+                                span:12,
+                                disabled:true,
+                            },
+                            {
+                                label: "", // HB/L 付款方式 PP=预付, CC=到付, FPA, Other', 申请之后默认 PP
+                                prop: "hpaymode",
+                                labelWidth:'10px',
                                 disabled:false,
+                                type:'select',
+                                span:5,
                                 dicData:[
                                     {
-                                        label:'公司',
-                                        value:'OWN'
-                                    },
-                                    {
-                                        label:'代理',
-                                        value:'AGENT'
+                                        label:'预付',
+                                        value:'PP'
                                     },
                                     {
-                                        label:'业务员',
-                                        value:'SALES'
+                                        label:'到付',
+                                        value:'CC'
                                     }
                                 ],
                             },
-                            {
-                                label: "",
-                                prop: "srcCnName", // 来源中文 公司不是下拉写死公司两字 业务员调用户管理列表 代理调往来单位四个代理数据
-                                labelWidth:'10px',
-                                type:'select',
-                                disabled:true,
-                                dicData:[],
-                                forParameter:{
-                                    key:'id',
-                                    label:'cnName',
-                                    value:'cnName',
-                                },
-                            },
                         ],
                         {
-                            label: "付费地点", // MB/L 付款地点 地点管理表
-                            prop: "mPayplace",
-                            type:'select',
-                            dicData:[],
-                            disabled:false,
-                            buttonIf:false,
-                            forParameter:{
-                                key:'id',
-                                label:'cnName',
-                                value:'cnName',
-                            },
-                        },
-                        {
                             label: "booking NO", // 订舱号
                             prop: "bookingNo",
                             disabled:false,
@@ -560,6 +447,176 @@ import {dateFormat} from "@/util/date";
                             prop: "refno",
                             disabled:false,
                         },
+                        [
+                            {
+                                label: "业务编号",
+                                prop: "billNo",
+                                disabled:true,
+                            },
+                            {
+                                label: "单据日期",
+                                prop: "billDate",
+                                type:'date',
+                                disabled:false,
+                                rules: [{
+                                    required: true,
+                                    message: "请输入单据日期",
+                                    trigger: "blur"
+                                }]
+                            },
+                        ],
+                        [
+                            {
+                                label: "OP",  // 操作id 用户管理下拉 模糊搜索
+                                prop: "operatorName",
+                                type:'select',
+                                dicData:[],
+                                disabled:false,
+                                forParameter:{
+                                    key:'id',
+                                    label:'name',
+                                    value:'name',
+                                },
+                                rules: [{
+                                    required: true,
+                                    message: "请选择OP",
+                                    trigger: "blur"
+                                }]
+                            },
+                            {
+                                label: "核算部门", // 核算部门Id accDept 核算部门 accDeptName 调机构管理接口
+                                prop: "accDeptName",
+                                type:'tree',
+                                dicData:[],
+                                disabled:false,
+                                forParameter:{
+                                    label: "title",
+                                    children:'children'
+                                },
+                                rules: [{
+                                    required: true,
+                                    message: "请选择核算部门",
+                                    trigger: "blur"
+                                }]
+                            },
+                            // {
+                            //     label: "业务类型", // SE=海运出口 SI=海运进口"
+                            //     prop: "businessType",
+                            //     type:'select',
+                            //     disabled:false,
+                            //     dicData:[
+                            //         {
+                            //             label:'海运出口',
+                            //             value:'SE'
+                            //         },
+                            //         {
+                            //             label:'海运进口',
+                            //             value:'SI'
+                            //         },
+                            //     ],
+                            //     rules: [{
+                            //         required: true,
+                            //         message: "请输入业务类型",
+                            //         trigger: "blur"
+                            //     }]
+                            // },
+                        ],
+                        // [
+                        //     {
+                        //         label: "单据类型", // DD=直单(默认) MM=主单 MH=分单 HH=从分单
+                        //         prop: "billType",
+                        //         type:'select',
+                        //         disabled:false,
+                        //         dicData:[
+                        //             {
+                        //                 label:'直单',
+                        //                 value:'DD'
+                        //             },
+                        //             {
+                        //                 label:'主单',
+                        //                 value:'MM'
+                        //             },
+                        //             {
+                        //                 label:'分单',
+                        //                 value:'MH'
+                        //             }
+                        //         ],
+                        //         rules: [{
+                        //             required: true,
+                        //             message: "请输入单据类型",
+                        //             trigger: "blur"
+                        //         }]
+                        //     },
+                        //     {
+                        //         label: "核算部门", // 核算部门Id accDept 核算部门 accDeptName 调机构管理接口
+                        //         prop: "accDeptName",
+                        //         type:'tree',
+                        //         dicData:[],
+                        //         disabled:false,
+                        //         forParameter:{
+                        //             label: "title",
+                        //             children:'children'
+                        //         },
+                        //         rules: [{
+                        //             required: true,
+                        //             message: "请选择核算部门",
+                        //             trigger: "blur"
+                        //         }]
+                        //     },
+                        // ],
+                        // [
+                        //     {
+                        //         label: "签单方式",
+                        //         prop: "issueType",
+                        //         type:'select',
+                        //         dicData:[],
+                        //         disabled:false,
+                        //         forParameter:{
+                        //             key:'dictKey',
+                        //             label:'dictValue',
+                        //             value:'dictValue',
+                        //         },
+                        //         rules: [{
+                        //             required: true,
+                        //             message: "请输入签单方式",
+                        //             trigger: "blur"
+                        //         }]
+                        //     },
+                        //     {
+                        //         label: "装箱方式", // FCL=整箱, LCL=拼箱",
+                        //         prop: "loadType",
+                        //         type:'select',
+                        //         disabled:false,
+                        //         dicData:[
+                        //             {
+                        //                 label:'整箱',
+                        //                 value:'FCL'
+                        //             },
+                        //             {
+                        //                 label:'拼箱',
+                        //                 value:'LCL'
+                        //             }
+                        //         ],
+                        //         rules: [{
+                        //             required: true,
+                        //             message: "请输入装箱方式",
+                        //             trigger: "blur"
+                        //         }]
+                        //     },
+                        // ],
+                        // {
+                        //     label: "付费地点", // MB/L 付款地点 地点管理表
+                        //     prop: "mPayplace",
+                        //     type:'select',
+                        //     dicData:[],
+                        //     disabled:false,
+                        //     buttonIf:false,
+                        //     forParameter:{
+                        //         key:'id',
+                        //         label:'cnName',
+                        //         value:'cnName',
+                        //     },
+                        // },
                         // {
                         //     label: "COLOADER", // Co-Loader 中文名称  往来单位 类别
                         //     prop: "coloaderCnName",
@@ -574,40 +631,7 @@ import {dateFormat} from "@/util/date";
                         //         value:'cnName',
                         //     },
                         // },
-                        [
-                            {
-                                label: "申请B/L NO",  //弹窗点击确认还是取消申请 调后台接口获取到一个编号
-                                prop: "申请B/L NO",
-                                type:'button',
-                                span:7,
-                                disabled:false,
-                            },
-                            {
-                                label: "",
-                                prop: "hblno",
-                                labelWidth:'10px',
-                                span:12,
-                                disabled:true,
-                            },
-                            {
-                                label: "", // HB/L 付款方式 PP=预付, CC=到付, FPA, Other', 申请之后默认 PP
-                                prop: "hpaymode",
-                                labelWidth:'10px',
-                                disabled:true,
-                                type:'select',
-                                span:5,
-                                dicData:[
-                                    {
-                                        label:'预付',
-                                        value:'PP'
-                                    },
-                                    {
-                                        label:'到付',
-                                        value:'CC'
-                                    }
-                                ],
-                            },
-                        ],
+
                     ]
                 },
                 activeName:'first',
@@ -615,6 +639,21 @@ import {dateFormat} from "@/util/date";
                 saberUserInfo:{}, // 当前登录人信息
             }
         },
+        watch:{
+            'form.billType':{
+                // 执行方法
+                handler(oldValue,newValue) {
+                    // 只要分单不能编辑
+                    if (oldValue == 'MH') {
+                        this.columnforfun('hblno').disabled = true
+                    }else {
+                        this.columnforfun('hblno').disabled = false
+                    }
+                },
+                deep: true, // 深度监听
+                immediate: true  // 第一次改变就执行
+            }
+        },
         created() {
             this.saberUserInfo = JSON.parse(localStorage.getItem('saber-userInfo')).content
             // 判断是否员id, 有id 就不显示
@@ -690,12 +729,6 @@ import {dateFormat} from "@/util/date";
                     this.columnforfun('mPayplace').dicData = res.data.data.records
                 })
             },
-            // 获取签单方式字典数据
-            getWorkDictsfun(){
-                getWorkDicts('issue_type_F').then(res=>{
-                    this.columnforfun('issueType').dicData = res.data.data
-                })
-            },
             // 获取业务来源代理数据
             agentBcorpsListfun(cnName){
                 let corpType = '1712285382575398914,1712285645314990082,1712285842321448962,1712286433378574338'
@@ -756,9 +789,6 @@ import {dateFormat} from "@/util/date";
                         // 代理
                         this.agentBcorpsListfun(value)
                     }
-                } else if (name == 'issueType') {
-                    // 签单方式
-                    this.getWorkDictsfun()
                 }else {
 
                 }
@@ -889,6 +919,14 @@ import {dateFormat} from "@/util/date";
             },
             // 申请B/L NO
             applyforfun(text){
+                // 如果不是分单
+                if (this.form.billType != 'MH') {
+                    this.$message({
+                        message: '只要分单需要申请',
+                        type: 'warning'
+                    });
+                    return
+                }
                 if (!this.form.businessType) {
                     this.$message({
                         message: '请先选择业务类型',
@@ -947,6 +985,20 @@ import {dateFormat} from "@/util/date";
             billsSubmitfun(){
                 this.form.billNoFormat = 'HYCK'
                 this.form.businessTypeId = '1714186930489712641'
+                // 把拼接的数据拆开 开始 🐒🐒🐒🐒🐒🐒🐒🐒🐒🐒🐒🐒🐒🐒
+                // 发货人
+                this.form.hShipperCnName = this.form.hShipperCnName.split(' - ')[0]
+                // 收货人
+                this.form.hConsigneeCnName = this.form.hConsigneeCnName.split(' - ')[0]
+                // 通知人
+                this.form.hNotifyCnName = this.form.hNotifyCnName.split(' - ')[0]
+                // 船公司
+                this.form.carrierCnName = this.form.carrierCnName.split(' - ')[0]
+
+                // 把拼接的数据拆开 结束 💩💩💩💩💩💩💩💩💩💩💩💩💩💩
+                console.log(this.form,985)
+                // return
+
                 billsSubmit(this.form).then(res=>{
                     this.$message({
                         type: "success",
@@ -961,6 +1013,9 @@ import {dateFormat} from "@/util/date";
                 const res = await billsDetail(id)
                 this.form = res.data.data;
                 this.pageLoading = false
+                console.log(this.form,1000)
+                this.searchMontage() // 下拉 中文名称和编号拼接
+
                 // 配箱最上面可以编辑
                 for(let item of this.form.containersList) {
                     item.edit = false
@@ -994,6 +1049,26 @@ import {dateFormat} from "@/util/date";
                     }
                     item.edit = false
                 }
+
+            },
+            // 下拉 中文名称和编号拼接
+            searchMontage(){
+                // 发货人
+                if (this.form.hShipperCnName) {
+                    this.form.hShipperCnName = this.form.hShipperCnName + ' - ' + this.form.hShipperCode
+                }
+                // 收货人
+                if (this.form.hConsigneeCnName) {
+                    this.form.hConsigneeCnName = this.form.hConsigneeCnName + ' - ' + this.form.hConsigneeCode
+                }
+                // 通知人
+                if (this.form.hNotifyCnName) {
+                    this.form.hNotifyCnName = this.form.hNotifyCnName + ' - ' + this.form.hNotifyCode
+                }
+                // 船公司
+                if (this.form.carrierCnName) {
+                    this.form.carrierCnName = this.form.carrierCnName + ' - ' + this.form.carrierCode
+                }
             },
             // tbas切换
             handleClick(tba,event) {

+ 5 - 5
src/views/iosBasicData/SeafreightExportF/bills/index.vue

@@ -219,7 +219,7 @@
               </template>
 
               <template slot="menuLeft">
-                  <el-button type="primary" size="small" icon="el-icon-plus" @click="addbtnfun()">新增海运出口
+                  <el-button type="primary" size="small" icon="el-icon-plus" @click="addbtnfun()">新建业务
                   </el-button>
                   <el-button type="danger"
                              size="small"
@@ -231,7 +231,7 @@
                              size="small"
                              icon="el-icon-plus"
                              plain
-                             @click="increaseMawb">添加到主单
+                             @click="increaseMawb">分单->主单
                   </el-button>
                   <el-button type="danger"
                              size="small"
@@ -277,7 +277,7 @@
                   </avue-text-ellipsis>
               </template>
               <template slot="expand" slot-scope="{row}" >
-                  <SplitList :typeMenu="true" :data="row.billsListAllData" :loading="SplitLoading" ></SplitList>
+                  <SplitList :typeMenu="true" :data="row.billsListAllData" :loading="SplitLoading" @corpfun="rowCellfun" ></SplitList>
               </template>
               <temolate slot="billStatus" slot-scope="{row}">
                   <span v-if="row.billStatus == item.dictKey"
@@ -364,7 +364,7 @@ import SearchQuery from "@/components/iosbasic-data/searchquery.vue";
                   label: '主单',
                   value: 'MM'
               },{
-                  label: '分单',
+                  label: '分单',
                   value: 'MH'
               }
           ],
@@ -463,7 +463,7 @@ import SearchQuery from "@/components/iosbasic-data/searchquery.vue";
                     label: '主单',
                     value: 'MM'
                 },{
-                    label: '分单',
+                    label: '分单',
                     value: 'MH'
                 }],
             },