tranManagementTransportAdd.vue 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882
  1. // 创建运输任务
  2. <template>
  3. <div class="container">
  4. <el-row>
  5. <el-col :span="12">
  6. <h2 class="bg-left title">创建运输任务</h2>
  7. </el-col>
  8. <el-col :span="12" class="bg-right">
  9. <el-button
  10. class="bg-bottom"
  11. type="primary"
  12. size="small"
  13. @click="returnsales()"
  14. ><img
  15. width="6"
  16. height="10"
  17. style="vertical-align: bottom; margin-right: 3px"
  18. src="../../../public/img/lujing.png"
  19. alt=""
  20. />返回</el-button
  21. >
  22. </el-col>
  23. </el-row>
  24. <el-form
  25. ref="deptBudgetList"
  26. :rules="mainReportAdd"
  27. :model="deptBudgetList"
  28. >
  29. <ws-info-table class="el-table">
  30. <el-form-item label="任务编号" span="1" prop="taskNo" class="forlist">
  31. <el-input
  32. v-model="deptBudgetList.taskNo"
  33. placeholder="请输入任务编号"
  34. maxlength="20"
  35. size="small"
  36. ></el-input>
  37. </el-form-item>
  38. <el-form-item prop="taskType" label="任务类型" span="1">
  39. <el-select
  40. v-model="deptBudgetList.taskType"
  41. placeholder="请输入任务类型"
  42. @change="selecttaskType"
  43. >
  44. <el-option
  45. v-for="item in taskType"
  46. :key="item.constKey"
  47. :label="item.constValue"
  48. :value="item.constValue"
  49. ></el-option>
  50. </el-select>
  51. </el-form-item>
  52. <el-form-item prop="contractNo" label="合同编号/移库任务编号" span="1">
  53. <el-select
  54. v-model="deptBudgetList.contractNo"
  55. placeholder="请选择编号"
  56. >
  57. <el-option
  58. v-for="item in contractNoList"
  59. :key="item.constKey"
  60. :label="item.contractNo"
  61. :value="item.contractNo"
  62. ></el-option>
  63. </el-select>
  64. </el-form-item>
  65. <el-form-item prop="goodsName" label="货名" span="1">
  66. <el-select
  67. v-model="deptBudgetList.goodsName"
  68. placeholder="请输入货名"
  69. @change="selectgoodsname"
  70. >
  71. <el-option
  72. v-for="item in goodnameList"
  73. :key="item.constKey"
  74. :label="item.constValue"
  75. :value="item.constValue"
  76. ></el-option>
  77. </el-select>
  78. </el-form-item>
  79. <el-form-item label="重量(吨)" span="1" prop="weight">
  80. <el-input
  81. @input='weightchange'
  82. v-model="deptBudgetList.weight"
  83. placeholder="请输入重量"
  84. maxlength="20"
  85. size="small"
  86. ></el-input>
  87. </el-form-item>
  88. </ws-info-table>
  89. <ws-info-table class="el-table">
  90. <div class="start-address" style="width : 36%">
  91. <el-radio-group @change='warehouseTypechange' v-model="deptBudgetList.warehouseType">
  92. <el-radio label="1"
  93. >常用仓库发货</el-radio
  94. >
  95. <el-radio label="2"
  96. >临时仓库发货</el-radio
  97. >
  98. </el-radio-group>
  99. <el-select
  100. v-model="deptBudgetList.sendWarehouse"
  101. placeholder="选择仓库"
  102. class="typeselect"
  103. >
  104. <el-option
  105. v-for="item in warehouseList"
  106. :key="item.constKey"
  107. :label="item.warehouseName"
  108. :value="item.warehouseName"
  109. ></el-option>
  110. </el-select>
  111. </div>
  112. <el-form-item label="始发地" span="1" class="start-address">
  113. <el-cascader
  114. :options="options_"
  115. v-model="selectedOptions"
  116. clearable
  117. size="large"
  118. placeholder="请选择始发地"
  119. @change="handleChange"
  120. />
  121. </el-form-item>
  122. <el-form-item
  123. label="始发地详细地址"
  124. span="1"
  125. prop="startDetailedAddress"
  126. class="bg-right start-address"
  127. >
  128. <el-input
  129. v-model="deptBudgetList.startDetailedAddress"
  130. placeholder="请输入始发地详细地址"
  131. maxlength="20"
  132. size="small"
  133. ></el-input>
  134. </el-form-item>
  135. <el-form-item
  136. label="收货库点"
  137. span="1"
  138. prop="contractNo"
  139. class="start-address"
  140. style="width: 36%"
  141. >
  142. <el-select
  143. v-model="deptBudgetList.receiveWarehouse"
  144. :disabled="warehouse"
  145. placeholder="请输入收货库点"
  146. style="width: 100%"
  147. >
  148. <el-option
  149. v-for="item in warehouseList"
  150. :key="item.constKey"
  151. :label="item.warehouseName"
  152. :value="item.warehouseName"
  153. ></el-option>
  154. </el-select>
  155. </el-form-item>
  156. <el-form-item
  157. label="终到地"
  158. span="1"
  159. prop="contractNo"
  160. class="start-address"
  161. >
  162. <el-cascader
  163. :options="options_"
  164. v-model="selectedOptions1"
  165. clearable
  166. size="large"
  167. placeholder="请选择终到地"
  168. @change="handleChange1"
  169. />
  170. </el-form-item>
  171. <el-form-item
  172. label="终到地详细地址"
  173. span="1"
  174. prop="endDetailedAddress"
  175. class="bg-right start-address"
  176. >
  177. <el-input
  178. v-model="deptBudgetList.endDetailedAddress"
  179. placeholder="请输入终到地详细地址"
  180. maxlength="20"
  181. size="small"
  182. ></el-input>
  183. </el-form-item>
  184. <div class="check-box">
  185. <span class="check-box">运输方式</span>
  186. <el-checkbox-group v-model="checkList" prop="tranType">
  187. <el-checkbox label="汽运"></el-checkbox>
  188. <el-checkbox label="火运"></el-checkbox>
  189. <el-checkbox label="船运"></el-checkbox>
  190. </el-checkbox-group>
  191. </div>
  192. </ws-info-table>
  193. <div
  194. style="width: 100%"
  195. class="position"
  196. v-for="(item, index) in deptBudgetList.tranProcessInfoList"
  197. :key="index"
  198. >
  199. <div class="driver">
  200. <span style='vertical-align: top;'>运输阶段{{ index + 1 }} {{ item.processNo }}</span>
  201. <img v-if='!endflag'
  202. width="22"
  203. height="22"
  204. class="add"
  205. @click="add(index)"
  206. src="../../../public/img/add.png"
  207. alt=""
  208. />
  209. <img
  210. width="22"
  211. height="22"
  212. class="del"
  213. @click="del(index)"
  214. src="../../../public/img/del.png"
  215. alt=""
  216. />
  217. <el-checkbox
  218. @change='engflagchange'
  219. class='endflag'
  220. v-if="index == deptBudgetList.tranProcessInfoList.length - 1"
  221. v-model="item.endFlag"
  222. :label="1"
  223. >最终阶段</el-checkbox
  224. >
  225. </div>
  226. <ws-info-table>
  227. <el-form-item label="运输方式" span="1" prop="waterContent">
  228. <el-select
  229. v-model="item.tranType"
  230. placeholder="运输方式"
  231. @change="
  232. (val) => {
  233. selecttaskwayList(val, index)
  234. }
  235. "
  236. >
  237. <el-option
  238. v-for="item in taskwayList"
  239. :key="item.constKey"
  240. :label="item.constValue"
  241. :value="item.constValue"
  242. ></el-option>
  243. </el-select>
  244. </el-form-item>
  245. <el-form-item label="发货日期" span="1" prop="impurity">
  246. <ws-date-picker
  247. v-model="item.deliveryDateStart"
  248. type="date"
  249. placeholder="请选择发货日期"
  250. value-format="yyyy-MM-dd"
  251. />
  252. </el-form-item>
  253. <el-form-item label="最晚到货日期" span="1" prop="bulkDensity">
  254. <ws-date-picker
  255. v-model="item.deliveryDateEnd"
  256. type="date"
  257. placeholder="请选择最晚到货日期"
  258. value-format="yyyy-MM-dd"
  259. />
  260. </el-form-item>
  261. <!-- 本阶段重量 -->
  262. <el-form-item
  263. label="本阶段运输重量(吨)"
  264. span="1"
  265. prop="bulkDensity"
  266. >
  267. <el-input
  268. v-model="deptBudgetList.weight"
  269. placeholder="请输入本阶段运输重量"
  270. size="small"
  271. ></el-input>
  272. </el-form-item>
  273. </ws-info-table>
  274. <ws-info-table>
  275. <el-form-item label="发货地区" span="1" prop="waterContent">
  276. <el-cascader
  277. :options="options_"
  278. v-model="item.selectedOptions"
  279. clearable
  280. size="large"
  281. placeholder="请选择发货地区"
  282. style="width: 200%"
  283. @change="
  284. (val) => {
  285. handleChange3(val, index)
  286. }
  287. "
  288. />
  289. </el-form-item>
  290. <el-form-item label="发货地详细地址" span="1" prop="impurity">
  291. <el-input
  292. v-model="item.sendDetailedAddress"
  293. placeholder="请输入发货地详细地址"
  294. maxlength="20"
  295. size="small"
  296. ></el-input>
  297. </el-form-item>
  298. <el-form-item label="发货人" span="1" prop="bulkDensity">
  299. <el-input
  300. v-model="item.sender"
  301. placeholder="请输入发货人"
  302. maxlength="20"
  303. size="small"
  304. ></el-input>
  305. </el-form-item>
  306. <el-form-item label="发货人电话" span="1" prop="bulkDensity">
  307. <el-input
  308. v-model="item.senderPhone"
  309. placeholder="请输入发货人电话"
  310. maxlength="20"
  311. size="small"
  312. ></el-input>
  313. </el-form-item>
  314. </ws-info-table>
  315. <ws-info-table>
  316. <el-form-item label="收货地区" span="1" prop="bulkDensity">
  317. <el-cascader
  318. :options="options_"
  319. v-model="item.selectedOptions1"
  320. clearable
  321. size="large"
  322. placeholder="请选择收货地区"
  323. style="width: 200%"
  324. @change="
  325. (val) => {
  326. handleChange4(val, index)
  327. }
  328. "
  329. />
  330. </el-form-item>
  331. <el-form-item label="收货地详细地址" span="1" prop="impurity">
  332. <el-input
  333. v-model="item.receiveDetailedAddress"
  334. placeholder="请输入收货地详细地址"
  335. maxlength="20"
  336. size="small"
  337. ></el-input>
  338. </el-form-item>
  339. <el-form-item label="收货人" span="1" prop="bulkDensity">
  340. <el-input
  341. v-model="item.receiver"
  342. placeholder="请输入收货人"
  343. maxlength="20"
  344. size="small"
  345. ></el-input>
  346. </el-form-item>
  347. <el-form-item label="收货人电话" span="1" prop="bulkDensity">
  348. <el-input
  349. v-model="item.receiverPhone"
  350. placeholder="请输入收货人电话"
  351. maxlength="20"
  352. size="small"
  353. ></el-input>
  354. </el-form-item>
  355. </ws-info-table>
  356. </div>
  357. </el-form>
  358. <!-- 提交 -->
  359. <div style="text-align: right; padding: 10px" class="center">
  360. <el-button
  361. class="bg-bottom"
  362. type="primary"
  363. size="small"
  364. @click="submit(deptBudgetList)"
  365. >提交</el-button
  366. >
  367. </div>
  368. </div>
  369. </template>
  370. <script>
  371. import { packList } from '@/model/contarct/index'
  372. import { regionData, CodeToText, TextToCode } from 'element-china-area-data'
  373. import { addtrantask, getwarehousename, xialaNo } from '@/model/tasksport/index'
  374. import WsUpload from '@/components/WsUpload'
  375. import mapDrag from '@/components/mapdrag/mapdrag'
  376. export default {
  377. name: 'viewSpareMoney',
  378. components: {
  379. WsUpload,
  380. mapDrag,
  381. },
  382. watch: {
  383. vesselId(val) {
  384. this.getVesselData()
  385. },
  386. isShow(val) {
  387. this.showType = val
  388. },
  389. },
  390. data() {
  391. let self = this
  392. return {
  393. checkList: [],
  394. deptBudgetList: {
  395. taskNo: '',
  396. totalStorage: 0,
  397. goodsName: '玉米',
  398. goodsNameKey: 1,
  399. warehouseType: '1',
  400. tranProcessInfoList: [
  401. {
  402. processNo: '',
  403. tranType: '汽运',
  404. tranTypeKey: '1',
  405. deliveryDateStart: '',
  406. deliveryDateEnd: '',
  407. weight: '',
  408. selectedOptions: [],
  409. selectedOptions1: [],
  410. sendPrivate: '',
  411. sendCity: '',
  412. sendArea: '',
  413. receivePrivate: '',
  414. receiveCity: '',
  415. receiveArea: '',
  416. sendDetailedAddress: '',
  417. receiveDetailedAddress: '',
  418. sender: '',
  419. receiver: '',
  420. senderPhone: '',
  421. receiverPhone: '',
  422. endFlag: '0',
  423. },
  424. ],
  425. },
  426. radio: '1',
  427. options_: regionData,
  428. heightData: '600px',
  429. zoom: 7,
  430. endflag:false,
  431. selectedOptions: [],
  432. selectedOptions1: [],
  433. window: '',
  434. district: null,
  435. goodnameList: [],
  436. listDate: { country: '中国', level: 'country', city: '' },
  437. citylist: [],
  438. taskType: [],
  439. taskwayList: [],
  440. contractNoList: [],
  441. compId: sessionStorage.getItem('ws-pf_compId'),
  442. mainReportAdd: {},
  443. appendixIdsAdd: '',
  444. warehouseList: [],
  445. size: 10,
  446. value1: '',
  447. unitList: [],
  448. name: '',
  449. age: '',
  450. }
  451. },
  452. activated() {
  453. this.loaddata()
  454. this.showType = this.isShow
  455. },
  456. computed: {
  457. weight:function(){
  458. var maxStorage = 0
  459. for(var i =0 ; i<this.deptBudgetList.tranProcessInfoList.length;i++){
  460. maxStorage += Number(this.deptBudgetList.tranProcessInfoList[i].weight)
  461. }
  462. return maxStorage
  463. },
  464. warehouse: function () {
  465. if (
  466. this.deptBudgetList.taskType == '销售出库' ||
  467. this.deptBudgetList.taskType == '贸易服务出库' ||
  468. this.deptBudgetList.taskType == '暂存出库'
  469. ) {
  470. return true
  471. } else {
  472. return false
  473. }
  474. },
  475. },
  476. methods: {
  477. warehouseTypechange(){
  478. getwarehousename({
  479. compId: this.compId,
  480. warehouseType: this.deptBudgetList.warehouseType,
  481. })
  482. .toPromise()
  483. .then((response) => {
  484. this.warehouseList = response
  485. })
  486. },
  487. weightchange(e){
  488. this.deptBudgetList.tranProcessInfoList[0].weight=e
  489. },
  490. engflagchange(e){
  491. this.endflag=e
  492. },
  493. // 获取当前年月日
  494. getdate() {
  495. var date = new Date()
  496. var year = date.getFullYear() //获取完整的年份(4位)
  497. var mouth = date.getMonth() + 1 //获取当前月份(0-11,0代表1月)
  498. var datetime = date.getDate() //获取当前日(1-31)
  499. if (mouth < 10) {
  500. mouth = '0' + mouth
  501. }
  502. if (datetime < 10) {
  503. datetime = '0' + datetime
  504. }
  505. return year + mouth + datetime
  506. },
  507. // 随机验证码
  508. verifyinit() {
  509. var arr = []
  510. for (var i = 48; i < 123; i++) {
  511. if (i > 57 && i < 65) continue
  512. if (i > 90 && i < 97) continue
  513. arr.push(String.fromCharCode(i))
  514. }
  515. arr.sort(function () {
  516. return Math.random() - 0.5
  517. })
  518. arr.length = 4
  519. return arr.join('')
  520. },
  521. loaddata() {
  522. this.deptBudgetList.taskNo = 'YS' + this.getdate() + this.verifyinit()
  523. this.deptBudgetList.tranProcessInfoList[0].processNo=this.deptBudgetList.taskNo+'-1'
  524. // 货名
  525. packList({ constId: 'CON2' })
  526. .toPromise()
  527. .then((response) => {
  528. this.goodnameList = response
  529. })
  530. // 任务类型
  531. packList({ constId: 'TRAN3' })
  532. .toPromise()
  533. .then((response) => {
  534. this.taskType = response
  535. })
  536. // 运输方式
  537. packList({ constId: 'TRAN6' })
  538. .toPromise()
  539. .then((response) => {
  540. this.taskwayList = response
  541. })
  542. getwarehousename({
  543. compId: this.compId,
  544. warehouseType: this.deptBudgetList.warehouseType,
  545. })
  546. .toPromise()
  547. .then((response) => {
  548. this.warehouseList = response
  549. })
  550. xialaNo({
  551. compId: this.compId,
  552. })
  553. .toPromise()
  554. .then((response) => {
  555. this.contractNoList = response
  556. })
  557. },
  558. confirmPositioncity() {
  559. this.listDate.level = 'city'
  560. this.listDate.country = this.name
  561. },
  562. // 关闭 dialog时 处理文件url 初始化upload组件
  563. handleClose() {
  564. this.dialogViewSpareMoney = false
  565. },
  566. add(index) {
  567. console.log(index)
  568. this.deptBudgetList.tranProcessInfoList.push({
  569. processNo: this.deptBudgetList.taskNo+'-'+(index+2),
  570. tranType: '汽运',
  571. tranTypeKey: '1',
  572. deliveryDateStart: '',
  573. deliveryDateEnd: '',
  574. weight: this.deptBudgetList.tranProcessInfoList[this.deptBudgetList.tranProcessInfoList.length-1].weight,
  575. selectedOptions: [],
  576. selectedOptions1: [],
  577. sendPrivate: '',
  578. sendCity: '',
  579. sendArea: '',
  580. receivePrivate: '',
  581. receiveCity: '',
  582. receiveArea: '',
  583. sendDetailedAddress: '',
  584. receiveDetailedAddress: '',
  585. sender: '',
  586. receiver: '',
  587. senderPhone: '',
  588. receiverPhone: '',
  589. endFlag: '0',
  590. })
  591. },
  592. del(index) {
  593. if (this.deptBudgetList.tranProcessInfoList.length > 1) {
  594. this.deptBudgetList.tranProcessInfoList.splice(index, 1)
  595. }
  596. },
  597. handleChange(value) {
  598. this.selectedOptions = value
  599. this.deptBudgetList.startPrivate = CodeToText[value[0]]
  600. this.deptBudgetList.startCity = CodeToText[value[1]]
  601. this.deptBudgetList.startArea = CodeToText[value[2]]
  602. },
  603. handleChange1(value) {
  604. this.selectedOptions1 = value
  605. this.deptBudgetList.endPrivate = CodeToText[value[0]]
  606. this.deptBudgetList.endCity = CodeToText[value[1]]
  607. this.deptBudgetList.endArea = CodeToText[value[2]]
  608. },
  609. handleChange3(value, index) {
  610. this.deptBudgetList.tranProcessInfoList[index].sendPrivate =
  611. CodeToText[value[0]]
  612. this.deptBudgetList.tranProcessInfoList[index].sendCity =
  613. CodeToText[value[1]]
  614. this.deptBudgetList.tranProcessInfoList[index].sendArea =
  615. CodeToText[value[2]]
  616. },
  617. handleChange4(value, index) {
  618. this.deptBudgetList.tranProcessInfoList[index].receivePrivate =
  619. CodeToText[value[0]]
  620. this.deptBudgetList.tranProcessInfoList[index].receiveCity =
  621. CodeToText[value[1]]
  622. this.deptBudgetList.tranProcessInfoList[index].receiveArea =
  623. CodeToText[value[2]]
  624. },
  625. returnsales() {
  626. this.$router.push({ path: 'tranManagementTransport' })
  627. },
  628. selecttaskType(e) {
  629. for (var i = 0; i < this.taskType.length; i++) {
  630. if (this.taskType[i].constValue == e) {
  631. this.deptBudgetList.taskTypeKey = this.taskType[i].constKey
  632. }
  633. }
  634. },
  635. selecttaskwayList(e, index) {
  636. for (var i = 0; i < this.taskwayList.length; i++) {
  637. if (this.taskwayList[i].constValue == e) {
  638. this.deptBudgetList.tranProcessInfoList[index].tranTypeKey =
  639. this.taskwayList[i].constKey
  640. }
  641. }
  642. },
  643. selectgoodsname(e) {
  644. for (var i = 0; i < this.goodnameList.length; i++) {
  645. if (this.goodnameList[i].constValue == e) {
  646. this.deptBudgetList.goodsNameKey = this.goodnameList[i].constKey
  647. }
  648. }
  649. },
  650. onChange(files) {
  651. this.fileNum = files
  652. this.$refs.upload.handleSaveBill().then((res) => {
  653. console.log(files)
  654. })
  655. },
  656. submit() {
  657. this.$refs.deptBudgetList.validate((valid) => {
  658. if (valid) {
  659. for (
  660. var i = 0;
  661. i < this.deptBudgetList.tranProcessInfoList.length;
  662. i++
  663. ) {
  664. this.deptBudgetList.tranProcessInfoList[i].processNo =
  665. this.deptBudgetList.taskNo + (i + 1)
  666. }
  667. this.deptBudgetList.compId = sessionStorage.getItem('ws-pf_compId')
  668. this.deptBudgetList.tranType = this.checkList.toString()
  669. addtrantask(this.deptBudgetList)
  670. .toPromise()
  671. .then((response) => {
  672. this.$message.success('添加成功')
  673. this.deptBudgetList = {
  674. taskNo: '',
  675. totalStorage: 0,
  676. goodsName: '玉米',
  677. goodsNameKey: 1,
  678. warehouseType: '1',
  679. tranProcessInfoList: [
  680. {
  681. processNo: '',
  682. tranType: '汽运',
  683. deliveryDateStart: '',
  684. deliveryDateEnd: '',
  685. weight: '',
  686. selectedOptions: [],
  687. selectedOptions1: [],
  688. sendPrivate: '',
  689. sendCity: '',
  690. sendArea: '',
  691. receivePrivate: '',
  692. receiveCity: '',
  693. receiveArea: '',
  694. sendDetailedAddress: '',
  695. receiveDetailedAddress: '',
  696. sender: '',
  697. receiver: '',
  698. senderPhone: '',
  699. receiverPhone: '',
  700. },
  701. ],
  702. }
  703. this.$router.push({ path: 'tranManagementTransport' })
  704. })
  705. } else {
  706. EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
  707. return false
  708. }
  709. })
  710. },
  711. resetForm(deptBudgetList) {
  712. this.$refs[deptBudgetList].resetFields()
  713. },
  714. },
  715. }
  716. </script>
  717. <style lang="scss" scoped>
  718. .position {
  719. position: relative;
  720. border: 1px solid #5473e8;
  721. border-radius: 4px;
  722. margin-top: 20px;
  723. background: #f6f7fc;
  724. border-left: 5px solid #5473e8;
  725. }
  726. /deep/.position .ws-info-table .el-form-item {
  727. width: 25%;
  728. height: 50px;
  729. }
  730. /deep/.position .el-select {
  731. width: 100%;
  732. }
  733. /deep/.position .ws-info-table .el-form-item .el-form-item__label,
  734. /deep/.position .ws-info-table .el-form-item .el-form-item__content {
  735. background: #f6f7fc;
  736. font-size: 14px;
  737. color: #8890b1;
  738. }
  739. .typeselect{
  740. width:42%;
  741. margin-left:32px;
  742. }
  743. .del,
  744. .add {
  745. cursor: pointer;
  746. margin-left: 10px;
  747. }
  748. .el-checkbox-group {
  749. font-size: 0;
  750. float: right;
  751. margin-left: 25px;
  752. }
  753. .check-box {
  754. float: left;
  755. font-size: 14px;
  756. color: #8890B1;
  757. }
  758. .el-checkbox__label{
  759. color: #8890B1;
  760. }
  761. .el-form {
  762. padding: 0 10%;
  763. }
  764. .ws-info-table {
  765. border: none;
  766. }
  767. /deep/.ws-info-table .el-form-item {
  768. border-right: 1px solid #cdd2dc;
  769. border-bottom: 1px solid #cdd2dc;
  770. }
  771. .readonly {
  772. position: relative;
  773. }
  774. .title {
  775. position: relative;
  776. }
  777. .title::before {
  778. content: '';
  779. display: inline-block;
  780. width: 5px;
  781. height: 30px;
  782. background: #5473e8;
  783. position: absolute;
  784. left: 0;
  785. }
  786. //去边框
  787. /deep/.el-form-item {
  788. border-right: 0px;
  789. border-bottom: 0px;
  790. }
  791. .el-form {
  792. margin-top: 50px;
  793. }
  794. .endflag{
  795. vertical-align: top;
  796. }
  797. .el-col {
  798. background: #f6f7fc;
  799. }
  800. .bg-left {
  801. padding-left: 30px;
  802. }
  803. .bg-right {
  804. padding-right: 10px;
  805. text-align: right;
  806. }
  807. .bg-bottom {
  808. margin: 15px 0px;
  809. }
  810. .el-radio,
  811. .el-radio__input {
  812. margin-top: 11px;
  813. margin-left: 11px;
  814. width: 93px;
  815. }
  816. .driver {
  817. margin-top: 10px;
  818. font-weight: bold;
  819. margin-left: 20px;
  820. color: #5473E8;
  821. font-size: 16px;
  822. }
  823. /deep/.nei {
  824. .ws-info-table {
  825. border: none;
  826. }
  827. .el-form-item {
  828. width: 33.3333%;
  829. border: none;
  830. .el-form-item__label {
  831. background: transparent;
  832. border: none;
  833. }
  834. .el-form-item__content {
  835. border: none;
  836. }
  837. }
  838. }
  839. /deep/.el-table--border:after, /deep/.el-table--group:after, /deep/.el-table:before {
  840. background:transparent;
  841. }
  842. //输入框标题
  843. /deep/.ws-info-table .el-form-item .el-form-item__label {
  844. background: #ffffff;
  845. width: min-content;
  846. font-size: 14px;
  847. color: #8890b1;
  848. }
  849. //表单子项
  850. /deep/.ws-info-table .el-form-item {
  851. width: 20%;
  852. border: none;
  853. height: 50px;
  854. }
  855. //输入框
  856. /deep/.ws-info-table .el-form-item .el-form-item__content {
  857. border: none;
  858. font-size: 14px;
  859. color: #8890b1;
  860. }
  861. /deep/ .el-input--small .el-input__inner {
  862. font-size: 14px;
  863. color: #8890b1;
  864. }
  865. .el-form-item.start-address.el-form-item--small {
  866. width: 31.9%;
  867. }
  868. .el-cascader {
  869. width: 100%;
  870. }
  871. .el-form{
  872. height: 73vh;
  873. overflow: scroll;
  874. }
  875. </style>