addWagonLoad.vue 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778
  1. <template>
  2. <!-- 万州港-达州新增装车1 -->
  3. <div class="addWagonLoad">
  4. <page-title>返回</page-title>
  5. <div class="tempTable">
  6. <div class="search" style="display:flex;margin: 10px;">
  7. <el-input
  8. placeholder="请输入车皮号或外轮船名"
  9. v-model="input"
  10. style="margin: 10px; width:38%"
  11. clearable
  12. ></el-input>
  13. <el-button
  14. type="primary"
  15. class="btn"
  16. @click="findWagon()"
  17. style="margin: 10px;"
  18. >
  19. <i class="el-icon-search"></i>查询
  20. </el-button>
  21. <el-upload style="margin: 10px;"
  22. class="upload-excel"
  23. action=""
  24. :on-change="importExcel"
  25. :show-file-list="false"
  26. accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
  27. :auto-upload="false">
  28. <el-button type="primary">
  29. <i class="el-icon-search"></i>导入查询</el-button>
  30. <span >查询结果数量:{{tableDataReal.length}}</span>
  31. </el-upload>
  32. </div>
  33. <!-- 临时表已导入配单的车皮 -->
  34. <div class="tempTable" style="height:300px;overflow:scroll;float:left;margin-left:5px">
  35. <el-table
  36. ref="tempTable"
  37. empty-text="请先查询,再查看数据"
  38. highlight-current-row
  39. @selection-change="handleSelectionChange"
  40. @row-click="rowClick"
  41. :data="tableDataReal"
  42. :row-style="{height:'40px'}"
  43. style="width: 100%;font-size: 18px"
  44. id="domesticTable">
  45. <el-table-column
  46. type="selection"
  47. width="55">
  48. </el-table-column>
  49. <el-table-column
  50. type="index"
  51. width="50"
  52. prop="tempResultId"
  53. label="编号"
  54. align="center"
  55. fixed="left"
  56. :resizable="false">
  57. </el-table-column>
  58. <el-table-column
  59. align="center"
  60. prop="materialName"
  61. label="物资名"
  62. width="240px">
  63. </el-table-column>
  64. <el-table-column
  65. align="center"
  66. prop="foreignShipName"
  67. label="外轮船名"
  68. width="100px">
  69. </el-table-column>
  70. <el-table-column
  71. align="center"
  72. prop="wagonNo"
  73. label="车号"
  74. width="180px">
  75. </el-table-column>
  76. <el-table-column
  77. align="center"
  78. width="100px"
  79. prop="resultBillableTonnage"
  80. label="标重">
  81. </el-table-column>
  82. <el-table-column
  83. align="center"
  84. prop="updateTime"
  85. label="出库时间"
  86. width="200px">
  87. </el-table-column>
  88. </el-table>
  89. </div>
  90. </div>
  91. <div class="right"
  92. style="margin-top:10px
  93. float:right;">
  94. <div class="form">
  95. <div class="form_box" style="">
  96. <el-form>
  97. <div class="preview-group">
  98. <el-form-item label="发站:">
  99. <el-autocomplete
  100. disabled
  101. class="inline-input"
  102. v-model="sendStation"
  103. :fetch-suggestions="querySearchSendStation"
  104. placeholder="请输入发站名称"
  105. :trigger-on-focus="false"
  106. @select="handleSelectSendStation"
  107. >
  108. <template slot-scope="{ item }">
  109. <div class="name">{{ item.arrivalName }}</div>
  110. </template>
  111. </el-autocomplete>
  112. </el-form-item>
  113. <el-form-item label="到站:">
  114. <el-select filterable v-model="arrivalStationId">
  115. <el-option v-for="item in arrivalStations" :value="item.arrivalId" :key="item.arrivalId" :label="item.arrivalName"></el-option>
  116. </el-select>
  117. </el-form-item>
  118. </div>
  119. </el-form>
  120. <dil-form :formId="387" v-model="form1" ref="from1"></dil-form>
  121. </div>
  122. </div>
  123. <div class="button-box">
  124. <el-button @click="cancel">取消</el-button>
  125. <el-button type="primary" :loading="isLoading" :disabled="!isSend" @click="makeSure">确定</el-button>
  126. </div>
  127. </div>
  128. </div>
  129. </template>
  130. <script>
  131. import PageTitle from "@/components/Page/Title";
  132. import { sjTime } from "@/utils/sharedJsFile";
  133. import {getCookie} from "@/utils/util.js";
  134. export default {
  135. components: { PageTitle },
  136. data() {
  137. return {
  138. isSend:false,
  139. isLoading:false,
  140. list: [],
  141. form1: {
  142. resultLoadingDate:new Date()
  143. },
  144. tableData:[],
  145. tableDataReal:[],
  146. selectionRow:[],
  147. input: "",
  148. value: undefined,
  149. //船名
  150. remark: null,
  151. //采购订单id
  152. purchaseOrderId: null,
  153. //物资名称
  154. materialName: null,
  155. //发货单位名称
  156. supplierName: null,
  157. //发货单位id
  158. supplierId: null,
  159. //物资id
  160. materialId: null,
  161. //是否需要打开模态窗口
  162. drawer: false,
  163. //卸货点id
  164. unloadPointId: null,
  165. //卸货点名称
  166. unloadPointName: null,
  167. //查询
  168. search1:null,
  169. search2:null,
  170. a: 1,
  171. direction: "rtl",
  172. inputText: "",
  173. sendStationId: 4,//发站id和到站id都写死了,并且赋了港口名,如果数据库id变化,要注意
  174. sendStation:"万州港",
  175. arrivalStationId:1,
  176. arrivalStations:[]
  177. };
  178. },
  179. mounted(){
  180. this.form1.resultLoadingDate=new Date();
  181. this.getArrivalStation();
  182. this.searchLoadTemp();
  183. },
  184. methods: {
  185. findWagon(){
  186. this.tableDataReal=[];
  187. this.isSend=true;
  188. this.tableData.forEach((item)=>{
  189. if(item.foreignShipName.includes(this.input) || item.wagonNo.includes(this.input)){
  190. this.tableDataReal.push(item);
  191. }
  192. });
  193. if(this.tableDataReal.length<=0){
  194. this.$message.warning("查询不到记录!");
  195. }
  196. console.log("serachResult:",this.tableDataReal);
  197. },
  198. //发站弹出层
  199. handleSelectSendStation(item) {
  200. this.sendStationId = item.arrivalId;
  201. this.sendStation = item.arrivalName;
  202. },
  203. //以下是发站边输边查搜索
  204. querySearchSendStation(queryString, cb) {
  205. this.axios
  206. .get("/api/v1/uc/getArrivalByLike?index=" + this.sendStation)
  207. .then((res) => {
  208. if (res.data.code == "200") {
  209. var restaurantsSupplier = res.data.data;
  210. console.log(restaurantsSupplier)
  211. var results = queryString
  212. ? restaurantsSupplier.filter(
  213. this.createFilterSendStation(queryString)
  214. )
  215. : restaurantsSupplier;
  216. // 调用 callback 返回建议列表的数据
  217. cb(results);
  218. }
  219. });
  220. },
  221. //发站
  222. createFilterSendStation(queryString) {
  223. return (restaurantsSupplier) => {
  224. return (
  225. restaurantsSupplier.arrivalName
  226. .toLowerCase()
  227. .indexOf(queryString.toLowerCase()) > -1
  228. );
  229. };
  230. },
  231. //到站弹出层
  232. handleSelectToTheStation(item) {
  233. this.toTheStationId = item.arrivalId;
  234. this.toTheStation = item.arrivalName;
  235. },
  236. //以下是到站边输边查搜索
  237. querySearchToTheStation(queryString, cb) {
  238. this.axios
  239. .get("/api/v1/uc/getArrivalByLike?index=" + this.toTheStation)
  240. .then((res) => {
  241. if (res.data.code == "200") {
  242. var restaurantsSupplier = res.data.data;
  243. console.log(restaurantsSupplier)
  244. var results = queryString
  245. ? restaurantsSupplier.filter(
  246. this.createFilterToTheStation(queryString)
  247. )
  248. : restaurantsSupplier;
  249. // 调用 callback 返回建议列表的数据
  250. cb(results);
  251. }
  252. });
  253. },
  254. //到站
  255. createFilterToTheStation(queryString) {
  256. return (restaurantsSupplier) => {
  257. return (
  258. restaurantsSupplier.arrivalName
  259. .toLowerCase()
  260. .indexOf(queryString.toLowerCase()) > -1
  261. );
  262. };
  263. },
  264. // 确定
  265. makeSure() {
  266. this.isLoading=true;
  267. if (this.selectionRow.length <= 0 ||
  268. !this.sendStationId ||
  269. !this.arrivalStationId ||
  270. !this.form1.resultLoadingDate){
  271. if (this.selectionRow.length <= 0) {
  272. this.$message({
  273. type: "warning",
  274. message: "请选择车皮号!",
  275. });
  276. this.isLoading=false;
  277. return;
  278. }else{
  279. this.$message({
  280. type: "warning",
  281. message: "除备注外皆为必填!",
  282. });
  283. this.isLoading=false;
  284. return;
  285. }
  286. }
  287. let date=this.form1.resultLoadingDate;
  288. let month=(date.getMonth()+1);
  289. let day=date.getDate();
  290. if(month>=1 && month <=9){
  291. month="0"+month;
  292. }
  293. if(day>=1 && day<=9){
  294. day="0"+day;
  295. }
  296. let dateStr=date.getFullYear()+"年"+month+"月"+day+"日";
  297. this.selectionRow.forEach((item)=>{
  298. if(!item.sendDate || !item.arrivalDate){
  299. item.sendDate=dateStr;
  300. item.arrivalDate=dateStr;
  301. }
  302. });
  303. let map = {
  304. wagonList:this.selectionRow,
  305. sendStationId: this.sendStationId,
  306. arrivalStationId: this.arrivalStationId,
  307. resultLoadingDate: sjTime(this.form1.resultLoadingDate),
  308. remarks: this.form1.resultRemarks,
  309. userId:getCookie("userId"),
  310. resultType:1,
  311. }
  312. console.log(map);
  313. this.axios.post('/api/v1/tms/addShipLoadResult',map).then((res)=>{
  314. console.log(res);
  315. if(res.data.code == "200"){
  316. this.$message({
  317. type: "success",
  318. message: "操作成功",
  319. });
  320. this.searchLoadTemp();
  321. }else {
  322. this.$message({
  323. type: "error",
  324. message: res.data.data,
  325. });
  326. }
  327. }).then(()=>{
  328. this.isLoading=false;
  329. });
  330. },
  331. // 取消
  332. cancel() {
  333. this.$router.go(-1);
  334. },
  335. // 导入excel
  336. importExcel(file) {
  337. let that=this;
  338. if (!file) {
  339. that.$message({
  340. message: "文件错误!",
  341. type: "warning",
  342. });
  343. return
  344. }
  345. let importData=[];
  346. var reader = new FileReader();
  347. var data=null;
  348. var workbook=null;
  349. //设置读取操作
  350. reader.onload = function (e) {
  351. console.log(e);
  352. data = e.target.result;
  353. workbook= XLSX.read(data, {
  354. type: 'binary'
  355. });
  356. console.log(workbook);
  357. let rows= XLSX.utils.sheet_to_json(workbook.Sheets[workbook.SheetNames[0]]);//只取第一页
  358. let index=1;
  359. for(index=1;index<rows.length;index++){
  360. if(typeof workbook.Sheets[workbook.SheetNames[0]]['A'+index] !='undefined'){
  361. index++;
  362. break;
  363. }
  364. }
  365. console.log('表头行数:'+index);
  366. if(index>=rows.length){
  367. that.$message({
  368. message: "文件错误!",
  369. type: "warning",
  370. });
  371. return
  372. }
  373. //校验表头
  374. if( workbook.Sheets[workbook.SheetNames[0]]['A'+index].v!='序号'
  375. || workbook.Sheets[workbook.SheetNames[0]]['B'+index].v!='发站'
  376. || workbook.Sheets[workbook.SheetNames[0]]['C'+index].v!='到站'
  377. || workbook.Sheets[workbook.SheetNames[0]]['D'+index].v!='发货日期'
  378. || workbook.Sheets[workbook.SheetNames[0]]['E'+index].v!='到货日期'
  379. || workbook.Sheets[workbook.SheetNames[0]]['F'+index].v!='卸货地点'
  380. || workbook.Sheets[workbook.SheetNames[0]]['G'+index].v!='品名'
  381. || (workbook.Sheets[workbook.SheetNames[0]]['I'+index].v!='计费\n吨位'
  382. && workbook.Sheets[workbook.SheetNames[0]]['I'+index].v!='计费吨位'
  383. && workbook.Sheets[workbook.SheetNames[0]]['I'+index].v!='计费&#10;吨位')
  384. || workbook.Sheets[workbook.SheetNames[0]]['J'+index].v!='车号'
  385. || workbook.Sheets[workbook.SheetNames[0]]['K'+index].v!='计量吨位'
  386. || workbook.Sheets[workbook.SheetNames[0]]['L'+index].v!='计费吨位合计'){
  387. if(workbook.Sheets[workbook.SheetNames[0]]['A'+index].v!='序号'){
  388. that.$message({
  389. message: "表格格式错误:序号错误",
  390. type: "warning",
  391. });
  392. }else if(workbook.Sheets[workbook.SheetNames[0]]['B'+index].v!='发站'){
  393. that.$message({
  394. message: "表格格式错误:发站错误",
  395. type: "warning",
  396. });
  397. }else if(workbook.Sheets[workbook.SheetNames[0]]['C'+index].v!='到站'){
  398. that.$message({
  399. message: "表格格式错误:到站错误",
  400. type: "warning",
  401. });
  402. }else if(workbook.Sheets[workbook.SheetNames[0]]['D'+index].v!='发货日期'){
  403. that.$message({
  404. message: "表格格式错误:发货日期错误",
  405. type: "warning",
  406. });
  407. }else if(workbook.Sheets[workbook.SheetNames[0]]['E'+index].v!='到货日期'){
  408. that.$message({
  409. message: "表格格式错误:到货日期错误",
  410. type: "warning",
  411. });
  412. }else if(workbook.Sheets[workbook.SheetNames[0]]['F'+index].v!='卸货地点'){
  413. that.$message({
  414. message: "表格格式错误:卸货地点错误",
  415. type: "warning",
  416. });
  417. }else if(workbook.Sheets[workbook.SheetNames[0]]['G'+index].v!='品名'){
  418. that.$message({
  419. message: "表格格式错误:品名错误",
  420. type: "warning",
  421. });
  422. }else if(workbook.Sheets[workbook.SheetNames[0]]['I'+index].v!='计费\n吨位'
  423. && workbook.Sheets[workbook.SheetNames[0]]['I'+index].v!='计费吨位'
  424. && workbook.Sheets[workbook.SheetNames[0]]['I'+index].v!='计费&#10;吨位'){
  425. that.$message({
  426. message: "表格格式错误:计费吨位错误",
  427. type: "warning",
  428. });
  429. }else if(workbook.Sheets[workbook.SheetNames[0]]['J'+index].v!='车号'){
  430. that.$message({
  431. message: "表格格式错误:车号错误",
  432. type: "warning",
  433. });
  434. }else if(workbook.Sheets[workbook.SheetNames[0]]['K'+index].v!='计量吨位'){
  435. that.$message({
  436. message: "表格格式错误:计量吨位错误",
  437. type: "warning",
  438. });
  439. }else if(workbook.Sheets[workbook.SheetNames[0]]['L'+index].v!='计费吨位合计'){
  440. that.$message({
  441. message: "表格格式错误:计费吨位合计错误",
  442. type: "warning",
  443. });
  444. }
  445. return;
  446. }
  447. let groupNo=1;
  448. let isLoading=true;
  449. //读取表格
  450. for(let i=index+1;i<=rows.length+1;i++){
  451. let row=workbook.Sheets[workbook.SheetNames[0]]['A'+i];
  452. if(row && typeof row.v == "number" && isLoading==false){
  453. isLoading=true;
  454. groupNo++;
  455. }else if(!row || typeof row.v != "number" && isLoading==true){
  456. isLoading=false;
  457. }
  458. if(row!='undefined' && row!=null && typeof row.v=='number'
  459. && workbook.Sheets[workbook.SheetNames[0]]['B'+i]!='undefined'
  460. && workbook.Sheets[workbook.SheetNames[0]]['B'+i]!=null
  461. && workbook.Sheets[workbook.SheetNames[0]]['C'+i]!='undefined'
  462. && workbook.Sheets[workbook.SheetNames[0]]['C'+i]!=null
  463. && workbook.Sheets[workbook.SheetNames[0]]['D'+i]!='undefined'
  464. && workbook.Sheets[workbook.SheetNames[0]]['D'+i]!=null
  465. && workbook.Sheets[workbook.SheetNames[0]]['E'+i]!='undefined'
  466. && workbook.Sheets[workbook.SheetNames[0]]['E'+i]!=null
  467. && workbook.Sheets[workbook.SheetNames[0]]['F'+i]!='undefined'
  468. && workbook.Sheets[workbook.SheetNames[0]]['F'+i]!=null
  469. && workbook.Sheets[workbook.SheetNames[0]]['G'+i]!='undefined'
  470. && workbook.Sheets[workbook.SheetNames[0]]['G'+i]!=null
  471. && workbook.Sheets[workbook.SheetNames[0]]['J'+i]!='undefined'
  472. && workbook.Sheets[workbook.SheetNames[0]]['J'+i]!=null){
  473. let tableRow={
  474. sendStation:workbook.Sheets[workbook.SheetNames[0]]['B'+i].v,
  475. arrivalStation:workbook.Sheets[workbook.SheetNames[0]]['C'+i].v,
  476. sendDate: that.formatDate(workbook.Sheets[workbook.SheetNames[0]]["D" + i].v),
  477. arrivalDate: that.formatDate(workbook.Sheets[workbook.SheetNames[0]]["E" + i].v),
  478. unloadPoint:workbook.Sheets[workbook.SheetNames[0]]['F'+i].v,
  479. productName:workbook.Sheets[workbook.SheetNames[0]]['G'+i].v,
  480. wagonNo:workbook.Sheets[workbook.SheetNames[0]]['J'+i].v,
  481. weight:workbook.Sheets[workbook.SheetNames[0]]['I'+i].v,
  482. mineral:workbook.Sheets[workbook.SheetNames[0]]['H'+i].v,
  483. groupNo:groupNo
  484. }
  485. if((tableRow.wagonNo+"").length!=7){
  486. that.$message({
  487. message: "存在车皮号长度不等于7:"+tableRow.wagonNo,
  488. type: "warning",
  489. });
  490. continue;
  491. }
  492. importData.push(tableRow);
  493. }
  494. }
  495. console.log("importData",importData);
  496. if(importData.length<=0){
  497. that.$message({
  498. message:"Excel没有可用数据",
  499. type:"warning"
  500. });
  501. return;
  502. }else if(that.tableData.length<=0){
  503. that.$message({
  504. message:"数据库没有可用数据",
  505. type:"warning "
  506. })
  507. return;
  508. }
  509. //批量查询
  510. let tableData=[];
  511. importData.forEach((row)=>{
  512. let temp=that.tableData.find(item=>item.wagonNo==row.wagonNo
  513. && row.productName.includes(item.foreignShipName));
  514. if(temp){
  515. temp.sendDate=row.sendDate;
  516. temp.arrivalDate=row.arrivalDate;
  517. temp.groupNo=row.groupNo;
  518. tableData.push(temp);
  519. }
  520. });
  521. that.tableDataReal=tableData;
  522. if(tableData.length<=0){
  523. that.$confirm('查询不到相关车皮!请联系万州港相关人员!')
  524. .then(_ => {
  525. that.isSend=false;
  526. done();
  527. });
  528. }else if(tableData.length<importData.length){
  529. that.$confirm("共"+(importData.length-tableData.length)+"条车皮查询失败!请联系万州港相关人员!")
  530. .then(_ => {
  531. that.isSend=false;
  532. done();
  533. });
  534. }else{
  535. that.isSend=true;
  536. that.$message({
  537. message: "查询成功!",
  538. type: "success",
  539. });
  540. }
  541. };
  542. reader.readAsBinaryString(file.raw); //以二进制方式读取
  543. },
  544. //采购订单表格选中
  545. orderChange(selection){
  546. console.log(selection);
  547. this.purchaseOrderId=selection.purchaseOrderId;
  548. this.form1 = {
  549. purchaseOrderNo: selection.purchaseOrderNo,
  550. resultLoadingDate:new Date()
  551. };
  552. this.materialId=selection.materialId;
  553. this.materialName=selection.materialName;
  554. this.supplierId=selection.supplierId;
  555. this.supplierName=selection.supplierName;
  556. },
  557. //查询临时表
  558. searchLoadTemp(){
  559. this.tableDataReal=[];
  560. this.axios.post('/api/v1/tms/getResultType?apiId=58&resultType=1&con='+this.input).then((res)=>{
  561. console.log("temp:",res.data.data);
  562. if(res.data.code == "200"){
  563. this.tableData=res.data.data;
  564. }else {
  565. this.$message({
  566. type: "error",
  567. message: res.data.data,
  568. });
  569. }
  570. })
  571. },
  572. //查询到站
  573. getArrivalStation(){
  574. this.axios.get("/api/v1/uc/getArrivalByLike?index="+this.input).then((res)=>{
  575. if(res.data.code == "200"){
  576. this.arrivalStations=res.data.data;
  577. }else {
  578. this.$message({
  579. type: "error",
  580. message: res.data.data,
  581. });
  582. }
  583. console.log("到站列表:",this.arrivalStations);
  584. })
  585. },
  586. //点击行勾选
  587. rowClick(row, column, event) {
  588. let tempTable = this.$refs.tempTable; // 获取表格对象
  589. //判断是否已存在
  590. let findRow = this.selectionRow.find(item => item.wagonNo == row.wagonNo);
  591. if (findRow) {
  592. tempTable.toggleRowSelection(row, false);
  593. }else{
  594. tempTable.toggleRowSelection(row);
  595. }
  596. //赋值
  597. this.selectionRow=this.$refs.tempTable.selection;
  598. },
  599. handleSelectionChange(rows) {
  600. this.selectionRow = rows //保存已选择行
  601. console.log(this.selectionRow);
  602. },
  603. formatDate(numb, format) {
  604. const time = new Date((numb - 1) * 24 * 3600000 + 1)
  605. time.setYear(time.getFullYear() - 70)
  606. const year = time.getFullYear() + ''
  607. const month = time.getMonth() + 1 + ''
  608. const date = time.getDate() + ''
  609. if (format && format.length === 1) {
  610. return year + format + month + format + date
  611. }
  612. return year + '年' + (month < 10 ? '0' + month : month)+ '月' + (date < 10 ? '0' + date : date) + '日'
  613. },
  614. },
  615. };
  616. </script>
  617. <style lang='scss'>
  618. .addWagonLoad {
  619. color: #606266;
  620. font-size: 0.675rem;
  621. font-weight: 500;
  622. .cp {
  623. width: 49%;
  624. display: flex;
  625. justify-content: center;
  626. align-items: center;
  627. padding-top: 0.625rem;
  628. padding-bottom: 0.625rem;
  629. margin-left: 364px;
  630. .cp_title {
  631. .cp_top {
  632. width: 3.125rem;
  633. padding-right: 1.55rem;
  634. }
  635. }
  636. }
  637. .cpList {
  638. display: flex;
  639. justify-content: center;
  640. width: 100%;
  641. height: 10rem;
  642. .list {
  643. width: 45%;
  644. border: #000 0.0625rem solid;
  645. padding: 0.625rem;
  646. display: flex;
  647. flex-wrap: wrap;
  648. .cpList1 {
  649. background-color: #c9c7c7;
  650. height: 1.875rem;
  651. margin-right: 0.5rem;
  652. padding: 0.625rem;
  653. display: flex;
  654. align-items: center;
  655. justify-content: center;
  656. position: relative;
  657. .itu {
  658. position: absolute;
  659. top: -0.125rem;
  660. right: 0.0625rem;
  661. width: 0.625rem;
  662. height: 0.625rem;
  663. }
  664. }
  665. }
  666. }
  667. .matching {
  668. width: 100%;
  669. height: 3.125rem;
  670. display: flex;
  671. justify-content: center;
  672. align-items: center;
  673. .text {
  674. width: 8.75rem;
  675. }
  676. .span {
  677. display: inline-block;
  678. width: 310px;
  679. height: 0.0625rem;
  680. }
  681. }
  682. .material {
  683. display: flex;
  684. justify-content: center;
  685. align-items: center;
  686. height: 3.75rem;
  687. margin-left: 27rem;
  688. width: 20rem;
  689. .text {
  690. text-align: right;
  691. width: 8.125rem;
  692. }
  693. }
  694. .forwardingUnit {
  695. display: flex;
  696. justify-content: center;
  697. align-items: center;
  698. height: 3.75rem;
  699. margin-left: 27rem;
  700. width: 20rem;
  701. .text {
  702. text-align: right;
  703. width: 8.125rem;
  704. }
  705. }
  706. .remark {
  707. display: flex;
  708. justify-content: center;
  709. align-items: center;
  710. height: 3.75rem;
  711. .text {
  712. text-align: right;
  713. width: 5.625rem;
  714. }
  715. .span {
  716. display: inline-block;
  717. width: 1.875rem;
  718. height: 1.25rem;
  719. }
  720. .el-input{
  721. width: 13.5rem;
  722. margin-right: 2.375rem;
  723. }
  724. }
  725. .purchaseOrder {
  726. display: flex;
  727. justify-content: center;
  728. align-items: center;
  729. .span {
  730. display: inline-block;
  731. width: 1.875rem;
  732. height: 0.0625rem;
  733. }
  734. }
  735. .form {
  736. display: flex;
  737. .form_box {
  738. width: 340px;
  739. margin-left: 30px;
  740. margin-right: 20px;
  741. .el-form {
  742. .preview-group {
  743. .el-form-item {
  744. .el-form-item__label {
  745. display: inline-block;
  746. width: 70px !important;
  747. }
  748. .el-form-item__content {
  749. .el-select {
  750. width: 250px;
  751. }
  752. .el-input {
  753. width: 250px;
  754. }
  755. .el-textarea{
  756. .el-textarea__inner{
  757. width: 225px;
  758. margin-top: 0.03rem;
  759. }
  760. }
  761. }
  762. }
  763. }
  764. }
  765. }
  766. }
  767. .button-box {
  768. display: flex;
  769. justify-content: center;
  770. padding-top: 10px;
  771. }
  772. .formOther .el-input__inner{
  773. width: 250px;
  774. }
  775. }
  776. </style>