order-month-plan.vue 9.28 KB
<template>
	<div class="container resource">
      <div class="pop-banner clearfix">
        <div class="operate-btns"> </div>
        <h3 class="current-module">月度计划</h3>{{dual}}
      </div>
      <!-- start-->
      <div class="">
        <div class="pd-form fast-search-form">
          <div class="group-row">
            <div class="form-group">
              <!--<label for="cn1" class="label">计划单号</label>-->
              <div class="control">
                <input type="text" id="cn1"   placeholder='计划单号' v-model='search.search_LIKE_billno'> </div>
            </div>
            <div class="form-group">
              <!--<label class="label">供应商</label>-->
              <!-- <div class="control">
                 <select-ui :list="supplierList" :selected="false" v-model='search.search_EQ_entrpguid'></select-ui>
              </div> -->
              <div class="control control-hint">
                <input type="text" id="cn1"  placeholder='供应商' v-model="search_LIKE_entrpname" @click="dynamicSearch">
                <ul class="hint-list" v-show="dropBox">
                  <li v-for="supplisr in supplierList" @click="selectSupplier(supplisr)"><span>{{ supplisr.label }}</span></li>
                </ul>
              </div>
            </div>
          </div>
          <div class="group-row">
            <div class="form-group">
              <!--<label for="cn1" class="label">医疗机构</label>-->
              <div class="control">
                <input type="text"   placeholder='医疗机构'  id="cn1" v-model='search.search_LIKE_medname'></div>
            </div>
              <div class="form-group">
                  <!-- <label for="cn3" class="label lable-xf pl10">录入日期</label> -->
                  <div class="control control-date" style="height:34px;overflow: inherit;">
                      <div style="width:44%;float:left;">
                          <datepicker :target.sync="search.search_GTE_inputdate" :readonly="readonlyFlag" styleobj="width:100% !important;border-radius:8px 0px 0px 8px !important;" title='录入日期起' placeholder='录入日期起'></datepicker>
                      </div>
                      <div class="text-and"></div>
                      <div style="width:48%;float:left;">
                          <datepicker :target.sync="search.search_LTE_inputdate"  :readonly="readonlyFlag" styleobj="width:100% !important;border-radius:0px 8px 8px 0px !important;" title='录入日期止' placeholder='录入日期止'></datepicker>
                      </div>
                  </div>
              </div>
            <!--<div class="form-group">
              <label for="cn3" class="label">录入日期</label>
              <div class="control control-date">
                <div style="width:42%;float:left;">
                  <datepicker :target.sync="search.search_GTE_inputdate"></datepicker>
                </div>
                <span class="text-and" style="width: 45px"></span>
                <div style="width:42%;float:left;">
                  <datepicker :target.sync="search.search_LTE_inputdate"></datepicker>
                </div>
              </div>
            </div>-->
          </div>
          <div class="group-row t-right">
          <!-- v-if="authoritySetting.oneSearchFlag" -->
            <button class="fast-search-form-btn btn-d btn-d-lg btn-d-activate btn-d-circle" @click="getData(true)" >查 询</button>
          </div>
        </div>
      </div>
      <table class="itable itable-td-long-text itable-thead-13px">
        <thead>
          <tr>
            <th class="w60">序号</th>
            <th class="w80">计划单号</th>
            <th class="w110">医疗机构</th>
            <th class="w140">供应商</th>
            <th class="w70">计划月份</th>
            <th class="w70">明细条数</th>
            <th class="w80">汇总金额</th>
            <th class="w70">录入员</th>
            <th class="w100">录入日期</th>
            <th class="w60">操作</th>
          </tr>
        </thead>
        <tbody>
          <tr v-for="trplanperiod in listTrplanperiod">
            <td>{{ $index + 1 }}</td>
            <td>{{ trplanperiod.billno }}</td>
            <td>{{ trplanperiod.medname }}</td>
            <td>
              <div class="p-lr-10">{{ trplanperiod.entrpname }}</div>
            </td>
            <td>{{ trplanperiod.planperiod }}</td>
            <td>{{ trplanperiod.detailrecordsum }}</td>
            <td>{{ trplanperiod.detailmoneysum }}</td>
            <td>{{ trplanperiod.operatername }}</td>
            <td>{{ trplanperiod.inputdate }}</td>
            <td>
            <!-- v-if="authoritySetting.twoDetailFlag" -->
              <a class="btn-d btn-d-activate"  v-link="{ path: '/orderMonthPlanView/' + trplanperiod.guid}" >明细</a>
            </td>
          </tr>
        </tbody>
      </table>
      <div class="pagination m-20-0">
        <em class="page">明细条目数【{{ search.total }}</em>
        <pagination
          @page-change="getData"
          :class="['m-20-0']"
          :page-no.sync="search.page"
          :total-pages.sync="search.totalPages">
        </pagination>
      </div>
      <!-- end-->
    </div>
