浏览代码

Merge branch 'dev' of http://git.echepei.com/caojunjie/Smart_platform_ui into dev

QuKatie 3 年之前
父节点
当前提交
8e39a0f4ef

+ 10 - 0
src/api/landTransportation/index.js

@@ -0,0 +1,10 @@
+import request from '@/router/axios';
+
+// 列表查询
+export function selectInvoiceList(data) {
+    return request({
+        url: '/api/blade-land/order/list',
+        method: 'get',
+        params: data
+    })
+}

+ 1 - 2
src/util/columnSetting.js

@@ -10,7 +10,6 @@ export async function getColumnData(columnKey, mainOption) {
   if (localData != null) {
     option = localData;
   } else {
-    console.log(columnKey)
     let res = await getColumn({
       fileName: columnKey
     })
@@ -41,4 +40,4 @@ export async function delColumnData(columnKey, option) {
   } else {
     return false
   }
-}
+}

+ 36 - 1
src/views/basicData/landTransportation/vehicleInformation/index.vue

@@ -1,7 +1,8 @@
 <template>
   <div>
     <basic-container>
-      <avue-crud :data="dataList" :option="option"></avue-crud>
+      <avue-crud :data="dataList" :option="option">
+      </avue-crud>
     </basic-container>
   </div>
 </template>
@@ -23,6 +24,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '车队名称',
           prop: 'fileName',
@@ -31,6 +33,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '司机名称',
           prop: 'fileName',
@@ -39,6 +42,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '挂车号',
           prop: 'fileName',
@@ -47,6 +51,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '燃油类型',
           prop: 'fileName',
@@ -55,6 +60,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '车辆类型',
           prop: 'fileName',
@@ -63,6 +69,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '车辆品牌',
           prop: 'fileName',
@@ -71,6 +78,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '制造单位',
           prop: 'fileName',
@@ -79,6 +87,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '发证机关',
           prop: 'fileName',
@@ -87,6 +96,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '牵引车辆型号',
           prop: 'fileName',
@@ -95,6 +105,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '牵引车车架号',
           prop: 'fileName',
@@ -103,6 +114,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '挂车型号',
           prop: 'fileName',
@@ -111,6 +123,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '挂车车架号',
           prop: 'fileName',
@@ -119,6 +132,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '发动机型号',
           prop: 'fileName',
@@ -127,6 +141,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '核载人数',
           prop: 'fileName',
@@ -135,6 +150,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '购车日期',
           prop: 'fileName',
@@ -143,6 +159,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '注册日期',
           prop: 'fileName',
@@ -151,6 +168,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '报废日期',
           prop: 'fileName',
@@ -159,6 +177,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '外阔尺寸mm',
           prop: 'fileName',
@@ -167,6 +186,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '总重量kg',
           prop: 'fileName',
@@ -175,6 +195,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '核定重量kg',
           prop: 'fileName',
@@ -183,6 +204,7 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
         },{
           label: '装备质量kg',
           prop: 'fileName',
@@ -191,6 +213,19 @@ export default {
           cell: true,
           overHidden: true,
           search:true,
+          span: 8,
+        },{
+          label: '附件',
+          prop: 'annex',
+          index: 1,
+          width: 140,
+          cell: true,
+          overHidden: true,
+          search:true,
+          formslot:true,
+          labelslot:true,
+          errorslot:true,
+          span: 24,
         }]
       }
     }

+ 149 - 7
src/views/landTransportation/dispatchingCars/detailPage.vue

@@ -19,27 +19,42 @@
       >保存
       </el-button>
     </div>
-    <containerTitle title="起止地信息" style="margin-top: 50px"></containerTitle>
+    <containerTitle title="基础资料" style="margin-top: 50px"></containerTitle>
+    <basic-container>
+      <avue-form v-model="form" :option="basicsOption">
+        <template slot-scope="scope" slot="corpId">
+          <crop-select
+              v-model="form.corpId"
+          ></crop-select>
+        </template>
+      </avue-form>
+    </basic-container>
+    <containerTitle title="起止地信息"></containerTitle>
     <basic-container>
       <el-table
           ref="singleTable"
           :data="tableData"
           size="mini"
