guangFoInventory.vue 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  1. <template>
  2. <div class="app-container">
  3. <div>
  4. <!-- 筛选条件 -->
  5. <Collapse :screen-form="searchForm">
  6. <template #right_btn>
  7. <el-button size="mini" @click="clearFn">清空</el-button>
  8. <el-button size="mini" type="primary" @click="searchFn">搜索</el-button>
  9. </template>
  10. <template #search>
  11. <el-form ref="searchForm" :model="searchForm" label-width="100px" size="mini" label-position="left">
  12. <el-row :gutter="20">
  13. <el-col :xs="24" :sm="12" :lg="6">
  14. <el-form-item label="仓库名称" prop="correspondName">
  15. <el-input v-model="searchForm.correspondName" placeholder="请输入经销商名称"></el-input>
  16. </el-form-item>
  17. </el-col>
  18. <el-col :xs="24" :sm="12" :lg="6">
  19. <el-form-item label="物料名称" prop="materialName">
  20. <el-input v-model="searchForm.materialName" placeholder="请输入经销商名称"></el-input>
  21. </el-form-item>
  22. </el-col>
  23. <el-col :xs="24" :sm="12" :lg="6">
  24. <el-form-item label="物料编码" prop="materialNumber">
  25. <el-input v-model="searchForm.materialNumber" placeholder="请输入经销商名称"></el-input>
  26. </el-form-item>
  27. </el-col>
  28. <el-col :xs="24" :sm="12" :lg="6">
  29. <el-form-item label="规格型号" prop="specification">
  30. <el-input v-model="searchForm.specification" placeholder="请输入经销商名称"></el-input>
  31. </el-form-item>
  32. </el-col>
  33. </el-row>
  34. </el-form>
  35. </template>
  36. </Collapse>
  37. <!-- 按钮 -->
  38. <div class="btn-group clearfix">
  39. <div class="fl"></div>
  40. <div class="fr">
  41. <ExportButton :exUrl="'stock/startAcc/stockExport'" :exParams="exParams" />
  42. </div>
  43. </div>
  44. <div class="mymain-container">
  45. <!-- 列表 -->
  46. <div class="table">
  47. <el-table
  48. v-loading="listLoading"
  49. :data="dataList"
  50. element-loading-text="Loading"
  51. border
  52. fit
  53. highlight-current-row
  54. stripe
  55. >
  56. <el-table-column align="left" label="仓库名称" prop="stockName" min-width="160" show-overflow-tooltip>
  57. </el-table-column>
  58. <el-table-column align="left" label="存货类别" prop="categoryName" min-width="160" show-overflow-tooltip>
  59. </el-table-column>
  60. <el-table-column align="left" label="物料编码" prop="materialNumber" min-width="160" show-overflow-tooltip>
  61. </el-table-column>
  62. <el-table-column
  63. align="left"
  64. label="产品编码"
  65. prop="materialOldNumber"
  66. min-width="160"
  67. show-overflow-tooltip
  68. >
  69. </el-table-column>
  70. <el-table-column align="left" label="物料名称" prop="materialName" min-width="160" show-overflow-tooltip>
  71. </el-table-column>
  72. <el-table-column align="left" label="规格型号" prop="spec" min-width="160" show-overflow-tooltip>
  73. </el-table-column>
  74. <el-table-column align="left" label="广州可用数量" prop="gzOnNumber" min-width="160" show-overflow-tooltip>
  75. </el-table-column>
  76. <el-table-column align="left" label="佛山可用数量" prop="fsOnNumber" min-width="160" show-overflow-tooltip>
  77. </el-table-column>
  78. <el-table-column
  79. align="left"
  80. label="广州开单未提数量"
  81. prop="gzNeverNumber"
  82. min-width="160"
  83. show-overflow-tooltip
  84. >
  85. </el-table-column>
  86. <el-table-column
  87. align="left"
  88. label="佛山开单未提数量"
  89. prop="fsNeverNumber"
  90. min-width="160"
  91. show-overflow-tooltip
  92. >
  93. </el-table-column>
  94. <el-table-column align="left" label="广州结存数量" prop="gzNumber" min-width="160" show-overflow-tooltip>
  95. </el-table-column>
  96. <el-table-column align="left" label="佛山结存数量" prop="fsNumber" min-width="160" show-overflow-tooltip>
  97. </el-table-column>
  98. </el-table>
  99. </div>
  100. <!-- 分页 -->
  101. <div class="fr">
  102. <el-pagination
  103. @size-change="handleSizeChange"
  104. @current-change="handleCurrentChange"
  105. :current-page="currentPage"
  106. :page-sizes="[10, 20, 30, 50]"
  107. :page-size="pageSize"
  108. layout="total, sizes, prev, pager, next, jumper"
  109. :total="listTotal"
  110. >
  111. </el-pagination>
  112. </div>
  113. </div>
  114. </div>
  115. </div>
  116. </template>
  117. <script>
  118. import { stockStartAccStock } from '@/api/guangFoInventory'
  119. export default {
  120. components: {},
  121. data() {
  122. return {
  123. currentPage: 1, // 当前页码
  124. pageSize: 10, // 每页数量
  125. listTotal: 0, // 列表
  126. listLoading: false, // 列表加载loading
  127. searchForm: {
  128. correspondName: '',
  129. materialName: '',
  130. materialNumber: '',
  131. specification: ''
  132. },
  133. dataList: [],
  134. statusList: [],
  135. currentStatus: ''
  136. }
  137. },
  138. computed: {
  139. exParams() {
  140. return {
  141. ...this.searchForm
  142. }
  143. }
  144. },
  145. async created() {
  146. await this.getList({ pageNumber: 1, pageSize: 10 })
  147. },
  148. methods: {
  149. // 更改每页数量
  150. handleSizeChange(val) {
  151. this.pageSize = val
  152. this.getList({
  153. ...this.searchForm,
  154. pageNumber: this.currentPage,
  155. pageSize: this.pageSize
  156. })
  157. },
  158. // 更改当前页
  159. handleCurrentChange(val) {
  160. this.currentPage = val
  161. this.getList({
  162. ...this.searchForm,
  163. pageNumber: this.currentPage,
  164. pageSize: this.pageSize
  165. })
  166. },
  167. //搜索功能
  168. async searchFn() {
  169. await this.getList({
  170. ...this.searchForm,
  171. pageNumber: 1,
  172. pageSize: this.pageSize
  173. })
  174. },
  175. //重置
  176. clearFn() {
  177. this.$refs.searchForm.resetFields()
  178. },
  179. //获取列表数据
  180. async getList(data) {
  181. const res = await stockStartAccStock(data)
  182. this.dataList = res.data.records
  183. this.listTotal = res.data.total
  184. }
  185. }
  186. }
  187. </script>
  188. <style lang="scss" scoped>
  189. .selectStyle {
  190. width: 100%;
  191. }
  192. ::v-deep .el-textarea__inner {
  193. resize: none;
  194. }
  195. ::v-deep .el-form {
  196. .inputStyle {
  197. width: 80%;
  198. }
  199. }
  200. ::v-deep .dialog-footer {
  201. display: flex;
  202. justify-content: center;
  203. }
  204. ::v-deep .el-dialog__header {
  205. background-color: #dddddd;
  206. }
  207. .inp {
  208. margin: 0 12px;
  209. }
  210. .right {
  211. margin-top: 12px;
  212. float: right;
  213. }
  214. .table {
  215. margin-top: 12px;
  216. }
  217. .search {
  218. display: flex;
  219. margin-top: 12px;
  220. ::v-deep .el-input {
  221. width: 50%;
  222. margin-right: 12px;
  223. }
  224. }
  225. .import-btn {
  226. display: inline-block;
  227. margin-left: 10px;
  228. }
  229. </style>