浏览代码

【新增】折叠

howie 2 年之前
父节点
当前提交
3e4ad91d48

+ 77 - 4
src/components/Common/collapse.vue

@@ -2,17 +2,72 @@
   <div>
     <div class="btn_box">
       <div><slot name="left_btn" /></div>
-      <div><slot name="right_btn" /></div>
+      <div class="btn_box_right_box">
+        <slot name="right_btn" />
+        <el-button
+          v-if="comLength"
+          :type="btnOptions.type"
+          :size="btnOptions.size"
+          :icon="btnOptions.icon"
+          :plain="btnOptions.plain"
+          :round="btnOptions.round"
+          :circle="btnOptions.circle"
+          :loading="btnOptions.loading"
+          :disabled="btnOptions.disabled"
+          @click="handleCollapse"
+          >{{ isCollapse ? '展开' : '折叠' }}</el-button
+        >
+      </div>
     </div>
-    <div>
-      <slot name="search" />
+    <div :class="isCollapse ? 'search_box' : ''">
+      <slot name="search"></slot>
     </div>
   </div>
 </template>
 
 <script>
 export default {
-  name: 'Collapse'
+  name: 'Collapse',
+  props: {
+    isCollapse: {
+      type: Boolean,
+      default: false
+    },
+    screenForm: {
+      type: Object,
+      defaults: {}
+    },
+    btnOptions: {
+      type: Object,
+      default: () => {
+        return {
+          type: 'primary',
+          size: 'mini',
+          icon: '',
+          plain: false,
+          round: false,
+          circle: false,
+          loading: false,
+          disabled: false
+        }
+      }
+    }
+  },
+  data() {
+    return {
+      height: 40
+    }
+  },
+  computed: {
+    comLength() {
+      return Object.keys(this.screenForm).length > 4
+    }
+  },
+  methods: {
+    handleCollapse() {
+      this.$parent.isCollapse = !this.isCollapse
+    }
+  }
 }
 </script>
 
@@ -21,5 +76,23 @@ export default {
   display: flex;
   justify-content: space-between;
   margin-bottom: 10px;
+  &_right_box {
+    display: flex;
+    .el-button {
+      margin-left: 10px;
+    }
+  }
+}
+.search_box {
+  height: 39px;
+  overflow: hidden;
+  transition: all 0.3s;
+}
+.fade-enter-active,
+.fade-leave-active {
+  transition: opacity 0.5s;
+}
+.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {
+  opacity: 0;
 }
 </style>

+ 2 - 1
src/main.js

@@ -51,7 +51,8 @@ import ImportButton from '@/components/Common/import-button.vue'
 Vue.component('ImportButton', ImportButton)
 import CopyButton from '@/components/Common/copy-button.vue'
 Vue.component('CopyButton', CopyButton)