-          :header-cell-style="{color:'#000'}"
-          highlight-current-row
+          :header-cell-style="{color:'#000',background:'#fafafa'}"
           style="width: 100%">
         <el-table-column
             property="date"
             align="center"
-            width="40">
+            width="40"
+            :render-header="renderHeader">
           <template slot-scope="scope">
-            <el-tooltip class="item" effect="dark" content="增加途径地址" placement="top">
-              <el-button type="primary" icon="el-icon-plus" size="mini" circle
-                         v-if="(scope.$index+1) === tableData.length" @click="addAddress"></el-button>
+            <el-tooltip class="item" effect="dark" content="删除" placement="right">
+              <el-button type="danger" icon="el-icon-delete" size="mini" circle @click="deleteAddress(scope)"></el-button>
             </el-tooltip>
           </template>
         </el-table-column>
         <el-table-column
+            type="index"
+            label="序号"
+            align="center"
+            width="60">
+        </el-table-column>
+        <el-table-column
             property="date"
             label="省份"
             align="center"
@@ -96,6 +111,14 @@
     <basic-container>
       <avue-crud :data="goodsList" :option="goodsOptionCrud"></avue-crud>
     </basic-container>
+    <containerTitle title="收款信息"></containerTitle>
+    <basic-container>
+      <avue-crud :data="collectionList" :option="collectionOption"></avue-crud>
+    </basic-container>
+    <containerTitle title="付款信息"></containerTitle>
+    <basic-container>
+      <avue-crud :data="paymentList" :option="paymentOption"></avue-crud>
+    </basic-container>
   </div>
 </template>
 
@@ -104,6 +127,24 @@ export default {
   data() {
     return {
       form: {},
+      basicsOption: {
+        menuBtn:false,
+        column: [
+          {
+            label: "客户名称",
+            span: 8,
+            prop: "corpId"
+          },{
+            label: '联系人',
+            span: 8,
+            prop: 'name'
+          },{
+            label: '订单号',
+            span: 8,
+            prop: 'name'
+          }
+        ]
+      },
       tableData: [{
         date: '2016-05-02',
         name: '王小虎',
@@ -226,6 +267,92 @@ export default {
             prop: 'sex'
           }
         ]
+      },
+      collectionList:[],
+      collectionOption: {
+        align: 'center',
+        menuAlign: 'center',
+        index:true,
+        cellBtn:true,
+        addBtn:false,
+        addRowBtn:true,
+        column: [ {
+          label: '客户名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '费用名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '计价单位',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '数量',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '单价',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '金额',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '税率(默认6)',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '币别(默认RMB)',
+          cell: true,
+          prop: 'sex'
+        }
+        ]
+      },
+      paymentList:[],
+      paymentOption: {
+        align: 'center',
+        menuAlign: 'center',
+        index:true,
+        cellBtn:true,
+        addBtn:false,
+        addRowBtn:true,
+        column: [ {
+          label: '客户名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '费用名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '计价单位',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '数量',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '单价',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '金额',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '税率(默认6)',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '币别(默认RMB)',
+          cell: true,
+          prop: 'sex'
+        }
+        ]
       }
     };
   },
@@ -234,8 +361,23 @@ export default {
     addAddress(){
       this.tableData.push({})
     },
+    //返回主列表
     backToList(){
       this.$emit('backToList')
+    },
+    //删除途径地址
+    deleteAddress(scope){
+      this.tableData.splice(scope.$index, 1);
+    },
+    //自定义表头
+    renderHeader(h) {
+      return(
+          <div>
+            <el-tooltip className="item" effect="dark" content="增加途径地址" placement="top">
+              <el-button type="primary" icon="el-icon-plus" size="mini" circle onClick={()=>this.addAddress()} style="margin-right: 1.25rem;"></el-button>
+            </el-tooltip>
+          </div>
+      )
     }
   }
 }

+ 187 - 87
src/views/landTransportation/placeAnOrder/detailPage.vue

@@ -25,57 +25,36 @@
           ref="singleTable"
           :data="tableData"
           size="mini"
