diff --git a/src/views/dashboard/component/ModelBarChart.vue b/src/views/dashboard/component/ModelBarChart.vue
index 4450ecf..a6c88f8 100644
--- a/src/views/dashboard/component/ModelBarChart.vue
+++ b/src/views/dashboard/component/ModelBarChart.vue
@@ -88,7 +88,7 @@ export default {
},
series: [{
colorBy: 'data',
- name: "设备数量",
+ name: "型号数量",
color: [
'#2CAB40',
'#86DF6C',
diff --git a/src/views/dashboard/component/UserRoundPieChart.vue b/src/views/dashboard/component/UserRoundPieChart.vue
index 8daadab..f635134 100644
--- a/src/views/dashboard/component/UserRoundPieChart.vue
+++ b/src/views/dashboard/component/UserRoundPieChart.vue
@@ -77,7 +77,7 @@ export default {
'#8D4EDA',
'#00B2FF'
],
- radius: ['60%', '90%'],
+ radius: ['50%', '80%'],
avoidLabelOverlap: false,
itemStyle: {
borderRadius: 0,
diff --git a/src/views/ss/access/index.vue b/src/views/ss/access/index.vue
new file mode 100644
index 0000000..ea17800
--- /dev/null
+++ b/src/views/ss/access/index.vue
@@ -0,0 +1,294 @@
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ******
+
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/ss/store/index.vue b/src/views/ss/store/index.vue
index 7354ea9..0ef49ea 100644
--- a/src/views/ss/store/index.vue
+++ b/src/views/ss/store/index.vue
@@ -1,7 +1,7 @@
-
+
-
+
-
+
@@ -213,11 +213,21 @@ import UserInput from '@/components/Business/SmUser/UserInput.vue'
import PlaceSearchDialog from '@/components/Map/PlaceSearch/PlaceSearchDialog.vue'
import AreaTextSelect from '@/components/AreaTextSelect/index.vue'
import { parseTime } from '../../../utils/ruoyi'
+import { $view } from '@/utils/mixins'
export default {
name: "Store",
+ mixins: [$view],
dicts: ['ss_store_type'],
components: { AreaTextSelect, PlaceSearchDialog, UserInput, SmUserSelect },
+ props: {
+ query: {
+ type: Object,
+ default: () => {
+ return {}
+ }
+ }
+ },
data() {
return {
// 遮罩层
@@ -298,6 +308,10 @@ export default {
}
},
created() {
+ this.queryParams = {
+ ...this.queryParams,
+ ...this.query
+ }
this.getList();
},
methods: {
@@ -329,7 +343,7 @@ export default {
reset() {
this.form = {
storeId: null,
- userId: null,
+ userId: this.query.userId,
picture: null,
name: null,
address: null,
diff --git a/src/views/system/device/detail.vue b/src/views/system/device/detail.vue
index a26e894..1ca99be 100644
--- a/src/views/system/device/detail.vue
+++ b/src/views/system/device/detail.vue
@@ -15,10 +15,10 @@
时长归零
- 强制开启
+ 强制开启
- 强制关闭
+ 强制关闭
强制解绑
@@ -49,21 +49,58 @@
- {{deviceData.userName | defaultValue}}
- {{deviceData.storeName | defaultValue}}
+
+ {{isOpen ? '已开启' : '已关闭'}}
+
{{deviceData.wifi | defaultValue}}
{{surplusTimeDesc(surplusTime).text}}
{{surplusTimeDesc(deviceData.remainTime).text}}
-
+
+
+
+
+
+
+
+
+ {{deviceData.deviceName | defaultValue}}
+
+
+
{{deviceData.remark | defaultValue}}
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -106,7 +143,7 @@
import { addTime, getDevice, refreshIot, resetDevice, switchDevice, unbind } from '@/api/system/device'
import LineChart from "@/views/dashboard/LineChart.vue";
import RechargeRecord from "@/views/system/device/components/rechargeRecord.vue";
-import {formatDate} from "@/utils";
+import { findLabel, formatDate } from '@/utils'
import QrCode from "@/components/QrCode/index.vue";
import MeterRecordReport from "@/views/system/device/components/meterRecordReport.vue";
import ReadingRecord from "@/views/system/device/components/readingRecord.vue";
@@ -118,10 +155,14 @@ import SuitList from '@/views/system/device/components/suitList.vue'
import Suit from '@/views/ss/suit/index.vue'
import RecordTime from '@/views/ss/time/index.vue'
import { toDescriptionFromSecond } from '@/utils/date'
+import StoreLink from '@/components/Business/Store/StoreLink.vue'
+import UserLink from '@/components/Business/SmUser/UserLink.vue'
export default {
name: 'deviceDetail',
components: {
+ UserLink,
+ StoreLink,
RecordTime,
Suit,
SuitList,
@@ -154,6 +195,9 @@ export default {
return (second) => {
return toDescriptionFromSecond(second);
}
+ },
+ isOpen() {
+ return this.deviceData != null && this.deviceData.powerStatus === '1';
}
},
created() {
@@ -163,6 +207,7 @@ export default {
clearInterval(this.timer);
},
methods: {
+ findLabel,
handleUnbnd() {
this.$confirm('是否强制解绑该设备?', '警告', {
confirmButtonText: '确定',
@@ -189,6 +234,7 @@ export default {
switchDevice(this.deviceData.deviceId, open).then(res => {
if (res.code === 200) {
this.$message.success("操作成功");
+ this.deviceData.powerStatus = open ? '1' : '0';
}
}).finally(() => {
this.loading = false;
diff --git a/src/views/system/smUser/components/userRechargeReport.vue b/src/views/system/smUser/components/userRechargeReport.vue
index d097157..38c50c3 100644
--- a/src/views/system/smUser/components/userRechargeReport.vue
+++ b/src/views/system/smUser/components/userRechargeReport.vue
@@ -7,7 +7,7 @@
-
+
diff --git a/src/views/system/smUser/detail.vue b/src/views/system/smUser/detail.vue
index 86db6b9..3e82156 100644
--- a/src/views/system/smUser/detail.vue
+++ b/src/views/system/smUser/detail.vue
@@ -13,12 +13,12 @@
- {{userData.wxOpenId}}
- {{userData.storeCount}} 家
- {{userData.deviceCount}} 台
- {{userData.balance | money}} 元
- {{userData.totalIncome | money}} 元
- {{userData.withDrawlAmount | money}} 元
+ {{userData.wxOpenId | defaultValue}}
+ {{userData.storeCount | defaultValue}} 家
+ {{userData.deviceCount | defaultValue}} 台
+ {{userData.balance | money | defaultValue}} 元
+ {{userData.totalIncome | money | defaultValue}} 元
+ {{userData.withDrawlAmount | money | defaultValue}} 元
{{userData.serviceRate == null ? '未设置' : userData.serviceRate + '%' }}
@@ -36,9 +36,15 @@
+
+
+
+
+
+
@@ -50,10 +56,14 @@ import {getSmUser} from "@/api/system/smUser";
import UserDevice from "@/views/system/smUser/components/userDevice.vue";
import UserAccount from "@/views/system/smUser/components/userAccount.vue";
import UserRechargeReport from "@/views/system/smUser/components/userRechargeReport.vue";
+import Access from '@/views/ss/access/index.vue'
+import { $view } from '@/utils/mixins'
+import Store from '@/views/ss/store/index.vue'
export default {
name: 'deviceDetail',
- components: {UserRechargeReport, UserAccount, UserDevice, LineChart},
+ mixins: [$view],
+ components: { Store, Access, UserRechargeReport, UserAccount, UserDevice, LineChart},
dicts: ['sm_user_type'],
data() {
return {
@@ -103,6 +113,6 @@ export default {
}
.user-detail .user-description {
flex: 1;
- margin-top: 64px;
+ margin-top: 32px;
}