Browse Source

商家管理

feature
是小王呀\24601 12 months ago
parent
commit
e2ba58828b
  1. 5
      package.json
  2. 14
      src/router/index.js
  3. 118
      src/views/dataAnalysis/overView/index.vue
  4. 7
      src/views/main-navbar.vue
  5. 7
      src/views/modules/informationArchive/elderlyArchives/cpts/add-old.vue
  6. 2
      src/views/modules/informationArchive/elderlyArchives/cpts/info-old.vue
  7. 2
      src/views/modules/informationArchive/elderlyArchives/cpts/pairup-volunteers.vue
  8. 55
      src/views/modules/informationArchive/volunteerProfile/cpts/service-info.vue
  9. 3
      src/views/modules/informationArchive/volunteerProfile/index.vue
  10. 120
      src/views/modules/serTeamVisualization/serTeam/index.vue

5
package.json

@ -34,6 +34,7 @@
"echarts-gl": "^2.0.9",
"element-theme": "2.0.1",
"element-ui": "2.13.2",
"exceljs": "^4.4.0",
"file-saver": "^2.0.5",
"gulp-autoprefixer": "^6.1.0",
"gulp-clean-css": "^4.2.0",
@ -47,7 +48,6 @@
"luckyexcel": "^1.0.1",
"mint-ui": "^2.2.13",
"moment": "^2.29.4",
"node-sass": "^4.12.0",
"ol": "7.2.2",
"portfinder": "^1.0.21",
"proj4": "^2.8.0",
@ -80,13 +80,14 @@
"dai-js": "^0.0.12",
"element-theme-chalk": "^2.13.0",
"filemanager-webpack-plugin": "^2.0.5",
"increase-memory-limit": "^1.0.7",
"natives": "^1.1.6",
"node-sass": "^4.14.1",
"ol": "^7.2.2",
"sass-loader": "^7.3.1",
"script-loader": "^0.7.2",
"style-loader": "^3.3.3",
"tinymce": "5.8.2",
"increase-memory-limit": "^1.0.7",
"vue-template-compiler": "^2.6.11"
},
"eslintConfig": {

14
src/router/index.js

@ -286,6 +286,18 @@ function cookApiDataItem3(item, parent = []) {
}
return item;
}
//临沂大屏
// export const dataAnalysisRoutes = {
// path: "/dataAnalysis",
// name: "dataAnalysis",
// redirect: {
// path: "/dataAnalysis/overView/index",
// },
// meta: {
// title: "主入口布局",
// },
// }
// 新数据模块
export const dataBoardRoutes = {
path: "/dataBoard",
@ -990,7 +1002,7 @@ const router = new Router({
scrollBehavior: () => ({
y: 0,
}),
routes: pageRoutes.concat(moduleRoutes, moduleShujuRoutes, dataBoardRoutes),
routes: pageRoutes.concat(moduleRoutes, moduleShujuRoutes, dataBoardRoutes,dataAnalysisRoutes),
});
router.beforeEach((to, from, next) => {

118
src/views/dataAnalysis/overView/index.vue

@ -0,0 +1,118 @@
<!-- <template>
<div class="dashboard">
<div class="header">
<div class="title">临沂市孤困老人志愿服务团数字化服务平台</div>
<div class="date-time">{{ dateTime }}</div>
</div>
<div class="main-content">
<div class="grid-item">
<overview-panel />
</div>
<div class="grid-item">
<map-activity />
</div>
<div class="grid-item">
<activity-analysis />
</div>
<div class="grid-item">
<points-statistics />
</div>
</div>
</div>
</template>
<script>
// import OverviewPanel from './components/OverviewPanel.vue';
// import MapActivity from './components/MapActivity.vue';
// import ActivityAnalysis from './components/ActivityAnalysis.vue';
// import PointsStatistics from './components/PointsStatistics.vue';
export default {
components: {
// OverviewPanel,
// MapActivity,
// ActivityAnalysis,
// PointsStatistics
},
data() {
return {
dateTime: ''
};
},
mounted() {
this.updateTime();
setInterval(this.updateTime, 1000);
},
methods: {
updateTime() {
const now = new Date();
this.dateTime = now.toLocaleString('zh-CN', { hour12: false });
}
}
};
</script>
<style scoped>
.dashboard {
background: linear-gradient(135deg, #1a237e, #0d47a1);
color: white;
height: 100vh;
font-family: "Microsoft YaHei", sans-serif;
}
.header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px;
border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.title {
font-size: 32px;
font-weight: bold;
}
.date-time {
font-size: 18px;
}
.main-content {
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, 1fr);
gap: 20px;
padding: 20px;
height: calc(100vh - 100px);
overflow: auto;
}
.grid-item {
background-color: rgba(255, 255, 255, 0.1);
border-radius: 10px;
padding: 20px;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
@media (max-width: 1200px) {
.main-content {
grid-template-columns: repeat(1, 1fr);
}
}
@media (max-width: 768px) {
.header {
flex-direction: column;
align-items: flex-start;
}
.title {
font-size: 24px;
}
.date-time {
font-size: 14px;
}
}
</style> -->

7
src/views/main-navbar.vue

@ -302,6 +302,13 @@ export default {
});
// window.open(this.$router.push({ name: 'dataBoard' }))
window.open(routeData.href, '_blank');
},
handleCLickNav1() {
let routeData = this.$router.resolve({
name: 'dataAnalysis'
});
// window.open(this.$router.push({ name: 'dataBoard' }))
window.open(routeData.href, '_blank');
}
}
};