-          :header-cell-style="{color:'#000'}"
-          highlight-current-row
+          :header-cell-style="{color:'#000',background:'#fafafa'}"
           style="width: 100%">
         <el-table-column
             property="date"
             align="center"
-            width="40">
+            width="40"
+            :render-header="renderHeader">
           <template slot-scope="scope">
-            <el-tooltip class="item" effect="dark" content="增加途径地址" placement="top">
-              <el-button type="primary" icon="el-icon-plus" size="mini" circle
-                         v-if="(scope.$index+1) === tableData.length" @click="addAddress"></el-button>
+            <el-tooltip class="item" effect="dark" content="删除" placement="right">
+              <el-button type="danger" icon="el-icon-delete" size="mini" circle @click="deleteAddress(scope)"></el-button>
             </el-tooltip>
           </template>
         </el-table-column>
         <el-table-column
-            property="date"
-            label="省份"
+            type="index"
+            label="序号"
             align="center"
-            width="120">
-          <template slot-scope="scope">
-            <el-select v-model="scope.row.date" filterable size="small" placeholder="请选择">
-              <el-option label="北京" value="1"></el-option>
-              <el-option label="山东" value="2"></el-option>
-              <el-option label="天津" value="3"></el-option>
-            </el-select>
-          </template>
-        </el-table-column>
-        <el-table-column
-            property="name"
-            label="城市"
-            align="center"
-            width="120">
-          <template slot-scope="scope">
-            <el-select v-model="scope.row.name" filterable size="small" placeholder="请选择">
-              <el-option label="测试城市0" value="1"></el-option>
-              <el-option label="测试城市1" value="2"></el-option>
-              <el-option label="测试城市2" value="3"></el-option>
-            </el-select>
-          </template>
+            width="60">
         </el-table-column>
         <el-table-column
-            property="address"
+            property="province"
+            label="省市区"
             align="center"
-            width="160"
-            label="区/县">
+            width="280">
           <template slot-scope="scope">
-            <el-select v-model="scope.row.name" filterable size="small" placeholder="请选择">
-              <el-option label="测试城市0" value="1"></el-option>
-              <el-option label="测试城市1" value="2"></el-option>
-              <el-option label="测试城市2" value="3"></el-option>
-            </el-select>
+            <el-cascader
+                size="small"
+                style="width: 100%;"
+                v-model="scope.row.region"
+                :props="treeOption"></el-cascader>
           </template>
         </el-table-column>
         <el-table-column
@@ -94,78 +73,120 @@
     </basic-container>
     <containerTitle title="货物信息"></containerTitle>
     <basic-container>
-      <avue-form :option="goodsOptionForm" v-model="goodsForm"></avue-form>
-      <avue-crud :data="goodsList" :option="goodsOptionCrud"></avue-crud>
+      <avue-form :option="goodsOptionForm" v-model="goodsForm">
+        <template slot-scope="scope" slot="corpId">
+          <crop-select
+              v-model="goodsForm.corpId"
+          ></crop-select>
+        </template>
+      </avue-form>
+    </basic-container>
+    <containerTitle title="收款信息"></containerTitle>
+    <basic-container>
+      <avue-crud :data="collectionList" :option="collectionOption"></avue-crud>
+    </basic-container>
+    <containerTitle title="付款信息"></containerTitle>
+    <basic-container>
+      <avue-crud :data="paymentList" :option="paymentOption"></avue-crud>
     </basic-container>
   </div>
 </template>
 
 <script>
