index.vue 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. <template>
  2. <div class="app-container">
  3. <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
  4. <el-form-item>
  5. <el-input
  6. v-model="queryParams.applyCustomName"
  7. placeholder="请输入企业名称"
  8. clearable
  9. size="small"
  10. style="width: 240px"
  11. @keyup.enter.native="handleQuery"
  12. />
  13. </el-form-item>
  14. <el-form-item>
  15. <el-select
  16. v-model="queryParams.applyStatus"
  17. placeholder="申请状态"
  18. clearable
  19. size="small"
  20. style="width: 240px"
  21. >
  22. <el-option
  23. v-for="dict in statusOptions"
  24. :key="dict.dictValue"
  25. :label="dict.dictLabel"
  26. :value="dict.dictValue"
  27. />
  28. </el-select>
  29. </el-form-item>
  30. <el-form-item>
  31. <el-date-picker
  32. v-model="queryParams.applyDate"
  33. value-format="yyyy-MM-dd"
  34. type="date"
  35. placeholder="选择日期">
  36. </el-date-picker>
  37. </el-form-item>
  38. <el-form-item>
  39. <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
  40. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
  41. </el-form-item>
  42. </el-form>
  43. <el-table v-loading="loading" :data="list">
  44. <el-table-column label="序号" type="index" width="50" align="center" />
  45. <el-table-column label="认购企业" align="center" prop="applyCustomName" />
  46. <el-table-column label="认购数量(kg)" align="center" prop="amount"/>
  47. <el-table-column label="备注说明" align="center" prop="remark"/>
  48. <el-table-column label="申请日期" align="center" prop="applyDate">
  49. <template slot-scope="scope">
  50. <span>{{ parseTime(scope.row.applyDate) }}</span>
  51. </template>
  52. </el-table-column>
  53. <el-table-column label="申请状态" align="center" prop="applyStatus" :formatter="statusFormat"></el-table-column>
  54. <el-table-column
  55. label="操作"
  56. align="center"
  57. width="280"
  58. class-name="small-padding fixed-width"
  59. >
  60. <template slot-scope="scope">
  61. <el-button
  62. size="mini"
  63. type="primary"
  64. icon="el-icon-view"
  65. v-if="scope.row.applyStatus != 1"
  66. @click="handleCreate(scope.row)"
  67. >生成订单</el-button>
  68. <el-button
  69. size="mini"
  70. type="danger"
  71. @click="handleDelete(scope.row)"
  72. icon="el-icon-delete"
  73. >删除</el-button>
  74. </template>
  75. </el-table-column>
  76. </el-table>
  77. <pagination
  78. v-show="total>0"
  79. :total="total"
  80. :page.sync="queryParams.pageNo"
  81. :limit.sync="queryParams.pageSize"
  82. @pagination="getList"
  83. />
  84. <add-mobiel
  85. v-if="modal.visibleModal"
  86. :title="modal.title"
  87. :action="modal.action"
  88. :visible="modal.visibleModal"
  89. :selectRow="modal.selectRow"
  90. @closeModal="closeModal">
  91. </add-mobiel>
  92. </div>
  93. </template>
  94. <script>
  95. import { listApplyList , delApplyItem , areaTree} from "@/api/order/subscription";
  96. import addMobiel from './modal/addMobiel'
  97. export default {
  98. name: "subscription",
  99. components: {
  100. addMobiel
  101. },
  102. data() {
  103. return {
  104. // 遮罩层
  105. loading: false,
  106. // 显示搜索条件
  107. showSearch: true,
  108. // 总条数
  109. total: 0,
  110. // 表格数据
  111. list: null,
  112. // 状态数据字典
  113. statusOptions: [],
  114. // 表单参数
  115. form: {},
  116. //弹出层
  117. modal:{
  118. action:'',
  119. title:'',
  120. visibleModal:false,
  121. selectRow:null
  122. },
  123. // 查询参数
  124. queryParams: {
  125. pageNo: 1,
  126. pageSize: 10
  127. }
  128. };
  129. },
  130. created() {
  131. //申请状态字典
  132. this.getDicts("order_searchStatus").then(response => {
  133. this.statusOptions = response.data;
  134. });
  135. this.getList();
  136. },
  137. methods: {
  138. /** 查询列表 */
  139. getList() {
  140. this.loading = true;
  141. listApplyList(this.queryParams).then(res => {
  142. if(res.retHead.errCode == 0){
  143. this.list = res.retBody
  144. this.total = res.retHead.total;
  145. }
  146. this.loading = false;
  147. }
  148. );
  149. },
  150. /** 搜索按钮操作 */
  151. handleQuery() {
  152. this.queryParams.pageNo = 1;
  153. this.getList();
  154. },
  155. /** 重置按钮操作 */
  156. resetQuery() {
  157. this.queryParams = {
  158. pageNo: 1,
  159. pageSize: 10
  160. }
  161. this.handleQuery();
  162. },
  163. /** 查看按钮操作 */
  164. handleCreate(item){
  165. this.modal.visibleModal = true
  166. this.modal.title = '订单生成'
  167. this.modal.action = 'edit'
  168. this.modal.selectRow = item
  169. },
  170. /** 删除按钮操作 */
  171. handleDelete(item) {
  172. console.log(item)
  173. this.$confirm('是否确认删除该数据项?', "警告", {
  174. confirmButtonText: "确定",
  175. cancelButtonText: "取消",
  176. type: "warning"
  177. }).then(function() {
  178. return delApplyItem(item.guid);
  179. }).then(() => {
  180. this.getList();
  181. this.msgSuccess("删除成功");
  182. }).catch(function() {});
  183. },
  184. // 字典状态字典翻译
  185. statusFormat(row, column) {
  186. return this.selectDictLabel(this.statusOptions, row.applyStatus);
  187. },
  188. //窗口关闭
  189. closeModal(flag = false){
  190. this.modal.visibleModal = false
  191. flag && this.getList()
  192. }
  193. }
  194. };
  195. </script>