zerp vor 2 Jahren
Ursprung
Commit
cbff43ded6
6 geänderte Dateien mit 695 neuen und 202 gelöschten Zeilen
  1. 1 0
      config/index.js
  2. 8 0
      src/api/bid.js
  3. 276 0
      src/views/bid/dialog.vue
  4. 228 108
      src/views/bid/index.vue
  5. 5 0
      src/views/bid/table.vue
  6. 177 94
      src/views/tender/index.vue

+ 1 - 0
config/index.js

@@ -14,6 +14,7 @@ module.exports = {
                 // target: 'http://127.0.0.1:28080', //后端接口地址   
                 target: 'http://192.168.3.12:7001', //后端接口地址   
                 // target: 'http://47.108.14.99:19800', //后端接口地址   
+                // target: 'http://47.108.14.99:7001', //后端接口地址   
                 changeOrigin: true, //是否跨域
                 pathRewrite: {
                     '^/': '/', //重写,

+ 8 - 0
src/api/bid.js

@@ -25,6 +25,14 @@ export function getQueryEdit(parms) {
     data: parms
   })
 }
+// 获取列表
+export function getLogisticsInfo(tenderLogisticsId,size,current) {
+  return request({
+    url: '/logistics/bidding/'+tenderLogisticsId+'/0/'+size+'/'+current,
+    method: 'get',
+    // params: parms
+  })
+}
 // 已投递列表
 export function getLogisticsList(parms) {
   return request({

+ 276 - 0
src/views/bid/dialog.vue

@@ -0,0 +1,276 @@
+<template>
+  <div class="" style="margin: 30px 0 10px 0;">
+    <!-- 查询和其他操作 -->
+    <!-- <div>
+      <span style="font-size:14px">货物:</span>
+      <el-input
+        v-model="goodsName"
+        clearable
+        placeholder="请输入货物"
+        style="width: 200px;margin-bottom:20px"
+        size="small"
+         @keyup.enter.native="handleFind"
+         @clear="handleFind"
+        class="filter-item"
+      />
+
+
+
+      <el-button style=" width:90px;  " size="small" type="primary" icon="el-icon-search" @click="handleFind">查询
+      </el-button>
+    </div> -->
+
+    <el-table  ref="multipleTable" v-loading="loading" :data="tableData"  :header-cell-style="{ background: '#f5f7fa', }" style="width: 100%" border  >
+
+      <el-table-column label="运输方式" prop="goodsName"   align="center" :show-overflow-tooltip="true">
+           <template slot-scope="scope">
+                            <span v-if="scope.row.transportMode == 1">陆运</span>
+                            <span v-if="scope.row.transportMode == 2">汽运</span>
+                            <span v-if="scope.row.transportMode == 3">火车运输</span>
+                            <span v-if="scope.row.transportMode == 4">船运</span>
+                            <span v-if="scope.row.transportMode == 5">汽运/火车运输/船运</span>
+                            <span v-if="scope.row.transportMode == 6">汽运/火车运输</span>
+                            <span v-if="scope.row.transportMode == 7">汽运/船运</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="投标价格" prop="logisticsBiddingPrice" width="150" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+
+      <el-table-column label="数量(吨)" prop="quantity" width="150" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+      <el-table-column label="总价" prop="logisticsTotalPrice" width="150" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+      <el-table-column label="联系电话" prop="phone" width="150" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+
+       <el-table-column  :show-overflow-tooltip="true" label="包装方式" width="100" align="center">
+        <template slot-scope="scope">
+            <span v-if="scope.row.packingWay == 1">散粮</span> 
+            <span v-if="scope.row.packingWay == 2">袋装</span> 
+            <span v-if="scope.row.packingWay == 3">散装</span> 
+            <span v-if="scope.row.packingWay == 4">集装箱</span> 
+        </template>
+      </el-table-column>
+
+      <el-table-column label="始发车站" prop="departureStation" width="190" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+      <el-table-column label="目的车站" prop="destinationStation" width="150" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+       <el-table-column label="状态" align="center" width="100">
+            <template slot-scope="scope">
+            <el-tag effect="plain" v-if="scope.row.logisticsBiddingStatus == 5">已投递</el-tag>
+            <el-tag effect="plain" v-if="scope.row.logisticsBiddingStatus ==6" type="info">审核中</el-tag>
+            <el-tag effect="plain" v-if="scope.row.logisticsBiddingStatus ==7" type="warning">已中标</el-tag>
+            <el-tag effect="plain" v-if="scope.row.logisticsBiddingStatus ==8" type="danger">未中标</el-tag>
+            </template>
+       </el-table-column>
+      <el-table-column label="投标时间" prop="logisticsBiddingTime" width="150" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+
+      <el-table-column label="备注" prop="biddingLogisticsRemark" width="150" align="center" :show-overflow-tooltip="true">
+      </el-table-column>
+    </el-table>
+
+    <!--分页-->
+    <div class="pagination">
+      <el-pagination
+        :popper-class="current"
+        :page-sizes="[1,10, 20, 30, 50]"
+        :page-size="size"
+        layout="total, sizes, prev, pager, next, jumper"
+        background
+        :total="total"
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+      />
+
+    </div>
+
+
+
+
+  </div>
+</template>
+
+<script>
+import { Listarea } from '@/api/dataForm'
+import { parseTime } from '@/utils/index'
+import { getLogisticsInfo } from '@/api/tender'
+
+export default {
+  data() {
+    return {
+    //   size: 'small',
+      tableData: [],
+      priceData: {},
+      SelectionList:[],
+      goodsName: '',
+      tenderParentId: '',
+      applyDateStart:[],
+      customerType: [
+        { id: 1, name: '有限责任公司(自然人独资)' },
+        { id: 2, name: '有限责任公司(自然人投资或控股)' },
+        { id: 3, name: '股份有限公司' },
+        { id: 4, name: '有限合伙企业' },
+        { id: 5, name: '外商独资公司' },
+        { id: 6, name: '个人独资企业' },
+        { id: 7, name: '国有独资公司' },
+        { id: 8, name: '其他' }
+
+      ],
+      areaList: [],
+      query: {
+        goodsName: '',
+        tenderParentId:""
+      },
+      formLabelWidth: '90px',
+      isEditForm: false,
+      current: '1',
+      size: 10,
+      total: 0, // 总数量
+      dataForm: {
+      },
+
+      loading: false,
+      dialogVisible: false,
+      batchVisible:false,
+       BASE_API: process.env.BASE_API,
+       fileList: [],
+      roles:[],
+      startTime:"",
+      endTime:"",
+        isShow:true
+    }
+  },
+  created() {
+    // this.getTenantList()
+    console.log('res')
+  },
+  methods: {
+      onshow(){
+          this.isShow = !this.isShow
+      },
+    parseTime,
+    getTenantList: function() {
+        console.log(this.priceData)
+        let tenderLogisticsId =this.priceData.logisticsBidId
+        let current =this.current
+        let size =this.size
+      getLogisticsInfo(tenderLogisticsId,size,current).then(response => {
+        console.log(response)
+        this.loading = false
+         let data = response.data.data.records
+        console.log(new Date().valueOf(),"当前时间")
+        data.map((res)=>{
+          // 投标时间
+          let startTime = this.priceData.endTime
+
+          const date = new Date(startTime)
+          const start = date.valueOf()         //开始时间
+          const time = new Date().valueOf()   //当前时间
+          console.log(start,"start")
+          if(res.logisticsBiddingStatus < 7){
+              console.log("我不满足")
+                if(time < start){
+                    res.logisticsBiddingStatus = 5
+                    console.log("当前时间小于投标时间,已投递")
+                }else if(time > start){
+                    res.logisticsBiddingStatus = 6
+                    console.log("当前时间小于投标时间,审核中")
+                }
+          }
+          return res
+        })
+        console.log(data)
+        this.tableData = data
+        console.log('1' + response.data.data.records)
+        this.total = response.data.data.total
+      })
+    },
+   onApplyDate(){
+      let startTime
+      let endTime
+            if(this.applyDateStart != null){
+              this.startTime =this.applyDateStart[0]
+              this.endTime = this.applyDateStart[1]
+            }else{
+              this.startTime =""
+              this.endTime =""
+            }
+
+      this.getTenantList()
+    },
+
+    handleFind: function() {
+      this.current = '1'
+      this.getTenantList()
+    },
+    handleSizeChange: function(val) {
+      this.size = val
+      this.getTenantList()
+    },
+    // 换页
+    handleCurrentChange: function(val) {
+      const page = val.toString()
+      this.current = page
+      this.getTenantList()
+    },
+    // 查看
+    // lookRecord:function(row){
+    //     this.lookCord=row
+    //     this.dialogVisible = true
+    //     console.log(row)
+    // },
+   handleOneChange(row,i){
+       console.log(row,i)
+       this.$refs.multipleTable.toggleRowSelection(row);
+   },
+    handleSelectionChange(row){
+        console.log(row)
+        this.SelectionList = row
+    }
+  }
+}
+</script>
+
+<style scoped lang="scss" >
+    .ckTable{
+        width: 100%;
+        border: #eee;
+        text-align: center;
+        tr,td{
+        border: 0.5px solid#dfe6ec;
+        line-height: 23px;
+        }
+    }
+   .el-dropdown-link {
+    cursor: pointer;
+    color: #1282f3;
+  }
+  .el-icon-arrow-down {
+    font-size: 12px;
+  }
+  .el-scrollbar__wrap {
+   overflow-y: hidden;
+}
+
+.el-card {
+  border: 0px solid #fff;
+  .topClass{
+    font-weight: 600;
+    font-size: 17px;
+  }
+}
+.el-icon-document{
+  font-size: 70px;
+  color:#409EFF;
+  line-height: 130px;
+}
+/deep/.el-card__body {
+  padding: 20px 10px 0 10px !important;
+}
+/deep/ .el-table__expanded-cell[class*=cell]{
+    padding: 0;
+}
+</style>
+

+ 228 - 108
src/views/bid/index.vue

@@ -259,117 +259,181 @@
     <!-- 详情 -->
     <div class="goodsNameCss">
           <el-dialog :append-to-body="true" fullscreen :visible.sync="viewDialog" title="标的详情" center>
+               <el-card class="box-card" shadow="nerver">
+                    <div slot="header" class="clearfix">
+                      <span class="topClass">基本信息</span>
+                    </div>
+
+                    <el-row type="flex" class="row-bg">
+                       <el-col :span="8" class="flex_text">
+                           标题 : <span class="flex_name"> {{bidInfo.tenderTitle}}</span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                           状态 : <span class="flex_name"> <el-tag effect="plain" v-if="bidInfo.status ==1">进行中</el-tag>
+                                <el-tag effect="plain" v-if="bidInfo.status ==2" type="info">已结束</el-tag>
+                                <el-tag effect="plain" v-if="bidInfo.status ==3" type="danger">已作废</el-tag>
+                                <el-tag effect="plain" v-if="bidInfo.status ==4" type="warning">未开始</el-tag>
+                                </span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                         招标类型 :  <span class="flex_name"><el-tag v-if="bidInfo.tenderType == 1"  >物流</el-tag>
+                                    <el-tag v-if="bidInfo.tenderType == 2" >原料</el-tag>
+                                    <el-tag v-if="bidInfo.tenderType == 3" >销售</el-tag>
+                                    <el-tag v-if="bidInfo.tenderType == 4" >加工承揽</el-tag>
+                                    </span>
+                       </el-col>
+                    </el-row>
+                     <el-row type="flex" class="row-bg">
+                       <el-col :span="8" class="flex_text">
+                         招标规则 : <span class="flex_name">    <el-tag v-if="bidInfo.tenderRule == 1" type="success" effect="plain">价低者得</el-tag>
+          <el-tag v-if="bidInfo.tenderRule == 2" effect="plain" >价高者得</el-tag></span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                         开始时间 : <span class="flex_name"> {{bidInfo.startTime}} </span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                         截止时间 :  <span class="flex_name">{{bidInfo.endTime}}
+                                    </span>
+                       </el-col>
+                    </el-row>
+                    <el-row type="flex" class="row-bg">
+                       <el-col :span="24" class="flex_text">
+                            备注:<span class="flex_name">{{bidInfo.tenderRemark}}</span>
+                       </el-col>
+                    </el-row>
+                  </el-card>
+
+ 
                     <el-card class="box-card" shadow="nerver">
-                      <div slot="header" class="clearfix">
-                        <span class="topClass">投的详情</span>
-                      </div>
-                              <div class="head-container" style="margin: 30px 0 10px 0;">
-                                <span style="fontSize:13px">货物名称</span>
-                                  <el-input
-                                    v-model="param.goodsName"
-                                    clearable
-                                    placeholder="请输入货物名称"
-                                    style="width: 200px;"
-                                    size="small"
-                                    class="filter-item"
-                                    @keyup.enter.native="getParam"
-                                    @clear="getParam"
-                                  />
-                              <span style="fontSize:13px;marginLeft:30px">始发地</span>
-                                  <el-input
-                                    v-model="param.departureName"
-                                    clearable
-                                    placeholder="请输入始发地"
-                                    style="width: 200px;"
-                                    size="small"
-                                    class="filter-item"
-                                    @keyup.enter.native="getParam"
-                                    @clear="getParam"
-                                  />
-                
-                              <span style="fontSize:13px;marginLeft:30px;">目的地</span>
-                                  <el-input
-                                    v-model="param.destinationName"
-                                    clearable
-                                    placeholder="请输入货物名称"
-                                    style="width: 200px;"
-                                    size="small"
-                                    class="filter-item"
-                                    @keyup.enter.native="getParam"
-                                    @clear="getParam"
-                                  />
-                                  <!-- 搜索 -->
-                                  <span style="fontSize:13px;marginLeft:30px;">是否有人投标</span>
-                                  <el-select v-model="param.logisticsIsTender" size="small"  @keyup.enter.native="getParam" @clear="getParam" clearable placeholder="请选择">
-                                    <el-option  label="未投标" value="0"> </el-option>
-                                    <el-option  label="有投标" value="1"> </el-option>
-                                  </el-select>
-                              <el-button class="filter-item" style="marginLeft:20px;marginBottom:20px" size="small" type="primary" icon="el-icon-search" plain @click="getParam">搜索</el-button>
-                              <div style="height:20px"></div>
-                              <el-table center :data="Paramdata"  :header-cell-style="{ background: '#f5f7fa', }" border v-loading="tableLoading" stripe style="width: 100%;">
-
-                                <el-table-column prop="goodsName" fixed="left" label="货品名称" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="goodsNumber"  label="数量(吨)" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="departureName"  label="始发地" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="destinationName" label="目的地" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="predictDistance" label="预估运输距离(公里/海里)" width="128" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="transportUnitPrice" label="运输单价含税价(元/吨)"  width="120" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="appendix" label="附件" align="center" width="100">
-                                    <template slot-scope="scope">
-                                        <el-link v-if="scope.row.receiptPathUrl" :href="'http://view.officeapps.live.com/op/view.aspx?src='+scope.row.receiptPathUrl" type="primary" target="_target"><i class="el-icon-view"></i> 查看</el-link>
-                                    </template>
-                                  </el-table-column>
-                                    <el-table-column label="状态" align="center" width="100">
-                                <template slot-scope="scope">
-                                  <el-tag effect="plain" v-if="scope.row.status ==1">进行中</el-tag>
-                                  <el-tag effect="plain" v-if="scope.row.status ==2" type="info">已结束</el-tag>
-                                  <el-tag effect="plain" v-if="scope.row.status ==3" type="danger">已作废</el-tag>
-                                  <el-tag effect="plain" v-if="scope.row.status ==4" type="warning">未开始</el-tag>
-                                </template>
-                              </el-table-column>
-                                <el-table-column prop="logisticsIsTender" label="是否有人投标" :show-overflow-tooltip="true" align="center" >
-                                  <template slot-scope="scope">
-                                    <el-tag v-if="scope.row.logisticsIsTender == 0" type="info">未投标</el-tag>
-                                    <el-tag v-if="scope.row.logisticsIsTender == 1" type="warning">有投标</el-tag>
-                                  </template>
-                                </el-table-column>
-                                <el-table-column prop="tenderLogisticsRule" label="中标规则" :show-overflow-tooltip="true" align="center" >
-                                  <template slot-scope="scope">
-                                    <el-tag v-if="scope.row.tenderLogisticsRule == 1" type="success" effect="plain">价低者得</el-tag>
-                                    <el-tag v-if="scope.row.tenderLogisticsRule == 2" effect="plain" >价高者得</el-tag>
-                                  </template>
-                                </el-table-column>
-                                <el-table-column prop="startTime" label="起始时间" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="endTime" label="结束时间" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="createTime" label="创建时间" :show-overflow-tooltip="true" align="center" />
-                                <el-table-column prop="logisticsRemark" label="备注" :show-overflow-tooltip="true" align="center" />
-                          
-                              </el-table>
-                              <div class="pagination">
-                                <el-pagination
-                                  :current-page.sync="param.current"
-                                  :page-size="param.size"
-                                  layout="total, sizes, prev, pager, next, jumper"
-                                  :total="total1"
-                                  :page-sizes="[10, 20, 30, 50]"
-                                  background
-                                  @size-change="handleSizeChangeParam"
-                                  @current-change="handleCurrentChangeParam"
-                                />
+                          <el-tabs v-model="activeName" @tab-click="handleClick" type="border-card">
+                                <el-tab-pane label="标的详情" name="first">
+                              <div slot="header" class="clearfix">
+                                <span class="topClass">投的详情</span>
                               </div>
-                      <div style="height:60px"></div>
-                        </div>
+                                      <div class="head-container" style="margin: 30px 0 10px 0;">
+                                        <span style="fontSize:13px">货物名称</span>
+                                          <el-input
+                                            v-model="param.goodsName"
+                                            clearable
+                                            placeholder="请输入货物名称"
+                                            style="width: 200px;"
+                                            size="small"
+                                            class="filter-item"
+                                            @keyup.enter.native="getParam"
+                                            @clear="getParam"
+                                          />
+                                      <span style="fontSize:13px;marginLeft:30px">始发地</span>
+                                          <el-input
+                                            v-model="param.departureName"
+                                            clearable
+                                            placeholder="请输入始发地"
+                                            style="width: 200px;"
+                                            size="small"
+                                            class="filter-item"
+                                            @keyup.enter.native="getParam"
+                                            @clear="getParam"
+                                          />
+                        
+                                      <span style="fontSize:13px;marginLeft:30px;">目的地</span>
+                                          <el-input
+                                            v-model="param.destinationName"
+                                            clearable
+                                            placeholder="请输入货物名称"
+                                            style="width: 200px;"
+                                            size="small"
+                                            class="filter-item"
+                                            @keyup.enter.native="getParam"
+                                            @clear="getParam"
+                                          />
+                                          <!-- 搜索 -->
+                                          <span style="fontSize:13px;marginLeft:30px;">是否有人投标</span>
+                                          <el-select v-model="param.logisticsIsTender" size="small"  @keyup.enter.native="getParam" @clear="getParam" clearable placeholder="请选择">
+                                            <el-option  label="未投标" value="0"> </el-option>
+                                            <el-option  label="有投标" value="1"> </el-option>
+                                          </el-select>
+                                      <el-button class="filter-item" style="marginLeft:20px;marginBottom:20px" size="small" type="primary" icon="el-icon-search" plain @click="getParam">搜索</el-button>
+                                      <div style="height:20px"></div>
+                                      <el-table center :data="Paramdata"  :header-cell-style="{ background: '#f5f7fa', }" border v-loading="tableLoading" stripe style="width: 100%;">
+
+                                        <el-table-column prop="goodsName" fixed="left" label="货品名称" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="goodsNumber"  label="数量(吨)" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="departureName"  label="始发地" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="destinationName" label="目的地" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="predictDistance" label="预估运输距离(公里/海里)" width="128" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="transportUnitPrice" label="运输单价含税价(元/吨)"  width="120" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="appendix" label="附件" align="center" width="100">
+                                            <template slot-scope="scope">
+                                                <el-link v-if="scope.row.receiptPathUrl" :href="'http://view.officeapps.live.com/op/view.aspx?src='+scope.row.receiptPathUrl" type="primary" target="_target"><i class="el-icon-view"></i> 查看</el-link>
+                                            </template>
+                                          </el-table-column>
+                                            <el-table-column label="状态" align="center" width="100">
+                                        <template slot-scope="scope">
+                                          <el-tag effect="plain" v-if="scope.row.status ==1">进行中</el-tag>
+                                          <el-tag effect="plain" v-if="scope.row.status ==2" type="info">已结束</el-tag>
+                                          <el-tag effect="plain" v-if="scope.row.status ==3" type="danger">已作废</el-tag>
+                                          <el-tag effect="plain" v-if="scope.row.status ==4" type="warning">未开始</el-tag>
+                                        </template>
+                                      </el-table-column>
+                                        <el-table-column prop="logisticsIsTender" label="是否有人投标" :show-overflow-tooltip="true" align="center" >
+                                          <template slot-scope="scope">
+                                            <el-tag v-if="scope.row.logisticsIsTender == 0" type="info">未投标</el-tag>
+                                            <el-tag v-if="scope.row.logisticsIsTender == 1" type="warning">有投标</el-tag>
+                                          </template>
+                                        </el-table-column>
+                                        <el-table-column prop="tenderLogisticsRule" label="中标规则" :show-overflow-tooltip="true" align="center" >
+                                          <template slot-scope="scope">
+                                            <el-tag v-if="scope.row.tenderLogisticsRule == 1" type="success" effect="plain">价低者得</el-tag>
+                                            <el-tag v-if="scope.row.tenderLogisticsRule == 2" effect="plain" >价高者得</el-tag>
+                                          </template>
+                                        </el-table-column>
+                                        <el-table-column prop="startTime" label="起始时间" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="endTime" label="结束时间" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="createTime" label="创建时间" :show-overflow-tooltip="true" align="center" />
+                                        <el-table-column prop="logisticsRemark" label="备注" :show-overflow-tooltip="true" align="center" />
+                                  
+                                      </el-table>
+                                      <div class="pagination">
+                                        <el-pagination
+                                          :current-page.sync="param.current"
+                                          :page-size="param.size"
+                                          layout="total, sizes, prev, pager, next, jumper"
+                                          :total="total1"
+                                          :page-sizes="[10, 20, 30, 50]"
+                                          background
+                                          @size-change="handleSizeChangeParam"
+                                          @current-change="handleCurrentChangeParam"
+                                        />
+                                      </div>
+                              <div style="height:60px"></div>
+                                </div>
+                                </el-tab-pane>
+                                <el-tab-pane label="投标详情" name="second">
+                                    <!-- <el-card class="box-card" shadow="nerver"> -->
+                                      <!-- <div slot="header" class="clearfix">
+                                        <span class="topClass">投标详情</span>
+                                      </div> -->
+                                              <ckTable ref="ckTable" @change="costPlannedAmountChange($event)"></ckTable>
+                                    <!-- </el-card> -->
+                                </el-tab-pane>
+
+                          </el-tabs>
                     </el-card>
-                  <el-card class="box-card" shadow="nerver">
+
+                  <!-- <el-card class="box-card" shadow="nerver">
                     <div slot="header" class="clearfix">
                       <span class="topClass">投标详情</span>
                     </div>
-                  <ckTable ref="ckTable"></ckTable>
-                   </el-card>
+                  <ckTable ref="ckTable"  @change="costPlannedAmountChange($event)"></ckTable>
+                   </el-card> -->
+
                        <div slot="footer" class="paginationParam">
-                    <el-button @click="viewDialog = false">取消</el-button>
-                    <el-button :loading="loading" type="primary" @click="viewDialog = false">确认</el-button>
+                    <!-- <el-button @click="viewDialog = false">取消</el-button> -->
+                    <el-button :loading="loading" type="primary" @click="viewDialog = false">返回</el-button>
+                    <!-- <el-button :loading="loading" type="primary" @click="viewDialog = false">确认</el-button> -->
                   </div>
+                  <el-dialog :title="goodsName" width="90%" center :visible.sync="dialogTableVisible" append-to-body>
+                               <ckDialog ref="ckDialog"></ckDialog>
+                          </el-dialog>
 
     </el-dialog>
     </div>
@@ -382,9 +446,11 @@
 import { getTableList, getQueryId, getQueryAdd, getQueryEdit, getQueryDelete, loadCustomer,apiFile } from '@/api/bid'
 import { Notification, MessageBox } from 'element-ui'
 import ckTable from './table.vue'
+import ckDialog from './dialog.vue'
 export default {
    components:{
-    ckTable
+    ckTable,
+    ckDialog
   },
   data() {
     const checkTel = (rule, value, callback) => {
@@ -467,13 +533,29 @@ export default {
       bidDate: [],
       buton: false,
       fileUrl:"",
-      tableLoading:false
+      tableLoading:false,
+      dialogTableVisible:false,
+      goodsName:"",
+      activeName:"first",
+      bidInfo:{}
     }
   },
   created() {
     this.getDictData()
   },
   methods: {
+     // 投标详情 向父元素传递数据
+    costPlannedAmountChange(val){
+      console.log(val)
+ 
+      this.dialogTableVisible = true
+      setTimeout(() => {
+        this.goodsName = val.goodsName
+       this.$refs.ckDialog.priceData = val
+      this.$refs.ckDialog.getTenantList()
+        console.log(this.$refs.ckDialog)
+      }, 300);
+    },
     onApplyDate(){
       let startTime
       let endTime
@@ -762,10 +844,18 @@ window.open(officeUrl,'_target')
         this.fileUrl = res.data.data.path
       })
       console.log(data)
+    },
+     handleClick(row,val){
+      console.log(row,val)
+      if(row.name == "second"){
+       this.$refs.ckTable.tenderParentId = this.param.tenderParentId
+        this.$refs.ckTable.getTenantList()
+      }
     },
     // 详情
     handleView(row) {
       this.param.tenderParentId = row.tenderParentId
+      this.bidInfo = row
       this.param.current = 1
       this.getParam()
          setTimeout(() => {
@@ -874,12 +964,12 @@ window.open(officeUrl,'_target')
         }
     }
 .paginationParam{
-  position: fixed;
-  // bottom: 50px;
-  bottom: 0;
+  // bottom: 0;
+  // left: 0;
   line-height: 80px;
   width: 100%;
   // left: 45%;
+  // text-align: right;
   z-index: 999;
   background: #fff;
 }
@@ -896,4 +986,34 @@ window.open(officeUrl,'_target')
     font-weight: 600;
     color: #409EFF;
 }
+/deep/.el-dialog.is-fullscreen {
+
+    background-color: #f5f7f9;
+}
+.box-card{
+  margin-bottom: 20px;
+  .row-bg{
+  padding: 15px 40px 0 40px;
+  .flex_text{
+    line-height: 50px;
+    color: #8C8C8C;
+    font-size: 14px;
+    // border:1px solid red;
+    // font-weight: 600;
+  }
+  .flex_name{
+    font-size: 14px;
+    padding-left: 25px;
+    color: #575757;
+    font-weight: 550;
+  }
+}
+}
+/deep/ .el-card__body{
+  padding: 20px 0;
+}
+/deep/.el-tabs__nav-wrap::after {
+
+    background-color: #dfe4ed00;  
+}
 </style>

+ 5 - 0
src/views/bid/table.vue

@@ -251,6 +251,11 @@ export default {
     console.log('res')
   },
   methods: {
+      handleView(row){
+          console.log("我被点击了")
+            this.$emit('change',row)
+        //   this.$parent.dialogTableVisible = true
+      },
       onshow(){
           this.isShow = !this.isShow
       },

+ 177 - 94
src/views/tender/index.vue

@@ -130,84 +130,140 @@
       <!-- 详情 -->
     <div class="goodsNameCss">
           <el-dialog :append-to-body="true" fullscreen :visible.sync="viewDialog" title="" center>
-              <!-- <el-tabs v-model="activeName" @tab-click="handleClick"> -->
-                <!-- <el-tab-pane label="所有标的" name="first"> -->
-                      <el-card class="box-card" shadow="nerver">
-          <div slot="header" class="clearfix">
-            <span class="topClass">投的详情</span>
-          </div>
-                  <div class="head-container" style="margin: 30px 0 10px 0;">
-                     <span style="fontSize:13px">货物名称</span>
-                      <el-input
-                        v-model="param.goodsName"
-                        clearable
-                        placeholder="请输入货物名称"
-                        style="width: 200px;"
-                        size="small"
-                        class="filter-item"
-                         @keyup.enter.native="getParam"
-                         @clear="getParam"
-                      />
-
-                  <el-button class="filter-item" style=" width:90px;  " size="small" type="primary" icon="el-icon-search" @click="getParam">搜索</el-button>
-                   <div style="height:20px"></div>
-                  <el-table center :data="Paramdata" :header-cell-style="{ background: '#f5f7fa', }" border v-loading="tableLoading" stripe style="width: 100%;">
-
-                    <el-table-column prop="goodsName" fixed="left" label="货品名称" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="goodsNumber"  label="数量(吨)" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="departureName"  label="始发地" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="destinationName" label="目的地" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="predictDistance" label="预估运输距离(公里/海里)" width="128" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="transportUnitPrice" label="运输单价含税价(元/吨)"  width="120" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="appendix" label="附件" align="center" width="100">
-                        <template slot-scope="scope">
-                            <el-link v-if="scope.row.receiptPathUrl" :href="'http://view.officeapps.live.com/op/view.aspx?src='+scope.row.receiptPathUrl" type="primary" target="_target"><i class="el-icon-view"></i> 查看</el-link>
-                        </template>
-                      </el-table-column>
-                        <el-table-column label="状态" align="center" width="100">
-                    <template slot-scope="scope">
-                      <el-tag effect="plain" v-if="scope.row.status ==1">进行中</el-tag>
-                      <el-tag effect="plain" v-if="scope.row.status ==2" type="info">已结束</el-tag>
-                      <el-tag effect="plain" v-if="scope.row.status ==3" type="danger">已作废</el-tag>
-                      <el-tag effect="plain" v-if="scope.row.status ==4" type="warning">未开始</el-tag>
-                    </template>
-                  </el-table-column>
-                    <!-- <el-table-column prop="logisticsIsTender" label="是否有人投标" :show-overflow-tooltip="true" align="center" >
-                      <template slot-scope="scope">
-                        <el-tag v-if="scope.row.logisticsIsTender == 0" type="warning">未投标</el-tag>
-                        <el-tag v-if="scope.row.logisticsIsTender == 1" type="warning">有投标</el-tag>
-                      </template>
-                    </el-table-column> -->
-                    <el-table-column prop="tenderLogisticsRule" label="中标规则" :show-overflow-tooltip="true" align="center" >
-                      <template slot-scope="scope">
-                          <el-tag v-if="scope.row.tenderLogisticsRule == 1" type="success" effect="plain">价低者得</el-tag>
-                           <el-tag v-if="scope.row.tenderLogisticsRule == 2" effect="plain" >价高者得</el-tag>
-                      </template>
-                    </el-table-column>
-                    <el-table-column prop="startTime" label="起始时间"  width="152" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="endTime" label="结束时间"  width="152" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="createTime" label="创建时间"  width="152" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column prop="logisticsRemark" label="备注" width="162" :show-overflow-tooltip="true" align="center" />
-                    <el-table-column label="操作" width="150" align="center" fixed="right">
-                        <template slot-scope="scope">
-                          <el-button  slot="reference" type="text" v-if="scope.row.status ==1" icon="el-icon-plus" @click="handleAdd(scope.row)">投标</el-button>
-                        </template>
-                      </el-table-column>
-                  </el-table>
-                  <div class="pagination">
-                    <el-pagination
-                      :current-page.sync="param.current"
-                      :page-size="param.size"
-                      layout="total, sizes, prev, pager, next, jumper"
-                      :total="total1"
-                      :page-sizes="[10, 20, 30, 50]"
-                      background
-                      @size-change="handleSizeChangeParam"
-                      @current-change="handleCurrentChangeParam"
-                    />
-                  </div>
-          <div style="height:60px"></div>
-             </div>
+                  <el-card class="box-card" shadow="nerver">
+                    <div slot="header" class="clearfix">
+                      <span class="topClass">基本信息</span>
+                    </div>
+
+                    <el-row type="flex" class="row-bg">
+                       <el-col :span="8" class="flex_text">
+                           标题 : <span class="flex_name"> {{bidInfo.tenderTitle}}</span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                           状态 : <span class="flex_name"> <el-tag effect="plain" v-if="bidInfo.status ==1">进行中</el-tag>
+                                <el-tag effect="plain" v-if="bidInfo.status ==2" type="info">已结束</el-tag>
+                                <el-tag effect="plain" v-if="bidInfo.status ==3" type="danger">已作废</el-tag>
+                                <el-tag effect="plain" v-if="bidInfo.status ==4" type="warning">未开始</el-tag>
+                                </span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                         招标类型 :  <span class="flex_name"><el-tag v-if="bidInfo.tenderType == 1"  >物流</el-tag>
+                                    <el-tag v-if="bidInfo.tenderType == 2" >原料</el-tag>
+                                    <el-tag v-if="bidInfo.tenderType == 3" >销售</el-tag>
+                                    <el-tag v-if="bidInfo.tenderType == 4" >加工承揽</el-tag>
+                                    </span>
+                       </el-col>
+                    </el-row>
+                     <el-row type="flex" class="row-bg">
+                       <el-col :span="8" class="flex_text">
+                         招标规则 : <span class="flex_name">    <el-tag v-if="bidInfo.tenderRule == 1" type="success" effect="plain">价低者得</el-tag>
+          <el-tag v-if="bidInfo.tenderRule == 2" effect="plain" >价高者得</el-tag></span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                         开始时间 : <span class="flex_name"> {{bidInfo.startTime}} </span>
+                       </el-col>
+                         <el-col :span="8" class="flex_text">
+                         截止时间 :  <span class="flex_name">{{bidInfo.endTime}}
+                                    </span>
+                       </el-col>
+                    </el-row>
+                    <el-row type="flex" class="row-bg">
+                       <el-col :span="24" class="flex_text">
+                            备注:<span class="flex_name">{{bidInfo.tenderRemark}}</span>
+                       </el-col>
+                    </el-row>
+                  </el-card>
+                   <el-card class="box-card" shadow="nerver">
+                        <div slot="header" class="clearfix">
+                          <span class="topClass"> 所有标的</span>
+                        </div>
+                      <el-tabs v-model="activeName" @tab-click="handleClick" type="border-card">
+                        <el-tab-pane label="标的详情" name="first">
+
+                          <div class="head-container" style="margin: 30px 0 10px 0;">
+                            <span style="fontSize:13px">货物名称</span>
+                              <el-input
+                                v-model="param.goodsName"
+                                clearable
+                                placeholder="请输入货物名称"
+                                style="width: 200px;"
+                                size="small"
+                                class="filter-item"
+                                @keyup.enter.native="getParam"
+                                @clear="getParam"
+                              />
+
+                          <el-button class="filter-item" style=" width:90px;  " size="small" type="primary" icon="el-icon-search" @click="getParam">搜索</el-button>
+                          <div style="height:20px"></div>
+                          <el-table center :data="Paramdata" :header-cell-style="{ background: '#f5f7fa', }" border v-loading="tableLoading" stripe style="width: 100%;">
+
+                            <el-table-column prop="goodsName" fixed="left" label="货品名称" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="goodsNumber"  label="数量(吨)" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="departureName"  label="始发地" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="destinationName" label="目的地" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="predictDistance" label="预估运输距离(公里/海里)" width="128" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="transportUnitPrice" label="运输单价含税价(元/吨)"  width="120" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="appendix" label="附件" align="center" width="100">
+                                <template slot-scope="scope">
+                                    <el-link v-if="scope.row.receiptPathUrl" :href="'http://view.officeapps.live.com/op/view.aspx?src='+scope.row.receiptPathUrl" type="primary" target="_target"><i class="el-icon-view"></i> 查看</el-link>
+                                </template>
+                              </el-table-column>
+                                <el-table-column label="状态" align="center" width="100">
+                            <template slot-scope="scope">
+                              <el-tag effect="plain" v-if="scope.row.status ==1">进行中</el-tag>
+                              <el-tag effect="plain" v-if="scope.row.status ==2" type="info">已结束</el-tag>
+                              <el-tag effect="plain" v-if="scope.row.status ==3" type="danger">已作废</el-tag>
+                              <el-tag effect="plain" v-if="scope.row.status ==4" type="warning">未开始</el-tag>
+                            </template>
+                          </el-table-column>
+                            <!-- <el-table-column prop="logisticsIsTender" label="是否有人投标" :show-overflow-tooltip="true" align="center" >
+                              <template slot-scope="scope">
+                                <el-tag v-if="scope.row.logisticsIsTender == 0" type="warning">未投标</el-tag>
+                                <el-tag v-if="scope.row.logisticsIsTender == 1" type="warning">有投标</el-tag>
+                              </template>
+                            </el-table-column> -->
+                            <el-table-column prop="tenderLogisticsRule" label="中标规则" :show-overflow-tooltip="true" align="center" >
+                              <template slot-scope="scope">
+                                  <el-tag v-if="scope.row.tenderLogisticsRule == 1" type="success" effect="plain">价低者得</el-tag>
+                                  <el-tag v-if="scope.row.tenderLogisticsRule == 2" effect="plain" >价高者得</el-tag>
+                              </template>
+                            </el-table-column>
+                            <el-table-column prop="startTime" label="起始时间"  width="152" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="endTime" label="结束时间"  width="152" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="createTime" label="创建时间"  width="152" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column prop="logisticsRemark" label="备注" width="162" :show-overflow-tooltip="true" align="center" />
+                            <el-table-column label="操作" width="150" align="center" fixed="right">
+                                <template slot-scope="scope">
+                                  <el-button  slot="reference" type="text" :disabled="scope.row.status !=1" icon="el-icon-plus" @click="handleAdd(scope.row)">投标</el-button>
+                                </template>
+                              </el-table-column>
+                          </el-table>
+                          <div class="pagination">
+                            <el-pagination
+                              :current-page.sync="param.current"
+                              :page-size="param.size"
+                              layout="total, sizes, prev, pager, next, jumper"
+                              :total="total1"
+                              :page-sizes="[10, 20, 30, 50]"
+                              background
+                              @size-change="handleSizeChangeParam"
+                              @current-change="handleCurrentChangeParam"
+                            />
+                          </div>
+                  <!-- <div style="height:60px"></div> -->
+                    </div>
+
+                </el-tab-pane>
+                <el-tab-pane label="投标详情" name="second">
+                   <!-- <el-card class="box-card" shadow="nerver"> -->
+                      <!-- <div slot="header" class="clearfix">
+                        <span class="topClass">投标详情</span>
+                      </div> -->
+                              <ckTable ref="ckTable" @change="costPlannedAmountChange($event)"></ckTable>
+                   <!-- </el-card> -->
+                </el-tab-pane>
+              </el-tabs>
+             
                       </el-card>
           <el-dialog :append-to-body="true" :visible.sync="dialog" :title="isAdd ? '投标' : '修标'" width="50%">
                       <el-form ref="form" :model="form" :rules="rules1" label-width="80px">
@@ -282,7 +338,7 @@
                           </el-form-item>
                           </el-col>
                           <el-col :span="6" :xs="24" :sm="12" :md="12" :lg="12">
-                               <el-form-item label="上传凭证" prop="logisticsBiddingPrice">
+                               <el-form-item label="上传凭证" >
                               <el-upload
                                   class="upload-demo"
                                   :limit="1"
@@ -329,19 +385,10 @@
                         <el-button :loading="loading" type="primary" @click="doSubmit">确认</el-button>
                       </div>
                     </el-dialog>
-             <!-- </el-tab-pane> -->
-                <!-- <el-tab-pane label="投标详情" name="second"> -->
-                   <el-card class="box-card" shadow="nerver">
-                      <div slot="header" class="clearfix">
-                        <span class="topClass">投标详情</span>
-                      </div>
-                              <ckTable ref="ckTable" @change="costPlannedAmountChange($event)"></ckTable>
-                   </el-card>
-                <!-- </el-tab-pane> -->
-              <!-- </el-tabs> -->
-                   <div slot="footer" class="paginationParam">
-                    <el-button @click="viewDialog = false">取消</el-button>
-                    <el-button :loading="loading" type="primary" @click="viewDialog = false">确认</el-button>
+            
+                   <div slot="footer" class="paginationParam" style="paddingRight:">
+                    <!-- <el-button @click="viewDialog = false">取消</el-button> -->
+                    <el-button :loading="loading" type="primary" @click="viewDialog = false">返回</el-button>
                   </div>
 
                          <el-dialog :title="goodsName" width="90%" center :visible.sync="dialogTableVisible" append-to-body>
@@ -456,7 +503,8 @@ export default {
       ],
        activeName: 'first',
        dialogTableVisible:false,
-       goodsName:""
+       goodsName:"",
+       bidInfo:{}
     }
   },
   created() {
@@ -691,6 +739,7 @@ export default {
     },
     handleView(row) {
       this.param.tenderParentId = row.tenderParentId
+      this.bidInfo = row
       // this.$refs.ckTable.tenderParentId = row.tenderParentId
       this.param.current = 1
       this.getParam()
@@ -789,12 +838,14 @@ export default {
         }
     }
 .paginationParam{
-  position: fixed;
+  // position: fixed;
   // bottom: 50px;
   bottom: 0;
+  left: 0;
   line-height: 80px;
   width: 100%;
   // left: 45%;
+  // text-align: right;
   z-index: 999;
   background: #fff;
 }
@@ -811,5 +862,37 @@ export default {
     font-weight: 600;
     color: #409EFF;
 }
+/deep/.el-dialog.is-fullscreen {
+
+    background-color: #f5f7f9;
+}
+.box-card{
+  margin-bottom: 20px;
+  .row-bg{
+  padding: 15px 40px 0 40px;
+  .flex_text{
+    line-height: 50px;
+    color: #8C8C8C;
+    font-size: 14px;
+    // border:1px solid red;
+    // font-weight: 600;
+  }
+  .flex_name{
+    font-size: 14px;
+    padding-left: 25px;
+    color: #575757;
+    font-weight: 550;
+  }
+}
+}
+/deep/ .el-card__body{
+  padding: 20px 0;
+}
+/deep/.el-tabs__nav-wrap::after {
+
+    background-color: #dfe4ed00;  
+}
+
+
 </style>