bbc6f6e7cff955d23a1a6233733e9194.json 18 KB

1
  1. {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\finance\\userExtract\\index.vue?vue&type=style&index=0&id=317ab0f0&lang=scss&scoped=true","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\finance\\userExtract\\index.vue","mtime":1761614939018},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\css-loader\\index.js","mtime":1761614929364},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":1761614937403},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\postcss-loader\\src\\index.js","mtime":1761614935133},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\sass-loader\\dist\\cjs.js","mtime":1761614936391},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1761614937402}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQouaXZ1LW10IC50eXBlIC5pdGVtIHsNCiAgbWFyZ2luOiAzcHggMDsNCn0NCi50YWJmb3JtIHsNCiAgbWFyZ2luLWJvdHRvbTogMTBweDsNCn0NCi5SZWZyZXNoIHsNCiAgZm9udC1zaXplOiAxMnB4Ow0KICBjb2xvcjogdmFyKC0tcHJldi1jb2xvci1wcmltYXJ5KTsNCiAgY3Vyc29yOiBwb2ludGVyOw0KfQ0KLml2dS1mb3JtLWl0ZW0gew0KICBtYXJnaW4tYm90dG9tOiAxMHB4Ow0KfQ0KLnN0YXR1cyA6OnYtZGVlcCAuaXRlbSB+IC5pdGVtIHsNCiAgbWFyZ2luLWxlZnQ6IDZweDsNCn0NCi5zdGF0dXMgOjp2LWRlZXAgLnN0YXR1c1ZhbCB7DQogIG1hcmdpbi1ib3R0b206IDdweDsNCn0NCi8qLml2dS1tdCA6OnYtZGVlcCAuaXZ1LXRhYmxlLWhlYWRlciovDQovKiAgICBib3JkZXItdG9wOjFweCBkYXNoZWQgI2RkZCFpbXBvcnRhbnQqLw0KLnR5cGUgew0KICBwYWRkaW5nOiAzcHggMDsNCiAgYm94LXNpemluZzogYm9yZGVyLWJveDsNCn0NCi50YWJCb3hfaW1nIHsNCiAgd2lkdGg6IDM2cHg7DQogIGhlaWdodDogMzZweDsNCiAgYm9yZGVyLXJhZGl1czogNHB4Ow0KICBjdXJzb3I6IHBvaW50ZXI7DQogIGltZyB7DQogICAgd2lkdGg6IDEwMCU7DQogICAgaGVpZ2h0OiAxMDAlOw0KICB9DQp9DQouei1wcmljZSB7DQogIGNvbG9yOiByZWQ7DQp9DQouZi1wcmljZSB7DQogIGNvbG9yOiBncmVlbjsNCn0NCg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AAgaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/pages/finance/userExtract","sourcesContent":["<template>\r\n <div>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mb-16\" :body-style=\"{ padding: 0 }\">\r\n <div class=\"padding-add\">\r\n <el-form\r\n ref=\"formValidate\"\r\n :model=\"formValidate\"\r\n :label-width=\"labelWidth\"\r\n label-position=\"right\"\r\n inline\r\n @submit.native.prevent\r\n >\r\n <el-form-item label=\"时间选择:\">\r\n <el-date-picker\r\n clearable\r\n v-model=\"timeVal\"\r\n type=\"daterange\"\r\n :editable=\"false\"\r\n @change=\"onchangeTime\"\r\n format=\"yyyy/MM/dd\"\r\n value-format=\"yyyy/MM/dd\"\r\n start-placeholder=\"开始日期\"\r\n end-placeholder=\"结束日期\"\r\n :picker-options=\"pickerOptions\"\r\n style=\"width: 250px\"\r\n class=\"mr20\"\r\n ></el-date-picker>\r\n </el-form-item>\r\n <el-form-item label=\"提现状态:\">\r\n <el-select\r\n clearable\r\n v-model=\"formValidate.status\"\r\n placeholder=\"请选择状态\"\r\n @change=\"selChange\"\r\n class=\"form_content_width\"\r\n >\r\n <el-option\r\n v-for=\"(item, index) in treeData.withdrawal\"\r\n :key=\"index\"\r\n :value=\"item.value\"\r\n :label=\"item.title\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"提现方式:\">\r\n <el-select\r\n clearable\r\n v-model=\"formValidate.extract_type\"\r\n placeholder=\"请选择状态\"\r\n @change=\"selChange\"\r\n class=\"form_content_width\"\r\n >\r\n <el-option\r\n v-for=\"(item, index) in treeData.payment\"\r\n :key=\"index\"\r\n :value=\"item.value\"\r\n :label=\"item.title\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"搜索:\">\r\n <el-input\r\n clearable\r\n placeholder=\"微信昵称/姓名/支付宝账号/银行卡号\"\r\n v-model=\"formValidate.nireid\"\r\n class=\"form_content_width\"\r\n />\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button type=\"primary\" v-db-click @click=\"selChange\">查询</el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n </el-card>\r\n <cards-data :cardLists=\"cardLists\" v-if=\"extractStatistics\"></cards-data>\r\n <el-card :bordered=\"false\" shadow=\"never\">\r\n <router-link :to=\"$routeProStr + '/finance/finance/commission'\">\r\n <el-button type=\"primary\">佣金记录</el-button>\r\n </router-link>\r\n <el-table ref=\"table\" :data=\"tabList\" v-loading=\"loading\" empty-text=\"暂无数据\" class=\"mt14\">\r\n <el-table-column label=\"ID\" width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.id }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"用户信息\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <div>\r\n 用户昵称: {{ scope.row.nickname }} <br />\r\n 用户id:{{ scope.row.uid }}\r\n </div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"提现金额\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <div>{{ scope.row.extract_price }}</div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"提现手续费\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <div>{{ scope.row.extract_fee }}</div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"到账金额\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"f-price\">{{ scope.row.receive_price }}</div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"提现方式\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"type\" v-if=\"scope.row.extract_type === 'bank'\">\r\n <div class=\"item\">姓名:{{ scope.row.real_name }}</div>\r\n <div class=\"item\">银行卡号:{{ scope.row.bank_code }}</div>\r\n <div class=\"item\">银行开户地址:{{ scope.row.bank_address }}</div>\r\n </div>\r\n <div class=\"type\" v-if=\"scope.row.extract_type === 'weixin'\">\r\n <div class=\"item\">昵称:{{ scope.row.nickname }}</div>\r\n <div class=\"item\">微信号:{{ scope.row.wechat }}</div>\r\n </div>\r\n <div class=\"type\" v-if=\"scope.row.extract_type === 'alipay'\">\r\n <div class=\"item\">姓名:{{ scope.row.real_name }}</div>\r\n <div class=\"item\">支付宝号:{{ scope.row.alipay_code }}</div>\r\n </div>\r\n <div class=\"type\" v-if=\"scope.row.extract_type === 'balance'\">\r\n <div class=\"item\">姓名:{{ scope.row.real_name }}</div>\r\n <div class=\"item\">提现方式:佣金转入余额</div>\r\n </div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"收款码\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <div\r\n class=\"tabBox_img\"\r\n v-viewer\r\n v-if=\"scope.row.extract_type === 'weixin' || scope.row.extract_type === 'alipay'\"\r\n >\r\n <img v-lazy=\"scope.row.qrcode_url\" />\r\n </div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"申请时间\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.add_time | formatDate }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"备注\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.mark }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"审核状态\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"status\" v-if=\"scope.row.status === 0\">\r\n <div class=\"statusVal\">申请中</div>\r\n <div></div>\r\n </div>\r\n <div class=\"statusVal\" v-if=\"scope.row.status === 1\">提现通过</div>\r\n <div class=\"statusVal\" v-if=\"scope.row.status === -1\">\r\n 提现未通过<br />未通过原因:{{ scope.row.fail_msg }}\r\n </div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" fixed=\"right\" width=\"170\">\r\n <template slot-scope=\"scope\" v-if=\"scope.row.status == 0\">\r\n <a href=\"javascript:void(0);\" v-db-click @click=\"edit(scope.row)\">编辑</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a class=\"item\" v-db-click @click=\"adopt(scope.row, '审核通过', index)\">通过</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a class=\"item\" v-db-click @click=\"invalid(scope.row)\">驳回</a>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"acea-row row-right page\">\r\n <pagination\r\n v-if=\"total\"\r\n :total=\"total\"\r\n :page.sync=\"formValidate.page\"\r\n :limit.sync=\"formValidate.limit\"\r\n @pagination=\"getList\"\r\n />\r\n </div>\r\n </el-card>\r\n\r\n <!-- 编辑表单-->\r\n <edit-from ref=\"edits\" :FromData=\"FromData\" @submitFail=\"submitFail\"></edit-from>\r\n <!-- 拒绝通过-->\r\n <el-dialog :visible.sync=\"modals\" title=\"未通过原因\" :close-on-click-modal=\"false\" width=\"540px\">\r\n <el-input v-model=\"fail_msg.message\" type=\"textarea\" :rows=\"4\" placeholder=\"请输入未通过原因\" />\r\n <div slot=\"footer\">\r\n <el-button type=\"primary\" size=\"small\" v-db-click @click=\"oks\">确定</el-button>\r\n </div>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n<script>\r\nimport cardsData from '@/components/cards/cards';\r\nimport searchFrom from '@/components/publicSearchFrom';\r\nimport { mapState } from 'vuex';\r\nimport { cashListApi, cashEditApi, refuseApi } from '@/api/finance';\r\nimport { formatDate } from '@/utils/validate';\r\nimport editFrom from '@/components/from/from';\r\nexport default {\r\n name: 'cashApply',\r\n components: { cardsData, searchFrom, editFrom },\r\n filters: {\r\n formatDate(time) {\r\n if (time !== 0) {\r\n let date = new Date(time * 1000);\r\n return formatDate(date, 'yyyy-MM-dd hh:mm');\r\n }\r\n },\r\n },\r\n data() {\r\n return {\r\n images: ['1.jpg', '2.jpg'],\r\n modal_loading: false,\r\n fail_msg: {\r\n message: '输入信息不完整或有误!',\r\n },\r\n modals: false,\r\n total: 0,\r\n cardLists: [],\r\n loading: false,\r\n tabList: [],\r\n pickerOptions: this.$timeOptions,\r\n treeData: {\r\n withdrawal: [\r\n {\r\n title: '全部',\r\n value: '',\r\n },\r\n {\r\n title: '未通过',\r\n value: -1,\r\n },\r\n {\r\n title: '申请中',\r\n value: 0,\r\n },\r\n {\r\n title: '已通过',\r\n value: 1,\r\n },\r\n ],\r\n payment: [\r\n {\r\n title: '全部',\r\n value: '',\r\n },\r\n {\r\n title: '微信',\r\n value: 'wx',\r\n },\r\n {\r\n title: '支付宝',\r\n value: 'alipay',\r\n },\r\n {\r\n title: '银行卡',\r\n value: 'bank',\r\n },\r\n ],\r\n },\r\n formValidate: {\r\n status: '',\r\n extract_type: '',\r\n nireid: '',\r\n data: '',\r\n page: 1,\r\n limit: 20,\r\n },\r\n extractStatistics: {},\r\n timeVal: [],\r\n FromData: null,\r\n extractId: 0,\r\n };\r\n },\r\n watch: {\r\n $route() {\r\n if (this.$route.fullPath === this.$routeProStr + '/finance/user_extract/index?status=0') {\r\n this.getPath();\r\n }\r\n },\r\n },\r\n computed: {\r\n ...mapState('media', ['isMobile']),\r\n labelWidth() {\r\n return this.isMobile ? undefined : '80px';\r\n },\r\n labelPosition() {\r\n return this.isMobile ? 'top' : 'right';\r\n },\r\n },\r\n mounted() {\r\n if (this.$route.fullPath === this.$routeProStr + '/finance/user_extract/index?status=0') {\r\n this.getPath();\r\n } else {\r\n this.getList();\r\n }\r\n },\r\n methods: {\r\n getPath() {\r\n this.formValidate.page = 1;\r\n this.formValidate.status = parseInt(this.$route.query.status);\r\n this.getList();\r\n },\r\n // 无效\r\n invalid(row) {\r\n this.extractId = row.id;\r\n this.modals = true;\r\n },\r\n // 确定\r\n oks() {\r\n this.modal_loading = true;\r\n refuseApi(this.extractId, this.fail_msg)\r\n .then(async (res) => {\r\n this.$message.success(res.msg);\r\n this.modal_loading = false;\r\n this.modals = false;\r\n this.getList();\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 通过\r\n adopt(row, tit, num) {\r\n let delfromData = {\r\n title: tit,\r\n num: num,\r\n url: `finance/extract/adopt/${row.id}`,\r\n method: 'put',\r\n ids: '',\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n this.getList();\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 具体日期\r\n onchangeTime(e) {\r\n this.timeVal = e;\r\n this.formValidate.data = this.timeVal ? this.timeVal.join('-') : '';\r\n this.formValidate.page = 1;\r\n this.getList();\r\n },\r\n // 选择时间\r\n selectChange(tab) {\r\n this.formValidate.page = 1;\r\n this.formValidate.data = tab;\r\n this.timeVal = [];\r\n this.getList();\r\n },\r\n // 选择\r\n selChange() {\r\n this.formValidate.page = 1;\r\n this.getList();\r\n },\r\n // 列表\r\n getList() {\r\n this.loading = true;\r\n cashListApi(this.formValidate)\r\n .then(async (res) => {\r\n let data = res.data;\r\n this.tabList = data.list.list;\r\n this.total = data.list.count;\r\n this.extractStatistics = data.extract_statistics;\r\n this.cardLists = [\r\n {\r\n col: 6,\r\n count: this.extractStatistics.brokerage_count,\r\n name: '佣金总金额',\r\n className: 'iconyuezhifujine',\r\n },\r\n { col: 6, count: this.extractStatistics.price, name: '待提现金额', className: 'iconfufeihuiyuanjine' },\r\n { col: 6, count: this.extractStatistics.priced, name: '已提现金额', className: 'iconzhifuyongjinjine' },\r\n {\r\n col: 6,\r\n count: this.extractStatistics.brokerage_not,\r\n name: '未提现金额',\r\n className: 'iconshangpintuikuanjine',\r\n },\r\n ];\r\n this.loading = false;\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 编辑\r\n edit(row) {\r\n cashEditApi(row.id)\r\n .then(async (res) => {\r\n if (res.data.status === false) {\r\n return this.$authLapse(res.data);\r\n }\r\n this.FromData = res.data;\r\n this.$refs.edits.modals = true;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 编辑提交成功\r\n submitFail() {\r\n // this.getList();\r\n },\r\n },\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.ivu-mt .type .item {\r\n margin: 3px 0;\r\n}\r\n.tabform {\r\n margin-bottom: 10px;\r\n}\r\n.Refresh {\r\n font-size: 12px;\r\n color: var(--prev-color-primary);\r\n cursor: pointer;\r\n}\r\n.ivu-form-item {\r\n margin-bottom: 10px;\r\n}\r\n.status ::v-deep .item ~ .item {\r\n margin-left: 6px;\r\n}\r\n.status ::v-deep .statusVal {\r\n margin-bottom: 7px;\r\n}\r\n/*.ivu-mt ::v-deep .ivu-table-header*/\r\n/* border-top:1px dashed #ddd!important*/\r\n.type {\r\n padding: 3px 0;\r\n box-sizing: border-box;\r\n}\r\n.tabBox_img {\r\n width: 36px;\r\n height: 36px;\r\n border-radius: 4px;\r\n cursor: pointer;\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n.z-price {\r\n color: red;\r\n}\r\n.f-price {\r\n color: green;\r\n}\r\n</style>\r\n"]}]}