diff --git a/.env.development b/.env.development
index e774d25..1704208 100644
--- a/.env.development
+++ b/.env.development
@@ -1,10 +1,10 @@
VITE_APP_NAME=后台管理系统
VITE_SOCKET_URL=wss://server.gxwebsoft.com
VITE_SERVER_URL=https://server.gxwebsoft.com/api
-#VITE_API_URL=https://cms-api.websoft.top/api
+ VITE_API_URL=https://cms-api.websoft.top/api
#VITE_SOCKET_URL=ws://127.0.0.1:9191
#VITE_SERVER_URL=http://127.0.0.1:8000/api
-VITE_API_URL=http://127.0.0.1:9000/api
+#VITE_API_URL=http://127.0.0.1:9000/api
#/booking/bookingItem
diff --git a/.gitignore b/.gitignore
index 5c5538a..13f4ac9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,3 +25,4 @@ pnpm-debug.log*
*.njsproj
*.sln
*.sw?
+node_modules
diff --git a/src/api/hjm/hjmCar/model/index.ts b/src/api/hjm/hjmCar/model/index.ts
index 3cfd34f..37820a6 100644
--- a/src/api/hjm/hjmCar/model/index.ts
+++ b/src/api/hjm/hjmCar/model/index.ts
@@ -27,6 +27,10 @@ export interface HjmCar {
driverName?: string;
// 操作员手机号
driverPhone?: string;
+ // 安装人员
+ installerId?: number;
+ // 安装时间
+ installTime?: string;
// 保险状态
insuranceStatus?: string;
// GPS设备编号
@@ -57,6 +61,8 @@ export interface HjmCar {
userId?: number;
// 认领状态
claim?: number;
+ // 认领时间
+ claimTime?: string;
// 绑定用户
toUser?: string;
// 排序(数字越小越靠前)
@@ -80,6 +86,7 @@ export interface HjmCarParam extends PageParam {
id?: number;
status?: number;
organizationId?: number;
+ installerId?: number;
organizationParentId?: number;
keywords?: string;
}
diff --git a/src/api/hjm/hjmGpsLog/model/index.ts b/src/api/hjm/hjmGpsLog/model/index.ts
index abcf75b..a22d413 100644
--- a/src/api/hjm/hjmGpsLog/model/index.ts
+++ b/src/api/hjm/hjmGpsLog/model/index.ts
@@ -29,5 +29,6 @@ export interface HjmGpsLog {
*/
export interface HjmGpsLogParam extends PageParam {
id?: number;
+ gpsNo?: string;
keywords?: string;
}
diff --git a/src/api/system/user/model/index.ts b/src/api/system/user/model/index.ts
index af53243..e7a09a6 100644
--- a/src/api/system/user/model/index.ts
+++ b/src/api/system/user/model/index.ts
@@ -125,6 +125,8 @@ export interface User {
installed?: boolean;
label?: string;
value?: number;
+ // 关注数量
+ followers?: number;
}
/**
diff --git a/src/api/system/userRole/model/index.ts b/src/api/system/userRole/model/index.ts
index 34f10f1..6a04ca3 100644
--- a/src/api/system/userRole/model/index.ts
+++ b/src/api/system/userRole/model/index.ts
@@ -26,4 +26,5 @@ export interface UserRoleParam extends PageParam {
keywords?: any;
roleId?: number;
userId?: number;
+ userIds?: any;
}
diff --git a/src/views/cms/cmsArticle/components/articleEdit.vue b/src/views/cms/cmsArticle/components/articleEdit.vue
index b5bac80..76b3735 100644
--- a/src/views/cms/cmsArticle/components/articleEdit.vue
+++ b/src/views/cms/cmsArticle/components/articleEdit.vue
@@ -214,11 +214,7 @@
import { ref, reactive, watch } from 'vue';
import { Form, message } from 'ant-design-vue';
import { assignObject, htmlToText, uuid } from 'ele-admin-pro';
- import {
- addCmsArticle,
- getCmsArticle,
- updateCmsArticle
- } from '@/api/cms/cmsArticle';
+ import { addCmsArticle, updateCmsArticle } from '@/api/cms/cmsArticle';
import { CmsArticle } from '@/api/cms/cmsArticle/model';
import { useThemeStore } from '@/store/modules/theme';
import { storeToRefs } from 'pinia';
@@ -321,7 +317,7 @@
files: '',
lang: locale.value || undefined,
// 排序
- sortNumber: 100,
+ sortNumber: undefined,
// 备注
comments: undefined,
// 状态
@@ -478,6 +474,10 @@
if (!formRef.value) {
return;
}
+ if (content.value == '') {
+ message.error('请输入文章内容');
+ return;
+ }
formRef.value
.validate()
.then(() => {
@@ -529,43 +529,41 @@
content.value = '';
if (props.data) {
loading.value = true;
+ const data = props.data;
// 文章详情
- getCmsArticle(Number(props.data?.articleId)).then((data) => {
- assignObject(form, data);
- if (data.content) {
- content.value = data.content;
- }
-
- if (data.image) {
- images.value.push({
+ assignObject(form, data);
+ if (data.content) {
+ content.value = data.content;
+ }
+ if (data.image) {
+ images.value.push({
+ uid: uuid(),
+ url: data.image,
+ status: 'done'
+ });
+ }
+ if (!data.source) {
+ form.source = undefined;
+ }
+ if (data.tags) {
+ form.tags = JSON.parse(form.tags);
+ } else {
+ form.tags = undefined;
+ }
+ if (data.editor) {
+ editor.value = data.editor;
+ }
+ if (data.files) {
+ const arr = JSON.parse(data.files);
+ arr.map((url: string) => {
+ files.value.push({
uid: uuid(),
- url: data.image,
+ url: url,
status: 'done'
});
- }
- if (!data.source) {
- form.source = undefined;
- }
- if (data.tags) {
- form.tags = JSON.parse(form.tags);
- } else {
- form.tags = undefined;
- }
- if (data.editor) {
- editor.value = data.editor;
- }
- if (data.files) {
- const arr = JSON.parse(data.files);
- arr.map((url: string) => {
- files.value.push({
- uid: uuid(),
- url: url,
- status: 'done'
- });
- });
- }
- loading.value = false;
- });
+ });
+ }
+ loading.value = false;
// assignObject(form, props.data);
// 文章分类
diff --git a/src/views/cms/cmsArticle/index.vue b/src/views/cms/cmsArticle/index.vue
index c218eaf..59ff1c4 100644
--- a/src/views/cms/cmsArticle/index.vue
+++ b/src/views/cms/cmsArticle/index.vue
@@ -133,7 +133,7 @@ import {
pageCmsArticle,
removeCmsArticle,
removeBatchCmsArticle,
- updateCmsArticle
+ updateCmsArticle, getCmsArticle
} from '@/api/cms/cmsArticle';
import type {CmsArticle, CmsArticleParam} from '@/api/cms/cmsArticle/model';
import {formatNumber} from 'ele-admin-pro/es';
@@ -142,8 +142,7 @@ import {toTreeData} from 'ele-admin-pro';
import {toDateString} from 'ele-admin-pro';
import {
detail,
- getPageTitle,
- navTo
+ getPageTitle
} from '@/utils/common';
import {listCmsNavigation} from '@/api/cms/cmsNavigation';
import {CmsNavigation} from '@/api/cms/cmsNavigation/model';
@@ -293,8 +292,11 @@ const reload = (where?: CmsArticleParam) => {
};
/* 打开编辑弹窗 */
-const openEdit = (row?: CmsArticle) => {
+const openEdit = async (row?: CmsArticle) => {
current.value = row ?? null;
+ if(row?.articleId){
+ current.value = await getCmsArticle(row?.articleId);
+ }
showEdit.value = true;
};
@@ -408,8 +410,7 @@ if (!navigationList.value) {
if (
d.model == 'index' ||
d.model == 'page' ||
- d.model == 'order' ||
- d.model == 'links'
+ d.model == 'order'
) {
d.disabled = true;
}
diff --git a/src/views/hjm/count/components/hjmFenceEdit.vue b/src/views/hjm/count/components/hjmFenceEdit.vue
new file mode 100644
index 0000000..5d3ae2d
--- /dev/null
+++ b/src/views/hjm/count/components/hjmFenceEdit.vue
@@ -0,0 +1,306 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 使用腾讯地图的工具绘制电子围栏
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/hjm/count/components/search.vue b/src/views/hjm/count/components/search.vue
new file mode 100644
index 0000000..f7509dc
--- /dev/null
+++ b/src/views/hjm/count/components/search.vue
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+ 添加
+
+
+
+
+
diff --git a/src/views/hjm/count/index.vue b/src/views/hjm/count/index.vue
new file mode 100644
index 0000000..6baa8ee
--- /dev/null
+++ b/src/views/hjm/count/index.vue
@@ -0,0 +1,150 @@
+
+ $router.go(-1)">
+
+
+
+
+ {{ record.realName }}
+
+
+
+ {{ record.followers }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/hjm/hjmCar/components/Extra.vue b/src/views/hjm/hjmCar/components/Extra.vue
index 35fb5c7..ed37d61 100644
--- a/src/views/hjm/hjmCar/components/Extra.vue
+++ b/src/views/hjm/hjmCar/components/Extra.vue
@@ -1,41 +1,54 @@
-
+
电子围栏
-
+ >电子围栏
+
+ 安装车辆统计
+
+ gps定位
+
diff --git a/src/views/hjm/hjmCar/components/hjmCarEdit.vue b/src/views/hjm/hjmCar/components/hjmCarEdit.vue
index 09103c0..b221725 100644
--- a/src/views/hjm/hjmCar/components/hjmCarEdit.vue
+++ b/src/views/hjm/hjmCar/components/hjmCarEdit.vue
@@ -19,9 +19,7 @@
styleResponsive ? { md: 19, sm: 19, xs: 24 } : { flex: '1' }
"
>
-
+
-
+ />
{{ form.driver }} {{ form.driverPhone }}
-
+
diff --git a/src/views/hjm/hjmCar/components/search.vue b/src/views/hjm/hjmCar/components/search.vue
index 0ca2c3c..671117d 100644
--- a/src/views/hjm/hjmCar/components/search.vue
+++ b/src/views/hjm/hjmCar/components/search.vue
@@ -3,7 +3,7 @@
-
+
添加
@@ -15,7 +15,7 @@
@click="removeBatch"
>
-
+
批量删除
@@ -33,296 +33,325 @@
v-model:value="where.keywords"
@search="reload"
/>
- 导入xls
- 导出二维码
-
-
+ 导入xls
+ 导出二维码
+
+
-
+
diff --git a/src/views/hjm/hjmCar/index.vue b/src/views/hjm/hjmCar/index.vue
index dab848f..06c01c4 100644
--- a/src/views/hjm/hjmCar/index.vue
+++ b/src/views/hjm/hjmCar/index.vue
@@ -43,13 +43,23 @@
未安装
- 已安装
- 已认领
+ 已安装
+ 已认领
+
+
+
+
+ {{ record.createTime }}
+ {{ record.installTime }}
+ {{ record.claimTime }}
+
二维码
+
GPS
+
修改
('');
// 是否显示二维码
const showQrcode = ref(false);
+// 安装人员ID
+const installerId = ref()
// 树形数据
const data = ref([]);
@@ -130,6 +141,9 @@ const datasource: DatasourceFunction = ({
if (filters) {
where.status = filters.status;
}
+ if (installerId.value) {
+ where.installerId = installerId.value;
+ }
return pageHjmCar({
...where,
...orders,
@@ -218,14 +232,12 @@ const columns = ref([
dataIndex: 'createTime',
key: 'createTime',
align: 'center',
- sorter: true,
- ellipsis: true,
- customRender: ({text}) => toDateString(text, 'yyyy-MM-dd')
+ sorter: true
},
{
title: '操作',
key: 'action',
- width: 180,
+ width: 220,
fixed: 'right',
align: 'center',
hideInSetting: true
@@ -254,6 +266,10 @@ const onShare = (row?: HjmCar) => {
showQrcode.value = true;
}
+const onGpsLog = (row: HjmCar) => {
+ window.location.href = `/hjm/gps-log?no=${row?.gpsNo}`
+}
+
const hideShare = () => {
showQrcode.value = false;
}
@@ -376,9 +392,12 @@ const customRow = (record: HjmCar) => {
};
watch(
- () => router.currentRoute,
- () => {
+ () => router.currentRoute.value.query,
+ (param) => {
query();
+ if (param.installerId) {
+ installerId.value = param.installerId;
+ }
},
{immediate: true}
);
diff --git a/src/views/hjm/hjmFence/index.vue b/src/views/hjm/hjmFence/index.vue
index 9323f6b..2b24f3f 100644
--- a/src/views/hjm/hjmFence/index.vue
+++ b/src/views/hjm/hjmFence/index.vue
@@ -1,8 +1,5 @@
$router.go(-1)">
-
-
-
| null>(null);
diff --git a/src/views/hjm/hjmGpsLog/components/search.vue b/src/views/hjm/hjmGpsLog/components/search.vue
index 82fea9d..339f305 100644
--- a/src/views/hjm/hjmGpsLog/components/search.vue
+++ b/src/views/hjm/hjmGpsLog/components/search.vue
@@ -1,38 +1,47 @@
-
-
-
-
- 添加
-
+
diff --git a/src/views/hjm/staff/index.vue b/src/views/hjm/staff/index.vue
index a7f7c92..16a34e0 100644
--- a/src/views/hjm/staff/index.vue
+++ b/src/views/hjm/staff/index.vue
@@ -92,7 +92,7 @@ import {
} from '@/api/system/organization';
import type {Organization} from '@/api/system/organization/model';
import {getPageTitle} from "@/utils/common";
-import Extra from "@/views/system/user/components/Extra.vue";
+import Extra from "@/views/hjm/userVerify/components/Extra.vue";
// 加载状态
const loading = ref(true);
diff --git a/src/views/hjm/userVerify/components/Extra.vue b/src/views/hjm/userVerify/components/Extra.vue
new file mode 100644
index 0000000..56181bd
--- /dev/null
+++ b/src/views/hjm/userVerify/components/Extra.vue
@@ -0,0 +1,55 @@
+
+
+
+ 人员管理
+
+ 实名认证
+
+ 管理员列表
+
+
+
+
+
diff --git a/src/views/hjm/userVerify/index.vue b/src/views/hjm/userVerify/index.vue
index a7868a0..2d5c1ca 100644
--- a/src/views/hjm/userVerify/index.vue
+++ b/src/views/hjm/userVerify/index.vue
@@ -67,7 +67,7 @@ import UserVerifyEdit from './components/userVerifyEdit.vue';
import {pageUserVerify, removeUserVerify, removeBatchUserVerify} from '@/api/system/userVerify';
import type {UserVerify, UserVerifyParam} from '@/api/system/userVerify/model';
import {getPageTitle} from "@/utils/common";
-import Extra from "@/views/system/user/components/Extra.vue";
+import Extra from "./components/Extra.vue";
// 表格实例
const tableRef = ref | null>(null);
diff --git a/src/views/system/userVerify/components/search.vue b/src/views/system/userVerify/components/search.vue
index 869cea1..4194d41 100644
--- a/src/views/system/userVerify/components/search.vue
+++ b/src/views/system/userVerify/components/search.vue
@@ -8,8 +8,8 @@
- 个人
- 企业
+ 个人
+ 企业