index.vue 24 KB

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