stockPurchaseReceiptReportList.vue 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392
  1. //现货采购入库报表
  2. <template>
  3. <div class="container">
  4. <el-scrollbar style="height: 100%">
  5. <el-row>
  6. <el-col style="padding-left: 15px; width:48%" :span="16">
  7. <ws-button :type="searchType == '' ? 'primary' : ''" @click="handlestatus('')">全部</ws-button>
  8. <!-- <ws-button :type="searchType == 1 ? 'primary' : ''" @click="handlestatus(1)">待审核</ws-button> -->
  9. <ws-button :type="searchType == 2 ? 'primary' : ''" @click="handlestatus(2)">待结算</ws-button>
  10. <ws-button :type="searchType == 3 ? 'primary' : ''" @click="handlestatus(3)">已结算</ws-button>
  11. <!-- <ws-button type="primary" v-hasPermission="`report.goodsProcurementInReport.view`" @click="handleAudit()">通过
  12. </ws-button>
  13. <ws-button type="primary" v-hasPermission="`report.goodsProcurementInReport.view`" @click="handlereject()">驳回
  14. </ws-button> -->
  15. <ws-button type="primary" v-hasPermission="`report.goodsProcurementInReport.payment`" @click="handlepayment">
  16. 付款</ws-button>
  17. <ws-button type="primary" v-hasPermission="`report.goodsProcurementInReport.view`" @click="addRemarks()">备注
  18. </ws-button>
  19. <ws-button type="primary" v-hasPermission="`report.goodsProcurementInReport.carry`" @click="dis()">定金
  20. </ws-button>
  21. </el-col>
  22. <el-col style="text-align: right; line-height: 60px; width:300px" :span="8">
  23. <el-date-picker value-format="yyyy-MM-dd" v-model="value2" type="daterange" align="right" unlink-panels :clearable="false"
  24. range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions"
  25. class="data_css" @change="datechange">
  26. </el-date-picker>
  27. </el-col>
  28. <el-col style="text-align: right; line-height: 60px; padding-right: 10px" :span="8">
  29. <el-select v-model="contractNo" placeholder="请选择合同" clearable filterable @change="contractchange"
  30. maxlength="500" type="input" class="findValue">
  31. <el-option v-if="item.reportStatus" v-for="item in option" :key="item.constKey"
  32. :label="item.contractNo + '(' + item.reportStatus + ')'" :value="item.contractNo" />
  33. <el-option v-for="item in option" v-if="!item.reportStatus" :key="item.constKey" :label="item.contractNo"
  34. :value="item.contractNo" />
  35. </el-select>
  36. </el-col>
  37. </el-row>
  38. <el-row v-if="contractNo != ''" class="content2">
  39. <div class="content2-item">
  40. <span v-if="orderList.seller" class="seller">卖方: {{ orderList.seller }} </span>
  41. <span v-else>卖方:--</span>
  42. <div class="row2">
  43. <span v-if="orderList.goodsName">货名: {{ orderList.goodsName }}</span>
  44. <span v-else>货名:--</span>
  45. <span v-if="orderList.weight">合同重量: {{ orderList.weight }} 吨</span>
  46. <span v-else>合同重量: 0 吨</span>
  47. <span v-if="settlementWeight1">入库量: {{ settlementWeight1 }} 吨</span>
  48. <span v-else>入库量: 0 吨</span>
  49. <span v-if="orderList.unitContractPrice">合同单价: {{ orderList.unitContractPrice }} 元/吨</span>
  50. <span v-else>合同单价: 0 元/吨</span>
  51. <span v-if="payingMoney">应付: {{ payingMoney }} 元</span>
  52. <span v-else>应付: 0 元</span>
  53. <span v-if="payedMoney">已付: {{ payedMoney }} 元</span>
  54. <span v-else>已付: 0 元</span>
  55. <span v-if="payNotMoney">未付: {{ payNotMoney }} 元</span>
  56. <span v-else>未付: 0 元</span>
  57. <span v-if="orderList.deposit">定金: {{ orderList.deposit }} 元
  58. <!-- {{ orderList.depositUrl }} -->
  59. <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
  60. src="../../../public/img/fujian.png" @click="fujian()" alt="" />
  61. </span>
  62. <span v-else>定金: 0 元</span>
  63. </div>
  64. </div>
  65. </el-row>
  66. <el-table class="wenzi" :data="warehouseList" style="width: 100%; margin-top: 20px" ref="warehouseList"
  67. border :summary-method="getSummaries" show-summary @row-click="handleRowClick"
  68. @selection-change="handleSelectionChange">
  69. <el-table-column :selectable="selectInit" type="selection" width="55"></el-table-column>
  70. <el-table-column type="index" label="序号"></el-table-column>
  71. <el-table-column class="table_td" prop="warehouseName" label="仓库"></el-table-column>
  72. <el-table-column class="table_td" prop="carNo" label="车牌号"></el-table-column>
  73. <el-table-column class="table_td" prop="warehousingDate" label="入库日期"></el-table-column>
  74. <el-table-column class="table_td" prop="grossWeight" label="毛重"></el-table-column>
  75. <el-table-column class="table_td" prop="tare" label="皮重"></el-table-column>
  76. <el-table-column class="table_td" prop="deductionWeight" label="扣重"></el-table-column>
  77. <el-table-column class="table_td" prop="netWeight" label="净重">
  78. <template slot-scope="scope">
  79. <div @click.stop='fujian1(scope.row)'>{{scope.row.netWeight}}</div>
  80. </template>
  81. </el-table-column>
  82. <el-table-column width="120" class="table_td" prop="settlementWeight" label="结算重量(吨)">
  83. <template slot-scope="scope">
  84. <div class="inputChenge">
  85. <!-- readonly -->
  86. <el-input v-model="scope.row.settlementWeight" v-if="scope.row.identification == 'true'"></el-input>
  87. <div v-if="scope.row.identification == 'false'" class="inputs">
  88. {{ scope.row.settlementWeight }}
  89. </div>
  90. </div>
  91. <img width="17" height="18" style="vertical-align: text-top; position: relative; top: -1px"
  92. src="../../../public/img/edit.png" @click="whether(scope.row,1)"
  93. v-if="scope.row.identification == 'false'" alt="" />
  94. <i class="el-icon-check" style="line-height: 29px; margin-left: 10px"
  95. v-if="scope.row.identification == 'true'" @click="varietyClick(scope.row)"></i>
  96. <!-- <div>—</div> -->
  97. </template>
  98. </el-table-column>
  99. <el-table-column class="table_td" prop="settlementPrice" width='150' label="结算单价(元/吨)">
  100. <template slot-scope="scope">
  101. <div class="inputChenge">
  102. <el-input v-model="scope.row.settlementPrice" v-if="scope.row.identification1 == 'true'">
  103. </el-input>
  104. <div v-if="scope.row.identification1 == 'false'" class="inputs">
  105. <span>{{scope.row.settlementPrice}}</span>
  106. </div>
  107. </div>
  108. <div style='display:inline-block;' v-if="scope.row.identification1 == 'false'">
  109. <img v-hasPermission="`report.goodsSaleOutReport.edit`" width="17" height="18"
  110. style="vertical-align: text-top; position: relative; top: -1px" src="../../../public/img/edit.png"
  111. @click="whether(scope.row,2)" alt="" />
  112. </div>
  113. <i class="el-icon-check" style="line-height: 29px; margin-left: 10px"
  114. v-if="scope.row.identification1 == 'true'" @click="weightClick(scope.row,2)"></i>
  115. </template>
  116. </el-table-column>
  117. <el-table-column width="100" class="table_td" label="应付金额(元)" prop="amountIngPayable"></el-table-column>
  118. <el-table-column width="100" class="table_td" label="已付金额(元)" prop="amountEdPayable"></el-table-column>
  119. <el-table-column width="100" class="table_td" label="未付金额(元)" prop="amountNotPayable"></el-table-column>
  120. <el-table-column class="table_td" label="付款日期" prop="paymentDate"></el-table-column>
  121. <!-- <el-table-column label="状态" prop="status">
  122. <template slot-scope="scope">
  123. <span v-if="scope.row.approveStatus != null">{{
  124. scope.row.approveStatus
  125. }}</span>
  126. <span v-else>{{ scope.row.status }}</span>
  127. </template>
  128. </el-table-column> -->
  129. </el-table>
  130. <!-- 页数 -->
  131. <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
  132. :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal"></el-pagination>
  133. <WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')"
  134. @on-cancel="handleClose">
  135. <div v-for="(item,index) in addressUrlArray" :key="index">
  136. <img width="100" height="100" :src="item" alt="">
  137. </div>
  138. </WinseaContentModal>
  139. <WinseaContentModal v-model="accessoryTFs1" :title="$t('system.noticeCircular.information')"
  140. @on-cancel="handleClose">
  141. <img width="100" height="100" :src="appendixIdss1" alt="">
  142. </WinseaContentModal>
  143. </el-scrollbar>
  144. <el-dialog width="25%" title="付款" :visible.sync="dialogFormVisible1" :append-to-body="true">
  145. <el-form :model="form">
  146. <el-form-item label="未付金额(元)" :label-width="formLabelWidth">
  147. <template>
  148. <span>{{ amountNotPayable }}</span>
  149. </template>
  150. </el-form-item>
  151. <el-form-item label="本次付款金额" :label-width="formLabelWidth">
  152. <el-input type='number' v-model="money" autocomplete="off" placeholder="请输入本次付款金额" class="deal"></el-input>
  153. </el-form-item>
  154. <el-form-item label="付款日期" prop="paymentDate" :label-width="formLabelWidth" class="deal">
  155. <ws-date-picker v-model="paymentDate" type="date" placeholder="请选择付款日期" value-format="yyyy-MM-dd"
  156. class="deal" />
  157. </el-form-item>
  158. <el-form-item label="上传付款截图" :label-width="formLabelWidth">
  159. <el-upload :action="global.uploadPath" list-type="picture-card"
  160. :on-success="handlePictureCardPreview" :on-remove="handleRemove" class="photo2">
  161. <i class="el-icon-plus"></i>
  162. </el-upload>
  163. </el-form-item>
  164. </el-form>
  165. <div slot="footer" class="dialog-footer">
  166. <el-button @click="dialogFormVisible1 = false">取 消</el-button>
  167. <el-button type="primary" @click="submitMoney()">提 交</el-button>
  168. </div>
  169. </el-dialog>
  170. <!--备注-->
  171. <el-dialog width="25%" title="备注" :visible.sync="dialogFormVisible11" :append-to-body="true">
  172. <el-form :model="form">
  173. <div class="beizhu">
  174. <el-input v-model="remark" autocomplete="off" placeholder="备注信息,不超过1000字" class="deal"></el-input>
  175. </div>
  176. </el-form>
  177. <div slot="footer" class="dialog-footer">
  178. <span v-if="roleFlag == 1 ">
  179. <el-button @click="dialogFormVisible11 = false">取 消</el-button>
  180. <el-button type="primary" v-hasPermission="`report.goodsProcurementInReport.edit`" @click="remarksSubmit()">保存
  181. </el-button>
  182. </span>
  183. <span v-else>
  184. <el-button @click="dialogFormVisible11 = false">关 闭</el-button>
  185. </span>
  186. </div>
  187. </el-dialog>
  188. <!--定金-->
  189. <el-dialog width="30%" title="定金" :visible.sync="dialogFormVisible5" :append-to-body="true">
  190. <el-form>
  191. <el-form-item label="已付定金" :label-width="formLabelWidth">
  192. <el-input v-model="orderList.deposit" autocomplete="off" class="deal" placeholder="输入定金金额"></el-input>
  193. </el-form-item>
  194. <el-form-item label="上传定金截图" :label-width="formLabelWidth">
  195. <el-upload :action="global.uploadPath" list-type="picture-card"
  196. :on-success="handlePictureCardPreviewDis" :on-remove="handleRemoveDis" class="photo2">
  197. <i class="el-icon-plus"></i>
  198. </el-upload>
  199. </el-form-item>
  200. </el-form>
  201. <div slot="footer" class="dialog-footer">
  202. <el-button @click="dialogFormVisible5 = false">取 消</el-button>
  203. <el-button type="primary" @click="amendconfirm">提 交</el-button>
  204. </div>
  205. </el-dialog>
  206. </div>
  207. <!-- </div> -->
  208. </template>
  209. <script>
  210. import {
  211. getStockPurchaseReceiptList,
  212. getStockPurchaseContractNoList,
  213. editSettlementWeight,
  214. addDisOrRemarks,
  215. stockPurchasePayMoney,
  216. } from '@/model/statisticalReport/index'
  217. import {workflowcontent} from '@/model/houseSelfCollect/index'
  218. import {downloadFile} from '@/utils/batchDown'
  219. import {posthandle} from '@/model/purchasingManagement/index'
  220. import Pagination from '@/components/Pagination'
  221. import WsUpload from '@/components/WsUpload'
  222. import {EventBus} from 'base-core-lib'
  223. export default {
  224. name: 'viewSpareMoney',
  225. components: {
  226. WsUpload,
  227. Pagination,
  228. },
  229. watch: {
  230. // vesselId(val) {
  231. // this.getList()
  232. // },
  233. isShow(val) {
  234. this.showType = val
  235. },
  236. },
  237. data() {
  238. return {
  239. checked: true,
  240. needReapply: true,
  241. dialogFormVisible1: false,
  242. dialogFormVisible5: false,
  243. dialogFormVisible11: false,
  244. dialogVisible: false,
  245. form: {
  246. transactionPrice: '',
  247. transactionsNumber: '',
  248. basis: '',
  249. },
  250. currect: true,
  251. formLabelWidth: '120px',
  252. barWidth: 0,
  253. barHeight: 0,
  254. retioX: 1,
  255. ratioY: 1,
  256. isTaped: false,
  257. isHover: false,
  258. isShow: !this.autohide,
  259. //弹出框
  260. dialogViewSpareMoney: false,
  261. contractNoList: [],
  262. // 是否显示
  263. showType: true,
  264. // 年
  265. year: '',
  266. option: [],
  267. pickerOptions: {},
  268. value2: [],
  269. startDate: '',
  270. endDate: '',
  271. deptBudgetTotal: 0,
  272. currentPage: 1,
  273. pageSize: 10,
  274. searchType: '',
  275. searchTypeText: '未完成',
  276. searchKeyWord: '',
  277. contractType: 2,
  278. enter: {
  279. closePositionList: [],
  280. },
  281. // 提交类型
  282. submitType: true,
  283. size: 10,
  284. spanArr: [],
  285. contractNo: '',
  286. inOutTaskNo: '',
  287. compId: localStorage.getItem('ws-pf_compId'),
  288. roleId: localStorage.getItem('ws-pf_roleId'),
  289. deptCircularPage: {},
  290. warehouseList: [],
  291. orderList: {},
  292. deptBudgetList: {},
  293. id: '',
  294. pcFlag: 1,
  295. deposit: '0',
  296. stockPurchaseInfo: {
  297. id: '',
  298. settlementWeight: '',
  299. },
  300. payingMoney: '',
  301. payedMoney: '',
  302. payNotMoney: '',
  303. settlementWeight: '',
  304. settlementWeight1: '',
  305. modification: [],
  306. contractManagementInfoList: {},
  307. contractManagementInfo: {
  308. contractManagementInfoList: [],
  309. deposit: '',
  310. depositUrl: '',
  311. remark: '',
  312. id: '',
  313. },
  314. remark: '',
  315. // depositUrls: [],
  316. roleFlag: 1,
  317. money: '',
  318. paymentDate: '',
  319. stockPurchaseReceiptReportList: [],
  320. stockPurchaseReceiptReport: {
  321. stockPurchaseReceiptReportList: [],
  322. money: '',
  323. amountNotPayable: 0,
  324. amountEdPayable: 0,
  325. paymentDate: '',
  326. paymentScreenshot: '',
  327. id: '',
  328. },
  329. addressUrlArray: [],
  330. amountNotPayable: 0,
  331. amountEdPayable: 0,
  332. paymentScreenshotUrls: [],
  333. carryovercontractnolist: [],
  334. pickerBeginDateBefore: {
  335. disabledDate: (time) => {
  336. return time.getTime() > Date.now()
  337. },
  338. },
  339. accessoryTFs: false,
  340. accessoryTFs1: false,
  341. appendixIdss: [],
  342. appendixIdss1: '',
  343. }
  344. },
  345. activated() {
  346. this.getPassYearFormatDate()
  347. this.getContractList()
  348. this.showType = this.isShow
  349. },
  350. methods: {
  351. //修改结算重量
  352. varietyClick(row) {
  353. if (
  354. row.settlementWeight < 0 ||
  355. row.settlementWeight > 200 ||
  356. (String(row.settlementWeight).indexOf('.') != -1 &&
  357. String(row.settlementWeight).length -
  358. (String(row.settlementWeight).indexOf('.') + 1) >
  359. 3)
  360. ) {
  361. this.$message({
  362. message: '结算重量输入错误',
  363. type: 'warning',
  364. })
  365. return
  366. }
  367. if (row.settlementWeight) {
  368. if (isNaN(row.settlementWeight)) {
  369. this.$message({
  370. message: '结算重量非数字!',
  371. type: 'warning',
  372. })
  373. return
  374. }
  375. }
  376. if (!row.settlementWeight) {
  377. this.$message({
  378. message: '结算重量不能为空!',
  379. type: 'warning',
  380. })
  381. return
  382. }
  383. this.$confirm(`确定要修改结算重量?`, {
  384. confirmButtonText: '确定',
  385. cancelButtonText: '取消',
  386. type: 'warning',
  387. })
  388. .then(() => {
  389. this.stockPurchaseInfo.id = row.id
  390. this.stockPurchaseInfo.settlementWeight = row.settlementWeight
  391. this.stockPurchaseInfo.flag = 1
  392. editSettlementWeight(this.stockPurchaseInfo)
  393. .toPromise()
  394. .then((response) => {
  395. this.$notify.success({
  396. title: '成功',
  397. message: '修改成功',
  398. })
  399. this.getList()
  400. })
  401. .catch((response) => {})
  402. })
  403. .catch(() => {
  404. return false
  405. })
  406. },
  407. //修改结算单价
  408. weightClick(row, flag) {
  409. var title = ''
  410. var data = {}
  411. title = '确定要修改结算单价?'
  412. data = {
  413. settlementPrice: row.settlementPrice,
  414. id: row.id,
  415. flag: flag
  416. }
  417. this.$confirm(title, {
  418. confirmButtonText: '确定',
  419. cancelButtonText: '取消',
  420. type: 'warning',
  421. })
  422. .then(() => {
  423. editSettlementWeight(data)
  424. .toPromise()
  425. .then((response) => {
  426. this.$notify.success({
  427. title: '成功',
  428. message: '结算单价修改成功',
  429. })
  430. this.getList()
  431. })
  432. .catch(() => {
  433. return false
  434. })
  435. })
  436. },
  437. whether(row, flag) {
  438. if (flag == 1) {
  439. row.identification = 'true'
  440. } else {
  441. row.identification1 = 'true'
  442. }
  443. },
  444. handleRowClick(row) {
  445. if (row.approveStatus == null) {
  446. this.$refs.warehouseList.toggleRowSelection(row)
  447. return true
  448. } else if (row.approveStatus != null) {
  449. if (row.taskId == null) {
  450. return false
  451. } else {
  452. this.$refs.warehouseList.toggleRowSelection(row)
  453. return true
  454. }
  455. }
  456. },
  457. selectInit(row) {
  458. //在这里一定要记得类型匹配的上。
  459. if (row.approveStatus == null) {
  460. return true
  461. } else if (row.approveStatus != null) {
  462. if (row.taskId == null) {
  463. return false
  464. } else {
  465. return true
  466. }
  467. }
  468. },
  469. //添加定金信息
  470. dis() {
  471. this.dialogFormVisible5 = true
  472. },
  473. //定金
  474. amendconfirm() {
  475. this.$confirm(`确定提交定金信息?`, {
  476. cancelButtonText: '取消',
  477. confirmButtonText: '确定',
  478. type: 'warning',
  479. }).then(() => {
  480. for (var i = 0; i < this.contractNoList.length; i++) {
  481. if (this.contractNoList[i].contractNo == this.contractNo) {
  482. this.contractManagementInfoList.id = this.contractNoList[i].id
  483. }
  484. }
  485. this.contractManagementInfoList.deposit = this.orderList.deposit
  486. this.contractManagementInfoList.depositUrl = this.depositUrl
  487. addDisOrRemarks(this.contractManagementInfoList)
  488. .toPromise()
  489. .then((response) => {
  490. this.$message.success('修改成功')
  491. this.dialogFormVisible5 = false
  492. this.getList()
  493. })
  494. })
  495. },
  496. //定金附件
  497. fujian() {
  498. if (this.orderList.depositUrl === null || this.orderList.depositUrl === '') {
  499. EventBus.$emit(
  500. 'warning',
  501. this.$t('system.noticeCircular.NoInformation')
  502. )
  503. } else {
  504. this.accessoryTFs = true
  505. this.appendixIdss = this.orderList.depositUrl
  506. }
  507. },
  508. //定金附件
  509. fujian1(item) {
  510. if (this.orderList.poundImg === null || this.orderList.poundImg === '') {
  511. EventBus.$emit(
  512. 'warning',
  513. this.$t('system.noticeCircular.NoInformation')
  514. )
  515. }
  516. this.appendixIdss1 = item.poundImg
  517. this.accessoryTFs1 = true
  518. },
  519. //备注
  520. addRemarks() {
  521. this.dialogFormVisible11 = true
  522. },
  523. remarksSubmit() {
  524. this.contractManagementInfo.remark = this.remark
  525. this.$confirm(`确定要保存备注信息?`, {
  526. confirmButtonText: '确定',
  527. cancelButtonText: '取消',
  528. type: 'warning',
  529. }).then(() => {
  530. for (var i = 0; i < this.contractNoList.length; i++) {
  531. if (this.contractNoList[i].contractNo == this.contractNo) {
  532. this.contractManagementInfoList.id = this.contractNoList[i].id
  533. }
  534. }
  535. this.contractManagementInfoList.remark = this.remark
  536. addDisOrRemarks(this.contractManagementInfoList)
  537. .toPromise()
  538. .then(() => {
  539. this.dialogFormVisible11 = false
  540. this.$message.success('添加备注信息成功')
  541. this.paymentManagementList = {}
  542. this.getList()
  543. })
  544. .catch(() => {
  545. return false
  546. })
  547. })
  548. },
  549. //付款
  550. handlepayment() {
  551. this.amountNotPayable = 0
  552. this.money = this.money
  553. this.stockPurchaseReceiptReportList =
  554. this.warehouseList[0].stockPurchaseReceiptReportList
  555. this.amountEdPayable = this.warehouseList[0].amountEdPayable
  556. this.paymentDate = this.paymentDate
  557. if (this.modification.length == 0) {
  558. this.$message.warning('请选择一条要付款的条目')
  559. } else {
  560. for (var i = 0; i < this.modification.length; i++) {
  561. if (
  562. this.modification[i].status != '已通过' &&
  563. this.modification[i].status != '部分付款'
  564. ) {
  565. this.$message.warning('只有已通过或部分付款的条目才可进行付款操作')
  566. return
  567. }
  568. this.amountNotPayable += this.modification[i].amountNotPayable
  569. }
  570. this.amountNotPayable = this.amountNotPayable.toFixed(3)
  571. this.dialogFormVisible1 = true
  572. }
  573. },
  574. submitMoney() {
  575. this.stockPurchaseReceiptReport.money = this.money
  576. this.stockPurchaseReceiptReport.paymentDate = this.paymentDate
  577. if (this.modification.length == 0) {
  578. this.$message.warning('请选择一条要付款的条目')
  579. } else {
  580. this.money = Number(this.money).toFixed(2)
  581. if (
  582. this.money < 0 ||
  583. (String(this.money).indexOf('.') != -1 &&
  584. String(this.money).length - (String(this.money).indexOf('.') + 1) >
  585. 2)
  586. ) {
  587. this.$message({
  588. message: '付款金额输入错误',
  589. type: 'warning',
  590. })
  591. return
  592. }
  593. if (this.money) {
  594. if (isNaN(this.money)) {
  595. this.$message({
  596. message: '付款金额非数字!',
  597. type: 'warning',
  598. })
  599. return
  600. }
  601. }
  602. if (!this.money) {
  603. this.$message({
  604. message: '付款金额不能为空!',
  605. type: 'warning',
  606. })
  607. return
  608. }
  609. if (Number(this.money) > Number(this.modification[0].amountNotPayable)) {
  610. this.$message({
  611. message: '付款金额不能大于未付金额!',
  612. type: 'warning',
  613. })
  614. return
  615. }
  616. this.$confirm(`确定提交付款信息?`, {
  617. cancelButtonText: '取消',
  618. confirmButtonText: '确定',
  619. type: 'warning',
  620. }).then(() => {
  621. stockPurchasePayMoney({
  622. stockPurchaseReceiptReportList: this.modification,
  623. amountEdPayable: this.modification[0].amountEdPayable,
  624. amountNotPayable: this.modification[0].amountNotPayable,
  625. money: this.money,
  626. paymentDate: this.paymentDate,
  627. paymentScreenshot: this.paymentScreenshot,
  628. })
  629. .toPromise()
  630. .then((response) => {
  631. this.$notify.success({
  632. title: '成功',
  633. message: '付款成功',
  634. })
  635. this.stockPurchaseReceiptReportList = {}
  636. this.money = ''
  637. // this.paymentScreenshot = ''
  638. this.paymentDate = ''
  639. this.dialogFormVisible1 = false
  640. this.getList()
  641. })
  642. .catch((response) => {
  643. console.log(response)
  644. EventBus.$emit('error', response.message)
  645. })
  646. })
  647. }
  648. },
  649. datechange() {
  650. if (this.value2) {
  651. this.startDate = this.value2[0]
  652. this.endDate = this.value2[1]
  653. } else {
  654. this.startDate = ''
  655. this.endDate = ''
  656. }
  657. this.getContractList()
  658. this.getList()
  659. },
  660. //审核
  661. handleAudit() {
  662. var that = this
  663. if (this.modification.length == 0) {
  664. this.$message.warning('请选择一条要审核的条目')
  665. } else {
  666. this.$confirm(`审核通过后,任务将发送给下一级,是否确定通过?`, {
  667. cancelButtonText: '取消',
  668. confirmButtonText: '确定',
  669. type: 'warning',
  670. }).then(() => {
  671. that.audit(this.modification[0], 0, true)
  672. })
  673. }
  674. },
  675. audit(item, index, status, status2, reason) {
  676. if (index < this.modification.length) {
  677. posthandle({
  678. taskId: item.taskId,
  679. approved: status,
  680. auditMind: reason != undefined ? '已驳回' : '无',
  681. needReapply: status2 != undefined ? true : false,
  682. })
  683. .toPromise()
  684. .then((response) => {
  685. if (index == 0) {
  686. workflowcontent({
  687. workflowId: item.workflowId,
  688. businessKey: item.id,
  689. type: '现货采购入库报表'
  690. }).toPromise()
  691. .then((response1) => {
  692. })
  693. }
  694. this.audit(
  695. this.modification[index + 1],
  696. index + 1,
  697. status,
  698. status2,
  699. reason
  700. )
  701. })
  702. .catch((req) => {
  703. this.$message.warning(req.message)
  704. })
  705. } else {
  706. if (status == true) {
  707. this.$message.success('通过成功')
  708. this.getList()
  709. } else if (status == false) {
  710. this.$message.success('驳回成功')
  711. this.getList()
  712. }
  713. }
  714. },
  715. handlereject(status) {
  716. var that = this
  717. if (this.modification.length == 0) {
  718. this.$message.warning('请选择要驳回的条目')
  719. } else {
  720. this.$confirm(`是否确定驳回?`, {
  721. cancelButtonText: '取消',
  722. confirmButtonText: '确定',
  723. type: 'warning',
  724. }).then(() => {
  725. that.audit(this.modification[0], 0, false, true, '已驳回')
  726. })
  727. }
  728. },
  729. dataFilter(val) {
  730. // console.log(val,"名")
  731. this.contractNo = val
  732. // if (val) {
  733. // //val存在
  734. // this.options = this.contractNoList.filter((item) => {
  735. // if (
  736. // !!~item.contractNo.indexOf(val) ||
  737. // !!~item.contractNo.toUpperCase().indexOf(val.toUpperCase())
  738. // ) {
  739. // return true
  740. // }
  741. // })
  742. // } else {
  743. // //val为空时,还原数组
  744. // this.options = this.contractNoList
  745. // }
  746. },
  747. handleSelectionChange(val) {
  748. this.modification = val
  749. },
  750. handlestatus(status) {
  751. this.searchType = status
  752. this.getList()
  753. },
  754. contractchange(e) {
  755. for (var i = 0; i < this.contractNoList.length; i++) {
  756. if (this.contractNoList[i].contractNo == e) {
  757. this.orderList = this.contractNoList[i]
  758. if (this.contractNoList[i].depositUrl) {
  759. this.addressUrlArray = this.contractNoList[i].depositUrl.split(',')
  760. } else {
  761. this.addressUrlArray = []
  762. }
  763. }
  764. }
  765. this.contractNo = e
  766. this.currentPage = 1
  767. this.getList()
  768. },
  769. updated() {
  770. this.$nextTick(() => {
  771. this.$refs.warehouseList.doLayout()
  772. })
  773. },
  774. //合计
  775. getSummaries(param) {
  776. const {
  777. columns,
  778. data
  779. } = param
  780. const sums = []
  781. columns.forEach((column, index) => {
  782. if (index === 0) {
  783. sums[index] = '合计'
  784. } else if (
  785. index === 12 ||
  786. index === 11 ||
  787. index === 13 ||
  788. index === 9
  789. ) {
  790. const values = data.map((item) => Number(item[column.property]))
  791. console.log(values)
  792. // console.log(values)
  793. if (values.length > 0) {
  794. sums[index] = values.reduce((prev, curr) => {
  795. const value = Number(curr)
  796. if (!isNaN(value)) {
  797. return prev + curr
  798. } else {
  799. return prev
  800. }
  801. }, 0)
  802. } else {
  803. sums[index] = 0
  804. }
  805. } else {
  806. sums[index] = '--'
  807. }
  808. })
  809. if (typeof sums[sums.length - 3] == 'number') {
  810. sums[sums.length - 3] = sums[sums.length - 3].toFixed(2)
  811. }
  812. if (typeof sums[sums.length - 4] == 'number') {
  813. sums[sums.length - 4] = sums[sums.length - 4].toFixed(2)
  814. }
  815. if (typeof sums[sums.length - 5] == 'number') {
  816. sums[sums.length - 5] = sums[sums.length - 5].toFixed(2)
  817. }
  818. if (typeof sums[sums.length - 7] == 'number') {
  819. sums[sums.length - 7] = sums[sums.length - 7].toFixed(2)
  820. }
  821. return sums
  822. },
  823. getList() {
  824. // if(this.roleId=='4c2d50d8ff2943c1b7a1e947feefe048'){
  825. // this.roleFlag=1
  826. // }else if(this.roleId=='cca3cf0ca2814d1e918f5b0a4380fe69'){
  827. // this.roleFlag=2
  828. // }else if(this.roleId=='9ad8abb997714ef29068f23c2ad3b125'){
  829. // this.roleFlag=3
  830. // }else if(this.roleId=='3d7b9179552b4c3e9c2d7af43962e2e4'){
  831. // this.roleFlag=4
  832. // }else if(this.roleId=="4ef070439cd64784bce8844fd3f0f8e1"){
  833. // this.roleFlag=''
  834. // }
  835. getStockPurchaseReceiptList({
  836. compId: localStorage.getItem('ws-pf_compId'),
  837. currentPage: this.currentPage,
  838. pageSize: this.pageSize,
  839. startDate: this.startDate,
  840. endDate: this.endDate,
  841. searchType: this.searchType,
  842. contractNo: this.contractNo,
  843. // roleFlag: this.roleFlag,
  844. })
  845. .toPromise()
  846. .then((response) => {
  847. this.payingMoney = 0
  848. this.payedMoney = 0
  849. this.payNotMoney = 0
  850. this.settlementWeight1 = 0
  851. for (var i = 0; i < response.records.length; i++) {
  852. response.records[i].identification = 'false'
  853. response.records[i].identification1 = 'false'
  854. this.payingMoney += response.records[i].amountIngPayable
  855. this.payedMoney += response.records[i].amountEdPayable
  856. this.payNotMoney += response.records[i].amountNotPayable
  857. this.settlementWeight1 += response.records[i].settlementWeight
  858. }
  859. this.payingMoney = this.payingMoney.toFixed(2)
  860. this.payedMoney = this.payedMoney.toFixed(2)
  861. this.payNotMoney = this.payNotMoney.toFixed(2)
  862. this.settlementWeight1 = this.settlementWeight1.toFixed(2)
  863. this.deptBudgetTotal = response.total
  864. this.warehouseList = response.records
  865. })
  866. },
  867. getContractList() {
  868. getStockPurchaseContractNoList({
  869. compId: localStorage.getItem('ws-pf_compId'),
  870. startDate: this.startDate,
  871. endDate: this.endDate,
  872. // currentPage: this.currentPage,
  873. // pageSize: this.pageSize,
  874. // roleFlag: this.roleFlag,
  875. // contractNo: this.contractNo,
  876. })
  877. .toPromise()
  878. .then((response) => {
  879. this.contractNoList = response
  880. this.option = this.contractNoList
  881. this.contractNo = this.option[0].contractNo
  882. this.contractchange(this.contractNo)
  883. // this.getList()
  884. })
  885. },
  886. handleRemove(file) {
  887. console.log(file)
  888. },
  889. handlePictureCardPreview(file) {
  890. this.paymentScreenshot = file.data.url
  891. this.dialogVisible = true
  892. },
  893. // handleDownload(file) {
  894. // console.log(file)
  895. // },
  896. getPassYearFormatDate() {
  897. if (!localStorage.getItem('startDate') && !localStorage.getItem('endDate')) {
  898. var nowDate = new Date()
  899. var _date = new Date()
  900. nowDate.setTime(nowDate.getTime() - 24 * 60 * 60 * 1000 * 30)
  901. var year = nowDate.getFullYear()
  902. var year1 = _date.getFullYear()
  903. var month = nowDate.getMonth() + 1
  904. var month1 = _date.getMonth() + 1
  905. var strDate = nowDate.getDate()
  906. var strDate1 = _date.getDate()
  907. if (month >= 1 && month <= 9) {
  908. month = '0' + month
  909. }
  910. if (month1 >= 1 && month1 <= 9) {
  911. month1 = '0' + month1
  912. }
  913. if (strDate >= 0 && strDate <= 9) {
  914. strDate = '0' + strDate
  915. }
  916. if (strDate1 >= 0 && strDate1 <= 9) {
  917. strDate1 = '0' + strDate1
  918. }
  919. this.startDate = year + '-' + month + '-' + strDate
  920. this.endDate = year1 + '-' + month1 + '-' + strDate1
  921. } else {
  922. this.startDate = localStorage.getItem('startDate')
  923. this.endDate = localStorage.getItem('endDate')
  924. }
  925. this.value2 = [this.startDate, this.endDate]
  926. },
  927. handlePictureCardPreviewDis(file) {
  928. this.depositUrl = file.data.url
  929. this.dialogVisible = true
  930. },
  931. handleRemoveDis(file) {
  932. console.log(file)
  933. },
  934. getSpanArr(data) {
  935. let that = this
  936. //页面展示的数据,不一定是全部的数据,所以每次都清空之前存储的 保证遍历的数据是最新的数据。以免造成数据渲染混乱
  937. that.spanArr = []
  938. that.pos = 0
  939. // //遍历数据
  940. data.forEach((item, index) => {
  941. //判断是否是第一项
  942. if (index === 0) {
  943. this.spanArr.push(1)
  944. this.pos = 0
  945. } else {
  946. //不是第一项时,就根据标识去存储
  947. if (data[index].warehouseNumViewList.length > 1) {
  948. 查找到符合条件的数据时每次要把之前存储的数据 + 1
  949. this.spanArr[this.pos] = data[index].warehouseNumViewList.length
  950. this.spanArr.push(0)
  951. } else {
  952. // 没有符合的数据时,要记住当前的index
  953. this.spanArr.push(1)
  954. this.pos = index
  955. }
  956. }
  957. })
  958. },
  959. dateFormat(fmt, date) {
  960. let ret
  961. const opt = {
  962. 'Y+': date.getFullYear().toString(), // 年
  963. 'm+': (date.getMonth() + 1).toString(), // 月
  964. 'd+': date.getDate().toString(), // 日
  965. 'H+': date.getHours().toString(), // 时
  966. // "M+": date.getMinutes().toString(), // 分
  967. // "S+": date.getSeconds().toString() // 秒
  968. // 有其他格式化字符需求可以继续添加,必须转化成字符串
  969. }
  970. for (let k in opt) {
  971. ret = new RegExp('(' + k + ')').exec(fmt)
  972. if (ret) {
  973. fmt = fmt.replace(
  974. ret[1],
  975. ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
  976. )
  977. }
  978. }
  979. return fmt
  980. },
  981. handleClose() {
  982. this.accessoryTFs = false
  983. },
  984. handleSizeChange(val) {
  985. console.log(`每页 ${val} 条`)
  986. this.pageSize = val
  987. this.getList()
  988. },
  989. handleCurrentChange(val) {
  990. this.currentPage = val
  991. console.log(`当前页: ${val}`)
  992. this.getList()
  993. },
  994. // handleExamine(row) {
  995. // this.$router.push({
  996. // name: 'salesContractExamine',
  997. // query: { id: row.id },
  998. // })
  999. // },
  1000. // 关闭 dialog时 处理文件url 初始化upload组件
  1001. handleCloe() {
  1002. this.dialogViewSpareMoney = false
  1003. },
  1004. //查找
  1005. find() {
  1006. this.currentPage = 1
  1007. this.getList()
  1008. },
  1009. async exportlist() {
  1010. const {
  1011. data
  1012. } = await export1({
  1013. compId: localStorage.getItem('ws-pf_compId'),
  1014. contractType: this.contractType,
  1015. currentPage: this.currentPage,
  1016. pageSize: this.pageSize,
  1017. searchType: this.searchType,
  1018. searchKeyWord: this.searchKeyWord,
  1019. startDate: this.startDate,
  1020. endDate: this.endDate,
  1021. }, {}, {
  1022. responseType: 'blob'
  1023. }).toPromise()
  1024. downloadFile({
  1025. res: data,
  1026. fileName: `${
  1027. this.date.year + (this.date.month ? `-${this.date.month}` : '')
  1028. }_采购合同`,
  1029. type: 'xls',
  1030. })
  1031. },
  1032. total() {},
  1033. },
  1034. }
  1035. </script>
  1036. <style lang="scss" scoped>
  1037. .connert {
  1038. width: 90%;
  1039. margin: 0 auto;
  1040. }
  1041. .vertical-text-left {
  1042. width: 62px;
  1043. text-align: right;
  1044. }
  1045. //分页
  1046. .el-pagination {
  1047. padding: 10px 15px;
  1048. margin-bottom: 0;
  1049. text-align: center;
  1050. }
  1051. /deep/.el-pager li.active {
  1052. color: #5878e8;
  1053. cursor: default;
  1054. }
  1055. /deep/.el-pager li:hover {
  1056. color: #5878e8;
  1057. cursor: default;
  1058. }
  1059. .el-button--default {
  1060. color: #8890b1;
  1061. border-color: #e8eaf1;
  1062. }
  1063. /deep/.base_header_layout .grid-content.right .find.el-button--primary {
  1064. width: 30px;
  1065. margin-left: 0;
  1066. border-top-left-radius: 0px;
  1067. border-bottom-left-radius: 0px;
  1068. }
  1069. /deep/.findValue .el-input__inner {
  1070. border-top-right-radius: 0px;
  1071. border-bottom-right-radius: 0px;
  1072. width: 385px;
  1073. }
  1074. .completed.el-button--default {
  1075. border-color: #5878e8;
  1076. background-color: #f6f7fc;
  1077. color: #5878e8;
  1078. }
  1079. .putstorage.el-button--default,
  1080. .deliverystorage.el-button--default {
  1081. border-color: #8890b1;
  1082. background-color: #fff;
  1083. color: #8890b1;
  1084. }
  1085. /deep/.el-table td,
  1086. /deep/.el-table th.is-leaf {
  1087. border-right: 1px solid #e9ecf7;
  1088. text-align: center;
  1089. }
  1090. /deep/.el-table tr td:first-child,
  1091. /deep/.el-table tr th.is-leaf:first-child {
  1092. border-left: 1px solid #e9ecf7;
  1093. }
  1094. .record,
  1095. .adjustment {
  1096. display: inline-block;
  1097. color: #5878e8;
  1098. padding: 0 4px !important;
  1099. position: relative;
  1100. }
  1101. .content2-item {
  1102. padding: 10px;
  1103. }
  1104. .content2 {
  1105. margin-top: 10px;
  1106. border-radius: 5px;
  1107. background: #F0F3FE;
  1108. }
  1109. .record:after {
  1110. position: absolute;
  1111. content: '';
  1112. display: block;
  1113. top: 5px;
  1114. right: -2px;
  1115. width: 1px;
  1116. height: 12px;
  1117. background: #e9ecf7;
  1118. }
  1119. // .el-row{
  1120. // height: 150px;
  1121. // }
  1122. .base_header_layout .grid-content {
  1123. margin-top: 80px;
  1124. }
  1125. .el-input--small .el-input__inner {
  1126. margin-left: 20px;
  1127. }
  1128. .el-range-editor--small.el-input__inner {
  1129. height: 32px;
  1130. margin-left: -20%;
  1131. }
  1132. //执行样式
  1133. .executory,
  1134. .inExecution,
  1135. .done {
  1136. width: 6px;
  1137. height: 6px;
  1138. display: inline-block;
  1139. border-radius: 50%;
  1140. position: relative;
  1141. top: -1px;
  1142. font-size: 14px;
  1143. }
  1144. .executory {
  1145. background: #ff9f24;
  1146. }
  1147. .inExecution {
  1148. background: #5878e8;
  1149. }
  1150. .done {
  1151. background: #50cad4;
  1152. }
  1153. .record,
  1154. .adjustment {
  1155. display: inline-block;
  1156. color: #5878e8;
  1157. padding: 0 4px !important;
  1158. position: relative;
  1159. font-size: 14px;
  1160. }
  1161. .container {
  1162. overflow: scroll;
  1163. height: 93vh;
  1164. }
  1165. .button-container {
  1166. display: flex;
  1167. flex-wrap: nowrap;
  1168. justify-content: space-between;
  1169. align-items: center;
  1170. background-color: #fff;
  1171. width: 100%;
  1172. height: 50px;
  1173. padding: 0 10px;
  1174. &>div {
  1175. margin-left: 10px;
  1176. display: flex;
  1177. flex-wrap: nowrap;
  1178. flex-direction: row;
  1179. &>span {
  1180. line-height: 50px;
  1181. }
  1182. }
  1183. /deep/.auditFlow-box {
  1184. position: unset;
  1185. margin-left: 10px;
  1186. &/deep/.auditFlow-icon {
  1187. width: auto;
  1188. padding-right: 30px;
  1189. }
  1190. &/deep/.auditFlow-main {
  1191. position: absolute;
  1192. }
  1193. }
  1194. }
  1195. .bg-left {
  1196. padding-left: 30px;
  1197. }
  1198. .title {
  1199. position: relative;
  1200. }
  1201. .title::before {
  1202. content: '';
  1203. display: inline-block;
  1204. width: 5px;
  1205. height: 30px;
  1206. background: #5473e8;
  1207. position: absolute;
  1208. left: 0;
  1209. }
  1210. .seller {
  1211. font-size: 16px;
  1212. font-weight: 600;
  1213. color: #323233;
  1214. line-height: 24px;
  1215. }
  1216. .row2>span {
  1217. margin-right: 20px;
  1218. }
  1219. .el-button--primary {
  1220. background-color: #5878e8;
  1221. border-color: #5878e8;
  1222. // margin-left: 85%;
  1223. margin-top: 13px;
  1224. }
  1225. //导航条样式
  1226. .el-col-12 {
  1227. width: 50%;
  1228. height: 60px;
  1229. background: #f6f7fc;
  1230. border-radius: 4px 4px 1px 1px;
  1231. }
  1232. .el-input--small .el-input__inner {
  1233. height: 32px;
  1234. line-height: 32px;
  1235. width: 385px;
  1236. margin-top: 10px;
  1237. }
  1238. .bg-bottom {
  1239. margin-left: 85%;
  1240. }
  1241. .but {
  1242. margin-left: 30%;
  1243. /* margin-top: -32px; */
  1244. overflow: auto;
  1245. /* float: left; */
  1246. /* margin-left: 1px; */
  1247. margin-left: -10px;
  1248. }
  1249. .el-input--small {
  1250. font-size: 13px;
  1251. width: 390px;
  1252. margin-left: 38%;
  1253. }
  1254. /deep/.el-table .el-table__header .cell,
  1255. .el-table .el-table__body .cell {
  1256. text-align: center;
  1257. }
  1258. .el-scrollbar__wrap {
  1259. overflow-y: hidden;
  1260. }
  1261. /deep/.deal {
  1262. margin-left: 0%;
  1263. width: 64%;
  1264. }
  1265. .photo {
  1266. padding: 0% 34%;
  1267. }
  1268. .photo1 {
  1269. padding: 0 10%;
  1270. }
  1271. .photo2 {
  1272. padding: 0 12%;
  1273. }
  1274. /deep/.el-form-item--small .el-form-item__label,
  1275. .el-form-item--small .el-form-item__content {
  1276. text-align: center;
  1277. }
  1278. hr {
  1279. width: 91%;
  1280. }
  1281. /deep/.deaal {
  1282. width: 66%;
  1283. margin-left: 9%;
  1284. }
  1285. .el-date-editor.el-input,
  1286. .el-date-editor.el-input__inner,
  1287. .el-input-number--small {
  1288. width: 123% !important;
  1289. }
  1290. /deep/.el-table td,
  1291. .el-table th.is-leaf {
  1292. border-right: 1px solid #e9ecf7;
  1293. text-align: center;
  1294. height: 40px;
  1295. }
  1296. .inputChenge {
  1297. width: 100%;
  1298. display: inline-flex;
  1299. margin-left: -28%;
  1300. }
  1301. .inputs {
  1302. margin: 0 auto;
  1303. }
  1304. /deep/.beizhu .el-input--small .el-input__inner {
  1305. height: 220px;
  1306. line-height: 28px;
  1307. width: 430px;
  1308. margin-left: 15px;
  1309. }
  1310. </style>