weiximei 6 anni fa
parent
commit
ce65804c11

+ 4
- 2
CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/SocialController.java Vedi File

@@ -1,5 +1,6 @@
1 1
 package com.community.huiju.controller;
2 2
 
3
+import com.alibaba.fastjson.JSONObject;
3 4
 import com.community.commom.constant.Constant;
4 5
 import com.community.commom.mode.ResponseBean;
5 6
 import com.community.commom.session.UserElement;
@@ -355,11 +356,11 @@ public class SocialController extends BaseController {
355 356
 
356 357
     @ApiOperation(value = "评价工单内容以及评分", notes = "评价工单内容以及评分")
357 358
     @ApiImplicitParams({@ApiImplicitParam(paramType = "path", dataType = "integer", name = "communityId", value = "小区Id"),
358
-            @ApiImplicitParam(name = "tpTicket", value = "报修", required = true, dataType = "TpTicket"),
359
+            @ApiImplicitParam(name = "parameter", value = "score 评分, comment 评语 ", required = true, dataType = "String"),
359 360
             @ApiImplicitParam(paramType = "query", dataType = "integer", name = "ticketId", value = "工单Id"),
360 361
             @ApiImplicitParam(paramType = "header",dataType = "String",name = "X-Auth-Token",value = "Token")})
361 362
     @RequestMapping(value = "/accessTicket/{communityId}", method = RequestMethod.POST)
362
-    public ResponseBean accessTicket(@PathVariable("communityId") Integer communityId, @RequestBody TpTicket tpTicket, @RequestParam("ticketId") String ticketId, HttpSession session) {
363
+    public ResponseBean accessTicket(@PathVariable("communityId") Integer communityId, @RequestBody String parameter, @RequestParam("ticketId") String ticketId, HttpSession session) {
363 364
         UserElement userElement = (UserElement) session.getAttribute(Constant.APP_USER_SESSION);
364 365
         Integer userId = userElement.getId();
365 366
         ResponseBean responseBean = new ResponseBean();
@@ -369,6 +370,7 @@ public class SocialController extends BaseController {
369 370
             return responseBean;
370 371
         }
371 372
 
373
+        TpTicket tpTicket = JSONObject.parseObject(parameter,TpTicket.class);
372 374
         socialServiceI.accessTicket(communityId, tpTicket, ticketId, userId);
373 375
         return responseBean;
374 376
     }

+ 3
- 4
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/CodeController.java Vedi File

@@ -46,14 +46,13 @@ public class CodeController {
46 46
         }
47 47
 
48 48
         int code = (int) ((Math.random()*9+1)*1000);
49
-        //boolean result = iCode.sendCode(phone,String.valueOf(code));
50
-        boolean result = true;
49
+        boolean result = iCode.sendCode(phone,String.valueOf(code));
50
+        //boolean result = true;
51 51
         if (result) {
52 52
             log.info("{} 验证码: {}",phone,code);
53 53
             // 设置缓存
54 54
             AppkeyCache.setCache(phone,String.valueOf(code));
55
-            //session.setAttribute(Constant.SESSION_PHONE_CODE,String.valueOf(code));
56
-            response.addSuccess("发送成功!"+code);
55
+            response.addSuccess("发送成功!");
57 56
         } else {
58 57
             response.addError("发送失败!");
59 58
         }

+ 2
- 2
CODE/smart-community/operate-api/src/main/java/com/community/huiju/model/ToBanner.java Vedi File

@@ -9,8 +9,8 @@ public class ToBanner {
9 9
     @NotBlank(message = "标题不能为空!")
10 10
     private String title;
11 11
 
12
-    @Min(value = 0,message = "请选择有效的区!")
13
-    @NotNull(message = "小区不能空!")
12
+    @Min(value = 0,message = "请选择有效的投放社区!")
13
+    @NotNull(message = "投放社区不能为空!")
14 14
     private Integer communityId;
15 15
 
16 16
     // @NotBlank(message = "跳转描述不能为空!")

+ 1
- 1
VUECODE/smart-operate-manage/build/webpack.dev.conf.js Vedi File

@@ -56,7 +56,7 @@ const devWebpackConfig = merge(baseWebpackConfig, {
56 56
       filename: 'index.html',
57 57
       template: 'index.html',
58 58
       inject: true,
59
-      favicon: resolve('favicon.ico'),
59
+      favicon: resolve('zhihui.jpg'),
60 60
       title: '智慧社区运营平台'
61 61
     })
62 62
   ]

+ 1
- 1
VUECODE/smart-operate-manage/build/webpack.prod.conf.js Vedi File

@@ -54,7 +54,7 @@ const webpackConfig = merge(baseWebpackConfig, {
54 54
       filename: config.build.index,
55 55
       template: 'index.html',
56 56
       inject: true,
57
-      favicon: resolve('favicon.ico'),
57
+      favicon: resolve('zhihui.jpg'),
58 58
       title: '智慧社区运营平台',
59 59
       minify: {
60 60
         removeComments: true,

+ 0
- 3
VUECODE/smart-operate-manage/src/router/index.js Vedi File

@@ -24,7 +24,6 @@ import Layout from '../views/layout/Layout'
24 24
 export const constantRouterMap = [
25 25
   { path: '/login', component: () => import('@/views/login/index'), hidden: true },
26 26
   { path: '/404', component: () => import('@/views/404'), hidden: true },
27
-
28 27
   {
29 28
     path: '/dashboard',
30 29
     component: Layout,
@@ -41,8 +40,6 @@ export const constantRouterMap = [
41 40
     path: '/',
42 41
     component: Layout,
43 42
     redirect: '/index',
44
-    alwaysShow: true,
45
-    meta: { title: '首页', icon: 'zip' },
46 43
     children: [
47 44
       {
48 45
         path: '',

+ 11
- 11
VUECODE/smart-operate-manage/src/views/banner/addBanner/index.vue Vedi File

@@ -1,25 +1,25 @@
1 1
 <template>
2 2
   <div class="app-container">
3 3
     <el-form ref="addForm" :model="addForm">
4
-      <el-form-item :label-width="formLabelWidth" label="标题">
4
+      <el-form-item :label-width="formLabelWidth" label="标题 *">
5 5
         <el-input v-model="addForm.title"/>
6 6
       </el-form-item>
7
-      <el-form-item :label-width="formLabelWidth" label="权重">
7
+      <el-form-item :label-width="formLabelWidth" label="权重 *">
8 8
         <el-input v-model="addForm.sort"/>
9 9
       </el-form-item>
10
-       <el-form-item :label-width="formLabelWidth" label="生效时间">
10
+       <el-form-item :label-width="formLabelWidth" label="生效时间 *">
11 11
         <el-date-picker
12 12
           v-model="addForm.effTime"
13 13
           type="date"
14 14
           placeholder="选择日期时间"/>
15 15
       </el-form-item>
16
-      <el-form-item :label-width="formLabelWidth" label="失效时间">
16
+      <el-form-item :label-width="formLabelWidth" label="失效时间 *">
17 17
         <el-date-picker
18 18
           v-model="addForm.expTime"
19 19
           type="date"
20 20
           placeholder="选择日期时间"/>
21 21
       </el-form-item>
22
-      <el-form-item :label-width="formLabelWidth" label="banner图">
22
+      <el-form-item :label-width="formLabelWidth" label="banner图 *">
23 23
         <el-upload
24 24
           class="avatar-uploader"
25 25
           action="http://101.132.102.231:8085/operate-api/uploadimage"
@@ -30,7 +30,7 @@
30 30
           <i v-else class="el-icon-plus avatar-uploader-icon"></i>
31 31
         </el-upload>
32 32
       </el-form-item>
33
-      <el-form-item :label-width="formLabelWidth" label="banner位">
33
+      <el-form-item :label-width="formLabelWidth" label="banner位 *">
34 34
         <el-select v-model="addForm.bannerPosition" placeholder="请选择位置">
35 35
           <!-- <el-option label="请选择位置" value="-1"/> -->
36 36
           <el-option
@@ -42,7 +42,7 @@
42 42
           <!-- <el-option v-for="item in bannerPositionArr" label="item.value" value="item.id"/> -->
43 43
         </el-select>
44 44
       </el-form-item>
45
-      <el-form-item :label-width="formLabelWidth" label="投放社区">
45
+      <el-form-item :label-width="formLabelWidth" label="投放社区 *">
46 46
         <el-select v-model="addForm.communityId" placeholder="请选择社区">
47 47
           <!-- <el-option label="请选择社区" value="-1"/> -->
48 48
           <el-option v-for="item in communityList" :key="item.id" :value="item.id" :label="item.communityName"/>
@@ -56,18 +56,18 @@
56 56
           type="textarea"
57 57
           placeholder="请输入跳转描述"/>
58 58
       </el-form-item> -->
59
-      <el-form-item :label-width="formLabelWidth" label="banner跳转">
59
+      <el-form-item :label-width="formLabelWidth" label="banner跳转 *">
60 60
         <el-radio v-model="addForm.bannerType" label="1" @change="showContent">外部超链接</el-radio>
61 61
         <el-radio v-model="addForm.bannerType" label="2" @change="showContent">自写文章</el-radio>
62 62
       </el-form-item>
63
-      <el-form-item v-if="showURLVisible" :label-width="formLabelWidth" label="跳转链接">
63
+      <el-form-item v-if="showURLVisible" :label-width="formLabelWidth" label="跳转链接 *">
64 64
         <el-input v-model="addForm.externalLink" placeholder="跳转链接"/>
65 65
       </el-form-item>
66 66
       <div v-if="showContentVisible">
67
-        <el-form-item :label-width="formLabelWidth" label="内容标题">
67
+        <el-form-item :label-width="formLabelWidth" label="内容标题 *">
68 68
           <el-input v-model="addForm.bannerTitle" placeholder="内容标题"/>
69 69
         </el-form-item>
70
-        <el-form-item :label-width="formLabelWidth" label="内容详情">
70
+        <el-form-item :label-width="formLabelWidth" label="内容详情 *">
71 71
           <!-- <el-input v-model="addForm.bannerContent" placeholder="内容详情"/> -->
72 72
           <div id="father">
73 73
             <wangeditor v-on:wangeditorEvent="wangeditorValue"></wangeditor>

+ 2
- 1
VUECODE/smart-operate-manage/src/views/banner/ediBanner/index.vue Vedi File

@@ -129,6 +129,7 @@ export default {
129 129
       calendarTypeOptions,
130 130
       listQuery: [],
131 131
       form: {
132
+        id: '',
132 133
         title: '',
133 134
         sort: '1',
134 135
         bannerCover: '',
@@ -174,7 +175,7 @@ export default {
174 175
     ]),
175 176
     handleAvatarSuccess(res, file) { // 上传成功回调
176 177
       this.imageUrl = URL.createObjectURL(file.raw)
177
-      this.addForm.bannerCover = res.data[0]
178
+      this.form.bannerCover = res.data[0]
178 179
     },
179 180
     dialogAddForm() {
180 181
       this.dialogFormVisible = true

+ 28
- 12
VUECODE/smart-operate-manage/src/views/banner/index.vue Vedi File

@@ -5,11 +5,11 @@
5 5
       <el-input v-model="listQuery.title" placeholder="请输入标题" style="width: 200px;" class="filter-item" @keyup.enter.native="handleFilter"/>
6 6
       <!-- <label>跳转概述</label>
7 7
       <el-input v-model="listQuery.bannerDescription" placeholder="请输入跳转概述" style="width: 200px;" class="filter-item" @keyup.enter.native="handleFilter"/> -->
8
-      <label>选择小区</label>
9
-      <el-select v-model="listQuery.communityId" placeholder="选择小区" clearable style="width: 200px" class="filter-item">
8
+      <label>适用社区</label>
9
+      <el-select v-model="listQuery.communityId" placeholder="适用社区" clearable style="width: 200px" class="filter-item">
10 10
         <el-option v-for="item in communityList" :key="item.id" :value="item.id" :label="item.communityName"/>
11 11
       </el-select>
12
-      <label>位置</label>
12
+      <label>banner位置</label>
13 13
       <el-select v-model="listQuery.bannerPosition" placeholder="banner位置" clearable class="filter-item" style="width: 200px">
14 14
         <el-option v-for="item in bannerPositionArr" :key="item.id" :value="item.id" :label="item.value"/>
15 15
       </el-select>
@@ -34,15 +34,10 @@
34 34
       @selection-change="handleSelectionChange">
35 35
       <el-table-column label="选择" type="selection" sortable="custom" align="center" >
36 36
       </el-table-column>
37
-      <el-table-column label="编号" align="center" min-width="30px">
38
-        <template slot-scope="scope">
39
-          <span>{{ scope.row.id }}</span>
40
-        </template>
41
-      </el-table-column>
42 37
       <el-table-column label="标题" align="center" min-width="250px">
43 38
         <template slot-scope="scope">
44 39
           <!-- <span class="link-type" @click="handleUpdate(scope.row)">{{ scope.row.title }}</span> -->
45
-          <span class="link-type" @click="infoBanner(scope.row.id)">{{ scope.row.title }}</span>
40
+          <span class="link-type title-span" @click="infoBanner(scope.row.id)">{{ scope.row.title }}</span>
46 41
         </template>
47 42
       </el-table-column>
48 43
       <el-table-column label="适用社区" align="center">
@@ -91,7 +86,7 @@
91 86
     <el-pagination
92 87
       :total="total"
93 88
       :current-page="listQuery.pageNum"
94
-      :page-sizes="[5, 10, 20, 30]"
89
+      :page-sizes="[10, 20, 30]"
95 90
       :page-size="listQuery.pageSize"
96 91
       layout="total, sizes, prev, pager, next, jumper"
97 92
       @size-change="handleSizeChange"
@@ -140,12 +135,16 @@ export default {
140 135
       listLoading: true,
141 136
       listQuery: {
142 137
         pageNum: 1,
143
-        pageSize: 5,
138
+        pageSize: 10,
144 139
         title: undefined,
145 140
         bannerPosition: undefined,
146 141
         bannerDescription: undefined,
147 142
         communityId: undefined
148 143
       },
144
+      communityQuery: {
145
+        pageNum: 1,
146
+        pageSize: 200,
147
+      },
149 148
       importanceOptions: [1, 2, 3],
150 149
       calendarTypeOptions,
151 150
       addForm: {
@@ -267,7 +266,7 @@ export default {
267 266
     },
268 267
     getCommuniryList() {
269 268
       this.listLoading = true
270
-      this.FetchCommunityList().then(() => {
269
+      this.FetchCommunityList(this.communityQuery).then(() => {
271 270
         this.listLoading = false
272 271
       }).catch(() => {
273 272
         this.loading = false
@@ -303,3 +302,20 @@ export default {
303 302
   }
304 303
 }
305 304
 </script>
305
+
306
+<style scoped>
307
+.title-span {
308
+  background-color: rgba(64,158,255,.1);
309
+  padding: 0 10px;
310
+  height: 32px;
311
+  line-height: 30px;
312
+  font-size: 12px;
313
+  color: #409EFF;
314
+  border-radius: 4px;
315
+  -webkit-box-sizing: border-box;
316
+  box-sizing: border-box;
317
+  border: 1px solid rgba(64,158,255,.2);
318
+  white-space: nowrap;
319
+}
320
+</style>
321
+

+ 5
- 0
VUECODE/smart-operate-manage/src/views/banner/infoBanner/index.vue Vedi File

@@ -50,6 +50,7 @@
50 50
       </div>
51 51
     </el-form>
52 52
     <div slot="footer" class="dialog-footer">
53
+      <el-button @click="updateBanner" type="primary">修 改</el-button>
53 54
       <el-button @click="dialogForm('0')">返 回</el-button>
54 55
     </div>
55 56
   </div>
@@ -100,6 +101,7 @@ export default {
100 101
       calendarTypeOptions,
101 102
       listQuery: [],
102 103
       form: {
104
+        id: '',
103 105
         title: '',
104 106
         sort: '1',
105 107
         bannerCover: '',
@@ -184,6 +186,9 @@ export default {
184 186
         this.showURLVisible = false
185 187
       }
186 188
     },
189
+    updateBanner() {
190
+      this.$router.push({ name: 'banner-edi', params: { id: this.form.id, listQuery: this.listQuery }})
191
+    },
187 192
     updateData() {
188 193
       this.$refs['form'].validate((valid) => {
189 194
         if (valid) {

+ 32
- 24
VUECODE/smart-operate-manage/src/views/community/communityTable.vue Vedi File

@@ -156,29 +156,17 @@
156 156
     <el-dialog :title="查看" :visible.sync="dialogLookFormVisible">
157 157
       <el-form ref="dataForm" :rules="rules" :model="detail" label-position="left" label-width="100px" style="margin-left:50px;">
158 158
         <el-form-item label="社区名称">
159
-          <el-input v-model="detail.communityName"/>
159
+          <span>{{ detail.communityName }}</span>
160 160
         </el-form-item>
161 161
         <el-form-item label="社区别名">
162
-          <el-input v-model="detail.communityAlias"/>
162
+          <span>{{ detail.communityAlias }}</span>
163 163
         </el-form-item>
164 164
         <el-form-item label="所在区县">
165
-          <el-select v-model="detail.provinceId" placeholder="省" clearable style="width: 90px" class="filter-item" @change="getEditCityList">
166
-            <el-option v-for="item in provinceList" :key="item.id" :label="item.province" :value="item.id"/>
167
-          </el-select>
168
-          <el-select v-model="detail.cityId" placeholder="市" clearable class="filter-item" style="width: 130px" @change="getEditDistrictList">
169
-            <el-option v-for="item in editCityList" :key="item.id" :label="item.city" :value="item.id"/>
170
-          </el-select>
171
-          <el-select v-model="detail.districtId" placeholder="区县乡" clearable class="filter-item" style="width: 130px">
172
-            <el-option v-for="item in editDistrictList" :key="item.id" :label="item.district" :value="item.id"/>
173
-          </el-select>
165
+          <span>{{ getProvinceName(detail.provinceId) + getCityName(detail.cityId) + getDistrictName(detail.districtId) }}</span>
174 166
         </el-form-item>
175 167
         <el-form-item label="高德坐标">
176
-          <el-input
177
-            v-model="detail.longitude"
178
-            placeholder="经度"/>
179
-          <el-input
180
-            v-model="detail.latitude"
181
-            placeholder="纬度"/>
168
+          <span>{{ '经度: ' + detail.longitude }}</span>
169
+          <span>{{ '纬度: ' + detail.latitude }}</span>
182 170
         </el-form-item>
183 171
         <!-- <el-amap-search-box class="search-box" :search-option="searchOption" :on-search-result="onSearchResult"></el-amap-search-box> -->
184 172
         <div style="width:100%;height:200px;">
@@ -187,14 +175,10 @@
187 175
           </el-amap>
188 176
         </div>
189 177
         <el-form-item label="管理员姓名">
190
-          <el-input
191
-            v-model="detail.userName"
192
-            placeholder="建议先填写运营人员姓名"/>
178
+          <span>{{ detail.userName }}</span>
193 179
         </el-form-item>
194 180
         <el-form-item label="管理员账号">
195
-          <el-input
196
-            v-model="detail.loginName"
197
-            placeholder="建议先填写运营人员手机号"/>
181
+          <span>{{ detail.loginName }}</span>
198 182
         </el-form-item>
199 183
       </el-form>
200 184
       <div slot="footer" class="dialog-footer">
@@ -550,7 +534,31 @@ export default {
550 534
           return v[j]
551 535
         }
552 536
       }))
553
-    }
537
+    },
538
+    getProvinceName(provinceId) {
539
+      const tempProvince = this.provinceList
540
+      for (const i in tempProvince) {
541
+        if (tempProvince[i].id === provinceId) {
542
+          return tempProvince[i].province
543
+        }
544
+      }
545
+    },
546
+    getCityName(cityId) {
547
+      const tempCity = this.editCityList
548
+      for (const i in tempCity) {
549
+        if (tempCity[i].id === cityId) {
550
+          return tempCity[i].city
551
+        }
552
+      }
553
+    },
554
+    getDistrictName(districtId) {
555
+      const tempDistrict = this.editDistrictList
556
+      for (const i in tempDistrict) {
557
+        if (tempDistrict[i].id === districtId) {
558
+          return tempDistrict[i].district
559
+        }
560
+      }
561
+    },
554 562
   }
555 563
 }
556 564
 </script>

+ 2
- 2
VUECODE/smart-operate-manage/src/views/layout/components/Navbar.vue Vedi File

@@ -8,8 +8,8 @@
8 8
     <breadcrumb/>
9 9
     <el-dropdown class="avatar-container" trigger="click">
10 10
       <div class="avatar-wrapper">
11
-        <span style="position: relative;top: -15px;right:5px">{{ userData.userName }}</span>
12
-        <img :src="userData.headPortrait" class="user-avatar" v-if="userData.headPortrait != ''">
11
+        <span style="position: relative;top: -15px;right:5px;">{{ userData.userName }}</span>
12
+        <img :src="userData.headPortrait" class="user-avatar" v-if="userData.headPortrait != '' && userData.headPortrait != undefined">
13 13
         <i class="el-icon-caret-bottom"/>
14 14
       </div>
15 15
       <el-dropdown-menu slot="dropdown" class="user-dropdown">

+ 3
- 1
VUECODE/smart-operate-manage/src/views/login/index.vue Vedi File

@@ -97,8 +97,10 @@ export default {
97 97
           this.loading = true
98 98
           this.$store.dispatch('Login', this.loginForm).then((res) => {
99 99
             if (res.code === '0') {
100
+              console.log('登陆结果: ',res)
100 101
               this.loading = false
101
-              this.$router.push({ path: this.redirect || '/' })
102
+              // this.$router.push({ path: this.redirect || '/index' })
103
+              this.$router.push({ name: 'index' })
102 104
             } else {
103 105
               this.loading = false
104 106
             }

BIN
VUECODE/smart-operate-manage/zhihui.jpg Vedi File