PaymentManagement.vue 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885
  1. <template>
  2. <!--布局容器-->
  3. <div class="container" style="width: 99%; margin-top: 0px">
  4. <!-- 顶部查询 -->
  5. <el-row class="top">
  6. <el-form
  7. v-model="pageRequest"
  8. size="small"
  9. label-width="95px"
  10. class="form"
  11. >
  12. <el-form-item label="开票类型" label-width="95px" prop="">
  13. <el-select
  14. v-model="pageRequest.teamOrUserFlag"
  15. placeholder="请选择开票类型"
  16. >
  17. <el-option label="纸质" value="1"></el-option>
  18. <el-option label="电子" value="2"></el-option>
  19. </el-select>
  20. </el-form-item>
  21. <el-form-item label="开票员" label-width="95px" prop="revenueOutlay">
  22. <el-input
  23. v-model="pageRequest.deptName"
  24. placeholder="请输入开票方"
  25. class=""
  26. clearable
  27. ></el-input>
  28. </el-form-item>
  29. <el-form-item label="开票方" label-width="95px" prop="deptName">
  30. <el-input
  31. v-model="pageRequest.deptName"
  32. placeholder="请输入开票方"
  33. class=""
  34. clearable
  35. ></el-input>
  36. </el-form-item>
  37. <el-form-item label="开票日期" label-width="95px" prop="applyTime">
  38. <el-date-picker
  39. v-model="pageRequest.date"
  40. type="date"
  41. placeholder="选择开票日期"
  42. ></el-date-picker>
  43. </el-form-item>
  44. <el-form-item
  45. ><el-button type="primary" size="small" @click="queryStaffInfo"
  46. >查询</el-button
  47. >
  48. </el-form-item>
  49. </el-form>
  50. </el-row>
  51. <el-button
  52. class="operation"
  53. type="primary"
  54. plain
  55. size="medium"
  56. @click="addPayment"
  57. >开票新增</el-button
  58. >
  59. <!-- 表格 -->
  60. <kt-common-table
  61. v-loading="loading"
  62. element-loading-text="拼命加载中..."
  63. element-loading-spinner="el-icon-loading"
  64. :operationWidth="operationWidth"
  65. class="ktTable"
  66. permsEdit="sys:agent:view"
  67. ref="dataTable"
  68. :data="pageResult"
  69. :columns="columns"
  70. :showBatchDelete="false"
  71. :showOperation="true"
  72. editButtonName="编辑"
  73. @findPage="findPage"
  74. :isshowpagination="true"
  75. @handleEdit="handleDetail"
  76. ></kt-common-table>
  77. <!-- 新增编辑弹框 -->
  78. <el-dialog
  79. class="dialog detailtTable"
  80. :title="title"
  81. :close-on-click-modal="false"
  82. :before-close="resetForm"
  83. :visible.sync="detailDialog"
  84. width="60%"
  85. >
  86. <div class="dialog-body">
  87. <el-form
  88. :model="formData"
  89. :rules="rules"
  90. ref="formData"
  91. label-width="130px"
  92. size="small"
  93. class="frame"
  94. >
  95. <el-row>
  96. <el-col :span="12">
  97. <el-form-item label="账户类别" prop="outerFlag">
  98. <el-select
  99. v-model="formData.outerFlag"
  100. placeholder="请选择账户类别"
  101. >
  102. <el-option label="内部账户" value="0"></el-option>
  103. <el-option label="外部账户" value="1"></el-option>
  104. </el-select>
  105. </el-form-item>
  106. </el-col>
  107. <el-col :span="12">
  108. <el-form-item label="户名" prop="accountName">
  109. <el-input
  110. v-model="formData.accountName"
  111. autocomplete="off"
  112. ></el-input>
  113. </el-form-item>
  114. </el-col>
  115. </el-row>
  116. <el-row>
  117. <el-col :span="12">
  118. <el-form-item label="账户性质" prop="accountQuality">
  119. <el-select
  120. v-model="formData.accountQuality"
  121. placeholder="请选择账户性质"
  122. >
  123. <!-- <el-option
  124. v-for="item in dictionariesData"
  125. :key="item.value + 'bb'"
  126. :label="item.label"
  127. :value="item.value"
  128. ></el-option> -->
  129. </el-select>
  130. </el-form-item>
  131. </el-col>
  132. <el-col :span="12">
  133. <el-form-item label="银行卡号" prop="bankCardNum">
  134. <el-input
  135. v-model="formData.bankCardNum"
  136. autocomplete="off"
  137. ></el-input>
  138. </el-form-item>
  139. </el-col>
  140. </el-row>
  141. <el-row>
  142. <el-col :span="12">
  143. <el-form-item label="营业性质" prop="yyxz">
  144. <el-select v-model="formData.yyxz" placeholder="请选择营业性质">
  145. <el-option label="一般纳税" value="0"></el-option>
  146. <el-option label="小规模" value="1"></el-option>
  147. <el-option label="个体户" value="2"></el-option>
  148. </el-select>
  149. </el-form-item>
  150. </el-col>
  151. <el-col :span="12">
  152. <el-form-item label="所属地" prop="ssd">
  153. <el-input v-model="formData.ssd" autocomplete="off"></el-input>
  154. </el-form-item>
  155. </el-col>
  156. </el-row>
  157. <el-row>
  158. <el-col :span="12">
  159. <el-form-item label="法人" prop="fr">
  160. <el-input v-model="formData.fr" autocomplete="off"></el-input>
  161. </el-form-item>
  162. </el-col>
  163. <el-col :span="12">
  164. <el-form-item label="成立日期" prop="clrq">
  165. <el-date-picker
  166. v-model="formData.clrq"
  167. type="date"
  168. placeholder="选择日期"
  169. >
  170. </el-date-picker>
  171. </el-form-item>
  172. </el-col>
  173. </el-row>
  174. <el-row>
  175. <el-col :span="12">
  176. <el-form-item label="开户行" prop="bank">
  177. <el-input v-model="formData.bank" autocomplete="off"></el-input>
  178. </el-form-item>
  179. </el-col>
  180. <el-col v-show="formData.outerFlag == 0" :span="12">
  181. <el-form-item label="开户行名称" prop="bankName">
  182. <el-input
  183. v-model="formData.bankName"
  184. autocomplete="off"
  185. ></el-input>
  186. </el-form-item>
  187. </el-col>
  188. </el-row>
  189. <el-row v-show="formData.outerFlag == 0">
  190. <el-col :span="12">
  191. <el-form-item label="开户行号" prop="bankNum">
  192. <el-input
  193. v-model="formData.bankNum"
  194. autocomplete="off"
  195. ></el-input>
  196. </el-form-item>
  197. </el-col>
  198. <el-col :span="12">
  199. <el-form-item label="证书有效期" prop="certExpirationDate">
  200. <el-date-picker
  201. v-model="formData.certExpirationDate"
  202. size="small"
  203. type="daterange"
  204. range-separator="至"
  205. start-placeholder="开始日期"
  206. end-placeholder="结束日期"
  207. value-format="yyyy-MM-dd"
  208. @change="setDateInterval($event)"
  209. >
  210. </el-date-picker>
  211. </el-form-item>
  212. </el-col>
  213. </el-row>
  214. <el-row v-show="formData.outerFlag == 0">
  215. <el-col :span="12">
  216. <el-form-item label="结算卡" prop="clearingProfit">
  217. <el-input-number
  218. v-model="formData.clearingProfit"
  219. :min="0"
  220. :max="99999999999999999"
  221. label=""
  222. ></el-input-number>
  223. </el-form-item>
  224. </el-col>
  225. <el-col :span="12">
  226. <el-form-item label="单日转账笔数限制" prop="dayStrokeNum">
  227. <el-input-number
  228. v-model="formData.dayStrokeNum"
  229. :min="0"
  230. :max="99999999999999999"
  231. label=""
  232. ></el-input-number>
  233. </el-form-item>
  234. </el-col>
  235. </el-row>
  236. <el-row v-show="formData.outerFlag == 0">
  237. <el-col :span="12">
  238. <el-form-item label="外部过账金额" prop="exteriorProfit">
  239. <el-input-number
  240. v-model="formData.exteriorProfit"
  241. :min="0"
  242. :max="99999999999999999"
  243. label=""
  244. ></el-input-number>
  245. </el-form-item>
  246. </el-col>
  247. <el-col :span="12">
  248. <el-form-item label="财税公司利润" prop="fiscalProfit">
  249. <el-input-number
  250. v-model="formData.fiscalProfit"
  251. :min="0"
  252. :max="99999999999999999"
  253. label=""
  254. ></el-input-number>
  255. </el-form-item>
  256. </el-col>
  257. </el-row>
  258. <el-row v-show="formData.outerFlag == 0">
  259. <el-col :span="12">
  260. <el-form-item label="保险公司回款" prop="insuranceProfit">
  261. <el-input-number
  262. v-model="formData.insuranceProfit"
  263. :min="0"
  264. :max="99999999999999999"
  265. label=""
  266. ></el-input-number>
  267. </el-form-item>
  268. </el-col>
  269. <el-col :span="12">
  270. <el-form-item label="其他利润" prop="otherProfit">
  271. <el-input-number
  272. v-model="formData.otherProfit"
  273. :min="0"
  274. :max="99999999999999999"
  275. label=""
  276. ></el-input-number>
  277. </el-form-item>
  278. </el-col>
  279. </el-row>
  280. <el-row v-show="formData.outerFlag == 0">
  281. <el-col :span="12">
  282. <el-form-item label="园区利润" prop="parkProfit">
  283. <el-input-number
  284. v-model="formData.parkProfit"
  285. :min="0"
  286. :max="99999999999999999"
  287. label=""
  288. ></el-input-number>
  289. </el-form-item>
  290. </el-col>
  291. <el-col :span="12">
  292. <el-form-item label="对私单日限额" prop="priDayLines">
  293. <el-input-number
  294. v-model="formData.priDayLines"
  295. :min="0"
  296. :max="99999999999999999"
  297. label=""
  298. ></el-input-number>
  299. </el-form-item>
  300. </el-col>
  301. </el-row>
  302. <el-row v-show="formData.outerFlag == 0">
  303. <el-col :span="12">
  304. <el-form-item label="对私单笔限额" prop="priSingleLines">
  305. <el-input-number
  306. v-model="formData.priSingleLines"
  307. :min="0"
  308. :max="99999999999999999"
  309. label=""
  310. ></el-input-number>
  311. </el-form-item>
  312. </el-col>
  313. <el-col :span="12">
  314. <el-form-item label="对私年额度" prop="priYearLines">
  315. <el-input-number
  316. v-model="formData.priYearLines"
  317. :min="0"
  318. :max="99999999999999999"
  319. label=""
  320. ></el-input-number>
  321. </el-form-item>
  322. </el-col>
  323. </el-row>
  324. <el-row v-show="formData.outerFlag == 0">
  325. <el-col :span="12">
  326. <el-form-item label="对公单日限额" prop="pubDayLines">
  327. <el-input-number
  328. v-model="formData.pubDayLines"
  329. :min="0"
  330. :max="99999999999999999"
  331. label=""
  332. ></el-input-number>
  333. </el-form-item>
  334. </el-col>
  335. <el-col :span="12">
  336. <el-form-item label="对公单笔限额" prop="pubSingleLines">
  337. <el-input-number
  338. v-model="formData.pubSingleLines"
  339. :min="0"
  340. :max="99999999999999999"
  341. label=""
  342. ></el-input-number>
  343. </el-form-item>
  344. </el-col>
  345. </el-row>
  346. <el-row v-show="formData.outerFlag == 0">
  347. <el-col :span="12">
  348. <el-form-item label="对公年额度" prop="pubYearLines">
  349. <el-input-number
  350. v-model="formData.pubYearLines"
  351. :min="0"
  352. :max="99999999999999999"
  353. label=""
  354. ></el-input-number>
  355. </el-form-item>
  356. </el-col>
  357. <el-col :span="12">
  358. <el-form-item label="天勤利润" prop="tianqinProfit">
  359. <el-input-number
  360. v-model="formData.tianqinProfit"
  361. :min="0"
  362. :max="99999999999999999"
  363. label=""
  364. ></el-input-number>
  365. </el-form-item>
  366. </el-col>
  367. </el-row>
  368. <el-row>
  369. <el-col :span="12">
  370. <el-form-item label="单日转账笔数剩余" prop="dayStrokeNumExcess">
  371. <el-input-number
  372. v-model="formData.dayStrokeNumExcess"
  373. :min="0"
  374. :max="99999999999999999"
  375. label=""
  376. ></el-input-number>
  377. </el-form-item>
  378. </el-col>
  379. <el-col :span="12">
  380. <el-form-item label="对私单日限额剩余" prop="priDayLinesExcess">
  381. <el-input-number
  382. v-model="formData.priDayLinesExcess"
  383. :min="0"
  384. :max="99999999999999999"
  385. label=""
  386. ></el-input-number>
  387. </el-form-item>
  388. </el-col>
  389. </el-row>
  390. <el-row>
  391. <el-col :span="12">
  392. <el-form-item label="对私年剩余额度" prop="priYearExcess">
  393. <el-input-number
  394. v-model="formData.priYearExcess"
  395. :min="0"
  396. :max="99999999999999999"
  397. label=""
  398. ></el-input-number>
  399. </el-form-item>
  400. </el-col>
  401. <el-col :span="12">
  402. <el-form-item label="对公单日限额剩余" prop="pubDayLinesExcess">
  403. <el-input-number
  404. v-model="formData.pubDayLinesExcess"
  405. :min="0"
  406. :max="99999999999999999"
  407. label=""
  408. ></el-input-number>
  409. </el-form-item>
  410. </el-col>
  411. </el-row>
  412. <el-row>
  413. <el-col :span="12">
  414. <el-form-item label="对公年剩余额度" prop="pubYearExcess">
  415. <el-input-number
  416. v-model="formData.pubYearExcess"
  417. :min="0"
  418. :max="99999999999999999"
  419. label=""
  420. ></el-input-number>
  421. </el-form-item>
  422. </el-col>
  423. <el-col :span="12">
  424. <el-form-item label="支出金额" prop="spend">
  425. <el-input-number
  426. v-model="formData.spend"
  427. :min="0"
  428. :max="99999999999999999"
  429. label=""
  430. ></el-input-number>
  431. </el-form-item>
  432. </el-col>
  433. </el-row>
  434. </el-form>
  435. </div>
  436. <div slot="footer" class="dialog-footer">
  437. <el-button @click="resetForm" size="small">取 消</el-button>
  438. <el-button @click="submitInfo" type="primary" size="small">{{
  439. modelText
  440. }}</el-button>
  441. </div>
  442. </el-dialog>
  443. <!-- <el-dialog
  444. class="dialog detailtTable"
  445. :title="title"
  446. :close-on-click-modal="false"
  447. :before-close="resetForm"
  448. :visible.sync="detailDialog"
  449. width="60%"
  450. >
  451. <div class="dialog-body">
  452. <el-table
  453. v-loading="loading"
  454. element-loading-text="拼命加载中..."
  455. element-loading-spinner="el-icon-loading"
  456. :data="detailData"
  457. :stripe="true"
  458. style="width: 100%"
  459. row-key=""
  460. border
  461. default-expand-all
  462. :header-cell-style="{
  463. background: '#F2F7FC',
  464. fontWeight: '900',
  465. color: '#606266',
  466. }"
  467. >
  468. <el-table-column type="index" label="序号" align="center" width="50">
  469. </el-table-column>
  470. <el-table-column
  471. v-for="(item, index) in detailColumns"
  472. :key="index"
  473. :min-width="item.minWidth"
  474. :prop="item.prop"
  475. align="center"
  476. :label="item.label"
  477. >
  478. </el-table-column>
  479. </el-table>
  480. </div>
  481. <div slot="footer" class="dialog-footer">
  482. <div class="bottomFixed" style="padding-bottom: 50px" ref="bottomFixed">
  483. <el-pagination
  484. @size-change="handleSizeChange"
  485. layout="total, sizes, prev, pager, next, jumper"
  486. @current-change="refreshPageRequest"
  487. :current-page="detailParams.pageNo"
  488. :page-size="detailParams.pageSize"
  489. :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]"
  490. :total="detailParams.totalSize"
  491. style="float: left; margin-left: 20px"
  492. >
  493. </el-pagination>
  494. </div>
  495. <el-button @click="resetForm" size="small">取 消</el-button>
  496. </div>
  497. </el-dialog> -->
  498. </div>
  499. </template>
  500. <script>
  501. import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
  502. import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
  503. import CommonUtil from "@/utils/comutil.js";
  504. export default {
  505. name: "InvoiceInformation",
  506. components: { KtCommonTable, KtButton },
  507. created() {},
  508. mounted() {},
  509. data() {
  510. return {
  511. title: "开票新增",
  512. loading: true,
  513. detailDialog: false,
  514. operationWidth: 100, //操作列宽度
  515. queryFrom: {
  516. //查询条件
  517. },
  518. pageResult: {}, //表格参数
  519. pageRequest: {
  520. // 列表查询条件
  521. pageNo: 1,
  522. pageSize: 10,
  523. teamOrUserFlag: "1", //团队还是人员 1是团队 2是人员
  524. deptName: "", //部门名称
  525. userName: "", //人员名称
  526. date: [], //日期区间数组
  527. createTimeStart: "", //日期开始时间
  528. createTimeEnd: "", //日期结束时间
  529. },
  530. columns: [
  531. { prop: "deptName", label: "开票员", type: "text" },
  532. { prop: "quoteNum", label: "开票科目", type: "text" },
  533. { prop: "submitNum", label: "开票方", type: "text" },
  534. { prop: "hasInsuredNum", label: "对方单位名称", type: "text" },
  535. { prop: "syPremiumSum", label: "发票号码", type: "text" },
  536. { prop: "taxaMountSum", label: "发票数", type: "text" },
  537. { prop: "jqPremiumSum", label: "开票日期", type: "text" },
  538. {
  539. prop: "totalSumpremium",
  540. label: "不含税金额",
  541. type: "text",
  542. },
  543. {
  544. prop: "sl",
  545. label: "税率",
  546. type: "text",
  547. },
  548. {
  549. prop: "se",
  550. label: "税额",
  551. type: "text",
  552. },
  553. {
  554. prop: "kpje",
  555. label: "开票金额",
  556. type: "text",
  557. },
  558. {
  559. prop: "fplx",
  560. label: "发票类型",
  561. type: "text",
  562. },
  563. {
  564. prop: "jzrq",
  565. label: "进账日期",
  566. type: "text",
  567. },
  568. {
  569. prop: "jzje",
  570. label: "进账金额",
  571. type: "text",
  572. },
  573. {
  574. prop: "wjzje",
  575. label: "未进账金额",
  576. type: "text",
  577. },
  578. ],
  579. detailData: [],
  580. detailParams: {
  581. pageNo: 1,
  582. pageSize: 10,
  583. teamOrUserFlag: "2",
  584. },
  585. detailColumns: [
  586. {
  587. prop: "userName",
  588. label: "成员名称",
  589. type: "text",
  590. minWidth: "100",
  591. },
  592. {
  593. prop: "quoteNum",
  594. label: "报价次数",
  595. type: "text",
  596. minWidth: "100",
  597. minWidth: "100",
  598. },
  599. {
  600. prop: "submitNum",
  601. label: "提交核保次数",
  602. type: "text",
  603. minWidth: "100",
  604. },
  605. {
  606. prop: "hasInsuredNum",
  607. label: "已承保数量",
  608. type: "text",
  609. minWidth: "100",
  610. },
  611. {
  612. prop: "syPremiumSum",
  613. label: "商业保费",
  614. type: "text",
  615. minWidth: "100",
  616. },
  617. { prop: "taxaMountSum", label: "车船税", type: "text" },
  618. {
  619. prop: "jqPremiumSum",
  620. label: "交强险费用",
  621. type: "text",
  622. minWidth: "100",
  623. },
  624. {
  625. prop: "totalSumpremium",
  626. label: "总承保保费总数",
  627. type: "text",
  628. minWidth: "120",
  629. },
  630. ],
  631. modelText: "提 交",
  632. formData: {
  633. outerFlag: "0", //账户类别
  634. accountName: "", //户名
  635. accountQuality: "", //账户性质
  636. bankCardNum: "", //银行卡号
  637. bank: "", //开户行
  638. bankName: "", //开户行名称
  639. bankNum: "", //开户行号
  640. certExpirationDate: "", //证书有效期
  641. clearingProfit: "", //结算卡
  642. dayStrokeNum: "", //单日转账笔数限制
  643. exteriorProfit: "", //外部过账金额
  644. fiscalProfit: "", //财税公司利润
  645. insuranceProfit: "", //保险公司回款
  646. otherProfit: "", //其他利润
  647. parkProfit: "", //园区利润
  648. priDayLines: "", //对私单日限额
  649. priSingleLines: "", //对私单笔限额
  650. priYearExcess: "", //对私年剩余额度
  651. priYearLines: "", //对私年额度
  652. pubDayLines: "", //对公单日限额
  653. pubSingleLines: "", //对公单笔限额
  654. pubYearExcess: "", //对公年剩余额度
  655. pubYearLines: "", //对公年额度
  656. tianqinProfit: "", //天勤利润
  657. dayStrokeNumExcess: "", //单日转账笔数剩余
  658. priDayLinesExcess: "", //对私单日限额剩余
  659. pubDayLinesExcess: "", //对公单日限额剩余
  660. spend: "", // 支出金额
  661. yyxz: "", //营业性质
  662. ssd: "", //所属地
  663. fr: "", //法人
  664. clrq: "", //成立日期
  665. },
  666. rules:{
  667. //内部表单规则
  668. outerFlag: [
  669. { required: true, message: "请选择账户类别", trigger: "change" },
  670. ],
  671. accountName: [
  672. { required: true, message: "户名不能为空", trigger: "blur" },
  673. ],
  674. accountQuality: [
  675. { required: true, message: "请选择账户性质", trigger: "change" },
  676. ],
  677. bankCardNum: [
  678. { required: true, message: "银行卡号不能为空", trigger: "blur" },
  679. ],
  680. bank: [{ required: true, message: "开户行不能为空", trigger: "blur" }],
  681. bankName: [
  682. { required: true, message: "开户行名称不能为空", trigger: "blur" },
  683. ],
  684. bankNum: [
  685. { required: true, message: "开户行号不能为空", trigger: "blur" },
  686. ],
  687. // clearingProfit: [
  688. // { required: true, message: "结算卡不能为空", trigger: "blur" },
  689. // ],
  690. certExpirationDate: [
  691. {
  692. required: true,
  693. message: "请选择证书有效期",
  694. trigger: "change",
  695. },
  696. ],
  697. },
  698. };
  699. },
  700. methods: {
  701. //新增开票
  702. addPayment() {
  703. this.detailDialog = true;
  704. },
  705. //新增编辑开票信息
  706. submitInfo() {
  707. console.log(123);
  708. },
  709. //选择时间区间
  710. dateChange(e) {
  711. if (e == null) {
  712. this.pageRequest.createTimeStart = "";
  713. this.pageRequest.createTimeEnd = "";
  714. } else {
  715. this.pageRequest.createTimeStart = e[0];
  716. this.pageRequest.createTimeEnd = e[1];
  717. }
  718. },
  719. // 换页刷新
  720. refreshPageRequest: function (pageNum) {
  721. this.detailParams.pageNo = pageNum;
  722. this.getDetailData();
  723. },
  724. // 每页条数发生改变
  725. handleSizeChange(pageSize) {
  726. this.detailParams.pageSize = pageSize;
  727. this.getDetailData();
  728. },
  729. //取消隐藏弹框
  730. resetForm() {
  731. this.detailDialog = false;
  732. this.detailParams.pageNo = 1;
  733. this.detailParams.pageSize = 10;
  734. },
  735. //编辑按钮
  736. handleDetail(index) {
  737. let row = index.row;
  738. this.detailParams.deptId = row.deptId;
  739. this.detailParams.deptName = row.deptName;
  740. this.getDetailData();
  741. this.detailDialog = true;
  742. },
  743. // 详情接口
  744. getDetailData() {
  745. this.loading = true;
  746. let obj = JSON.parse(JSON.stringify(this.detailParams));
  747. this.$api.user.quTeamNum(obj).then((res) => {
  748. if (res.code == 200) {
  749. this.detailData = res.data.records;
  750. this.detailParams.pageNo = res.data.current;
  751. this.detailParams.pageSize = res.data.size;
  752. this.detailParams.totalPages = res.data.pages;
  753. this.detailParams.totalSize = res.data.total;
  754. this.loading = false;
  755. } else {
  756. this.$message.error(res.msg);
  757. }
  758. });
  759. },
  760. //获取页面数据
  761. findPage(data) {
  762. this.loading = true;
  763. if (data && data.pageRequest) {
  764. this.pageRequest.pageNo = data.pageRequest.pageNum;
  765. this.pageRequest.pageSize = data.pageRequest.pageSize;
  766. }
  767. this.$api.user
  768. .quTeamNum(this.pageRequest)
  769. .then((res) => {
  770. if (res.code == 200) {
  771. this.pageResult = {
  772. content: res.data.records,
  773. pageNum: res.data.current,
  774. pageSize: res.data.size,
  775. totalPages: res.data.pages,
  776. totalSize: res.data.total,
  777. };
  778. this.loading = false;
  779. } else {
  780. this.$message.error(res.msg);
  781. }
  782. })
  783. .then(data != null ? data.callback : "");
  784. },
  785. // 查询
  786. queryStaffInfo() {
  787. this.pageRequest.pageNo = 1;
  788. this.pageRequest.pageSize = 10;
  789. this.findPage();
  790. },
  791. },
  792. };
  793. </script>
  794. <style scoped>
  795. .operation {
  796. margin-left: 14px !important;
  797. margin-top: 15px !important ;
  798. }
  799. .form {
  800. display: flex;
  801. margin-top: 14px;
  802. align-items: center;
  803. margin-left: -12px;
  804. margin-bottom: 20px;
  805. }
  806. .el-pagination {
  807. font-weight: normal;
  808. }
  809. .el-card__body {
  810. padding: 12px !important;
  811. }
  812. .footer .footerdiv {
  813. display: flex;
  814. align-items: center;
  815. }
  816. .container .el-form-item {
  817. margin-bottom: -14px !important;
  818. }
  819. .form .el-form-item__label {
  820. font-size: 15px !important;
  821. font-weight: 600 !important;
  822. }
  823. .ktTable {
  824. margin-top: 20px;
  825. }
  826. .el-row {
  827. margin-top: 18px;
  828. }
  829. .top {
  830. margin-top: 0px;
  831. }
  832. .el-date-editor--daterange.el-input__inner {
  833. width: 300px;
  834. }
  835. /deep/ .el-select--small {
  836. width: 100%;
  837. }
  838. .frame {
  839. width: 100%;
  840. background-color: #fff;
  841. padding: 20px;
  842. -webkit-box-sizing: border-box;
  843. box-sizing: border-box;
  844. margin-bottom: 15px;
  845. border-radius: 6px;
  846. border: 1px solid #ebeef5;
  847. -webkit-transition: all 0.2s ease-in-out;
  848. transition: all 0.2s ease-in-out;
  849. -webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
  850. box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
  851. }
  852. /deep/ .el-dialog__body {
  853. height: 550px;
  854. overflow-y: auto;
  855. }
  856. .addremove-box {
  857. width: 100%;
  858. display: flex;
  859. justify-content: center;
  860. align-items: center;
  861. font-size: 25px;
  862. margin-top: 10px;
  863. }
  864. .addremove-box > i {
  865. cursor: pointer;
  866. }
  867. .frame >>> .el-date-editor {
  868. width: 100%;
  869. }
  870. .detailtTable >>> .bottomFixed {
  871. position: relative !important;
  872. }
  873. .detailtTable >>> .el-table__body-wrapper {
  874. overflow-y: auto;
  875. height: 500px;
  876. }
  877. .detailtTable >>> .el-dialog {
  878. margin-top: 10vh !important;
  879. }
  880. </style>