-
+import Collapse from '@/components/Common/collapse'
+Vue.component('Collapse', Collapse)
 Vue.prototype.$imageUrl = process.env.VUE_APP_BASE_API + 'img/get?key='
 
 /**

+ 3 - 3
src/styles/index.scss

@@ -127,9 +127,9 @@ div:focus {
     line-height: 28px;
   }
 
-  .el-col:last-child .el-form-item__content {
-    margin-left: 0 !important;
-  }
+  //.el-col:last-child .el-form-item__content {
+  //  margin-left: 0 !important;
+  //}
 
   // .el-form-item__label {
   //   font-size: 13px;

+ 20 - 19
src/views/basic_data/supplier/supplier_list.vue

@@ -2,24 +2,24 @@
   <div class="app-container">
     <div v-if="isShow">
       <!-- 筛选条件 -->
-      <div>
-        <el-form ref="searchForm" :model="searchForm" label-width="70px" size="mini" label-position="left">
-          <el-row :gutter="20">
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="名称" prop="name">
-                <el-input v-model="searchForm.name" placeholder="请输入名称"></el-input>
-              </el-form-item>
-            </el-col>
-
-            <el-col :xs="24" :sm="12" :lg="18" class="tr">
-              <el-form-item label="">
-                <el-button size="mini" @click="clearFn">清空</el-button>
-                <el-button size="mini" type="primary" @click="searchFn">搜索</el-button>
-              </el-form-item>
-            </el-col>
-          </el-row>
-        </el-form>
-      </div>
+      <Collapse :is-collapse="isCollapse" :screen-form="searchForm">
+        <template #right_btn>
+          <el-button size="mini" @click="clearFn">清空</el-button>
+          <el-button size="mini" type="primary" @click="searchFn">搜索</el-button>
+        </template>
+        <template #search>
+          <el-form ref="searchForm" :model="searchForm" label-width="70px" size="mini" label-position="left">
+            <el-row :gutter="20">
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="名称" prop="name">
+                  <el-input v-model="searchForm.name" placeholder="请输入名称"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-form>
+        </template>
+      </Collapse>
+      <div></div>
 
       <!-- 表格 -->
       <div class="mymain-container">
@@ -109,7 +109,8 @@ export default {
         name: ''
       },
       dataList: [],
-      infoList: {}
+      infoList: {},
+      isCollapse: true
     }
   },
 

+ 149 - 138
src/views/supply/apply/apply_list.vue

@@ -3,142 +3,150 @@
     <div v-show="!isShowDetail && !isShowExamine && !isShowForm && !isShowReturnForm">
       <!-- 筛选条件 -->
       <div class="screen-container">
-        <el-form ref="screenForm" :model="screenForm" label-width="100px" size="mini" label-position="left">
-          <el-row :gutter="20">
-            <el-col :xs="24" :sm="24" :lg="24">
-              <el-form-item prop="status" label-width="0">
-                <el-radio-group v-model="screenForm.status" @change="getList()">
-                  <el-radio-button label="">全部</el-radio-button>
-                  <el-radio-button v-for="(item, index) in statusList" :key="index" :label="item.value">{{
-                    item.label
-                  }}</el-radio-button>
-                </el-radio-group>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="发货申请单" prop="orderNum">
-                <el-input v-model="screenForm.orderNum" placeholder="请输入发货申请单" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="仓库名称" prop="warehouse">
-                <el-input v-model="screenForm.warehouse" placeholder="请输入仓库名称" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="经销商编码" prop="jxsNum">
-                <el-input v-model="screenForm.jxsNum" placeholder="请输入经销商编码" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="经销商名称" prop="jxsName">
-                <el-input v-model="screenForm.jxsName" placeholder="请输入经销商名称" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="发货申请日期" prop="date">
-                <el-date-picker
-                  v-model="screenForm.date"
-                  type="datetimerange"
-                  range-separator="至"
-                  style="width: 100%"
-                  value-format="yyyy-MM-dd HH:mm:ss"
-                  start-placeholder="开始日期"
-                  end-placeholder="结束日期"
-                />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="产品名称" prop="chName">
-                <el-input v-model="screenForm.chName" placeholder="请输入产品名称" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="规格型号" prop="model">
-                <el-input v-model="screenForm.model" placeholder="请输入规格型号" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="表头业务员" prop="k3ServiceId">
-                <el-select
-                  v-model="screenForm.k3ServiceId"
-                  placeholder="选择表头业务员"
-                  size="small"
-                  clearable
-                  filterable
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in salesmanList"
-                    :key="item.adminUserId"
-                    :label="item.nickName"
-                    :value="item.adminUserId"
-                  />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="表体业务员" prop="serviceId">
-                <el-select
-                  v-model="screenForm.serviceId"
-                  placeholder="选择表体业务员"
-                  size="mini"
-                  clearable
-                  filterable
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in salesmanList"
-                    :key="item.adminUserId"
-                    :label="item.nickName"
-                    :value="item.adminUserId"
-                  />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="订单类型" prop="orderType">
-                <el-select v-model="screenForm.orderType" placeholder="请选择" clearable>
-                  <el-option v-for="item in orderTypeList" :key="item.value" :label="item.label" :value="item.value" />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="订单号" prop="mainOrderId">
-                <el-input v-model="screenForm.mainOrderId" placeholder="请输入订单号" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="产品类别">
-                <el-select
-                  v-model="screenForm.categoryId"
-                  style="width: 100%"
-                  placeholder="选择产品类别"
-                  filterable
-                  clearable
-                >
-                  <el-option v-for="item in categoryList" :key="item.name" :label="item.name" :value="item.id" />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="审核人" prop="approvalName">
-                <el-input v-model="screenForm.approvalName" placeholder="请输入审核人" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="制单人" prop="createBy">
-                <el-input v-model="screenForm.createBy" placeholder="请输入制单人" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="24" :lg="24" class="tr">
-              <el-form-item label="">
-                <el-button @click="resetScreenForm">清空</el-button>
-                <el-button type="primary" @click="submitScreenForm">搜索</el-button>
-              </el-form-item>
-            </el-col>
-          </el-row>
-        </el-form>
+        <Collapse :is-collapse="isCollapse" :screen-form="screenForm">
+          <template #left_btn>
+            <el-radio-group v-model="screenForm.status" size="mini" @change="getList()">
+              <el-radio-button label="">全部</el-radio-button>
+              <el-radio-button v-for="(item, index) in statusList" :key="index" :label="item.value">{{
+                item.label
+              }}</el-radio-button>
+            </el-radio-group>
+          </template>
+          <template #right_btn>
+            <div>
+              <el-button size="mini" @click="resetScreenForm">清空</el-button>
+              <el-button type="primary" size="mini" @click="submitScreenForm">搜索</el-button>
+            </div>
+          </template>
+          <template #search>
+            <el-form ref="screenForm" :model="screenForm" label-width="100px" size="mini" label-position="left">
+              <el-row :gutter="20">
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="发货申请单" prop="orderNum">
+                    <el-input v-model="screenForm.orderNum" placeholder="请输入发货申请单" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="仓库名称" prop="warehouse">
+                    <el-input v-model="screenForm.warehouse" placeholder="请输入仓库名称" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="经销商编码" prop="jxsNum">
+                    <el-input v-model="screenForm.jxsNum" placeholder="请输入经销商编码" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="经销商名称" prop="jxsName">
+                    <el-input v-model="screenForm.jxsName" placeholder="请输入经销商名称" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="发货申请日期" prop="date">
+                    <el-date-picker
+                      v-model="screenForm.date"
+                      type="datetimerange"
+                      range-separator="至"
+                      style="width: 100%"
+                      value-format="yyyy-MM-dd HH:mm:ss"
+                      start-placeholder="开始日期"
+                      end-placeholder="结束日期"
+                    />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="产品名称" prop="chName">
+                    <el-input v-model="screenForm.chName" placeholder="请输入产品名称" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="规格型号" prop="model">
+                    <el-input v-model="screenForm.model" placeholder="请输入规格型号" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="表头业务员" prop="k3ServiceId">
+                    <el-select
+                      v-model="screenForm.k3ServiceId"
+                      placeholder="选择表头业务员"
+                      size="small"
+                      clearable
+                      filterable
+                      style="width: 100%"
+                    >
+                      <el-option
+                        v-for="item in salesmanList"
+                        :key="item.adminUserId"
+                        :label="item.nickName"
+                        :value="item.adminUserId"
+                      />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="表体业务员" prop="serviceId">
+                    <el-select
+                      v-model="screenForm.serviceId"
+                      placeholder="选择表体业务员"
+                      size="mini"
+                      clearable
+                      filterable
+                      style="width: 100%"
+                    >
+                      <el-option
+                        v-for="item in salesmanList"
+                        :key="item.adminUserId"
+                        :label="item.nickName"
+                        :value="item.adminUserId"
+                      />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="订单类型" prop="orderType">
+                    <el-select v-model="screenForm.orderType" placeholder="请选择" clearable>
+                      <el-option
+                        v-for="item in orderTypeList"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                      />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="订单号" prop="mainOrderId">
+                    <el-input v-model="screenForm.mainOrderId" placeholder="请输入订单号" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="产品类别">
+                    <el-select
+                      v-model="screenForm.categoryId"
+                      style="width: 100%"
+                      placeholder="选择产品类别"
+                      filterable
+                      clearable
+                    >
+                      <el-option v-for="item in categoryList" :key="item.name" :label="item.name" :value="item.id" />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="审核人" prop="approvalName">
+                    <el-input v-model="screenForm.approvalName" placeholder="请输入审核人" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="制单人" prop="createBy">
+                    <el-input v-model="screenForm.createBy" placeholder="请输入制单人" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6"> </el-col>
+              </el-row>
+            </el-form>
+          </template>
+        </Collapse>
       </div>
 
       <div class="mymain-container">
@@ -513,7 +521,8 @@ export default {
         status: '',
         remark: ''
       },
-      categoryList: []
+      categoryList: [],
+      isCollapse: true
     }
   },
 
@@ -630,7 +639,9 @@ export default {
       this.currentPage = 1
       this.getList()
     },
-
+    handleCollapse() {
+      this.isCollapse = !this.isCollapse
+    },
     // 重置筛选表单
     resetScreenForm() {
       this.$refs.screenForm.resetFields()

+ 159 - 151
src/views/supply/apply/engin_list.vue

@@ -3,156 +3,163 @@
     <div v-show="!isShowDetail && !isShowExamine && !isShowForm && !isShowReturnForm">
       <!-- 筛选条件 -->
       <div class="screen-container">
-        <el-form ref="screenForm" :model="screenForm" label-width="100px" size="mini" label-position="left">
-          <el-row :gutter="20">
-            <el-col :xs="24" :sm="24" :lg="24">
-              <el-form-item prop="status" label-width="0">
-                <el-radio-group v-model="screenForm.status" @change="getList()">
-                  <el-radio-button label="">全部</el-radio-button>
-                  <el-radio-button v-for="(item, index) in statusList" :key="index" :label="item.value">{{
-                    item.label
-                  }}</el-radio-button>
-                </el-radio-group>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="发货申请单" prop="orderNum">
-                <el-input v-model="screenForm.orderNum" placeholder="请输入发货申请单" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="仓库名称" prop="warehouse">
-                <el-input v-model="screenForm.warehouse" placeholder="请输入仓库名称" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="经销商编码" prop="jxsNum">
-                <el-input v-model="screenForm.jxsNum" placeholder="请输入经销商编码" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="经销商名称" prop="jxsName">
-                <el-input v-model="screenForm.jxsName" placeholder="请输入经销商名称" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="发货申请日期" prop="date">
-                <el-date-picker
-                  v-model="screenForm.date"
-                  type="datetimerange"
-                  range-separator="至"
-                  style="width: 100%"
-                  value-format="yyyy-MM-dd HH:mm:ss"
-                  start-placeholder="开始日期"
-                  end-placeholder="结束日期"
-                />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="产品名称" prop="chName">
-                <el-input v-model="screenForm.chName" placeholder="请输入产品名称" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="规格型号" prop="model">
-                <el-input v-model="screenForm.model" placeholder="请输入规格型号" />
-              </el-form-item>
-            </el-col>
-
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="订单类型" prop="orderType">
-                <el-select v-model="screenForm.orderType" placeholder="请选择" clearable>
-                  <el-option v-for="item in orderTypeList" :key="item.value" :label="item.label" :value="item.value" />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="订单号" prop="mainOrderId">
-                <el-input v-model="screenForm.mainOrderId" placeholder="请输入订单号" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="工程登录编号" prop="refEnginRecordNo">
-                <el-input v-model="screenForm.refEnginRecordNo" placeholder="请输入工程登录编号" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="使用单位" prop="refUseUnit">
-                <el-input v-model="screenForm.refUseUnit" placeholder="请输入使用单位" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="表头业务员" prop="k3ServiceId">
-                <el-select
-                  v-model="screenForm.k3ServiceId"
-                  placeholder="选择表头业务员"
-                  clearable
-                  filterable
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in salesmanList"
-                    :key="item.adminUserId"
-                    :label="item.nickName"
-                    :value="item.adminUserId"
-                  />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="表体业务员" prop="salesMan">
-                <el-select
-                  v-model="screenForm.salesMan"
-                  placeholder="选择表体业务员"
-                  clearable
-                  filterable
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in salesmanList"
-                    :key="item.adminUserId"
-                    :label="item.nickName"
-                    :value="item.adminUserId"
-                  />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="产品类别">
-                <el-select
-                  v-model="screenForm.categoryId"
-                  style="width: 100%"
-                  placeholder="选择产品类别"
-                  filterable
-                  clearable
-                >
-                  <el-option v-for="item in categoryList" :key="item.name" :label="item.name" :value="item.id" />
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="审核人" prop="approvalName">
-                <el-input v-model="screenForm.approvalName" placeholder="请输入审核人" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="区域" prop="refRegionWork">
-                <el-input v-model="screenForm.refRegionWork" placeholder="请输入区域" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="制单人" prop="createBy">
-                <el-input v-model="screenForm.createBy" placeholder="请输入制单人" />
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="24" :lg="24" class="tr">
-              <el-form-item label="">
-                <el-button @click="resetScreenForm">清空</el-button>
-                <el-button type="primary" @click="submitScreenForm">搜索</el-button>
-              </el-form-item>
-            </el-col>
-          </el-row>
-        </el-form>
+        <Collapse :is-collapse="isCollapse" :screen-form="screenForm">
+          <template #left_btn>
+            <el-radio-group size="mini" v-model="screenForm.status" @change="getList()">
+              <el-radio-button label="">全部</el-radio-button>
+              <el-radio-button v-for="(item, index) in statusList" :key="index" :label="item.value">{{
+                item.label
+              }}</el-radio-button>
+            </el-radio-group>
+          </template>
+          <template #right_btn>
+            <div>
+              <el-button size="mini" @click="resetScreenForm">清空</el-button>
+              <el-button type="primary" size="mini" @click="submitScreenForm">搜索</el-button>
+            </div>
+          </template>
+          <template #search>
+            <el-form ref="screenForm" :model="screenForm" label-width="100px" size="mini" label-position="left">
+              <el-row :gutter="20">
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="发货申请单" prop="orderNum">
+                    <el-input v-model="screenForm.orderNum" placeholder="请输入发货申请单" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="仓库名称" prop="warehouse">
+                    <el-input v-model="screenForm.warehouse" placeholder="请输入仓库名称" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="经销商编码" prop="jxsNum">
+                    <el-input v-model="screenForm.jxsNum" placeholder="请输入经销商编码" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="经销商名称" prop="jxsName">
+                    <el-input v-model="screenForm.jxsName" placeholder="请输入经销商名称" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="发货申请日期" prop="date">
+                    <el-date-picker
+                      v-model="screenForm.date"
+                      type="datetimerange"
+                      range-separator="至"
+                      style="width: 100%"
+                      value-format="yyyy-MM-dd HH:mm:ss"
+                      start-placeholder="开始日期"
+                      end-placeholder="结束日期"
+                    />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="产品名称" prop="chName">
+                    <el-input v-model="screenForm.chName" placeholder="请输入产品名称" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="规格型号" prop="model">
+                    <el-input v-model="screenForm.model" placeholder="请输入规格型号" />
+                  </el-form-item>
+                </el-col>
+
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="订单类型" prop="orderType">
+                    <el-select v-model="screenForm.orderType" placeholder="请选择" clearable>
+                      <el-option
+                        v-for="item in orderTypeList"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                      />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="订单号" prop="mainOrderId">
+                    <el-input v-model="screenForm.mainOrderId" placeholder="请输入订单号" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="工程登录编号" prop="refEnginRecordNo">
+                    <el-input v-model="screenForm.refEnginRecordNo" placeholder="请输入工程登录编号" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="使用单位" prop="refUseUnit">
+                    <el-input v-model="screenForm.refUseUnit" placeholder="请输入使用单位" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="表头业务员" prop="k3ServiceId">
+                    <el-select
+                      v-model="screenForm.k3ServiceId"
+                      placeholder="选择表头业务员"
+                      clearable
+                      filterable
+                      style="width: 100%"
+                    >
+                      <el-option
+                        v-for="item in salesmanList"
+                        :key="item.adminUserId"
+                        :label="item.nickName"
+                        :value="item.adminUserId"
+                      />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="表体业务员" prop="salesMan">
+                    <el-select
+                      v-model="screenForm.salesMan"
+                      placeholder="选择表体业务员"
+                      clearable
+                      filterable
+                      style="width: 100%"
+                    >
+                      <el-option
+                        v-for="item in salesmanList"
+                        :key="item.adminUserId"
+                        :label="item.nickName"
+                        :value="item.adminUserId"
+                      />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="产品类别">
+                    <el-select
+                      v-model="screenForm.categoryId"
+                      style="width: 100%"
+                      placeholder="选择产品类别"
+                      filterable
+                      clearable
+                    >
+                      <el-option v-for="item in categoryList" :key="item.name" :label="item.name" :value="item.id" />
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="审核人" prop="approvalName">
+                    <el-input v-model="screenForm.approvalName" placeholder="请输入审核人" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="区域" prop="refRegionWork">
+                    <el-input v-model="screenForm.refRegionWork" placeholder="请输入区域" />
+                  </el-form-item>
+                </el-col>
+                <el-col :xs="24" :sm="12" :lg="6">
+                  <el-form-item label="制单人" prop="createBy">
+                    <el-input v-model="screenForm.createBy" placeholder="请输入制单人" />
+                  </el-form-item>
+                </el-col>
+              </el-row>
+            </el-form>
+          </template>
+        </Collapse>
       </div>
 
       <div class="mymain-container">
@@ -548,7 +555,8 @@ export default {
         remark: ''
       },
       isShow: false,
-      categoryList: []
+      categoryList: [],
+      isCollapse: true
     }
   },
 

+ 79 - 75
src/views/supply/price/price_list.vue

@@ -2,80 +2,83 @@
   <div class="app-container">
     <!-- 筛选条件 -->
     <div>
-      <el-form ref="screenForm" :model="screenForm" label-width="70px" size="mini" label-position="left">
-        <el-row :gutter="20">
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="物料编码" prop="materialNumber">
-              <el-input v-model="screenForm.materialNumber" placeholder="请输入物料编码" />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="产品名称" prop="materialName">
-              <el-input v-model="screenForm.materialName" placeholder="请输入产品名称" />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="产品编码" prop="materialOldNumber">
-              <el-input v-model="screenForm.materialOldNumber" placeholder="请输入产品编码" />
-            </el-form-item>
-          </el-col>
-          <!--          <el-col :xs="24" :sm="12" :lg="6">-->
-          <!--            <el-form-item label="生效日期" prop="startDate">-->
-          <!--              <el-date-picker-->
-          <!--                v-model="screenForm.startDate"-->
-          <!--                type="datetime"-->
-          <!--                placeholder="请输入生效日期"-->
-          <!--                value-format="yyyy-MM-dd HH:mm:ss"-->
-          <!--              >-->
-          <!--              </el-date-picker>-->
-          <!--            </el-form-item>-->
-          <!--          </el-col>-->
-          <!--          <el-col :xs="24" :sm="12" :lg="6">-->
-          <!--            <el-form-item label="失效日期" prop="endDate">-->
-          <!--              <el-date-picker-->
-          <!--                v-model="screenForm.endDate"-->
-          <!--                type="datetime"-->
-          <!--                placeholder="请输入生效日期"-->
-          <!--                value-format="yyyy-MM-dd HH:mm:ss "-->
-          <!--              >-->
-          <!--              </el-date-picker>-->
-          <!--            </el-form-item>-->
-          <!--          </el-col>-->
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="销售类型" prop="saleTypeId">
-              <el-select v-model="screenForm.saleTypeId" filterable placeholder="选择销售类型" style="width: 100%">
-                <el-option label="全部" value="" />
-                <el-option v-for="item in ztypeList" :key="item.id" :label="item.saleName" :value="item.id" />
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="产品类别" prop="k3CategoryNumber">
-              <el-select v-model="screenForm.k3CategoryNumber" placeholder="请选择产品类别">
-                <el-option label="全部" value="" />
-                <el-option v-for="item in dictList" :label="item.name" :value="item.number" />
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="规格型号" prop="specification">
-              <el-input v-model="screenForm.specification" placeholder="请输入规格型号" />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="备注" prop="remark">
-              <el-input v-model="screenForm.remark" placeholder="请输入备注" />
-            </el-form-item>
-          </el-col>
-
-          <el-col :xs="24" :sm="24" :lg="24" class="tr">
-            <el-form-item label="">
-              <el-button size="mini" @click="resetScreenForm">清空</el-button>
-              <el-button size="mini" type="primary" @click="submitScreenForm">搜索</el-button>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
+      <Collapse :is-collapse="isCollapse" :screen-form="screenForm">
+        <template #right_btn>
+          <div>
+            <el-button size="mini" @click="resetScreenForm">清空</el-button>
+            <el-button type="primary" size="mini" @click="submitScreenForm">搜索</el-button>
+          </div>
+        </template>
+        <template #search>
+          <el-form ref="screenForm" :model="screenForm" label-width="70px" size="mini" label-position="left">
+            <el-row :gutter="20">
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="物料编码" prop="materialNumber">
+                  <el-input v-model="screenForm.materialNumber" placeholder="请输入物料编码" />
+                </el-form-item>
+              </el-col>
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="产品名称" prop="materialName">
+                  <el-input v-model="screenForm.materialName" placeholder="请输入产品名称" />
+                </el-form-item>
+              </el-col>
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="产品编码" prop="materialOldNumber">
+                  <el-input v-model="screenForm.materialOldNumber" placeholder="请输入产品编码" />
+                </el-form-item>
+              </el-col>
+              <!--          <el-col :xs="24" :sm="12" :lg="6">-->
+              <!--            <el-form-item label="生效日期" prop="startDate">-->
+              <!--              <el-date-picker-->
+              <!--                v-model="screenForm.startDate"-->
+              <!--                type="datetime"-->
+              <!--                placeholder="请输入生效日期"-->
+              <!--                value-format="yyyy-MM-dd HH:mm:ss"-->
+              <!--              >-->
+              <!--              </el-date-picker>-->
+              <!--            </el-form-item>-->
+              <!--          </el-col>-->
+              <!--          <el-col :xs="24" :sm="12" :lg="6">-->
+              <!--            <el-form-item label="失效日期" prop="endDate">-->
+              <!--              <el-date-picker-->
+              <!--                v-model="screenForm.endDate"-->
+              <!--                type="datetime"-->
+              <!--                placeholder="请输入生效日期"-->
+              <!--                value-format="yyyy-MM-dd HH:mm:ss "-->
+              <!--              >-->
+              <!--              </el-date-picker>-->
+              <!--            </el-form-item>-->
+              <!--          </el-col>-->
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="销售类型" prop="saleTypeId">
+                  <el-select v-model="screenForm.saleTypeId" filterable placeholder="选择销售类型" style="width: 100%">
+                    <el-option label="全部" value="" />
+                    <el-option v-for="item in ztypeList" :key="item.id" :label="item.saleName" :value="item.id" />
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="产品类别" prop="k3CategoryNumber">
+                  <el-select style="width: 100%" v-model="screenForm.k3CategoryNumber" placeholder="请选择产品类别">
+                    <el-option label="全部" value="" />
+                    <el-option v-for="item in dictList" :label="item.name" :key="item" :value="item.number" />
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="规格型号" prop="specification">
+                  <el-input v-model="screenForm.specification" placeholder="请输入规格型号" />
+                </el-form-item>
+              </el-col>
+              <el-col :xs="24" :sm="12" :lg="6">
+                <el-form-item label="备注" prop="remark">
+                  <el-input v-model="screenForm.remark" placeholder="请输入备注" />
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-form>
+        </template>
+      </Collapse>
     </div>
     <!-- 按钮 -->
     <div class="btn-group clearfix">
@@ -271,7 +274,8 @@ export default {
         remark: ''
       },
       ztypeList: [],
-      dictList: {}
+      dictList: {},
+      isCollapse: true
     }
   },
   mounted() {