+import {getLazyTree} from "@/api/base/region";
+let id = 0;
 export default {
   data() {
     return {
-      form: {},
+      provinceList:[],//省
       goodsForm: {},
-      tableData: [{
-        date: '2016-05-02',
-        name: '王小虎',
-        address: '上海市普陀区金沙江路 1518 弄'
-      }, {
-        date: '2016-05-02',
-        name: '王小虎',
-        address: '上海市普陀区金沙江路 1518 弄'
-      }],
+      treeOption: {
+        label: 'title',
+        value: 'id',
+        lazy: true,
+        lazyLoad (node, resolve) {
+          const parentId = node.level === 0 ? '00' : node.data.id;
+          getLazyTree(parentId).then(res => {
+            console.log(res)
+            resolve(
+                res.data.data.map(item => {
+                  return {
+                    ...item,
+                    leaf: !item.hasChildren
+                  };
+                })
+            );
+          });
+        }
+      },
+      tableData: [],
       entrustList: [],
       goodsOptionForm: {
         menuBtn:false,
-        column: [
-          {
+        column: [{
+          label: '客户名称',
+          formslot:true,
+          prop: 'corpId'
+          },{
+            label: '订单号',
+            prop: 'id'
+          },{
             label: '提单号',
-            prop: 'name'
+            prop: 'billNo'
           }, {
             label: '场站',
-            prop: 'sex'
+            prop: 'station'
           }, {
             label: '到厂时间',
-            prop: 'sex'
+            prop: 'arrivalTime'
           }, {
             label: '工厂名称',
-            prop: 'sex'
+            prop: 'factory'
           }, {
             label: '货物名称',
-            prop: 'sex'
+            prop: 'goods'
           }, {
             label: '备注',
-            prop: 'sex'
+            prop: 'remarks'
           }
         ]
       },
-      goodsList:[],
-      goodsOptionCrud: {
+      entrustOptionTwo: {
+        align: 'center',
+        menuAlign: 'center',
         index:true,
         cellBtn:true,
         addBtn:false,
         addRowBtn:true,
-        column: [{
+        column: [ {
             label: '尺寸箱型',
             cell: true,
-            prop: 'sex'
+            prop: 'ctnType'
           }, {
             label: '箱量',
             cell: true,
-            prop: 'sex'
+            prop: 'ctnQuantity'
+          }, {
+            label: '总重量(吨)',
+            cell: true,
+            prop: 'landWeight'
           }, {
-            label: '是否派箱',
+            label: '陆运费(C)',
             cell: true,
-            prop: 'sex'
+            prop: 'landAmountC'
           }, {
-            label: '车队是否受理',
+            label: '陆运费(D)',
             cell: true,
-            prop: 'sex'
+            prop: 'landAmountD'
+          }, {
+            label: '备注',
+            cell: true,
+            prop: 'remarks'
           }
         ]
       },
-      entrustOptionTwo: {
+      collectionList:[],
+      collectionOption: {
         align: 'center',
         menuAlign: 'center',
         index:true,
@@ -173,37 +194,116 @@ export default {
         addBtn:false,
         addRowBtn:true,
         column: [ {
-            label: '尺寸箱型',
-            cell: true,
-            prop: 'sex'
-          }, {
-            label: '箱量',
-            cell: true,
-            prop: 'sex'
-          }, {
-            label: '总重量(吨)',
-            cell: true,
-            prop: 'sex'
-          }, {
-            label: '陆运费',
-            cell: true,
-            prop: 'sex'
-          }, {
-            label: '备注',
-            cell: true,
-            prop: 'sex'
-          }
+          label: '客户名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '费用名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '计价单位',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '数量',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '单价',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '金额',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '税率(默认6)',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '币别(默认RMB)',
+          cell: true,
+          prop: 'sex'
+        }
+        ]
+      },
+      paymentList:[],
+      paymentOption: {
+        align: 'center',
+        menuAlign: 'center',
+        index:true,
+        cellBtn:true,
+        addBtn:false,
+        addRowBtn:true,
+        column: [ {
+          label: '客户名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '费用名称',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '计价单位',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '数量',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '单价',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '金额',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '税率(默认6)',
+          cell: true,
+          prop: 'sex'
+        }, {
+          label: '币别(默认RMB)',
+          cell: true,
+          prop: 'sex'
+        }
         ]
       }
     };
   },
+  created() {
+    this.queryAddress('00')
+  },
   methods: {
+    //查询省市区
+    queryAddress(value,type){
+      getLazyTree().then(res=>{
+          this.provinceList = res.data.data
+      })
+    },
     //地址新增
     addAddress(){
       this.tableData.push({})
     },
+    //返回主列表
     backToList() {
       this.$emit('backToList')
+    },
+    //删除途径地址
+    deleteAddress(scope){
+      this.tableData.splice(scope.$index, 1);
+    },
+    //自定义表头
+    renderHeader(h) {
+      return(
+          <div>
+            <el-tooltip className="item" effect="dark" content="增加途径地址" placement="top">
+              <el-button type="primary" icon="el-icon-plus" size="mini" circle onClick={()=>this.addAddress()} style="margin-right: 1.25rem;"></el-button>
+            </el-tooltip>
+          </div>
+      )
     }
   }
 }

+ 43 - 5
src/views/landTransportation/placeAnOrder/index.vue

@@ -1,10 +1,20 @@
 <template>
   <div>
     <basic-container v-if="show">
-      <avue-crud :data="dataList" ref="crud" :option="option">
+      <avue-crud :table-loading="loading" :data="dataList" :page.sync="page" ref="crud" :option="option" @on-load="onLoad" @search-change="searchChange">
         <template slot="menuLeft" slot-scope="{size}">
           <el-button type="primary" :size="size" @click="rowSave">新增</el-button>
         </template>
+        <template slot-scope="{row,index}" slot="menu">
+          <el-button type="text"
+                     icon="el-icon-edit"
+                     size="small"
+                     @click.stop="$refs.crud.rowEdit(row,index)">编辑</el-button>
+          <el-button type="text"
+                     icon="el-icon-delete"
+                     size="small"
+                     @click.stop="$refs.crud.rowDelete(row,index)">删除</el-button>
+        </template>
       </avue-crud>
     </basic-container>
     <detail-page v-else @backToList="backToList"></detail-page>
@@ -13,6 +23,7 @@
 
 <script>
 import detailPage from './detailPage'
+import {selectInvoiceList} from "@/api/landTransportation";
 export default {
   name: "index",
   components: {
@@ -21,16 +32,24 @@ export default {
   data(){
     return{
       show:true,
-      dataList:[
-        {fileName:'1111111111'}
-      ],
+      loading:false,
+      dataList:[],
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+        pageSizes: [10,50,100,200,300]
+      },
       option:{
         align:'center',
         index: true,
         addBtn: false,
+        editBtn: false,
+        delBtn:false,
+        height:"auto",
         column:[{
             label: '订单号',
-            prop: 'fileName',
+            prop: 'id',
             index: 1,
             width: 140,
             cell: true,
@@ -41,6 +60,25 @@ export default {
     }
   },
   methods:{
+    onLoad(page, params) {
+      let queryParams = {
+        size: page.pageSize,
+        current: page.currentPage,
+        ...params
+      }
+      this.loading = true;
+      selectInvoiceList(queryParams).then(res => {
+        this.dataList = res.data.data.records
+        this.page.total = res.data.data.total
+      }).finally(() => {
+        this.loading = false;
+      })
+    },
+    //搜索
+    searchChange(params,done) {
+      this.onLoad(this.page,params)
+      done();
+    },
     rowSave(){
       this.show = false
     },

+ 8 - 3
src/views/workManagement/main-items/detailsPage.vue

@@ -937,7 +937,6 @@
       },
       //合计
       totalChange(row,type){
-
         //明细列表金额合计
         if(this.secondDisable === 0){
           this.data_one = this.data
@@ -982,8 +981,14 @@
       },
       //费用计算计算
       costCount(row){
-        if(row.serviceCharge && row.matMoney && row.otheramt){
-          row.amount =  parseFloat(row.serviceCharge) + parseFloat(row.matMoney) + parseFloat(row.otheramt)
+        if (this.activeName === 'first'){
+          if(row.serviceCharge && row.matMoney && row.otheramt){
+            row.amount =  parseFloat(row.serviceCharge) + parseFloat(row.matMoney) + parseFloat(row.otheramt)
+          }
+        }else {
+          if(row.serviceCharge && row.matMoney){
+            row.amount =  parseFloat(row.serviceCharge) + parseFloat(row.matMoney)
+          }
         }
       },
       //删除列表后面的删除按钮触发触发(row, index, done)