瀏覽代碼

Merge branch '2.0.0' of http://git.ycjcjy.com/fuxingfan/smartCommunity into 2.0.0

# Conflicts:
#	VUECODE/smart-operate-manage/config/prod.env.js
#	VUECODE/smart-property-manage/config/prod.env.js
傅行帆 6 年之前
父節點
當前提交
4b12b01b28
共有 20 個檔案被更改,包括 538 行新增57 行删除
  1. 14
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/VistorController.java
  2. 26
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TaVisitorLicenseSettingMapper.java
  3. 45
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/model/TaVisitorLicenseSetting.java
  4. 7
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/TaVistorServiceI.java
  5. 9
    3
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserLicenseServiceImpl.java
  6. 15
    8
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaVistorServiceImpl.java
  7. 82
    0
      CODE/smart-community/app-api/src/main/resources/mapper/TaVisitorLicenseSettingMapper.xml
  8. 63
    0
      CODE/smart-community/property-api/src/main/java/com/community/huiju/controller/TaVisitorLicenseSettingController.java
  9. 16
    0
      CODE/smart-community/property-api/src/main/java/com/community/huiju/dao/TaVisitorLicenseSettingMapper.java
  10. 49
    0
      CODE/smart-community/property-api/src/main/java/com/community/huiju/model/TaVisitorLicenseSetting.java
  11. 33
    0
      CODE/smart-community/property-api/src/main/java/com/community/huiju/service/ITaVisitorLicenseSettingService.java
  12. 69
    0
      CODE/smart-community/property-api/src/main/java/com/community/huiju/service/impl/TaVisitorLicenseSettingServiceImpl.java
  13. 5
    0
      CODE/smart-community/property-api/src/main/resources/mapper/TaVisitorLicenseSettingMapper.xml
  14. 18
    0
      VUECODE/smart-property-manage/src/api/banner.js
  15. 19
    1
      VUECODE/smart-property-manage/src/store/modules/banner.js
  16. 35
    1
      VUECODE/smart-property-manage/src/views/systemResources/banner/index.vue
  17. 0
    10
      VUECODE/smart-property-manage/src/views/systemResources/homeIndex/index.html
  18. 1
    1
      VUECODE/smart-property-manage/src/views/systemResources/property/index.vue
  19. 30
    31
      VUECODE/smart-property-manage/src/views/ticket/details.vue
  20. 2
    2
      VUECODE/smart-property-manage/src/views/ticket/index.vue

+ 14
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/VistorController.java 查看文件

@@ -70,4 +70,18 @@ public class VistorController extends BaseController {
70 70
         responseBean = vistorServiceI.invateHis(communityId, userId);
71 71
         return  responseBean;
72 72
     }
73
+
74
+    @ApiOperation(value = "查询是否开启了访客邀请的车辆", notes = "查询是否开启了访客邀请的车辆")
75
+    @ApiImplicitParams({
76
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "communityId", value = "小区Id")
77
+    })
78
+    @RequestMapping(value = "/invate_license/bool", method = RequestMethod.GET)
79
+    public ResponseBean invateBool(@RequestParam("communityId") Integer communityId) {
80
+        ResponseBean responseBean = new ResponseBean();
81
+        responseBean = vistorServiceI.invateBool(communityId);
82
+        return responseBean;
83
+    }
84
+
85
+
86
+
73 87
 }

+ 26
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TaVisitorLicenseSettingMapper.java 查看文件

@@ -0,0 +1,26 @@
1
+package com.community.huiju.dao;
2
+
3
+import com.community.huiju.model.TaVisitorLicenseSetting;
4
+import org.apache.ibatis.annotations.Mapper;
5
+import org.apache.ibatis.annotations.Param;
6
+import org.apache.ibatis.annotations.ResultMap;
7
+import org.apache.ibatis.annotations.Select;
8
+
9
+@Mapper
10
+public interface TaVisitorLicenseSettingMapper {
11
+    int deleteByPrimaryKey(Integer id);
12
+
13
+    int insert(TaVisitorLicenseSetting record);
14
+
15
+    int insertSelective(TaVisitorLicenseSetting record);
16
+
17
+    TaVisitorLicenseSetting selectByPrimaryKey(Integer id);
18
+
19
+    int updateByPrimaryKeySelective(TaVisitorLicenseSetting record);
20
+
21
+    int updateByPrimaryKey(TaVisitorLicenseSetting record);
22
+
23
+    @ResultMap("BaseResultMap")
24
+    @Select("select * from ta_visitor_license_setting where community_id = #{communityId}")
25
+    TaVisitorLicenseSetting selectByCommunityId(@Param("communityId") Integer communityId);
26
+}

+ 45
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/model/TaVisitorLicenseSetting.java 查看文件

