powerQualitySystem.vue 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784
  1. <template>
  2. <!-- 动力系统维护 -->
  3. <div class="powerMonitoringDayData">
  4. <div class="box">
  5. <div class="box-top">
  6. <el-form
  7. style="overflow: hidden;"
  8. :style="filterForm.show ? null : { height: '0px' }"
  9. size="mini"
  10. label-width="85px"
  11. >
  12. <el-row>
  13. <el-col :span="6">
  14. <el-form-item label="动力系统代码">
  15. <el-input clearable
  16. v-model="filterForm.data.powercode"
  17. placeholder=""
  18. style="width: 100%;"
  19. @keyup.enter.native="getTableData(1)"
  20. ></el-input>
  21. </el-form-item>
  22. </el-col>
  23. <el-col :span="6">
  24. <el-form-item label="动力系统名称">
  25. <el-input clearable
  26. v-model="filterForm.data.powername"
  27. placeholder=""
  28. style="width: 100%;"
  29. @keyup.enter.native="getTableData(1)"
  30. ></el-input>
  31. </el-form-item>
  32. </el-col>
  33. <el-col :span="6">
  34. <el-form-item label="监测部门">
  35. <el-select
  36. filterable clearable
  37. v-model="filterForm.data.powerdetecdepartment"
  38. placeholder=""
  39. style="width: 100%;"
  40. >
  41. <el-option
  42. v-for="item of nameObj.powerdetecdepartment.arr"
  43. :key="item.id"
  44. :value="item.id"
  45. :label="item.name"
  46. ></el-option>
  47. </el-select>
  48. </el-form-item>
  49. </el-col>
  50. <el-col :span="6">
  51. <el-form-item label="排序">
  52. <el-input clearable
  53. v-model="filterForm.data.sort"
  54. placeholder=""
  55. style="width: 100%;"
  56. @keyup.enter.native="getTableData(1)"
  57. ></el-input>
  58. </el-form-item>
  59. </el-col>
  60. </el-row>
  61. <el-row>
  62. <el-col :span="6">
  63. <el-form-item label="使用状态">
  64. <el-select
  65. filterable clearable
  66. v-model="filterForm.data.usestate"
  67. placeholder=""
  68. style="width: 100%;"
  69. >
  70. <el-option
  71. v-for="item of nameObj.usestate.arr"
  72. :key="item.id"
  73. :value="item.id"
  74. :label="item.name"
  75. ></el-option>
  76. </el-select>
  77. </el-form-item>
  78. </el-col>
  79. </el-row>
  80. </el-form>
  81. <div class="box-top-gjl">
  82. <el-button
  83. class="button"
  84. type="primary"
  85. size="mini"
  86. icon="el-icon-plus"
  87. v-privilege="activeMenu + 'ADD'"
  88. @click="but_add"
  89. >新增</el-button>
  90. <el-button
  91. type="primary"
  92. size="mini"
  93. v-privilege="activeMenu + 'PUT'"
  94. @click="but_edit_plural()"
  95. >修改</el-button>
  96. <el-button
  97. type="danger"
  98. size="mini"
  99. v-privilege="activeMenu + 'DELETE'"
  100. @click="but_del()"
  101. >删除</el-button>
  102. <div style="float:right; text-align: right;">
  103. <el-button
  104. class="button"
  105. type="primary"
  106. size="mini"
  107. icon="el-icon-search"
  108. v-privilege="activeMenu + 'QUERY'"
  109. @click="getTableData(1)"
  110. >查询</el-button>
  111. <el-button
  112. class="button"
  113. type="primary"
  114. size="mini"
  115. icon="el-icon-refresh"
  116. v-privilege="activeMenu + 'QUERY'"
  117. @click="tableDataCancel();"
  118. >重置</el-button>
  119. <el-button
  120. size="mini"
  121. :icon="filterForm.show ? 'el-icon-caret-top' : 'el-icon-caret-bottom'"
  122. :title="filterForm.show ? '收起搜索区' : '展开搜索区'"
  123. @click="filterForm.show = !filterForm.show;
  124. $nextTick(() => {
  125. singleTableHeight = getRoleHeight($refs['singleTable'].$el) - 45;
  126. }
  127. );"
  128. >{{ filterForm.show ? '收起' : '展开' }}</el-button>
  129. </div>
  130. </div>
  131. </div>
  132. <div class="box-bottom">
  133. <el-form
  134. size="mini"
  135. ref="dialog_form_arr"
  136. label-width="0px"
  137. :model="tableFormDataObj"
  138. >
  139. <el-table
  140. stripe
  141. id="singleTable"
  142. ref="singleTable"
  143. :data="tableData"
  144. v-loading="tableLoading"
  145. style="width: 100%;"
  146. :height="singleTableHeight"
  147. border
  148. size="mini"
  149. highlight-current-row
  150. @selection-change="handleSelectionChange"
  151. >
  152. <el-table-column
  153. sortable
  154. type="selection"
  155. width="40"
  156. align="center"
  157. fixed="left"
  158. >
  159. </el-table-column>
  160. <el-table-column
  161. sortable
  162. prop="powerdetecdepartment"
  163. label="监测部门"
  164. min-width="100px"
  165. :show-overflow-tooltip="true"
  166. >
  167. <template slot-scope="scope">
  168. <span>{{ nameObj.powerdetecdepartment.obj[scope.row.powerdetecdepartment] ? nameObj.powerdetecdepartment.obj[scope.row.powerdetecdepartment] : scope.row.powerdetecdepartment }}</span>
  169. </template>
  170. </el-table-column>
  171. <el-table-column
  172. sortable
  173. prop="powercode"
  174. label="动力系统代码"
  175. min-width="100px"
  176. :show-overflow-tooltip="true"
  177. ></el-table-column>
  178. <el-table-column
  179. sortable
  180. prop="powername"
  181. label="动力系统名称"
  182. min-width="100px"
  183. :show-overflow-tooltip="true"
  184. ></el-table-column>
  185. <el-table-column
  186. sortable
  187. prop="usestate"
  188. label="使用状态"
  189. min-width="100px"
  190. :show-overflow-tooltip="true"
  191. >
  192. <template slot-scope="scope">
  193. <el-form-item
  194. v-if="scope.row.isSelection"
  195. >
  196. <el-select
  197. filterable clearable
  198. v-model="tableFormDataObj[scope.row.powercode].usestate"
  199. placeholder=""
  200. style="width: 100%;"
  201. >
  202. <el-option
  203. v-for="item of nameObj.usestate.arr"
  204. :key="item.id"
  205. :value="item.id"
  206. :label="item.name"
  207. ></el-option>
  208. </el-select>
  209. </el-form-item>
  210. <span v-else>{{ nameObj.usestate.obj[scope.row.usestate] ? nameObj.usestate.obj[scope.row.usestate] : scope.row.usestate }}</span>
  211. </template>
  212. </el-table-column>
  213. <el-table-column
  214. sortable
  215. prop="sort"
  216. label="排序"
  217. min-width="100px"
  218. :show-overflow-tooltip="true"
  219. ></el-table-column>
  220. </el-table>
  221. </el-form>
  222. <el-pagination
  223. layout="total, sizes, prev, pager, next, jumper"
  224. :total="total"
  225. :page-sizes="[10, 20, 50, 100, 500, 1000]"
  226. :page-size="pageSize"
  227. :current-page.sync="pageNum"
  228. @size-change="tableSizeChange"
  229. @current-change="getTableData()"
  230. style="text-align: right;margin-top: 10px;"
  231. ></el-pagination>
  232. </div>
  233. </div>
  234. <el-dialog
  235. :title="'信息 - ' + (dialog.editorBox.type === 'add' ? '新增' : '修改')"
  236. :visible.sync="dialog.editorBox.show"
  237. width="600px"
  238. :close-on-click-modal="false"
  239. :show-close="!loading"
  240. >
  241. <div>
  242. <el-form
  243. ref="dialog_form"
  244. :model="dialog.editorBox.form.data"
  245. :rules="dialog.editorBox.form.rules"
  246. size="mini"
  247. label-width="90px"
  248. >
  249. <el-row>
  250. <el-col :span="12">
  251. <el-form-item
  252. label="监测部门"
  253. prop="powerdetecdepartment"
  254. >
  255. <el-select
  256. filterable clearable
  257. style="width: 100%;"
  258. v-model="dialog.editorBox.form.data.powerdetecdepartment"
  259. >
  260. <el-option
  261. v-for="item of nameObj.powerdetecdepartment.arr"
  262. :key="item.id"
  263. :value="item.id"
  264. :label="item.name"
  265. ></el-option>
  266. </el-select>
  267. </el-form-item>
  268. </el-col>
  269. <el-col :span="12">
  270. <el-form-item
  271. label="动力系统代码"
  272. prop="powercode"
  273. >
  274. <el-input clearable
  275. style="width: 100%;"
  276. v-model="dialog.editorBox.form.data.powercode"
  277. :disabled="dialog.editorBox.type !== 'add'"
  278. ></el-input>
  279. </el-form-item>
  280. </el-col>
  281. </el-row>
  282. <el-row>
  283. <el-col :span="12">
  284. <el-form-item
  285. label="动力系统名称"
  286. prop="powername"
  287. >
  288. <el-input clearable
  289. style="width: 100%;"
  290. v-model="dialog.editorBox.form.data.powername"
  291. ></el-input>
  292. </el-form-item>
  293. </el-col>
  294. <el-col :span="12">
  295. <el-form-item
  296. label="使用状态"
  297. prop="usestate"
  298. >
  299. <el-select
  300. filterable clearable
  301. style="width: 100%;"
  302. v-model="dialog.editorBox.form.data.usestate"
  303. >
  304. <el-option
  305. v-for="item of nameObj.usestate.arr"
  306. :key="item.id"
  307. :value="item.id"
  308. :label="item.name"
  309. ></el-option>
  310. </el-select>
  311. </el-form-item>
  312. </el-col>
  313. </el-row>
  314. <el-row>
  315. <el-col :span="12">
  316. <el-form-item
  317. label="排序"
  318. prop="sort"
  319. >
  320. <el-input clearable
  321. style="width: 100%;"
  322. v-model="dialog.editorBox.form.data.sort"
  323. >
  324. </el-input>
  325. </el-form-item>
  326. </el-col>
  327. </el-row>
  328. </el-form>
  329. </div>
  330. <span
  331. slot="footer"
  332. class="dialog-footer"
  333. >
  334. <el-button
  335. @click="dialog.editorBox.show = false"
  336. :loading="loading"
  337. >取 消</el-button>
  338. <el-button
  339. type="primary"
  340. @click="dataSave"
  341. :loading="loading"
  342. >保 存</el-button>
  343. </span>
  344. </el-dialog>
  345. </div>
  346. </template>
  347. <script>
  348. import { zCheckNumber2 } from '@/utils/validator.js'
  349. export default {
  350. name: 'powerQualitySystem',
  351. data () {
  352. return {
  353. activeMenu: '',
  354. filterForm: {
  355. show: true,
  356. data: {
  357. powerdetecdepartment: '',
  358. powercode: '',
  359. powername: '',
  360. usestate: '',
  361. sort: ''
  362. },
  363. rules: {
  364. }
  365. },
  366. pageNum: 1,
  367. pageSize: 20,
  368. total: 0,
  369. singleTableHeight: 100,
  370. multipleSelection: [],
  371. tableData: [
  372. // {
  373. // powerdetecdepartment: '检化验中心',
  374. // powercode: '98797',
  375. // powername: '测试',
  376. // usestate: '使用',
  377. // sort: ''
  378. // }
  379. ],
  380. tableFormDataObj: {},
  381. nameObj: {
  382. powerdetecdepartment: {
  383. obj: {},
  384. arr: []
  385. },
  386. usestate: {
  387. obj: {
  388. 'Use': '使用',
  389. 'NoUse': '未使用'
  390. },
  391. arr: [
  392. {
  393. id: 'Use',
  394. name: '使用'
  395. },
  396. {
  397. id: 'NoUse',
  398. name: '未使用'
  399. }
  400. ]
  401. }
  402. },
  403. loading: false,
  404. tableLoading: false,
  405. dialog: {
  406. editorBox: {
  407. show: false,
  408. type: '',
  409. form: {
  410. data: {
  411. powerdetecdepartment: '',
  412. powercode: '',
  413. powername: '',
  414. usestate: '',
  415. sort: ''
  416. },
  417. rules: {
  418. powerdetecdepartment: [
  419. { required: true, message: '该项不能为空', trigger: 'change' }
  420. ],
  421. powercode: [
  422. { required: true, message: '该项不能为空', trigger: 'change' }
  423. ],
  424. powername: [
  425. { required: true, message: '该项不能为空', trigger: 'change' }
  426. ],
  427. usestate: [
  428. { required: true, message: '该项不能为空', trigger: 'change' }
  429. ],
  430. sort: [
  431. { required: true, message: '该项不能为空', trigger: 'change' },
  432. { validator: zCheckNumber2, trigger: 'change' }
  433. ]
  434. }
  435. }
  436. }
  437. }
  438. }
  439. },
  440. created () {
  441. this.activeMenu = window.localStorage.getItem('activeMenu');
  442. },
  443. mounted () {
  444. let that = this;
  445. window.PEDataObj = {
  446. // 将数据绑定到window上,供main页面使用
  447. vm: that,
  448. // tableArr:用于导出成Excel的表格的信息
  449. tableArr: [
  450. {
  451. name: '',
  452. id: 'singleTable'
  453. }
  454. ]
  455. };
  456. that.$nextTick(() => {
  457. // 立即获取的height有一定偏差,通过setTimeout延迟来解决
  458. setTimeout(() => {
  459. that.singleTableHeight = that.getRoleHeight(that.$refs['singleTable'].$el) - 45;
  460. }, 1);
  461. });
  462. that.getTableData();
  463. that.getDetectiondepartmentData();
  464. },
  465. methods: {
  466. // 计算树区域高度
  467. getRoleHeight (dom) {
  468. return window.innerHeight - dom.offsetTop;
  469. },
  470. // 获取表格中的数据
  471. getTableData (pageNum) {
  472. let that = this,
  473. params = {
  474. powerdetecdepartment: that.filterForm.data.powerdetecdepartment,
  475. powercode: that.filterForm.data.powercode,
  476. powername: that.filterForm.data.powername,
  477. usestate: that.filterForm.data.usestate,
  478. sort: that.filterForm.data.sort || null
  479. };
  480. that.pageNum = pageNum || that.pageNum;
  481. that.tableLoading = true;
  482. let url = 'pass/ems/v1/tcm0325s/?pageNum=' + that.pageNum + '&pageSize=' + that.pageSize;
  483. that.axios.get(url, {
  484. params: params
  485. })
  486. .then(function (res) {
  487. if (res.code === '0') {
  488. let arr = [];
  489. for (let item of res.data.list) {
  490. arr.push({
  491. powerdetecdepartment: item.powerdetecdepartment,
  492. powercode: item.powercode,
  493. powername: item.powername,
  494. usestate: item.usestate,
  495. sort: item.sort
  496. })
  497. }
  498. that.tableData = arr;
  499. that.total = res.data.total;
  500. } else {
  501. that.$message.error(res.message);
  502. }
  503. that.tableLoading = false;
  504. }).catch(function () {
  505. that.tableLoading = false;
  506. });
  507. },
  508. // 获取监测部门
  509. getDetectiondepartmentData () {
  510. let that = this
  511. let url = 'pass/ems/v1/tcmcodeitems/DETECTIONDEPARTMENT';
  512. that.axios.get(url)
  513. .then(function (res) {
  514. if (res.code === '0') {
  515. let arr = [];
  516. let obj = {};
  517. for (let item of res.data) {
  518. arr.push({
  519. id: item.itemcode,
  520. name: item.itemname
  521. })
  522. obj[item.itemcode] = item.itemname;
  523. }
  524. that.nameObj.powerdetecdepartment.arr = arr;
  525. that.nameObj.powerdetecdepartment.obj = obj;
  526. } else {
  527. that.$message.error(res.message);
  528. }
  529. });
  530. },
  531. handleSelectionChange (val) {
  532. let that = this;
  533. let tableFormDataObj = {};
  534. for (let item of that.tableData) {
  535. item.isSelection = false;
  536. }
  537. for (let item of val) {
  538. let obj = {};
  539. let xId = item.powercode;
  540. if (that.tableFormDataObj[xId]) {
  541. tableFormDataObj[xId] = that.tableFormDataObj[xId];
  542. } else {
  543. for (let key in item) {
  544. obj[key] = item[key];
  545. }
  546. tableFormDataObj[xId] = obj;
  547. }
  548. item.isSelection = true;
  549. }
  550. that.tableFormDataObj = tableFormDataObj;
  551. this.multipleSelection = val;
  552. },
  553. // 改变表格显示条数
  554. tableSizeChange (val) {
  555. let that = this;
  556. that.pageSize = val;
  557. that.getTableData(1);
  558. },
  559. // 重置搜索
  560. tableDataCancel () {
  561. let that = this;
  562. for (let key in that.filterForm.data) {
  563. if (that.filterForm.data[key] instanceof Array) {
  564. that.filterForm.data[key] = [];
  565. } else {
  566. that.filterForm.data[key] = '';
  567. }
  568. }
  569. that.getTableData(1);
  570. },
  571. but_add () {
  572. let that = this;
  573. for (let key in that.dialog.editorBox.form.data) {
  574. that.dialog.editorBox.form.data[key] = '';
  575. }
  576. that.dialog.editorBox.type = 'add';
  577. that.dialog.editorBox.show = true;
  578. setTimeout(() => {
  579. that.$refs['dialog_form'].clearValidate();
  580. }, 100);
  581. },
  582. dataSave () {
  583. let that = this;
  584. let SubmitData = {
  585. powerdetecdepartment: that.dialog.editorBox.form.data.powerdetecdepartment,
  586. powercode: that.dialog.editorBox.form.data.powercode,
  587. powername: that.dialog.editorBox.form.data.powername,
  588. usestate: that.dialog.editorBox.form.data.usestate,
  589. sort: that.dialog.editorBox.form.data.sort
  590. };
  591. that.$refs['dialog_form'].validate((valid) => {
  592. if (valid) {
  593. if (that.dialog.editorBox.type === 'add') {
  594. let foorData = new FormData();
  595. for (let key in SubmitData) {
  596. foorData.append(key, SubmitData[key]);
  597. }
  598. that.loading = true;
  599. that.axios.post('pass/ems/v1/tcm0325s/', foorData, {
  600. headers: {
  601. 'Content-Type': 'multipart/form-data'
  602. }
  603. })
  604. .then(function (res) {
  605. if (res.code === '0') {
  606. that.$message({
  607. message: '新增成功',
  608. type: 'success'
  609. });
  610. that.getTableData();
  611. that.dialog.editorBox.show = false;
  612. } else {
  613. that.$message.error(res.message);
  614. }
  615. that.loading = false;
  616. }).catch(function () {
  617. that.loading = false;
  618. });
  619. } else {
  620. that.loading = true;
  621. that.axios.put('pass/ems/v1/tcm0325s/' + SubmitData.powercode, SubmitData)
  622. .then(function (res) {
  623. if (res.code === '0') {
  624. that.$message({
  625. message: '修改成功',
  626. type: 'success'
  627. });
  628. that.getTableData();
  629. that.dialog.editorBox.show = false;
  630. } else {
  631. that.$message.error(res.message);
  632. }
  633. that.loading = false;
  634. }).catch(function () {
  635. that.loading = false;
  636. });
  637. }
  638. }
  639. });
  640. },
  641. // but_edit (row) {
  642. // let that = this;
  643. // for (let key in that.dialog.editorBox.form.data) {
  644. // if (typeof row[key] !== 'undefined') {
  645. // that.dialog.editorBox.form.data[key] = row[key];
  646. // }
  647. // }
  648. // that.dialog.editorBox.type = 'edit';
  649. // that.dialog.editorBox.show = true;
  650. // },
  651. but_edit_plural () {
  652. let that = this;
  653. if (that.multipleSelection.length > 0) {
  654. that.$refs['dialog_form_arr'].validate((valid, obj) => {
  655. if (valid) {
  656. that.loading = true;
  657. let SubmitData = [];
  658. for (let key in that.tableFormDataObj) {
  659. SubmitData.push({
  660. powerdetecdepartment: that.tableFormDataObj[key].powerdetecdepartment,
  661. powercode: that.tableFormDataObj[key].powercode,
  662. powername: that.tableFormDataObj[key].powername,
  663. usestate: that.tableFormDataObj[key].usestate,
  664. sort: that.tableFormDataObj[key].sort
  665. })
  666. }
  667. that.axios.put('pass/ems/v1/tcm0325s/', SubmitData)
  668. .then(function (res) {
  669. if (res.code === '0') {
  670. that.$message({
  671. message: '修改成功',
  672. type: 'success'
  673. });
  674. that.getTableData();
  675. that.dialog.editorBox.show = false;
  676. } else {
  677. that.$message.error(res.message);
  678. }
  679. that.loading = false;
  680. })
  681. .catch(function () {
  682. that.loading = false;
  683. });
  684. }
  685. });
  686. }
  687. },
  688. but_del () {
  689. let that = this;
  690. if (that.multipleSelection.length > 0) {
  691. that.$refs['dialog_form_arr'].validate((valid, obj) => {
  692. if (valid) {
  693. that.loading = true;
  694. let SubmitData = [];
  695. for (let key in that.tableFormDataObj) {
  696. SubmitData.push({
  697. powerdetecdepartment: that.tableFormDataObj[key].powerdetecdepartment,
  698. powercode: that.tableFormDataObj[key].powercode,
  699. powername: that.tableFormDataObj[key].powername,
  700. usestate: that.tableFormDataObj[key].usestate,
  701. sort: that.tableFormDataObj[key].sort
  702. })
  703. }
  704. that.axios.delete('pass/ems/v1/tcm0325s/', SubmitData)
  705. .then(function (res) {
  706. if (res.code === '0') {
  707. that.$message({
  708. message: '删除成功',
  709. type: 'success'
  710. });
  711. that.getTableData();
  712. that.dialog.editorBox.show = false;
  713. } else {
  714. that.$message.error(res.message);
  715. }
  716. that.loading = false;
  717. })
  718. .catch(function () {
  719. that.loading = false;
  720. });
  721. }
  722. });
  723. }
  724. }
  725. // but_del (row) {
  726. // let that = this;
  727. // that.$confirm('是否删除该条数据?', '提示', {
  728. // confirmButtonText: '确定',
  729. // cancelButtonText: '取消',
  730. // state: 'warning'
  731. // }).then(() => {
  732. // that.axios.delete('pass/ems/v1/tcm0325s/' + row.powercode)
  733. // .then(function (res) {
  734. // if (res.code === '0') {
  735. // that.$message({
  736. // message: '删除成功',
  737. // type: 'success'
  738. // });
  739. // that.getTableData();
  740. // } else {
  741. // that.$message.error(res.message);
  742. // }
  743. // }).catch(function () {
  744. // });
  745. // }).catch(() => {
  746. // });
  747. // }
  748. }
  749. }
  750. </script>
  751. <style lang="less">
  752. .powerMonitoringDayData {
  753. min-width: 700px;
  754. height: 100%;
  755. .box {
  756. height: 100%;
  757. padding: 15px 15px 0 15px;
  758. .box-top {
  759. .el-form-item {
  760. margin-bottom: 7px;
  761. }
  762. .box-top-gjl {
  763. overflow: hidden;
  764. padding: 7px 0;
  765. border-top: 1px solid #ccc;
  766. // border-bottom: 1px solid #ccc;
  767. // margin-bottom: 6px;
  768. }
  769. }
  770. }
  771. .el-table__body .el-form-item--mini.el-form-item {
  772. margin: 0px;
  773. .error {
  774. overflow: hidden;
  775. color: #f56c6c;
  776. font-size: 12px;
  777. line-height: 1;
  778. }
  779. }
  780. }
  781. </style>