synchronous_mining.vue 8.9 KB
<template>
	<div class="container resource contaNEW">
      <div class="pop-banner clearfix w1003 ">
        <!-- <div class="operate-btns">
    </div> -->
        <h3 class="current-module">上传采购单</h3>
      </div>
      <!--purchase-plan start-->
      <div class="purchase-plan">
        <div class="pd-form fast-search-form">
          <div class="group-row">
            <div class="form-group form-label">
              <!-- <label for="cn1" class="label">计划单号</label> -->
              <div class="control select-style">
                <input type="text" id="cn1" maxlength="17" v-rule v-model='search.search_LIKE_billno' placeholder="计划单号" title="计划单号"> </div>
            </div>
            <div class="form-group">
              <!-- <label class="label">商品</label> -->
              <div class="control select-style">
                <input type="text" id="cn1"  maxlength="50" v-rule v-model="search.search_LIKE_goodsname" placeholder="商品" title="商品"> </div>
            </div>
          </div>
          <div class="group-row">
            <div class="form-group">
              <!-- <label for="cn3" class="label">制单日期</label> -->
               <div class="control control-date" style="height:34px;overflow: inherit;">
              <div style="width: 42%;float: left">
                <datepicker :target.sync="search.search_GTE_startDate " :readonly="readonlyFlag" title='制单开始日期' placeholder="制单开始日期"styleobj="width:100% !important;border-radius:8px 0px 0px 8px !important;"></datepicker>
              </div>
              <span class="text-and" style="width: 45px"></span>
              <div style="width: 48%;float: right;">
                <datepicker :target.sync="search.search_LTE_endDate" :readonly="readonlyFlag"title='制单结束日期' placeholder="制单结束日期"styleobj="width:100% !important;border-radius:0px 8px 8px 0px !important;"></datepicker>
              </div>
            </div>
            </div>
            <div class="form-group form-label">
              <label for="cn1" class="label">单据类型</label>
              <div class="control select-style">

              <select-ui :list="$store.state.$billType" v-model="search.search_EQ_billtype"  v-bind:disabled="disabled" class='inp4'></select-ui>
                </div>
            </div>
          </div>
          <div class="group-row">
            <div class="form-group">
              <label class="label fl">业务状态</label>
              <div class="control control-filtering control-filtering-green fl"style="width:250px;">
                <a class="option"
                :class="{'all active option ':search.syncscflag==''}"
                href="javascript:void(0)" @click="search.syncscflag=''">全部</a>
                <a class="option"
                :class="{'all active option ':search.syncscflag=='Y'}"
                href="javascript:void(0)" @click="search.syncscflag='Y'">已同步</a>
                <a class="option"
                :class="{'all active option ':search.syncscflag=='N'}"
                href="javascript:void(0)" @click="search.syncscflag='N'">未同步</a>
              </div>
            </div>
          </div>
          <div class="group-row t-right" >
            <button class="fast-search-form-btn btn-d btn-d-lg btn-d-activate btn-d-circle" @click="getData">查 询</button>
          </div>
        </div>
        <div class="m-20-0">
         <button class="btn button-green mar-none" v-on:click="pushall()">同步</button>
        </div>
        <table class="itable itable-thead-13px">
           <!-- id='t_header' -->
          <thead>
            <tr>
              <th class="w80">
                <div class="control">
                  <div class="checkbox-control">
                    <input type="checkbox" name="cb" id="cball_a"
                    v-model="check"
                      >
                    <label class="checkbox" for="cball_a" style="margin-right:0px;">
                      全选
                    </label>

                  </div>

                </div>
              </th>
              <th class="w140">计划单号</th>
              <th class="w140">制单日期</th>
              <th class="w140">期望到货日期</th>
              <th class="w70">品规数</th>
              <th class="w90">订单类型</th>
              <th class="w70">操作人</th>
              <th class="w80">备注</th>
              <th class="w80">状态</th>
            </tr>
          </thead>
          <tbody>
            <tr v-for="trmedplan in trmedplanList">
              <td>
              <div class="control">
                  <div class="checkbox-control">
                    <input type="checkbox" name="cb" id="cball_{{$index}}"
                    v-model="trmedplan.check"
                      >
                    <label class="checkbox" for="cball_{{$index}}" style="margin-right:0px;">
                      {{$index + 1}}
                    </label>

                  </div>

                </div>
              </td>
              <td class="t-left pr10">{{trmedplan.billno}}</td>
              <td>{{trmedplan.inputdate | getYMD}} </br>{{trmedplan.inputdate | getHMS}}</td>
              <td>{{trmedplan.planenddate | getYMD}}</td>
              <td>{{trmedplan.varchar1}}</td>
              <td>{{trmedplan.billtype | billtype }}</td>
              <td>{{trmedplan.operatername}}</td>
              <td>{{trmedplan.memo}}</td>
              <td>
                {{trmedplan.syncscflag=="Y"?"同步":"未同步"}}
              </td>
            </tr>
          </tbody>
        </table>
         <pagination
             @page-change="getData"
             :class="['m-20-0']"
             :page-no.sync="search.page"
             :total-pages.sync="search.totalPages"></pagination>
      </div>
      <!--purchase-plan end-->
    </div>
