update
This commit is contained in:
parent
f3ff6b4c44
commit
8b390bdcf4
@ -225,6 +225,31 @@ async function getFieldEnumByField(params) {
|
||||
|
||||
}
|
||||
|
||||
// 不四舍五入 保留两位小数的金额化方法
|
||||
function getMoney(money){
|
||||
if (!money || isNaN(money)) return "0.00";
|
||||
let num = parseFloat(money + '') + '';
|
||||
num = parseInt(money * 100 + '') / 100 + ''
|
||||
|
||||
let reg = /(-?\d+)(\d{3})/;
|
||||
while (reg.test(num)) {
|
||||
num = num.replace(reg, "$1,$2");
|
||||
}
|
||||
|
||||
let idx = num.indexOf('.')
|
||||
if (idx === -1) {
|
||||
num = num + '.00'
|
||||
}
|
||||
|
||||
if (idx > 0) {
|
||||
let num_per = num.substring(0, idx) + '.'
|
||||
let num_next = num.substring(idx + 1).padEnd(2, '0')
|
||||
num = num_per + num_next
|
||||
}
|
||||
|
||||
return num;
|
||||
}
|
||||
|
||||
// 视频播放
|
||||
const EZUIPlayer = require('./ezuikit.js');
|
||||
|
||||
@ -240,6 +265,7 @@ export default {
|
||||
toNextRoute,
|
||||
addUserBehavior,
|
||||
addUserBehaviorNew,
|
||||
getMoney,
|
||||
getFieldEnumByField, // 获取枚举参数
|
||||
// calculateDistance,
|
||||
// bMapToQQMap,
|
||||
|
||||
@ -1,112 +1,116 @@
|
||||
<template>
|
||||
<view @touchmove.prevent >
|
||||
<view class="uni-mask" v-show="show" :style="{top:offsetTop + 'px'}" @click="hide" @touchmove.prevent></view>
|
||||
<view :class="['uni-popup','uni-popup-'+type,round?'round':'' ]" v-show="show">
|
||||
<view class="header-top" v-if="msg!=''">{{msg}}</view>
|
||||
<slot></slot>
|
||||
</view>
|
||||
</view>
|
||||
<view @touchmove.prevent style="padding-bottom: 0" >
|
||||
<view class="uni-mask" v-show="show" :style="{top:offsetTop + 'px',zIndex:998+showIndex}" @click="hide" @touchmove.prevent ></view>
|
||||
<view :class="['uni-popup','uni-popup-'+type,round?'round':'' ]" :style="{zIndex:999+showIndex}" v-show="show">
|
||||
<view class="header-top" v-if="msg!=''">{{msg}}</view>
|
||||
<slot></slot>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
show: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
type: {
|
||||
type: String,
|
||||
//top - 顶部, middle - 居中, bottom - 底部
|
||||
default: 'middle'
|
||||
},
|
||||
msg: {
|
||||
type: String,
|
||||
default: ""
|
||||
},
|
||||
round: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
let offsetTop = 0;
|
||||
export default {
|
||||
props: {
|
||||
show: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
type: {
|
||||
type: String,
|
||||
//top - 顶部, middle - 居中, bottom - 底部
|
||||
default: 'middle'
|
||||
},
|
||||
msg: {
|
||||
type: String,
|
||||
default: ""
|
||||
},
|
||||
round: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
showIndex:{
|
||||
type: Number,
|
||||
default: 0
|
||||
}
|
||||
},
|
||||
data() {
|
||||
let offsetTop = 0;
|
||||
|
||||
return {
|
||||
offsetTop: offsetTop
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
hide: function() {
|
||||
this.$emit('hidePopup');
|
||||
},
|
||||
return {
|
||||
offsetTop: offsetTop
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
hide: function() {
|
||||
this.$emit('hidePopup');
|
||||
},
|
||||
|
||||
doNotMove: function () {
|
||||
console.log('stop user scroll it!');
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
doNotMove: function () {
|
||||
console.log('stop user scroll it!');
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
.uni-mask {
|
||||
position: fixed;
|
||||
z-index: 998;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
background-color: rgba(0, 0, 0, .6);
|
||||
height: 100%;
|
||||
}
|
||||
.round {
|
||||
border-radius: 24rpx 24rpx 0 0;
|
||||
}
|
||||
.uni-popup {
|
||||
position: fixed;
|
||||
z-index: 999;
|
||||
background-color: #ffffff;
|
||||
box-shadow: 0 0 30upx rgba(0, 0, 0, .1);
|
||||
}
|
||||
.header-top {
|
||||
background-color: #5393F7;
|
||||
color: #fff;
|
||||
width: 100%;
|
||||
/* margin-bottom: 20upx; */
|
||||
text-align: center;
|
||||
padding: 20upx 30upx;
|
||||
}
|
||||
.uni-popup-middle {
|
||||
/* overflow: hidden; */
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
min-width: 400upx;
|
||||
min-height: 100upx;
|
||||
border-radius: 16upx;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -60%);
|
||||
justify-content: center;
|
||||
padding: 0 30upx 30upx 30upx;
|
||||
}
|
||||
.uni-mask {
|
||||
position: fixed;
|
||||
z-index: 998;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
background-color: rgba(0, 0, 0, .6);
|
||||
height: 100%;
|
||||
}
|
||||
.round {
|
||||
border-radius: 24rpx 24rpx 0 0;
|
||||
}
|
||||
.uni-popup {
|
||||
position: fixed;
|
||||
z-index: 999;
|
||||
background-color: #ffffff;
|
||||
box-shadow: 0 0 30upx rgba(0, 0, 0, .1);
|
||||
}
|
||||
.header-top {
|
||||
background-color: #5393F7;
|
||||
color: #fff;
|
||||
width: 100%;
|
||||
/* margin-bottom: 20upx; */
|
||||
text-align: center;
|
||||
padding: 20upx 30upx;
|
||||
}
|
||||
.uni-popup-middle {
|
||||
/* overflow: hidden; */
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
min-width: 400upx;
|
||||
min-height: 100upx;
|
||||
border-radius: 16upx;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -60%);
|
||||
justify-content: center;
|
||||
padding: 0 30upx 30upx 30upx;
|
||||
}
|
||||
|
||||
.uni-popup-top {
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
min-height: 390upx;
|
||||
line-height: 100upx;
|
||||
text-align: center;
|
||||
height: auto;
|
||||
}
|
||||
.uni-popup-top {
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
min-height: 390upx;
|
||||
line-height: 100upx;
|
||||
text-align: center;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.uni-popup-bottom {
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
min-height: 400upx;
|
||||
line-height: 100upx;
|
||||
text-align: center;
|
||||
}
|
||||
.uni-popup-bottom {
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
min-height: 400upx;
|
||||
line-height: 100upx;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
|
||||
2
main.js
2
main.js
@ -1,6 +1,7 @@
|
||||
import Vue from 'vue'
|
||||
import App from './App'
|
||||
import Vuex from 'vuex'
|
||||
import moment from "moment";
|
||||
|
||||
import Store from './store/store'
|
||||
import request from './util/index.js'
|
||||
@ -13,6 +14,7 @@ Vue.config.productionTip = false
|
||||
Vue.prototype.$store = Store
|
||||
Vue.prototype.$util = utils
|
||||
Vue.prototype.$request = request
|
||||
Vue.prototype.$moment = moment
|
||||
|
||||
Vue.prototype.$eventHub = new Vue()
|
||||
|
||||
|
||||
@ -2,6 +2,10 @@
|
||||
"dependencies": {
|
||||
"@qiun/ucharts": "^2.5.0-20230101",
|
||||
"@qiun/wx-ucharts": "^2.5.0-20230101",
|
||||
"moment": "^2.30.1",
|
||||
"numeral": "^2.0.6",
|
||||
"sass": "^1.45.1",
|
||||
"sass-loader": "^10.3.1",
|
||||
"vuex-persistedstate": "^4.1.0"
|
||||
}
|
||||
}
|
||||
|
||||
34
pages.json
34
pages.json
@ -80,6 +80,40 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"root": "pages/settlementApproval",
|
||||
"pages": [
|
||||
{
|
||||
"path": "index",
|
||||
"style":
|
||||
{
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarTitleText": "结算审批"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "detail",
|
||||
"style":
|
||||
{
|
||||
"navigationBarTitleText": "结算审批"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "yearSettlement",
|
||||
"style":
|
||||
{
|
||||
"navigationBarTitleText": "年度结算"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "monthDetail",
|
||||
"style":
|
||||
{
|
||||
"navigationBarTitleText": "月度详情"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"root": "pages/operatingStatements",
|
||||
"pages": [
|
||||
|
||||
@ -38,7 +38,7 @@
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="base-info mt20" v-if="baseData.RejectApproved.length>0">
|
||||
<view class="base-info mt20" v-if="baseData.RejectApproved && baseData.RejectApproved.length>0">
|
||||
<div class="uni-list-cell uni-collapse">
|
||||
<div class="cat-box uni-list-cell-navigate">
|
||||
<b>驳回意见</b>
|
||||
@ -145,7 +145,7 @@
|
||||
</view>
|
||||
</view>
|
||||
<view class="pageList" v-if="showService">
|
||||
<div class="pageItem" v-for="(item,index) in serverShopList.DetailList" :key="index">
|
||||
<div class="pageItem" v-for="(item,index) in serverShopList.DetailList.slice(0,showPage*20)" :key="index">
|
||||
<div class="box">
|
||||
<view class="top">
|
||||
<text class="topTitle">{{item.COMMODITYTYPE_NAME}}</text>
|
||||
@ -178,6 +178,9 @@
|
||||
<!-- <text>折扣后:<text class="priceAfter">¥{{item.COMMODITY_PURCHASEPRICE}}</text></text>-->
|
||||
</div>
|
||||
</div>
|
||||
<view class="load-more" v-if="serverShopList.DetailList && serverShopList.DetailList.length>showPage*20">
|
||||
<text @click="handleGetMore">{{'点击加载更多'}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@ -277,7 +280,8 @@ export default {
|
||||
approveMessageList:[],
|
||||
showOptionBox:false,
|
||||
isback:'',
|
||||
PURCHASEDESC:''
|
||||
PURCHASEDESC:'',
|
||||
showPage:1,// 显示页数
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@ -288,6 +292,9 @@ export default {
|
||||
getYes(val) {
|
||||
return val === 1 ? '是 ' : '否'
|
||||
},
|
||||
handleGetMore(){
|
||||
this.showPage = this.showPage+1
|
||||
},
|
||||
handleChangeCardShow(){
|
||||
this.cardShow = !this.cardShow
|
||||
},
|
||||
@ -400,10 +407,13 @@ export default {
|
||||
// this.$util.toNextRoute('navigateTo', url)
|
||||
},
|
||||
handleChangeManager(){
|
||||
console.log('1')
|
||||
this.showManager = !this.showManager
|
||||
},
|
||||
handleChangeShowService(){
|
||||
this.showService = !this.showService
|
||||
console.log('2',this.serverShopList.DetailList)
|
||||
this.showService = !this.showService
|
||||
console.log('this.showService',this.showService)
|
||||
},
|
||||
getDetail(id) {
|
||||
let _this = this
|
||||
|
||||
@ -304,7 +304,7 @@
|
||||
//服务区列表
|
||||
getSeverpart() {
|
||||
const _this = this
|
||||
this.$request.$webGet('EShangApiMain/Logging/GetPassportInfoById', {
|
||||
this.$request.$webGet('EShangApiMain/Logging/GetPassportInfoById', {
|
||||
UserIdEncrypted: this.user.UserIdEncrypted
|
||||
}).then(res => {
|
||||
if (!res.Result_Code || res.Result_Code != '100') {
|
||||
|
||||
@ -1170,6 +1170,7 @@
|
||||
defaultMsg() {
|
||||
let option = null
|
||||
let _this = this
|
||||
console.log('this.PushAuthority',this.PushAuthority);
|
||||
if (this.PushAuthority && this.PushAuthority.length > 1) {
|
||||
|
||||
option = this.PushAuthority.find(n => n.ProvinceCode === _this.ProvinceCode)
|
||||
@ -1212,6 +1213,7 @@
|
||||
this.getTender()
|
||||
} else { // 默认
|
||||
if (this.PushAuthority.length > 0) {
|
||||
console.log(1);
|
||||
this.theRequest = this.defaultMsg() || {}
|
||||
if (toSnhuiPageProvinceCode.indexOf(this.theRequest.ProvinceCode)>-1) {
|
||||
uni.redirectTo({
|
||||
@ -1242,7 +1244,7 @@
|
||||
}
|
||||
},
|
||||
onShow() {
|
||||
if (this.theRequest.ProvinceCode != 340000 && this.theRequest.ProvinceCode != 520000 && this.theRequest
|
||||
if (this.theRequest && this.theRequest.ProvinceCode != 340000 && this.theRequest.ProvinceCode != 520000 && this.theRequest
|
||||
.ProvinceCode != 451200 && this.theRequest.ProvinceCode != 510000 && this.theRequest.ProvinceCode !=
|
||||
620000 && this.theRequest.ProvinceCode != 630000 && this.theRequest.ProvinceCode != 330200) {
|
||||
uni.setNavigationBarColor({
|
||||
|
||||
2430
pages/settlementApproval/detail.vue
Normal file
2430
pages/settlementApproval/detail.vue
Normal file
File diff suppressed because it is too large
Load Diff
609
pages/settlementApproval/index.vue
Normal file
609
pages/settlementApproval/index.vue
Normal file
@ -0,0 +1,609 @@
|
||||
<template>
|
||||
<scroll-view class="main">
|
||||
<view class="topBox">
|
||||
<view class="top">
|
||||
<picker :value="selectServiceId" :range="selectServiceList" @change="handleChangeService" range-key="label">
|
||||
<span class="service">{{ selectServiceList[selectIndex].label }}</span>
|
||||
</picker>
|
||||
<span class="time" @click="handleChangeSelect({id:3})">{{`${$moment(startDate).format('YYYY/MM')}-${$moment(endDate).format('YYYY/MM')}`}}</span>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
<view class="topFilterBox">
|
||||
<view class="filterItem" v-for="(item,index) in menuList" :key="index" @click="handleChangeSelect(item)">
|
||||
<view class="imgIcon" :style="selectFilter===item.id ? 'background:#f0f7fe;' : 'background:#f6f7f8;'">
|
||||
<image class="img" :src="item.id===selectFilter?item.active: item.src"/>
|
||||
</view>
|
||||
<view class="filterLabel" :style="selectFilter===item.id ? 'color:#5B96E9' :'color:#808D97'">{{item.name}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="dataList">
|
||||
<view class="dataItem" v-for="(item,index) in dataList" :key="index" @click="handleGoDetail(item)" :style="{boxShadow: item.SETTLEMENT_STATE===0 || item.SETTLEMENT_STATE===2?'0 0px 6rpx #f9b297':''}">
|
||||
<div class="content-index">{{index+1}}</div>
|
||||
<view class="itemRow" >
|
||||
<view class="projectName">{{ item.BUSINESSPROJECT_NAME }}</view>
|
||||
<view class="stateName" :style="{color: item.SETTLEMENT_STATE===2?'#FF814FFF':''}">{{ item.SETTLEMENT_STATE===0?'待结算':item.SETTLEMENT_STATE===1?'已结算':item.SETTLEMENT_STATE===2?'审批中':'' }}</view>
|
||||
</view>
|
||||
<view class="itemCenterRow" style="margin: 60rpx 0 20rpx">
|
||||
<view class="value">{{ item.SETTLEMENT_TYPE===1?$util.getMoney(item.REVENUE_AMOUNT):item.SETTLEMENT_TYPE===2?$util.getMoney(item.CURREVENUE_AMOUNT):'' }}</view>
|
||||
<view class="label">{{ item.SETTLEMENT_TYPE===1?'累计营业额':item.SETTLEMENT_TYPE===2?'本月营业额':'' }}</view>
|
||||
</view>
|
||||
<view class="itemRow">
|
||||
<view class="leftName">{{item.CURRENT_PERIOD || ''}}</view>
|
||||
<!-- <view class="rightName">{{ $util.getMoney(item.REVENUE_AMOUNT) }}</view>-->
|
||||
|
||||
<view class="rightName">{{item.SETTLEMENT_TYPE===1?'年度结算':item.SETTLEMENT_TYPE===2?'月度结算':''}}:{{item.SETTLEMENT_DATE || ''}} </view>
|
||||
</view>
|
||||
|
||||
<view class="line"></view>
|
||||
<view class="itemRow">
|
||||
<view class="leftName"><span class="radio" style="background: #44bea3"></span>{{ item.MERCHANTS_NAME || '' }}</view>
|
||||
<view class="rightName"></view>
|
||||
</view>
|
||||
<view class="itemRow">
|
||||
<view class="leftName"><span class="radio" style="background: #398EFE"></span>{{item.SERVERPARTSHOP_NAME || ''}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="load-more" v-if="dataList.length>0">
|
||||
<text>{{!isEnd ? '正在加载,请稍后...':'——— 我是有底线的 ———'}}</text>
|
||||
</view>
|
||||
<UniPop :show="showPop" @hidePopup="closePop" type="bottom" @touchmove.prevent round="true">
|
||||
<view class="uniPopup">
|
||||
<view class="uniPopupTop">
|
||||
<text class="uniPopupTitle">筛选</text>
|
||||
<image @click="closePop" class="close" src="https://eshangtech.com/ShopICO/ahyd-BID/examine/close.svg"></image>
|
||||
</view>
|
||||
|
||||
<view class="filterBox">
|
||||
<view class="filterTitle">统计时间</view>
|
||||
<view class="filterTimeBox">
|
||||
<picker class="timeSelect" mode="date" fields="month" :value="$moment(startDate).format('YYYY-MM')" :start="'2023-01-01'" :end="end" @change="handleGetStartTime">{{startDate}}</picker>
|
||||
<span class="timeSelect" style="margin: 0 4rpx">-</span>
|
||||
<picker class="timeSelect" mode="date" fields="month" :value="$moment(endDate).format('YYYY-MM')" :start="start" :end="end" @change="handleGetEndTime">{{endDate}}</picker>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="filterBox" style="margin-top: 48rpx">
|
||||
<view class="filterTitle">结算类型</view>
|
||||
<view class="filterItemList">
|
||||
<view :class="SettlementType===0?'filterItem selectFilterItem':'filterItem'" @click="handleChangeSettlementType(0)">全部</view>
|
||||
<view :class="SettlementType===1?'filterItem selectFilterItem':'filterItem'" @click="handleChangeSettlementType(1)">年度</view>
|
||||
<view :class="SettlementType===2?'filterItem selectFilterItem':'filterItem'" @click="handleChangeSettlementType(2)">月度</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="button" @click="handleSubmit">查询</view>
|
||||
</view>
|
||||
</UniPop>
|
||||
</scroll-view>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
mapState,
|
||||
} from 'vuex'
|
||||
import request from '@/util/index.js'
|
||||
import Store from "../../store/store";
|
||||
import UniPop from '@/components/uni-popup.vue'
|
||||
import moment from "moment";
|
||||
export default {
|
||||
components: {UniPop},
|
||||
data() {
|
||||
return {
|
||||
menuList: [
|
||||
{ //列表头部菜单选项标签
|
||||
name: '全部',
|
||||
src: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/yifq.png',
|
||||
active: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/yifqz.png',
|
||||
id: 4
|
||||
}, {
|
||||
name: '待结算',
|
||||
src: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/shenp.png',
|
||||
active: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/shenpz.png',
|
||||
id: "0,2"
|
||||
}, {
|
||||
name: '已结算',
|
||||
src: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/yichl.png',
|
||||
active: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/yichlz.png',
|
||||
id: 1
|
||||
}, {
|
||||
name: '更多筛选',
|
||||
src: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/shaix.png',
|
||||
active: 'https://eshangtech.com/ShopICO/ahyd-BID/expense/type/shaixz.png',
|
||||
id: 3
|
||||
} ],
|
||||
selectFilter: 4,
|
||||
dataList: [],
|
||||
selectServiceList:[],// 这个用户可以选择的服务区
|
||||
selectIndex:0,// 选中的索引
|
||||
selectServiceId:'',// 选择的服务区
|
||||
showPop: false,// 显示更多筛选
|
||||
startDate:'',// 开始时间
|
||||
endDate:'',// 结束时间
|
||||
start:'',// 限制的开始时间
|
||||
end:'',// 限制的结束时间
|
||||
SettlementType: 0,// 结算模式
|
||||
PageIndex: 1,// 默认的页数
|
||||
isEnd: false,// 判断是否到底了
|
||||
useInfo:{},// 用户详情
|
||||
}
|
||||
},
|
||||
computed: { //监听属性 类似于data概念
|
||||
...mapState({
|
||||
user: (state) => {
|
||||
return state.userData
|
||||
},
|
||||
}),
|
||||
},
|
||||
async onLoad(){
|
||||
let userInfo = uni.getStorageSync('vuex')
|
||||
userInfo = JSON.parse(userInfo)
|
||||
this.useInfo = JSON.parse(JSON.stringify(userInfo))
|
||||
console.log('this.useInfo',this.useInfo)
|
||||
|
||||
await this.getSeverpart()
|
||||
|
||||
|
||||
this.startDate = this.$moment().startOf('year').format('YYYY-MM')
|
||||
this.endDate = this.$moment().subtract(1,'months').format('YYYY-MM')
|
||||
console.log('Store.state.userData',Store.state.userData)
|
||||
// this.selectServiceList = Store.state.userData.serverPartList
|
||||
// if(this.selectServiceList[0].value==='424'){
|
||||
// let list = []
|
||||
// this.selectServiceList.forEach(item=>{
|
||||
// if(item.value!=='424'){
|
||||
// list.push(item)
|
||||
// }
|
||||
// })
|
||||
// this.selectServiceList = list
|
||||
// }
|
||||
// this.selectServiceId = this.selectServiceList[0].value
|
||||
this.handleGetPageData()
|
||||
},
|
||||
onShow(){
|
||||
let reload = uni.getStorageSync('reolad')
|
||||
if(reload==='true'){
|
||||
this.dataList = []
|
||||
this.handleGetPageData()
|
||||
uni.setStorageSync('reolad','')
|
||||
}
|
||||
let isGoNewMonth = uni.getStorageSync('handleGetNewMonth')
|
||||
let handleGetNewMonthObj = uni.getStorageSync('handleGetNewMonthObj')
|
||||
let handleGetNewMonthTime = uni.getStorageSync('handleGetNewMonthTime')
|
||||
console.log('isGoNewMonth',isGoNewMonth)
|
||||
console.log('handleGetNewMonthObj',handleGetNewMonthObj)
|
||||
console.log('handleGetNewMonthTime',handleGetNewMonthTime)
|
||||
if(isGoNewMonth==='true'){
|
||||
this.handleGetNewMonth(handleGetNewMonthObj,handleGetNewMonthTime)
|
||||
uni.setStorageSync('handleGetNewMonth','')
|
||||
uni.setStorageSync('handleGetNewMonthObj','')
|
||||
uni.setStorageSync('handleGetNewMonthTime','')
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
// 拿到服务区列表
|
||||
async getSeverpart(){
|
||||
console.log('this.user',this.user)
|
||||
const req = {
|
||||
UserIdEncrypted: this.useInfo.userData.UserIdEncrypted
|
||||
}
|
||||
const data = await this.$request.$webGet('EShangApiMain/Logging/GetPassportInfoById',req)
|
||||
console.log('Info',data)
|
||||
const secondReq = {
|
||||
ServerpartCodes: data.Result_Data.CityAuthority,
|
||||
ServerpartType: 1000,
|
||||
StatisticsType: '1000,2000'
|
||||
}
|
||||
const secondData = await this.$request.$webGet('EShangApiMain/BaseInfo/GetServerpartDDL',secondReq)
|
||||
console.log('secondData',secondData)
|
||||
this.selectServiceList = secondData.Result_Data.List
|
||||
if(this.selectServiceList[0].value==='424'){
|
||||
let list = []
|
||||
this.selectServiceList.forEach(item=>{
|
||||
if(item.value!=='424'){
|
||||
list.push(item)
|
||||
}
|
||||
})
|
||||
this.selectServiceList = list
|
||||
}
|
||||
this.selectServiceId = this.selectServiceList[0].value
|
||||
},
|
||||
// 自动跳转到指定月份的方法
|
||||
async handleGetNewMonth(obj,time){
|
||||
uni.showLoading({
|
||||
title: '正在加载...'
|
||||
})
|
||||
const req = {
|
||||
ServerpartId: obj?.SERVERPART_ID,
|
||||
ServerpartShopId: obj?.SERVERPARTSHOP_ID,
|
||||
StartDate: this.$moment(time).format('YYYYMM'),
|
||||
EndDate: this.$moment(time).format('YYYYMM'),
|
||||
}
|
||||
const data = await request.$webGet('EShangApiMain/BusinessProject/GetProjectAccountList',req)
|
||||
console.log('data',data)
|
||||
let res = data.Result_Data.List
|
||||
let bigObj = {}
|
||||
if(res && res.length>0){
|
||||
res.forEach(item=>{
|
||||
if(item.SETTLEMENT_TYPE===2 && this.$moment(item.ENDDATE).format('YYYYMM') === this.$moment(time).format('YYYYMM')){
|
||||
if (item.SHOPROYALTY_ID === obj.SHOPROYALTY_ID) {
|
||||
bigObj = item
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
console.log('bigObj',bigObj)
|
||||
let result = {
|
||||
...bigObj,
|
||||
Approvalstate: bigObj.SETTLEMENT_STATE === 0 ? 0 : bigObj.SETTLEMENT_STATE === 1 ? 9 : bigObj.SETTLEMENT_STATE === 2 ? 1 : '',
|
||||
startTime: this.$moment(bigObj.SETTLEMENT_DATE + (bigObj.SETTLEMENT_TYPE===1?'':'/01') ).startOf('months').format('YYYY-MM-DD'),
|
||||
endTime: this.$moment(bigObj.SETTLEMENT_DATE + (bigObj.SETTLEMENT_TYPE===1?'':'/01')).endOf('months').format('YYYY-MM-DD'),
|
||||
}
|
||||
this.$util.toNextRoute('navigateTo', `/pages/settlementApproval/detail?obj=${JSON.stringify(result)}&staticMonth=${time}`)
|
||||
|
||||
uni.hideLoading()
|
||||
},
|
||||
// 改变筛选条件
|
||||
handleChangeSelect(obj){
|
||||
// 当为3时 就是点击了更多筛选
|
||||
if(Number(obj.id)===3){
|
||||
this.showPop = true
|
||||
}else{
|
||||
this.selectFilter = obj.id
|
||||
this.handleGetPageData()
|
||||
}
|
||||
this.isEnd = false
|
||||
this.PageIndex = 1
|
||||
},
|
||||
// 改变服务区
|
||||
handleChangeService(e){
|
||||
console.log('e',e)
|
||||
this.selectIndex = Number(e.target.value)
|
||||
this.selectServiceId = this.selectServiceList[Number(e.target.value)].value
|
||||
this.handleGetPageData()
|
||||
this.isEnd = false
|
||||
this.PageIndex = 1
|
||||
},
|
||||
// 关闭弹出框
|
||||
closePop(){
|
||||
this.showPop = false
|
||||
},
|
||||
// 改变开始时间
|
||||
handleGetStartTime(e){
|
||||
this.start = e.detail.value
|
||||
this.startDate = moment(e.detail.value).format('YYYY-MM')
|
||||
},
|
||||
// 改变结束时间
|
||||
handleGetEndTime(e){
|
||||
this.endDate = moment(e.detail.value).format('YYYY-MM')
|
||||
},
|
||||
handleChangeSettlementType(e){
|
||||
this.SettlementType = e
|
||||
},
|
||||
handleSubmit(){
|
||||
this.isEnd = false
|
||||
this.PageIndex = 1
|
||||
this.closePop()
|
||||
this.handleGetPageData()
|
||||
},
|
||||
// 跳转
|
||||
handleGoDetail(obj){
|
||||
console.log('obj',obj)
|
||||
let res = {
|
||||
...obj,
|
||||
Approvalstate: obj.SETTLEMENT_STATE === 0 ? 0 : obj.SETTLEMENT_STATE === 1 ? 9 : obj.SETTLEMENT_STATE === 2 ? 1 : '',
|
||||
// startTime: new Date(obj.STARTDATE).getTime() < new Date(obj.SETTLEMENT_DATE).getTime()?this.$moment(obj.SETTLEMENT_DATE).startOf('months').format('YYYY-MM-DD'):this.$moment(obj.STARTDATE).format('YYYY-MM-DD'),
|
||||
// endTime: new Date(obj.ENDDATE).getTime() > new Date(obj.SETTLEMENT_DATE).getTime()?this.$moment(obj.SETTLEMENT_DATE).startOf('months').format('YYYY-MM-DD'):this.$moment(obj.STARTDATE).format('YYYY-MM-DD')
|
||||
startTime: this.$moment(obj.SETTLEMENT_DATE + (obj.SETTLEMENT_TYPE===1?'':'/01')).startOf('month').format('YYYY-MM-DD'),
|
||||
endTime: this.$moment(obj.SETTLEMENT_DATE +(obj.SETTLEMENT_TYPE===1?'':'/01')).endOf('month').format('YYYY-MM-DD'),
|
||||
}
|
||||
this.$util.toNextRoute('navigateTo', `/pages/settlementApproval/detail?obj=${JSON.stringify(res)}&staticMonth=${res.SETTLEMENT_DATE + (obj.SETTLEMENT_TYPE===1?'':'/01')}`)
|
||||
},
|
||||
async handleGetPageData(){
|
||||
const req = {
|
||||
ServerpartId: this.selectServiceId,
|
||||
SettlementState: this.selectFilter===4?'': this.selectFilter,
|
||||
SettlementType: this.SettlementType || '',
|
||||
StartDate: this.startDate?this.$moment(this.startDate).format('YYYYMM'):'',
|
||||
EndDate: this.endDate?this.$moment(this.endDate).format('YYYYMM'):'',
|
||||
PageIndex: this.PageIndex,
|
||||
PageSize: 10,
|
||||
UserId: this.useInfo.userData.UserId
|
||||
}
|
||||
uni.showLoading({
|
||||
title: '正在加载...'
|
||||
})
|
||||
const data = await request.$webGet('EShangApiMain/BusinessProject/GetProjectAccountList',req)
|
||||
console.log('data',data)
|
||||
this.dataList = this.PageIndex === 1?data.Result_Data.List:[...this.dataList,...data.Result_Data.List]
|
||||
console.log('this.dataList',this.dataList)
|
||||
if(data.Result_Data.TotalCount < 10){
|
||||
this.isEnd = true
|
||||
}
|
||||
uni.hideLoading()
|
||||
},
|
||||
// 下拉刷新
|
||||
onPullDownRefresh(){
|
||||
console.log('1111')
|
||||
this.PageIndex = 1
|
||||
this.isEnd = false
|
||||
this.dataList = []
|
||||
this.handleGetPageData()
|
||||
setTimeout(function() {
|
||||
uni.stopPullDownRefresh()
|
||||
}, 1000)
|
||||
},
|
||||
// 滚动到底部
|
||||
onReachBottom(){
|
||||
console.log('1111')
|
||||
if(!this.isEnd){
|
||||
this.PageIndex = this.PageIndex + 1
|
||||
this.handleGetPageData()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.main{
|
||||
width: 100%;
|
||||
min-height: 100vh;
|
||||
box-sizing: border-box;
|
||||
.topBox{
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 24rpx 16rpx;
|
||||
background: #fff;
|
||||
.top{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin-bottom: 16rpx;
|
||||
.service{
|
||||
font-size: 24rpx;
|
||||
color: #010101;
|
||||
border-radius: 24rpx;
|
||||
padding: 4rpx 16rpx;
|
||||
background-color: #DEDEDE;
|
||||
text-align: center;
|
||||
}
|
||||
.time{
|
||||
font-size: 24rpx;
|
||||
color: #010101;
|
||||
border-radius: 24rpx;
|
||||
padding: 4rpx 16rpx;
|
||||
background-color: #DEDEDE;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
.topFilterBox{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
box-sizing: border-box;
|
||||
.filterItem{
|
||||
width: 25%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
.imgIcon{
|
||||
height: 37px;
|
||||
width: 37px;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
margin-bottom: 16rpx;
|
||||
padding: 9px;
|
||||
box-sizing: border-box;
|
||||
|
||||
.img{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
.filterLabel{
|
||||
font-size: 24rpx;
|
||||
text-align: center;
|
||||
color: #808D97;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.dataList{
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 0 24rpx;
|
||||
.dataItem{
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
background: #fff;
|
||||
padding: 16rpx;
|
||||
margin: 24rpx 0;
|
||||
border-radius: 8rpx;
|
||||
box-shadow: 0 0px 6rpx #E2E2E2;
|
||||
position: relative;
|
||||
.content-index {
|
||||
width: 42rpx;
|
||||
height: 32rpx;
|
||||
line-height: 32rpx;
|
||||
font-size: 24rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
background-color: #fb8b56;
|
||||
position: absolute;
|
||||
top: 26rpx;
|
||||
left: -4rpx;
|
||||
box-shadow: 4rpx 4rpx 2rpx 0 rgba(238,112,27,0.5)
|
||||
}
|
||||
.itemRow{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
.projectName{
|
||||
width: 60%;
|
||||
font-size: 28rpx;
|
||||
height: 54rpx;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
color: #333333;
|
||||
box-sizing: border-box;
|
||||
padding-left: 40rpx;
|
||||
}
|
||||
.leftName{
|
||||
color: #686868;
|
||||
font-size: 24rpx;
|
||||
.radio{
|
||||
display: inline-block;
|
||||
width: 14rpx;
|
||||
height: 14rpx;
|
||||
border-radius: 14rpx;
|
||||
margin: 0 8px 0 5px;
|
||||
}
|
||||
}
|
||||
.stateName{
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
}
|
||||
.rightName{
|
||||
color: #686868;
|
||||
font-size: 24rpx;
|
||||
.radio{
|
||||
display: inline-block;
|
||||
width: 14rpx;
|
||||
height: 14rpx;
|
||||
border-radius: 14rpx;
|
||||
margin: 0 8px 0 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.itemCenterRow{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
.value{
|
||||
font-size: 16px;
|
||||
font-weight: 600;
|
||||
color: #FF814FFF;
|
||||
}
|
||||
.label{
|
||||
font-size: 12px;
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
.line{
|
||||
height: 2rpx;
|
||||
width: 100%;
|
||||
background-color: #eee;
|
||||
margin-bottom: 18rpx;
|
||||
margin-top: 16rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.uniPopup{
|
||||
width: 100%;
|
||||
height: 400px;
|
||||
box-sizing: border-box;
|
||||
padding: 32rpx;
|
||||
.uniPopupTop{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
.uniPopupTitle{
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
font-weight: 600;
|
||||
font-size: 32rpx;
|
||||
color: #160002;
|
||||
line-height: 44rpx;
|
||||
text-align: left;
|
||||
font-style: normal;
|
||||
}
|
||||
.close{
|
||||
width: 40rpx;
|
||||
height: 40rpx;
|
||||
}
|
||||
}
|
||||
.filterBox{
|
||||
margin-top: 40rpx;
|
||||
.filterTitle{
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
font-weight: 600;
|
||||
font-size: 28rpx;
|
||||
color: #212226;
|
||||
line-height: 40rpx;
|
||||
text-align: left;
|
||||
font-style: normal;
|
||||
}
|
||||
.filterTimeBox{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin-top: 24rpx;
|
||||
.timeSelect{
|
||||
width: calc((100% - 20px)/2);
|
||||
}
|
||||
}
|
||||
.filterItemList{
|
||||
margin: 24rpx;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
.filterItem{
|
||||
width: calc((100% - 32rpx)/3);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-right: 16rpx;
|
||||
margin-bottom: 16rpx;
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
font-weight: 400;
|
||||
font-size: 28rpx;
|
||||
color: #160002;
|
||||
line-height: 40rpx;
|
||||
text-align: right;
|
||||
font-style: normal;
|
||||
background: #F5F5F5;
|
||||
border-radius: 8rpx;
|
||||
padding: 12rpx 0;
|
||||
}
|
||||
.filterItem:nth-child(3){
|
||||
margin-right: 0;
|
||||
}
|
||||
.selectFilterItem{
|
||||
color: #2363FF;
|
||||
background: #ECF2FF;
|
||||
}
|
||||
}
|
||||
}
|
||||
.button{
|
||||
background: #2363FF;
|
||||
border-radius: 8rpx;
|
||||
width: calc(100% - 64rpx);
|
||||
height: 88rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
font-weight: 400;
|
||||
font-size: 32rpx;
|
||||
color: #FFFFFF;
|
||||
line-height: 44rpx;
|
||||
text-align: left;
|
||||
font-style: normal;
|
||||
position: fixed;
|
||||
bottom: 32rpx;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
1242
pages/settlementApproval/monthDetail.vue
Normal file
1242
pages/settlementApproval/monthDetail.vue
Normal file
File diff suppressed because it is too large
Load Diff
1177
pages/settlementApproval/yearSettlement.vue
Normal file
1177
pages/settlementApproval/yearSettlement.vue
Normal file
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
Before Width: | Height: | Size: 174 KiB |
103
util/dateTime/index.js
Normal file
103
util/dateTime/index.js
Normal file
@ -0,0 +1,103 @@
|
||||
import request from '@/util/index.js'
|
||||
export function timestampToTime(timestamp) {
|
||||
const date = new Date(timestamp) //时间戳为10位需*1000,时间戳为13位的话不需乘1000
|
||||
const Y = date.getFullYear() + '-'
|
||||
const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
|
||||
const D =date.getDate()<10?'0'+date.getDate():date.getDate()
|
||||
// const h = date.getHours() + ':'
|
||||
// const m = date.getMinutes() + ':'
|
||||
// const s = date.getSeconds()
|
||||
return Y + M + D
|
||||
}
|
||||
|
||||
export function timestampToTimeMonth(timestamp){
|
||||
const date = new Date(timestamp) //时间戳为10位需*1000,时间戳为13位的话不需乘1000
|
||||
const Y = date.getFullYear() + '-'
|
||||
const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1)
|
||||
const D =date.getDate()<10?'0'+date.getDate():date.getDate()
|
||||
// const h = date.getHours() + ':'
|
||||
// const m = date.getMinutes() + ':'
|
||||
// const s = date.getSeconds()
|
||||
return Y + M
|
||||
}
|
||||
|
||||
export function getThisDay(value) {
|
||||
switch (value) {
|
||||
case 1:
|
||||
return '星期一'
|
||||
case 2:
|
||||
return '星期二'
|
||||
case 3:
|
||||
return '星期三'
|
||||
case 4:
|
||||
return '星期四'
|
||||
case 5:
|
||||
return '星期五'
|
||||
case 6:
|
||||
return '星期六'
|
||||
case 0:
|
||||
return '星期日'
|
||||
}
|
||||
}
|
||||
|
||||
export function getYesterday() {
|
||||
const date = new Date()
|
||||
const y = date.getFullYear()
|
||||
const m = date.getMonth() + 1
|
||||
const d = date.getDate()
|
||||
return `${y}-${m}-${d - 1}`
|
||||
}
|
||||
|
||||
//传入时间 拿到昨天的时间
|
||||
export function handleYesterday(value) {
|
||||
const date = new Date(value)
|
||||
const y = date.getFullYear()
|
||||
const m = date.getMonth() + 1
|
||||
const d = date.getDate() - 1
|
||||
return `${y}-${m}-${d}`
|
||||
}
|
||||
|
||||
// 处理树列表数据的方法
|
||||
export function wrapTreeNode(data) {
|
||||
|
||||
const wrapData = data.map((item) => {
|
||||
const node = { ...item.node };
|
||||
|
||||
if (item.children && item.children.length > 0) {
|
||||
node.children = wrapTreeNode(item.children);
|
||||
}
|
||||
return node
|
||||
});
|
||||
return wrapData;
|
||||
}
|
||||
|
||||
export function tableList(list) {
|
||||
return {
|
||||
data: list.List || [],
|
||||
current: list.PageIndex || 1,
|
||||
pageSize: list.pageSize || 10,
|
||||
total: list.TotalCount || 0,
|
||||
otherData: list?.OtherData || '',
|
||||
success: true,
|
||||
};
|
||||
}
|
||||
export function formateField(list) {
|
||||
const valueNumber = [];
|
||||
|
||||
list.map((n) => {
|
||||
if (!isNaN(Number(n.value))) {
|
||||
valueNumber.push({
|
||||
label: n.label,
|
||||
value: numeral(n.value).value(),
|
||||
});
|
||||
}
|
||||
});
|
||||
return valueNumber.length > 0 ? valueNumber : list;
|
||||
}
|
||||
export async function getFieldEnum(params){
|
||||
const data = await request.$webGet(`/EShangApiMain/FrameWork/GetFieldEnumByField`, params);
|
||||
if (data.Result_Code !== 100) {
|
||||
return [];
|
||||
}
|
||||
return data.Result_Data.List;
|
||||
}
|
||||
268
yarn.lock
Normal file
268
yarn.lock
Normal file
@ -0,0 +1,268 @@
|
||||
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@qiun/ucharts@^2.5.0-20230101":
|
||||
version "2.5.0-20230101"
|
||||
resolved "https://registry.npmmirror.com/@qiun/ucharts/-/ucharts-2.5.0-20230101.tgz#9ca5d646328ad4a002c745c28001f8916865c4f8"
|
||||
integrity sha512-C7ccBgfPuGF6dxTRuMW0NPPMSCf1k/kh3I9zkRVBc5PaivudX/rPL+jd2Wty6gn5ya5L3Ob+YmYe09V5xw66Cw==
|
||||
|
||||
"@qiun/wx-ucharts@^2.5.0-20230101":
|
||||
version "2.5.0-20230101"
|
||||
resolved "https://registry.npmmirror.com/@qiun/wx-ucharts/-/wx-ucharts-2.5.0-20230101.tgz#ba7237cbf6bd92645e8322040c7449b8b7a1eea4"
|
||||
integrity sha512-sAaNUf4U6r4/0JZMTlfNwrtfT0v8qFO02B/wYsj4yZGTDAQ/QctGgKI7hVUDUSrqZnjH6xWqE+ql0FOIs1fTuQ==
|
||||
|
||||
"@types/json-schema@^7.0.8":
|
||||
version "7.0.15"
|
||||
resolved "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841"
|
||||
integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==
|
||||
|
||||
ajv-keywords@^3.5.2:
|
||||
version "3.5.2"
|
||||
resolved "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
|
||||
integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
|
||||
|
||||
ajv@^6.12.5:
|
||||
version "6.12.6"
|
||||
resolved "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
|
||||
integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
|
||||
dependencies:
|
||||
fast-deep-equal "^3.1.1"
|
||||
fast-json-stable-stringify "^2.0.0"
|
||||
json-schema-traverse "^0.4.1"
|
||||
uri-js "^4.2.2"
|
||||
|
||||
anymatch@~3.1.2:
|
||||
version "3.1.3"
|
||||
resolved "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
|
||||
integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
|
||||
dependencies:
|
||||
normalize-path "^3.0.0"
|
||||
picomatch "^2.0.4"
|
||||
|
||||
big.js@^5.2.2:
|
||||
version "5.2.2"
|
||||
resolved "https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
|
||||
integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==
|
||||
|
||||
binary-extensions@^2.0.0:
|
||||
version "2.3.0"
|
||||
resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522"
|
||||
integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==
|
||||
|
||||
braces@~3.0.2:
|
||||
version "3.0.3"
|
||||
resolved "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
|
||||
integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
|
||||
dependencies:
|
||||
fill-range "^7.1.1"
|
||||
|
||||
"chokidar@>=3.0.0 <4.0.0":
|
||||
version "3.6.0"
|
||||
resolved "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b"
|
||||
integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==
|
||||
dependencies:
|
||||
anymatch "~3.1.2"
|
||||
braces "~3.0.2"
|
||||
glob-parent "~5.1.2"
|
||||
is-binary-path "~2.1.0"
|
||||
is-glob "~4.0.1"
|
||||
normalize-path "~3.0.0"
|
||||
readdirp "~3.6.0"
|
||||
optionalDependencies:
|
||||
fsevents "~2.3.2"
|
||||
|
||||
deepmerge@^4.2.2:
|
||||
version "4.3.1"
|
||||
resolved "https://registry.npmmirror.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a"
|
||||
integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
|
||||
|
||||
emojis-list@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
|
||||
integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
|
||||
|
||||
fast-deep-equal@^3.1.1:
|
||||
version "3.1.3"
|
||||
resolved "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
|
||||
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
||||
|
||||
fast-json-stable-stringify@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
|
||||
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
|
||||
|
||||
fill-range@^7.1.1:
|
||||
version "7.1.1"
|
||||
resolved "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
|
||||
integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
|
||||
dependencies:
|
||||
to-regex-range "^5.0.1"
|
||||
|
||||
fsevents@~2.3.2:
|
||||
version "2.3.3"
|
||||
resolved "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
|
||||
integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
|
||||
|
||||
glob-parent@~5.1.2:
|
||||
version "5.1.2"
|
||||
resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
|
||||
integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
|
||||
dependencies:
|
||||
is-glob "^4.0.1"
|
||||
|
||||
immutable@^4.0.0:
|
||||
version "4.3.7"
|
||||
resolved "https://registry.npmmirror.com/immutable/-/immutable-4.3.7.tgz#c70145fc90d89fb02021e65c84eb0226e4e5a381"
|
||||
integrity sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==
|
||||
|
||||
is-binary-path@~2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
|
||||
integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
|
||||
dependencies:
|
||||
binary-extensions "^2.0.0"
|
||||
|
||||
is-extglob@^2.1.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
|
||||
integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
|
||||
|
||||
is-glob@^4.0.1, is-glob@~4.0.1:
|
||||
version "4.0.3"
|
||||
resolved "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
|
||||
integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
|
||||
dependencies:
|
||||
is-extglob "^2.1.1"
|
||||
|
||||
is-number@^7.0.0:
|
||||
version "7.0.0"
|
||||
resolved "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
|
||||
integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
|
||||
|
||||
json-schema-traverse@^0.4.1:
|
||||
version "0.4.1"
|
||||
resolved "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
|
||||
integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
|
||||
|
||||
json5@^2.1.2:
|
||||
version "2.2.3"
|
||||
resolved "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
|
||||
integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
|
||||
|
||||
klona@^2.0.4:
|
||||
version "2.0.6"
|
||||
resolved "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22"
|
||||
integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==
|
||||
|
||||
loader-utils@^2.0.0:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c"
|
||||
integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==
|
||||
dependencies:
|
||||
big.js "^5.2.2"
|
||||
emojis-list "^3.0.0"
|
||||
json5 "^2.1.2"
|
||||
|
||||
moment@^2.30.1:
|
||||
version "2.30.1"
|
||||
resolved "https://registry.npmmirror.com/moment/-/moment-2.30.1.tgz#f8c91c07b7a786e30c59926df530b4eac96974ae"
|
||||
integrity sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==
|
||||
|
||||
neo-async@^2.6.2:
|
||||
version "2.6.2"
|
||||
resolved "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
|
||||
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
|
||||
|
||||
normalize-path@^3.0.0, normalize-path@~3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
|
||||
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
|
||||
|
||||
numeral@^2.0.6:
|
||||
version "2.0.6"
|
||||
resolved "https://registry.npmmirror.com/numeral/-/numeral-2.0.6.tgz#4ad080936d443c2561aed9f2197efffe25f4e506"
|
||||
integrity sha512-qaKRmtYPZ5qdw4jWJD6bxEf1FJEqllJrwxCLIm0sQU/A7v2/czigzOb+C2uSiFsa9lBUzeH7M1oK+Q+OLxL3kA==
|
||||
|
||||
picomatch@^2.0.4, picomatch@^2.2.1:
|
||||
version "2.3.1"
|
||||
resolved "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
|
||||
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
|
||||
|
||||
punycode@^2.1.0:
|
||||
version "2.3.1"
|
||||
resolved "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
|
||||
integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
|
||||
|
||||
readdirp@~3.6.0:
|
||||
version "3.6.0"
|
||||
resolved "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
|
||||
integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
|
||||
dependencies:
|
||||
picomatch "^2.2.1"
|
||||
|
||||
sass-loader@^10.3.1:
|
||||
version "10.5.2"
|
||||
resolved "https://registry.npmmirror.com/sass-loader/-/sass-loader-10.5.2.tgz#1ca30534fff296417b853c7597ca3b0bbe8c37d0"
|
||||
integrity sha512-vMUoSNOUKJILHpcNCCyD23X34gve1TS7Rjd9uXHeKqhvBG39x6XbswFDtpbTElj6XdMFezoWhkh5vtKudf2cgQ==
|
||||
dependencies:
|
||||
klona "^2.0.4"
|
||||
loader-utils "^2.0.0"
|
||||
neo-async "^2.6.2"
|
||||
schema-utils "^3.0.0"
|
||||
semver "^7.3.2"
|
||||
|
||||
sass@^1.45.1:
|
||||
version "1.77.8"
|
||||
resolved "https://registry.npmmirror.com/sass/-/sass-1.77.8.tgz#9f18b449ea401759ef7ec1752a16373e296b52bd"
|
||||
integrity sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==
|
||||
dependencies:
|
||||
chokidar ">=3.0.0 <4.0.0"
|
||||
immutable "^4.0.0"
|
||||
source-map-js ">=0.6.2 <2.0.0"
|
||||
|
||||
schema-utils@^3.0.0:
|
||||
version "3.3.0"
|
||||
resolved "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe"
|
||||
integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==
|
||||
dependencies:
|
||||
"@types/json-schema" "^7.0.8"
|
||||
ajv "^6.12.5"
|
||||
ajv-keywords "^3.5.2"
|
||||
|
||||
semver@^7.3.2:
|
||||
version "7.6.3"
|
||||
resolved "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143"
|
||||
integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==
|
||||
|
||||
shvl@^2.0.3:
|
||||
version "2.0.3"
|
||||
resolved "https://registry.npmmirror.com/shvl/-/shvl-2.0.3.tgz#eb4bd37644f5684bba1fc52c3010c96fb5e6afd1"
|
||||
integrity sha512-V7C6S9Hlol6SzOJPnQ7qzOVEWUQImt3BNmmzh40wObhla3XOYMe4gGiYzLrJd5TFa+cI2f9LKIRJTTKZSTbWgw==
|
||||
|
||||
"source-map-js@>=0.6.2 <2.0.0":
|
||||
version "1.2.0"
|
||||
resolved "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af"
|
||||
integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==
|
||||
|
||||
to-regex-range@^5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
|
||||
integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
|
||||
dependencies:
|
||||
is-number "^7.0.0"
|
||||
|
||||
uri-js@^4.2.2:
|
||||
version "4.4.1"
|
||||
resolved "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
|
||||
integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
|
||||
dependencies:
|
||||
punycode "^2.1.0"
|
||||
|
||||
vuex-persistedstate@^4.1.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.npmmirror.com/vuex-persistedstate/-/vuex-persistedstate-4.1.0.tgz#127165f85f5b4534fb3170a5d3a8be9811bd2a53"
|
||||
integrity sha512-3SkEj4NqwM69ikJdFVw6gObeB0NHyspRYMYkR/EbhR0hbvAKyR5gksVhtAfY1UYuWUOCCA0QNGwv9pOwdj+XUQ==
|
||||
dependencies:
|
||||
deepmerge "^4.2.2"
|
||||
shvl "^2.0.3"
|
||||
Loading…
x
Reference in New Issue
Block a user