fwjsl.vue 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. <template>
  2. <div>
  3. <div class="query mg-b-8">
  4. <div class="query-items">
  5. <div class="query-item">
  6. <div class="lable">开始日期:</div>
  7. <div class="search-input">
  8. <el-date-picker
  9. v-model="value1"
  10. @change="BeginChange(value1)"
  11. type="date"
  12. value-format="YYYY-MM-DD"
  13. placeholder="选择日期"
  14. popper-class="date-select"
  15. >
  16. </el-date-picker>
  17. </div>
  18. </div>
  19. <div class="query-item">
  20. <div class="lable">结束日期:</div>
  21. <div class="search-input">
  22. <el-date-picker
  23. v-model="value2"
  24. @change="EndChange(value2)"
  25. type="date"
  26. value-format="YYYY-MM-DD"
  27. placeholder="选择日期"
  28. popper-class="date-select"
  29. >
  30. </el-date-picker>
  31. <div class="unit svg-icon svg-icon-gray">
  32. <svg-icon :svgid="''" />
  33. </div>
  34. </div>
  35. </div>
  36. </div>
  37. <div class="query-actions">
  38. <button class="btn green" @click="handleSubmit">计算</button>
  39. </div>
  40. </div>
  41. <div class="table-box">
  42. <ComTable
  43. :data="tableData"
  44. :pageSize="20"
  45. height="85vh"
  46. v-loading="tableLoading"
  47. element-loading-text="拼命加载中"
  48. element-loading-background="rgba(0, 0, 0, 0.8)"
  49. ></ComTable>
  50. </div>
  51. </div>
  52. </template>
  53. <script>
  54. import ComTable from "@/components/coms/table/table.vue";
  55. export default {
  56. name: "fwjsl",
  57. components: { ComTable },
  58. data() {
  59. return {
  60. value1: "",
  61. value2: "",
  62. tableData: {
  63. column: [
  64. {
  65. name: "单位",
  66. field: "unit",
  67. is_num: false,
  68. is_light: false,
  69. sortable: true
  70. },
  71. {
  72. name: "5分钟 / 复位次数",
  73. field: "five",
  74. is_num: false,
  75. is_light: false,
  76. sortable: true
  77. },
  78. {
  79. name: "5分钟 / 复位率",
  80. field: "fives",
  81. is_num: false,
  82. is_light: false,
  83. sortable: true
  84. },
  85. {
  86. name: "10分钟 / 复位次数",
  87. field: "ten",
  88. is_num: false,
  89. is_light: false,
  90. sortable: true
  91. },
  92. {
  93. name: "10分钟 / 复位率",
  94. field: "tens",
  95. is_num: false,
  96. is_light: false,
  97. sortable: true
  98. },
  99. {
  100. name: "15分钟 / 复位次数",
  101. field: "fifteen",
  102. is_num: false,
  103. is_light: false,
  104. sortable: true
  105. },
  106. {
  107. name: "15分钟 / 复位率",
  108. field: "fifteens",
  109. is_num: false,
  110. is_light: false,
  111. sortable: true
  112. },
  113. {
  114. name: "20分钟 / 复位次数",
  115. field: "twenty",
  116. is_num: false,
  117. is_light: false,
  118. sortable: true
  119. },
  120. {
  121. name: "20分钟 / 复位率",
  122. field: "twentys",
  123. is_num: false,
  124. is_light: false,
  125. sortable: true
  126. }
  127. ],
  128. data: []
  129. },
  130. tableLoading: true
  131. };
  132. },
  133. mounted() {
  134. // 获取表格数据
  135. this.getTable();
  136. },
  137. created() {
  138. this.value1 = this.getTime(1);
  139. this.value2 = this.getTime(2);
  140. },
  141. methods: {
  142. // 获取表格数据
  143. getTable() {
  144. let that = this;
  145. that.tableLoading = true;
  146. that.API.requestData({
  147. method: "GET",
  148. baseURL: "http://10.155.32.4:8034/",
  149. subUrl: "/threerate/fwjsl",
  150. data: {
  151. beginDate: this.value1,
  152. endDate: this.value2
  153. },
  154. success(res) {
  155. that.tableLoading = false;
  156. if (res.code === 200) {
  157. var data = [];
  158. res.data.forEach((item, index) => {
  159. data[index] = {
  160. unit: item.wpid,
  161. five: item.wfz,
  162. fives: item.wfzfwl,
  163. ten: item.sfz,
  164. tens: item.sfzfwl,
  165. fifteen: item.swfz,
  166. fifteens: item.swfzfwl,
  167. twenty: item.esfz,
  168. twentys: item.esfzfwl,
  169. is_light: false
  170. };
  171. });
  172. that.tableData.data = data;
  173. }
  174. }
  175. });
  176. },
  177. BeginChange(vl) {
  178. this.value1 = vl;
  179. },
  180. EndChange(vl) {
  181. this.value2 = vl;
  182. },
  183. // 计算事件
  184. handleSubmit() {
  185. if (this.value1 == "" || this.value1 == null) {
  186. this.$message.error("请选择开始时间");
  187. } else if (this.value2 == "" || this.value2 == null) {
  188. this.$message.error("请选择结束时间");
  189. } else {
  190. this.getTable();
  191. }
  192. },
  193. // 默认开始时间
  194. getTime(val) {
  195. //时间戳处理,val=1是默认开始时间(当前月第一天),val=2是默认结束时间(今天)
  196. var date = new Date();
  197. var year = date.getFullYear(),
  198. month = date.getMonth() + 1,
  199. day = date.getDate();
  200. month >= 1 && month <= 9 ? (month = "0" + month) : "";
  201. day >= 0 && day <= 9 ? (day = "0" + day) : "";
  202. var begin = year + "-" + month + "-01";
  203. var end = year + "-" + month + "-" + day;
  204. if (val == 1) {
  205. return begin;
  206. } else if (val == 2) {
  207. return end;
  208. }
  209. }
  210. }
  211. };
  212. </script>
  213. <style lang="less" scope>
  214. @titleGray: #9ca5a8;
  215. @rowGray: #606769;
  216. @darkBack: #536268;
  217. </style>