7
src/views/modules/informationArchive/elderlyArchives/cpts/add-old.vue

@ -54,8 +54,7 @@
value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd HH:mm:ss" placeholder="选择日期">
</el-date-picker>
</el-form-item>
</el-col>
</el-col>
<el-col :span="24">
<el-form-item label="地址" prop="address" label-width="100px">
<el-input v-model.trim="formData.address" size="small" clearable placeholder="请输入"
@ -365,8 +364,8 @@
formType:"add",
agencyIdArray: [],
formData: {
volunteers:1,
volunteerOrgId: '1911679232436404226',
volunteers:"1",
volunteerOrgId: '',
orgIdPath: '',
headImg: '',
name: '',

2
src/views/modules/informationArchive/elderlyArchives/cpts/info-old.vue

@ -1,5 +1,5 @@
<template>
<div style="margin: 0 0 0 20px; height: 650px;">
<div style="margin: 0 0 0 20px; height: 700px;">
<div class="dialog-h-content scroll-h">
<el-form ref="ref_form" :inline="true" :model="formData" :rules="dataRule" class="form">
<div class="newqsa"><span class="newqsa_text">基本信息</span></div>

2
src/views/modules/informationArchive/elderlyArchives/cpts/pairup-volunteers.vue

@ -60,7 +60,7 @@ methods: {
this.showVolunteers=true
this.$nextTick(() => {
console.log(row,"sdlj");
this.$refs.ref_vol.initForm(row)
this.$refs.ref_vol.initForm(row.volunteerId)
})
},

55
src/views/modules/informationArchive/volunteerProfile/cpts/service-info.vue

@ -56,17 +56,17 @@
<el-row>
<el-col :span="8">
<el-form-item label="服务时长(小时)" prop="serviceTime" label-width="130px">
<div>{{this.formData.serviceTime }}</div>
<div>{{formData.serviceTime }}</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="积分" prop="points" label-width="130px">
<div>{{this.formData.points }}</div>
<div>{{formData.points }}</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="注册时间" prop="createdTime" label-width="130px">
<div>{{this.formData.createdTime }}</div>
<div>{{formData.createdTime }}</div>
</el-form-item>
</el-col>
<el-col :span="16">
@ -132,6 +132,29 @@
export default {
data() {
return {
identityList: [{ name: '医疗急救', key: '0' },
{ name: '体育竞技', key: '1' },
{ name: '驾驶运输', key: '2' },
{ name: '法律服务', key: '3' },
{ name: '信息技术', key: '4' },
{ name: '经营管理', key: '5' },
{ name: '公共关系', key: '6' },
{ name: '教育培训', key: '7' },
{ name: '电器维修', key: '8' },
{ name: '安全保卫', key: '9' },
{ name: '财会金融', key: '10' },
{ name: '设计创意', key: '11' },
{ name: '客服接待', key: '12' },
{ name: '物业养护', key: '13' },
{ name: '新闻写作', key: '14' },
{ name: '精通外语', key: '15' },
{ name: '音乐', key: '16' },
{ name: '心理咨询', key: '17' },
{ name: '护理照护', key: '18' },
{ name: '手工制作', key: '19' },
{ name: '文化艺术', key: '20' },
{ name: '网络技术', key: '21' },
{ name: '摄像摄影', key: '22' }],
id:"",
TheElderlyShow:false,
serviceRecord:false,
@ -157,24 +180,31 @@
this.elderlyInfo=data
console.log( this.elderlyInfo,"sdfkljdsfjkl;");
} else {
this.$message.error(msg)
}
},
//
//
async getVoluntaryInfo(row) {
const url = "/voluntary/volunteerInfo/page"
console.log(row,"sdfl;jsd");
async getVoluntaryInfo(id) {
const url = "/voluntary/volunteerInfo/getVolunteerDetail"
const param={
id:row.volunteerId,
name:row.volunteerName
id:id,
}
const { data, code, msg } = await requestPost(url,param)
if (code === 0) {
// this.tableData = data.list
this.formData = data.list[0]
this.formData = data
console.log(this.elderlyInfo, "sdfkljdsfjkl;");
this.formData.identityName = this.formData.identityType
.map(typeValue => {
console.log(typeValue.toString(), "sdflj;sdfl;");
const match = this.identityList.find(identity => identity.key === typeValue.toString());
return match ? match.name : '';
})
.filter(name => name !== '') //
.join(','); //
} else {
this.$message.error(msg)
@ -194,11 +224,10 @@
this.$refs.ref_vol.initForm( row)
})
},
async initForm(row) {
async initForm(id) {
this.startLoading()
console.log(row,"dsclkjdslk");
// this.formData=row
this.getVoluntaryInfo(row)
this.getVoluntaryInfo(id)
this.endLoading()
},

3
src/views/modules/informationArchive/volunteerProfile/index.vue

@ -339,7 +339,8 @@
handleDetail (row) {
this.detailShow = true
this.$nextTick(() => {
this.$refs.ref_detail.initForm(row)
console.log(row,"sdkljsdjlk");
this.$refs.ref_detail.initForm(row.id)
})
},

120
src/views/modules/serTeamVisualization/serTeam/index.vue

@ -0,0 +1,120 @@
<template>
<div class="dashboard">
<div class="header">
<div class="title">临沂市孤困老人志愿服务团数字化服务平台</div>
<div class="date-time">{{ dateTime }}</div>
</div>
<div class="main-content">
<div class="grid-item">
<overview-panel />
</div>
<div class="grid-item">
<map-activity />
</div>
<div class="grid-item">
<activity-analysis />
</div>
<div class="grid-item">
<points-statistics />
</div>
</div>
</div>
</template>
<script>
// import OverviewPanel from './components/OverviewPanel.vue';
// import MapActivity from './components/MapActivity.vue';
// import ActivityAnalysis from './components/ActivityAnalysis.vue';
// import PointsStatistics from './components/PointsStatistics.vue';
export default {
components: {
// OverviewPanel,
// MapActivity,
// ActivityAnalysis,
// PointsStatistics
},
data() {
return {
dateTime: ''
};
},
mounted() {
console.log("125524");
// this.updateTime();
// setInterval(this.updateTime, 1000);
},
methods: {
updateTime() {
const now = new Date();
this.dateTime = now.toLocaleString('zh-CN', { hour12: false });
}
}
};
</script>
<style scoped>
.dashboard {
background: linear-gradient(135deg, #1a237e, #0d47a1);
color: white;
height: 100vh;
font-family: "Microsoft YaHei", sans-serif;
}
.header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px;
border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.title {
font-size: 32px;
font-weight: bold;
}
.date-time {
font-size: 18px;
}
.main-content {
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, 1fr);
gap: 20px;
padding: 20px;
height: calc(100vh - 100px);
overflow: auto;
}
.grid-item {
background-color: rgba(255, 255, 255, 0.1);
border-radius: 10px;
padding: 20px;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
@media (max-width: 1200px) {
.main-content {
grid-template-columns: repeat(1, 1fr);
}
}
@media (max-width: 768px) {
.header {
flex-direction: column;
align-items: flex-start;
}
.title {
font-size: 24px;
}
.date-time {
font-size: 14px;
}
}
</style>
Loading…
Cancel
Save