@@ -0,0 +1,45 @@
1
+package com.community.huiju.model;
2
+
3
+import java.util.Date;
4
+
5
+public class TaVisitorLicenseSetting {
6
+    private Integer id;
7
+
8
+    private Integer communityId;
9
+
10
+    private Date createDate;
11
+
12
+    private Integer createUser;
13
+
14
+    public Integer getId() {
15
+        return id;
16
+    }
17
+
18
+    public void setId(Integer id) {
19
+        this.id = id;
20
+    }
21
+
22
+    public Integer getCommunityId() {
23
+        return communityId;
24
+    }
25
+
26
+    public void setCommunityId(Integer communityId) {
27
+        this.communityId = communityId;
28
+    }
29
+
30
+    public Date getCreateDate() {
31
+        return createDate;
32
+    }
33
+
34
+    public void setCreateDate(Date createDate) {
35
+        this.createDate = createDate;
36
+    }
37
+
38
+    public Integer getCreateUser() {
39
+        return createUser;
40
+    }
41
+
42
+    public void setCreateUser(Integer createUser) {
43
+        this.createUser = createUser;
44
+    }
45
+}

+ 7
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/TaVistorServiceI.java 查看文件

@@ -28,4 +28,11 @@ public interface TaVistorServiceI {
28 28
      * @return
29 29
      */
30 30
     ResponseBean invateHis(Integer communityId, Integer userId);
31
+
32
+    /**
33
+     * 查询 邀请访客车辆 是否开启
34
+     * @param communityId
35
+     * @return
36
+     */
37
+    ResponseBean invateBool(Integer communityId);
31 38
 }

+ 9
- 3
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserLicenseServiceImpl.java 查看文件

