index.vue 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744
  1. <!--
  2. *@description: 工业工程
  3. *@author: yh Fu
  4. *@date: 2024-01-02 15:51:03
  5. *@version: V1.0.5
  6. -->
  7. <template>
  8. <div class="app-container">
  9. <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="110px">
  10. <el-form-item label="建筑单位" prop="unitId">
  11. <el-input v-model="queryParams.constructUnit" placeholder="请输入建筑单位名称"></el-input>
  12. </el-form-item>
  13. <el-form-item label="工程类型" prop="houseId">
  14. <el-select v-model="queryParams.enginType" placeholder="请选择类型">
  15. <el-option
  16. v-for="e in dict.type.engin_type"
  17. :key="e.value"
  18. :label="e.label"
  19. :value="e.value"
  20. ></el-option>
  21. </el-select>
  22. </el-form-item>
  23. <el-form-item>
  24. <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
  25. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
  26. </el-form-item>
  27. </el-form>
  28. <el-row :gutter="10" class="mb8">
  29. <el-col :span="1.5">
  30. <el-button
  31. type="primary"
  32. plain
  33. icon="el-icon-plus"
  34. size="mini"
  35. @click="handleAdd"
  36. v-hasPermi="['zdsz:engineeringIndustry:add']"
  37. >新增</el-button>
  38. </el-col>
  39. <el-col :span="1.5">
  40. <el-button
  41. type="success"
  42. plain
  43. icon="el-icon-edit"
  44. size="mini"
  45. :disabled="single"
  46. @click="handleUpdate"
  47. v-hasPermi="['zdsz:engineeringIndustry:edit']"
  48. >修改</el-button>
  49. </el-col>
  50. <el-col :span="1.5">
  51. <el-button
  52. type="danger"
  53. plain
  54. icon="el-icon-delete"
  55. size="mini"
  56. :disabled="multiple"
  57. @click="handleDelete"
  58. v-hasPermi="['zdsz:engineeringIndustry:remove']"
  59. >删除</el-button>
  60. </el-col>
  61. <!-- <el-col :span="1.5">-->
  62. <!-- <el-button-->
  63. <!-- type="warning"-->
  64. <!-- plain-->
  65. <!-- icon="el-icon-download"-->
  66. <!-- size="mini"-->
  67. <!-- @click="handleExport"-->
  68. <!-- v-hasPermi="['zdsz:openbolt:export']"-->
  69. <!-- >导出</el-button>-->
  70. <!-- </el-col>-->
  71. <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
  72. </el-row>
  73. <el-table v-loading="loading" :data="comprehensiveList" @selection-change="handleSelectionChange">
  74. <el-table-column type="selection" width="55" align="center" />
  75. <!-- <el-table-column label="" align="center" prop="id" v-if="true"/>-->
  76. <el-table-column label="建筑单位" align="center" prop="constructUnit" />
  77. <el-table-column label="项目负责人" align="center" prop="projectHead" />
  78. <el-table-column label="现场负责人" align="center" prop="sceneHead" />
  79. <el-table-column label="设计负责人" align="center" prop="designHead" />
  80. <el-table-column label="设计单位" align="center" prop="designUnit" />
  81. <el-table-column label="监理负责人" align="center" prop="supervisionHead" />
  82. <el-table-column label="监理单位" align="center" prop="supervisionUnit" />
  83. <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
  84. <template slot-scope="scope">
  85. <el-button
  86. size="mini"
  87. type="text"
  88. icon="el-icon-edit"
  89. @click="handleUpdate(scope.row)"
  90. v-hasPermi="['zdsz:engineeringIndustry:edit']"
  91. >修改</el-button>
  92. <el-button
  93. size="mini"
  94. type="text"
  95. icon="el-icon-delete"
  96. @click="handleDelete(scope.row)"
  97. v-hasPermi="['zdsz:engineeringIndustry:remove']"
  98. >删除</el-button>
  99. <el-button
  100. size="mini"
  101. type="text"
  102. icon="el-icon-edit"
  103. @click="addNewPipe(scope.row)"
  104. >新增顶管工程</el-button>
  105. </template>
  106. </el-table-column>
  107. </el-table>
  108. <pagination
  109. v-show="total>0"
  110. :total="total"
  111. :page.sync="queryParams.pageNum"
  112. :limit.sync="queryParams.pageSize"
  113. @pagination="getList"
  114. />
  115. <!-- 顶管工程新增 -->
  116. <EngineePipe ref="enginPipe"/>
  117. <!-- 添加或修改开栓|安检|维修对话框 -->
  118. <el-dialog :title="title" :visible.sync="open" append-to-body customClass="appendElDialog">
  119. <el-form ref="form" :model="form" :rules="rules" label-width="110px">
  120. <el-form-item label="现场负责人" prop="sceneHead">
  121. <el-input v-model="form.sceneHead" placeholder="请填写现场负责人"></el-input>
  122. </el-form-item>
  123. <el-form-item label="设计负责人" prop="designHead">
  124. <el-input v-model="form.designHead" placeholder="请填写现场负责人"></el-input>
  125. </el-form-item>
  126. <el-form-item label="设计单位" prop="designUnit">
  127. <el-input v-model="form.designUnit" placeholder="请填写设计单位"></el-input>
  128. </el-form-item>
  129. <el-form-item label="监理负责人" prop="supervisionHead">
  130. <el-input v-model="form.supervisionHead" placeholder="请填写监理负责人"></el-input>
  131. </el-form-item>
  132. <el-form-item label="项目负责人" prop="projectHead">
  133. <el-input v-model="form.projectHead" placeholder="请填写项目负责人"></el-input>
  134. </el-form-item>
  135. <el-form-item label="设计联系方式" prop="designPhone">
  136. <el-input v-model="form.designPhone" placeholder="请填写联系方式"></el-input>
  137. </el-form-item>
  138. <el-form-item label="监理联系电话" prop="supervisionPhone">
  139. <el-input v-model="form.supervisionPhone" placeholder="请填写联系方式"></el-input>
  140. </el-form-item>
  141. <el-form-item label="建筑单位" prop="constructUnit">
  142. <el-input v-model="form.constructUnit" placeholder="请填写建筑单位"></el-input>
  143. </el-form-item>
  144. <el-form-item label="类型" prop="enginType">
  145. <el-select v-model="form.enginType" placeholder="请选择类型">
  146. <el-option
  147. v-for="e in dict.type.engin_type"
  148. :key="e.value"
  149. :label="e.label"
  150. :value="e.value"
  151. ></el-option>
  152. </el-select>
  153. </el-form-item>
  154. <!-- <el-form-item label="工程类型" prop="type">
  155. <el-input v-model="queryParams.type" placeholder="工业工程" disabled/>
  156. </el-form-item> -->
  157. <el-form-item label="监理单位" prop="supervisionUnit">
  158. <el-input v-model="form.supervisionUnit" placeholder="请填写监理单位"/>
  159. </el-form-item>
  160. <el-form-item label="备注" prop="remark">
  161. <el-input
  162. v-model="form.remark"
  163. type="textarea"
  164. placeholder="请输入内容"
  165. class="remark_input"
  166. />
  167. </el-form-item>
  168. </el-form>
  169. <div slot="footer" class="dialog-footer">
  170. <!-- <el-button :loading="buttonLoading" type="primary" @click="submitForm">确定</el-button> -->
  171. <el-button :loading="buttonLoading" type="primary" @click="toNodeDetail">填写节点信息</el-button>
  172. <el-button @click="cancel">取 消</el-button>
  173. </div>
  174. </el-dialog>
  175. <!-- 节点信息dialog -->
  176. <el-dialog :visible="nodeDetailVisible" :rules="nodeRules" title="节点信息" append-to-body customClass="appendElNodeDialog" @close="nodeCancel">
  177. <el-form ref="nodeForm" :model="zEngineeringInfoBo" :rules="nodeRules" label-width="110px">
  178. <el-form-item label="节点类型" prop="nodeType">
  179. <el-input v-model="zEngineeringInfoBo.nodeType" placeholder="请填写节点类型" disabled></el-input>
  180. </el-form-item>
  181. <el-form-item label="施工地址" prop="constructAddre">
  182. <el-input v-model="zEngineeringInfoBo.constructAddre" placeholder="请填写施工地址"></el-input>
  183. </el-form-item>
  184. <el-form-item label="施工人电话" prop="constructPhone">
  185. <el-input v-model="zEngineeringInfoBo.constructPhone" placeholder="请填写施工人电话"></el-input>
  186. </el-form-item>
  187. <el-form-item label="施工人" prop="constructUser">
  188. <el-input v-model="zEngineeringInfoBo.constructUser" placeholder="请填写施工人"></el-input>
  189. </el-form-item>
  190. <el-form-item label="负责人" prop="headName">
  191. <el-input v-model="zEngineeringInfoBo.headName" placeholder="请填写负责人"></el-input>
  192. </el-form-item>
  193. <el-form-item label="负责人电话" prop="headPhone">
  194. <el-input v-model="zEngineeringInfoBo.headPhone" placeholder="请填写负责人电话"></el-input>
  195. </el-form-item>
  196. <el-form-item label="回填时间" prop="backfillTime">
  197. <el-date-picker
  198. v-model="zEngineeringInfoBo.backfillTime"
  199. value-format="yyyy-MM-dd hh:mm:ss"
  200. type="datetime"
  201. placeholder="请选择回填日期">
  202. </el-date-picker>
  203. </el-form-item>
  204. <el-form-item label="施工时间" prop="constructTime">
  205. <el-date-picker
  206. v-model="zEngineeringInfoBo.constructTime"
  207. value-format="yyyy-MM-dd hh:mm:ss"
  208. type="datetime"
  209. placeholder="请选择施工时间">
  210. </el-date-picker>
  211. </el-form-item>
  212. <el-form-item label="是否按图纸施工" prop="constructAccordingDrawings">
  213. <el-select v-model="zEngineeringInfoBo.constructAccordingDrawings">
  214. <el-option
  215. v-for="e in constructAccordingDrawingsOption"
  216. :key="e.value"
  217. :label="e.label"
  218. :value="e.value"
  219. ></el-option>
  220. </el-select>
  221. </el-form-item>
  222. <el-form-item label="分段打压" prop="segmentedCompressionQualified">
  223. <el-select v-model="zEngineeringInfoBo.segmentedCompressionQualified">
  224. <el-option
  225. v-for="e in segmentedCompressionQualifiedOption"
  226. :key="e.value"
  227. :label="e.label"
  228. :value="e.value"
  229. ></el-option>
  230. </el-select>
  231. </el-form-item>
  232. <!-- <el-form-item label="自闭阀类型" prop="selfClosingValveType">
  233. <el-select v-model="zEngineeringInfoBo.selfClosingValveType">
  234. <el-option
  235. v-for="e in dict.type.self_closing_valve_type"
  236. :key="e.value"
  237. :label="e.label"
  238. :value="e.value"
  239. ></el-option>
  240. </el-select>
  241. </el-form-item>
  242. <el-form-item label="上门类型" prop="visitType">
  243. <el-select v-model="zEngineeringInfoBo.visitType">
  244. <el-option
  245. v-for="e in dict.type.visit_type"
  246. :key="e.value"
  247. :label="e.label"
  248. :value="e.value"
  249. ></el-option>
  250. </el-select>
  251. </el-form-item> -->
  252. <el-form-item label="照片" prop="zEngiineeringPhotoBoList" style="width: 100%;">
  253. <ObsImageUpload ref="obsImageUpload" :limit="9999" :fileType="['png', 'jpg', 'jpeg']" :value="zEngineeringInfoBo.zEngiineeringPhotoBoList"
  254. @input="getUrl"></ObsImageUpload>
  255. </el-form-item>
  256. <el-button :loading="buttonLoading" type="primary" @click="submitForm">提交</el-button>
  257. <el-button @click="nodeCancel">取 消</el-button>
  258. </el-form>
  259. </el-dialog>
  260. </div>
  261. </template>
  262. <script>
  263. import {
  264. getEngineeIndustryList, // 查询工程列表
  265. addEngineeEngineeIndustry, // 新增工程
  266. putEngineeEngineeIndustry, // 查询工程详情
  267. EditEngineeEngineeIndustry, // 修改工程
  268. DelEngineeEngineeIndustry // 删除工程
  269. } from "@/api/zdsz/engineeringIndustry"
  270. import EngineePipe from "@/components/EngineePipe"
  271. import {addEnginee} from "@/api/zdsz/enginee";
  272. export default {
  273. name: "openrepair",
  274. dicts:['pass_check','is_repair','engin_type','self_closing_valve_type','visit_type'],
  275. components:{
  276. EngineePipe
  277. },
  278. data() {
  279. var validatePass = (rule, value, callback) => {
  280. console.log('校验值', value)
  281. if (value === '') {
  282. callback(new Error('请输入密码'));
  283. } else {
  284. if (this.ruleForm.checkPass !== '') {
  285. this.$refs.ruleForm.validateField('checkPass');
  286. }
  287. callback();
  288. }
  289. };
  290. return {
  291. // 按钮loading
  292. buttonLoading: false,
  293. // 遮罩层
  294. loading: true,
  295. // 选中数组
  296. ids: [],
  297. // 非单个禁用
  298. single: true,
  299. // 非多个禁用
  300. multiple: true,
  301. // 显示搜索条件
  302. showSearch: true,
  303. // 总条数
  304. total: 0,
  305. // 开栓|安检|维修表格数据
  306. comprehensiveList: [],
  307. // 弹出层标题
  308. title: "",
  309. // 是否显示弹出层
  310. open: false,
  311. enginTypeOption:[
  312. {
  313. value:'0',
  314. label:'民用工程'
  315. },
  316. {
  317. value:'2',
  318. label:'工业工程'
  319. },
  320. {
  321. value:'1',
  322. label:'市政工程'
  323. },
  324. {
  325. value:'3',
  326. label:'顶管工程'
  327. },
  328. {
  329. value:'4',
  330. label:'危险作业工程'
  331. },
  332. {
  333. value:'5',
  334. label:'基建工程'
  335. },
  336. ],
  337. // 查询参数
  338. queryParams: {
  339. sceneHead:null, // 现场负责人
  340. designHead:'', // 设计负责人
  341. projectHead:'', // 项目负责人
  342. designUnit:'', // 设计单位
  343. designPhone:'', // 设计负责人联系方式
  344. supervisionHead:'', // 监理负责人
  345. supervisionPhone:'', // 监理联系电话
  346. constructUnit:'', // 建筑单位
  347. supervisionUnit:"", // 监理单位
  348. type:'01', // 类型 01工业工程 02市政工程
  349. enginType:'', // 工程类型 民用工程 0 ,市政工程 1,工业工程 2 ,顶管工程 3,危险作业工程 4,基建工程 5
  350. remark:'', // 备注
  351. zEngineeringNodeBo:{
  352. type:'01',
  353. zEngineeringInfoBo:{}, //节点信息
  354. }
  355. },
  356. zEngineeringInfoBo:{
  357. nodeType:'', // 节点类型
  358. constructAddre:'', // 施工地址
  359. constructPhone:'', // 施工人电话
  360. constructUser:'', // 施工人
  361. headName:'', // 负责人
  362. headPhone:'', // 负责人电话
  363. constructAccordingDrawings:'', // 是否按图纸施工
  364. segmentedCompressionQualified:'', // 分段打压是否合格
  365. backfillTime:'', // 回填时间
  366. constructTime:'', // 施工时间
  367. zEngiineeringPhotoBoList:[], // 图片列表
  368. zEngineeringMaterialBo:[],// 用料对象
  369. }, // 节点信息
  370. constructAccordingDrawingsOption:[
  371. {
  372. value:'1',
  373. label:'是'
  374. },
  375. {
  376. value:'0',
  377. label:'否'
  378. }
  379. ],
  380. segmentedCompressionQualifiedOption:[
  381. {
  382. value:'1',
  383. label:'是'
  384. },
  385. {
  386. value:'0',
  387. label:'否'
  388. }
  389. ],
  390. nodeDetailVisible:false,
  391. // 表单参数
  392. form: {},
  393. areas: [],
  394. builds: [],
  395. units: [],
  396. rooms: [],
  397. houses: [],
  398. // 表单校验
  399. rules: {
  400. areaId: [
  401. { required: true, message: "小区不能为空", trigger: "change" }
  402. ],
  403. sceneHead: [
  404. { required: true, message: "现场负责人不能为空" ,trigger: 'blur'}
  405. ],
  406. supervisionUnit: [
  407. { required: true, message: "监理单位不能为空" ,trigger: 'blur'}
  408. ],
  409. enginType: [
  410. { required: true, message: "现场负责人不能为空" ,trigger: 'blur'}
  411. ],
  412. supervisionPhone: [
  413. { required: true, message: "建立联系电话不能为空" ,trigger: 'blur'}
  414. ],
  415. constructUnit: [
  416. { required: true, message: "建筑单位不能为空" ,trigger: 'blur'}
  417. ],
  418. projectHead: [
  419. { required: true, message: "项目负责人不能为空" ,trigger: 'blur'}
  420. ],
  421. designHead: [
  422. { required: true, message: "设计负责人不能为空" ,trigger: 'blur'}
  423. ],
  424. designUnit: [
  425. { required: true, message: "设计单位不能为空" ,trigger: 'blur'}
  426. ],
  427. designPhone: [
  428. { required: true, message: "联系方式不能为空" ,trigger: 'blur'}
  429. ],
  430. supervisionHead: [
  431. { required: true, message: "监理负责人不能为空" ,trigger: 'blur'}
  432. ],
  433. buildingId: [
  434. { required: true, message: "楼栋不能为空", trigger: "change" }
  435. ],
  436. unitId: [
  437. { required: true, message: "单元不能为空", trigger: "change" }
  438. ],
  439. houseId: [
  440. { required: true, message: "房间不能为空", trigger: "change" }
  441. ],
  442. type: [
  443. { required: false, message: "类型不能为空", trigger: "change" }
  444. ],
  445. isQualified: [
  446. { required: true, message: "安检是否合格不能为空", trigger: "blur" }
  447. ],
  448. remark: [
  449. { required: false, message: "备注不能为空", trigger: "blur" }
  450. ],
  451. },
  452. // 节点规则校验
  453. nodeRules:{
  454. nodeType: [
  455. { required: true, message: "节点类型不能为空" ,trigger: 'blur'}
  456. ],
  457. constructAddre: [
  458. { required: true, message: "施工地址不能为空" ,trigger: 'blur'}
  459. ],
  460. constructPhone: [
  461. { required: true, message: "施工人电话不能为空" ,trigger: 'blur'}
  462. ],
  463. constructUser: [
  464. { required: true, message: "施工人不能为空" ,trigger: 'blur'}
  465. ],
  466. headName: [
  467. { required: true, message: "负责人不能为空" ,trigger: 'blur'}
  468. ],
  469. headPhone: [
  470. { required: true, message: "负责人电话不能为空" ,trigger: 'blur'}
  471. ],
  472. }
  473. };
  474. },
  475. created() {
  476. this.getList();
  477. // 根据url获取nodeType节点类型
  478. this.getType();
  479. },
  480. methods: {
  481. // 根据url获取nodeType节点类型
  482. getType() {
  483. const queryString = window.location.search;
  484. const params = new URLSearchParams(queryString);
  485. const type = params.get('type');
  486. if (type) {
  487. this.zEngineeringInfoBo.nodeType = type;
  488. }
  489. },
  490. // 新增顶管工程
  491. addNewPipe(data){
  492. this.$refs.enginPipe.openDialog({
  493. id:data.id
  494. },'add')
  495. },
  496. nodeCancel(){
  497. this.nodeDetailVisible = false
  498. },
  499. toNodeDetail(){
  500. this.nodeDetailVisible = true
  501. },
  502. getUrl(url) {
  503. this.zEngineeringInfoBo.zEngiineeringPhotoBoList = this.$refs.obsImageUpload.fileList?this.$refs.obsImageUpload.fileList.map(e=>e.url):[];
  504. },
  505. /** 查询开栓|安检|维修列表 */
  506. getList() {
  507. this.loading = true;
  508. getEngineeIndustryList({
  509. type:'01'
  510. }).then(res => {
  511. console.log(res)
  512. this.comprehensiveList = res.rows;
  513. this.total = res.total;
  514. this.loading = false;
  515. });
  516. },
  517. // 取消按钮
  518. cancel() {
  519. this.open = false;
  520. this.reset();
  521. },
  522. // 表单重置
  523. reset() {
  524. this.$nextTick(() => {
  525. this.$refs['form'].resetFields()
  526. this.$refs['nodeForm'].resetFields()
  527. })
  528. this.resetForm("form");
  529. this.resetForm("nodeForm");
  530. },
  531. /** 搜索按钮操作 */
  532. handleQuery() {
  533. this.queryParams.pageNum = 1;
  534. this.getList();
  535. },
  536. /** 重置按钮操作 */
  537. resetQuery() {
  538. this.resetForm("queryForm");
  539. this.handleQuery();
  540. },
  541. // 多选框选中数据
  542. handleSelectionChange(selection) {
  543. this.ids = selection.map(item => item.id)
  544. this.single = selection.length!==1
  545. this.multiple = !selection.length
  546. },
  547. /** 新增按钮操作 */
  548. handleAdd() {
  549. this.reset();
  550. this.open = true;
  551. this.title = "新增工程";
  552. },
  553. /** 修改按钮操作 */
  554. handleUpdate(row) {
  555. this.loading = true;
  556. this.reset();
  557. const id = row.id || this.ids
  558. putEngineeEngineeIndustry(id).then(response => {
  559. this.loading = false;
  560. this.form = response.data;
  561. this.zEngineeringInfoBo =response.data.zengineeringNodeBo[0].zEngineeringInfoBoList[0]
  562. this.open = true;
  563. this.title = "修改工程";
  564. });
  565. },
  566. /** 提交按钮 */
  567. submitForm() {
  568. this.$refs["nodeForm"].validate(valid => {
  569. if (valid) {
  570. if (this.form.id == null){
  571. this.form.zEngineeringNodeBo.zEngineeringInfoBo = this.zEngineeringInfoBo
  572. console.log(this.form)
  573. addEngineeEngineeIndustry(this.form).then(res => {
  574. this.$modal.msgSuccess("新增成功");
  575. this.open = false;
  576. this.nodeDetailVisible = false
  577. this.getList();
  578. })
  579. }else {
  580. this.form.zEngineeringNodeBo.zEngineeringInfoBo = this.zEngineeringInfoBo
  581. EditEngineeEngineeIndustry(this.form).then(res=>{
  582. this.$modal.msgSuccess("修改成功");
  583. this.open = false;
  584. this.nodeDetailVisible = false
  585. this.getList();
  586. })
  587. }
  588. }
  589. });
  590. },
  591. /** 删除按钮操作 */
  592. handleDelete(row) {
  593. const ids = row.id || this.ids;
  594. this.$modal.confirm('是否确认删除维修为"' + ids + '"的数据项?').then(() => {
  595. this.loading = true;
  596. return DelEngineeEngineeIndustry(ids);
  597. }).then(() => {
  598. this.loading = false;
  599. this.getList();
  600. this.$modal.msgSuccess("删除成功");
  601. }).catch(() => {
  602. }).finally(() => {
  603. this.loading = false;
  604. });
  605. },
  606. /** 导出按钮操作 */
  607. handleExport() {
  608. this.download('zdsz/engineeringIndustry/export', {
  609. ...this.queryParams
  610. }, `comprehensive_${new Date().getTime()}.xlsx`)
  611. }
  612. }
  613. };
  614. // getBuildings(id) {
  615. // this.units = []
  616. // this.houses = []
  617. // this.queryParams.buildingId = undefined
  618. // this.queryParams.unitId = undefined
  619. // this.queryParams.houseId = undefined
  620. // getBuildings(id).then(res => {
  621. // this.builds = res.data
  622. // })
  623. // },
  624. // getUnits(id) {
  625. // this.houses = []
  626. // this.queryParams.unitId = undefined
  627. // this.queryParams.houseId = undefined
  628. // getUnits(this.queryParams.areaId,id).then(res => {
  629. // this.units = res.data
  630. // })
  631. // },
  632. // getAreas() {
  633. // this.builds = []
  634. // this.units = []
  635. // this.houses = []
  636. // this.queryParams.buildingId = undefined
  637. // this.queryParams.unitId = undefined
  638. // this.queryParams.houseId = undefined
  639. // this.form.buildingId = undefined
  640. // this.form.unitId = undefined
  641. // this.form.houseId = undefined
  642. // getAreas().then(res => {
  643. // this.areas = res.data;
  644. // });
  645. // },
  646. // getHouses() {
  647. // this.houses = []
  648. // this.queryParams.houseId = undefined
  649. // getHouses(this.queryParams.unitId).then(res => {
  650. // this.houses = res.data;
  651. // });
  652. // },
  653. // getBuildings1(id) {
  654. // this.units = []
  655. // this.houses = []
  656. // this.form.buildingId = undefined
  657. // this.form.unitId = undefined
  658. // this.form.houseId = undefined
  659. // getBuildings(id).then(res => {
  660. // this.builds = res.data
  661. // })
  662. // },
  663. // getUnits1(id) {
  664. // this.houses = []
  665. // this.form.unitId = undefined
  666. // this.form.houseId = undefined
  667. // getUnits(this.form.areaId,id).then(res => {
  668. // this.units = res.data
  669. // })
  670. // },
  671. // getHouses1() {
  672. // this.houses = []
  673. // this.form.houseId = undefined
  674. // getHouses(this.form.unitId).then(res => {
  675. // this.houses = res.data;
  676. // });
  677. // },
  678. </script>
  679. <style lang="scss" scoped>
  680. ::v-deep .appendElDialog{
  681. width: 70%;
  682. height: 80%;
  683. .el-dialog__body{
  684. height: 85%;
  685. }
  686. .el-form-item{
  687. margin-bottom: 22px;
  688. width: 44%;
  689. display: inline-block;
  690. }
  691. .el-form-item:nth-child(2n+2){
  692. margin-left: 5%;
  693. }
  694. .el-form-item:not(:nth-child(1):nth-child(2)){
  695. margin-top: 0.5%;
  696. }
  697. .remark_input{
  698. .el-textarea__inner{
  699. width: 238%;
  700. height: 190px;
  701. }
  702. }
  703. }
  704. ::v-deep .appendElNodeDialog{
  705. // width: 70%;
  706. height: 80%;
  707. .el-dialog__body{
  708. height: 85%;
  709. }
  710. .el-form-item{
  711. margin-bottom: 22px;
  712. width: 44%;
  713. display: inline-block;
  714. }
  715. .el-form-item:nth-child(2n+2){
  716. margin-left: 5%;
  717. }
  718. .el-form-item:not(:nth-child(1):nth-child(2)){
  719. margin-top: 0.5%;
  720. }
  721. }
  722. </style>