detail.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756
  1. <template>
  2. <div class="app-container">
  3. <el-row :gutter="10" class="mb8">
  4. <div class="tabSetting">
  5. <el-col :span="1.5">
  6. <el-button
  7. type="warning"
  8. icon="el-icon-download"
  9. size="mini"
  10. @click="handleExport"
  11. v-hasPermi="['warehouseBusiness:payable:export']"
  12. >导出</el-button
  13. >
  14. </el-col>
  15. <right-toolbar
  16. :showSearch.sync="showSearch"
  17. @queryTable="getList"
  18. ></right-toolbar>
  19. <div style="margin: 0 12px">
  20. <el-button
  21. icon="el-icon-setting"
  22. size="mini"
  23. circle
  24. @click="showSetting = !showSetting"
  25. ></el-button>
  26. </div>
  27. </div>
  28. </el-row>
  29. <el-dialog title="自定义列显示" :visible.sync="showSetting" width="700px">
  30. <div>配置排序列数据(拖动调整顺序)</div>
  31. <div style="margin-left: 17px">
  32. <el-checkbox
  33. v-model="allCheck"
  34. label="全选"
  35. @change="allChecked"
  36. ></el-checkbox>
  37. </div>
  38. <div style="padding: 4px; display: flex; justify-content: center">
  39. <draggable
  40. v-model="setRowList"
  41. group="site"
  42. animation="300"
  43. @start="onStart"
  44. @end="onEnd"
  45. handle=".indraggable"
  46. >
  47. <transition-group>
  48. <div
  49. v-for="item in setRowList"
  50. :key="item.surface"
  51. class="listStyle"
  52. >
  53. <div style="width: 500px" class="indraggable">
  54. <div class="progress" :style="{ width: item.width + 'px' }">
  55. <el-checkbox
  56. :label="item.name"
  57. v-model="item.checked"
  58. :true-label="0"
  59. :false-label="1"
  60. >{{ item.name }}
  61. </el-checkbox>
  62. </div>
  63. </div>
  64. <el-input-number
  65. v-model.number="item.width"
  66. controls-position="right"
  67. :min="1"
  68. :max="500"
  69. size="mini"
  70. ></el-input-number>
  71. </div>
  72. </transition-group>
  73. </draggable>
  74. </div>
  75. <span slot="footer" class="dialog-footer">
  76. <el-button @click="showSetting = false">取 消</el-button>
  77. <el-button @click="delRow" type="danger">重 置</el-button>
  78. <el-button type="primary" @click="save()">确 定</el-button>
  79. </span>
  80. </el-dialog>
  81. <el-table
  82. v-loading="loading"
  83. :data="payableList"
  84. show-summary
  85. :summary-method="getSum"
  86. ref="table"
  87. :height="tableHeight"
  88. >
  89. <!-- <el-table-column type="selection" width="55" align="center" /> -->
  90. <el-table-column type="index" label="行号" align="center" width="80" fixed=""/>
  91. <el-table-column
  92. v-for="(item, index) in getRowList"
  93. :key="index"
  94. :label="item.name"
  95. :width="item.width"
  96. :prop="item.label"
  97. align="center"
  98. :show-overflow-tooltip="true"
  99. sortable
  100. :fixed="item.fixed"
  101. >
  102. <template slot-scope="scope">
  103. <span v-if="item.label == 'fmblno'">
  104. <el-link :underline="false" type="primary">
  105. <div @click="goPage(scope.row)">
  106. {{ scope.row.fmblno }}
  107. </div></el-link>
  108. </span>
  109. <span v-else>{{ scope.row[item.label] }}</span>
  110. </template>
  111. </el-table-column>
  112. </el-table>
  113. <pagination
  114. v-show="total > 0"
  115. :total="total"
  116. :page.sync="queryParams.pageNum"
  117. :limit.sync="queryParams.pageSize"
  118. :page-sizes="[50, 100, 200, 500, 1000]"
  119. @pagination="getList"
  120. />
  121. <!-- 添加或修改库存总账对话框 -->
  122. <!-- <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>-->
  123. <!-- <el-form ref="form" :model="form" :rules="rules" label-width="80px">-->
  124. <!-- <el-form-item label="原始入库业务编号" prop="fOriginalbillno">-->
  125. <!-- <el-input v-model="form.fOriginalbillno" placeholder="请输入原始入库业务编号" />-->
  126. <!-- </el-form-item>-->
  127. <!-- <el-form-item label="上期件数" prop="fPreqty">-->
  128. <!-- <el-input v-model="form.fPreqty" placeholder="请输入上期件数" />-->
  129. <!-- </el-form-item>-->
  130. <!-- <el-form-item label="上期毛重,单位为吨,保留6位小数" prop="fPregrossweight">-->
  131. <!-- <el-input v-model="form.fPregrossweight" placeholder="请输入上期毛重,单位为吨,保留6位小数" />-->
  132. <!-- </el-form-item>-->
  133. <!-- <el-form-item label="上期净重," prop="fPrenetweight">-->
  134. <!-- <el-input v-model="form.fPrenetweight" placeholder="请输入上期净重," />-->
  135. <!-- </el-form-item>-->
  136. <!-- <el-form-item label="入库件数" prop="fQtyd">-->
  137. <!-- <el-input v-model="form.fQtyd" placeholder="请输入入库件数" />-->
  138. <!-- </el-form-item>-->
  139. <!-- <el-form-item label="入库尺码" prop="fVolumnd">-->
  140. <!-- <el-input v-model="form.fVolumnd" placeholder="请输入入库尺码" />-->
  141. <!-- </el-form-item>-->
  142. <!-- <el-form-item label="入库毛重" prop="fGrossweightd">-->
  143. <!-- <el-input v-model="form.fGrossweightd" placeholder="请输入入库毛重" />-->
  144. <!-- </el-form-item>-->
  145. <!-- <el-form-item label="入库净重" prop="fNetweightd">-->
  146. <!-- <el-input v-model="form.fNetweightd" placeholder="请输入入库净重" />-->
  147. <!-- </el-form-item>-->
  148. <!-- <el-form-item label="出口尺码" prop="fVolumnc">-->
  149. <!-- <el-input v-model="form.fVolumnc" placeholder="请输入出口尺码" />-->
  150. <!-- </el-form-item>-->
  151. <!-- <el-form-item label="出库件数" prop="fQtyc">-->
  152. <!-- <el-input v-model="form.fQtyc" placeholder="请输入出库件数" />-->
  153. <!-- </el-form-item>-->
  154. <!-- <el-form-item label="结余件数" prop="fQtyblc">-->
  155. <!-- <el-input v-model="form.fQtyblc" placeholder="请输入结余件数" />-->
  156. <!-- </el-form-item>-->
  157. <!-- <el-form-item label="出库毛重,单位为吨" prop="fGrossweightc">-->
  158. <!-- <el-input v-model="form.fGrossweightc" placeholder="请输入出库毛重,单位为吨" />-->
  159. <!-- </el-form-item>-->
  160. <!-- <el-form-item label="出库净重" prop="fNetweightc">-->
  161. <!-- <el-input v-model="form.fNetweightc" placeholder="请输入出库净重" />-->
  162. <!-- </el-form-item>-->
  163. <!-- <el-form-item label="结余毛重" prop="fGrossweightblc">-->
  164. <!-- <el-input v-model="form.fGrossweightblc" placeholder="请输入结余毛重" />-->
  165. <!-- </el-form-item>-->
  166. <!-- <el-form-item label="结余净重" prop="fNetweightblc">-->
  167. <!-- <el-input v-model="form.fNetweightblc" placeholder="请输入结余净重" />-->
  168. <!-- </el-form-item>-->
  169. <!-- <el-form-item label="箱号" prop="fCntrno">-->
  170. <!-- <el-input v-model="form.fCntrno" placeholder="请输入箱号" />-->
  171. <!-- </el-form-item>-->
  172. <!-- <el-form-item label="状态,默认 T ,正常T 停用F 下拉选择">-->
  173. <!-- <el-radio-group v-model="form.fStatus">-->
  174. <!-- <el-radio label="1">请选择字典生成</el-radio>-->
  175. <!-- </el-radio-group>-->
  176. <!-- </el-form-item>-->
  177. <!-- <el-form-item label="删除状态" prop="delFlag">-->
  178. <!-- <el-input v-model="form.delFlag" placeholder="请输入删除状态" />-->
  179. <!-- </el-form-item>-->
  180. <!-- <el-form-item label="唛头" prop="fMarks">-->
  181. <!-- <el-input v-model="form.fMarks" placeholder="请输入唛头" />-->
  182. <!-- </el-form-item>-->
  183. <!-- <el-form-item label="备注" prop="remark">-->
  184. <!-- <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />-->
  185. <!-- </el-form-item>-->
  186. <!-- </el-form>-->
  187. <!-- <div slot="footer" class="dialog-footer">-->
  188. <!-- <el-button type="primary" @click="submitForm">确 定</el-button>-->
  189. <!-- <el-button @click="cancel">取 消</el-button>-->
  190. <!-- </div>-->
  191. <!-- </el-dialog>-->
  192. </div>
  193. </template>
  194. <script>
  195. import {
  196. listpayable,
  197. addWhgenleg,
  198. updateWhgenleg,
  199. exportWhgenleg,
  200. selectCrDetail,
  201. exportCrDetail
  202. } from "@/api/reportManagement/payable";
  203. import { listWarehouse } from "@/api/basicdata/warehouse";
  204. import { listArea } from "@/api/basicdata/area";
  205. import { listGoods } from "@/api/basicdata/goods";
  206. import { listCorps } from "@/api/basicdata/corps";
  207. import { addSet, select, resetModule } from "@/api/system/set";
  208. import Cookies from "js-cookie";
  209. import draggable from "vuedraggable";
  210. export default {
  211. name: "generalLedgerCr",
  212. components: {},
  213. data() {
  214. return {
  215. pickerOptions: {
  216. shortcuts: [{
  217. text: '最近一周',
  218. onClick(picker) {
  219. const end = new Date();
  220. const start = new Date();
  221. start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
  222. picker.$emit('pick', [start, end]);
  223. }
  224. }, {
  225. text: '最近一个月',
  226. onClick(picker) {
  227. const end = new Date();
  228. const start = new Date();
  229. start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
  230. picker.$emit('pick', [start, end]);
  231. }
  232. }, {
  233. text: '最近三个月',
  234. onClick(picker) {
  235. const end = new Date();
  236. const start = new Date();
  237. start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
  238. picker.$emit('pick', [start, end]);
  239. }
  240. }]
  241. },
  242. tableHeight: '0',
  243. payableList: [],
  244. // 货权方(客户数据)
  245. fMblnoOptions: [],
  246. // 贸易方式(数据字典),对应t_trademodels 字典
  247. fTrademodeidOptions: [],
  248. // 货物
  249. goodsOptions: [],
  250. // 仓库(仓库数据)
  251. warehouseOptions: [],
  252. kqhouseOptions: [],
  253. // 遮罩层
  254. loading: true,
  255. // 显示搜索条件
  256. showSearch: true,
  257. // 总条数
  258. total: 0,
  259. // 库存总账表格数据
  260. receivableList: [],
  261. // 弹出层标题
  262. title: "",
  263. // 是否显示弹出层
  264. open: false,
  265. // 查询参数
  266. queryParams: {
  267. pageNum: 1,
  268. pageSize: 50,
  269. fCorpid: null,
  270. fMblno: null,
  271. timeExamine: null,
  272. fToCorpid: null,
  273. fProductName: null,
  274. fMarks: null,
  275. fReconciliation: null,
  276. fBillstatus: null,
  277. },
  278. // 表单参数
  279. form: {},
  280. // 表单校验
  281. rules: {
  282. fMarks: [{ required: true, message: "唛头不能为空", trigger: "blur" }],
  283. },
  284. showSetting: false,
  285. drag: false,
  286. setRowList: [],
  287. getRowList: [],
  288. tableDate: [
  289. {
  290. surface: "2",
  291. label: "ffeesName",
  292. name: "结算单位",
  293. checked: 0,
  294. width: 130,
  295. },
  296. {
  297. surface: "3",
  298. label: "fmblno",
  299. name: "提单号",
  300. checked: 0,
  301. width: 130,
  302. },
  303. {
  304. surface: "4",
  305. label: "fproductName",
  306. name: "货物名称",
  307. checked: 0,
  308. width: 130,
  309. },
  310. {
  311. surface: "5",
  312. label: "fmarks",
  313. name: "品牌",
  314. checked: 0,
  315. width: 130,
  316. },
  317. {
  318. surface: "5",
  319. label: "fBilltype",
  320. name: "业务类型",
  321. checked: 0,
  322. width: 130,
  323. },
  324. {
  325. surface: "6",
  326. label: "fReviewDate",
  327. name: "审核日期",
  328. checked: 0,
  329. width: 130,
  330. },
  331. {
  332. surface: "6",
  333. label: "storageFee",
  334. name: "仓储费金额",
  335. checked: 0,
  336. width: 130,
  337. },
  338. {
  339. surface: "6",
  340. label: "otherFee",
  341. name: "其他金额",
  342. checked: 0,
  343. width: 130,
  344. },
  345. {
  346. surface: "7",
  347. label: "famount",
  348. name: "应付金额",
  349. checked: 0,
  350. width: 130,
  351. },
  352. {
  353. surface: "8",
  354. label: "fstlamount",
  355. name: "实付金额",
  356. checked: 0,
  357. width: 130,
  358. },
  359. {
  360. surface: "9",
  361. label: "nnfinished",
  362. name: "未付金额",
  363. checked: 0,
  364. width: 130,
  365. }
  366. ],
  367. allCheck: false,
  368. };
  369. },
  370. created() {
  371. this.setRowList = this.tableDate;
  372. this.getRowList = this.tableDate;
  373. // this.getList();
  374. this.getDicts("data_trademodes").then((response) => {
  375. this.fTrademodeidOptions = response.data;
  376. });
  377. this.getRow();
  378. },
  379. activated() {
  380. if (this.$route.query) {
  381. this.getList()
  382. }
  383. },
  384. mounted() {
  385. this.$nextTick(() => {
  386. // 监听浏览器高度变化,改变表格高度
  387. window.onresize = () => {
  388. this.tableHeight = window.innerHeight - this.$refs.table.$el.offsetTop - 70
  389. }
  390. })
  391. },
  392. methods: {
  393. //列设置全选
  394. allChecked() {
  395. if (this.allCheck == true) {
  396. this.setRowList.map((e) => {
  397. return (e.checked = 0);
  398. });
  399. } else {
  400. this.setRowList.map((e) => {
  401. return (e.checked = 1);
  402. });
  403. }
  404. },
  405. //查询列数据
  406. getRow() {
  407. let that = this;
  408. this.data = {
  409. tableName: "应付总账",
  410. userId: Cookies.get("userName"),
  411. };
  412. select(this.data).then((res) => {
  413. if (res.data.length != 0) {
  414. this.getRowList = res.data.filter((e) => e.checked == 0);
  415. this.setRowList = res.data;
  416. this.setRowList = this.setRowList.reduce((res, item) => {
  417. res.push({
  418. surface: item.surface,
  419. label: item.label,
  420. name: item.name,
  421. checked: item.checked,
  422. width: item.width,
  423. fixed: item.fixed,
  424. });
  425. return res;
  426. }, []);
  427. }
  428. });
  429. },
  430. delRow() {
  431. this.data = {
  432. tableName: "应付总账",
  433. userId: Cookies.get("userName"),
  434. };
  435. resetModule(this.data).then((res) => {
  436. if (res.code == 200) {
  437. this.showSetting = false;
  438. this.setRowList = this.tableDate;
  439. this.getRowList = this.tableDate;
  440. }
  441. });
  442. },
  443. //保存列设置
  444. save() {
  445. this.showSetting = false;
  446. this.data = {
  447. tableName: "应付总账",
  448. userId: Cookies.get("userName"),
  449. sysTableSetList: this.setRowList,
  450. };
  451. addSet(this.data).then((res) => {
  452. if (res.code == 200) {
  453. this.showSetting = false;
  454. this.getRowList = this.setRowList.filter((e) => e.checked == 0);
  455. }
  456. });
  457. },
  458. //开始拖拽事件
  459. onStart() {
  460. this.drag = true;
  461. },
  462. //拖拽结束事件
  463. onEnd() {
  464. this.drag = false;
  465. },
  466. //合计
  467. getSum(param) {
  468. const { columns, data } = param;
  469. const sums = [];
  470. columns.forEach((column, index) => {
  471. if (index === 0) {
  472. sums[index] = "合计";
  473. } else if (index === 6 || index === 7 || index === 8 || index === 9 || index === 10 || index === 11) {
  474. const values = data.map((item) => Number(item[column.property]));
  475. if (!values.every((value) => isNaN(value))) {
  476. sums[index] = values.reduce((prev, curr) => {
  477. const value = Number(curr);
  478. if (!isNaN(value)) {
  479. return prev + curr;
  480. } else {
  481. return prev;
  482. }
  483. }, 0);
  484. }
  485. }
  486. });
  487. return sums;
  488. },
  489. // 贸易方式(数据字典),对���t_trademodels 字典翻译
  490. fTrademodeidFormat(row, column) {
  491. return this.selectDictLabel(this.fTrademodeidOptions, row.fTrademodeid);
  492. },
  493. /* 远程模糊查询仓库 */
  494. warehouseRemoteMethod(name) {
  495. if (name == null || name === "") {
  496. return false;
  497. }
  498. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  499. listWarehouse(queryParams).then((response) => {
  500. this.warehouseOptions = response.rows;
  501. });
  502. },
  503. /* 远程模糊查询库区 */
  504. kqhouseRemoteMethod(name) {
  505. if (name == null || name === "") {
  506. return false;
  507. }
  508. if (!this.queryParams.fWarehouseid) {
  509. this.$message.error("请输入仓库!");
  510. return false;
  511. }
  512. let queryParams = {
  513. pageNum: 1,
  514. pageSize: 10,
  515. fWarehouseid: this.queryParams.fWarehouseid,
  516. fName: name,
  517. };
  518. listArea(queryParams).then((response) => {
  519. this.kqhouseOptions = response.rows;
  520. });
  521. },
  522. /* 远程模糊查询商品 */
  523. goodsRemoteMethod(name) {
  524. if (name == null || name === "") {
  525. return false;
  526. }
  527. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  528. listGoods(queryParams).then((response) => {
  529. this.goodsOptions = response.rows;
  530. });
  531. },
  532. /* 远程模糊查询用户 */
  533. corpsRemoteMethod(name) {
  534. if (name == null || name === "") {
  535. return false;
  536. }
  537. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  538. listCorps(queryParams).then((response) => {
  539. this.fMblnoOptions = response.rows;
  540. this.KHblnoOptions = response.rows;
  541. });
  542. },
  543. /** 查询库存总账列表 */
  544. getList() {
  545. this.loading = true;
  546. this.getDicts("approval_process").then((response) => {
  547. this.options = response.data;
  548. });
  549. selectCrDetail(this.$route.query).then((response) => {
  550. this.payableList = response.data;
  551. this.total = response.total;
  552. this.loading = false;
  553. // 根据浏览器高度设置初始高度
  554. setTimeout(() => {
  555. this.tableHeight = window.innerHeight - this.$refs.table.$el.offsetTop - 70
  556. }, 300)
  557. });
  558. },
  559. // 取消按钮
  560. cancel() {
  561. this.open = false;
  562. this.reset();
  563. },
  564. // 表单重置
  565. reset() {
  566. this.form = {
  567. fAccyear: null,
  568. fId: null,
  569. fAccmonth: null,
  570. fCorpid: null,
  571. fMblno: null,
  572. fOriginalbillno: null,
  573. fWarehouseLocationid: null,
  574. fGoodsid: null,
  575. fTrademodeid: null,
  576. fPreqty: null,
  577. fPregrossweight: null,
  578. fPrenetweight: null,
  579. fQtyd: null,
  580. fVolumnd: null,
  581. fGrossweightd: null,
  582. fNetweightd: null,
  583. fVolumnc: null,
  584. fQtyc: null,
  585. fQtyblc: null,
  586. fGrossweightc: null,
  587. fNetweightc: null,
  588. fGrossweightblc: null,
  589. fNetweightblc: null,
  590. fCntrno: null,
  591. fStatus: "0",
  592. delFlag: null,
  593. createBy: null,
  594. fMarks: null,
  595. createTime: null,
  596. updateBy: null,
  597. updateTime: null,
  598. remark: null,
  599. };
  600. this.resetForm("form");
  601. },
  602. /** 搜索按钮操作 */
  603. handleQuery() {
  604. this.queryParams.pageNum = 1;
  605. this.getList();
  606. },
  607. /** 重置按钮操作 */
  608. resetQuery() {
  609. // this.resetForm("queryForm");
  610. this.resetQueryParams()
  611. this.handleQuery();
  612. },
  613. // 搜索重置
  614. resetQueryParams() {
  615. this.queryParams = {
  616. pageNum: 1,
  617. pageSize: 50,
  618. fCorpid: null,
  619. fMblno: null,
  620. timeExamine: null,
  621. fToCorpid: null,
  622. fProductName: null,
  623. fMarks: null,
  624. fReconciliation: null,
  625. fBillstatus: null,
  626. }
  627. },
  628. /** 新增按钮操作 */
  629. handleAdd() {
  630. this.reset();
  631. this.open = true;
  632. this.title = "添加库存总账";
  633. },
  634. /** 提交按钮 */
  635. submitForm() {
  636. this.$refs["form"].validate((valid) => {
  637. if (valid) {
  638. if (this.form.fAccyear != null) {
  639. updateWhgenleg(this.form).then((response) => {
  640. this.msgSuccess("修改成功");
  641. this.open = false;
  642. this.getList();
  643. });
  644. } else {
  645. addWhgenleg(this.form).then((response) => {
  646. this.msgSuccess("新增成功");
  647. this.open = false;
  648. this.getList();
  649. });
  650. }
  651. }
  652. });
  653. },
  654. /** 导出按钮操作 */
  655. handleExport() {
  656. // const queryParams = this.queryParams;
  657. const queryParams = this.$route.query;
  658. this.$confirm("是否确认导出所有应付总账数据项?", "警告", {
  659. confirmButtonText: "确定",
  660. cancelButtonText: "取消",
  661. type: "warning",
  662. })
  663. .then(function () {
  664. return exportCrDetail(queryParams);
  665. })
  666. .then((response) => {
  667. this.download(response.msg);
  668. });
  669. },
  670. // 去页面
  671. goPage(row) {
  672. console.log(row)
  673. switch (row.fBilltype) {
  674. case "入库": {
  675. this.$router.push({
  676. path: "/business/inStock",
  677. query: { id: row.fsrcpid },
  678. });
  679. break;
  680. }
  681. case "出库": {
  682. this.$router.push({
  683. path: "/business/outStock",
  684. query: { id: row.fsrcpid },
  685. });
  686. break;
  687. }
  688. case "调拨": {
  689. this.$router.push({
  690. path: "/business/stockTransfer",
  691. query: { id: row.fsrcpid },
  692. });
  693. break;
  694. }
  695. case "货权转移": {
  696. this.$router.push({
  697. path: "/business/stockTransfer",
  698. query: { id: row.fsrcpid },
  699. });
  700. break;
  701. }
  702. case "货物通关": {
  703. this.$router.push({
  704. path: "/business/cargoClearance",
  705. });
  706. break;
  707. }
  708. case "其他账务": {
  709. this.$router.push({
  710. path: "/finance/otherFinancial",
  711. query: { id: row.fsrcpid },
  712. });
  713. break;
  714. }
  715. case "场地直装": {
  716. this.$router.push({
  717. path: "/business/inAndOutStock",
  718. query: { id: row.fsrcpid },
  719. });
  720. break;
  721. }
  722. default: {
  723. return this.$message.error("未知错误,无状态");
  724. }
  725. }
  726. },
  727. },
  728. };
  729. </script>
  730. <style lang="scss">
  731. .tabSetting {
  732. display: flex;
  733. justify-content: flex-end;
  734. }
  735. .listStyle {
  736. display: flex;
  737. border-top: 1px solid #dcdfe6;
  738. border-left: 1px solid #dcdfe6;
  739. border-right: 1px solid #dcdfe6;
  740. }
  741. .listStyle:last-child {
  742. border-bottom: 1px solid #dcdfe6;
  743. }
  744. .progress {
  745. display: flex;
  746. align-items: center;
  747. padding: 2px;
  748. background-color: rgba(0, 0, 0, 0.05);
  749. height: 100%;
  750. }
  751. </style>