@@ -142,10 +142,16 @@ public class TaUserLicenseServiceImpl implements ITaUserLicenseService {
142 142
         taUserLicense.setLicenseType(dataType);
143 143
 
144 144
         taUserLicense.setLicensePlate(carNo);
145
-        String price = String.valueOf(Double.valueOf(((BigDecimal) jsonParam.get("Cost")).toString()) * 100);
146
-        taUserLicense.setUnitPrice(price.substring(0, price.lastIndexOf(".")));
145
+        Object cost = jsonParam.get("Cost");
146
+        if (null != cost) {
147
+            String price = String.valueOf(Double.valueOf(((BigDecimal) cost).toString()) * 100);
148
+            taUserLicense.setUnitPrice(price.substring(0, price.lastIndexOf(".")));
149
+        }
147 150
         taUserLicense.setParkingLot(String.valueOf(jsonParam.get("ParkingName")));
148
-        taUserLicense.setRenewTime(Integer.valueOf(String.valueOf(jsonParam.get("RenewTime"))));
151
+        Object renewTime = jsonParam.get("RenewTime");
152
+        if (null != renewTime) {
153
+            taUserLicense.setRenewTime(Integer.valueOf(String.valueOf(renewTime)));
154
+        }
149 155
 
150 156
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
151 157
         try {

+ 15
- 8
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaVistorServiceImpl.java 查看文件

@@ -5,14 +5,8 @@ import com.community.commom.constant.Constant;
5 5
 import com.community.commom.mode.ResponseBean;
6 6
 import com.community.commom.session.UserElement;
7 7
 import com.community.commom.hk.HKOpenApi;
8
-import com.community.huiju.dao.TaUserMapper;
9
-import com.community.huiju.dao.TaVisitorLicenseMapper;
10
-import com.community.huiju.dao.TaVisitorMapper;
11
-import com.community.huiju.dao.TpEquipmentTreeMapper;
12
-import com.community.huiju.model.TaUser;
13
-import com.community.huiju.model.TaVisitor;
14
-import com.community.huiju.model.TaVisitorLicense;
15
-import com.community.huiju.model.TpEquipmentTree;
8
+import com.community.huiju.dao.*;
9
+import com.community.huiju.model.*;
16 10
 import com.community.huiju.service.TaVistorServiceI;
17 11
 import com.google.common.collect.Maps;
18 12
 import lombok.extern.slf4j.Slf4j;
@@ -46,6 +40,9 @@ public class TaVistorServiceImpl implements TaVistorServiceI {
46 40
     @Autowired
47 41
     private TpEquipmentTreeMapper tpEquipmentTreeMapper;
48 42
 
43
+    @Autowired
44
+    private TaVisitorLicenseSettingMapper taVisitorLicenseSettingMapper;
45
+
49 46
     @Override
50 47
     @Transactional(rollbackFor = Exception.class)
51 48
     public ResponseBean insertTaVistor(TaVisitor taVisitor, UserElement userElement) {
@@ -145,4 +142,14 @@ public class TaVistorServiceImpl implements TaVistorServiceI {
145 142
         throw new RuntimeException("创建访问登记失败!" + errorMessage);
146 143
 
147 144
     }
145
+
146
+
147
+    @Override
148
+    public ResponseBean invateBool(Integer communityId) {
149
+        ResponseBean responseBean = new ResponseBean();
150
+        TaVisitorLicenseSetting taVisitorLicenseSetting = taVisitorLicenseSettingMapper.selectByCommunityId(communityId);
151
+        // true 表示启用了访客邀请的车辆, false 表示未启用访客邀请的车辆
152
+        responseBean.addSuccess(null != taVisitorLicenseSetting ? true : false);
153
+        return responseBean;
154
+    }
148 155
 }

+ 82
- 0
CODE/smart-community/app-api/src/main/resources/mapper/TaVisitorLicenseSettingMapper.xml 查看文件

@@ -0,0 +1,82 @@
1
+<?xml version="1.0" encoding="UTF-8" ?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
3
+<mapper namespace="com.community.huiju.dao.TaVisitorLicenseSettingMapper" >
4
+  <resultMap id="BaseResultMap" type="com.community.huiju.model.TaVisitorLicenseSetting" >
5
+    <id column="id" property="id" jdbcType="INTEGER" />
6
+    <result column="community_id" property="communityId" jdbcType="INTEGER" />
7
+    <result column="create_date" property="createDate" jdbcType="TIMESTAMP" />
8
+    <result column="create_user" property="createUser" jdbcType="INTEGER" />
9
+  </resultMap>
10
+  <sql id="Base_Column_List" >
11
+    id, community_id, create_date, create_user
12
+  </sql>
13
+  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
14
+    select 
15
+    <include refid="Base_Column_List" />
16
+    from ta_visitor_license_setting
17
+    where id = #{id,jdbcType=INTEGER}
18
+  </select>
19
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
20
+    delete from ta_visitor_license_setting
21
+    where id = #{id,jdbcType=INTEGER}
22
+  </delete>
23
+  <insert id="insert" parameterType="com.community.huiju.model.TaVisitorLicenseSetting" >
24
+    insert into ta_visitor_license_setting (id, community_id, create_date, 
25
+      create_user)
26
+    values (#{id,jdbcType=INTEGER}, #{communityId,jdbcType=INTEGER}, #{createDate,jdbcType=TIMESTAMP}, 
27
+      #{createUser,jdbcType=INTEGER})
28
+  </insert>
29
+  <insert id="insertSelective" parameterType="com.community.huiju.model.TaVisitorLicenseSetting" >
30
+    insert into ta_visitor_license_setting
31
+    <trim prefix="(" suffix=")" suffixOverrides="," >
32
+      <if test="id != null" >
33
+        id,
34
+      </if>
35
+      <if test="communityId != null" >
36
+        community_id,
37
+      </if>
38
+      <if test="createDate != null" >
39
+        create_date,
40
+      </if>
41
+      <if test="createUser != null" >
42
+        create_user,
43
+      </if>
44
+    </trim>
45
+    <trim prefix="values (" suffix=")" suffixOverrides="," >
46
+      <if test="id != null" >
47
+        #{id,jdbcType=INTEGER},
48
+      </if>
49
+      <if test="communityId != null" >
50
+        #{communityId,jdbcType=INTEGER},
51
+      </if>
52
+      <if test="createDate != null" >
53
+        #{createDate,jdbcType=TIMESTAMP},
54
+      </if>
55
+      <if test="createUser != null" >
56
+        #{createUser,jdbcType=INTEGER},
57
+      </if>
58
+    </trim>
59
+  </insert>
60
+  <update id="updateByPrimaryKeySelective" parameterType="com.community.huiju.model.TaVisitorLicenseSetting" >
61
+    update ta_visitor_license_setting
62
+    <set >
63
+      <if test="communityId != null" >
64
+        community_id = #{communityId,jdbcType=INTEGER},
65
+      </if>
66
+      <if test="createDate != null" >
67
+        create_date = #{createDate,jdbcType=TIMESTAMP},
68
+      </if>
69
+      <if test="createUser != null" >
70
+        create_user = #{createUser,jdbcType=INTEGER},
71
+      </if>
72
+    </set>
73
+    where id = #{id,jdbcType=INTEGER}
74
+  </update>
75
+  <update id="updateByPrimaryKey" parameterType="com.community.huiju.model.TaVisitorLicenseSetting" >
76
+    update ta_visitor_license_setting
77
+    set community_id = #{communityId,jdbcType=INTEGER},
78
+      create_date = #{createDate,jdbcType=TIMESTAMP},
79
+      create_user = #{createUser,jdbcType=INTEGER}
80
+    where id = #{id,jdbcType=INTEGER}
81
+  </update>
82
+</mapper>

+ 63
- 0
CODE/smart-community/property-api/src/main/java/com/community/huiju/controller/TaVisitorLicenseSettingController.java 查看文件

@@ -0,0 +1,63 @@
1
+package com.community.huiju.controller;
2
+
3
+
4
+import com.community.commom.mode.ResponseBean;
5
+import com.community.commom.session.UserElement;
6
+import com.community.huiju.common.base.BaseController;
7
+import com.community.huiju.service.ITaVisitorLicenseSettingService;
8
+import io.swagger.annotations.Api;
9
+import io.swagger.annotations.ApiImplicitParam;
10
+import io.swagger.annotations.ApiImplicitParams;
11
+import io.swagger.annotations.ApiOperation;
12
+import org.springframework.beans.factory.annotation.Autowired;
13
+import org.springframework.web.bind.annotation.RequestMapping;
14
+import org.springframework.web.bind.annotation.RequestMethod;
15
+import org.springframework.web.bind.annotation.RequestParam;
16
+import org.springframework.web.bind.annotation.RestController;
17
+
18
+import javax.servlet.http.HttpSession;
19
+
20
+/**
21
+ * <p>
22
+ * 录入访客车牌功能开关表 前端控制器
23
+ * </p>
24
+ *
25
+ * @author jobob
26
+ * @since 2019-05-27
27
+ */
28
+@RestController
29
+@RequestMapping("/")
30
+@Api(value = "录入访客车牌功能开关", description = "录入访客车牌功能开关")
31
+public class TaVisitorLicenseSettingController extends BaseController {
32
+
33
+    @Autowired
34
+    private ITaVisitorLicenseSettingService taVisitorLicenseSettingService;
35
+
36
+    @ApiOperation(value = "是否开启访客邀请车辆", notes = "是否开启访客邀请车辆")
37
+    @ApiImplicitParams({
38
+            @ApiImplicitParam(dataTypeClass = Boolean.class, paramType = "form", name = "visitorLicenseBool", value = "true 表示开启  false 关闭"),
39
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "header", name = "X-Auth-Token", value = "Token")
40
+    })
41
+    @RequestMapping(value = "/visitor/saveOrDelete", method = RequestMethod.POST)
42
+    public ResponseBean saveOrDelete(HttpSession session, @RequestParam("visitorLicenseBool") Boolean visitorLicenseBool){
43
+        ResponseBean responseBean = new ResponseBean();
44
+        UserElement userElement = getUserElement(session);
45
+        responseBean = taVisitorLicenseSettingService.saveOrDelete(userElement, visitorLicenseBool);
46
+
47
+        return responseBean;
48
+    }
49
+
50
+
51
+    @ApiOperation(value = "查看是否开启访客车辆邀请", notes = "查看是否开启访客车辆邀请")
52
+    @ApiImplicitParams({
53
+            @ApiImplicitParam(paramType = "header", dataTypeClass = String.class, name = "X-Auth-Token", value = "Token")
54
+    })
55
+    @RequestMapping(value = "/visitor", method = RequestMethod.GET)
56
+    public ResponseBean getVisitorLicense(HttpSession session) {
57
+        ResponseBean responseBean = new ResponseBean();
58
+        UserElement userElement = getUserElement(session);
59
+        responseBean = taVisitorLicenseSettingService.getVisitorLicense(userElement);
60
+        return responseBean;
61
+    }
62
+
63
+}

+ 16
- 0
CODE/smart-community/property-api/src/main/java/com/community/huiju/dao/TaVisitorLicenseSettingMapper.java 查看文件

@@ -0,0 +1,16 @@
1
+package com.community.huiju.dao;
2
+
3
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.community.huiju.model.TaVisitorLicenseSetting;
5
+
6
+/**
7
+ * <p>
8
+ * 录入访客车牌功能开关表 Mapper 接口
9
+ * </p>
10
+ *
11
+ * @author jobob
12
+ * @since 2019-05-27
13
+ */
14
+public interface TaVisitorLicenseSettingMapper extends BaseMapper<TaVisitorLicenseSetting> {
15
+
16
+}

+ 49
- 0
CODE/smart-community/property-api/src/main/java/com/community/huiju/model/TaVisitorLicenseSetting.java 查看文件

@@ -0,0 +1,49 @@
1
+package com.community.huiju.model;
2
+
3
+import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableField;
5
+import com.baomidou.mybatisplus.annotation.TableId;
6
+import com.baomidou.mybatisplus.annotation.TableName;
7
+import lombok.Data;
8
+import lombok.EqualsAndHashCode;
9
+import lombok.experimental.Accessors;
10
+
11
+import java.io.Serializable;
12
+import java.time.LocalDateTime;
13
+
14
+/**
15
+ * <p>
16
+ * 录入访客车牌功能开关表
17
+ * </p>
18
+ *
19
+ * @author jobob
20
+ * @since 2019-05-27
21
+ */
22
+@Data
23
+@EqualsAndHashCode(callSuper = false)
24
+@Accessors(chain = true)
25
+@TableName("ta_visitor_license_setting")
26
+public class TaVisitorLicenseSetting implements Serializable {
27
+
28
+    private static final long serialVersionUID = 1L;
29
+
30
+    @TableId(value = "id", type = IdType.AUTO)
31
+    private Integer id;
32
+
33
+    /**
34
+     * 小区ID
35
+     */
36
+    private Integer communityId;
37
+
38
+    /**
39
+     * 创建时间
40
+     */
41
+    private LocalDateTime createDate;
42
+
43
+    /**
44
+     * 物业端创建人
45
+     */
46
+    private Integer createUser;
47
+
48
+
49
+}

+ 33
- 0
CODE/smart-community/property-api/src/main/java/com/community/huiju/service/ITaVisitorLicenseSettingService.java 查看文件

@@ -0,0 +1,33 @@
1
+package com.community.huiju.service;
2
+
3
+import com.baomidou.mybatisplus.extension.service.IService;
4
+import com.community.commom.mode.ResponseBean;
5
+import com.community.commom.session.UserElement;
6
+import com.community.huiju.model.TaVisitorLicenseSetting;
7
+
8
+/**
9
+ * <p>
10
+ * 录入访客车牌功能开关表 服务类
11
+ * </p>
12
+ *
13
+ * @author jobob
14
+ * @since 2019-05-27
15
+ */
16
+public interface ITaVisitorLicenseSettingService extends IService<TaVisitorLicenseSetting> {
17
+
18
+    /**
19
+     * true 开启访客邀请的车辆  false 关闭访客邀请的车辆
20
+     * @param userElement
21
+     * @param visitorLicenseBool
22
+     * @return
23
+     */
24
+    ResponseBean saveOrDelete(UserElement userElement, Boolean visitorLicenseBool);
25
+
26
+    /**
27
+     * 获取 访客邀请车辆是否开启
28
+     * @param userElement
29
+     * @return
30
+     */
31
+    ResponseBean getVisitorLicense(UserElement userElement);
32
+
33
+}

+ 69
- 0
CODE/smart-community/property-api/src/main/java/com/community/huiju/service/impl/TaVisitorLicenseSettingServiceImpl.java 查看文件

@@ -0,0 +1,69 @@
1
+package com.community.huiju.service.impl;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5
+import com.community.commom.mode.ResponseBean;
6
+import com.community.commom.session.UserElement;
7
+import com.community.huiju.dao.TaVisitorLicenseSettingMapper;
8
+import com.community.huiju.model.TaVisitorLicenseSetting;
9
+import com.community.huiju.service.ITaVisitorLicenseSettingService;
10
+import org.springframework.stereotype.Service;
11
+
12
+import java.time.LocalDateTime;
13
+
14
+/**
15
+ * <p>
16
+ * 录入访客车牌功能开关表 服务实现类
17
+ * </p>
18
+ *
19
+ * @author jobob
20
+ * @since 2019-05-27
21
+ */
22
+@Service
23
+public class TaVisitorLicenseSettingServiceImpl extends ServiceImpl<TaVisitorLicenseSettingMapper, TaVisitorLicenseSetting> implements ITaVisitorLicenseSettingService {
24
+
25
+    @Override
26
+    public ResponseBean saveOrDelete(UserElement userElement, Boolean visitorLicenseBool) {
27
+        ResponseBean responseBean = new ResponseBean();
28
+
29
+        QueryWrapper<TaVisitorLicenseSetting> visitorLicenseSettingQueryWrapper = new QueryWrapper<>();
30
+        visitorLicenseSettingQueryWrapper.eq("community_id", userElement.getCommunityId());
31
+        TaVisitorLicenseSetting taVisitorLicenseSetting = this.getOne(visitorLicenseSettingQueryWrapper);
32
+
33
+        // true 表示开启访客邀请车辆
34
+        if (visitorLicenseBool) {
35
+            if (null != taVisitorLicenseSetting) {
36
+                responseBean.addSuccess("操作成功!");
37
+                return responseBean;
38
+            }
39
+            TaVisitorLicenseSetting visitorLicenseSetting = new TaVisitorLicenseSetting();
40
+            visitorLicenseSetting.setCommunityId(userElement.getCommunityId());
41
+            visitorLicenseSetting.setCreateDate(LocalDateTime.now());
42
+            visitorLicenseSetting.setCreateUser(userElement.getId());
43
+
44
+            this.save(visitorLicenseSetting);
45
+
46
+            responseBean.addSuccess("操作成功!");
47
+            return responseBean;
48
+        }
49
+
50
+
51
+        if (null != taVisitorLicenseSetting) {
52
+            this.removeById(taVisitorLicenseSetting.getId());
53
+        }
54
+        responseBean.addSuccess("操作成功!");
55
+        return responseBean;
56
+    }
57
+
58
+    @Override
59
+    public ResponseBean getVisitorLicense(UserElement userElement) {
60
+        ResponseBean responseBean = new ResponseBean();
61
+
62
+        QueryWrapper<TaVisitorLicenseSetting> visitorLicenseSettingQueryWrapper = new QueryWrapper<>();
63
+        visitorLicenseSettingQueryWrapper.eq("community_id", userElement.getCommunityId());
64
+        TaVisitorLicenseSetting visitorLicenseSetting = this.getOne(visitorLicenseSettingQueryWrapper);
65
+        // true 表示启用了访客邀请的车辆, false 表示未启用访客邀请的车辆
66
+        responseBean.addSuccess(null != visitorLicenseSetting ? true : false);
67
+        return responseBean;
68
+    }
69
+}

+ 5
- 0
CODE/smart-community/property-api/src/main/resources/mapper/TaVisitorLicenseSettingMapper.xml 查看文件

@@ -0,0 +1,5 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.community.huiju.dao.TaVisitorLicenseSettingMapper">
4
+
5
+</mapper>

+ 18
- 0
VUECODE/smart-property-manage/src/api/banner.js 查看文件

@@ -74,3 +74,21 @@ export function carouselGetBanner() {
74 74
   })
75 75
 }
76 76
 
77
+// 查看是否开启访客车辆邀请
78
+export function getVisitorLicenseSetting() {
79
+  return request({
80
+    url: '/visitor',
81
+    method: 'get'
82
+  })
83
+}
84
+
85
+// 是否开启访客邀请车辆
86
+export function visitorSaveOrDelete(visitorLicenseBool) {
87
+  return request({
88
+    url: '/visitor/saveOrDelete',
89
+    method: 'post',
90
+    params: {
91
+      visitorLicenseBool: visitorLicenseBool
92
+    }
93
+  })
94
+}

+ 19
- 1
VUECODE/smart-property-manage/src/store/modules/banner.js 查看文件

@@ -1,4 +1,4 @@
1
-import { getBanner, addBanner, updateBanner, deleteBanner, getByBannerId, carouselAnnouncementBanner, carouselActivityBanner, carouselGetBanner } from '@/api/banner'
1
+import { getBanner, addBanner, updateBanner, deleteBanner, getByBannerId, carouselAnnouncementBanner, carouselActivityBanner, carouselGetBanner, getVisitorLicenseSetting, visitorSaveOrDelete } from '@/api/banner'
2 2
 
3 3
 const banner = {
4 4
   actions: {
@@ -86,6 +86,24 @@ const banner = {
86 86
           reject(error)
87 87
         })
88 88
       })
