assessconfig.vue 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. <template>
  2. <div class="assess-config">
  3. <div class="assess-header">
  4. <div class="query mg-b-8">
  5. <div class="query-items">
  6. <div class="query-item">
  7. <div class="lable">模型:</div>
  8. <div class="search-input">
  9. <el-input v-model="content"></el-input>
  10. </div>
  11. </div>
  12. </div>
  13. <div class="query-actions">
  14. <button class="btn green mg-l-30" @click="onClickSearch">搜索</button>
  15. <button class="btn green mg-l-30" @click="onClickCreate">新增</button>
  16. </div>
  17. </div>
  18. </div>
  19. <div class="assess-bottom">
  20. <ComTable :data="tableData" height="85vh"></ComTable>
  21. </div>
  22. <div>
  23. <el-dialog
  24. title="新增模型"
  25. v-model="isvisiable"
  26. width="45%"
  27. top="15vh"
  28. custom-class="modal"
  29. :close-on-click-modal="false"
  30. :before-close="onClickDialogClose"
  31. >
  32. <popup-create
  33. :data="editform"
  34. :station="stations"
  35. @onClick="onClickComplete"
  36. />
  37. </el-dialog>
  38. </div>
  39. </div>
  40. </template>
  41. <script>
  42. import ComTable from "@/components/coms/table/table-unpage.vue";
  43. import PopupCreate from "./compoenets/popupcreate.vue";
  44. export default {
  45. components: { ComTable, PopupCreate },
  46. data() {
  47. const that = this;
  48. return {
  49. content: "",
  50. stations: [],
  51. editform: {},
  52. isvisiable: false,
  53. tableData: {
  54. column: [
  55. {
  56. name: "名称",
  57. field: "name",
  58. is_light: false,
  59. },
  60. {
  61. name: "时间",
  62. field: "createdate",
  63. is_light: false,
  64. },
  65. {
  66. name: "场站",
  67. field: "wpids",
  68. is_num: false,
  69. is_light: false,
  70. },
  71. {
  72. name: "是否启用",
  73. field: "isenable",
  74. is_num: false,
  75. is_light: false,
  76. },
  77. {
  78. name: "操作",
  79. is_num: false,
  80. is_light: false,
  81. width: 100,
  82. template: () => {
  83. return (
  84. "<el-button type='text' style='cursor: pointer;' value='edit'>编辑</el-button>&nbsp" +
  85. "<el-button type='text' style='cursor: pointer;' value='delete'>删除</el-button>&nbsp" +
  86. "<el-button type='text' style='cursor: pointer;' value='config'>配置</el-button>&nbsp"
  87. );
  88. },
  89. click(e, row) {
  90. that.onClickOption(e, row);
  91. },
  92. },
  93. ],
  94. data: [],
  95. },
  96. };
  97. },
  98. created() {
  99. this.requestList();
  100. this.requestStations();
  101. },
  102. methods: {
  103. // 新增按钮
  104. onClickCreate() {
  105. this.isvisiable = true;
  106. },
  107. // 搜索按钮
  108. onClickSearch() {
  109. this.requestList();
  110. },
  111. // 弹窗右上角关闭按钮
  112. onClickDialogClose() {
  113. this.isvisiable = false;
  114. this.editform = {};
  115. },
  116. // 操作按钮
  117. onClickOption(e, row) {
  118. let that = this;
  119. if ("delete" == e.target.getAttribute("value")) {
  120. that
  121. .$confirm("确认删除?")
  122. .then((_) => {
  123. that.requestDelete(row);
  124. })
  125. .catch((_) => {});
  126. }
  127. if ("edit" == e.target.getAttribute("value")) {
  128. that.isvisiable = true;
  129. that.editform = row;
  130. }
  131. },
  132. onClickComplete(value) {
  133. this.isvisiable = false;
  134. this.requestList();
  135. },
  136. // 获取模型数据列表
  137. requestList() {
  138. let that = this;
  139. that.API.requestData({
  140. method: "GET",
  141. baseURL: "http://10.155.32.4:8034/",
  142. subUrl: "/evaluation/modelMainList",
  143. data: {
  144. name: that.content,
  145. },
  146. success(res) {
  147. if (res.code == 200) that.tableData.data = res.data;
  148. for (var i in that.tableData.data) {
  149. that.tableData.data[i].createdate = new Date(
  150. res.data[i].createdate
  151. ).formatDate("yyyy-MM-dd");
  152. that.tableData.data[i].isenable =
  153. res.data[i].isenable == 1 ? "是" : "否";
  154. }
  155. },
  156. });
  157. },
  158. requestStations() {
  159. let that = this;
  160. that.API.requestData({
  161. method: "GET",
  162. subUrl: "powercompare/windfarmAllAjax",
  163. success(res) {
  164. let array = [];
  165. res.data.forEach((item) => {
  166. if (item.id.indexOf("FDC") !== -1) {
  167. array.push(item);
  168. }
  169. });
  170. that.stations = array;
  171. },
  172. });
  173. },
  174. // 删除
  175. requestDelete(row) {
  176. let that = this;
  177. that.API.requestData({
  178. method: "DELETE",
  179. baseURL: "http://10.155.32.4:8034/",
  180. subUrl: "/evaluation/delModelMain/" + row.id,
  181. success(res) {
  182. if (res.code == 200) that.requestList();
  183. },
  184. });
  185. },
  186. },
  187. };
  188. </script>
  189. <style lang="less" scope>
  190. .assess-config {
  191. display: flex;
  192. flex-direction: column;
  193. .el-select {
  194. width: 200px;
  195. }
  196. .el-input {
  197. width: 200px;
  198. }
  199. .mg-l-30 {
  200. margin-left: 30px;
  201. }
  202. .assess-header {
  203. display: flex;
  204. flex-direction: row;
  205. justify-content: flex-start;
  206. }
  207. }
  208. </style>