parent
bc83edb7ce
commit
dada33948a
@ -0,0 +1,8 @@
|
||||
# 默认忽略的文件
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# 基于编辑器的 HTTP 客户端请求
|
||||
/httpRequests/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
||||
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="KubernetesApiProvider"><![CDATA[{}]]></component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="21" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
||||
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/WaterManager.iml" filepath="$PROJECT_DIR$/.idea/WaterManager.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
File diff suppressed because it is too large
Load Diff
@ -1 +1 @@
|
||||
{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["<script setup>\r\nimport { onLaunch, onShow, onHide } from '@dcloudio/uni-app'\r\nimport { setTabBar } from './utils/tabBar.js'\r\n\r\nonLaunch(() => {\r\n\tconsole.log('App Launch - 数智水管家')\r\n\t// 根据存储的角色设置 tabBar\r\n\tconst userRole = uni.getStorageSync('userRole') || 'user'\r\n\tsetTabBar(userRole)\r\n})\r\n\r\nonShow(() => {\r\n\tconsole.log('App Show')\r\n})\r\n\r\nonHide(() => {\r\n\tconsole.log('App Hide')\r\n})\r\n</script>\r\n\r\n<style>\r\n/* 全局样式 */\r\npage {\r\n\tbackground-color: #f5f5f5;\r\n\tfont-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;\r\n}\r\n</style>\r\n","import App from './App'\n\n// #ifndef VUE3\nimport Vue from 'vue'\nimport './uni.promisify.adaptor'\nVue.config.productionTip = false\nApp.mpType = 'app'\nconst app = new Vue({\n ...App\n})\napp.$mount()\n// #endif\n\n// #ifdef VUE3\nimport { createSSRApp } from 'vue'\nexport function createApp() {\n const app = createSSRApp(App)\n return {\n app\n }\n}\n// #endif"],"names":["onLaunch","uni","setTabBar","onShow","onHide","createSSRApp","App"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIAA,kBAAAA,SAAS,MAAM;AACdC,oBAAAA,MAAA,MAAA,OAAA,gBAAY,oBAAoB;AAEhC,YAAM,WAAWA,cAAG,MAAC,eAAe,UAAU,KAAK;AACnDC,mBAAAA,UAAU,QAAQ;AAAA,IACnB,CAAC;AAEDC,kBAAAA,OAAO,MAAM;AACZF,oBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,IACvB,CAAC;AAEDG,kBAAAA,OAAO,MAAM;AACZH,oBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,IACvB,CAAC;;;;;ACFM,SAAS,YAAY;AAC1B,QAAM,MAAMI,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}
|
||||
{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["<script setup>\r\nimport { onLaunch, onShow, onHide } from '@dcloudio/uni-app'\r\nimport { setTabBar } from './utils/tabBar.js'\r\n\r\nonLaunch(() => {\r\n\tconsole.log('App Launch - 数智水管家')\r\n\t// 根据存储的角色设置 tabBar\r\n\tconst userRole = uni.getStorageSync('userRole') || 'user'\r\n\tsetTabBar(userRole)\r\n})\r\n\r\nonShow(() => {\r\n\tconsole.log('App Show')\r\n})\r\n\r\nonHide(() => {\r\n\tconsole.log('App Hide')\r\n})\r\n</script>\r\n\r\n<style>\r\n/* 全局样式 */\r\npage {\r\n\tbackground-color: #f5f5f5;\r\n\tfont-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;\r\n}\r\n</style>\r\n","import App from './App'\n\n// #ifndef VUE3\nimport Vue from 'vue'\nimport './uni.promisify.adaptor'\nVue.config.productionTip = false\nApp.mpType = 'app'\nconst app = new Vue({\n ...App\n})\napp.$mount()\n// #endif\n\n// #ifdef VUE3\nimport { createSSRApp } from 'vue'\nexport function createApp() {\n const app = createSSRApp(App)\n return {\n app\n }\n}\n// #endif"],"names":["onLaunch","uni","setTabBar","onShow","onHide","createSSRApp","App"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIAA,kBAAAA,SAAS,MAAM;AACdC,oBAAAA,MAAA,MAAA,OAAA,gBAAY,oBAAoB;AAEhC,YAAM,WAAWA,cAAG,MAAC,eAAe,UAAU,KAAK;AACnDC,mBAAAA,UAAU,QAAQ;AAAA,IACnB,CAAC;AAEDC,kBAAAA,OAAO,MAAM;AACZF,oBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,IACvB,CAAC;AAEDG,kBAAAA,OAAO,MAAM;AACZH,oBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,IACvB,CAAC;;;;;ACFM,SAAS,YAAY;AAC1B,QAAM,MAAMI,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
<view class="device-detail-container data-v-abb22ecf"><scroll-view class="detail-content data-v-abb22ecf" scroll-y><view class="status-card data-v-abb22ecf"><view class="device-icon-wrapper data-v-abb22ecf"><text class="device-icon data-v-abb22ecf">💧</text></view><text class="{{['device-status-text', 'data-v-abb22ecf', b]}}">{{a}}</text><text class="device-name data-v-abb22ecf">{{c}}</text></view><view class="filter-section data-v-abb22ecf"><view class="section-title data-v-abb22ecf">滤芯寿命</view><view class="filter-list data-v-abb22ecf"><view wx:for="{{d}}" wx:for-item="filter" wx:key="g" class="filter-item data-v-abb22ecf"><view class="filter-header data-v-abb22ecf"><text class="filter-name data-v-abb22ecf">{{filter.a}}</text><text class="filter-remain data-v-abb22ecf">剩余 {{filter.b}}%</text></view><view class="progress-bar data-v-abb22ecf"><view class="progress-fill data-v-abb22ecf" style="{{'width:' + filter.c + ';' + ('background:' + filter.d)}}"></view></view><view class="filter-info data-v-abb22ecf"><text class="filter-model data-v-abb22ecf">型号:{{filter.e}}</text><text class="filter-time data-v-abb22ecf">预计更换:{{filter.f}}</text></view></view></view></view><view class="info-section data-v-abb22ecf"><view class="section-title data-v-abb22ecf">设备信息</view><view class="info-list data-v-abb22ecf"><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">设备编号:</text><text class="info-value data-v-abb22ecf">{{e}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">设备类型:</text><text class="info-value data-v-abb22ecf">{{f}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">滤芯型号:</text><text class="info-value data-v-abb22ecf">{{g}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">设备地址:</text><text class="info-value data-v-abb22ecf">{{h}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">绑定时间:</text><text class="info-value data-v-abb22ecf">{{i}}</text></view></view></view><view class="action-section data-v-abb22ecf"><button class="action-btn primary-btn data-v-abb22ecf" bindtap="{{j}}">更换滤芯</button><button class="action-btn secondary-btn data-v-abb22ecf" bindtap="{{k}}">设备配置</button><button class="action-btn tertiary-btn data-v-abb22ecf" bindtap="{{l}}">水质查看</button></view></scroll-view></view>
|
||||
<view class="device-detail-container data-v-abb22ecf"><scroll-view class="detail-content data-v-abb22ecf" scroll-y><view class="status-card data-v-abb22ecf"><view class="device-icon-wrapper data-v-abb22ecf"><text class="device-icon data-v-abb22ecf">💧</text></view><text class="{{['device-status-text', 'data-v-abb22ecf', b]}}">{{a}}</text><text class="device-name data-v-abb22ecf">{{c}}</text></view><view class="filter-section data-v-abb22ecf"><view class="section-title data-v-abb22ecf">滤芯寿命</view><view class="filter-list data-v-abb22ecf"><view wx:for="{{d}}" wx:for-item="filter" wx:key="g" class="filter-item data-v-abb22ecf"><view class="filter-header data-v-abb22ecf"><text class="filter-name data-v-abb22ecf">{{filter.a}}</text><text class="filter-remain data-v-abb22ecf">剩余 {{filter.b}}%</text></view><view class="progress-bar data-v-abb22ecf"><view class="progress-fill data-v-abb22ecf" style="{{'width:' + filter.c + ';' + ('background:' + filter.d)}}"></view></view><view class="filter-info data-v-abb22ecf"><text class="filter-model data-v-abb22ecf">型号:{{filter.e}}</text><text class="filter-time data-v-abb22ecf">预计更换:{{filter.f}}</text></view></view></view></view><view class="water-quality-section data-v-abb22ecf"><view class="section-title data-v-abb22ecf">最新水质情况</view><view wx:if="{{e}}" class="water-quality-card data-v-abb22ecf"><view class="quality-header data-v-abb22ecf"><text class="{{['quality-level', 'data-v-abb22ecf', g]}}">{{f}}</text><text class="quality-date data-v-abb22ecf">{{h}} 检测</text></view><text class="quality-desc data-v-abb22ecf">{{i}}</text><view class="indicator-grid data-v-abb22ecf"><view wx:for="{{j}}" wx:for-item="indicator" wx:key="f" class="indicator-item data-v-abb22ecf"><text class="indicator-name data-v-abb22ecf">{{indicator.a}}</text><text class="indicator-value data-v-abb22ecf">{{indicator.b}} {{indicator.c}}</text><text class="{{['indicator-status', 'data-v-abb22ecf', indicator.e]}}">{{indicator.d}}</text></view></view><view class="quality-actions data-v-abb22ecf"><button class="quality-btn data-v-abb22ecf" bindtap="{{k}}">查看全部检测</button><button class="quality-btn outline data-v-abb22ecf" bindtap="{{l}}">查看报告</button></view></view><view wx:else class="water-quality-empty data-v-abb22ecf"><text class="data-v-abb22ecf">暂无最新水质数据</text></view></view><view class="info-section data-v-abb22ecf"><view class="section-title data-v-abb22ecf">设备信息</view><view class="info-list data-v-abb22ecf"><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">设备编号:</text><text class="info-value data-v-abb22ecf">{{m}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">设备类型:</text><text class="info-value data-v-abb22ecf">{{n}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">滤芯型号:</text><text class="info-value data-v-abb22ecf">{{o}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">设备地址:</text><text class="info-value data-v-abb22ecf">{{p}}</text></view><view class="info-item data-v-abb22ecf"><text class="info-label data-v-abb22ecf">绑定时间:</text><text class="info-value data-v-abb22ecf">{{q}}</text></view></view></view><view class="action-section data-v-abb22ecf"><button class="action-btn primary-btn data-v-abb22ecf" bindtap="{{r}}">更换滤芯</button><button class="action-btn secondary-btn data-v-abb22ecf" bindtap="{{s}}">设备配置</button><button class="action-btn tertiary-btn data-v-abb22ecf" bindtap="{{t}}">水质查看</button></view></scroll-view></view>
|
||||
@ -0,0 +1,4 @@
|
||||
{
|
||||
"navigationBarTitleText": "水质预警",
|
||||
"usingComponents": {}
|
||||
}
|
||||
@ -0,0 +1 @@
|
||||
<view class="alert-page data-v-8e31728d"><view class="notice-bar data-v-8e31728d"><text class="notice-icon data-v-8e31728d">💧</text><text class="notice-text data-v-8e31728d">以下设备近期水质指标异常,请及时复检或联系工作人员</text></view><scroll-view class="alert-list data-v-8e31728d" scroll-y><view wx:if="{{a}}" class="empty-state data-v-8e31728d"><text class="empty-icon data-v-8e31728d">✅</text><text class="empty-text data-v-8e31728d">暂无水质预警</text></view><block wx:else><view wx:for="{{b}}" wx:for-item="item" wx:key="j" class="alert-card data-v-8e31728d"><view class="card-header data-v-8e31728d"><text class="device-name data-v-8e31728d">{{item.a}}</text><text class="{{['badge', 'data-v-8e31728d', item.c]}}">{{item.b}}</text></view><view class="card-content data-v-8e31728d"><text class="row data-v-8e31728d">设备编号:{{item.d}}</text><text class="row data-v-8e31728d">最近检测值:{{item.e}}</text><text class="row data-v-8e31728d">最近检测时间:{{item.f}}</text></view><view class="card-actions data-v-8e31728d"><button class="action-btn detail-btn data-v-8e31728d" bindtap="{{item.g}}">查看设备</button><button class="action-btn report-btn data-v-8e31728d" bindtap="{{item.h}}">查看报告</button><button class="action-btn contact-btn data-v-8e31728d" bindtap="{{item.i}}">联系工作人员</button></view></view></block></scroll-view></view>
|
||||
@ -0,0 +1,4 @@
|
||||
{
|
||||
"navigationBarTitleText": "检测报告",
|
||||
"usingComponents": {}
|
||||
}
|
||||
@ -0,0 +1 @@
|
||||
<view class="detail-container data-v-9475c2ac"><view wx:if="{{a}}" class="content data-v-9475c2ac"><view class="header-card data-v-9475c2ac"><view class="status-row data-v-9475c2ac"><view class="{{['status-badge', 'data-v-9475c2ac', c]}}"><text class="data-v-9475c2ac">{{b}}</text></view><text class="report-date data-v-9475c2ac">{{d}}</text></view><view class="quality-row data-v-9475c2ac"><text class="quality-label data-v-9475c2ac">水质等级</text><text class="quality-value data-v-9475c2ac" style="{{'color:' + f}}">{{e}}</text></view><view class="address-row data-v-9475c2ac"><text class="address-icon data-v-9475c2ac">📍</text><text class="address-text data-v-9475c2ac">{{g}}</text></view></view><view class="section-card data-v-9475c2ac"><view class="section-header data-v-9475c2ac"><text class="section-title data-v-9475c2ac">检测指标</text><text class="section-subtitle data-v-9475c2ac">采样时间:{{h}}</text></view><view wx:if="{{i}}" class="indicator-grid data-v-9475c2ac"><view wx:for="{{j}}" wx:for-item="item" wx:key="e" class="indicator-item data-v-9475c2ac"><text class="indicator-name data-v-9475c2ac">{{item.a}}</text><text class="indicator-value data-v-9475c2ac">{{item.b}}</text><text class="indicator-unit data-v-9475c2ac">{{item.c}}</text><text class="indicator-standard data-v-9475c2ac">标准范围:{{item.d}}</text></view></view><view wx:else class="empty-indicator data-v-9475c2ac"><text class="data-v-9475c2ac">检测数据生成中,请稍后查看。</text></view></view><view class="section-card data-v-9475c2ac"><view class="section-header data-v-9475c2ac"><text class="section-title data-v-9475c2ac">检测结论</text></view><view class="conclusion-block data-v-9475c2ac"><text class="conclusion-text data-v-9475c2ac">{{k}}</text></view><view wx:if="{{l}}" class="tips-list data-v-9475c2ac"><view wx:for="{{m}}" wx:for-item="tip" wx:key="b" class="tips-item data-v-9475c2ac"><text class="tips-icon data-v-9475c2ac">💡</text><text class="tips-text data-v-9475c2ac">{{tip.a}}</text></view></view></view><view class="section-card data-v-9475c2ac"><view class="section-header data-v-9475c2ac"><text class="section-title data-v-9475c2ac">服务操作</text></view><view class="action-group data-v-9475c2ac"><button class="action-btn primary data-v-9475c2ac" bindtap="{{n}}">下载检测报告</button><button class="action-btn secondary data-v-9475c2ac" bindtap="{{o}}">联系工作人员</button></view></view></view><view wx:else class="empty-state data-v-9475c2ac"><text class="empty-icon data-v-9475c2ac">📄</text><text class="empty-title data-v-9475c2ac">未找到检测报告</text><text class="empty-desc data-v-9475c2ac">请返回上一页重新选择检测记录。</text><button class="back-btn data-v-9475c2ac" bindtap="{{p}}">返回</button></view></view>
|
||||
Loading…
Reference in new issue