</template>
<script>
	module.exports={
		data:function(){
			return{
       billtype: [{
        value: "01",
        label: "普耗"
      }, {
        value: "02",
        label: "跟台高值"
      },
       {
        value: "03",
        label: "备货高值"
      },
       {
        value: "04",
        label: "药品"
      },
       {
        value: "05",
        label: "后勤物资"
      },
      {
        value: "06",
        label: "消毒用品"
      },
      {
        value: "07",
        label: "洗涤用品"
      },
       {
        value: "08",
        label: "中药材"
      },
      {
        value: "09",
        label: "设施设备"
      }],

				trmedplanList:[],
        stateAll : 'all active',
        state1 : 'option',
        state2 : 'option',
        // state3 : 'option',
        // state4 : 'option',
        // state5 : 'option',
        // state6 : 'option',
        // state7 : 'option',
				search:{
					pageSize:50,
					page:1,
					totalPages:0,
            search_LIKE_billno: '',
            search_EQ_billtype:'',
            search_EQ_billstate:'',
            search_LTE_endDate:'',
            search_GTE_startDate: '',
            search_LIKE_goodsname:'',
            search_EQ_medguid:'',
            syncscflag:''
				},
        authoritySetting: {
          oneSearchFlag:false,
          oneMakeMonthPlanFlag:true,
          twoDetailFlag:true,
          twoTraceFlag:true,
      },
      check:false
			};
		},

		methods:{
			getData:function(isRefresh){
					var self = this;
          if(isRefresh) {
            this.search.page = 1;
          }
    		  Ajax.get('/hospitalTrmedplan/trmedplanList',this.search)
					.then(function(response){
						var data=response.data.data;
            if(response.data.errorCode==0){
              var list=data.list;
              for(var i=0;i<list.length;i++){
                list[i].check=false;
              }
              self.$set("trmedplanList",list);
              self.search.totalPages=data.totalPages;
            }

					})
      },pushall:function(){
        var guids='';
        var self=this;
        for(var i=0;i<this.trmedplanList.length;i++){
          if(this.trmedplanList[i].check){
            guids+=this.trmedplanList[i].billno+','
          }
        }
        if(guids.length<2){
          return ;
        }

        Ajax.get('/sync_uploadMedplan',{guids:guids}).
        then(function(res){

            if(res.data.errorCode !=undefined && res.data.errorCode!=0){
                layer.msg(res.data.message);
                return ;
            }
            if(res.data.Result==0){
                self.check=false;
                self.getData();
            }else{
                layer.msg(res.data.ErrorMesg || '错误');
            }
        })
      }
   },watch:{
      'check':function(val){

          for(var i=0;i<this.trmedplanList.length;i++){

            this.trmedplanList[i].check=val;


          }

      }
   },

    route:{
      activate : function(){
        this.getData();
      }
    },
    watch:{
      'search.syncscflag':function(){
        this.getData();
      }
    }

};
</script>