Ver código fonte

修改内转钢材到异地库以及销售汽运结算

luobang 2 anos atrás
pai
commit
596387639a

+ 1 - 16
build/utils.js

@@ -15,23 +15,8 @@ const devPathSrc = path.resolve(__dirname, "../../../src"); // node_modules应
 // ['index','appoint','configManager','homepage',''inward,'queue','RMS','sale','serviceManager','SporadicManage'
 //       统计报表       组织机构/系统管理 采购  仓储
 //  'statisticalReport','systemConfig','TMS','WMS','workFlow']
-// let devModules = ["index", "appoint", "statisticalReport"];
-// let devModules = ["index", "statisticalReport", "appoint", "TMS"];
-// let devModules = ["index", "statisticalReport", "TMS", "appoint"];
-
-// let devModules = ["all"];
-// let devModules = ["all"];
 // let devModules = ["index", "appoint", "statisticalReport", "WMS","TMS"];
-let devModules = ["index", "inward", "appoint", "queue"];
-// let devModules = ["index", "appoint", "statisticalReport", "WMS"];
-// let devModules = ["index", "appoint", "inward", "statisticalReport", "RMS"];
-// let devModules = ["index", "appoint", "inward", "TMS"];
-// let devModules = ["all"];
-// let devModules = ["index", "appoint", "inward", "queue", "statisticalReport"];
-// let devModules = ['index','appoint','sale','statisticalReport','RMS','TMS','WMS']
-// let devModules = ["index", "ADMINISTRATORS", "RMS"];
-// let devModules = ["index", "inward", "statisticalReport"];
-// let devModules = ['index','statisticalReport','inward']
+let devModules = ["all"];
 
 if (pathSrc.indexOf("node_modules") > -1) {
   devModules = require("../../../cors.js").devModules;

+ 2 - 2
config/index.js

@@ -74,8 +74,8 @@ let proxyTable = {
     }
   },
   "/views/api/v1": {
-    // target: "http://172.16.33.166:80",
-    target: "http://192.168.1.109:8080",
+    target: "http://172.16.33.166:80",
+    // target: "http://192.168.1.109:8080",
     ws: true,
     pathRewrite: {
       "^/views/api/v1": "/api/v1"

+ 1 - 1
src/views/appoint/components/saleContract/saleOrderSteel.vue

@@ -3,7 +3,7 @@
   <div class="salePlan">
     <div class="top">
       <el-form :inline="true">
-        <el-form-item>
+        <el-form-item v-if="activeName != 'first'">
           <el-date-picker
             v-model="startTime"
             type="datetime"

+ 0 - 5
src/views/inward/components/offsetSteel/saleSteelTruckOrder/saleTruckPreview.vue

@@ -49,11 +49,6 @@
             <i class="el-icon-search"></i>
           </el-button>
         </el-form-item>
-        <el-form-item>
-          <el-button type="primary" @click="exportAllReportToExcel"
-            ><i class="el-icon-download"></i>Excel</el-button
-          >
-        </el-form-item>
         <el-form-item>
           <el-button type="primary" @click="refresh">
             <i class="el-icon-refresh"></i>

+ 312 - 245
src/views/sale/components/transportFreight/saleTruckSettlement/bmsTruckDetailOrder.vue

@@ -3,98 +3,142 @@
   <div class="steel_inbound">
     <div class="sache">
       <el-input placeholder="请输入内容" v-model="input" clearable> </el-input>
-      <el-button type="primary" class="btn" @click="onclick">
-        <i class="el-icon-search"></i>查询
-      </el-button>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
     </div>
     <div class="table">
       <el-tabs v-model="activeName">
         <!-- 未结算 -->
         <el-tab-pane label="未结算" name="first">
-        <dilTable v-bind.sync="options1">
+          <dilTable v-bind.sync="options1">
             <el-table-column fixed="right" label="操作" width="145">
-                <template slot-scope="scope">
-                  <el-button v-if="ssoId==null" type="text" size="small" @click="priceValueUpdate(scope.row)">修改详单地址</el-button>
-                  <!-- <el-button type="text" size="mini" @click="getclick(scope)">查看</el-button> -->
-                  <el-button type="text" size="mini" @click="addDamage(scope.row)">增加途损</el-button>
-                </template>
+              <template slot-scope="scope">
+                <el-button
+                  v-if="ssoId == null"
+                  type="text"
+                  size="small"
+                  @click="priceValueUpdate(scope.row)"
+                  >修改详单地址</el-button
+                >
+                <!-- <el-button type="text" size="mini" @click="getclick(scope)">查看</el-button> -->
+                <el-button type="text" size="mini" @click="addDamage(scope.row)"
+                  >增加途损</el-button
+                >
+              </template>
             </el-table-column>
-        </dilTable>
+          </dilTable>
         </el-tab-pane>
         <!-- 已结算 -->
         <el-tab-pane label="已结算" name="second">
-        <dilTable v-bind.sync="options2">
+          <dilTable v-bind.sync="options2">
             <!-- <el-table-column fixed="right" label="操作" width="40">
                 <template slot-scope="scope">
                   <el-button type="text" size="mini" @click="getclick(scope)">查看</el-button>
                 </template>
             </el-table-column> -->
-        </dilTable>
+          </dilTable>
         </el-tab-pane>
       </el-tabs>
     </div>
     <!-- 修改详单单价弹出框 -->
-    <el-dialog title="修改详单地址" :visible.sync="dialogFormVisible" append-to-body>
+    <el-dialog
+      title="修改详单地址"
+      :visible.sync="dialogFormVisible"
+      append-to-body
+    >
       <!-- 内层单价选择弹出框 -->
       <el-dialog
-      width="40%"
-      title="地址筛选"
-      :visible.sync="addressDrawer"
-      append-to-body>
-
-      <el-input v-model="addresText" placeholder="请输入内容" style="margin-top: 10px; margin-left: 20px; width: 250px"></el-input>
-        <el-button type="primary" @click="selectAddresClick" :loading="selectLineLoading"><i class="el-icon-search"></i>查询</el-button>
-         <!-- 已选中 省市(区)县 -->
-         <el-form :inline="true" style="margin-top: 0.5rem;">
+        width="40%"
+        title="地址筛选"
+        :visible.sync="addressDrawer"
+        append-to-body
+      >
+        <el-input
+          v-model="addresText"
+          placeholder="请输入内容"
+          style="margin-top: 10px; margin-left: 20px; width: 250px"
+        ></el-input>
+        <el-button
+          type="primary"
+          @click="selectAddresClick"
+          :loading="selectLineLoading"
+          ><i class="el-icon-search"></i>查询</el-button
+        >
+        <!-- 已选中 省市(区)县 -->
+        <el-form :inline="true" style="margin-top: 0.5rem;">
           <el-form-item>
-          <label class="el-form-item__label" style="width: auto;">已选中省市县(区):</label>
+            <label class="el-form-item__label" style="width: auto;"
+              >已选中省市县(区):</label
+            >
           </el-form-item>
           <el-form-item>
-              <el-input class="el-form-item__content" v-model="address" placeholder="请输入内容" :disabled="true"></el-input>
+            <el-input
+              class="el-form-item__content"
+              v-model="address"
+              placeholder="请输入内容"
+              :disabled="true"
+            ></el-input>
           </el-form-item>
-         </el-form>
-         <!-- 具体收货地址 -->
-         <div v-if="address != null">
-           <el-form :inline="true" style="margin-top: 0.5rem;" >
+        </el-form>
+        <!-- 具体收货地址 -->
+        <div v-if="address != null">
+          <el-form :inline="true" style="margin-top: 0.5rem;">
+            <el-form-item label="具体收货地址:">
+              <el-autocomplete
+                class="inline-input"
+                v-model="place"
+                :fetch-suggestions="querySearch1"
+                placeholder="请输入具体收货地址"
+                :trigger-on-focus="false"
+                @select="handleSelect1"
+              >
+              </el-autocomplete>
+            </el-form-item>
 
-          <el-form-item label="具体收货地址:">
-            <el-autocomplete
-              class="inline-input"
-              v-model="place"
-              :fetch-suggestions="querySearch1"
-              placeholder="请输入具体收货地址"
-              :trigger-on-focus="false"
-              @select="handleSelect1"
-            >
-            </el-autocomplete>
-          </el-form-item> 
-
-          <el-button type="primary" @click="addAddressClick">确定</el-button>
-         </el-form>
-         </div>
+            <el-button type="primary" @click="addAddressClick">确定</el-button>
+          </el-form>
+        </div>
 
-      <div class="tablecls">
-        <!-- 查询所有的运输单价 -->
-        <dilTable
-          v-bind.sync="Address"
-          @radio-change="currentRadioChange2"
-        ></dilTable>
-      </div>
+        <div class="tablecls">
+          <!-- 查询所有的运输单价 -->
+          <dilTable
+            v-bind.sync="Address"
+            @radio-change="currentRadioChange2"
+          ></dilTable>
+        </div>
       </el-dialog>
       <!-- 内层单价选择弹出框 -->
 
       <el-form>
         <el-form-item label="原详单地址" :label-width="formLabelWidth">
-          <el-input style="width:250px" v-model="originalAddress" disabled></el-input>
+          <el-input
+            style="width:250px"
+            v-model="originalAddress"
+            disabled
+          ></el-input>
           <label>原单价</label>
-          <el-input style="width:100px" v-model="originalPriceValue" disabled></el-input>
-          
+          <el-input
+            style="width:100px"
+            v-model="originalPriceValue"
+            disabled
+          ></el-input>
         </el-form-item>
         <el-form-item label="新详单地址" :label-width="formLabelWidth">
-          <el-input style="width:250px" v-model="newAddress" disabled></el-input>
+          <el-input
+            style="width:250px"
+            v-model="newAddress"
+            disabled
+          ></el-input>
           <label>现单价</label>
-          <el-input style="width:100px" v-model="newPriceValue" disabled></el-input>
-          <el-button type="primary" placeholder="()" @click="select">浏览</el-button>
+          <el-input
+            style="width:100px"
+            v-model="newPriceValue"
+            disabled
+          ></el-input>
+          <el-button type="primary" placeholder="()" @click="select"
+            >浏览</el-button
+          >
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -103,129 +147,144 @@
       </div>
     </el-dialog>
     <!-- 增加途损 -->
-      <el-dialog title="增加途损" width="30%" :visible.sync="dialogDamage">
-    <el-form>
-      <el-form-item label="达钢的干基" :label-width="formLabelWidth">
-        <el-input v-model="DaDryBasis"></el-input>
-      </el-form-item>
-      <el-form-item label="九江收货的干基" :label-width="formLabelWidth">
-        <el-input v-model="JiuDryBasis"></el-input>
-      </el-form-item>
-      <el-form-item label="单价" :label-width="formLabelWidth">
-        <el-input v-model="Fee"></el-input>
-      </el-form-item>
-    </el-form>
-    <div slot="footer" class="dialog-footer">
-      <el-button @click="dialogDamage = false">取 消</el-button>
-      <el-button type="primary" @click="makeSureAdd">确 定</el-button>
-    </div>
+    <el-dialog title="增加途损" width="30%" :visible.sync="dialogDamage">
+      <el-form>
+        <el-form-item label="达钢的干基" :label-width="formLabelWidth">
+          <el-input v-model="DaDryBasis"></el-input>
+        </el-form-item>
+        <el-form-item label="九江收货的干基" :label-width="formLabelWidth">
+          <el-input v-model="JiuDryBasis"></el-input>
+        </el-form-item>
+        <el-form-item label="单价" :label-width="formLabelWidth">
+          <el-input v-model="Fee"></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="dialogDamage = false">取 消</el-button>
+        <el-button type="primary" @click="makeSureAdd">确 定</el-button>
+      </div>
     </el-dialog>
-
   </div>
 </template>
 
 <script>
 import { getCookie } from "@/utils/util.js";
 export default {
-  data(){
-    return{
+  data() {
+    return {
       //已选中 省市县(区)
-      address:null,
+      address: null,
       //具体收货地址
-      place:null,
+      place: null,
       //收货地址id
-      addressId:null,
+      addressId: null,
       //省市县(区)查询值
-      addresText:null,
+      addresText: null,
       //达钢的干基
-      DaDryBasis:null,
+      DaDryBasis: null,
       //九江收货的干基
-      JiuDryBasis:null,
+      JiuDryBasis: null,
       //单价
-      Fee:null,
+      Fee: null,
       //途损费
-      damageFee:null,
+      damageFee: null,
       //加载
-      selectLineLoading:false,
-      input:"",
-      activeName:"first",
-      ssoId:null,
+      selectLineLoading: false,
+      input: "",
+      activeName: "first",
+      ssoId: null,
       //详单Id
-      detailsId:null,
-      options1:{
+      detailsId: null,
+      options1: {
         // first请求数据的地址
-        requestUrl: "",
+        requestUrl: ""
       },
-      options2:{
+      options2: {
         // second请求数据的地址
-        requestUrl: "",
+        requestUrl: ""
       },
       //是否打开修改详单地址弹出框
-      dialogFormVisible:false,
+      dialogFormVisible: false,
       //是否打开增加途损弹出框
-      dialogDamage:false,
+      dialogDamage: false,
       //原详单单价
-      originalPriceValue:null,
+      originalPriceValue: null,
       //新详单单价
-      newPriceValue:null,
+      newPriceValue: null,
       //原详单地址
-      originalAddress:null,
+      originalAddress: null,
       //新详单地址
-      newAddress:null,
+      newAddress: null,
       //新单价Id
-      priceId:null,
+      priceId: null,
       //是否打开运输单价的模态框
-      addressDrawer:false,
+      addressDrawer: false,
       //运输单价的表格
       Address: {
         requestUrl: "/api/v1/ams/getAddressDeliveryAddress?apiId=255",
-        selectionType: "radio",
+        selectionType: "radio"
       },
       // addressText:null,
       //缓存当前选中的运输单价
-      priceMap:{},
-      formLabelWidth: '125px'
-    }
+      priceMap: {},
+      formLabelWidth: "125px"
+    };
   },
-  created(){
-     this.options1GetRequestUrl();
-     this.options2GetRequestUrl();
+  created() {
+    this.options1GetRequestUrl();
+    this.options2GetRequestUrl();
   },
-  methods:{
-    //已结算数据
-    options1GetRequestUrl(){
-    if(getCookie("orgCode") == "chengyunshang"){
-      this.ssoId=getCookie('userId');
-      this.options1.requestUrl = "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=1&carrierSsoId="+ getCookie('userId');
-    }else{
-      this.options1.requestUrl = "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=1&carrierSsoId=" + this.ssoId;
-    }
-    },
+  methods: {
     //未结算数据
-    options2GetRequestUrl(){
-    if(getCookie("orgCode") == "chengyunshang"){
-      this.options2.requestUrl = "/api/v1/bms/getTruckDetailsOrderList?apiId=176&orderType=2&carrierSsoId="+ getCookie('userId');
-    }else{
-      this.options2.requestUrl = "/api/v1/bms/getTruckDetailsOrderList?apiId=176&orderType=2&carrierSsoId=" + this.ssoId;
-    }
+    options1GetRequestUrl() {
+      if (getCookie("orgCode") == "chengyunshang") {
+        this.ssoId = getCookie("userId");
+        this.options1.requestUrl =
+          "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=2&carrierSsoId=" +
+          getCookie("userId");
+      } else {
+        this.options1.requestUrl =
+          "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=2&carrierSsoId=" +
+          this.ssoId;
+      }
+    },
+    //已结算数据
+    options2GetRequestUrl() {
+      if (getCookie("orgCode") == "chengyunshang") {
+        this.options2.requestUrl =
+          "/api/v1/bms/getTruckDetailsOrderList?apiId=176&orderType=2&carrierSsoId=" +
+          getCookie("userId");
+      } else {
+        this.options2.requestUrl =
+          "/api/v1/bms/getTruckDetailsOrderList?apiId=176&orderType=2&carrierSsoId=" +
+          this.ssoId;
+      }
     },
     //收货地址弹出层
     handleSelect1(item) {
-        console.log("获取所有下拉值!");
+      console.log("获取所有下拉值!");
     },
     //查询全国省市县
-    selectAddresClick(){
-      if(this.addresText){
-        this.Address.requestUrl = "/api/v1/ams/getAddressDeliveryAddress?apiId=255&con="+this.addresText;
-      }else{
-        this.Address.requestUrl = "/api/v1/ams/getAddressDeliveryAddress?apiId=255&i=" + new Date();
+    selectAddresClick() {
+      if (this.addresText) {
+        this.Address.requestUrl =
+          "/api/v1/ams/getAddressDeliveryAddress?apiId=255&con=" +
+          this.addresText;
+      } else {
+        this.Address.requestUrl =
+          "/api/v1/ams/getAddressDeliveryAddress?apiId=255&i=" + new Date();
       }
     },
     //以下是收货地址边输边查搜索
-    querySearch1(queryString, cb){
+    querySearch1(queryString, cb) {
       this.axios
-        .post("/api/v1/ams/getRealAddressByLike?addressId="+this.addressId + "&index=" + queryString)
-        .then((res) => {
+        .post(
+          "/api/v1/ams/getRealAddressByLike?addressId=" +
+            this.addressId +
+            "&index=" +
+            queryString
+        )
+        .then(res => {
           if (res.data.code == "200") {
             var restaurants = res.data.data;
             var results = queryString
@@ -237,7 +296,7 @@ export default {
         });
     },
     createFilter1(queryString) {
-      return (restaurants) => {
+      return restaurants => {
         return (
           restaurants.value.toLowerCase().indexOf(queryString.toLowerCase()) >
           -1
@@ -245,172 +304,180 @@ export default {
       };
     },
     //以上是收货地址边输边查搜索
-
-     toInsert() {
+    toInsert() {
       this.$router.push("/insertCheckInventory");
     },
     // getclick(scope){
-		//   this.$router.push("/getTransportResult/"+scope.row.orderId)
-	  // },
+    //   this.$router.push("/getTransportResult/"+scope.row.orderId)
+    // },
     //增加途损
-    addDamage(row){
+    addDamage(row) {
       this.detailsId = row.detailsId;
       this.dialogDamage = true;
     },
-    makeSureAdd(){
-      if(!this.DaDryBasis){
-        this.$message.error('达钢的干基还未填!')
-      }else if(!this.JiuDryBasis){
-        this.$message.error('九江收货的干基还未填!')
-      }else if(!this.Fee){
-        this.$message.error('单价还未填!')
-      }else{
+    makeSureAdd() {
+      if (!this.DaDryBasis) {
+        this.$message.error("达钢的干基还未填!");
+      } else if (!this.JiuDryBasis) {
+        this.$message.error("九江收货的干基还未填!");
+      } else if (!this.Fee) {
+        this.$message.error("单价还未填!");
+      } else {
         this.dialogDamage = false;
         //计算途损 [(达钢的干基-九江收货的干基)/达钢的干基 - 0.03] * 单价 > 0, 扣除途损
-        this.damageFee = ((this.DaDryBasis - this.JiuDryBasis) / this.DaDryBasis - 0.03) * this.Fee;
-        if(this.damageFee>0){
+        this.damageFee =
+          ((this.DaDryBasis - this.JiuDryBasis) / this.DaDryBasis - 0.03) *
+          this.Fee;
+        if (this.damageFee > 0) {
           let map = {
-        detailsId: this.detailsId,
-        lossFees: this.damageFee.toFixed(2)
-        }
-        //是否确定增加途损费!
+            detailsId: this.detailsId,
+            lossFees: this.damageFee.toFixed(2)
+          };
+          //是否确定增加途损费!
           this.$confirm("是否确定增加途损费", "提示", {
             confirmButtonText: "确定",
             cancelButtonText: "取消",
             type: "warning",
-            center: true,
-          })
-          .then(() => {
-            //初始化增加途损费对话框中的信息
-            this.damageFee=null,
-            this.axios.post('/api/v1/bms/addLossFeeOfCoke',map).then((res)=>{
-                if(res.data.code == '0'){
-                this.$message.success('增加途损费成功!')
-                //重置未结算详单表单信息
-                this.options1.requestUrl = "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=1&i=" + new Date();
-              }else{
-                this.$message.error('增加途损费失败,请联系管理员!')
-              }
-            });
+            center: true
           })
-          .catch(() => {
-            this.$message({
-              type: "info",
-              message: "取消修改详单单价!",
+            .then(() => {
+              //初始化增加途损费对话框中的信息
+              (this.damageFee = null),
+                this.axios
+                  .post("/api/v1/bms/addLossFeeOfCoke", map)
+                  .then(res => {
+                    if (res.data.code == "0") {
+                      this.$message.success("增加途损费成功!");
+                      //重置未结算详单表单信息
+                      this.options1.requestUrl =
+                        "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=1&i=" +
+                        new Date();
+                    } else {
+                      this.$message.error("增加途损费失败,请联系管理员!");
+                    }
+                  });
+            })
+            .catch(() => {
+              this.$message({
+                type: "info",
+                message: "取消修改详单单价!"
+              });
             });
-          });
         }
       }
-      
     },
-    onclick(){
-      console.log("查询待定值")
+    onclick() {
+      console.log("查询待定值");
       // this.options.requestUrl = "/api/v1/bms/getTruckDetailsOrderList?apiId=176&orderType=1&con="+this.input;
     },
     //修改详单单价
-    priceValueUpdate(row){
+    priceValueUpdate(row) {
       this.originalAddress = row.realAddress;
       this.originalPriceValue = row.priceValue;
       this.detailsId = row.detailsId;
-      this.dialogFormVisible = true
+      this.dialogFormVisible = true;
     },
     //运输订单点击浏览的事件
-    select(){
+    select() {
       this.addressDrawer = true;
     },
     //运输单价模态窗口的框计算
-    selectAddressClick(){
-      this.Price.requestUrl = '/api/v1/ams/getAddressDeliveryAddress?apiId=255&con='+this.addressText;
+    selectAddressClick() {
+      this.Price.requestUrl =
+        "/api/v1/ams/getAddressDeliveryAddress?apiId=255&con=" +
+        this.addressText;
     },
     //运输单价模态窗口的点击事件
-    addAddressClick(){
+    addAddressClick() {
       //获取运输单价和运输单价ID
       let map = {
         place: this.place,
         addressId: this.addressId
-      }
-      this.axios.post('/api/v1/ams/getPriceMap',map)
-      .then((res)=>{
-          if(res.data.data.priceId==-1){
-            this.newPriceValue = '未录单价!';
-            this.priceId = null;
-          }else{
-            //赋值运输单价和运输单价ID
-            this.newPriceValue = res.data.data.priceValue;//this.priceMap.priceValue
-            this.priceId = res.data.data.priceId;//this.priceMap.priceId
-          }
+      };
+      this.axios.post("/api/v1/ams/getPriceMap", map).then(res => {
+        if (res.data.data.priceId == -1) {
+          this.newPriceValue = "未录单价!";
+          this.priceId = null;
+        } else {
+          //赋值运输单价和运输单价ID
+          this.newPriceValue = res.data.data.priceValue; //this.priceMap.priceValue
+          this.priceId = res.data.data.priceId; //this.priceMap.priceId
+        }
       });
       //priceMap
-      this.newAddress = this.address+this.place;
+      this.newAddress = this.address + this.place;
       this.addressDrawer = false;
     },
     //运输单价模态框单选选中的事件
-    currentRadioChange2(val){
+    currentRadioChange2(val) {
       //若具体地址有值,清空值
-      if(this.place!=null){
-        this.place=null;
+      if (this.place != null) {
+        this.place = null;
       }
-      this.address = val.address,
-      this.addressId = val.addressId;
+      (this.address = val.address), (this.addressId = val.addressId);
       // this.priceMap = {};
       // this.priceMap = val;
     },
     //确认修改详单单价
-    makeSure(){
+    makeSure() {
       //若没有单价Id
-      if(this.priceId==null){
-        this.$message.error('该区域没有录入单价,不可修改!')
-      }else{
-      this.dialogFormVisible = false;
-      let mapValue = {
-        detailsId: this.detailsId,
-        priceId: this.priceId
-      }
-      //是否确定修改详单地址!
-      this.$confirm("是否确定修改详单地址", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-        center: true,
-      })
-      .then(() => {
-        //初始化修改详单地址对话框的信息
-        this.newPriceValue=null,
-        this.newAddress=null,
-        this.address=null,
-        this.addresText=null,
-        this.addressId=null,
-        this.priceId=null,
-        this.axios.post('/api/v1/bms/updateDetailsOrder',mapValue).then((res)=>{
-            if(res.data.code == '0'){
-            this.$message.success('修改详单单价成功!')
-            //重置未结算详单表单信息
-            this.options1.requestUrl = "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=1&i=" + new Date();
-          }else{
-            this.$message.error('修改详单单价失败,请联系管理员!')
-          }
-        });
-      })
-      .catch(() => {
-        this.$message({
-          type: "info",
-          message: "取消修改详单单价!",
-        });
-      });
+      if (this.priceId == null) {
+        this.$message.error("该区域没有录入单价,不可修改!");
+      } else {
+        this.dialogFormVisible = false;
+        let mapValue = {
+          detailsId: this.detailsId,
+          priceId: this.priceId
+        };
+        //是否确定修改详单地址!
+        this.$confirm("是否确定修改详单地址", "提示", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+          center: true
+        })
+          .then(() => {
+            //初始化修改详单地址对话框的信息
+            (this.newPriceValue = null),
+              (this.newAddress = null),
+              (this.address = null),
+              (this.addresText = null),
+              (this.addressId = null),
+              (this.priceId = null),
+              this.axios
+                .post("/api/v1/bms/updateDetailsOrder", mapValue)
+                .then(res => {
+                  if (res.data.code == "0") {
+                    this.$message.success("修改详单单价成功!");
+                    //重置未结算详单表单信息
+                    this.options1.requestUrl =
+                      "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=1&i=" +
+                      new Date();
+                  } else {
+                    this.$message.error("修改详单单价失败,请联系管理员!");
+                  }
+                });
+          })
+          .catch(() => {
+            this.$message({
+              type: "info",
+              message: "取消修改详单单价!"
+            });
+          });
       }
     }
   }
-}
+};
 </script>
 
 <style lang="scss" scode>
-.steel_inbound{
-  .sache{
+.steel_inbound {
+  .sache {
     padding: 1.25rem 0.375rem;
-			.el-input {
-			width: 20%;
-			margin-right: 1.25rem;
-			}
+    .el-input {
+      width: 20%;
+      margin-right: 1.25rem;
+    }
   }
 }
-</style>
+</style>

+ 535 - 0
src/views/sale/components/transportFreight/saleTruckSettlement/bmsTruckSteelDetails.vue

@@ -0,0 +1,535 @@
+// 计费详单
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-date-picker
+        v-model="startTime"
+        type="datetime"
+        placeholder="选择日期"
+        style="width:220px"
+      >
+      </el-date-picker>
+      <span>至</span>
+      <el-date-picker
+        v-model="endTime"
+        type="datetime"
+        placeholder="选择日期"
+        style="width:220px"
+      >
+      </el-date-picker>
+      <el-input placeholder="请输入内容" v-model="input" clearable> </el-input>
+
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <el-button type="primary" @click="exportData()"
+        ><i class="el-icon-download"></i>导出Excel</el-button
+      >
+    </div>
+    <div class="table">
+      <el-tabs v-model="activeName">
+        <!-- 未结算 -->
+        <el-tab-pane label="未结算" name="first">
+          <dilTable v-bind.sync="options1" ref="excelDom">
+            <el-table-column fixed="right" label="操作" width="145">
+              <template slot-scope="scope">
+                <el-button
+                  v-if="ssoId == null"
+                  type="text"
+                  size="small"
+                  @click="priceValueUpdate(scope.row)"
+                  >修改详单地址</el-button
+                >
+                <!-- <el-button type="text" size="mini" @click="getclick(scope)">查看</el-button> -->
+                <el-button type="text" size="mini" @click="addDamage(scope.row)"
+                  >增加途损</el-button
+                >
+              </template>
+            </el-table-column>
+          </dilTable>
+        </el-tab-pane>
+        <!-- 已结算 -->
+        <el-tab-pane label="已结算" name="second">
+          <dilTable v-bind.sync="options2">
+            <!-- <el-table-column fixed="right" label="操作" width="40">
+                <template slot-scope="scope">
+                  <el-button type="text" size="mini" @click="getclick(scope)">查看</el-button>
+                </template>
+            </el-table-column> -->
+          </dilTable>
+        </el-tab-pane>
+      </el-tabs>
+    </div>
+    <!-- 修改详单单价弹出框 -->
+    <el-dialog
+      title="修改详单地址"
+      :visible.sync="dialogFormVisible"
+      append-to-body
+    >
+      <!-- 内层单价选择弹出框 -->
+      <el-dialog
+        width="40%"
+        title="地址筛选"
+        :visible.sync="addressDrawer"
+        append-to-body
+      >
+        <el-input
+          v-model="addresText"
+          placeholder="请输入内容"
+          style="margin-top: 10px; margin-left: 20px; width: 250px"
+        ></el-input>
+        <el-button
+          type="primary"
+          @click="selectAddresClick"
+          :loading="selectLineLoading"
+          ><i class="el-icon-search"></i>查询</el-button
+        >
+        <!-- 已选中 省市(区)县 -->
+        <el-form :inline="true" style="margin-top: 0.5rem;">
+          <el-form-item>
+            <label class="el-form-item__label" style="width: auto;"
+              >已选中省市县(区):</label
+            >
+          </el-form-item>
+          <el-form-item>
+            <el-input
+              class="el-form-item__content"
+              v-model="address"
+              placeholder="请输入内容"
+              :disabled="true"
+            ></el-input>
+          </el-form-item>
+        </el-form>
+        <!-- 具体收货地址 -->
+        <div v-if="address != null">
+          <el-form :inline="true" style="margin-top: 0.5rem;">
+            <el-form-item label="具体收货地址:">
+              <el-autocomplete
+                class="inline-input"
+                v-model="place"
+                :fetch-suggestions="querySearch1"
+                placeholder="请输入具体收货地址"
+                :trigger-on-focus="false"
+                @select="handleSelect1"
+              >
+              </el-autocomplete>
+            </el-form-item>
+
+            <el-button type="primary" @click="addAddressClick">确定</el-button>
+          </el-form>
+        </div>
+
+        <div class="tablecls">
+          <!-- 查询所有的运输单价 -->
+          <dilTable
+            v-bind.sync="Address"
+            @radio-change="currentRadioChange2"
+          ></dilTable>
+        </div>
+      </el-dialog>
+      <!-- 内层单价选择弹出框 -->
+
+      <el-form>
+        <el-form-item label="原详单地址" :label-width="formLabelWidth">
+          <el-input
+            style="width:250px"
+            v-model="originalAddress"
+            disabled
+          ></el-input>
+          <label>原单价</label>
+          <el-input
+            style="width:100px"
+            v-model="originalPriceValue"
+            disabled
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="新详单地址" :label-width="formLabelWidth">
+          <el-input
+            style="width:250px"
+            v-model="newAddress"
+            disabled
+          ></el-input>
+          <label>现单价</label>
+          <el-input
+            style="width:100px"
+            v-model="newPriceValue"
+            disabled
+          ></el-input>
+          <el-button type="primary" placeholder="()" @click="select"
+            >浏览</el-button
+          >
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="dialogFormVisible = false">取 消</el-button>
+        <el-button type="primary" @click="makeSure">确 定</el-button>
+      </div>
+    </el-dialog>
+    <!-- 增加途损 -->
+    <el-dialog title="增加途损" width="30%" :visible.sync="dialogDamage">
+      <el-form>
+        <el-form-item label="达钢的干基" :label-width="formLabelWidth">
+          <el-input v-model="DaDryBasis"></el-input>
+        </el-form-item>
+        <el-form-item label="九江收货的干基" :label-width="formLabelWidth">
+          <el-input v-model="JiuDryBasis"></el-input>
+        </el-form-item>
+        <el-form-item label="单价" :label-width="formLabelWidth">
+          <el-input v-model="Fee"></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="dialogDamage = false">取 消</el-button>
+        <el-button type="primary" @click="makeSureAdd">确 定</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { getCookie } from "@/utils/util.js";
+import { sjTime } from "../../../../ADMINISTRATORS/app";
+export default {
+  data() {
+    return {
+      tableTitle: "销售钢材汽运结算详单",
+      endTime: null,
+      startTime: null,
+      //已选中 省市县(区)
+      address: null,
+      //具体收货地址
+      place: null,
+      //收货地址id
+      addressId: null,
+      //省市县(区)查询值
+      addresText: null,
+      //达钢的干基
+      DaDryBasis: null,
+      //九江收货的干基
+      JiuDryBasis: null,
+      //单价
+      Fee: null,
+      //途损费
+      damageFee: null,
+      //加载
+      selectLineLoading: false,
+      input: "",
+      activeName: "first",
+      ssoId: null,
+      //详单Id
+      detailsId: null,
+      options1: {
+        // first请求数据的地址
+        requestUrl: ""
+      },
+      options2: {
+        // second请求数据的地址
+        requestUrl: ""
+      },
+      //是否打开修改详单地址弹出框
+      dialogFormVisible: false,
+      //是否打开增加途损弹出框
+      dialogDamage: false,
+      //原详单单价
+      originalPriceValue: null,
+      //新详单单价
+      newPriceValue: null,
+      //原详单地址
+      originalAddress: null,
+      //新详单地址
+      newAddress: null,
+      //新单价Id
+      priceId: null,
+      //是否打开运输单价的模态框
+      addressDrawer: false,
+      //运输单价的表格
+      Address: {
+        requestUrl: "/api/v1/ams/getAddressDeliveryAddress?apiId=255",
+        selectionType: "radio"
+      },
+      // addressText:null,
+      //缓存当前选中的运输单价
+      priceMap: {},
+      formLabelWidth: "125px"
+    };
+  },
+  created() {
+    this.options1GetRequestUrl();
+    this.options2GetRequestUrl();
+  },
+  methods: {
+    //未结算数据
+    options1GetRequestUrl() {
+      if (getCookie("orgCode") == "chengyunshang") {
+        this.ssoId = getCookie("userId");
+        this.options1.requestUrl =
+          "/api/v1/bms/getSteelTruckDetailsOrder?apiId=507&orderType=1&carrierSsoId=" +
+          getCookie("userId");
+      } else {
+        this.options1.requestUrl =
+          "/api/v1/bms/getSteelTruckDetailsOrder?apiId=507&orderType=1&carrierSsoId=" +
+          this.ssoId;
+      }
+    },
+    //已结算数据
+    options2GetRequestUrl() {
+      if (getCookie("orgCode") == "chengyunshang") {
+        this.options2.requestUrl =
+          "/api/v1/bms/getSteelTruckDetailsOrder?apiId=507&orderType=1&carrierSsoId=" +
+          getCookie("userId");
+      } else {
+        this.options2.requestUrl =
+          "/api/v1/bms/getSteelTruckDetailsOrder?apiId=507&orderType=1&carrierSsoId=" +
+          this.ssoId;
+      }
+    },
+    //收货地址弹出层
+    handleSelect1(item) {
+      console.log("获取所有下拉值!");
+    },
+    //查询全国省市县
+    selectAddresClick() {
+      if (this.addresText) {
+        this.Address.requestUrl =
+          "/api/v1/ams/getAddressDeliveryAddress?apiId=255&con=" +
+          this.addresText;
+      } else {
+        this.Address.requestUrl =
+          "/api/v1/ams/getAddressDeliveryAddress?apiId=255&i=" + new Date();
+      }
+    },
+    //以下是收货地址边输边查搜索
+    querySearch1(queryString, cb) {
+      this.axios
+        .post(
+          "/api/v1/ams/getRealAddressByLike?addressId=" +
+            this.addressId +
+            "&index=" +
+            queryString
+        )
+        .then(res => {
+          if (res.data.code == "200") {
+            var restaurants = res.data.data;
+            var results = queryString
+              ? restaurants.filter(this.createFilter1(queryString))
+              : restaurants;
+            // 调用 callback 返回建议列表的数据
+            cb(results);
+          }
+        });
+    },
+    createFilter1(queryString) {
+      return restaurants => {
+        return (
+          restaurants.value.toLowerCase().indexOf(queryString.toLowerCase()) >
+          -1
+        );
+      };
+    },
+    //以上是收货地址边输边查搜索
+    toInsert() {
+      this.$router.push("/insertCheckInventory");
+    },
+    // getclick(scope){
+    //   this.$router.push("/getTransportResult/"+scope.row.orderId)
+    // },
+    //增加途损
+    addDamage(row) {
+      this.detailsId = row.detailsId;
+      this.dialogDamage = true;
+    },
+    makeSureAdd() {
+      if (!this.DaDryBasis) {
+        this.$message.error("达钢的干基还未填!");
+      } else if (!this.JiuDryBasis) {
+        this.$message.error("九江收货的干基还未填!");
+      } else if (!this.Fee) {
+        this.$message.error("单价还未填!");
+      } else {
+        this.dialogDamage = false;
+        //计算途损 [(达钢的干基-九江收货的干基)/达钢的干基 - 0.03] * 单价 > 0, 扣除途损
+        this.damageFee =
+          ((this.DaDryBasis - this.JiuDryBasis) / this.DaDryBasis - 0.03) *
+          this.Fee;
+        if (this.damageFee > 0) {
+          let map = {
+            detailsId: this.detailsId,
+            lossFees: this.damageFee.toFixed(2)
+          };
+          //是否确定增加途损费!
+          this.$confirm("是否确定增加途损费", "提示", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning",
+            center: true
+          })
+            .then(() => {
+              //初始化增加途损费对话框中的信息
+              (this.damageFee = null),
+                this.axios
+                  .post("/api/v1/bms/addLossFeeOfCoke", map)
+                  .then(res => {
+                    if (res.data.code == "0") {
+                      this.$message.success("增加途损费成功!");
+                      //重置未结算详单表单信息
+                      this.options1.requestUrl =
+                        "/api/v1/bms/getSteelTruckDetailsOrder?apiId=507&orderType=1&i=" +
+                        new Date();
+                    } else {
+                      this.$message.error("增加途损费失败,请联系管理员!");
+                    }
+                  });
+            })
+            .catch(() => {
+              this.$message({
+                type: "info",
+                message: "取消修改详单单价!"
+              });
+            });
+        }
+      }
+    },
+    onclick() {
+      console.log("查询待定值");
+      let startTime = null;
+      let endTime = null;
+      let carrierSsoId = null;
+      if (getCookie("orgCode") == "chengyunshang") {
+        carrierSsoId = getCookie("userId");
+      }
+      if (this.startTime && this.endTime) {
+        startTime = sjTime(this.startTime);
+        endTime = sjTime(this.endTime);
+      }
+      this.options1.requestUrl =
+        "/api/v1/bms/getSteelTruckDetailsOrder?apiId=507&orderType=1&con=" +
+        this.input +
+        "&startTime=" +
+        startTime +
+        "&endTime=" +
+        endTime +
+        "&status=0" +
+        "&i=" +
+        new Date();
+      this.options2.requestUrl =
+        "/api/v1/bms/getSteelTruckDetailsOrder?apiId=507&orderType=1&con=" +
+        this.input +
+        "&startTime=" +
+        startTime +
+        "&endTime=" +
+        endTime +
+        "&status=1" +
+        "&i=" +
+        new Date();
+    },
+    //修改详单单价
+    priceValueUpdate(row) {
+      this.originalAddress = row.realAddress;
+      this.originalPriceValue = row.priceValue;
+      this.detailsId = row.detailsId;
+      this.dialogFormVisible = true;
+    },
+    //运输订单点击浏览的事件
+    select() {
+      this.addressDrawer = true;
+    },
+    //运输单价模态窗口的框计算
+    selectAddressClick() {
+      this.Price.requestUrl =
+        "/api/v1/ams/getAddressDeliveryAddress?apiId=255&con=" +
+        this.addressText;
+    },
+    //运输单价模态窗口的点击事件
+    addAddressClick() {
+      //获取运输单价和运输单价ID
+      let map = {
+        place: this.place,
+        addressId: this.addressId
+      };
+      this.axios.post("/api/v1/ams/getPriceMap", map).then(res => {
+        if (res.data.data.priceId == -1) {
+          this.newPriceValue = "未录单价!";
+          this.priceId = null;
+        } else {
+          //赋值运输单价和运输单价ID
+          this.newPriceValue = res.data.data.priceValue; //this.priceMap.priceValue
+          this.priceId = res.data.data.priceId; //this.priceMap.priceId
+        }
+      });
+      //priceMap
+      this.newAddress = this.address + this.place;
+      this.addressDrawer = false;
+    },
+    //运输单价模态框单选选中的事件
+    currentRadioChange2(val) {
+      //若具体地址有值,清空值
+      if (this.place != null) {
+        this.place = null;
+      }
+      (this.address = val.address), (this.addressId = val.addressId);
+      // this.priceMap = {};
+      // this.priceMap = val;
+    },
+    //确认修改详单单价
+    makeSure() {
+      //若没有单价Id
+      if (this.priceId == null) {
+        this.$message.error("该区域没有录入单价,不可修改!");
+      } else {
+        this.dialogFormVisible = false;
+        let mapValue = {
+          detailsId: this.detailsId,
+          priceId: this.priceId
+        };
+        //是否确定修改详单地址!
+        this.$confirm("是否确定修改详单地址", "提示", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+          center: true
+        })
+          .then(() => {
+            //初始化修改详单地址对话框的信息
+            (this.newPriceValue = null),
+              (this.newAddress = null),
+              (this.address = null),
+              (this.addresText = null),
+              (this.addressId = null),
+              (this.priceId = null),
+              this.axios
+                .post("/api/v1/bms/updateDetailsOrder", mapValue)
+                .then(res => {
+                  if (res.data.code == "0") {
+                    this.$message.success("修改详单单价成功!");
+                    //重置未结算详单表单信息
+                    this.options1.requestUrl =
+                      "/api/v1/bms/getUnFinishedTruckDetailsOrderList?apiId=176&orderType=1&i=" +
+                      new Date();
+                  } else {
+                    this.$message.error("修改详单单价失败,请联系管理员!");
+                  }
+                });
+          })
+          .catch(() => {
+            this.$message({
+              type: "info",
+              message: "取消修改详单单价!"
+            });
+          });
+      }
+    }
+  }
+};
+</script>
+
+<style lang="scss" scode>
+.steel_inbound {
+  .sache {
+    padding: 1.25rem 0.375rem;
+    .el-input {
+      width: 20%;
+      margin-right: 1.25rem;
+    }
+  }
+}
+</style>

+ 77 - 0
src/views/sale/components/transportFreight/saleTruckSettlement/bmsTruckSteelStatement.vue

@@ -0,0 +1,77 @@
+// 计费账单
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-input placeholder="请输入内容" v-model="input" clearable> </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="small"
+              @click="selectBmstruckOrder(scope)"
+            >
+              查看
+            </el-button>
+            <el-button
+              type="text"
+              size="small"
+              @click="updateBmstruckCheck(scope)"
+            >
+              稽核
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      input: "",
+      options: {
+        // first请求数据的地址
+        requestUrl: "/api/v1/bms/getTruckStatementList?apiId=179"
+      }
+    };
+  },
+  methods: {
+    toInsert() {
+      this.$router.push("/addBmsTruckStatement");
+    },
+    selectBmstruckOrder(scope) {
+      this.$router.push("/getBmsTruckStatementOrder/" + scope.row.statementId);
+    },
+    updateBmstruckCheck(scope) {
+      this.$router.push("/bmsTruckAudit/" + scope.row.statementId);
+    },
+    onclick() {
+      console.log("查询待定值");
+      // this.options.requestUrl = "/api/v1/bms/getTruckStatementList?apiId=179&con="+this.input;
+    }
+  }
+};
+</script>
+
+<style lang="scss" scode>
+.steel_inbound {
+  .sache {
+    padding: 1.25rem 0.375rem;
+    .el-input {
+      width: 20%;
+      margin-right: 1.25rem;
+    }
+  }
+}
+</style>

+ 732 - 223
src/views/sale/router/index.js

@@ -1,234 +1,743 @@
-import Vue from 'vue'
-import Router from 'vue-router'
+import Vue from "vue";
+import Router from "vue-router";
 
-import routerBefore from '@/config/routerBefore.js'
+import routerBefore from "@/config/routerBefore.js";
 // 主要
-import main from '@/components/main.vue'
+import main from "@/components/main.vue";
 // 系统配置管理
-import addSaleOrder from '../components/sale_contract/addSaleOrder.vue'
-import addSalePlan from '../components/sale_contract/addSalePlan.vue'
-import addSalePlanDetail from '../components/sale_contract/addSalePlanDetail.vue'
-import addTransportPrice from '../components/sale_contract/addTransportPrice.vue'
-import addTruckNoDetail from '../components/sale_contract/addTruckNoDetail.vue'
-import editaddress from '../components/sale_contract/editaddress.vue'
-import editSaleOrder from '../components/sale_contract/editSaleOrder.vue'
-import editSaleOrderDetail from '../components/sale_contract/editSaleOrderDetail.vue'
-import editSalePalnDetail from '../components/sale_contract/editSalePalnDetail.vue'
-import editSalePlan from '../components/sale_contract/editSalePlan.vue'
-import editTransportPrice from '../components/sale_contract/editTransportPrice.vue'
-import editTruckNoDetail from '../components/sale_contract/editTruckNoDetail.vue'
-import saleOrder from '../components/sale_contract/saleOrder.vue'
-import saleOrderDetail from '../components/sale_contract/saleOrderDetail.vue'
-import saleOrderDetailApproved from '../components/sale_contract/saleOrderDetailApproved.vue'
-import saleOrderUpdateLog from '../components/sale_contract/saleOrderUpdateLog.vue'
-import salePlan from '../components/sale_contract/salePlan.vue'
-import transportPrice from '../components/sale_contract/transportPrice.vue'
-import addlading from '../components/saleSelfMachine/addlading.vue'
-import printLading from '../components/saleSelfMachine/printLading.vue'
-import printReceipt from '../components/saleSelfMachine/printReceipt.vue'
-import printScan from '../components/saleSelfMachine/printScan.vue'
-import printWarranty from '../components/saleSelfMachine/printWarranty.vue'
-import saleSelfMachine from '../components/saleSelfMachine/saleSelfMachine.vue'
-import addCokeRailPlan from '../components/transport_appointment/railPlan/addCokeRailPlan.vue'
-import addSlagRailPlan from '../components/transport_appointment/railPlan/addSlagRailPlan.vue'
-import addSteelRailPlan from '../components/transport_appointment/railPlan/addSteelRailPlan.vue'
-import cokeRailPlan from '../components/transport_appointment/railPlan/cokeRailPlan.vue'
-import slagRailPlan from '../components/transport_appointment/railPlan/slagRailPlan.vue'
-import steelRailPlan from '../components/transport_appointment/railPlan/steelRailPlan.vue'
-import updateCokeRailPlan from '../components/transport_appointment/railPlan/updateCokeRailPlan.vue'
-import updateSlagRailPlan from '../components/transport_appointment/railPlan/updateSlagRailPlan.vue'
-import updateSteelRailPlan from '../components/transport_appointment/railPlan/updateSteelRailPlan.vue'
-import addOpenDistribution from '../components/transport_appointment/addOpenDistribution.vue'
-import directionalDispatch from '../components/transport_appointment/directionalDispatch.vue'
-import openDistribution from '../components/transport_appointment/openDistribution.vue'
-import openDistributionSection from '../components/transport_appointment/openDistributionSection.vue'
-import orderGrabbing from '../components/transport_appointment/orderGrabbing.vue'
+import addSaleOrder from "../components/sale_contract/addSaleOrder.vue";
+import addSalePlan from "../components/sale_contract/addSalePlan.vue";
+import addSalePlanDetail from "../components/sale_contract/addSalePlanDetail.vue";
+import addTransportPrice from "../components/sale_contract/addTransportPrice.vue";
+import addTruckNoDetail from "../components/sale_contract/addTruckNoDetail.vue";
+import editaddress from "../components/sale_contract/editaddress.vue";
+import editSaleOrder from "../components/sale_contract/editSaleOrder.vue";
+import editSaleOrderDetail from "../components/sale_contract/editSaleOrderDetail.vue";
+import editSalePalnDetail from "../components/sale_contract/editSalePalnDetail.vue";
+import editSalePlan from "../components/sale_contract/editSalePlan.vue";
+import editTransportPrice from "../components/sale_contract/editTransportPrice.vue";
+import editTruckNoDetail from "../components/sale_contract/editTruckNoDetail.vue";
+import saleOrder from "../components/sale_contract/saleOrder.vue";
+import saleOrderDetail from "../components/sale_contract/saleOrderDetail.vue";
+import saleOrderDetailApproved from "../components/sale_contract/saleOrderDetailApproved.vue";
+import saleOrderUpdateLog from "../components/sale_contract/saleOrderUpdateLog.vue";
+import salePlan from "../components/sale_contract/salePlan.vue";
+import transportPrice from "../components/sale_contract/transportPrice.vue";
+import addlading from "../components/saleSelfMachine/addlading.vue";
+import printLading from "../components/saleSelfMachine/printLading.vue";
+import printReceipt from "../components/saleSelfMachine/printReceipt.vue";
+import printScan from "../components/saleSelfMachine/printScan.vue";
+import printWarranty from "../components/saleSelfMachine/printWarranty.vue";
+import saleSelfMachine from "../components/saleSelfMachine/saleSelfMachine.vue";
+import addCokeRailPlan from "../components/transport_appointment/railPlan/addCokeRailPlan.vue";
+import addSlagRailPlan from "../components/transport_appointment/railPlan/addSlagRailPlan.vue";
+import addSteelRailPlan from "../components/transport_appointment/railPlan/addSteelRailPlan.vue";
+import cokeRailPlan from "../components/transport_appointment/railPlan/cokeRailPlan.vue";
+import slagRailPlan from "../components/transport_appointment/railPlan/slagRailPlan.vue";
+import steelRailPlan from "../components/transport_appointment/railPlan/steelRailPlan.vue";
+import updateCokeRailPlan from "../components/transport_appointment/railPlan/updateCokeRailPlan.vue";
+import updateSlagRailPlan from "../components/transport_appointment/railPlan/updateSlagRailPlan.vue";
+import updateSteelRailPlan from "../components/transport_appointment/railPlan/updateSteelRailPlan.vue";
+import addOpenDistribution from "../components/transport_appointment/addOpenDistribution.vue";
+import directionalDispatch from "../components/transport_appointment/directionalDispatch.vue";
+import openDistribution from "../components/transport_appointment/openDistribution.vue";
+import openDistributionSection from "../components/transport_appointment/openDistributionSection.vue";
+import orderGrabbing from "../components/transport_appointment/orderGrabbing.vue";
 
-import add_sale_dilNotice from '../components/dilNotice/add_sale_dilNotice.vue'
-import Carrier_dilNotice from '../components/dilNotice/Carrier_dilNotice.vue'
-import sale_dilNotice from '../components/dilNotice/sale_dilNotice.vue'
-import addNotice from '../components/dilNotice/addNotice.vue'
-import carrierNotice from '../components/dilNotice/carrierNotice.vue'
-import clientNotice from '../components/dilNotice/clientNotice.vue'
-import editNotice from '../components/dilNotice/editNotice.vue'
-import getNoticeById from '../components/dilNotice/getNoticeById.vue'
-import marketingNotice from '../components/dilNotice/marketingNotice.vue'
-import newNotice from '../components/dilNotice/newNotice.vue'
+import add_sale_dilNotice from "../components/dilNotice/add_sale_dilNotice.vue";
+import Carrier_dilNotice from "../components/dilNotice/Carrier_dilNotice.vue";
+import sale_dilNotice from "../components/dilNotice/sale_dilNotice.vue";
+import addNotice from "../components/dilNotice/addNotice.vue";
+import carrierNotice from "../components/dilNotice/carrierNotice.vue";
+import clientNotice from "../components/dilNotice/clientNotice.vue";
+import editNotice from "../components/dilNotice/editNotice.vue";
+import getNoticeById from "../components/dilNotice/getNoticeById.vue";
+import marketingNotice from "../components/dilNotice/marketingNotice.vue";
+import newNotice from "../components/dilNotice/newNotice.vue";
 
-import outFactoryResult from '../components/transport_excute/outFactory/outFactoryResult.vue'
-import smsResult from '../components/transport_excute/outFactory/smsResult.vue'
-import arrivalPhoto from '../components/transport_excute/tms-offsite/arrivalPhoto.vue'
-import arrivalResult from '../components/transport_excute/tms-offsite/arrivalResult.vue' 
-import transportationPerformance from '../components/offSiteTransportation/transportationPerformance.vue' 
-import distance from '../components/transport_excute/tms-offsite/distance.vue'
+import outFactoryResult from "../components/transport_excute/outFactory/outFactoryResult.vue";
+import smsResult from "../components/transport_excute/outFactory/smsResult.vue";
+import arrivalPhoto from "../components/transport_excute/tms-offsite/arrivalPhoto.vue";
+import arrivalResult from "../components/transport_excute/tms-offsite/arrivalResult.vue";
+import transportationPerformance from "../components/offSiteTransportation/transportationPerformance.vue";
+import distance from "../components/transport_excute/tms-offsite/distance.vue";
 // import inTransit from '../components/transport_excute/offSiteTransportation/inTransit.vue'
-import inTransitAbnormal from '../components/transport_excute/tms-offsite/inTransitAbnormal.vue'
-import inTransitAlarm from '../components/transport_excute/tms-offsite/inTransitAlarm.vue'
-import inTransitOrderMileage from '../components/transport_excute/tms-offsite/inTransitOrderMileage.vue'
-import pathView from '../components/transport_excute/tms-offsite/pathView.vue'
-import receiptChildPhoto from '../components/transport_excute/tms-offsite/receiptChildPhoto.vue'
-import receiptPhoto from '../components/transport_excute/tms-offsite/receiptPhoto.vue'
-import receiptResult from '../components/transport_excute/tms-offsite/receiptResult.vue'
-import transportInfo from '../components/transport_excute/tms-offsite/transportInfo.vue'
-import enFactoryResult from '../components/transport_excute/enFactoryResult.vue'
-import grossWeightResult from '../components/transport_excute/grossWeightResult.vue'
-import loadTruckResult from '../components/transport_excute/loadTruckResult.vue'
-import qualityResult from '../components/transport_excute/qualityResult.vue'
-import returnResult from '../components/transport_excute/returnResult.vue'
-import tareWeightResult from '../components/transport_excute/tareWeightResult.vue'
-import disatchSteelSaleOrderAdd from '../components/transport_order/disatchSteelSaleOrderAdd.vue'
-import dispatchCokeRailPlan from '../components/transport_order/dispatchCokeRailPlan.vue'
-import dispatchCokeRailPlanAdd from '../components/transport_order/dispatchCokeRailPlanAdd.vue'
-import dispatchCokeRailPlanCheck from '../components/transport_order/dispatchCokeRailPlanCheck.vue'
-import dispatchOrder from '../components/transport_order/dispatchOrder.vue'
-import dispatchSlagDayPlanAdd from '../components/transport_order/dispatchSlagDayPlanAdd.vue'
-import dispatchSlagDayPlanCheck from '../components/transport_order/dispatchSlagDayPlanCheck.vue'
-import dispatchSlagRailPlan from '../components/transport_order/dispatchSlagRailPlan.vue'
-import dispatchSteelSaleOrder from '../components/transport_order/dispatchSteelSaleOrder.vue'
-import dispatchSteelSaleOrderCheck from '../components/transport_order/dispatchSteelSaleOrderCheck.vue'
-import receiveOrder from '../components/transport_order/receiveOrder.vue'
-import saleChemicalCokeOrder from '../components/transport_order/saleChemicalCokeOrder.vue'
-import saleCoproductOrder from '../components/transport_order/saleCoproductOrder.vue'
-import saleSteelOrder from '../components/transport_order/saleSteelOrder.vue'
-import addBmsTrainFreight from '../components/transportFreight/saleTrainSettlement/addBmsTrainFreight.vue'
-import bmsTrainFreight from '../components/transportFreight/saleTrainSettlement/bmsTrainFreight.vue'
-import updateBmsTrainFreight from '../components/transportFreight/saleTrainSettlement/updateBmsTrainFreight.vue'
-import addBmsTruckInvoice from '../components/transportFreight/saleTruckSettlement/addBmsTruckInvoice.vue'
-import addBmsTruckStatement from '../components/transportFreight/saleTruckSettlement/addBmsTruckStatement.vue'
-import bmsTruckAudit from '../components/transportFreight/saleTruckSettlement/bmsTruckAudit.vue'
-import bmsTruckDetailOrder from '../components/transportFreight/saleTruckSettlement/bmsTruckDetailOrder.vue'
-import bmsTruckFormula from '../components/transportFreight/saleTruckSettlement/bmsTruckFormula.vue'
-import bmsTruckInvoice from '../components/transportFreight/saleTruckSettlement/bmsTruckInvoice.vue'
-import bmsTruckStatement from '../components/transportFreight/saleTruckSettlement/bmsTruckStatement.vue'
-import getBmsTruckStatementOrder from '../components/transportFreight/saleTruckSettlement/getBmsTruckStatementOrder.vue'
-import getTransportResult from '../components/transportFreight/saleTruckSettlement/getTransportResult.vue'
-import mapTest from '../components/offSiteTransportation/mapTest.vue'
-import checkGPS from '../components/offSiteTransportation/checkGPS.vue'
-import currentLocation from '../components/offSiteTransportation/currentLocation.vue'
-import inTransit from '../components/offSiteTransportation/inTransit.vue'  
-import inTransitWarn from '../components/offSiteTransportation/inTransitWarn.vue'
+import inTransitAbnormal from "../components/transport_excute/tms-offsite/inTransitAbnormal.vue";
+import inTransitAlarm from "../components/transport_excute/tms-offsite/inTransitAlarm.vue";
+import inTransitOrderMileage from "../components/transport_excute/tms-offsite/inTransitOrderMileage.vue";
+import pathView from "../components/transport_excute/tms-offsite/pathView.vue";
+import receiptChildPhoto from "../components/transport_excute/tms-offsite/receiptChildPhoto.vue";
+import receiptPhoto from "../components/transport_excute/tms-offsite/receiptPhoto.vue";
+import receiptResult from "../components/transport_excute/tms-offsite/receiptResult.vue";
+import transportInfo from "../components/transport_excute/tms-offsite/transportInfo.vue";
+import enFactoryResult from "../components/transport_excute/enFactoryResult.vue";
+import grossWeightResult from "../components/transport_excute/grossWeightResult.vue";
+import loadTruckResult from "../components/transport_excute/loadTruckResult.vue";
+import qualityResult from "../components/transport_excute/qualityResult.vue";
+import returnResult from "../components/transport_excute/returnResult.vue";
+import tareWeightResult from "../components/transport_excute/tareWeightResult.vue";
+import disatchSteelSaleOrderAdd from "../components/transport_order/disatchSteelSaleOrderAdd.vue";
+import dispatchCokeRailPlan from "../components/transport_order/dispatchCokeRailPlan.vue";
+import dispatchCokeRailPlanAdd from "../components/transport_order/dispatchCokeRailPlanAdd.vue";
+import dispatchCokeRailPlanCheck from "../components/transport_order/dispatchCokeRailPlanCheck.vue";
+import dispatchOrder from "../components/transport_order/dispatchOrder.vue";
+import dispatchSlagDayPlanAdd from "../components/transport_order/dispatchSlagDayPlanAdd.vue";
+import dispatchSlagDayPlanCheck from "../components/transport_order/dispatchSlagDayPlanCheck.vue";
+import dispatchSlagRailPlan from "../components/transport_order/dispatchSlagRailPlan.vue";
+import dispatchSteelSaleOrder from "../components/transport_order/dispatchSteelSaleOrder.vue";
+import dispatchSteelSaleOrderCheck from "../components/transport_order/dispatchSteelSaleOrderCheck.vue";
+import receiveOrder from "../components/transport_order/receiveOrder.vue";
+import saleChemicalCokeOrder from "../components/transport_order/saleChemicalCokeOrder.vue";
+import saleCoproductOrder from "../components/transport_order/saleCoproductOrder.vue";
+import saleSteelOrder from "../components/transport_order/saleSteelOrder.vue";
+import addBmsTrainFreight from "../components/transportFreight/saleTrainSettlement/addBmsTrainFreight.vue";
+import bmsTrainFreight from "../components/transportFreight/saleTrainSettlement/bmsTrainFreight.vue";
+import updateBmsTrainFreight from "../components/transportFreight/saleTrainSettlement/updateBmsTrainFreight.vue";
+import addBmsTruckInvoice from "../components/transportFreight/saleTruckSettlement/addBmsTruckInvoice.vue";
+import addBmsTruckStatement from "../components/transportFreight/saleTruckSettlement/addBmsTruckStatement.vue";
+import bmsTruckAudit from "../components/transportFreight/saleTruckSettlement/bmsTruckAudit.vue";
+import bmsTruckDetailOrder from "../components/transportFreight/saleTruckSettlement/bmsTruckDetailOrder.vue";
+import bmsTruckFormula from "../components/transportFreight/saleTruckSettlement/bmsTruckFormula.vue";
+import bmsTruckInvoice from "../components/transportFreight/saleTruckSettlement/bmsTruckInvoice.vue";
+import bmsTruckStatement from "../components/transportFreight/saleTruckSettlement/bmsTruckStatement.vue";
+import getBmsTruckStatementOrder from "../components/transportFreight/saleTruckSettlement/getBmsTruckStatementOrder.vue";
+import getTransportResult from "../components/transportFreight/saleTruckSettlement/getTransportResult.vue";
+import mapTest from "../components/offSiteTransportation/mapTest.vue";
+import checkGPS from "../components/offSiteTransportation/checkGPS.vue";
+import currentLocation from "../components/offSiteTransportation/currentLocation.vue";
+import inTransit from "../components/offSiteTransportation/inTransit.vue";
+import inTransitWarn from "../components/offSiteTransportation/inTransitWarn.vue";
 //测试数据
+//添加销售钢材汽运结算
+import bmsTruckSteelDetails from "@/views/sale/components/transportFreight/saleTruckSettlement/bmsTruckSteelDetails.vue";
+import bmsTruckSteelStatement from "@/views/sale/components/transportFreight/saleTruckSettlement/bmsTruckSteelStatement.vue";
 
-Vue.use(Router)
+Vue.use(Router);
 const constantRouterMap = [
-	{
-	  path: '/',
-	  name: 'main',
-	  meta: {title: '首页', code: 'xtpzgl'},
-	  component: main,
-	  redirect: {name: 'addSaleOrder'},
-	  children: [
-		{path: 'addSaleOrder', name: 'addSaleOrder', meta: {code: 'xtpzgl-jggl'}, component: addSaleOrder},
-		{path: 'addSalePlan', name: 'addSalePlan', meta: {code: 'xtpzgl-yhgl'}, component: addSalePlan},
-		{path: 'addSalePlanDetail/:planId', name: 'addSalePlanDetail', meta: {code: 'xtpzgl-yhgl'}, component: addSalePlanDetail},
-		{path: 'addTransportPrice', name: 'addTransportPrice', meta: {code: 'xtpzgl-yhgl'}, component: addTransportPrice},
-		{path: 'addTruckNoDetail/:saleOrderMaterialId', name: 'addTruckNoDetail', meta: {code: 'xtpzgl-yhgl'}, component: addTruckNoDetail},
-		{path: 'editaddress/:saleOrderMaterialId', name: 'editaddress', meta: {code: 'xtpzgl-yhgl'}, component: editaddress},
-		{path: 'editSaleOrder/:saleOrderId', name: 'editSaleOrder', meta: {code: 'xtpzgl-yhgl'}, component: editSaleOrder},
-		{path: 'editSaleOrderDetail/:saleOrderMaterialId', name: 'editSaleOrderDetail', meta: {code: 'xtpzgl-yhgl'}, component: editSaleOrderDetail},
-		{path: 'editSalePalnDetail/:planMaterialId', name: 'editSalePalnDetail', meta: {code: 'xtpzgl-yhgl'}, component: editSalePalnDetail},
-		{path: 'editSalePlan/:planId', name: 'editSalePlan', meta: {code: 'xtpzgl-yhgl'}, component: editSalePlan},
-		{path: 'editTransportPrice/:priceId', name: 'editTransportPrice', meta: {code: 'xtpzgl-yhgl'}, component: editTransportPrice},
-		{path: 'editTruckNoDetail/:trucknoMaterialId', name: 'editTruckNoDetail', meta: {code: 'xtpzgl-yhgl'}, component: editTruckNoDetail},
-		{path: 'saleOrder', name: 'saleOrder', meta: {code: 'xtpzgl-yhgl'}, component: saleOrder},
-		{path: 'saleOrderDetail/:saleOrderId', name: 'saleOrderDetail', meta: {code: 'xtpzgl-yhgl'}, component: saleOrderDetail},
-		{path: 'saleOrderDetailApproved/:saleOrderId', name: 'saleOrderDetailApproved', meta: {code: 'xtpzgl-yhgl'}, component: saleOrderDetailApproved},
-		{path: 'saleOrderUpdateLog/:saleOrderId', name: 'saleOrderUpdateLog', meta: {code: 'xtpzgl-yhgl'}, component: saleOrderUpdateLog},
-		{path: 'salePlan', name: 'salePlan', meta: {code: 'xtpzgl-yhgl'}, component: salePlan},
-		{path: 'transportPrice', name: 'transportPrice', meta: {code: 'xtpzgl-yhgl'}, component: transportPrice},
-		{path: 'addlading', name: 'addlading', meta: {code: 'xtpzgl-yhgl'}, component: addlading},
-		{path: 'printLading', name: 'printLading', meta: {code: 'xtpzgl-yhgl'}, component: printLading},
-		{path: 'printReceipt', name: 'printReceipt', meta: {code: 'xtpzgl-yhgl'}, component: printReceipt},
-		{path: 'printScan', name: 'printScan', meta: {code: 'xtpzgl-yhgl'}, component: printScan},
-		{path: 'printWarranty', name: 'printWarranty', meta: {code: 'xtpzgl-yhgl'}, component: printWarranty},
-		{path: 'saleSelfMachine', name: 'saleSelfMachine', meta: {code: 'xtpzgl-yhgl'}, component: saleSelfMachine},
-		{path: 'addCokeRailPlan', name: 'addCokeRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: addCokeRailPlan},
-		{path: 'addSlagRailPlan', name: 'addSlagRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: addSlagRailPlan},
-		{path: 'addSteelRailPlan', name: 'addSteelRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: addSteelRailPlan},
-		{path: 'cokeRailPlan', name: 'cokeRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: cokeRailPlan},
-		{path: 'slagRailPlan', name: 'slagRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: slagRailPlan},
-		{path: 'steelRailPlan', name: 'steelRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: steelRailPlan},
-		{path: 'updateCokeRailPlan/:dayPlanId', name: 'updateCokeRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: updateCokeRailPlan},
-		{path: 'updateSlagRailPlan/:dayPlanId', name: 'updateSlagRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: updateSlagRailPlan},
-		{path: 'updateSteelRailPlan/:dayPlanId', name: 'updateSteelRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: updateSteelRailPlan},
-		{path: 'addOpenDistribution', name: 'addOpenDistribution', meta: {code: 'xtpzgl-yhgl'}, component: addOpenDistribution},
-		{path: 'directionalDispatch', name: 'directionalDispatch', meta: {code: 'xtpzgl-yhgl'}, component: directionalDispatch},
-		{path: 'openDistribution', name: 'openDistribution', meta: {code: 'xtpzgl-yhgl'}, component: openDistribution},
-		{path: 'openDistributionSection/:dispatchId', name: 'openDistributionSection', meta: {code: 'xtpzgl-yhgl'}, component: openDistributionSection},
-		{path: 'orderGrabbing', name: 'orderGrabbing', meta: {code: 'xtpzgl-yhgl'}, component: orderGrabbing},
+  {
+    path: "/",
+    name: "main",
+    meta: { title: "首页", code: "xtpzgl" },
+    component: main,
+    redirect: { name: "addSaleOrder" },
+    children: [
+      {
+        path: "addSaleOrder",
+        name: "addSaleOrder",
+        meta: { code: "xtpzgl-jggl" },
+        component: addSaleOrder
+      },
+      {
+        path: "addSalePlan",
+        name: "addSalePlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addSalePlan
+      },
+      {
+        path: "addSalePlanDetail/:planId",
+        name: "addSalePlanDetail",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addSalePlanDetail
+      },
+      {
+        path: "addTransportPrice",
+        name: "addTransportPrice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addTransportPrice
+      },
+      {
+        path: "addTruckNoDetail/:saleOrderMaterialId",
+        name: "addTruckNoDetail",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addTruckNoDetail
+      },
+      {
+        path: "editaddress/:saleOrderMaterialId",
+        name: "editaddress",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editaddress
+      },
+      {
+        path: "editSaleOrder/:saleOrderId",
+        name: "editSaleOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editSaleOrder
+      },
+      {
+        path: "editSaleOrderDetail/:saleOrderMaterialId",
+        name: "editSaleOrderDetail",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editSaleOrderDetail
+      },
+      {
+        path: "editSalePalnDetail/:planMaterialId",
+        name: "editSalePalnDetail",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editSalePalnDetail
+      },
+      {
+        path: "editSalePlan/:planId",
+        name: "editSalePlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editSalePlan
+      },
+      {
+        path: "editTransportPrice/:priceId",
+        name: "editTransportPrice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editTransportPrice
+      },
+      {
+        path: "editTruckNoDetail/:trucknoMaterialId",
+        name: "editTruckNoDetail",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editTruckNoDetail
+      },
+      {
+        path: "saleOrder",
+        name: "saleOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleOrder
+      },
+      {
+        path: "saleOrderDetail/:saleOrderId",
+        name: "saleOrderDetail",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleOrderDetail
+      },
+      {
+        path: "saleOrderDetailApproved/:saleOrderId",
+        name: "saleOrderDetailApproved",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleOrderDetailApproved
+      },
+      {
+        path: "saleOrderUpdateLog/:saleOrderId",
+        name: "saleOrderUpdateLog",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleOrderUpdateLog
+      },
+      {
+        path: "salePlan",
+        name: "salePlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: salePlan
+      },
+      {
+        path: "transportPrice",
+        name: "transportPrice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: transportPrice
+      },
+      {
+        path: "addlading",
+        name: "addlading",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addlading
+      },
+      {
+        path: "printLading",
+        name: "printLading",
+        meta: { code: "xtpzgl-yhgl" },
+        component: printLading
+      },
+      {
+        path: "printReceipt",
+        name: "printReceipt",
+        meta: { code: "xtpzgl-yhgl" },
+        component: printReceipt
+      },
+      {
+        path: "printScan",
+        name: "printScan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: printScan
+      },
+      {
+        path: "printWarranty",
+        name: "printWarranty",
+        meta: { code: "xtpzgl-yhgl" },
+        component: printWarranty
+      },
+      {
+        path: "saleSelfMachine",
+        name: "saleSelfMachine",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleSelfMachine
+      },
+      {
+        path: "addCokeRailPlan",
+        name: "addCokeRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addCokeRailPlan
+      },
+      {
+        path: "addSlagRailPlan",
+        name: "addSlagRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addSlagRailPlan
+      },
+      {
+        path: "addSteelRailPlan",
+        name: "addSteelRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addSteelRailPlan
+      },
+      {
+        path: "cokeRailPlan",
+        name: "cokeRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: cokeRailPlan
+      },
+      {
+        path: "slagRailPlan",
+        name: "slagRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: slagRailPlan
+      },
+      {
+        path: "steelRailPlan",
+        name: "steelRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: steelRailPlan
+      },
+      {
+        path: "updateCokeRailPlan/:dayPlanId",
+        name: "updateCokeRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: updateCokeRailPlan
+      },
+      {
+        path: "updateSlagRailPlan/:dayPlanId",
+        name: "updateSlagRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: updateSlagRailPlan
+      },
+      {
+        path: "updateSteelRailPlan/:dayPlanId",
+        name: "updateSteelRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: updateSteelRailPlan
+      },
+      {
+        path: "addOpenDistribution",
+        name: "addOpenDistribution",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addOpenDistribution
+      },
+      {
+        path: "directionalDispatch",
+        name: "directionalDispatch",
+        meta: { code: "xtpzgl-yhgl" },
+        component: directionalDispatch
+      },
+      {
+        path: "openDistribution",
+        name: "openDistribution",
+        meta: { code: "xtpzgl-yhgl" },
+        component: openDistribution
+      },
+      {
+        path: "openDistributionSection/:dispatchId",
+        name: "openDistributionSection",
+        meta: { code: "xtpzgl-yhgl" },
+        component: openDistributionSection
+      },
+      {
+        path: "orderGrabbing",
+        name: "orderGrabbing",
+        meta: { code: "xtpzgl-yhgl" },
+        component: orderGrabbing
+      },
 
-		{path: 'add_sale_dilNotice', name: 'add_sale_dilNotice', meta: {code: 'xtpzgl-yhgl'}, component: add_sale_dilNotice},
-		{path: 'Carrier_dilNotice', name: 'Carrier_dilNotice', meta: {code: 'xtpzgl-yhgl'}, component: Carrier_dilNotice},
-		{path: 'sale_dilNotice', name: 'sale_dilNotice', meta: {code: 'xtpzgl-yhgl'}, component: sale_dilNotice},
-		{path: 'addNotice', name: 'addNotice', meta: {code: 'xtpzgl-yhgl'}, component: addNotice},
-		{path: 'carrierNotice', name: 'carrierNotice', meta: {code: 'xtpzgl-yhgl'}, component: carrierNotice},
-		{path: 'clientNotice', name: 'clientNotice', meta: {code: 'xtpzgl-yhgl'}, component: clientNotice},
-		{path: 'editNotice/:noticeId', name: 'editNotice', meta: {code: 'xtpzgl-yhgl'}, component: editNotice},
-		{path: 'getNoticeById/:noticeId', name: 'getNoticeById', meta: {code: 'xtpzgl-yhgl'}, component: getNoticeById},
-		{path: 'marketingNotice', name: 'marketingNotice', meta: {code: 'xtpzgl-yhgl'}, component: marketingNotice},
-		{path: 'newNotice', name: 'newNotice', meta: {code: 'xtpzgl-yhgl'}, component: newNotice},
+      {
+        path: "add_sale_dilNotice",
+        name: "add_sale_dilNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: add_sale_dilNotice
+      },
+      {
+        path: "Carrier_dilNotice",
+        name: "Carrier_dilNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: Carrier_dilNotice
+      },
+      {
+        path: "sale_dilNotice",
+        name: "sale_dilNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: sale_dilNotice
+      },
+      {
+        path: "addNotice",
+        name: "addNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addNotice
+      },
+      {
+        path: "carrierNotice",
+        name: "carrierNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: carrierNotice
+      },
+      {
+        path: "clientNotice",
+        name: "clientNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: clientNotice
+      },
+      {
+        path: "editNotice/:noticeId",
+        name: "editNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: editNotice
+      },
+      {
+        path: "getNoticeById/:noticeId",
+        name: "getNoticeById",
+        meta: { code: "xtpzgl-yhgl" },
+        component: getNoticeById
+      },
+      {
+        path: "marketingNotice",
+        name: "marketingNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: marketingNotice
+      },
+      {
+        path: "newNotice",
+        name: "newNotice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: newNotice
+      },
 
-		{path: 'outFactoryResult', name: 'outFactoryResult', meta: {code: 'xtpzgl-yhgl'}, component: outFactoryResult},
-		{path: 'smsResult', name: 'smsResult', meta: {code: 'xtpzgl-jggl'}, component: smsResult},
-		{path: 'arrivalPhoto', name: 'arrivalPhoto', meta: {code: 'xtpzgl-yhgl'}, component: arrivalPhoto},
-		{path: 'arrivalResult', name: 'arrivalResult', meta: {code: 'xtpzgl-yhgl'}, component: arrivalResult},
-		{path: 'distance', name: 'distance', meta: {code: 'xtpzgl-yhgl'}, component: distance},
-		{path: 'inTransit', name: 'inTransit', meta: {code: 'xtpzgl-yhgl'}, component: inTransit},
-		{path: 'inTransitAbnormal', name: 'inTransitAbnormal', meta: {code: 'xtpzgl-yhgl'}, component: inTransitAbnormal},
-		{path: 'inTransitAlarm', name: 'inTransitAlarm', meta: {code: 'xtpzgl-yhgl'}, component: inTransitAlarm},
-		{path: 'inTransitOrderMileage', name: 'inTransitOrderMileage', meta: {code: 'xtpzgl-yhgl'}, component: inTransitOrderMileage},
-		{path: 'pathView', name: 'pathView', meta: {code: 'xtpzgl-yhgl'}, component: pathView},
-		{path: 'receiptChildPhoto', name: 'receiptChildPhoto', meta: {code: 'xtpzgl-yhgl'}, component: receiptChildPhoto},
-		{path: 'receiptPhoto', name: 'receiptPhoto', meta: {code: 'xtpzgl-yhgl'}, component: receiptPhoto},
-		{path: 'receiptResult', name: 'receiptResult', meta: {code: 'xtpzgl-yhgl'}, component: receiptResult},
-		{path: 'transportInfo', name: 'transportInfo', meta: {code: 'xtpzgl-yhgl'}, component: transportInfo},
-		{path: 'enFactoryResult', name: 'enFactoryResult', meta: {code: 'xtpzgl-yhgl'}, component: enFactoryResult},
-		{path: 'grossWeightResult', name: 'grossWeightResult', meta: {code: 'xtpzgl-jggl'}, component: grossWeightResult},
-		{path: 'loadTruckResult', name: 'loadTruckResult', meta: {code: 'xtpzgl-yhgl'}, component: loadTruckResult},
-		{path: 'qualityResult', name: 'qualityResult', meta: {code: 'xtpzgl-yhgl'}, component: qualityResult},
-		{path: 'returnResult', name: 'returnResult', meta: {code: 'xtpzgl-yhgl'}, component: returnResult},
-		{path: 'tareWeightResult', name: 'tareWeightResult', meta: {code: 'xtpzgl-yhgl'}, component: tareWeightResult},
-		{path: 'disatchSteelSaleOrderAdd', name: 'disatchSteelSaleOrderAdd', meta: {code: 'xtpzgl-yhgl'}, component: disatchSteelSaleOrderAdd},
-		{path: 'dispatchCokeRailPlan', name: 'dispatchCokeRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: dispatchCokeRailPlan},
-		{path: 'dispatchCokeRailPlanAdd', name: 'dispatchCokeRailPlanAdd', meta: {code: 'xtpzgl-yhgl'}, component: dispatchCokeRailPlanAdd},
-		{path: 'dispatchCokeRailPlanCheck', name: 'dispatchCokeRailPlanCheck', meta: {code: 'xtpzgl-yhgl'}, component: dispatchCokeRailPlanCheck},
-		{path: 'dispatchOrder', name: 'dispatchOrder', meta: {code: 'xtpzgl-yhgl'}, component: dispatchOrder},
-		{path: 'dispatchSlagDayPlanAdd', name: 'dispatchSlagDayPlanAdd', meta: {code: 'xtpzgl-yhgl'}, component: dispatchSlagDayPlanAdd},
-		{path: 'dispatchSlagDayPlanCheck', name: 'dispatchSlagDayPlanCheck', meta: {code: 'xtpzgl-yhgl'}, component: dispatchSlagDayPlanCheck},
-		{path: 'dispatchSlagRailPlan', name: 'dispatchSlagRailPlan', meta: {code: 'xtpzgl-yhgl'}, component: dispatchSlagRailPlan},
-		{path: 'dispatchSteelSaleOrder', name: 'dispatchSteelSaleOrder', meta: {code: 'xtpzgl-yhgl'}, component: dispatchSteelSaleOrder},
-		{path: 'dispatchSteelSaleOrderCheck', name: 'dispatchSteelSaleOrderCheck', meta: {code: 'xtpzgl-jggl'}, component: dispatchSteelSaleOrderCheck},
-		{path: 'receiveOrder', name: 'receiveOrder', meta: {code: 'xtpzgl-yhgl'}, component: receiveOrder},
-		{path: 'saleChemicalCokeOrder', name: 'saleChemicalCokeOrder', meta: {code: 'xtpzgl-yhgl'}, component: saleChemicalCokeOrder},
-		{path: 'saleCoproductOrder', name: 'saleCoproductOrder', meta: {code: 'xtpzgl-yhgl'}, component: saleCoproductOrder},
-		{path: 'saleSteelOrder', name: 'saleSteelOrder', meta: {code: 'xtpzgl-yhgl'}, component: saleSteelOrder},
-		{path: 'addBmsTrainFreight', name: 'addBmsTrainFreight', meta: {code: 'xtpzgl-yhgl'}, component: addBmsTrainFreight},
-		{path: 'bmsTrainFreight', name: 'bmsTrainFreight', meta: {code: 'xtpzgl-yhgl'}, component: bmsTrainFreight},
-		{path: 'updateBmsTrainFreight/:settlementId', name: 'updateBmsTrainFreight', meta: {code: 'xtpzgl-yhgl'}, component: updateBmsTrainFreight},
-		{path: 'addBmsTruckInvoice', name: 'addBmsTruckInvoice', meta: {code: 'xtpzgl-yhgl'}, component: addBmsTruckInvoice},
-		{path: 'addBmsTruckStatement', name: 'addBmsTruckStatement', meta: {code: 'xtpzgl-yhgl'}, component: addBmsTruckStatement},
-		{path: 'bmsTruckAudit/:statementId', name: 'bmsTruckAudit', meta: {code: 'xtpzgl-yhgl'}, component: bmsTruckAudit},
-		{path: 'bmsTruckDetailOrder', name: 'bmsTruckDetailOrder', meta: {code: 'xtpzgl-yhgl'}, component: bmsTruckDetailOrder},
-		{path: 'bmsTruckFormula', name: 'bmsTruckFormula', meta: {code: 'xtpzgl-yhgl'}, component: bmsTruckFormula},
-		{path: 'bmsTruckInvoice', name: 'bmsTruckInvoice', meta: {code: 'xtpzgl-yhgl'}, component: bmsTruckInvoice},
-		{path: 'bmsTruckStatement', name: 'bmsTruckStatement', meta: {code: 'xtpzgl-yhgl'}, component: bmsTruckStatement},
-		{path: 'getBmsTruckStatementOrder/:statementId', name: 'getBmsTruckStatementOrder', meta: {code: 'xtpzgl-yhgl'}, component: getBmsTruckStatementOrder},
-		{path: 'getTransportResult/:orderId', name: 'getTransportResult', meta: {code: 'xtpzgl-yhgl'}, component: getTransportResult},
-		{path: 'mapTest', name: 'mapTest', meta: {code: 'xtpzgl-yhgl'}, component: mapTest},  
-		{path: 'checkGPS', name: 'checkGPS', meta: {code: 'xtpzgl-yhgl'}, component: checkGPS},
-		{path: 'currentLocation', name: 'currentLocation', meta: {code: 'xtpzgl-yhgl'}, component: currentLocation},
-		{path: 'inTransitWarn', name: 'inTransitWarn', meta: {code: 'xtpzgl-yhgl'}, component: inTransitWarn},
-		{path: 'transportationPerformance', name: 'transportationPerformance', meta: {code: 'xtpzgl-yhgl'}, component: transportationPerformance},
-	  ] 
-	}
-  ];
-  const router = new Router({
-	routes: constantRouterMap
-  })
-  //  before
-  routerBefore(router, constantRouterMap);
-  
-  export default router;
-  //  constantRouterMap
-  export const routes = constantRouterMap;
-  
+      {
+        path: "outFactoryResult",
+        name: "outFactoryResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: outFactoryResult
+      },
+      {
+        path: "smsResult",
+        name: "smsResult",
+        meta: { code: "xtpzgl-jggl" },
+        component: smsResult
+      },
+      {
+        path: "arrivalPhoto",
+        name: "arrivalPhoto",
+        meta: { code: "xtpzgl-yhgl" },
+        component: arrivalPhoto
+      },
+      {
+        path: "arrivalResult",
+        name: "arrivalResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: arrivalResult
+      },
+      {
+        path: "distance",
+        name: "distance",
+        meta: { code: "xtpzgl-yhgl" },
+        component: distance
+      },
+      {
+        path: "inTransit",
+        name: "inTransit",
+        meta: { code: "xtpzgl-yhgl" },
+        component: inTransit
+      },
+      {
+        path: "inTransitAbnormal",
+        name: "inTransitAbnormal",
+        meta: { code: "xtpzgl-yhgl" },
+        component: inTransitAbnormal
+      },
+      {
+        path: "inTransitAlarm",
+        name: "inTransitAlarm",
+        meta: { code: "xtpzgl-yhgl" },
+        component: inTransitAlarm
+      },
+      {
+        path: "inTransitOrderMileage",
+        name: "inTransitOrderMileage",
+        meta: { code: "xtpzgl-yhgl" },
+        component: inTransitOrderMileage
+      },
+      {
+        path: "pathView",
+        name: "pathView",
+        meta: { code: "xtpzgl-yhgl" },
+        component: pathView
+      },
+      {
+        path: "receiptChildPhoto",
+        name: "receiptChildPhoto",
+        meta: { code: "xtpzgl-yhgl" },
+        component: receiptChildPhoto
+      },
+      {
+        path: "receiptPhoto",
+        name: "receiptPhoto",
+        meta: { code: "xtpzgl-yhgl" },
+        component: receiptPhoto
+      },
+      {
+        path: "receiptResult",
+        name: "receiptResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: receiptResult
+      },
+      {
+        path: "transportInfo",
+        name: "transportInfo",
+        meta: { code: "xtpzgl-yhgl" },
+        component: transportInfo
+      },
+      {
+        path: "enFactoryResult",
+        name: "enFactoryResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: enFactoryResult
+      },
+      {
+        path: "grossWeightResult",
+        name: "grossWeightResult",
+        meta: { code: "xtpzgl-jggl" },
+        component: grossWeightResult
+      },
+      {
+        path: "loadTruckResult",
+        name: "loadTruckResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: loadTruckResult
+      },
+      {
+        path: "qualityResult",
+        name: "qualityResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: qualityResult
+      },
+      {
+        path: "returnResult",
+        name: "returnResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: returnResult
+      },
+      {
+        path: "tareWeightResult",
+        name: "tareWeightResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: tareWeightResult
+      },
+      {
+        path: "disatchSteelSaleOrderAdd",
+        name: "disatchSteelSaleOrderAdd",
+        meta: { code: "xtpzgl-yhgl" },
+        component: disatchSteelSaleOrderAdd
+      },
+      {
+        path: "dispatchCokeRailPlan",
+        name: "dispatchCokeRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchCokeRailPlan
+      },
+      {
+        path: "dispatchCokeRailPlanAdd",
+        name: "dispatchCokeRailPlanAdd",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchCokeRailPlanAdd
+      },
+      {
+        path: "dispatchCokeRailPlanCheck",
+        name: "dispatchCokeRailPlanCheck",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchCokeRailPlanCheck
+      },
+      {
+        path: "dispatchOrder",
+        name: "dispatchOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchOrder
+      },
+      {
+        path: "dispatchSlagDayPlanAdd",
+        name: "dispatchSlagDayPlanAdd",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchSlagDayPlanAdd
+      },
+      {
+        path: "dispatchSlagDayPlanCheck",
+        name: "dispatchSlagDayPlanCheck",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchSlagDayPlanCheck
+      },
+      {
+        path: "dispatchSlagRailPlan",
+        name: "dispatchSlagRailPlan",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchSlagRailPlan
+      },
+      {
+        path: "dispatchSteelSaleOrder",
+        name: "dispatchSteelSaleOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: dispatchSteelSaleOrder
+      },
+      {
+        path: "dispatchSteelSaleOrderCheck",
+        name: "dispatchSteelSaleOrderCheck",
+        meta: { code: "xtpzgl-jggl" },
+        component: dispatchSteelSaleOrderCheck
+      },
+      {
+        path: "receiveOrder",
+        name: "receiveOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: receiveOrder
+      },
+      {
+        path: "saleChemicalCokeOrder",
+        name: "saleChemicalCokeOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleChemicalCokeOrder
+      },
+      {
+        path: "saleCoproductOrder",
+        name: "saleCoproductOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleCoproductOrder
+      },
+      {
+        path: "saleSteelOrder",
+        name: "saleSteelOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: saleSteelOrder
+      },
+      {
+        path: "addBmsTrainFreight",
+        name: "addBmsTrainFreight",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addBmsTrainFreight
+      },
+      {
+        path: "bmsTrainFreight",
+        name: "bmsTrainFreight",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTrainFreight
+      },
+      {
+        path: "updateBmsTrainFreight/:settlementId",
+        name: "updateBmsTrainFreight",
+        meta: { code: "xtpzgl-yhgl" },
+        component: updateBmsTrainFreight
+      },
+      {
+        path: "addBmsTruckInvoice",
+        name: "addBmsTruckInvoice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addBmsTruckInvoice
+      },
+      {
+        path: "addBmsTruckStatement",
+        name: "addBmsTruckStatement",
+        meta: { code: "xtpzgl-yhgl" },
+        component: addBmsTruckStatement
+      },
+      {
+        path: "bmsTruckAudit/:statementId",
+        name: "bmsTruckAudit",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTruckAudit
+      },
+      {
+        path: "bmsTruckDetailOrder",
+        name: "bmsTruckDetailOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTruckDetailOrder
+      },
+      {
+        path: "bmsTruckFormula",
+        name: "bmsTruckFormula",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTruckFormula
+      },
+      {
+        path: "bmsTruckInvoice",
+        name: "bmsTruckInvoice",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTruckInvoice
+      },
+      {
+        path: "bmsTruckStatement",
+        name: "bmsTruckStatement",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTruckStatement
+      },
+      {
+        path: "getBmsTruckStatementOrder/:statementId",
+        name: "getBmsTruckStatementOrder",
+        meta: { code: "xtpzgl-yhgl" },
+        component: getBmsTruckStatementOrder
+      },
+      {
+        path: "getTransportResult/:orderId",
+        name: "getTransportResult",
+        meta: { code: "xtpzgl-yhgl" },
+        component: getTransportResult
+      },
+      {
+        path: "mapTest",
+        name: "mapTest",
+        meta: { code: "xtpzgl-yhgl" },
+        component: mapTest
+      },
+      {
+        path: "checkGPS",
+        name: "checkGPS",
+        meta: { code: "xtpzgl-yhgl" },
+        component: checkGPS
+      },
+      {
+        path: "currentLocation",
+        name: "currentLocation",
+        meta: { code: "xtpzgl-yhgl" },
+        component: currentLocation
+      },
+      {
+        path: "inTransitWarn",
+        name: "inTransitWarn",
+        meta: { code: "xtpzgl-yhgl" },
+        component: inTransitWarn
+      },
+      {
+        path: "transportationPerformance",
+        name: "transportationPerformance",
+        meta: { code: "xtpzgl-yhgl" },
+        component: transportationPerformance
+      },
+      {
+        path: "bmsTruckSteelDetails",
+        name: "bmsTruckSteelDetails",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTruckSteelDetails
+      },
+      {
+        path: "bmsTruckSteelStatement",
+        name: "bmsTruckSteelStatement",
+        meta: { code: "xtpzgl-yhgl" },
+        component: bmsTruckSteelStatement
+      }
+    ]
+  }
+];
+const router = new Router({
+  routes: constantRouterMap
+});
+//  before
+routerBefore(router, constantRouterMap);
+
+export default router;
+//  constantRouterMap
+export const routes = constantRouterMap;