From df9e1dd0d829708c2da9a966d40e830ebcf24608 Mon Sep 17 00:00:00 2001
From: cjb <646858191@qq.com>
Date: Sat, 22 Mar 2025 17:33:29 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitignore | 21 +
src/App.vue | 2 +-
src/api/home.ts | 82 ++
src/api/operation/company.ts | 2 +-
src/api/order/account.ts | 20 +-
src/api/order/replabatt.ts | 102 ++-
src/api/order/reservation.ts | 29 +-
src/api/swapstation/cdcl.ts | 106 +++
src/api/swapstation/hdz.ts | 5 +-
src/api/swapstation/mqtt.ts | 19 +
src/api/swapstation/vehicle.ts | 20 +
src/router/index.ts | 4 +-
src/stores/app.ts | 4 +-
src/utils/request.ts | 5 +-
src/utils/ruoyi.ts | 8 +
src/views/components/detailstit.vue | 51 +-
src/views/index.vue | 804 +++++++++++++++---
src/views/order/account/index.vue | 14 +-
src/views/order/replabatt/index.vue | 115 ++-
src/views/order/replabatt/payment.vue | 479 +++++++++++
src/views/order/reservation/index.vue | 179 ++--
src/views/swapstation/battery/index.vue | 44 +-
src/views/swapstation/cdcl/costdetails.vue | 227 +++++
src/views/swapstation/cdcl/index.vue | 465 ++++++++++
src/views/swapstation/dcc/index.vue | 29 +-
src/views/swapstation/electmach/index.vue | 28 +-
.../swapstation/expestand/costdetails.vue | 16 +-
src/views/swapstation/expestand/index.vue | 90 +-
src/views/swapstation/hdz/index.vue | 108 ++-
src/views/swapstation/mqtt/index.vue | 189 ++++
src/views/swapstation/robot/index.vue | 30 +-
src/views/system/dict/index.vue | 12 +-
src/views/vehicle/car/index.vue | 488 ++++++++++-
src/views/vehicle/company/account.vue | 495 +++++++++++
src/views/vehicle/company/index.vue | 286 ++++++-
src/views/vehicle/wxuser/index.vue | 65 +-
36 files changed, 4214 insertions(+), 429 deletions(-)
create mode 100644 .gitignore
create mode 100644 src/api/home.ts
create mode 100644 src/api/swapstation/cdcl.ts
create mode 100644 src/api/swapstation/mqtt.ts
create mode 100644 src/views/order/replabatt/payment.vue
create mode 100644 src/views/swapstation/cdcl/costdetails.vue
create mode 100644 src/views/swapstation/cdcl/index.vue
create mode 100644 src/views/swapstation/mqtt/index.vue
create mode 100644 src/views/vehicle/company/account.vue
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..7ce6e50
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,21 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+*.local
+
+# Editor directories and files
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
\ No newline at end of file
diff --git a/src/App.vue b/src/App.vue
index 5cb893f..759fecd 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -12,7 +12,7 @@ import Login from './views/components/login.vue'
watch(() => appStore().isEffecti,(v) => {
openpop.value = false
- if(!v && getToken()){
+ if(!v && getToken() && !appStore().loginPage){
openpop.value = true
}
})
diff --git a/src/api/home.ts b/src/api/home.ts
new file mode 100644
index 0000000..a623833
--- /dev/null
+++ b/src/api/home.ts
@@ -0,0 +1,82 @@
+import server from '@/utils/request'
+
+//查询运营商 换电站 电池 机器人
+interface Querydata{
+ poCode?:String //运营商编码
+ stationCode?:String //换电站编码
+ timeBegin?:String //开始时间,示例值(2024-10-01 00:00:00)
+ timeEnd?:String //结束时间,示例值(2025-04-01 23:59:59)
+}
+
+export function gethdztotal(params?:Querydata) {
+ return server.request({
+ url: '/cloud/home/data1',
+ method: 'get',
+ params
+ })
+}
+
+//查询 公司 用户 车辆
+export function getgyctotal() {
+ return server.request({
+ url: '/cloud/home/data2',
+ method: 'get'
+ })
+}
+
+//订单-按换电站统计
+export function gethdztj(params?:Querydata) {
+ return server.request({
+ url: '/cloud/home/data3',
+ method: 'get',
+ params
+ })
+}
+
+//交易-不安换电站统计
+export function getjytj(params?:Querydata) {
+ return server.request({
+ url: '/cloud/home/data4',
+ method: 'get',
+ params
+ })
+}
+
+//近6个月订单统计
+export function getddtj(params?:Querydata) {
+ return server.request({
+ url: '/cloud/home/data5',
+ method: 'get',
+ params
+ })
+}
+
+//近6个月交易统计
+export function get6jytj(params?:Querydata) {
+ return server.request({
+ url: '/cloud/home/data6',
+ method: 'get',
+ params
+ })
+}
+
+
+
+//同比 环比
+export function gettbhb(type:number) {
+ return server.request({
+ url: '/cloud/home/data7',
+ method: 'get',
+ params:{
+ type
+ }
+ })
+}
+
+// export function addhdz(data:Addobj) {
+// return server.request({
+// url: '/cloud/batterystation/fee/detail/add',
+// method: 'post',
+// data
+// })
+// }
diff --git a/src/api/operation/company.ts b/src/api/operation/company.ts
index eb477eb..5270c7c 100644
--- a/src/api/operation/company.ts
+++ b/src/api/operation/company.ts
@@ -32,7 +32,7 @@ interface Addata{
status?:String|Number //状态:1-启用,0-禁用
logo?:String //logo地址
delFlag?:String //删除标识:1-已删除,0-未删除
- accountBalance?:String //账户余额
+ accountBalance?:String|Number //账户余额
}
export function addyunys(data:Addata) {
return server.request({
diff --git a/src/api/order/account.ts b/src/api/order/account.ts
index c329a27..8faca85 100644
--- a/src/api/order/account.ts
+++ b/src/api/order/account.ts
@@ -2,17 +2,17 @@ import server from '@/utils/request'
//新增
interface Addobj{
- ownerType:String //户主类型:1-个人,2-企业
- ownerId:String //户主ID
- stationCode:String //引入站点
+ ownerType:String //户主类型:1-个人,2-企业
+ ownerId:String //户主ID
+ stationCode:String //引入站点
pkId?:String
- totalAmount?:String //账户总金额,分:总金额=充值金额+赠送金额
- rechargeAmount?:String //充值余额,分
- giftAmount?:String //赠送金额,分
- point?:String //积分余额
- deposit?:String //押金
- snCode?:String //SN码
- rent?:String //租金
+ totalAmount?:String|Number //账户总金额,分:总金额=充值金额+赠送金额
+ rechargeAmount?:String|Number //充值余额,分
+ giftAmount?:String|Number //赠送金额,分
+ point?:String|Number //积分余额
+ deposit?:String|Number //押金
+ snCode?:String //SN码
+ rent?:String|Number //租金
}
export function addhdz(data:Addobj) {
diff --git a/src/api/order/replabatt.ts b/src/api/order/replabatt.ts
index 78672bf..f641269 100644
--- a/src/api/order/replabatt.ts
+++ b/src/api/order/replabatt.ts
@@ -4,34 +4,34 @@ import server from '@/utils/request'
interface Addobj{
orderType:String|Number //类型:1-换电,2-充电
plateNum:String //车牌号
- orderTime:String //订单时间,示例值(yyyy-MM-dd HH:mm:ss)
+ orderTime?:String //订单时间,示例值(yyyy-MM-dd HH:mm:ss)
stationCode:String //换电站编码
stationName:String //换电站名称
- accountCode:String //金额账号
- amount:String|Number //订单金额
- status:String|Number //订单状态:1-已创建,2-换电中,3-换电完成,4-充电中,5-充电完成,6-待结算,7-已完成,9-已取消 //1-等待受理,2-换电中,3-换电完成,4-出现异常,5-未结算,6-订单取消,7-已结算
- feeType:String //计算费用方式:1-ODO,2-SOC,3-按电量
- basicFee:String //基础费用
- serviceTimeBegin:String|Number //服务开始时间
- serviceTimeEnd:String //服务结束时间
- serviceFee:String|Number //服务费
- lastRentBatCarOdo:String //上次租赁电池时车辆里程
- nowReturnBatCarOdo:String //归还电池时车辆里程
- odoAmount:String|Number //按ODO换电费
- electAmount:String|Number //总充电量
- rentBatNo:String|Number //租借电池包仓位
- rentBatCode:String //租用电池包编码
- rentBatSoc:String //租用电池包SOC
- returnBatCode:String //归还电池包编码
- returnBatNo:String|Number //归还电池包仓位
- returnBatSoc:String //归还电池包SOC
- returnBatRentSoc:String //归还电池租出时soc
- returnBatRentStationCode:String //归还电池租出的换电站编码
- returnBatRentStationName:String //归还电池租出的换电站
- changeMode:String|Number //换电模式:1-全自动,2-半自动,3-人工干预
- changeLane:String|Number //换电车道 1-A 车道;2-B 车道
- userId:String //换电车主ID
- tradeNo:String //交易编码
+ accountCode?:String //金额账号
+ amount?:String|Number //订单金额
+ status?:String|Number //订单状态:1-已创建,2-换电中,3-换电完成,4-充电中,5-充电完成,6-待结算,7-已完成,9-已取消 //1-等待受理,2-换电中,3-换电完成,4-出现异常,5-未结算,6-订单取消,7-已结算
+ feeType?:String //计算费用方式:1-ODO,2-SOC,3-按电量
+ basicFee?:String //基础费用
+ serviceTimeBegin?:String|Number //服务开始时间
+ serviceTimeEnd?:String //服务结束时间
+ serviceFee?:String|Number //服务费
+ lastRentBatCarOdo?:String //上次租赁电池时车辆里程
+ nowReturnBatCarOdo?:String //归还电池时车辆里程
+ odoAmount?:String|Number //按ODO换电费
+ electAmount?:String|Number //总充电量
+ rentBatNo?:String|Number //租借电池包仓位
+ rentBatCode?:String //租用电池包编码
+ rentBatSoc?:String //租用电池包SOC
+ returnBatCode?:String //归还电池包编码
+ returnBatNo?:String|Number //归还电池包仓位
+ returnBatSoc?:String //归还电池包SOC
+ returnBatRentSoc?:String //归还电池租出时soc
+ returnBatRentStationCode?:String //归还电池租出的换电站编码
+ returnBatRentStationName?:String //归还电池租出的换电站
+ changeMode?:String|Number //换电模式:1-全自动,2-半自动,3-人工干预
+ changeLane?:String|Number //换电车道 1-A 车道;2-B 车道
+ userId?:String //换电车主ID
+ tradeNo?:String //交易编码
}
export function addhdz(data:Addobj) {
@@ -55,14 +55,16 @@ export function update(data:Addobj) {
interface Querydata{
pageSize:String|Number //每页条数
pageNo:String|Number //页数
- orderNo:String //订单编码
- plateNum:String //车牌号
- orderTimeBegin:String //订单时间开始,示例值(yyyy-MM-dd HH:mm:ss)
- orderTimeEnd:String //订单时间结束
- stationCode:String //换电站编码
- stationName:String //换电站名称
- userId:String //换电车主ID
- tradeNo:String //交易编码
+ orderNo?:String //订单编码
+ plateNum?:String //车牌号
+ orderTimeBegin?:String //订单时间开始,示例值(yyyy-MM-dd HH:mm:ss)
+ orderTimeEnd?:String //订单时间结束
+ stationCode?:String //换电站编码
+ stationName?:String //换电站名称
+ userId?:String //换电车主ID
+ tradeNo?:String //交易编码
+ status?:String //订单状态
+ ccode?:String //公司编码
}
export function getjqrlist(params:Querydata) {
return server.request({
@@ -104,3 +106,35 @@ export function jsfeiy(orderNo:string) {
}
})
}
+
+
+//批量支付
+export function batchpayment(data:string) {
+ return server.request({
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ url: '/cloud/order/swap/wechat/nativepay',
+ method: 'post',
+ data
+ })
+}
+
+//获取ip
+export function getip() {
+ return server.request({
+ url: '/resource/util/ip',
+ method: 'get'
+ })
+}
+
+//查询支付订单状态
+export function paystatus(outTradeNo:string) {
+ return server.request({
+ url: '/cloud/order/swap/paystatus/query',
+ method: 'get',
+ params:{
+ outTradeNo
+ }
+ },false)
+}
diff --git a/src/api/order/reservation.ts b/src/api/order/reservation.ts
index fbba780..20cbeff 100644
--- a/src/api/order/reservation.ts
+++ b/src/api/order/reservation.ts
@@ -2,15 +2,26 @@ import server from '@/utils/request'
//新增
interface Addobj{
- userId:String //预约人ID
- uname:String //预约人姓名
- phone:String //手机号码
+ userId:String //预约人ID
+ uname:String //预约人姓名
+ phone:String //手机号码
plateNum:String //车牌号
stationCode:String //换电站编码
stationName:String //换电站名称
swapDay:String //预约换电日期,示例值(yyyyMMdd)
swapDuration:String //预约换电时间段,示例值(8:00-10:00)
- status:String|Number //状态:1-预约成功,2-到店使用,3-取消,4-过期
+ status:String|Number //状态:1-预约成功,2-到店使用,3-取消,4-过期
+
+ // source:String //来源:1-小程序,2-云端,3-站端
+ // ucode:String //预约人编码
+ // uname:String //预约人姓名
+ // phone:String //手机号码
+ // plateNum:String //车牌号
+ // stationCode:String //换电站编码
+ // stationName:String //换电站名称
+ // swapDay:String //预约换电日期,示例值(yyyyMMdd)
+ // reservationTime?:String //预约时间
+ // swapDuration?:String //预约换电时间段,示例值(8:00-10:00)
}
export function addhdz(data:Addobj) {
@@ -33,9 +44,13 @@ export function update(data:Addobj) {
//查询
interface Querydata{
pageSize:String|Number //每页条数
- pageNo:String|Number //页数
- userId:String //车主id
- status:String //状态
+ pageNo:String|Number //页数
+ ucode?:String //车主id
+ status?:String //状态
+ plateNum?:String //车牌号
+ swapDayBegin?:String //预约换电日期开始,示例值(yyyyMMdd)
+ swapDayEnd?:String //预约换电日期结束
+ stationCode?:String //换电站编码
}
export function getjqrlist(params:Querydata) {
return server.request({
diff --git a/src/api/swapstation/cdcl.ts b/src/api/swapstation/cdcl.ts
new file mode 100644
index 0000000..e5d0c8f
--- /dev/null
+++ b/src/api/swapstation/cdcl.ts
@@ -0,0 +1,106 @@
+import server from '@/utils/request'
+
+//新增
+interface Addobj{
+ pkId?:String
+ name:String //名称
+ stationCode:String //换电站编码
+ stationName:String //换电站名称
+ miniLimit:String|Number //最低数量
+ status?:String|Number //状态:0-未启用,1-启用
+}
+
+export function addhdz(data:Addobj) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/add',
+ method: 'post',
+ data
+ })
+}
+
+//修改
+export function update(data:Addobj) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/update',
+ method: 'post',
+ data
+ })
+}
+
+//查询
+interface Querydata{
+ stationCode:String //换电站编码
+ status:String|Number //状态
+}
+export function getjqrlist(params:Querydata) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/list',
+ method: 'get',
+ params
+ })
+}
+
+//删除
+export function delhdz(id:string) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/del',
+ method: 'post',
+ data:{
+ id
+ }
+ })
+}
+
+
+
+interface Addxq{
+ pkId?:String
+ stationCode:String //换电站编码
+ stationName:String //换电站名称
+ strategyId:String //策略ID
+ beginTime:String //开始时间,示例值(20:01:32)
+ endTime:String //结束时间,示例值(23:05:41)
+ chargingPower?:String //充电功率
+}
+
+//新增详情
+export function addxq(data:Addxq) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/detail/add',
+ method: 'post',
+ data
+ })
+}
+
+//修改详情
+export function updatexq(data:Addxq) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/detail/update',
+ method: 'post',
+ data
+ })
+}
+
+
+//删除详情
+export function delxq(id:string) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/detail/del',
+ method: 'post',
+ data:{
+ id
+ }
+ })
+}
+
+
+//查询详情
+export function getxql(strategyId:String) {
+ return server.request({
+ url: '/cloud/batterystation/cd/strategy/detail/list',
+ method: 'get',
+ params:{
+ strategyId
+ }
+ })
+}
\ No newline at end of file
diff --git a/src/api/swapstation/hdz.ts b/src/api/swapstation/hdz.ts
index 2d71d51..ed2ee49 100644
--- a/src/api/swapstation/hdz.ts
+++ b/src/api/swapstation/hdz.ts
@@ -53,7 +53,7 @@ interface Querydata{
pkId?:String
name?:String //站点名称
code?:String //站点编码
- status?:String //状态:1-正常营业,2-正常停运,3-故障停运,4-指令停运,9-其它
+ status?:any //状态:1-正常营业,2-正常停运,3-故障停运,4-指令停运,9-其它
type?:String //站点类型ID
}
export function gethdzlist(params:Querydata) {
@@ -87,6 +87,7 @@ export function getqrcode(params:Codeqs) {
return server.request({
url: '/cloud/batterystation/xcx/qrcode/get',
method: 'get',
- params
+ params,
+ responseType:'blob'
})
}
\ No newline at end of file
diff --git a/src/api/swapstation/mqtt.ts b/src/api/swapstation/mqtt.ts
new file mode 100644
index 0000000..7ce0589
--- /dev/null
+++ b/src/api/swapstation/mqtt.ts
@@ -0,0 +1,19 @@
+import server from '@/utils/request'
+
+//新增
+interface Querydata{
+ pageSize:String|Number //每页条数
+ pageNo:String|Number //页数
+ stationCode?:String //换电站
+ direction?:String //传送方向
+ type?:String //消息类型: 状态信息类、事件记录类、请求与响应类 query
+ messageFunction?:String //方法 stationInfo
+}
+
+export function mqttlist(params:Querydata) {
+ return server.request({
+ url: '/cloud/mqttmessage/list',
+ method: 'get',
+ params
+ })
+}
\ No newline at end of file
diff --git a/src/api/swapstation/vehicle.ts b/src/api/swapstation/vehicle.ts
index 6a75c08..51c5db1 100644
--- a/src/api/swapstation/vehicle.ts
+++ b/src/api/swapstation/vehicle.ts
@@ -107,4 +107,24 @@ export function Bingwx(params:Wxbin) {
method: 'post',
params
})
+}
+
+//解绑微信用户
+export function unbindwx(id:String|Number) {
+ return server.request({
+ url: '/cloud/vehicle/wechatuser/relation/del',
+ method: 'post',
+ params:{id}
+ })
+}
+
+//查询车辆绑关联微信用户
+export function getcarwxlist(PlantNo:any) {
+ return server.request({
+ url: '/cloud/vehicle/relationuser/list',
+ method: 'get',
+ params:{
+ PlantNo
+ }
+ })
}
\ No newline at end of file
diff --git a/src/router/index.ts b/src/router/index.ts
index c7efbca..856f8c1 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -48,7 +48,9 @@ let init = true
router.beforeEach((to, from, next) => {
NProgress.start();
if(to.path === "/login"){
- appStore().setloginPage()
+ appStore().setloginPage(true)
+ }else{
+ appStore().setloginPage(false)
}
if (getToken()) {
/* has token*/
diff --git a/src/stores/app.ts b/src/stores/app.ts
index 0b85fb7..667729e 100644
--- a/src/stores/app.ts
+++ b/src/stores/app.ts
@@ -27,8 +27,8 @@ const store = defineStore({
seteff(v:boolean) {
this.isEffecti = v
},
- setloginPage() {
- this.loginPage = true
+ setloginPage(v:boolean) {
+ this.loginPage = v
},
toggleSideBar() {
if (this.sidebar.hide) {
diff --git a/src/utils/request.ts b/src/utils/request.ts
index 0c01299..173f737 100644
--- a/src/utils/request.ts
+++ b/src/utils/request.ts
@@ -46,7 +46,7 @@ export class Service {
//https://api.evo-techina.com'
- baseConfig: AxiosRequestConfig = { baseURL:import.meta.env.VITE_APP_BASE_API, timeout: 30000 };
+ baseConfig: AxiosRequestConfig = { baseURL:import.meta.env.VITE_APP_BASE_API, timeout: 60000 };
isloading:Boolean = true
@@ -157,7 +157,8 @@ export class Service {
return Promise.reject('S0405')
//return Promise.reject()
}else if(code == 'D0402'){
- return Promise.reject()
+ return []
+ //return Promise.reject()
}else if (code == 500) {
ElMessage({ message: msg, type: "error" });
return Promise.reject(new Error(msg));
diff --git a/src/utils/ruoyi.ts b/src/utils/ruoyi.ts
index 38d9b92..e4fc4ad 100644
--- a/src/utils/ruoyi.ts
+++ b/src/utils/ruoyi.ts
@@ -187,3 +187,11 @@ export async function blobValidate(data: Blob) {
return true;
}
}
+
+//格式日期
+export function formatDate(s:any) {
+ if(s){
+ return (s+'').replace(/^(\d{4})(\d{2})(\d{2})$/, '$1-$2-$3')
+ }
+ return ''
+}
\ No newline at end of file
diff --git a/src/views/components/detailstit.vue b/src/views/components/detailstit.vue
index 8c55750..8f0a819 100644
--- a/src/views/components/detailstit.vue
+++ b/src/views/components/detailstit.vue
@@ -7,18 +7,33 @@
{{name}}
+
+
+
+
\ No newline at end of file
diff --git a/src/views/index.vue b/src/views/index.vue
index 723b644..a51e38a 100644
--- a/src/views/index.vue
+++ b/src/views/index.vue
@@ -7,7 +7,99 @@
@click="testsx()">测试失效 -->
-
+
+
+
+
+
+
+
+
+
+
+ {{ operatotal }}
+
+
运营商
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ hdztotal }}
+
+
换电站
+
+
+
+ {{ kyhdz }}
+
+
可用换电站
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ rzcompany }}
+
+
认证公司
+
+
+
+ {{ rzuser }}
+
+
认证用户
+
+
+
+ {{ rzvehicle }}
+
+
认证车辆
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ robottotal }}
+
+
机器人总数
+
+
+
+ {{ kyrobot }}
+
+
可用机器人
+
+
+
+
+
+
-
-
-
认证公司
-
989
+
+
-
@@ -59,17 +152,32 @@
-
+
换电订单数
-
89
+
{{totalOrder}}
-
订单金额
-
599
+
收入金额{{totalmoney > 10000000?'(万元)':'(元)'}}
+
+
+ {{ jyamount }}
+
+
+
支出金额{{totalRefund > 10000000?'(万元)':'(元)'}}
+
{{zcamount}}
+
@@ -77,26 +185,224 @@
-
+
-
+
-
-
-
+
+
+
+
+
+ 日期
+ 订单量
+ 同比
+ 同比增长
+ 环比
+ 环比增长
+
+
+ {{tbhbdata.month}}
+ {{tbhbdata.quantity}}
+ {{tbhbdata.lastMonthQuantity}}
+
+
+
+
+
+
+
+ {{jytb}}
+ {{jytb}}
+
+
+ {{jytb}}
+
+
+
+
+
+
+
+ {{parseInt((jytb/tbhbdata.lastMonthQuantity)*100+'')}}%
+
+ 0%
+
+
+
+
+ {{parseInt((jytb*-1/tbhbdata.lastMonthQuantity)*100+'')}}%
+
+
+
+
+ {{tbhbdata.lastYearQuantity}}
+
+
+
+
+
+
+
+
+ {{jyhb}}
+ {{jyhb}}
+
+
+
+
+ {{jyhb}}
+
+
+
+
+
+
+ {{parseInt((jyhb/tbhbdata.lastYearQuantity)*100+'')}}%
+
+ 0%
+
+
+
+
+ {{parseInt((jyhb*-1/tbhbdata.lastYearQuantity)*100+'')}}%
+
+
+
+
+
+
+
+ 日期
+ 交易金额
+ 同比
+ 同比增长
+ 环比
+ 环比增长
+
+
+ {{tbhbdata.month}}
+ {{Math.trunc(tbhbdata.tradeAmount/100)}}
+
+ {{Math.trunc(tbhbdata.lastMonthTradeAmount/100)}}
+
+
+
+
+
+
+
+
+
+ {{jetb}}
+ {{jetb}}
+
+
+ {{jetb}}
+
+
+
+
+
+
+
+
+ {{parseInt((jetb/(tbhbdata.lastMonthTradeAmount/100))*100+'')}}%
+
+ 0%
+
+
+
+
+ {{parseInt((jetb*-1/(tbhbdata.lastMonthTradeAmount/100))*100+'')}}%
+
+
+
+
+
+ {{Math.trunc(tbhbdata.lastYearTradeAmount/100)}}
+
+
+
+
+
+
+
+ {{jehb}}
+ {{jehb}}
+
+
+ {{jehb*-1}}
+
+
+
+ +{{parseInt((jehb/tbhbdata.lastYearTradeAmount)*100+'')}}%
+ {{parseInt((jehb/tbhbdata.lastYearTradeAmount)*100+'')}}%
+ {{parseInt((jehb/tbhbdata.lastYearTradeAmount)*100+'')}}%
+
+
+
+
+
+ {{parseInt((jetb/(tbhbdata.lastYearTradeAmount/100))*100+'')}}%
+
+ 0%
+
+
+
+
+ {{parseInt((jetb*-1/(tbhbdata.lastYearTradeAmount/100))*100+'')}}%
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/order/reservation/index.vue b/src/views/order/reservation/index.vue
index b1337e5..94df2cf 100644
--- a/src/views/order/reservation/index.vue
+++ b/src/views/order/reservation/index.vue
@@ -1,24 +1,24 @@
-
+
-
+
-
-
-
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
搜索
重置
@@ -37,31 +70,40 @@
-
新增
+
+ 新增
+
+
+
+
-
+
+
+ {{formatDa(scope.row.swapDay)}}
+
+
- 预约成功
- 到店使用
- 取消
- 过期
+ 预约成功
+ 已使用
+ 已取消
+ 已过期
@@ -204,19 +246,35 @@
delhdz
} from '@/api/order/reservation'
import { carNum } from '@/utils/validate'
+
+ import {
+ getwxlist
+ } from '@/api/operation/wxuser'
+
+ import { formatDate } from '@/utils/ruoyi'
// import {
// getdict
// } from '@/api/systemSet/dict'
import { jsonp } from 'vue-jsonp'
import { ref,reactive} from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
+
+ function formatDa(s:any) {
+ return formatDate(s)
+ }
+
+ let search = ref(true)
let queryParams = reactive({
pageSize:20, //每页条数
pageNo:1, //页数
- userId:'', //换电车主ID
- status:''
+ ucode:'', //换电车主ID
+ status:'',
+ plateNum:'', //车牌号
+ swapDayBegin:'', //预约换电日期开始,示例值(yyyyMMdd)
+ swapDayEnd:'', //预约换电日期结束
+ stationCode:'' //换电站编码
})
//查询
@@ -230,7 +288,7 @@
//初始查询换电站
let yunList = ref([])
gethdzlist({
- pageSize:20, //每页条数
+ pageSize:100, //每页条数
pageNo:1, //页数
proxyId:'', //归属运营商ID
name:'', //站点名称
@@ -263,9 +321,9 @@
yysList.value.splice(0)
getjqrlist(queryParams).then(rps => {
if(rps.data){
- yysList.value = rps.data
- // yysList.value = (rps.data as any).records
- // total.value = (rps.data as any).total
+ //yysList.value = rps.data
+ yysList.value = (rps.data as any).records
+ total.value = (rps.data as any).total
}
})
}
@@ -292,6 +350,7 @@
let wxuser = ref('')
let addata = reactive({
userId:'', //预约人ID
+ //ucode:'', //预约人编码
uname:'', //预约人姓名
phone:'', //手机号码
plateNum:'', //车牌号
@@ -300,6 +359,17 @@
swapDay:'', //预约换电日期,示例值(yyyyMMdd)
swapDuration:'', //预约换电时间段,示例值(8:00-10:00)
status:'1' //状态:1-预约成功,2-到店使用,3-取消,4-过期
+
+ // source:'2', //来源:1-小程序,2-云端,3-站端
+ // ucode:'', //预约人编码
+ // uname:'', //预约人姓名
+ // phone:'', //手机号码
+ // plateNum:'', //车牌号
+ // stationCode:'', //换电站编码
+ // stationName:'', //换电站名称
+ // swapDay:'', //预约换电日期,示例值(yyyyMMdd)
+ // //reservationTime:'' //预约时间
+ // swapDuration:'' //预约换电时间段,示例值(8:00-10:00)
})
const rules = ref({
userId:[
@@ -321,38 +391,34 @@
})
//获取微信用户 ?? 暂时调用qq地图接口做个示例
+ //获取微信用户 ??
async function querySearchAsync (queryString: string, cb:any) {
- if(queryString !== ''){
- const url = 'https://apis.map.qq.com/ws/place/v1/suggestion' // 关键字查询??
- jsonp(url, {
- key: '3WDBZ-HMUCX-NIE43-ZPLQ4-OOHAO-OKBES', //ZJABZ-FWV6G-F7ZQ2-QKQKL-KQ3I5-DNBT7
- keyword: queryString,
- output: 'jsonp',
- }).then((res) => {
- console.log(res)
- if (res.status == 0) {
- // mapList.value = res.data;
- let listss
- listss = res.data.map((domain:any) => {
- return {
- value: domain.title ?`手机号:${domain.title}--昵称:${domain.address}`:domain.address,
- id: '123456' //??
- }
- })
- cb(listss)
- //return listss
- // callback(mapList.value);
- }else{
- cb([])
- }
- }).catch(() => {
- cb([])
+ getwxlist({
+ pageSize:100, //每页条数
+ pageNo:1, //页数
+ phoneNumber:'' //手机号
+ }).then((res) => {
+ if (res.data && (res.data as any).records.length > 0) {
+ // mapList.value = res.data;
+ let listss = (res.data as any).records.map((n:any) => {
+ return {
+ value: `${n.name?n.name:'--'}——${n.phoneNumber?n.phoneNumber:'--'}`,
+ name: n.name,
+ phoneNumber:n.phoneNumber,
+ id:n.wuid //??
+ }
})
- }{
- cb([])
+ cb(listss)
+ //return listss
+ // callback(mapList.value);
+ }else{
+ cb([])
}
-
+ }).catch(() => {
+ cb([])
+ })
}
+
function autoblur() {
if(addata.userId === ''){
@@ -366,21 +432,23 @@
function handleSelect(v: any) {
addata.userId = v.id
+ addata.uname = v.name //预约用户名称
+ addata.phone = v.phoneNumber //预约用户手机
}
-
+
function qsautoblur() {
- if(queryParams.userId === ''){
+ if(queryParams.ucode === ''){
qswxuser.value = ''
}
}
function qsautoclear() {
- queryParams.userId = ''
+ queryParams.ucode = ''
}
function qshandleSelect(v: any) {
- queryParams.userId = v.id
+ queryParams.ucode = v.id
}
//获取换电站名称
function getlabel(n:string){
@@ -410,6 +478,7 @@
function handleAdd() {
yysRef.value?.validate((valid:Boolean) => {
+ console.log(addata,'addata')
if (valid) {
savehand().then(() => {
ElMessage({
diff --git a/src/views/swapstation/battery/index.vue b/src/views/swapstation/battery/index.vue
index 32406ac..7e9609a 100644
--- a/src/views/swapstation/battery/index.vue
+++ b/src/views/swapstation/battery/index.vue
@@ -1,6 +1,6 @@
-
+
-
新增
+
+
+
+ 新增
+
+
+
+
+
+
+ 新增
+
@@ -287,7 +302,7 @@
// import {
// getdict
// } from '@/api/systemSet/dict'
- import { ref,reactive} from 'vue'
+ import { ref,reactive,computed} from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
const props = withDefaults(defineProps<{
@@ -304,6 +319,19 @@
update: []
}>()
+ let search = ref(true)
+ let theight = computed(() => {
+ if(props.zjtype == 1 && !search.value){
+ //?'600px':'400px'
+ return '680px'
+ }
+ if(props.zjtype == 1){
+ return '600px'
+ }
+ return '400px'
+ })
+
+
let queryParams = reactive({
pageSize:20, //每页条数
pageNo:1, //页数
diff --git a/src/views/swapstation/cdcl/costdetails.vue b/src/views/swapstation/cdcl/costdetails.vue
new file mode 100644
index 0000000..2273443
--- /dev/null
+++ b/src/views/swapstation/cdcl/costdetails.vue
@@ -0,0 +1,227 @@
+
+
+
+ 新增
+
+
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/swapstation/cdcl/index.vue b/src/views/swapstation/cdcl/index.vue
new file mode 100644
index 0000000..70ac554
--- /dev/null
+++ b/src/views/swapstation/cdcl/index.vue
@@ -0,0 +1,465 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+
+ {{scope.row.name}}
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{detalobj.name}}
+
+
+
+
+
+
+
+
+ 换电站:
+ {{detalobj.stationName}}
+
+
+
+
+ 最低数量:
+ {{detalobj.miniLimit}}
+
+
+
+
+ 状态:
+ {{detalobj.status == 1?'启用':'未启用'}}
+
+
+
+ 修改
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/swapstation/dcc/index.vue b/src/views/swapstation/dcc/index.vue
index 9ff3672..5aa86e3 100644
--- a/src/views/swapstation/dcc/index.vue
+++ b/src/views/swapstation/dcc/index.vue
@@ -1,6 +1,6 @@
-
+
-
新增
+
+
+
+ 新增
+
+
+
+
+
+
+ 新增
+
()
+ let search = ref(true)
+
let queryParams = reactive({
pageSize:20, //每页条数
pageNo:1, //页数
diff --git a/src/views/swapstation/electmach/index.vue b/src/views/swapstation/electmach/index.vue
index e6202b4..107d3b0 100644
--- a/src/views/swapstation/electmach/index.vue
+++ b/src/views/swapstation/electmach/index.vue
@@ -1,6 +1,6 @@
-
+
-
新增
+
+
+ 新增
+
+
+
+
+
+
+ 新增
+
-
-
-
-
+
+
+
+
修改
@@ -78,7 +78,7 @@
-->
-
+
-
+
-
+
-
+
-
+
-
+ 新增
+
+
+
+
+
{{scope.row.name}}
-
-
+
+
+ {{scope.row.dayBegin.replace(/^(\d{4})(\d{2})(\d{2})$/, '$1-$2-$3')}}
+
+
+
+
+ {{scope.row.dayEnd.replace(/^(\d{4})(\d{2})(\d{2})$/, '$1-$2-$3')}}
+
+
-
+
-
+
-
+
@@ -133,7 +148,7 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
费用标准
-
-
+
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
确 定
重 置
@@ -350,7 +392,7 @@
-
+
费用标准明细
-
+
-
+ 新增
+
+
+
+
+
@@ -334,33 +341,54 @@
-
+
基础信息
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -391,7 +419,7 @@
-
+
-->
-
+
-
+
-
+
-
+
-
+
是
@@ -479,7 +507,7 @@
-
+
- 确 定
+ 保 存
重 置
-
+
机器人
addata.dcQuantity,(v)=> {
addata.dcQuantity = addata.dcQuantity.replace(/[^\d]/g,'')
})
-
+ let urlcode = ref('')
function showpop(num:any,row?:any){
type.value = num
if(type.value == 1){
@@ -839,6 +872,19 @@
dcclist.value = row.dccList
batlist.value = row.dcList
+ //获取小程序码
+ getqrcode({
+ path:`pages/home/index?code=${addata.code}`,
+ width:'400',
+ env_version:'trial' //要打开的小程序版本。正式版为"release",体验版为"trial",开发版为"develop"。默认是正式版。
+ }).then((rps:any) => {
+ let reader = new FileReader()
+ reader.readAsDataURL(rps) // 转换为base64
+ reader.onload = function () {
+ urlcode.value = reader.result
+ }
+ })
+
}else{
slecas.value = ''
@@ -971,6 +1017,8 @@
options.value = rps.data
})
+
+
getyys()
\ No newline at end of file
diff --git a/src/views/swapstation/robot/index.vue b/src/views/swapstation/robot/index.vue
index f0ae750..3e0e83a 100644
--- a/src/views/swapstation/robot/index.vue
+++ b/src/views/swapstation/robot/index.vue
@@ -1,6 +1,6 @@
-
+
-
新增
+
+
+ 新增
+
+
+
+
+
+
+ 新增
+
+
+
-
+
@@ -340,7 +340,7 @@
zidform.sort = row.sort
}else{
zidform.typeId = typeId.value
- zidform.typeCode =
+ zidform.typeCode = typecode.value
zidform.dictName = ''
zidform.dictCode = ''
zidform.dictValue = ''
@@ -368,7 +368,13 @@
setTimeout(() => {
zidpop.value = false
- showzdv(typeId.value)
+
+ getdict({
+ typeId:typeId.value
+ }).then(rps => {
+ valist.value = rps.data as any
+ })
+
},1000)
})
}
diff --git a/src/views/vehicle/car/index.vue b/src/views/vehicle/car/index.vue
index b06a1cf..da52f34 100644
--- a/src/views/vehicle/car/index.vue
+++ b/src/views/vehicle/car/index.vue
@@ -1,6 +1,6 @@
-
+
-
+ 新增
+
+
+
+
+
{{scope.row.plateNum}}
-
-
+
+
个人
企业
-
-
+
+
电量
@@ -79,18 +85,36 @@
-
-
-
-
+
+
+ {{formatDa(scope.row.productionDate)}}
+
+
+
+
+ {{formatDa(scope.row.purchaseDate)}}
+
+
+
+
+ {{formatDa(scope.row.boardDate)}}
+
+
+
+
+
+ {{formatDa(scope.row.registrationDate)}}
+
+
+
-
-
+
+
- 绑定公司
- 绑定个人
+
删除
@@ -110,7 +134,231 @@
-
+
+
+
+
+
+
+
车辆信息
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 个人
+ 企业
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 保 存
+ 重 置
+
+
+
+
+
+
+
车辆绑定
+
+
+
+
+
+
+
+
+
+
+ 解绑
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -189,8 +437,8 @@
-
-
+
+
@@ -226,7 +474,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
-
-
+
+
+
@@ -355,7 +637,7 @@
@@ -369,7 +651,9 @@
update,
delhdz,
Binggs,
- Bingwx
+ Bingwx,
+ getcarwxlist,
+ unbindwx
} from '@/api/swapstation/vehicle'
import {
getdicttype
@@ -386,6 +670,8 @@
} from '@/api/operation/wxuser'
import { carNum } from '@/utils/validate'
+
+ import { formatDate } from '@/utils/ruoyi'
// import {
// getdict
// } from '@/api/systemSet/dict'
@@ -394,6 +680,12 @@
import { useRouter } from 'vue-router'
+ function formatDa(s:any) {
+ return formatDate(s)
+ }
+
+ let search = ref(true)
+
//跳转到公司页面
let isgongs = ref(true)
const router = useRouter()
@@ -407,7 +699,7 @@
typeCode:'', //型号编码
vinNo:'', //车辆识别代码VIN号
frameworkNo:'', //车架号
- ownerType:'1', //车主类型:1-个人,2-企业
+ ownerType:'', //车主类型:1-个人,2-企业
ownerId:'', //车主ID
ownerName:'', //车主名称
plateNum:'', //车牌号
@@ -496,7 +788,18 @@
addata.cname = v.value //公司名称
addata.ccode = v.code //组织机构代码
}
-
+
+ let wxstate = ref('')
+
+ function wxhandleSelect(v: any) {
+ wxParams.pcode = v.code //父账户编码
+ }
+
+ //详情
+ let xqdaropen = ref(false)
+
+
+
//新增、修改
let type = ref(1)
let openpop = ref(false)
@@ -582,14 +885,29 @@
addata.totalMileage = v.replace(/[^0-9]/g,'')
})
watch(() => addata.phone,v => {
- addata.phone = v.replace(/[^0-9]/g,'')
+ if(v){
+ addata.phone = v.replace(/[^0-9]/g,'')
+ }
+
})
+ function resetupdate() {
+ yysRef.value?.resetFields()
+ }
+
function showpop(num:any,row?:any){
type.value = num
- openpop.value = true
+ // openpop.value = true
ystit.value = num == 1?'添加车辆':'修改车辆'
yysRef.value?.resetFields()
+
+
+ if(type.value == 1){
+ openpop.value = true
+ }else if(type.value == 2){
+ xqdaropen.value = true
+ }
+
if(row){
addata.typeCode = row.typeCode
addata.vinNo = row.vinNo
@@ -613,7 +931,9 @@
addata.phone = row.phone
addata.cname = row.cname
state.value = row.cname
- addata.ccode = row.ccode
+ addata.ccode = row.ccode
+
+ getcaruser(row.plateNum)
}else{
addata.typeCode = ''
addata.vinNo = ''
@@ -658,6 +978,7 @@
})
setTimeout(()=> {
openpop.value = false
+ xqdaropen.value = false
getyys()
},600)
})
@@ -717,6 +1038,16 @@
pageSize:20, //每页条数
pageNo:1 //页数
})
+
+ let wxParams = reactive({
+ pageSize:20, //每页条数
+ pageNo:1, //页数
+ phoneNumber:'', //手机号
+ name:'', //名称
+ pcode:'' //父账户编码
+ })
+
+ let bddisabled = ref(false)
function showbdgs(type:number,plateNum:string){
bdtype.value = type
bdgspop.value = true
@@ -731,8 +1062,25 @@
wxobj.uname = ''
wxobj.ownerType = ''
wxobj.phone = ''
- wxobj.openid = ''
+ wxobj.openid = ''
}
+
+ wxParams.pageSize = 20 //每页条数
+ wxParams.pageNo = 1 //页数
+ wxParams.phoneNumber = '' //手机号
+ wxParams.name = '' //名称
+
+ if(addata.ownerType == '2'){
+ bddisabled.value = true
+ wxParams.pcode = addata.ccode
+ wxstate.value = addata.cname
+ }else{
+ bddisabled.value = false
+ wxParams.pcode = ''
+ wxstate.value = ''
+ }
+
+
getsglist()
}
@@ -740,7 +1088,7 @@
if(bdtype.value == 1){
return getlist(gsqueryParams)
}
- return getwxlist(gsqueryParams)
+ return getwxlist(wxParams)
}
function bingsave(){
@@ -773,7 +1121,8 @@
message: '绑定成功'
})
bdgspop.value = false
- getyys()
+ getcaruser(addata.plateNum)
+ //getyys()
})
}else{
ElMessage({
@@ -836,9 +1185,68 @@
}
}
+
+ //查询微信用户
+
+ let wxquerform = ref()
+
+
+ function wxhandBtnqu() {
+ wxParams.pageNo = 1
+ getsglist()
+ }
+
+ function wresetQuery() {
+ wxquerform.value?.resetFields()
+ }
+
+ //车辆绑定
+ let activeName = ref(0)
+
+ //车辆绑定的微信用户
+ let caruserlist = ref([])
+ function getcaruser(plateNum:string){
+ getcarwxlist(plateNum).then(rps => {
+ caruserlist.value = rps.data
+ })
+ }
+
+ //解绑微信用户
+ function unbinduser(row:any) {
+ ElMessageBox.confirm(
+ `${row.uname}确定解绑车辆?`,
+ '温馨提示',
+ {
+ // confirmButtonText: '',
+ // cancelButtonText: 'Cancel',
+ type: 'warning',
+ }
+ ).then(() => {
+ unbindwx(row.pkId).then(() => {
+ ElMessage({
+ type: 'success',
+ message: '解绑成功'
+ })
+ getcaruser(addata.plateNum)
+ })
+ })
+ }
+
+ function handleClick() {}
\ No newline at end of file
diff --git a/src/views/vehicle/company/account.vue b/src/views/vehicle/company/account.vue
new file mode 100644
index 0000000..ed230fc
--- /dev/null
+++ b/src/views/vehicle/company/account.vue
@@ -0,0 +1,495 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 保 存
+ 重 置
+
+
+
+
+ 暂未开通账户
+ 开 通
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/vehicle/company/index.vue b/src/views/vehicle/company/index.vue
index 7d2efa5..4a2aaa1 100644
--- a/src/views/vehicle/company/index.vue
+++ b/src/views/vehicle/company/index.vue
@@ -1,6 +1,6 @@
-
+
-
+ 新增
+ @click="showpop()">新增
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+ {{scope.row.cname}}
+
+
+
+
+
+
+
+
+
+ {{scope.row.accountBalance/100}}
+
+
+
启用
禁用
@@ -75,9 +90,9 @@
{{ dayjs(scope.row.createTime).format("YYYY-MM-DD HH:mm:ss") }}
-->
-
+
- 修改
+
删除
@@ -213,6 +228,143 @@
+
+
+
+
+
+
+
基本信息
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 启用
+ 禁用
+
+
+
+
+
+ 保 存
+ 重 置
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/vehicle/wxuser/index.vue b/src/views/vehicle/wxuser/index.vue
index 8bca7d2..02b5e99 100644
--- a/src/views/vehicle/wxuser/index.vue
+++ b/src/views/vehicle/wxuser/index.vue
@@ -1,6 +1,6 @@
-
+
+
+
+
+
+
-
-
-
- {{scope.row.phoneNumber}}
+
+
+ {{(queryParams.pageNo - 1) * queryParams.pageSize+ $index + 1}}
+
+
+
+
+ {{scope.row.phoneNumber?scope.row.phoneNumber:'暂未绑定'}}
+
+
+
+
+ {{scope.row.name?scope.row.name:'暂未设置'}}
+
+
+
+
+ {{scope.row.nickName?scope.row.nickName:'暂未设置'}}
-
-
- 男
- 女
+ 男
+ 女
+ 暂未设置
-
+
个人
公司
@@ -144,6 +162,11 @@
+
+
+
+
+
@@ -164,9 +187,14 @@
import {
getlist
} from '@/api/operation/company'
+ import {
+ getjqrlist
+ } from '@/api/order/account'
import { ref,reactive,watch} from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
+ let search = ref(true)
+
let queryParams = reactive({
pageSize:20, //每页条数
pageNo:1, //页数
@@ -305,6 +333,8 @@
addata.phone = v.replace(/[^\d]/g,'')
})
+ let totalAmount = ref('')
+
function showpop(row?:any){
openpop.value = true
yysRef.value?.resetFields()
@@ -312,6 +342,19 @@
addata.wuid = row.wuid
addata.name = row.name?row.name:''
addata.phone = row.phoneNumber?row.phoneNumber:''
+
+ getjqrlist({
+ pageSize:20, //每页条数
+ pageNo:1, //页数
+ ownerId:row.wuid //户主ID
+ }).then(rps => {
+ if(rps.data && (rps.data as any).records.length > 0){
+ totalAmount.value = (rps.data as any).records[0].totalAmount
+ totalAmount.value = totalAmount.value/100
+ }else{
+ totalAmount.value = '暂未开通'
+ }
+ })
}
}