tranManagementDriverAdd.vue 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011
  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. <ws-form
  25. ref="deptBudgetList"
  26. :rules="mainReportAdd"
  27. :model="deptBudgetList"
  28. >
  29. <div class="flex">
  30. <div class="driver">司机信息</div>
  31. <ws-info-table>
  32. <!--司机姓名-->
  33. <ws-form-item
  34. label="姓名"
  35. span="1"
  36. prop="contractNo"
  37. class="readonly bg-right"
  38. >
  39. <ws-input
  40. v-model="deptBudgetList.driverName"
  41. placeholder="请输入司机姓名"
  42. maxlength="20"
  43. size="small"
  44. />
  45. </ws-form-item>
  46. <!--手机号-->
  47. <ws-form-item
  48. label="手机号"
  49. span="1"
  50. prop="driverPhone"
  51. class="readonly"
  52. >
  53. <ws-input
  54. v-model="deptBudgetList.driverPhone"
  55. placeholder="请输入手机号"
  56. maxlength="100"
  57. size="small"
  58. />
  59. </ws-form-item>
  60. <!--常驻城市-->
  61. <ws-form-item label="常驻城市" span="1" prop="acceptanceMethod">
  62. <el-cascader
  63. :options="options_"
  64. v-model="selectedOptions"
  65. clearable
  66. size="large"
  67. placeholder="请选择常驻城市"
  68. style="width: 200%"
  69. class="el-cascader"
  70. @change="handleChange"
  71. />
  72. </ws-form-item>
  73. <!--身份证号-->
  74. <ws-form-item
  75. label="身份证号"
  76. span="1"
  77. prop="driverNo"
  78. class="readonly"
  79. >
  80. <ws-input
  81. v-model="deptBudgetList.numberCard"
  82. placeholder="请输入身份证号"
  83. maxlength="100"
  84. size="small"
  85. />
  86. </ws-form-item>
  87. </ws-info-table>
  88. {{ age }}
  89. </div>
  90. </ws-form>
  91. <ws-form
  92. ref="deptBudgetList"
  93. :rules="mainReportAdd"
  94. :model="deptBudgetList"
  95. >
  96. <div
  97. style="width: 100%"
  98. class="flex position"
  99. v-for="(item, index) in freightspace"
  100. >
  101. <div class="flex">
  102. <div class="driver">货车信息-{{ index + 1 }}</div>
  103. <ws-info-table class="el-table">
  104. <!--车牌号-->
  105. <ws-form-item
  106. label="车牌号"
  107. span="1"
  108. prop="carNumber"
  109. class="forlist"
  110. width="400px"
  111. >
  112. <ws-input
  113. v-model="item.carNumber"
  114. placeholder="请输入车牌号"
  115. maxlength="20"
  116. size="small"
  117. />
  118. </ws-form-item>
  119. <!--车型-->
  120. <ws-form-item label="车型" span="1" prop="carModel" class="forlist">
  121. <ws-select
  122. v-model="item.carModel"
  123. placeholder=""
  124. class="typeselect"
  125. @change="selectcarModel"
  126. >
  127. <ws-option
  128. v-for="item in carModelList"
  129. :key="item.constKey"
  130. :label="item.constValue"
  131. :value="item.constValue"
  132. />
  133. </ws-select>
  134. </ws-form-item>
  135. <!--车长-->
  136. <ws-form-item
  137. label="不含车头车长(米)"
  138. span="1"
  139. prop="carLength"
  140. class="forlist"
  141. >
  142. <ws-select
  143. v-model="item.carLength"
  144. placeholder=""
  145. class="typeselect"
  146. @change="selectcarLength"
  147. >
  148. <ws-option
  149. v-for="item in carLengthList"
  150. :key="item.constKey"
  151. :label="item.constValue"
  152. :value="item.constValue"
  153. />
  154. </ws-select>
  155. </ws-form-item>
  156. <!--载重-->
  157. <ws-form-item label="载重" span="1" prop="carLoad" class="forlist">
  158. <ws-input
  159. v-model="item.carLoad"
  160. placeholder="请输入载重"
  161. maxlength="100"
  162. size="small"
  163. />
  164. </ws-form-item>
  165. <!--出厂年份-->
  166. <ws-form-item
  167. label="出厂年份"
  168. span="1"
  169. prop="yearManufacture"
  170. class="forlist"
  171. >
  172. <ws-input
  173. v-model="item.yearManufacture"
  174. placeholder="请输入年份"
  175. maxlength="100"
  176. size="small"
  177. />
  178. </ws-form-item>
  179. </ws-info-table>
  180. <img
  181. width="22"
  182. height="22"
  183. class="add"
  184. @click="add"
  185. src="../../../public/img/add.png"
  186. alt=""
  187. />
  188. <img
  189. width="22"
  190. height="22"
  191. class="del"
  192. @click="del(index)"
  193. src="../../../public/img/del.png"
  194. alt=""
  195. />
  196. </div>
  197. </div>
  198. </ws-form>
  199. <ws-form
  200. ref="deptBudgetList"
  201. :rules="mainReportAdd"
  202. :model="deptBudgetList"
  203. >
  204. <div
  205. style="width: 100%"
  206. class="flex position"
  207. v-for="(item, index) in freightspace1"
  208. >
  209. <div class="flex">
  210. <div class="driver">收款人账户信息-{{ index + 1 }}</div>
  211. <ws-info-table class="el-table">
  212. <!--账户类型-->
  213. <ws-form-item
  214. label="账户类型"
  215. span="1"
  216. prop="contractNo"
  217. class="el-car bg-right"
  218. >
  219. <el-radio v-model="item.accountTypeFlag" label="1"
  220. >私人账号</el-radio
  221. >
  222. <el-radio v-model="item.accountTypeFlag" label="2"
  223. >企业账户</el-radio
  224. >
  225. </ws-form-item>
  226. <!--账号-->
  227. <ws-form-item label="账号" span="1" prop="bankCard" class="el-car">
  228. <ws-input
  229. v-model="item.bankCard"
  230. placeholder="请输入账号"
  231. maxlength="100"
  232. size="small"
  233. />
  234. <el-upload
  235. action="https://www.zthymaoyi.com/upload/admin"
  236. :show-file-list="false"
  237. :on-success="
  238. (res, file) => {
  239. uploadSuccessHandle1(index, res, file)
  240. }
  241. "
  242. class="avatar-uploader"
  243. accept=".jpg, .jpeg, .png, .gif"
  244. ><img
  245. width="18"
  246. height="20"
  247. style="
  248. vertical-align: text-top;
  249. position: relative;
  250. top: -1px;
  251. "
  252. src="../../../public/img/fujian.png"
  253. alt=""
  254. />
  255. </el-upload>
  256. </ws-form-item>
  257. <!--开户行-->
  258. <ws-form-item
  259. label="开户行"
  260. span="1"
  261. prop="bankDeposit"
  262. class="el-car"
  263. >
  264. <ws-input
  265. v-model="item.bankDeposit"
  266. placeholder="请输入开户行"
  267. maxlength="100"
  268. size="small"
  269. />
  270. </ws-form-item>
  271. <!--姓名-->
  272. <ws-form-item
  273. label="姓名"
  274. v-if="item.accountTypeFlag == 1"
  275. span="1"
  276. prop="payeeName"
  277. class="el-car"
  278. width="150px"
  279. >
  280. <ws-input
  281. v-model="item.payeeName"
  282. placeholder="请输入姓名"
  283. maxlength="100"
  284. size="small"
  285. />
  286. </ws-form-item>
  287. <!--企业名称-->
  288. <ws-form-item
  289. label="企业名称"
  290. v-else
  291. span="1"
  292. prop="compName"
  293. class="el-car"
  294. width="150px"
  295. >
  296. <ws-input
  297. v-model="item.compName"
  298. placeholder="请输入企业名称"
  299. maxlength="100"
  300. size="small"
  301. />
  302. </ws-form-item>
  303. <!--身份证号-->
  304. <ws-form-item
  305. label="身份证号"
  306. v-if="item.accountTypeFlag == 1"
  307. span="1"
  308. prop="payeeNumberCard"
  309. class="el-car"
  310. >
  311. <ws-input
  312. v-model="item.payeeNumberCard"
  313. placeholder="请输入身份证号"
  314. maxlength="100"
  315. size="small"
  316. />
  317. <el-upload
  318. action="https://www.zthymaoyi.com/upload/admin"
  319. :show-file-list="false"
  320. :on-success="
  321. (res, file) => {
  322. uploadSuccessHandle(index, res, file)
  323. }
  324. "
  325. class="avatar-uploader"
  326. accept=".jpg, .jpeg, .png, .gif"
  327. ><img
  328. width="18"
  329. height="20"
  330. style="
  331. vertical-align: text-top;
  332. position: relative;
  333. top: -1px;
  334. "
  335. src="../../../public/img/fujian.png"
  336. alt=""
  337. />
  338. </el-upload>
  339. </ws-form-item>
  340. <ws-form-item label="开户支行" span="1" prop="bankDepositBranch">
  341. <ws-select
  342. v-model="item.bankDepositBranch"
  343. placeholder=""
  344. class="typeselect"
  345. @change="
  346. (value) => {
  347. selectbankDepositBranch(value, index)
  348. }
  349. "
  350. >
  351. <ws-option
  352. v-for="(items, index) in item.bankDepositBranchList"
  353. :key="index"
  354. :label="items"
  355. :value="items"
  356. />
  357. </ws-select>
  358. </ws-form-item>
  359. </ws-info-table>
  360. <img
  361. width="22"
  362. height="22"
  363. class="add"
  364. @click="add1"
  365. src="../../../public/img/add.png"
  366. alt=""
  367. />
  368. <img
  369. width="22"
  370. height="22"
  371. class="del"
  372. @click="del1(index)"
  373. src="../../../public/img/del.png"
  374. alt=""
  375. />
  376. </div>
  377. </div>
  378. </ws-form>
  379. <ws-form
  380. ref="deptBudgetList"
  381. :rules="mainReportAdd"
  382. :model="deptBudgetList"
  383. >
  384. <div class="flex">
  385. <div>
  386. <el-upload
  387. action="https://www.zthymaoyi.com/upload/admin"
  388. :show-file-list="false"
  389. :on-success="uploadSuccessHandletravel"
  390. class="avatar-uploader"
  391. accept=".jpg, .jpeg, .png, .gif"
  392. ><el-button class="upload" size="small" type="primary"
  393. >行驶证</el-button
  394. >
  395. </el-upload>
  396. <img
  397. v-show="addressUrls.travel"
  398. width="100"
  399. height="100"
  400. :src="addressUrls.travel"
  401. alt=""
  402. />
  403. </div>
  404. <div>
  405. <el-upload
  406. action="https://www.zthymaoyi.com/upload/admin"
  407. :show-file-list="false"
  408. :on-success="uploadSuccessHandledrive"
  409. class="avatar-uploader"
  410. accept=".jpg, .jpeg, .png, .gif"
  411. ><el-button class="upload" size="small" type="primary"
  412. >驾驶证</el-button
  413. >
  414. </el-upload>
  415. <img
  416. v-if="addressUrls.drive"
  417. width="100"
  418. height="100"
  419. :src="addressUrls.drive"
  420. alt=""
  421. />
  422. </div>
  423. <div>
  424. <el-upload
  425. action="https://www.zthymaoyi.com/upload/admin"
  426. :show-file-list="false"
  427. :on-success="uploadSuccessHandleway"
  428. class="avatar-uploader"
  429. accept=".jpg, .jpeg, .png, .gif"
  430. ><el-button class="upload" size="small" type="primary"
  431. >道路运营证</el-button
  432. >
  433. </el-upload>
  434. <img
  435. v-if="addressUrls.way"
  436. width="100"
  437. height="100"
  438. :src="addressUrls.way"
  439. alt=""
  440. />
  441. </div>
  442. <div>
  443. <el-upload
  444. action="https://www.zthymaoyi.com/upload/admin"
  445. :show-file-list="false"
  446. :on-success="uploadSuccessHandlequalification"
  447. class="avatar-uploader"
  448. accept=".jpg, .jpeg, .png, .gif"
  449. ><el-button class="upload" size="small" type="primary"
  450. >从业资格证</el-button
  451. >
  452. </el-upload>
  453. <img
  454. v-if="addressUrls.qualification"
  455. width="100"
  456. height="100"
  457. :src="addressUrls.qualification"
  458. alt=""
  459. />
  460. </div>
  461. <div>
  462. <el-upload
  463. action="https://www.zthymaoyi.com/upload/admin"
  464. :show-file-list="false"
  465. :on-success="uploadSuccessHandleidentityjust"
  466. class="avatar-uploader"
  467. accept=".jpg, .jpeg, .png, .gif"
  468. ><el-button class="upload" size="small" type="primary"
  469. >身份证正面</el-button
  470. >
  471. </el-upload>
  472. <img
  473. v-if="addressUrls.identityjust"
  474. width="100"
  475. height="100"
  476. :src="addressUrls.identityjust"
  477. alt=""
  478. />
  479. </div>
  480. <div>
  481. <el-upload
  482. action="https://www.zthymaoyi.com/upload/admin"
  483. :show-file-list="false"
  484. :on-success="uploadSuccessHandleidentityagainst"
  485. class="avatar-uploader"
  486. accept=".jpg, .jpeg, .png, .gif"
  487. ><el-button class="upload" size="small" type="primary"
  488. >身份证反面</el-button
  489. >
  490. </el-upload>
  491. <img
  492. v-if="addressUrls.identityagainst"
  493. width="100"
  494. height="100"
  495. :src="addressUrls.identityagainst"
  496. alt=""
  497. />
  498. </div>
  499. </div>
  500. </ws-form>
  501. <!-- 提交 -->
  502. <div style="text-align: right; padding: 10px" class="center">
  503. <el-button
  504. class="bg-bottom"
  505. type="primary"
  506. size="small"
  507. @click="submit(deptBudgetList)"
  508. >提交</el-button
  509. >
  510. </div>
  511. </div>
  512. </template>
  513. <script>
  514. import { provinceAndCityData, CodeToText } from 'element-china-area-data'
  515. import { packList } from '@/model/contarct/index'
  516. import { getidentity, getbank, addDriver } from '@/model/transport/index'
  517. import WsUpload from '@/components/WsUpload'
  518. import mapDrag from '@/components/mapdrag/mapdrag'
  519. export default {
  520. name: 'viewSpareMoney',
  521. components: {
  522. WsUpload,
  523. mapDrag,
  524. },
  525. watch: {
  526. vesselId(val) {
  527. this.getVesselData()
  528. },
  529. isShow(val) {
  530. this.showType = val
  531. },
  532. },
  533. data() {
  534. let self = this
  535. return {
  536. deptBudgetList: {
  537. totalStorage: 0,
  538. drivercarInfo: {
  539. goodsName: '',
  540. },
  541. driverPayeeInfo: {},
  542. },
  543. radio: '1',
  544. carModelList: [],
  545. carLengthList: [],
  546. options_: provinceAndCityData,
  547. heightData: '600px',
  548. zoom: 7,
  549. selectedOptions: [],
  550. center: [116.244694, 39.517344],
  551. window: '',
  552. district: null,
  553. listDate: { country: '中国', level: 'country', city: '' },
  554. citylist: [],
  555. compId: sessionStorage.getItem('ws-pf_compId'),
  556. mainReportAdd: {},
  557. appendixIdsAdd: '',
  558. size: 10,
  559. value1: '',
  560. unitList: [],
  561. accessoryBankTFs: false,
  562. addressUrls: {},
  563. freightspace: [
  564. {
  565. carNumber: '',
  566. carModel: '高栏',
  567. carModelKey: '1',
  568. carLength: '13',
  569. carLengthKey: '1',
  570. carLoad: '',
  571. yearManufacture: '',
  572. },
  573. ],
  574. freightspace1: [
  575. {
  576. accountTypeFlag: '1',
  577. payeeName: '',
  578. payeeNumberCard: '',
  579. compName: '',
  580. bankDeposit: '',
  581. addressUrlArray: [],
  582. bankCard: '',
  583. },
  584. ],
  585. name: '',
  586. age: '',
  587. }
  588. },
  589. activated() {
  590. this.loaddata()
  591. this.showType = this.isShow
  592. },
  593. computed: {},
  594. methods: {
  595. IdCard(UUserCard) {
  596. //获取年龄
  597. var myDate = new Date()
  598. var month = myDate.getMonth() + 1
  599. var day = myDate.getDate()
  600. var age = myDate.getFullYear() - UUserCard.substring(6, 10) - 1
  601. if (
  602. UUserCard.substring(10, 12) < month ||
  603. (UUserCard.substring(10, 12) == month &&
  604. UUserCard.substring(12, 14) <= day)
  605. ) {
  606. age++
  607. }
  608. this.age = age
  609. },
  610. bankcardfujian(item) {
  611. this.accessoryBankTFs = true
  612. },
  613. loaddata() {
  614. // 车型
  615. packList({ constId: 'TRAN1' })
  616. .toPromise()
  617. .then((response) => {
  618. this.carModelList = response
  619. })
  620. // 车长
  621. packList({ constId: 'TRAN2' })
  622. .toPromise()
  623. .then((response) => {
  624. this.carLengthList = response
  625. })
  626. },
  627. confirmPositioncity() {
  628. this.listDate.level = 'city'
  629. this.listDate.country = this.name
  630. },
  631. uploadSuccessHandle(index, e, fileList) {
  632. console.log(index, e, fileList)
  633. const that = this
  634. getidentity({ personImg: e.url })
  635. .toPromise()
  636. .then((response) => {
  637. for (var i = 0; i < this.freightspace1.length; i++) {
  638. if (i == index) {
  639. this.freightspace1[i].cardAddressUrl = e.url
  640. this.freightspace1[i].payeeName = response.recPerson
  641. this.freightspace1[i].payeeNumberCard = response.recPersonNo
  642. }
  643. }
  644. })
  645. },
  646. uploadSuccessHandle1(index, e, fileList) {
  647. console.log(index, e, fileList)
  648. const that = this
  649. // this.deptBudgetList.cardAddressUrl = e.url
  650. getbank({ bankImg: e.url })
  651. .toPromise()
  652. .then((response) => {
  653. for (var i = 0; i < this.freightspace1.length; i++) {
  654. if (i == index) {
  655. this.freightspace1[i].payeeAddressUrl = e.url
  656. this.freightspace1[i].bankCard = response.bankNo
  657. this.freightspace1[i].bankDeposit = response.bankName
  658. this.freightspace1[i].bankDepositBranchList =
  659. response.bankNameZhihang
  660. }
  661. }
  662. })
  663. },
  664. uploadSuccessHandletravel(e) {
  665. this.$set(this.addressUrls, 'travel', e.url)
  666. },
  667. uploadSuccessHandledrive(e) {
  668. this.$set(this.addressUrls, 'drive', e.url)
  669. },
  670. uploadSuccessHandleway(e) {
  671. this.$set(this.addressUrls, 'way', e.url)
  672. this.addressUrls.way = e.url
  673. },
  674. uploadSuccessHandlequalification(e) {
  675. this.$set(this.addressUrls, 'qualification', e.url)
  676. },
  677. uploadSuccessHandleidentityjust(e) {
  678. this.$set(this.addressUrls, 'identityjust', e.url)
  679. },
  680. uploadSuccessHandleidentityagainst(e) {
  681. this.$set(this.addressUrls, 'identityagainst', e.url)
  682. },
  683. selectbankDepositBranch(e, index) {
  684. this.freightspace1[index].bankDepositBranch = e
  685. },
  686. // 关闭 dialog时 处理文件url 初始化upload组件
  687. handleClose() {
  688. this.dialogViewSpareMoney = false
  689. },
  690. add() {
  691. this.freightspace.push({
  692. carNumber: '',
  693. carModel: '高栏',
  694. carModelKey: '1',
  695. carLength: '13',
  696. carLengthKey: '1',
  697. carLoad: '',
  698. yearManufacture: '',
  699. })
  700. },
  701. del(index) {
  702. if (this.freightspace.length > 1) {
  703. this.freightspace.splice(index, 1)
  704. }
  705. },
  706. add1() {
  707. this.freightspace1.push({
  708. accountTypeFlag: '1',
  709. payeeName: '',
  710. payeeNumberCard: '',
  711. compName: '',
  712. bankDeposit: '',
  713. bankCard: '',
  714. addressUrlArray: [],
  715. })
  716. },
  717. del1(index) {
  718. if (this.freightspace1.length > 1) {
  719. this.freightspace1.splice(index, 1)
  720. }
  721. },
  722. identitycardfujian(item) {},
  723. handleChange(value) {
  724. this.selectedOptions = value
  725. },
  726. returnsales() {
  727. this.$router.push({ path: 'tranManagementDriver' })
  728. },
  729. // confirmPosition() {
  730. // this.draggable = false
  731. // },
  732. // 上传附件
  733. uploadSuccess(data, files, url) {
  734. console.log(data, files, url)
  735. // this.deptBudgetList.
  736. // this.formData.append('files', files)
  737. // this.feedbackObj.uploadNameAttachment = data.appendixName
  738. // this.feedbackObj.pathUploadAttachment = data.appendixPath
  739. // // this.newAppendixs = files
  740. // this.onChangeFlag = true
  741. },
  742. selectcarModel(e) {
  743. for (var i = 0; i < this.carModelList.length; i++) {
  744. if (this.carModelList[i].constValue == e) {
  745. this.deptBudgetList.carModelKey = this.carModelList[i].constKey
  746. }
  747. }
  748. },
  749. selectcarLength(e) {
  750. for (var i = 0; i < this.carLengthList.length; i++) {
  751. if (this.carLengthList[i].constValue == e) {
  752. this.deptBudgetList.carLengthKey = this.carLengthList[i].constKey
  753. }
  754. }
  755. },
  756. onChange(files) {
  757. this.fileNum = files
  758. this.$refs.upload.handleSaveBill().then((res) => {
  759. console.log(files)
  760. })
  761. },
  762. submit() {
  763. var arr = []
  764. for (let key in this.addressUrls) {
  765. arr.push(this.addressUrls[key])
  766. }
  767. this.$refs.deptBudgetList.validate((valid) => {
  768. if (valid) {
  769. this.deptBudgetList.compId = sessionStorage.getItem('ws-pf_compId')
  770. this.deptBudgetList.residentCityProvincial =
  771. CodeToText[this.selectedOptions[0]]
  772. this.deptBudgetList.residentCityMunicipal =
  773. CodeToText[this.selectedOptions[1]]
  774. this.deptBudgetList.addressUrl = arr.toString()
  775. this.deptBudgetList.driverCarInfoList = this.freightspace
  776. this.deptBudgetList.driverPayeeInfoList = this.freightspace1
  777. console.log(this.deptBudgetList)
  778. addDriver(this.deptBudgetList)
  779. .toPromise()
  780. .then((response) => {
  781. this.$message.success('添加成功')
  782. this.deptBudgetList = {}
  783. this.$router.push({ path: 'tranManagementDriver' })
  784. })
  785. } else {
  786. EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
  787. return false
  788. }
  789. })
  790. },
  791. resetForm(deptBudgetList) {
  792. this.$refs[deptBudgetList].resetFields()
  793. },
  794. },
  795. }
  796. </script>
  797. <style lang="scss" scoped>
  798. .position {
  799. position: relative;
  800. }
  801. .add,
  802. .del {
  803. position: absolute;
  804. right: -38px;
  805. top: 9px;
  806. cursor: pointer;
  807. }
  808. .del {
  809. right: -70px;
  810. }
  811. .amap-page-container {
  812. width: 300px;
  813. height: 300px;
  814. }
  815. .el-form {
  816. padding: 0 10%;
  817. }
  818. /deep/.ws-info-table .el-form-item {
  819. border-right: 1px solid #cdd2dc;
  820. border-bottom: 1px solid #cdd2dc;
  821. }
  822. .readonly {
  823. position: relative;
  824. }
  825. .title {
  826. position: relative;
  827. }
  828. .el-car {
  829. width: 413px;
  830. }
  831. .title::before {
  832. content: '';
  833. display: inline-block;
  834. width: 5px;
  835. height: 30px;
  836. background: #5473e8;
  837. position: absolute;
  838. left: 0;
  839. }
  840. .el-col {
  841. background: #f6f7fc;
  842. }
  843. /deep/.ws-info-table .el-form-item .el-form-item__content {
  844. padding: 0 25px;
  845. border-left: 1px solid #cdd2dc;
  846. background: #fafbfc;
  847. }
  848. /deep/.ws-info-table .el-form-item .el-form-item__label {
  849. width: 140px;
  850. text-align: center;
  851. background: #f0f2f6;
  852. // border: 1px solid #cdd2dc;
  853. }
  854. .button-container {
  855. display: flex;
  856. flex-wrap: nowrap;
  857. justify-content: space-between;
  858. align-items: center;
  859. background-color: #fff;
  860. width: 100%;
  861. height: 50px;
  862. padding: 0 10px;
  863. & > div {
  864. margin-left: 10px;
  865. display: flex;
  866. flex-wrap: nowrap;
  867. flex-direction: row;
  868. & > span {
  869. line-height: 50px;
  870. }
  871. }
  872. /deep/.auditFlow-box {
  873. position: unset;
  874. margin-left: 10px;
  875. &/deep/.auditFlow-icon {
  876. width: auto;
  877. padding-right: 30px;
  878. }
  879. &/deep/.auditFlow-main {
  880. position: absolute;
  881. }
  882. }
  883. }
  884. .box-app {
  885. display: inline-block;
  886. float: left;
  887. margin-left: 30px;
  888. line-height: 50px;
  889. }
  890. /deep/.el-dialog {
  891. .el-form-item {
  892. margin-bottom: 0 !important;
  893. .el-input--medium {
  894. textarea {
  895. min-height: 100px !important;
  896. }
  897. }
  898. }
  899. }
  900. .avatar-uploader {
  901. margin: 0 5px;
  902. }
  903. .collapse-bottom {
  904. margin-bottom: 20px;
  905. }
  906. .input-main .textarea .el-textarea__inner {
  907. width: 100%;
  908. z-index: 1;
  909. }
  910. .bg-left {
  911. padding-left: 30px;
  912. }
  913. .bg-right {
  914. padding-right: 10px;
  915. text-align: right;
  916. }
  917. .bg-bottom {
  918. margin: 15px 0px;
  919. }
  920. .wenzi {
  921. width: 900px;
  922. margin: 0 auto;
  923. }
  924. .wenzi h3 {
  925. display: inline-block;
  926. left: 10px;
  927. }
  928. .wenzi p {
  929. display: inline-block;
  930. }
  931. .center {
  932. width: 900px;
  933. margin: 0 auto;
  934. }
  935. .el-form-item__label {
  936. text-align: center;
  937. }
  938. .el-table {
  939. width: 1240px;
  940. }
  941. .ce {
  942. width: 900px;
  943. margin: 0 auto;
  944. }
  945. .driver {
  946. width: 120px;
  947. margin-top: 10px;
  948. font-weight: bold;
  949. }
  950. // 控制select为只读的时候显示样式
  951. /deep/.ws-class-table-col {
  952. height: auto;
  953. padding: 0px 2px;
  954. /deep/.el-input__inner {
  955. padding: 0px 2px;
  956. }
  957. }
  958. .winseaview-view {
  959. padding: 0 0 20px;
  960. }
  961. .container {
  962. overflow: scroll;
  963. height: 93vh;
  964. }
  965. /deep/.ws-info-table .el-form-item .el-form-item__label {
  966. width: 80px;
  967. }
  968. /deep/.ws-info-table .el-form-item {
  969. width: 25%;
  970. }
  971. .el-textarea__inner {
  972. display: none;
  973. }
  974. .el-form {
  975. margin-top: 50px;
  976. }
  977. .readonly {
  978. width: 16%;
  979. }
  980. .el-cascader {
  981. width: 145px;
  982. }
  983. .forlist {
  984. width: 20%;
  985. }
  986. .el-form-item.forlist.is-success.el-form-item--small {
  987. width: 20%;
  988. }
  989. .el-form-item.forlist.el-form-item--small {
  990. width: 20%;
  991. }
  992. .el-form-item.readonly.is-success.el-form-item--small.showLableToopTip {
  993. width: 20%;
  994. }
  995. .el-form-item.el-car.el-form-item--small {
  996. width: 33.3%;
  997. }
  998. </style>