89
+    },
90
+    GetVisitorLicenseSetting({ commit }) { // 查看是否开启访客车辆邀请
91
+      return new Promise((resolve, reject) => {
92
+        getVisitorLicenseSetting().then(response => {
93
+          resolve(response)
94
+        }).catch(error => {
95
+          reject(error)
96
+        })
97
+      })
98
+    },
99
+    VisitorSaveOrDelete({ commit }, data) { // 是否开启访客邀请车辆
100
+      return new Promise((resolve, reject) => {
101
+        visitorSaveOrDelete(data).then(response => {
102
+          resolve(response)
103
+        }).catch(error => {
104
+          reject(error)
105
+        })
106
+      })
89 107
     }
90 108
   }
91 109
 }

+ 35
- 1
VUECODE/smart-property-manage/src/views/systemResources/banner/index.vue 查看文件

@@ -16,6 +16,15 @@
16 16
       </el-tooltip>
17 17
       <el-button v-if="activityBannerNumBool" type="primary" @click="carouselActivityBanner">保存</el-button>
18 18
     </div>
19
+    <div style="width: 1000px; margin-left: auto; margin-right: auto; margin-top: 20px;">
20
+      <span style="font-size:0.7vw;color:#666666;">业主邀请访客时,录入访客车牌功能 开还是关?</span>
21
+      <el-radio v-model="visitorBool" :label="true" style="margin-left: 58px;" @change="visitorSaveOrDelete">开</el-radio>
22
+      <el-radio v-model="visitorBool" :label="false" @change="visitorSaveOrDelete">关</el-radio>
23
+      <el-tooltip class="item" effect="dark" content="小区如果实际允许临时车出入停车场,则建议此配置为关。只有小区禁止临时车进入时,业主才需要邀请访客车辆进入小区。" placement="top-start">
24
+        <i class="el-icon-info"/>
25
+      </el-tooltip>
26
+      <el-button v-if="activityBannerNumBool" type="primary" @click="carouselActivityBanner">保存</el-button>
27
+    </div>
19 28
   </div>
