From a3a1e6aea54deff8fe573ab1435f501cb8dc7312 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Wed, 15 Oct 2025 18:33:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/pages/map/index.vue | 65 ++--------
src/pages/login/index.vue | 59 +++++----
src/pages/work/index.vue | 179 -----------------------------
3 files changed, 49 insertions(+), 254 deletions(-)
diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue
index e9efa2e..0d2e5e2 100644
--- a/src/pages/login/index.vue
+++ b/src/pages/login/index.vue
@@ -3,28 +3,35 @@
<view>
<view class="login-form-wrap">
<view class="title"> 掌控智飞</view>
- <input v-model="loginForm.username" class="u-border-bottom" placeholder="请输入用户名"/>
- <input v-model="loginForm.password" class="u-border-bottom" type="password" placeholder="请输入密码"/>
+ <input
+ v-model="loginForm.username"
+ class="u-border-bottom"
+ placeholder="请输入用户名"
+ />
+ <input
+ v-model="loginForm.password"
+ class="u-border-bottom"
+ type="password"
+ placeholder="请输入密码"
+ />
<button class="login-btn" :style="[inputStyle]" @tap="submit">
登录
- <text class="i-mdi-login"/>
+ <text class="i-mdi-login" />
</button>
</view>
</view>
</template>
<script setup>
-import md5 from 'js-md5'
-import {loginByUsername} from '@/api/user/index.js'
-import {useUserStore} from "@/store/index.js";
-import {
- HOME_PATH, LOGIN_PATH, removeQueryString,
-} from "@/router";
+import md5 from "js-md5";
+import { loginByUsername } from "@/api/user/index.js";
+import { useUserStore } from "@/store/index.js";
+import { HOME_PATH, LOGIN_PATH, removeQueryString } from "@/router";
const userStore = useUserStore();
const loginForm = ref({
- username: "zhx",
- password: "123456"
-})
+ username: "shuishen",
+ password: "Dashabi....",
+});
const inputStyle = computed(() => {
const style = {};
if (loginForm.value.username && loginForm.value.password) {
@@ -37,15 +44,15 @@
async function submit() {
let userInfo = {
- "tenantId": "000000",
- "deptId": "",
- "roleId": "",
- "username": loginForm.value.username,
- "password": loginForm.value.password,
- "type": "account",
- "code": "",
- "key": "",
- }
+ tenantId: "000000",
+ deptId: "",
+ roleId: "",
+ username: loginForm.value.username,
+ password: loginForm.value.password,
+ type: "account",
+ code: "",
+ key: "",
+ };
loginByUsername(
userInfo.tenantId,
userInfo.deptId,
@@ -55,12 +62,12 @@
userInfo.type,
userInfo.key,
userInfo.code
- ).then(res => {
- userStore.setUserInfo(res.data)
+ ).then((res) => {
+ userStore.setUserInfo(res.data);
uni.switchTab({
- url: '/pages/user/index'
- })
- })
+ url: "/pages/user/index",
+ });
+ });
}
onLoad((options) => {
diff --git a/src/pages/map/index.vue b/src/pages/map/index.vue
index d16b73d..3a80b85 100644
--- a/src/pages/map/index.vue
+++ b/src/pages/map/index.vue
@@ -1,66 +1,31 @@
+<!--
+ * @Author : yuan
+ * @Date : 2025-10-14 17:40:58
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-10-15 15:54:25
+ * @FilePath : \src\pages\map\index.vue
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-10-14 17:40:58
+-->
<template>
<view class="page-wrap">
- <web-view
- ref="sWebViewRef"
- :src="`${viewUrl}`"
- @message="onPostMessage"
- @onPostMessage="onPostMessage"
- />
+ <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage" />
</view>
</template>
<script setup>
import { useUserStore } from "@/store/index.js";
+import WebViewPlus from "@/components/WebViewPlus.vue";
-const sWebViewRef = ref(null);
const userStore = useUserStore();
-const viewUrl = `https://192.168.1.194:5174/drone-app-web-view/#/webViewWrapper/defaultMap?params=${JSON.stringify(
+const viewUrl = `http://192.168.1.194:5174/drone-app-web-view/#/webViewWrapper/defaultMap?params=${JSON.stringify(
userStore?.userInfo
)}`;
-const onPostMessage = (event) => {
- // #ifdef APP-PLUS
- if (event.detail.data[0].type === "scanCode") {
- scanCode();
- }
- // #endif
-};
+const onPostMessage = (event) => {};
-const scanCode = () => {
- // 只允许通过相机扫码
- uni.scanCode({
- onlyFromCamera: true,
- success: function (res) {
- console.log("条码类型:" + res.scanType);
- console.log("条码内容:" + res.result);
-
- // 获取扫码结果
- let url = res.result;
-
- // 跳转到B页面,并传递URL参数
- uni.navigateTo({
- url: "/subPackages/browser/index?url=" + encodeURIComponent(url),
- });
- },
- fail: function (err) {
- console.log("扫码失败:", err);
- uni.showToast({
- title: "扫码失败",
- icon: "none",
- });
- },
- });
-};
-
-onLoad(() => {
- // #ifdef H5
- window.addEventListener("message", function (e) {
- if (e.data.data.type === "scanCode") {
- scanCode();
- }
- });
- // #endif
-});
+onLoad(() => {});
</script>
<style scoped lang="scss">
diff --git a/src/pages/work/index.vue b/src/pages/work/index.vue
index 6aa9324..5194360 100644
--- a/src/pages/work/index.vue
+++ b/src/pages/work/index.vue
@@ -30,189 +30,12 @@
<script setup>
import {getWebViewUrl} from "@/utils/index.js";
-import { useUserStore } from '@/store/index.js'
-import {getList,getstatusCount} from '/src/api/work/index.js'
- import dayjs from 'dayjs';
- const userStore = useUserStore()
- const userInfo = userStore.userInfo
+
const sWebViewRef = ref(null);
const viewUrl = getWebViewUrl('/work', {})
-// const viewUrl = `http://192.168.1.157:5173/drone-app-web-view/#/webViewWrapper/work?params=${JSON.stringify(userStore?.userInfo)}`;
- const dataList = ref([])
- const keyword = ref('')
- const currentTab=ref('myTickets')
- const tabList = ref([{
- name: '我的工单',
- key: 'myTickets',
- badge: {
- value: 1
- }
- },
- {
- name: '全部状态',
- key: 'all',
- badge: {
- value: 2
- },
- status: null
- },
- {
- name: '待审核',
- key: 'pending',
- badge: {
- value: 3
- },
- status: '2'
- },
- {
- name: '待处理',
- key: 'processing',
- badge: {
- value: 4
- },
- status: '0'
- },
- {
- name: '处理中',
- key: 'inProgress',
- badge: {
- value: 5
- },
- status: '3'
- },
- {
- name: '已完成',
- key: 'completed',
- badge: {
- value: 6
- },
- status: '4'
- }
- ])
- const formatDate = (dateString) => {
- return dayjs(dateString).format('MM/DD HH:mm');
- };
- const listParams = ref({
- status: null,
- current: 1,
- size: 9999,
- source: 1,
- department:'',
- keyword:''
- })
- const getDataList = () => {
- const params = {
- current: 1,
- size: 9999,
- source: 1,
- status:listParams.value.status,
- event_name:listParams.value.keyword,
- user_id:currentTab.value=== 'myTickets' ?userInfo.user_id : undefined
- }
- getList(params).then(res => {
-
- const response = res.data.data.records
- dataList.value = response
- })
- }
- const getstatusCountData=()=>{
- getstatusCount().then(res=>{
- const response = res.data.data
- const { statusCount, totalCount, userCount } = response
- tabList.value.forEach(tab=>{
-
- if(tab.key === 'all'){
- tab.badge.value = totalCount || 0
-
- }else if(tab.key === 'myTickets'){
- tab.badge.value = userCount || 0
- }else{
- tab.badge.value=statusCount[String(tab.status)] || 0
- }
- })
-
- })
- }
-
- const handleClick = (item) => {
- currentTab.value = item.key
- listParams.value.status = item.status
- getDataList()
- }
- const detailHandle = (val) => {
- uni.navigateTo({
- url: `/subPackages/workDetail/index?eventNum=${val.event_num}`,
- })
- }
- onShow(() => {
- getDataList()
- getstatusCountData()
- })
</script>
<style scoped lang="scss">
- .eventTickets {
- padding: 0 10px;
- .searchTop {
- display: flex;
- align-items: center;
- margin-top: 10px;
- }
-
- :deep(.u-badge) {
- background-color: #1d6fe9 !important;
- }
-
- .eventBox {
- display: flex;
- flex-wrap: wrap;
- gap: 10px;
- padding: 10px 0;
- background-color: #ebeff2;
-
- .eventItem {
- width: calc(50% - 5px);
- background-color: #fff;
- border-radius: 5px;
- overflow: hidden;
-
- img {
- width: 100%;
- height: 100px;
- border-radius: 5px;
- overflow: hidden;
- }
-
- .itemTitle {
- padding: 0 5px;
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- }
-
- .itemContent {
- display: flex;
- justify-content: space-between;
- align-items: center;
- padding: 5px;
-
- .itemStatus {
- display: flex;
- align-items: center;
-
- span {
- display: inline-block;
- width: 10px;
- height: 10px;
- border-radius: 50%;
- margin-right: 5px;
- }
- }
-
- }
- }
- }
- }
</style>
\ No newline at end of file
--
Gitblit v1.9.3