enquiry-manage-view2.vue 12 KB
<!--医院对账单 - 列表-->
<template>
  <div class="container resource close-left-menu contaNEW">
    <div class="pop-banner clearfix">
    <div class="operate-btns">
          <a class="fbtn fb-send" @click='send'>发送询价</a>
    </div>
    <h3 class="current-module">发布询价</h3>
  </div>
  <div class="order-orderlist-view clearfix">

    <div class="pd-form form-label4em mb-20 fast-search-form">
      <div class="group-row">
        <div class="form-group form_group_state" style='width:100%;'>
          <label for="cn4" class="label w60 t-center">地    区</label>
          <div id="statebill" class="control control-filtering control-filtering-green fl" style='width:90%;'>
              <a class="option" href="javascript:void(0)" v-for='item in cityS' :class='{"all active" :item.state}' @click='item.state=!item.state'>{{item.province}}</a>
          </div>
        </div>
      </div>
      <div class="group-row t-right">
        <button  v-on:click="getList(true)"
          class="fast-search-form-btn btn-d btn-d-lg btn-d-activate btn-d-circle">查 询</button>
      </div>
    </div>
     <div class="pd-form">
      <div class="fheader">
        <h4 class="fh-good">询价商品</h4>
      </div>
      <div class="group-row">
          <div class="form-group form-label">
            <div class="control">
                 <input type="text" id="cn5" maxlength="50" v-rule placeholder="请输入需要要询价的商品名称" title='请输入需要要询价的商品名称' v-model='goodsname' @change='medquery'>
                 <div class="select-template" id="searchMore" v-if='state'>
                        <div class="div-select before-none" style="width:100%;">
                          <ul  style="z-index:3;top:0px;width:100%; margin-top: 0px;">
                            <li class="div-select-item pl10 hover-none" style='line-height:20px;height:auto;'>
                              <table class="itable itable-thead-13px itable-td-long-text">
                                  <thead id="t_header">
                          </thead>
                          <tbody>
                            <tr v-for="item in goodsList" @click='goodsData(item)' track-by="$index">
                              <td class="t-left w160 pr10">
                                {{item.goodsname}}
                              </td>
                              <td class="t-left w120 pr10">{{item.producer}}</td>
                              <td class="t-left w120">{{item.goodsspec}} </td>
                            </tr>
                          </tbody>
                        </table>
                            </li>
                          </ul>
                        </div>
                      </div>
            </div>
          </div>
          <div class="form-group form-label">
            <div class="control">
              <input type="text" maxlength="50" v-rule placeholder="请输入需要要询价的商品厂商" title='请输入需要要询价的商品厂商' v-model='producer'>
            </div>
          </div>
        </div>
        <div class="group-row">
          <div class="form-group form-label">
            <div class="control">
                 <input type="text" placeholder="请输入需要要询价的商品规格" title='请输入需要要询价的商品规格' v-model="goodsspec">
            </div>
          </div>
          <div class="form-group form-label">
            <div class="control">
              <datepicker :target.sync="endtime" :readonly="readonlyFlag" title='截止日期' placeholder="截止日期" styleobj="width:100%;border-radius:8px;">
              </datepicker>
              <!-- <input type="text" id="cn5" placeholder="询价截止日期" title='询价截止日期'> -->
            </div>
          </div>
        </div>
        <div class="group-row">
          <div class="checkbox-control" title='您预留的电话会显示给供应商'>
              <input type="checkbox" name="cb" id="cball_a" v-model='isreceivemob'>
              <label class="checkbox" for="cball_a" style="margin-right:0px;">接受电话沟通</label>
            </div>
        </div>
    </div>
    <div class="fheader">
        <h4 class="fh-good">供应商列表</h4>
    </div>
    <table class="itable itable-td-long-text">
      <thead>
        <tr>
          <th class="w60">
            <div class="checkbox-control">
               <input type="checkbox" name="cb" id="asdas" v-model='allFlag'>
               <label class="checkbox" for="asdas">全选</label>
             </div>
          </th>
          <th class="w60">序号</th>

          <th class="w100">供应商</th>
          <th class="w80">供应商所在地</th>
          <th class="w80">资质 <span class="query-icon" title='
完    整:90%以上(含90%)
较完整:50%~90%
不完整:50%以下(含50%)'>?</span></th>
        </tr>
      </thead>
      <tbody class="txt_v">
         <tr v-if="mxList.length==0">
          <td colspan="12" >
            查询无符合条件的商品。
          </td>
        </tr>
        <tr v-for='item in mxList'>
          <td>
             <div class="checkbox-control">
               <input type="checkbox" name="cb" :id="item.supplierguid" v-model='item.mark'>
               <label class="checkbox" :for="item.supplierguid"></label>
             </div>
          </td>
          <td>{{$index+1}}</td>

          <td class="t-left pr10">{{item.suppliername}}</td>
          <td>{{item.province}}</td>
          <td class="t-center pr20" v-if='item.lictype=="完整"'>
            <imagebox v-bind:imgarr="item.path" class='f-none'>
                <a href="javascript:;" class="text-color-blue">{{item.lictype}}</a>
            </imagebox>
          </td>
          <td class="t-center pr20" v-else>
            <imagebox v-bind:imgarr="item.path" class='f-none'>
                <a href="javascript:;" class="text-color-red">{{item.lictype}}</a>
            </imagebox>
          </td>
        </tr>
      </tbody>
    </table>
      <pagination
           @page-change="getList(false)"
           :page-no.sync="search.page"
           :total-pages.sync="search.totalPages">
        </pagination>

  </div>