20 29
 </template>
21 30
 
@@ -27,11 +36,13 @@ export default {
27 36
       announcementBannerNum: 0, // banner数量
28 37
       activityBannerNum: 0, // 活动banner数量
29 38
       announcementBannerBool: false, // 是否显示公告的保存按钮
30
-      activityBannerNumBool: false // 是否显示活动的保存按钮
39
+      activityBannerNumBool: false, // 是否显示活动的保存按钮
40
+      visitorBool: false // 是否打开
31 41
     }
32 42
   },
33 43
   mounted() {
34 44
     this.carouselGetBanner()
45
+    this.getVisitorLicenseSetting()
35 46
   },
36 47
   methods: {
37 48
     handleBannerChange(value) {
@@ -78,7 +89,30 @@ export default {
78 89
       }).catch(() => {
79 90
         console.log('error CarouselGetBanner')
80 91
       })
92
+    },
93
+    getVisitorLicenseSetting() { // 查看是否开启访客车辆邀请
94
+      this.$store.dispatch('GetVisitorLicenseSetting').then(res => {
95
+        const resCode = res.code
96
+        if (resCode === '0') {
97
+          this.visitorBool = res.data
98
+        }
99
+      }).catch(() => {
100
+        console.log('error GetVisitorLicenseSetting')
101
+      })
102
+    },
103
+    visitorSaveOrDelete() { // 是否开启访客邀请车辆
104
+      this.$store.dispatch('VisitorSaveOrDelete', this.visitorBool).then(res => {
105
+        const resCode = res.code
106
+        if (resCode === '0') {
107
+          this.$message.success(res.message)
108
+          return
109
+        }
110
+        this.$message.error(res.message)
111
+      }).catch(() => {
112
+        console.log('error VisitorSaveOrDelete')
113
+      })
81 114
     }
