Browse Source

处理买家中心采购招标

wangcz 7 years ago
parent
commit
2e53f060a5

+ 10 - 1
components/mobile/MobileHeader.vue

@@ -253,18 +253,27 @@
         } else if (this.startWith(val, '/mobile/center/vendor/invoice')) {
           this.showSearchIcon = false
           title = '开票管理'
-        } else if (this.startWith(val, '/mobile/center/vendor/tender')) {
+        } else if (this.startWith(val, '/mobile/center/vendor/sample')) {
           this.showSearchIcon = false
           title = '打样管理'
         } else if (this.startWith(val, '/mobile/center/vendor/approval')) {
           this.showSearchIcon = false
           title = '打样管理'
+        } else if (this.startWith(val, '/mobile/center/vendor/customer/vendorPerformanceAssess')) {
+          this.showSearchIcon = false
+          title = '绩效考核'
         } else if (this.startWith(val, '/mobile/center/vendor/customer')) {
           this.showSearchIcon = false
           title = '客户资料'
+        } else if (this.startWith(val, '/mobile/center/user/supplier')) {
+          this.showSearchIcon = false
+          title = '供应商资料'
         } else if (this.startWith(val, '/mobile/center/vendor/btobapCheck')) {
           this.showSearchIcon = false
           title = '应收对账'
+        } else if (this.startWith(val, '/mobile/center/user/tender')) {
+          this.showSearchIcon = false
+          title = '采购招标'
         } else {
           this.showSearchIcon = true
           title = '优软商城'

+ 4 - 0
nuxt.config.js

@@ -146,6 +146,7 @@ module.exports = {
    */
   proxyTable: {
     '/btob/**': uasUrl,
+    '/sale/**': uasUrl,
     '/vendor/customer/**': uasUrl,
     '/vendorPerformanceAssess/info/**': uasUrl,
     '/vendor/**': baseUrl,
@@ -224,6 +225,9 @@ module.exports = {
     '/sale/orders/**': uasUrl,
     '/sale/apBill/**': uasUrl,
     '/sale/apCheck/**': uasUrl,
+    '/sale/tender/**': uasUrl,
+    '/tender/purc/**': uasUrl,
+    '/tender/getUnreadIds/**': uasUrl,
     '/token**': uasUrl,
     '/authentication**': uasUrl,
     '/authentication/**': uasUrl,

+ 2 - 2
pages/mobile/center/user/index.vue

@@ -58,11 +58,11 @@
             <img src="/images/mobile/center/vendor/material-person.png" alt="">
             <p>入库</p>
           </nuxt-link>
-          <nuxt-link tag="li" to="/mobile/center/user/outOfStorage?providerType=person">
+          <nuxt-link tag="li" to="/mobile/center/user/supplier">
             <img src="/images/mobile/center/user/purc.png" alt="">
             <p>供应商资料</p>
           </nuxt-link>
-          <nuxt-link tag="li" to="/mobile/center/user/outOfStorage?providerType=person">
+          <nuxt-link tag="li" to="/mobile/center/user/tender">
             <img src="/images/mobile/center/user/tender.png" alt="">
             <p>采购招标</p>
           </nuxt-link>

+ 510 - 0
pages/mobile/center/user/supplier/index.vue

@@ -0,0 +1,510 @@
+<template>
+  <div class="modal-wrapper-bg">
+    <div class="mobile-customer-btob"  style="background: #f1f3f6" id="mobile-customer-btob">
+      <div class="search-content mi-search-content">
+        <input type="text" v-model="filterParams.keyword" @keyup.13="onFilter" placeholder="请输入企业名称搜索">
+        <span @click="onFilter"><i class="iconfont icon-sousuo"></i></span>
+      </div>
+      <div class="customer-btob-wrapper">
+        <div v-if="resourceList.content && resourceList.content.length > 0">
+          <div class="customer-btob-wrapper-list" v-for="(item, index) in resourceList.content">
+            <div class="customer-btob-wrapper-content">
+              <div class="list-item"><span>UU:</span>{{item.myEnterprise.uu}}</div>
+              <div class="list-item"><span>客户名称:</span><a>{{item.myEnterprise.enName}}</a></div>
+              <div class="address clearfix"><span class="fl">地址:</span><div class="fl" style="width:5.6rem">{{item.myEnterprise.enAddress}}</div></div>
+              <div class="list-item"><span>客户联系人:</span>{{item.myUser.userName}}</div>
+              <div class="list-item"><span>联系人电话:</span>{{item.myUser.userTel}}</div>
+              <div class="list-item"><span>我方联系人:</span>{{item.vendorUser.userName}}</div>
+            </div>
+            <div class="customer-btob-wrapper-bottom clearfix">
+              <div @click="addUserInfo(item)"><i class="iconfont icon-allocation"></i>分配</div>
+              <div @click="transferUserInfo(item)"><i class="iconfont icon-zhuanyi"></i>转移</div>
+            </div>
+          </div>
+        </div>
+        <empty-status
+          v-else
+          :text="'暂无对应的单据'"
+          :showLink="false"
+        ></empty-status>
+      </div>
+    </div>
+    <div class="mobile-modal" v-if="modalObj.showModal" @click="closeModal()">
+      <div class="mobile-modal-box mobile-modal-wrapper" @click="stopPropagation($event)">
+        <div class="mobile-modal-header">{{modalObj.type === 'add' ? '客户分配' : '权限转移'}}<i @click="closeModal()" class="icon-guanbi iconfont"></i></div>
+        <div ref="mobileModalBox" class="mobile-scroll-wrap">
+          <div>
+            <div class="customer-modal-wrapper">
+              <div class="search-content mi-search-content">
+                <input type="text" v-model="modalObj.keyword" @input="modalObjonFilter" placeholder="输入用户名/关键字">
+                <span @click="modalObjonFilter"><i class="iconfont icon-sousuo"></i></span>
+              </div>
+              <div class="customer-modal-content">
+                <div class="customer-modal-content-title">
+                  <span class="item inline-block"  style="width: 28%;" @click="chooseAll()"  v-if="modalObj.type === 'add'">
+                    <label class="mobile-cart-check" :class="{'active': !Allcheck}"></label>
+                    全选
+                  </span>
+                  <span class="item inline-block"  style="width: 28%;height:2px" v-else>
+
+                  </span>
+                  <span class="item inline-block" style="width: 32%;">用户UU</span>
+                  <span class="item inline-block" style="width: 40%;text-align: right">用户名称</span>
+                </div>
+                <div class="customer-modal-content-list" v-for="item in modalObj.showModalList">
+                  <span class="item inline-block" style="width: 28%;" @click="checkItem(item)">
+                    <label class="mobile-cart-check" :class="{'active': item.distribute}" v-if="modalObj.type === 'add'"></label>
+                    <label class="mobile-cart-check" :class="{'active': item.transfer}" v-else></label>
+                    <!--<label class="mobile-cart-check" :class="{'active': item.distribute}"></label>-->
+                  </span>
+                  <span class="item inline-block" style="width: 32%;">{{item.userUU}}</span>
+                  <span class="item inline-block" style="width: 40%;">{{item.userName}}</span>
+                </div>
+              </div>
+            </div>
+          </div>
+          <div class="customer-modal-bottom clearfix">
+            <div class="fl" @click="answerModal()">确定</div>
+            <div class="fr" @click="closeModal()">取消</div>
+          </div>
+        </div>
+      </div>
+    </div>
+
+    <remind-box :title="collectResult" :timeoutCount="timeoutCount"></remind-box>
+    <pull-up :fixId="'mobile-customer-btob'" :allPage="allPage" :page="filterParams.page" @pullUpAction="onPullUpAction"></pull-up>
+  </div>
+</template>
+
+<script>
+  import { ModalWrapper } from '~components/mobile/base'
+  import { PullUp, EmptyStatus, RemindBox } from '~components/mobile/common'
+  export default {
+    name: 'customer-index',
+    layout: 'mobile',
+    middleware: 'authenticated',
+    data() {
+      return {
+        filterParams: {
+          keyword: '',
+          count: 10,
+          page: 1
+        },
+        collectResult: '',
+        timeoutCount: 0,
+        resourceList: {
+          content: []
+        },
+        enabled: '',
+        modalObj: {
+          customer: {},
+          showModal: false,
+          showModalList: [], // 筛选完的数据
+          type: 'add', // chance
+          originList: [] // 原数据
+        },
+        transfer: false,
+        thisUser: {}
+      }
+    },
+    created() {
+      this.$http.get('/account/role/currentRole').then(res => {
+        this.thisUser = this.$store.state.option.user.data
+        this.enabled = res.data.count > 0 || this.thisUser.sys
+      })
+      this.setSelect()
+    },
+
+    methods: {
+      async answerModal() {
+        if (this.modalObj.type !== 'add') {
+          if (this.modalObj.customer.myEnterprise.uu) {
+            // 当前用户是管理员时
+            if (this.thisUser.sys) {
+                this.$http.post(`/account/user/transferUserToVendor/${this.modalObj.customer.myEnterprise.uu}`, this.modalObj.originList).then(data => {
+                  this.onMind('转移成功!')
+                  this.closeModal()
+                }, err => {
+                  this.onMind(err.data)
+                  this.closeModal()
+                })
+              // } else {
+              //   this.onMind('您未勾选任何记录!')
+              //   this.closeModal()
+              // }
+            } else {
+              // 非管理员转移自己的权限时
+              this.modalObj.originList.forEach(item => {
+                if (item.transfer && item.userUU !== this.thisUser.userUU) {
+                  this.target = item
+                }
+              })
+              if (!this.target) {
+                this.onMind('您未选择权限转移对象!')
+                this.closeModal()
+              } else {
+                this.$http.post(`/account/user/transferMyDistribute`, {
+                  custUU: this.modalObj.customer.myEnterprise.uu,
+                  userUU: this.target.userUU
+                }).then(data => {
+                  this.onMind('转移成功!')
+                  this.closeModal()
+                }, err => {
+                  this.onMind(err.data)
+                  this.closeModal()
+                })
+              }
+            }
+          } else {
+            this.closeModal()
+          }
+        } else {
+          this.$http.post(`/account/user/bindUserToVendor/${this.modalObj.customer.myEnterprise.uu}`, this.modalObj.originList).then(res => {
+            this.onMind('分配成功!')
+            this.closeModal()
+          }).catch(err => {
+            this.onMind('保存失败!')
+            this.closeModal()
+          })
+        }
+      },
+      chooseAll() {
+        let _str = 'distribute'
+        if (this.modalObj.type !== 'add') {
+          _str = 'transfer'
+        }
+        if (!this.Allcheck) {
+          this.modalObj.showModalList.forEach(item => {
+            item[_str] = false
+          })
+          return
+        }
+        this.modalObj.showModalList.forEach(item => {
+          item[_str] = true
+        })
+      },
+      checkItem(item) {
+        if (this.modalObj.type !== 'add') {
+          if (this.$store.state.option.user.data.sys) { // 管理员操作
+            item.transfer = !item.transfer
+            this.modalObj.originList.forEach(userInfo => {
+              if (this.$store.state.option.user.data.userUU === item.userUU && item.transfer) {
+                this.transfer = true
+              }
+              if (item.userUU !== userInfo.userUU) {
+                userInfo.transfer = false
+              }
+            })
+          } else if (this.transfer) { // 被管理员转移权限的非管理员操作
+            item.transfer = !item.transfer
+            this.modalObj.originList.forEach(userInfo => {
+              if (item.userUU !== userInfo.userUU) {
+                userInfo.transfer = false
+              } else {
+                userInfo.transfer = true
+              }
+            })
+          } else { // 被分配客户的用户
+            item.transfer = !item.transfer
+            this.modalObj.originList.forEach(userInfo => {
+              if (item.userUU !== userInfo.userUU) {
+                userInfo.transfer = false
+              } else {
+                userInfo.transfer = true
+              }
+            })
+          }
+        } else {
+          item.distribute = !item.distribute
+        }
+      },
+      closeModal() {
+        this.modalObj.showModal = false
+        this.initScroll.destroy()
+        this.initScroll = null
+      },
+      init () {
+        this.$nextTick(() => {
+          this._initscroll()
+        })
+      },
+      modalObjonFilter() {
+        let _arr = []
+        this.modalObj.originList.forEach(item => {
+          if (item.userUU.toString().indexOf(this.modalObj.keyword) > -1) {
+            _arr.push(item)
+          }
+        })
+        this.modalObj.showModalList = _arr
+      },
+      // 分配
+      async addUserInfo(customer) {
+        if (!this.enabled) {
+         this.onMind('您没有为当前客户分配用户的权限!')
+        }
+        this.modalObj.type = 'add'
+        this.modalObj.customer = customer
+        this.$http.get(`/account/user/getEnTransfer/${customer.myEnterprise.uu}`).then(res => {
+          customer.enTransfer = res.result
+          if (this.enabled || customer.enTransfer) {
+            this.$http.post(`/account/user/customer/${customer.myEnterprise.uu}`).then(data => {
+                customer.userinfos = data.data
+                this.modalObj.showModal = true
+                this.modalObj.showModalList = customer.userinfos
+                this.modalObj.originList = customer.userinfos
+                this.init()
+            })
+          } else {
+            this.onMind('您没有为当前客户分配用户的权限!')
+          }
+        })
+      },
+      // 转移
+      transferUserInfo(customer) {
+        if (!this.enabled) {
+          this.onMind('您没有转移当前客户权限的权限!')
+        }
+        this.modalObj.type = 'chance'
+        this.modalObj.customer = customer
+        this.$http.get(`/account/user/getDistribute/${customer.myEnterprise.uu}`).then(res => {
+          customer.enTransfer = res.result
+          if (this.enabled || customer.enTransfer) {
+            this.$http.get('/authentication').then(res => {
+              this.thisUser = res.data
+            })
+            this.$http.post(`/account/user/customer/${customer.myEnterprise.uu}`).then(data => {
+              customer.userinfos = data.data
+              customer.userinfos.forEach(user => {
+                if (this.$store.state.option.user.data.userUU === user.userUU && user.transfer) {
+                  this.transfer = true
+                }
+              })
+              this.modalObj.showModal = true
+              this.modalObj.showModalList = customer.userinfos
+              this.modalObj.originList = customer.userinfos
+              this.init()
+            })
+          } else {
+            this.onMind('您没有为当前客户分配用户的权限!')
+          }
+        })
+      },
+      onFilter() {
+        this.setSelect(true)
+      },
+      onMind(str) {
+        this.collectResult = str
+        this.timeoutCount++
+      },
+      onPullUpAction() {
+        this.filterParams.page++
+        this.setSelect()
+      },
+      async setSelect(reset) {
+        let { data } = await this.$http.get('/vendor/customer/info/search', {
+          params: {
+            count: this.filterParams.count,
+            page: this.filterParams.page,
+            keyword: this.filterParams.keyword
+          }})
+        if (!this.resourceList.content) {
+          this.resourceList.content = []
+        }
+        if (reset) {
+          this.resourceList.content = []
+          this.resourceList = data
+        } else {
+          this.resourceList.content.push(...data.content)
+          data.content = this.resourceList.content
+        }
+        this.resourceList = data
+        data = null
+      }
+    },
+    computed: {
+      allPage() {
+        return this.resourceList.totalPage
+      },
+      Allcheck() {
+        let _str = 'distribute'
+        if (this.modalObj.type !== 'add') {
+          _str = 'transfer'
+        }
+       return this.modalObj.showModalList.some(item => {
+          return item[_str] === false
+        })
+      }
+    },
+    components: {
+      ModalWrapper,
+      PullUp,
+      EmptyStatus,
+      RemindBox
+    }
+  }
+</script>
+
+<style lang="scss" scoped>
+  @import '~assets/scss/mobileInvoice';
+  @mixin overFlowHidden {
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
+  }
+
+  .com-switch-head .com-switch-item.active {
+    border-bottom: 0.04rem solid #3f84f6;
+  }
+  .com-switch-head {
+    height: .82rem;
+    line-height: .82rem;
+    text-align: center;
+    background: #fff;
+  }
+  .com-switch-head .com-switch-item {
+    font-size: .28rem;
+    text-align: center;
+    background: #fff;
+  }
+  .mobile-customer-btob{
+    background: #f1f3f6;
+    margin: 1.26rem 0 0.98rem 0;
+    height: calc(100vh - 1.26rem - 0.98rem);
+    overflow-y: auto;
+    .search-content {
+      padding: .24rem 0;
+      text-align: center;
+      background: #f1f3f6;
+      input {
+        width: 6.48rem;
+        height: .58rem;
+        line-height: .58rem;
+        border-radius: .14rem;
+        margin: 0 0 0 .11rem;
+        font-size: .26rem;
+        padding: 0 .71rem 0 .21rem;
+        border: 1px solid #3f84f6;
+      }
+    }
+  }
+
+  .modal-wrapper-bg {
+    .mobile-modal .mobile-modal-wrapper {
+      top: 1.6rem;
+      bottom: 1.6rem;
+      left: 5%;
+      right: 5%;
+    }
+    .mobile-scroll-wrap {
+      overflow: hidden;
+      height: 80%;
+      background: #fff;
+      border-bottom-left-radius: .07rem;
+      border-bottom-right-radius: .07rem;
+    }
+  }
+  .customer-btob-wrapper {
+    .customer-btob-wrapper-list {
+      width: 7.1rem;
+      margin: 0 auto 0.2rem;
+      background: #FFFFFF;
+      border-radius: 0.05rem;
+      padding: 0.16rem 0.24rem 0;
+      .customer-btob-wrapper-content {
+        div {
+          font-size: 0.28rem;
+          color: #151515;
+          line-height: 0.5rem;
+          &.list-item {
+            @include overFlowHidden();
+          }
+          span {
+            color: #666666;
+          }
+        }
+      }
+      .customer-btob-wrapper-bottom{
+        border-top: 1px solid #D9D9D9;
+        height: 0.8rem;
+        line-height: 0.8rem;
+        margin: 0.16rem -0.24rem 0;
+        padding:0 0.24rem 0.16rem;
+        div {
+          text-align: center;
+          width: 50%;
+          float: left;
+          font-size: 0.26rem;
+          color: #333333;
+          &:first-child {
+            border-right: 1px solid #D9D9D9;
+          }
+          i {
+            font-size: 0.36rem;
+            vertical-align: middle;
+            margin-right: 0.05rem
+          }
+        }
+      }
+    }
+  }
+  .customer-modal-wrapper {
+    padding-bottom: 0.5rem;
+    input {
+      border: 1px solid #3f84f6;
+    }
+
+  }
+  .customer-modal-content {
+    border-radius: 0.06rem 0.06rem 0 0;
+    font-size: 0.28rem;
+    margin: 0.24rem auto 0;
+    width: 90%;
+    overflow: hidden;
+    .customer-modal-content-title {
+      height: 0.76rem;
+      line-height: 0.76rem;
+      background: #89AEFA;
+      border: 1px solid #89AEFA;
+      color: #FFFFFF;
+      padding: 0 0.2rem;
+    }
+    .customer-modal-content-list {
+      padding: 0 0.2rem;
+      height: 0.76rem;
+      line-height: 0.76rem;
+      border: 1px solid #7E7E7E;
+      background: #FFFFFF;
+      color: #666666;
+      border-bottom: 0;
+      &:nth-last-child(1){
+        border-bottom: 1px solid #7E7E7E
+      }
+      span:nth-last-child(1) {
+        @include overFlowHidden()
+      }
+    }
+  }
+  .customer-modal-bottom {
+    position: absolute;
+    bottom :0rem;
+    width: 90%;
+    left: 0;
+    right: 0;
+    margin: 0 auto;
+    div {
+      background: #3F84F6;
+      border-radius: 8px;
+      width: 48%;
+      height: 0.74rem;
+      line-height: 0.74rem;
+      font-size: 0.28rem;
+      color: #FFFFFF;
+      text-align: center;
+      &:last-child {
+        background: #fff;
+        color: #3F84F6;
+      }
+    }
+  }
+
+</style>

+ 49 - 147
pages/mobile/center/user/tender/index.vue

@@ -2,9 +2,9 @@
   <div class="order-wrapper">
     <div class="order-nav">
       <div :class="activeType === 'all' ? 'active': ''" @click="ChangeList('all')"><span>全部</span></div>
-      <div :class="activeType === 'done' ? 'active': ''" @click="ChangeList('done')"><span>已送样</span></div>
-      <div :class="activeType === 'todo' ? 'active' : ''" @click="ChangeList('todo')"><span>待送样</span></div>
-      <div :class="activeType === 'invalid' ? 'active' : ''" @click="ChangeList('invalid')"><span>已作废</span></div>
+      <div :class="activeType === 'done' ? 'active': ''" @click="ChangeList('done')"><span>待评标</span></div>
+      <div :class="activeType === 'todo' ? 'active' : ''" @click="ChangeList('todo')"><span>待投标</span></div>
+      <div :class="activeType === 'waiting' ? 'active' : ''" @click="ChangeList('waiting')"><span>待发布</span></div>
     </div>
     <div class="search-content search-content2">
       <input type="text" placeholder="单据编号/客户名称/物料名称" v-model="filterParams.keyword" @keyup.13="searchOrderlist">
@@ -30,94 +30,40 @@
           <span v-if="!isUnread(item.id)" style="color:#15B262;margin-right:.5rem;">已读</span>
           <span v-if="isUnread(item.id)" style="color:#DE4545;margin-right:.5rem;">未读</span>
           <span>{{item.date | time}}</span>
-          <span class="leave-active" v-if="item.status === 400 && !(item.qty > (item.sendQty || 0))">已送样</span>
-          <span class="leave-active" v-if="item.status === 400 && item.qty > (item.sendQty || 0)">部分送样</span>
-          <span class="over-active" v-if="item.status === 315">已作废</span>
+          <span class="leave-active" v-if="item.status === '已结标'">已结标</span>
+          <span class="leave-active" v-if="item.status === '待评标' && item.overdue === 1 && item.result !== 1">待评标</span>
+          <span class="leave-active" v-if="(item.status === '待评标' && item.overdue !== 1) || (item.status === '待投标' && item.overdue !== 1)">待投标</span>
+          <span class="leave-active" v-if="(item.status === '待评标' && item.overdue === 1 && item.result === 1) || (item.status === '待投标' && item.overdue === 1) || item.status === '流标'">流标</span>
+          <span class="leave-active" v-if="item.status === '待发布'">待发布</span>
         </div>
         <div class="list-content">
           <div class="item">
-            {{item.proofing.enterprise.enName}}
+            <span>标题:</span>
+            <label v-html="item.title || '-'"></label>
           </div>
           <div class="item">
-            <span>流水号:</span>
-            <label v-html="item.proofing.code" style="color: #3F84F6;font-weight: 500"></label>
+            <span>号:</span>
+            <label v-html="item.code" style="color: #3F84F6;font-weight: 500"></label>
           </div>
         </div>
         <div class="list-content">
           <div class="item">
-            <span>物料编码:</span>
-            <label v-html="item.proofing.product.code || '-'" style="color: #333;font-weight: 500"></label>
+            <span>联系人:</span>
+            <label v-html="item.user || '-'" style="color: #333;font-weight: 500"></label>
           </div>
           <div class="item">
-            <span>物料名称:</span>
-            <label v-html="item.proofing.product.title || '-'" style="color: #333;font-weight: 500"></label>
+            <span>联系电话:</span>
+            <label v-html="item.userTel || '-'" style="color: #333;font-weight: 500"></label>
           </div>
           <div class="item">
-            <span>物料规格:</span>
-            <label v-html="item.proofing.product.spec || '-'" style="color: #333;font-weight: 500"></label>
+            <span>投标截止时间:</span>
+            <label style="color: #333;font-weight: 500">{{item.endDate | timeDay}}</label>
           </div>
           <div class="item">
-            <span>环保要求:</span>
-            <label v-html="item.proofing.envrequiry" style="color: #333;font-weight: 500"></label>
+            <span>公布结果时间:</span>
+            <label style="color: #333;font-weight: 500">{{item.publishDate | timeDay}}</label>
           </div>
-          <div class="item">
-            <span>数量:</span>
-            <label v-html="item.qty" style="color: #333;font-weight: 500"></label>
-            <label v-html="item.proofing.product.unit" style="color: #333;font-weight: 500"></label>
-          </div>
-          <div class="item">
-            <span>是否收费:</span>
-            <!--<label v-html="item.code" style="color: #333;font-weight: 500"></label>-->
-          </div>
-          <div class="item">
-            <span>单价:</span>
-            <label v-html="item.proofing.isCharge === '是' ? '是' : '否'" style="color: #333;font-weight: 500"></label>
-          </div>
-          <div class="item">
-            <span>需求日期:</span>
-            <label style="color: #333;font-weight: 500">{{item.proofing.delivery | timeDay}}</label>
-            <a v-if="item.status === 400" style="margin-left:1rem;color:#15B262;" @click="dropClick(item, $event)">送样信息<i class="fa fa-fw fa-angle-down"></i></a>
-          </div>
-          <template  v-if="item.isDrop">
-            <div v-for="(send, key) in item.sends" style="padding: .2rem;">
-              <div class="item">
-                <span>序号:</span>
-                <label style="color: #333;font-weight: 500">{{key + 1}}</label>
-              </div>
-              <div class="item">
-                <span>送样时间:</span>
-                <label style="color: #333;font-weight: 500">{{send.date | time}}</label>
-              </div>
-              <div class="item">
-                <span>送样人:</span>
-                <label style="color: #333;font-weight: 500">{{send.recorder}}</label>
-              </div>
-              <div class="item">
-                <span>送样单号:</span>
-                <label style="color: #333;font-weight: 500">{{send.code}}</label>
-              </div>
-              <div class="item">
-                <span>送样数量:</span>
-                <label style="color: #333;font-weight: 500">{{send.sendQty}}</label>
-              </div>
-              <div class="item">
-                <span>采购单价:</span>
-                <label style="color: #333;font-weight: 500">{{send.puprice | toFixedNum}}</label>
-              </div>
-              <div class="item">
-                <span>最小包装量:</span>
-                <label style="color: #333;font-weight: 500">{{send.minQty}}</label>
-              </div>
-              <div class="item">
-                <span>最小订购量:</span>
-                <label style="color: #333;font-weight: 500">{{send.minBuyQty}}</label>
-              </div>
-            </div>
-          </template>
         </div>
-        <!--<div class="list-bottom">-->
-          <!--<span><i class="fa fa-paper-plane fa-lg fa-fw"></i>送样</span>-->
-        <!--</div>-->
       </li>
     </ul>
     <div v-if="orderList.length === 0" class="com-none-state">
@@ -130,55 +76,27 @@
              :page="page"
              :FixedEl="true"
              @pullUpAction="getMoreSearch"></pull-up>
-    <modal-wrapper :showModal="showModal" :title="'客户打样申请详情'" @closeAction="showModal = false">
+    <modal-wrapper :showModal="showModal" :title="'评标单'" @closeAction="showModal = false">
       <div class="btob_invoice_modal">
         <div class="btob_invoice_modal_title">
           <span>单据信息</span>
-          <span class="block" v-if="modalObj.status === 401">待送样</span>
-          <span class="block" v-if="modalObj.status === 400 && !(modalObj.qty > (modalObj.sendQty || 0))">已送样</span>
-          <span class="block" v-if="modalObj.status === 400 && modalObj.qty > (modalObj.sendQty || 0)">部分送样</span>
-          <span class="block" v-if="modalObj.status === 315">已作废</span>
+          <span class="block" v-if="modalObj.status === '已结标'">已结标</span>
+          <span class="block" v-if="modalObj.status === '待评标' && modalObj.overdue === 1 && modalObj.result !== 1">待评标</span>
+          <span class="block" v-if="(modalObj.status === '待评标' && modalObj.overdue !== 1) || (modalObj.status === '待投标' && modalObj.overdue !== 1)">待投标</span>
+          <span class="block" v-if="(modalObj.status === '待评标' && modalObj.overdue === 1 && modalObj.result === 1) || (modalObj.status === '待投标' && modalObj.overdue === 1) || modalObj.status === '流标'">流标</span>
+          <span class="block" v-if="modalObj.status === '待发布'">待发布</span>
         </div>
         <div class="btob_invoice_modal_content">
-          <div><span>单据编号:</span>{{modalObj.proofing && modalObj.proofing.code}}</div>
-          <div><span>日期:</span>{{modalObj.proofing && modalObj.proofing.date | time}}</div>
-          <div><span>客户:</span>{{modalObj.proofing && modalObj.proofing.enterprise.enName}}</div>
-          <div><span>需求数:</span>{{modalObj.qty}}</div>
-          <div><span>交货日期:</span>{{modalObj.proofing && modalObj.proofing.delivery | time}}</div>
-          <div><span>送样申请人:</span>{{modalObj.proofing && modalObj.proofing.user.userName}}</div>
-          <div><span>备注:</span>{{modalObj.proofing && modalObj.proofing.remark || '无'}}</div>
-        </div>
-        <div class="btob_invoice_modal_title">
-          <span>物料信息</span>
-        </div>
-        <div class="btob_invoice_modal_content">
-          <div><span>物料名称:</span>{{modalObj.proofing && modalObj.proofing.product.title}}</div>
-          <div><span>物料型号:</span>{{modalObj.proofing && modalObj.proofing.product.code}}</div>
-          <div><span>物料规格:</span>{{modalObj.proofing && modalObj.proofing.product.spec}}</div>
-          <div><span>环保要求:</span>{{modalObj.proofing && modalObj.proofing.envrequiry || '无'}}</div>
-        </div>
-        <div class="btob_invoice_modal_title" v-if="modalObj.status !== 401 && modalObj.sends && modalObj.sends.length > 0">
-          <span>明细清单</span>
-        </div>
-        <div class="btob_invoice_modal_content btob_invoice_modal_content2" v-if="modalObj.status !== 401" v-for="(item, index) in modalObj.sends">
-          <div><span>序号:</span>{{index + 1}}</div>
-          <div><span>单号:</span>{{item.code}}</div>
-          <div><span>送样时间:</span>{{item.date | time}}</div>
-          <div v-if="!isUser"><span>采购单价:</span>{{item.puprice | toFixedNum}} {{item.currency}}</div>
-          <div><span>送样数量:</span>{{item.sendQty || '-'}}</div>
-          <div><span>交货周期:</span>{{item.delivery || '-'}}</div>
-          <div><span>送样人:</span>{{item.recorder || '-'}}</div>
-          <div v-if="item.minQty"><span>最小包装量:</span>{{item.minQty}}</div>
-          <div v-if="item.minBuyQty"><span>最小订购量:</span>{{item.minBuyQty}}</div>
-          <div v-if="item.vendSpec"><span>生产厂型号:</span>{{item.vendSpec}}</div>
-          <div v-if="item.brand"><span>品牌:</span>{{item.brand}}</div>
-          <div v-if="item.weight"><span>单重:</span>{{item.weight}}</div>
-          <div v-if="item.material"><span>材料:</span>{{item.material}}</div>
-          <div v-if="item.materialQuality"><span>材质:</span>{{item.materialQuality}}</div>
-          <div v-if="item.minBuyQty"><span>产地:</span>{{item.minBuyQty}}</div>
-          <div v-if="item.addressMark"><span>产地标识:</span>{{item.addressMark}}</div>
-          <div v-if="item.ratio"><span>口水料比例:</span>{{item.ratio}}</div>
-          <!--<div v-if="item.attachs.length > 0"><span>附件:</span>{{item.attachs}}</div>-->
+          <div><span>招标标题:</span>{{modalObj.title}}</div>
+          <div><span>联系人:</span>{{modalObj.user}}</div>
+          <div><span>联系电话:</span>{{modalObj.userTel}}</div>
+          <div><span>收货地址:</span>{{modalObj.shipAddress}}</div>
+          <div><span>投标截止时间:</span>{{modalObj.endDate | timeDay}}</div>
+          <div><span>公布结果时间:</span>{{modalObj.publishDate |timeDay}}</div>
+          <div><span>交易币别:</span>{{modalObj.currency}}</div>
+          <div><span>是否含税:</span>{{modalObj.ifTax === 1 ? '是' : '否'}}</div>
+          <div><span>付款方式:</span>{{modalObj.payment}}</div>
+          <div><span>证照要求:</span>{{modalObj.certificate || '无'}}</div>
         </div>
       </div>
     </modal-wrapper>
@@ -235,16 +153,16 @@
     methods: {
       lookItem(bill) {
         this.showModal = true
-        if (this.isUnread(bill.id)) {
-          let lists = []
-          lists[0] = bill.id
-          let _then = this
-          this.$http.post(`/sale/sample/setRead`, lists)
-            .then(() => {
-              _then.getHasUser()
-            })
-        }
-        this.$http.get(`/sale/sample/${bill.id}/send`)
+        // if (this.isUnread(bill.id)) {
+        //   let lists = []
+        //   lists[0] = bill.id
+        //   let _then = this
+        //   this.$http.post(`/sale/sample/setRead`, lists)
+        //     .then(() => {
+        //       _then.getHasUser()
+        //     })
+        // }
+        this.$http.get(`/tender/purc/${bill.id}/info`)
           .then(res => {
             this.modalObj = bill
             this.modalObj.sends = res.data
@@ -293,39 +211,23 @@
           this.isUser = res.data.isUser
         })
       },
-      dropClick (item, event) {
-        event.stopPropagation()
-        this.$http.get(`/sale/sample/${item.id}/send`)
-          .then(res => {
-            this.orderList.forEach(value => {
-              if (item.id === value.id) {
-                value.isDrop = !value.isDrop
-                item.sends = res.data
-              }
-            })
-          })
-        console.log(item)
-      },
       getUnreadIds () {
-        this.$http.get('/sale/tender/getUnreadIds')
+        this.$http.get('/tender/getUnreadIds/purc')
           .then(res => {
             this.unreadCode = res.data.content
           })
       },
       getResource(Reset) {
-        this.$http.get('/sale/tender/info/search', {params: {
+        this.$http.get('/tender/purc/info/search', {params: {
             _state: this.activeType !== 'all' ? this.activeType : null,
             count: 10,
             page: this.page,
             searchFilter: this.filterParams,
-            sorting: {'proofingDate': 'desc'}
+            sorting: {'id': 'desc'}
           }}).then(res => {
           if (Reset) {
             this.orderList = []
           }
-          res.data.content.forEach(value => {
-            value.isDrop = false
-          })
           this.orderList.push(...res.data.content)
           this.allPage = Math.floor(res.data.totalElement / 10)
         })