</div>
</template>
<script >
  module.exports = {
    data: function () {
      return {

        // 明细数据
        mxList: [],
        // 查询条件
        search: {
          pageSize: 50,
          page: 1,
          totalPages: 0,
          total: 0,
        },
        readonlyFlag:false,
        goodsname:'',
        state:false,
        goodsList:[],
        isreceivemob:false,
        producer:'',
        goodsspec:'',
        allFlag:false
      };
    },
    methods: {

     getData: function () {
        var self = this;

        Ajax.post('/licence/getMfSupplierProvince')
          .then(function (response){
            var data = response.data.data;

            if(response.data.errorCode==0){
              for(var a=0;a<data.length;a++){
                  if(a==1){
                        data[a].state=true;
                    }else{
                      data[a].state=false;
                    }

                }
                 self.$set('cityS',data);
                 self.getList(true);
              }else{
                layer.msg(response.data.message);
              }

        })
      },
      getList:function(falg){
         var self = this;
          self.search.list=[];
        if(falg){
            self.search.page=1;
        }
        for(var a=0;a<self.cityS.length;a++){
            if(self.cityS[a].state){
                self.search.list.push(self.cityS[a].province);
            }
        }
        Ajax.post('/licence/getMfSuppliers',self.search)
          .then(function (response){
            var data = response.data.data, imgReg = /\.(jpg|jpeg|png|gif|bmp)$/i; //判断字符串是否为图片路径;
            // self.$set('mxList',data.list);
            if(response.data.errorCode==0){
              for(var i=0;i<data.list.length;i++){
                data.list[i].mark=false;
                data.list[i].path=[];
                if(data.list[i].jyxkz){
                  var jyxkz=JSON.parse(data.list[i].jyxkz);
                  data.list[i].path.push({img: imgReg.test(jyxkz[0].original.path) ? jyxkz[0].original.path : jyxkz[0].original.path + jyxkz[0].original.name, txt:'经营许可证'});
                }
                if(data.list[i].scxkz){
                  var scxkz=JSON.parse(data.list[i].scxkz);
                   data.list[i].path.push({img: imgReg.test(scxkz[0].original.path) ? scxkz[0].original.path : scxkz[0].original.path + scxkz[0].original.name, txt:'生产许可证'});
                }
                if(data.list[i].zzjgdmz){
                  var zzjgdmz=JSON.parse(data.list[i].zzjgdmz);
                   data.list[i].path.push({img: imgReg.test(zzjgdmz[0].original.path) ? zzjgdmz[0].original.path : zzjgdmz[0].original.path + zzjgdmz[0].original.name, txt:'组织机构代码证'});
                }
                if(data.list[i].swdjz){
                  var swdjz=JSON.parse(data.list[i].swdjz);
                   data.list[i].path.push({img: imgReg.test(swdjz[0].original.path) ? swdjz[0].original.path : swdjz[0].original.path + swdjz[0].original.name, txt:'税务登记证'});
                }
                 if(data.list[i].yyzz){
                  var yyzz=JSON.parse(data.list[i].yyzz);
                   data.list[i].path.push({img: imgReg.test(yyzz[0].original.path) ? yyzz[0].original.path : yyzz[0].original.path + yyzz[0].original.name, txt:'营业执照'});
                }
              }
               self.$set('mxList',data.list);
               self.search.total=response.data.total;

               self.search.totalPages=data.totalPages;
              }

        })
      },
      // 商品查询
      goodsData:function(item){
        var self = this ;
        self.$set('goodsname',item.goodsname);
        self.$set('producer',item.producer);
        self.$set('goodsspec',item.goodsspec);
        self.$set('state',false);

      },
      medquery:function(){
        var self = this;
        self.$set('goodsList',[]);

          Ajax.post('/licence/getMfmedgoods',{goodsname:self.goodsname})
          .then(function (response){
            var data = response.data.data;

            if(response.data.errorCode==0){
              if(data.length>0){
                self.state=true;

              }else{
                self.state=false;
              }
               self.$set('goodsList',data);
              }


        })
      },
      // 发送询价
      send:function(){
        var self = this;
        var mxList=self.mxList;
        var arr=[];
        if(!self.goodsname){
            layer.msg('请输入商品名称');
            return;
        }
        if(!self.endtime){
            layer.msg('请选择截止日期');
            return;
        }
        for(var a=0;a<mxList.length;a++){
          if(mxList[a].mark){
            mxList[a].goodsname=self.goodsname;
            mxList[a].producer=self.producer;
            mxList[a].goodsspec=self.goodsspec;
            mxList[a].endtime=self.endtime;
            mxList[a].isreceivemob=self.isreceivemob;

            arr.push(mxList[a]);
          }
        }
         Ajax.post('/licence/addTrmedenquiryList',JSON.stringify(arr))
          .then(function (response){
            var data = response.data.data;
            // self.$set('mxList',data.list);
            if(response.data.errorCode==0){

                 self.MessageBox({title:'提示',message:'发送询价成功!',type:'alert'},function(){
                  window.location.reload();
                 })
              }else{
                layer.msg(response.data.message);
              }


        })

      }
    },
    route: {
      activate: function () {
        this.getData();
      }
    },
    watch:{
      // 全选
      'allFlag':function(val){

        var self = this;
          // if(self.allFlag){
            for(var a=0;a<this.mxList.length;a++){
              self.mxList.splice( a,1, Object.assign({}, self.mxList[a], { 'mark': self.allFlag}))
            }
            this.$set('mxList',this.mxList)
          // }
      }
    }
  };
</script>