115
+
82 116
   }
83 117
 
84 118
 }

+ 0
- 10
VUECODE/smart-property-manage/src/views/systemResources/homeIndex/index.html 查看文件

@@ -1,10 +0,0 @@
1
-<!DOCTYPE html>
2
-<html lang="en">
3
-<head>
4
-    <meta charset="UTF-8">
5
-    <title>$Title$</title>
6
-</head>
7
-<body>
8
-$END$
9
-</body>
10
-</html>

+ 1
- 1
VUECODE/smart-property-manage/src/views/systemResources/property/index.vue 查看文件

@@ -5,7 +5,7 @@
5 5
         <el-input v-model="formInline.name" placeholder="名称"/>
6 6
       </el-form-item>
7 7
       <el-form-item label="号码">
8
-        <el-input v-model="formInline.tel" placeholder="号码"/>
8
+        <el-input v-model="formInline.tel" placeholder="号码" oninput="value=value.replace(/[^\d]/g,'')"/>
9 9
       </el-form-item>
10 10
       <el-form-item label="备注">
11 11
         <el-input v-model="formInline.remark" placeholder="备注"/>

+ 30
- 31
VUECODE/smart-property-manage/src/views/ticket/details.vue 查看文件

@@ -1,6 +1,6 @@
1 1
 <template>
