Qukatie před 7 měsíci
rodič
revize
708153341d

+ 14 - 0
src/router/views/index.js

@@ -4300,5 +4300,19 @@ export default [{
     },
     component: () => import( /* webpackChunkName: "views" */ '@/views/iosBasicData/businessCenter/customerLetter/index')
   }]
+},
+{
+  path: '/iosBasicData/boxPlan/index',
+  component: Layout,
+  hidden: true,
+  children: [{
+    path: '/iosBasicData/boxPlan/index',
+    name: '用箱计划',
+    meta: {
+      i18n: '/iosBasicData/boxPlan/index',
+      keepAlive: true,
+    },
+    component: () => import( /* webpackChunkName: "views" */ '@/views/iosBasicData/boxPlan/index')
+  }]
 }
 ]

+ 50 - 1
src/util/date.js

@@ -208,9 +208,58 @@ export function getYearDate() {
 }
 export function getMonthDate() {
   const date = new Date();
-  return date.getMonth()+1
+  return date.getMonth() + 1
 }
+//获取当前时间week+2周的周期和时间
+export function getWeekNumber() {
+  const date = new Date()
+  date.setDate(date.getDate() + 14);
+  // 获取当年1月1日
+  const firstDay = new Date(date.getFullYear(), 0, 1);
 
+  // 找到第一个星期一
+  while (firstDay.getDay() !== 1) {
+    firstDay.setDate(firstDay.getDate() + 1);
+  }
+
+  // 计算当前日期与第一个星期一的差值
+  const diff = date - firstDay;
+  const oneDay = 1000 * 60 * 60 * 24;
+  // 获取本周周一的日期
+  const monday = new Date(date);
+  monday.setDate(date.getDate() - date.getDay() + (date.getDay() === 0 ? -6 : 1));
+
+  // 获取本周周日的日期
+  const sunday = new Date(monday);
+  sunday.setDate(monday.getDate() + 6);
+  // 计算周数(从0开始,所以+1)
+  const weekNumber = Math.ceil(diff / oneDay / 7) + 1;
+  console.log(weekNumber)
+  return {
+    year: date.getFullYear().toString(),
+    weekNumber: weekNumber,
+    mondayDate: dateFormat(monday, "yyyy-MM-dd"),
+    sundayDate: dateFormat(sunday, "yyyy-MM-dd")
+  };
+}
+//一年有多少周 从当年的第一个星期一开始计算
+export function getWeeksInYear(year) {
+  // 找到该年第一个星期一
+  let firstMonday = new Date(year, 0, 1);
+  while (firstMonday.getDay() !== 1) {
+    firstMonday.setDate(firstMonday.getDate() + 1);
+  }
+
+  // 计算该年最后一天
+  const lastDay = new Date(year, 11, 31);
+
+  // 计算两个日期之间的天数差
+  const timeDiff = lastDay - firstMonday;
+  const daysDiff = Math.ceil(timeDiff / (1000 * 60 * 60 * 24));
+
+  // 计算完整周数(向上取整)
+  return Math.ceil(daysDiff / 7); // +1包含第一周
+}
 /**
  * 获取 n 天后的日期
  * yyyy-MM-dd

+ 56 - 103
src/views/iosBasicData/boxPlan/detailsPage.vue

@@ -32,15 +32,14 @@
     <div style="margin-top: 50px">
       <trade-card title="基础信息">
         <avue-form :option="optionForm" v-model="form" ref="form">
-          <tempalte slot="polCname">
-            <dic-select v-model="form.polCname" placeholder="起运港" key="id" label="cnName" res="records"
-              url="/blade-los/bports/list" :filterable="true" :remote="true" dataName="cnName"
-              @selectChange="dicChange('polCname', $event)"></dic-select>
+          <tempalte slot="year">
+            <el-date-picker v-model="form.year" type="year" placeholder="选择日期" format="yyyy" value-format="yyyy"
+              @change="dicChange('year', $event)">
+            </el-date-picker>
           </tempalte>
-          <tempalte slot="podCname">
-            <dic-select v-model="form.podCname" placeholder="目的港" key="id" label="cnName" res="records"
-              url="/blade-los/bports/list" :filterable="true" :remote="true" dataName="cnName"
-              @selectChange="dicChange('podCname', $event)"></dic-select>
+          <tempalte slot="week">
+            <el-input-number style="width: 100%;" v-model="form.week" @change="dicChange('week', $event)"
+              placeholder="请输入 周" size="small" :controls="false"></el-input-number>
           </tempalte>
         </avue-form>
       </trade-card>
@@ -142,15 +141,15 @@ import dicSelect from "@/components/dicSelect/main";
 import checkSchedule from "@/components/checkH/checkSchedule.vue";
 import businessReports from "@/components/tradeAgency/businessReports.vue";
 import reports from "@/components/tradeAgency/reports.vue";
-import { dateFormat } from "@/util/date";
-import { bcurrencyGetExrate } from "@/api/iosBasicData/rateManagement";
 import { getToken } from "@/util/auth";
+import { getWeekNumber, getWeeksInYear, getYearDate } from "@/util/date";
 import _ from "lodash";
 import { Header } from "element-ui";
 export default {
   name: "detailsPage",
   data() {
     return {
+      weekMax: 1,
       boxSelectionList: [],
       rulesList: [],
       excelBox: false,
@@ -181,58 +180,6 @@ export default {
           }
         ]
       },
-      activationForm: {},
-      activationOption: {
-        menuBtn: false,
-        span: 6,
-        disabled: false,
-        column: [
-          {
-            label: '放箱号',
-            prop: 'containerNumber',
-            span: 24,
-            rules: [{
-              required: true,
-              message: " ",
-              trigger: "blur"
-            }],
-          },
-          {
-            label: '起运港',
-            prop: 'polCname',
-            span: 24,
-            rules: [{
-              required: true,
-              message: " ",
-              trigger: "blur"
-            }],
-          },
-          {
-            label: '目的港',
-            prop: 'podCname',
-            span: 24,
-            rules: [{
-              required: true,
-              message: " ",
-              trigger: "blur"
-            }],
-          },
-          {
-            label: '启用日期',
-            prop: 'activationDate',
-            span: 24,
-            type: "date",
-            format: "yyyy-MM-dd",
-            valueFormat: "yyyy-MM-dd HH:mm:ss",
-            rules: [{
-              required: true,
-              message: "",
-              trigger: "blur"
-            }]
-          },
-        ]
-      },
-      activationDialog: false,
       itemCIds: null,
       feeType: null,
       selectionList: [],
@@ -244,8 +191,11 @@ export default {
       editButton: false,
       editDisabled: false,
       form: {
-        type: "DXCB",
         boxAdjustmentCostList: [],
+        year: getWeekNumber().year,
+        week: getWeekNumber().weekNumber,
+        startDate: getWeekNumber().mondayDate,
+        endDate: getWeekNumber().sundayDate
       },
       oldForm: {},
       optionForm: {
@@ -255,24 +205,40 @@ export default {
         labelWidth: 100,
         column: [
           {
-            label: '起运港',
-            prop: 'polCname',
+            label: "所属公司",
+            prop: "branchName",
             disabled: false,
-            rules: [{
-              required: true,
-              message: " ",
-              trigger: "blur"
-            }],
           },
           {
-            label: '目的港',
-            prop: 'podCname',
+            label: "年",
+            prop: "year",
+            // type: 'year',
+            disabled: false,
+            // format: "yyyy",
+            // valueFormat: "yyyy"
+          },
+          {
+            label: "WEEK",
+            prop: "week",
             disabled: false,
-            rules: [{
-              required: true,
-              message: " ",
-              trigger: "blur"
-            }],
+          },
+          {
+            label: "开始日期",
+            prop: "startDate",
+            disabled: false,
+            search: true,
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd",
+          },
+          {
+            label: "结束日期",
+            prop: "endDate",
+            disabled: false,
+            search: true,
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd",
           },
           {
             label: '备注',
@@ -908,7 +874,6 @@ export default {
       feeCenterListD: [],
       feeCenterListC: [],
       roleName: [],
-      updateSearchKey: new Date().getTime(),
     }
   },
   components: {
@@ -923,16 +888,17 @@ export default {
   async created() {
     this.roleName = localStorage.getItem('roleName').split(',')
     this.option = await this.getColumnData(this.getColumnName(483), this.optionBack);
-    if (this.detailData.id) {
+    this.weekMax = getWeeksInYear(getYearDate())
+    if (this.detailData && this.detailData.id) {
       // this.editButton = true
       // this.editDisabled = true
       // this.optionForm.disabled = true
       this.getDetail(this.detailData.id)
     }
-    if (this.$route.query.params) {
+    if (this.$route.query && this.$route.query.params) {
       this.getDetail(this.$route.query.params)
     }
-    if (this.detailData.copyId) {
+    if (this.detailData && this.detailData.copyId) {
       this.getCopydate(this.detailData.copyId)
     }
   },
@@ -962,30 +928,17 @@ export default {
       );
     },
     dicChange(name, row) {
-
-      if (name == 'podCname') {
+      if (name == 'year') {
         if (row) {
-          this.form.podId = row.id
-          this.form.podCode = row.code
-          this.form.podEname = row.enName
+          this.weekMax = getWeeksInYear(row)
+          this.form.week =0 
+          console.log(this.form)
         } else {
-          this.form.podId = null
-          this.form.podCode = null
-          this.form.podEname = null
-          this.form.podCname = null
+          this.form.week =0
         }
       }
-      if (name == 'polCname') {
-        if (row) {
-          this.form.polId = row.id
-          this.form.polCode = row.code
-          this.form.polEname = row.enName
-        } else {
-          this.form.polId = null
-          this.form.polCode = null
-          this.form.polEname = null
-          this.form.polCname = null
-        }
+      if(name=='week'){
+        
       }
     },
     rowDicChange(name, row, el, index) {
@@ -1301,7 +1254,7 @@ export default {
       }
       if (name == 'D费用批量删除') {
         for (let row of this.selectionfeedList) {
-          if (row.automaticGenerated==1) {
+          if (row.automaticGenerated == 1) {
             return this.$message.error("系统自动生成的费用不允许删除");
           }
         }
@@ -1381,7 +1334,7 @@ export default {
       }
       if (name == 'C费用批量删除') {
         for (let row of this.selectionfeecList) {
-          if (row.automaticGenerated==1) {
+          if (row.automaticGenerated == 1) {
             return this.$message.error("系统自动生成的费用不允许删除");
           }
         }

+ 39 - 33
src/views/iosBasicData/boxPlan/index.vue

@@ -12,7 +12,7 @@
           </el-button>
           <el-button type="success" size="small" :disabled="selectionList.length != 1" @click="copyButton">复制单据
           </el-button>
-          <el-button type="warning" size="small"  disabled @click="outExport">导 出
+          <el-button type="warning" size="small" disabled @click="outExport">导 出
           </el-button>
         </template>
         <template slot="menu" slot-scope="{ row, index }">
@@ -57,7 +57,7 @@ export default {
         menuWidth: 140,
         tip: false,
         searchShow: true,
-        searchMenuSpan: 12,
+        searchMenuSpan: 18,
         border: true,
         index: true,
         addBtn: false,
@@ -70,43 +70,29 @@ export default {
         searchIndex: 3,
         column: [
           {
-            label: '系统号',
-            prop: 'sysNo',
-            overHidden: true,
-          },
-          {
-            label: '起运港',
-            prop: 'polCname',
+            label: "所属公司",
+            prop: "branchName",
             overHidden: true,
             search: true,
-            searchOrder: 1,
             type: "select",
             filterable: true,
-            remote: true,
-            dicUrl: "/api/blade-los/bports/list?status=0&size=5&current=1&cnName={{key}}",
+            dicUrl: "/api/blade-system/dept/lazy-list",
             props: {
-              label: "cnName",
-              value: "cnName",
-              desc: 'code',
-              res: "data.records"
+              label: "deptName",
+              value: "deptName",
             },
           },
           {
-            label: '目的港',
-            prop: 'podCname',
+            label: "年",
+            prop: "year",
+            overHidden: true,
+            search: true,
+          },
+          {
+            label: "WEEK",
+            prop: "week",
             overHidden: true,
             search: true,
-            searchOrder: 2,
-            type: "select",
-            filterable: true,
-            remote: true,
-            dicUrl: "/api/blade-los/bports/list?status=0&size=5&current=1&cnName={{key}}",
-            props: {
-              label: "cnName",
-              value: "cnName",
-              desc: 'code',
-              res: "data.records"
-            },
           },
           {
             label: "制单人",
@@ -130,7 +116,27 @@ export default {
             overHidden: true,
             format: "yyyy-MM-dd",
             valueFormat: "yyyy-MM-dd HH:mm:ss"
-          }
+          },
+          {
+            label: "开始日期",
+            prop: "startDate",
+            width: "100",
+            overHidden: true,
+            search: true,
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd 00:00:00",
+          },
+          {
+            label: "结束日期",
+            prop: "endDate",
+            width: "100",
+            overHidden: true,
+            search: true,
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd 23:59:59",
+          },
         ]
       },
       data: [],
@@ -224,7 +230,7 @@ export default {
       if (JSON.stringify(this.$route.query) != "{}") {
         this.$router.$avueRouter.closeTag();
         this.$router.push({
-          path: "/boxManagement/buyContainer/index"
+          path: "/iosBasicData/boxPlan/index"
         });
       }
       this.detailData = {}
@@ -268,7 +274,7 @@ export default {
         this.$message.success("保存成功");
         //关闭窗口
         this.$refs[ref].$refs.dialogColumn.columnBox = false;
-        this.selectionList=[]
+        this.selectionList = []
         this.searchReset()
       }
     },
@@ -279,7 +285,7 @@ export default {
       if (inSave) {
         this.$message.success("重置成功");
         this.$refs[ref].$refs.dialogColumn.columnBox = false;
-        this.selectionList=[]
+        this.selectionList = []
         this.searchReset()
       }
     },

+ 78 - 110
src/views/iosBasicData/businessCenter/customerLetter/index.vue

@@ -14,24 +14,30 @@
                         @click="copyButton">复制单据
                     </el-button>
                     <el-button type="warning" size="small" @click="outExport">导 出</el-button>
+                    <div style="margin-top: 10px">
+                        <el-tabs type="card" v-model="query.billStatus" @tab-click="handleClick">
+                            <el-tab-pane label="录入" name="1"></el-tab-pane>
+                            <el-tab-pane label="提交" name="2"></el-tab-pane>
+                            <el-tab-pane label="受理" name="3"></el-tab-pane>
+                            <el-tab-pane label="待确认" name="4"></el-tab-pane>
+                            <el-tab-pane label="已审核" name="5"></el-tab-pane>
+                            <el-tab-pane label="全部" name="0"></el-tab-pane>
+                        </el-tabs>
+                    </div>
                 </template>
                 <template slot="menu" slot-scope="{ row, index }">
                     <el-button size="small" icon="el-icon-edit" type="text" @click="rowEdit(row)">编辑</el-button>
                     <el-button size="small" icon="el-icon-delete" type="text" @click="rowDel(row, index)"
-                        :disabled="row.issueStatus != 0">删 除</el-button>
+                        :disabled="row.status != 0">删 除</el-button>
                 </template>
-                <template slot="actualShippingCompanyCname" slot-scope="{ row }">
-                    <span style="color: #1e9fff;cursor: pointer;" @click="rowEdit(row)">{{
-                        row.actualShippingCompanyCname }}</span>
-                </template>
-                <template slot="status" slot-scope="{ row }">
+                <!-- <template slot="status" slot-scope="{ row }">
                     <span v-if="row.issueStatus == 0"
                         style="color: #fff;border-radius: 30px;padding: 2px 15px;background-color: #409EFF;">{{
                             row.status }}</span>
                     <span v-if="row.issueStatus != 0"
                         style="color: #fff;border-radius: 30px;padding: 2px 15px;background-color: #67C23A;">{{
                             row.status }}</span>
-                </template>
+                </template> -->
             </avue-crud>
         </basic-container>
         <detailsPage v-if="!isShow" :detailData="detailData" @goBack="goBack"></detailsPage>
@@ -51,7 +57,8 @@ export default {
             isShow: true,
             form: {},
             query: {
-                businessType: 'KHTS'
+                businessType: 'KHTS',
+                billStatus: '1'
             },
             loading: false,
             page: {
@@ -67,7 +74,7 @@ export default {
                 menuWidth: 140,
                 tip: false,
                 searchShow: true,
-                searchMenuSpan: 18,
+                searchMenuSpan: 24,
                 border: true,
                 index: true,
                 addBtn: false,
@@ -80,74 +87,38 @@ export default {
                 searchIndex: 3,
                 column: [
                     {
-                        label: "系统号",
-                        prop: "businessNo",
-                        width: "120",
-                        overHidden: true,
-                    },
-                    {
-                        label: '所属公司',
-                        prop: "branchName",
-                        width: "120",
-                        overHidden: true,
-                    },
-                    {
-                        label: '预定舱单号',
-                        prop: "temporaryNo",
+                        label: 'MB/L NO',
+                        prop: "mblno",
                         width: "100",
                         search: true,
                         overHidden: true,
                     },
                     {
-                        label: 'OP',
-                        prop: "operatorName",
-                        width: "100",
-                        overHidden: true,
-                    },
-                    {
-                        label: '客服',
-                        prop: "customerServiceName",
-                        width: "100",
-                        overHidden: true,
-                    },
-                    {
-                        label: '承运人',
-                        prop: "actualShippingCompanyCname",
-                        width: "100",
-                        overHidden: true,
-                    },
-                    {
-                        label: "船公司",
-                        prop: "carrierCnName",
-                        width: "80",
-                        overHidden: true,
-                        search: true,
-                        type: 'select',
-                        filterable: true,
-                        remote: true,
-                        dicUrl: "/api/blade-los/bcorps/list?current=1&size=5&corpTypeName=船公司&cnName={{key}}",
-                        props: {
-                            label: 'shortName',
-                            value: 'shortName',
-                            desc: 'code',
-                            res: 'data.records'
-                        },
-                    },
-                    {
-                        label: "航线",
-                        prop: "lineCnName",
-                        width: "80",
+                        label: "订单状态",
+                        prop: "billStatus",
+                        width: "120",
                         overHidden: true,
-                        search: true,
-                        type: 'select',
-                        filterable: true,
-                        remote: true,
-                        dicUrl: "/api/blade-los/blines/list?cnName={{key}}",
-                        props: {
-                            label: 'cnName',
-                            value: 'cnName',
-                            res: 'data.records'
-                        },
+                        // search: true,
+                        // type: 'select',
+                        // dicData: [{
+                        //     label: '全部',
+                        //     value: '0',
+                        // }, {
+                        //     label: '录入',
+                        //     value: '1',
+                        // }, {
+                        //     label: '提交',
+                        //     value: '2',
+                        // }, {
+                        //     label: '受理',
+                        //     value: '3',
+                        // }, {
+                        //     label: '待确认',
+                        //     value: '4',
+                        // }, {
+                        //     label: '已审核',
+                        //     value: '5',
+                        // }],
                     },
                     {
                         label: "起运港",
@@ -183,13 +154,6 @@ export default {
                             res: 'data.records'
                         },
                     },
-
-                    {
-                        label: '船司约号',
-                        prop: "carrierArgreementNo",
-                        width: "100",
-                        overHidden: true,
-                    },
                     {
                         label: 'ETD',
                         prop: "etd",
@@ -200,14 +164,22 @@ export default {
                         valueFormat: "yyyy-MM-dd 00:00:00",
                     },
                     {
-                        label: '付费方式',
-                        prop: "mpaymode",
+                        label: '订舱日期',
+                        prop: "bookingDate",
                         width: "100",
                         overHidden: true,
+                        search: true,
+                        type: "date",
+                        searchProp: "bookingDateList",
+                        unlinkPanels: true,
+                        searchRange: true,
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd HH:mm:ss",
+                        searchDefaultTime: ["00:00:00", "23:59:59"],
                     },
                     {
-                        label: '箱属',
-                        prop: "boxBelongsTo",
+                        label: '付费方式',
+                        prop: "mpaymode",
                         width: "100",
                         overHidden: true,
                     },
@@ -218,13 +190,6 @@ export default {
                         overHidden: true,
                     },
                     {
-                        label: '总TEU',
-                        prop: "teu",
-                        width: "100",
-                        overHidden: true,
-                    },
-
-                    {
                         label: '件数',
                         prop: "quantity",
                         width: "100",
@@ -251,20 +216,20 @@ export default {
                         overHidden: true,
                     },
                     {
-                        label: '订舱代理',
-                        prop: "bookingAgentCnName",
+                        label: '发货人',
+                        prop: "hshipperDetails",
                         width: "100",
                         overHidden: true,
                     },
                     {
-                        label: '订舱备注',
-                        prop: "cyRemarks",
+                        label: '收货人',
+                        prop: "hconsigneeDetails",
                         width: "100",
                         overHidden: true,
                     },
                     {
-                        label: 'MB/L NO',
-                        prop: "mblno",
+                        label: '通知人',
+                        prop: "hnotifyDetails",
                         width: "100",
                         overHidden: true,
                     },
@@ -275,31 +240,28 @@ export default {
                         overHidden: true,
                     },
                     {
-                        label: '航次',
-                        prop: "voyageNo",
+                        label: '唛头',
+                        prop: "marks",
                         width: "100",
                         overHidden: true,
-                        type: "date",
-                        format: "yyyy-MM-dd",
-                        valueFormat: "yyyy-MM-dd HH:mm:ss",
                     },
                     {
-                        label: '截单日期',
-                        prop: "cyTrailerTime",
+                        label: '货物',
+                        prop: "commodityDescr",
+                        width: "100",
+                        overHidden: true,
+                    },
+                    {
+                        label: '船名',
+                        prop: "vesselCnName",
                         width: "100",
                         overHidden: true,
-                        type: "date",
-                        format: "yyyy-MM-dd",
-                        valueFormat: "yyyy-MM-dd HH:mm:ss",
                     },
                     {
-                        label: '截港日期',
-                        prop: "cyReturnTime",
+                        label: '航次',
+                        prop: "voyageNo",
                         width: "100",
                         overHidden: true,
-                        type: "date",
-                        format: "yyyy-MM-dd",
-                        valueFormat: "yyyy-MM-dd HH:mm:ss",
                     },
                     {
                         label: "制单人",
@@ -351,6 +313,12 @@ export default {
         }, 100);
     },
     methods: {
+        handleClick(tab, event) {
+            // if (this.query.billStatus == 4) {
+            //     this.query.billStatus = null;
+            // }
+            this.onLoad(this.page, this.query);
+        },
         addButton() {
             this.isShow = false
         },

+ 27 - 7
src/views/iosBasicData/costcenter/rt&fd/index.vue

@@ -12,8 +12,8 @@
         </template>
         <template slot="podCnameSearch" slot-scope="{disabled,size}">
           <dic-select v-model="form.podCname" placeholder="港口" label="code" url="/blade-los/bports/listAll?status=0"
-            :filterable="true" :multiple="true"  dataType="string"
-            @selectChange="dicChange('podCname', $event)" :slotRight="true" rightLabel="code"></dic-select>
+            :filterable="true" :multiple="true" dataType="string" @selectChange="dicChange('podCname', $event)"
+            :slotRight="true" rightLabel="code"></dic-select>
         </template>
       </avue-crud>
     </basic-container>
@@ -83,6 +83,16 @@ export default {
             }
           },
           {
+            label: '承运人',
+            prop: 'shippingCompanyCname',
+            overHidden: true,
+          },
+          {
+            label: '利润',
+            prop: 'profitPol',
+            overHidden: true,
+          },
+          {
             label: 'POD&L',
             prop: 'podLCname',
             overHidden: true,
@@ -106,6 +116,16 @@ export default {
             }
           },
           {
+            label: '承运人',
+            prop: 'shippingCompanyCnamePodL',
+            overHidden: true,
+          },
+          {
+            label: '利润',
+            prop: 'profitPodL',
+            overHidden: true,
+          },
+          {
             label: 'POD',
             prop: 'podCname',
             overHidden: true,
@@ -113,7 +133,7 @@ export default {
             searchSpan: 12
           },
           {
-            label: '利润',
+            label: '合计利润',
             prop: 'profit',
             overHidden: true,
           },
@@ -208,10 +228,10 @@ export default {
         this.loading = true;
         getList(obj).then(res => {
           this.data = res.data.data;
-          this.$nextTick(() => {
-            this.$refs.crud.doLayout();
-            this.$refs.crud.dicInit();
-          });
+          // this.$nextTick(() => {
+          //   this.$refs.crud.doLayout();
+          //   this.$refs.crud.dicInit();
+          // });
         }).finally(() => {
           this.loading = false;
         })