</template>
<script>
/*
author:qiaom
day:2016-8-11
月度计划查询
*/
module.exports={
  data: function(){
    return {
      disguid:'',
      listTrplanperiod: [],
      supplierList: [],
      search_LIKE_entrpname: '',
      dropBox:false,
      search: {
        pageSize: 10,
        page: 1,
        totalPages: 0,
        total: 0,
        search_LIKE_billno: '',
        search_EQ_entrpguid: '',
        search_LIKE_medname: '',
        search_GTE_inputdate: '',
        search_LTE_inputdate: '',
        search_EQ_distrbguid:'',
      },
      parameter:{
        pageSize: 10,
        page: 1,
        totalPages: 0,
        total: 0,
        parameter_LIKE_entrpname:'',
      },
      authoritySetting: {
          oneSearchFlag:false,
          twoDetailFlag:false,
      },
    };
  },
  computed: {
      dual: function () {
        var self = this;
        var curMenuRole = this.$store.state.user.curMenuRole;
        self.disguid = this.$store.state.user.curUser.distrbguid;
        if (self.disguid!=undefined && self.disguid!=null) {
        if (curMenuRole!=undefined && curMenuRole!=null) {
            for (var i=0;i<curMenuRole.length;i++) {
                if(curMenuRole[i].menu != null) {
                    if (curMenuRole[i].menu.name.trim() == '月度计划查询') {
                        for (var j=0;j<curMenuRole[i].buttonList.length;j++) {
                             var name = curMenuRole[i].buttonList[j].name.trim();
                             var isValid = curMenuRole[i].buttonList[j].isvalid;
                             var level = curMenuRole[i].buttonList[j].level;

                             // 一级菜单设置
                             if (!self.authoritySetting.oneSearchFlag && level=='1' && name =='查询' && isValid=='y') {
                                self.authoritySetting.oneSearchFlag = true;
                             }
                             // 二级菜单设置
                            if (!self.authoritySetting.twoDetailFlag && level=='2' && name =='详细' && isValid=='y') {
                                self.authoritySetting.twoDetailFlag = true;
                             }
                         }
                       break;
                    }
                }
            }
        }
        }
        return '';
      }
    },
  methods: {
    //选择供应商事件
    selectSupplier: function(supplier){
      this.search.search_EQ_entrpguid = supplier.value;
      this.search_LIKE_entrpname = supplier.label;
      this.dropBox = false;
    },
    //供应商下拉框搜索
    dynamicSearch: function(){
      this.dropBox = true;
    },
    //月度计划列表查询
    getData: function(flag){
      var self = this;
      if(flag){
        self.search.page = 1;
      }
      self.search.search_EQ_distrbguid = self.disguid;
      Ajax.get('/monthPlan/listTrplanperiod', this.search)
        .then(function (response){
          var data = response.data;
          if(data.errorCode == 0){
            self.$set('listTrplanperiod',data.data.list);
            self.search.totalPages = data.data.totalPages;
            self.search.total = data.data.total;
          }else{
            self.MessageBox({
              title:'提示',message:data.message,type:'alert'
            },function(action){})
          }
      })
    },
    //供应商下拉框查询
    getSupplier: function(){
       var self = this;
       self.parameter.parameter_EQ_distrbGuid = self.disguid;
       self.parameter.parameter_LIKE_entrpname = self.search_LIKE_entrpname;
       Ajax.get('/util/listHospitalSupplierDropBox',this.parameter)
         .then(function (response){
          var data = response.data;
          if(data.errorCode == 0){
            self.$set('supplierList',data.data);
          }else{
            self.MessageBox({
              title:'提示',message:data.message,type:'alert'
            },function(action){})
          }
       })
    },
  },
  route:{
    activate : function(){
      this.getData();
      this.getSupplier();
    }
  },
  watch:{
    search_LIKE_entrpname: function (val) {
      if(this.dropBox){
          this.getSupplier();
      }
    },
  }
};
</script>