2 2
   <div id="app" style="margin-top:30px;font-size: 14px; color: #606266;">
3
-    <el-form :inline="true" :model="listQuery" class="form-listQuery">
3
+    <el-form :inline="true" :model="listQuery" class="form-listQuery" style="margin-right: 15px;">
4 4
       <div style="transform:translateY(-70%); margin-top:5px;">
5 5
         <span style="padding-left:0.8%;font-size: 16px;color: rgb(96, 98, 102);font-weight: bold;">工单详情</span>
6 6
       </div>
@@ -103,7 +103,7 @@
103 103
                     <tr>
104 104
                       <td>
105 105
                         <div class="processing_content_detail" style="float:left;width:70%">
106
-                          <span>{{ itemContent.userName }}:{{ itemContent.content }}
106
+                          <span>{{ itemContent.userName }}: {{ itemContent.content }}
107 107
                             <span style="color:#219AFF"/>
108 108
                           </span>
109 109
                         </div>
@@ -112,11 +112,10 @@
112 112
                     <tr>
113 113
                       <td>
114 114
                         <div class="processing_content_detail" style="float:left;width:90%">
115
-                          <div style="float:left;width: 2px;height: 20px; background:#C7D4E9;margin-left:10px;margin-right:10px"/>
116 115
                           <!-- <img :src="contentImgURL.imageUrl"  v-for="contentImgURL in itemContent.imgURL" preview preview-text="描述"  width="200" style="margin:5px;"> -->
117 116
                           <img v-for="contentImgURL in itemContent.imgURL" :src="contentImgURL.imageUrl" preview width="100" height="100" style="margin:5px;"/>
118 117
                           <div><span ><i class="el-icon-time"/>{{ formatDate(itemContent.createDate) }}</span> </div>
119
-                          <div> <hr style="height:1px;border:none;border-top:1px solid #FF8888;" width="200%"></div>
118
+                          <div> <hr style="height:1px;border:none;border-top:1px solid #99a9bf;" width="200%"></div>
120 119
                         </div>
121 120
                       </td>
122 121
                     </tr>
@@ -126,15 +125,15 @@
126 125
             </el-step>
127 126
           </el-steps>
128 127
         </div>
129
-        <div v-if="listQuery.status==='0'||listQuery.status==='3'">
128
+        <div v-if="listQuery.status==='0'||listQuery.status==='3'" style="margin-left: -5px; margin-top: 30px;">
130 129
           <div>
131
-            <span>参与沟通</span>
130
+            <span style="font-size: 16px;color: rgb(96, 98, 102);font-weight: bold;">参与沟通</span>
132 131
           </div>
133 132
           <br>
134 133
           <div>
135 134
             <textarea id="message_textarea" v-model="listQuery.textContent" placeholder="回复TA或向TA提问" class="textarea-inherit" rows="4"/>
136 135
           </div>
137
-          <div>
136
+          <div style="margin-top: 10px;">
138 137
             <el-form-item label="图片附件">
139 138
               <el-upload
140 139
                 :limit="8"
@@ -155,15 +154,15 @@
155 154
             <el-button type="primary" style="margin-left: 90%;transform:translateY(-340%);" @click="submitContent">提交</el-button>
156 155
           </div>
157 156
         </div>
158
-        <div v-if="listQuery.status==='3'">
157
+        <div v-if="listQuery.status==='3'" style="margin-left: -5px;">
159 158
           <div>
160
-            <span>流程操作</span>
159
+            <span style="font-size: 16px;color: rgb(96, 98, 102);font-weight: bold;">流程操作</span>
161 160
           </div>
162 161
           <br>
163 162
           <div>
164 163
             <textarea id="message_textarea" v-model="listQuery.relationContent" placeholder="处理完了?在此填写处理结果,发送给户主让TA给好评~" class="textarea-inherit" rows="4"/>
165 164
           </div>
166
-          <div>
165
+          <div style="margin-top: 10px;">
167 166
             <el-form-item label="图片附件">
168 167
               <el-upload
169 168
                 :limit="8"
@@ -186,15 +185,15 @@
186 185
         </div>
187 186
 
188 187
         <div v-if="listQuery.status==='0'">
189
-          <el-form-item style="width:1000px;" >
190
-            <el-select v-model="listQuery.selectVale" placeholder="请选择工单由谁负责,然后点击受理分配" >
188
+          <el-form-item>
189
+            <el-select v-model="listQuery.selectVale" placeholder="请选择工单由谁负责,然后点击受理分配" style="width: 300px;">
191 190
               <el-option label="请选择工单由谁负责,然后点击受理分配" value="-1" />
192 191
               <el-option :value="listQuery.currentUserName" label="我自己"/>
193 192
               <el-option v-for="user in listQuery.userList" :label="user.userName" :value="user.id"/>
194 193
             </el-select>
194
+            <el-button style="margin-left: 30px;" type="primary" @click="addRecord">受理分配</el-button>
195 195
           </el-form-item>
196
-          <el-button type="primary" @click="addRecord">受理分配</el-button>
197
-          <a><span style="margin-left: 600px;color: #009FCC" @click="noAccept">{{ '拒绝受理?' }}&nbsp;&nbsp;&nbsp;&nbsp;</span></a><span>{{ '拒绝受理即关闭此工单,不再进行后续任何流程,请谨慎' }}</span>
196
+          <a><span style="color: #009FCC;margin-left: 300px;margin-top: 10px;" @click="noAccept">{{ '拒绝受理?' }}&nbsp;&nbsp;&nbsp;&nbsp;</span></a><span>{{ '拒绝受理即关闭此工单,不再进行后续任何流程,请谨慎' }}</span>
198 197
         </div>
199 198
       </div>
200 199
     </el-form>
@@ -429,19 +428,18 @@ export default {
429 428
     },
430 429
     // 回复
431 430
     submitContent() {
431
+      if (this.listQuery.textContent === undefined || this.listQuery.textContent === '') {
432
+        this.$message.error('请输入内容')
433
+        return
434
+      }
432 435
       const loading = this.$loading({
433 436
         lock: true,
434 437
         text: 'Loading',
435 438
         spinner: 'el-icon-loading',
436 439
         background: 'rgba(0, 0, 0, 0.7)'
437 440
       })
438
-      if (this.listQuery.textContent === undefined || this.listQuery.textContent === '') {
439
-        this.$message.error('请输入内容')
440
-        loading.close()
441
-        return
442
-      }
443 441
       this.listQuery.img = this.contentImgAA
444
-      this.$store.dispatch('AddRecordComment', this.listQuery,).then((res) => {
442
+      this.$store.dispatch('AddRecordComment', this.listQuery).then((res) => {
445 443
         this.Ass = false
446 444
         this.contentImgAA = []
447 445
         this.dataQuery()
@@ -513,18 +511,17 @@ export default {
513 511
     },
514 512
     // 流程提交
515 513
     succeedClick() {
514
+      if (this.listQuery.relationContent === undefined || this.listQuery.relationContent === '') {
515
+        this.$message.error('请输入处理结果')
516
+        return
517
+      }
518
+
516 519
       const loading = this.$loading({
517 520
         lock: true,
518 521
         text: 'Loading',
519 522
         spinner: 'el-icon-loading',
520 523
         background: 'rgba(0, 0, 0, 0.7)'
521 524
       })
522
-
523
-      if (this.listQuery.relationContent === undefined || this.listQuery.relationContent === '') {
524
-        this.$message.error('请填写内容')
525
-        loading.close()
526
-        return
527
-      }
528 525
       this.listQuery.imgIO = this.contentImgIO
529 526
       this.$store.dispatch('UpdateTicket', this.listQuery).then((res) => {
530 527
         this.Ass = false
@@ -568,11 +565,13 @@ export default {
568 565
     background-color: #D9E5F9;
569 566
   } */
570 567
   .processing_content_detail{
571
-     margin-left: 10px;
572
-     margin-top: 3.5px;
573
-     margin-bottom: 3.5px;
574
-	   width:200px;
575
-     display:inline-block;
568
+    margin-left: 10px;
569
+    margin-top: 3.5px;
570
+    margin-bottom: 3.5px;
571
+    width:200px;
572
+    display:inline-block;
573
+    font-size: 14px;
574
+    color: rgb(96, 98, 102);
576 575
   }
577 576
   .step-row{
578 577
      min-width:400px;

+ 2
- 2
VUECODE/smart-property-manage/src/views/ticket/index.vue 查看文件

@@ -56,7 +56,7 @@
56 56
       <el-table-column prop="ticketTitle" label="标题" align="center">
57 57
       <template slot-scope="scope" >
58 58
         <a :title="scope.row.ticketTitle" @click="clickTitle(scope.row.id)">
59
-          <span style="color: #009FCC	">
59
+          <span style="color: rgb(64, 158, 255);">
60 60
            {{ scope.row.ticketTitle.length>='15'?scope.row.ticketTitle.substring(0,15)+'..':scope.row.ticketTitle }}
61 61
           </span>
62 62
         </a>
@@ -227,4 +227,4 @@ export default {
227 227
 .button {
228 228
   margin-left: 20px;
229 229
 }
230
-</style>
230
+</style>