Browse Source

楼盘渠道相关

傅行帆 3 years ago
parent
commit
8bc2d86fe0

+ 140
- 0
src/main/java/com/yunzhi/marketing/xlk/controller/BuildingChannelController.java View File

@@ -0,0 +1,140 @@
1
+package com.yunzhi.marketing.xlk.controller;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5
+import com.baomidou.mybatisplus.core.metadata.IPage;
6
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
7
+import com.yunzhi.marketing.base.BaseController;
8
+import com.yunzhi.marketing.base.ResponseBean;
9
+import com.yunzhi.marketing.xlk.dto.BuildingChannelDTO;
10
+import com.yunzhi.marketing.xlk.entity.BuildingChannel;
11
+import com.yunzhi.marketing.xlk.service.IBuildingChannelService;
12
+import io.swagger.annotations.Api;
13
+import io.swagger.annotations.ApiOperation;
14
+import org.slf4j.Logger;
15
+import org.slf4j.LoggerFactory;
16
+import org.springframework.beans.BeanUtils;
17
+import org.springframework.beans.factory.annotation.Autowired;
18
+import org.springframework.web.bind.annotation.*;
19
+
20
+import javax.servlet.http.HttpServletRequest;
21
+import java.time.LocalDateTime;
22
+import java.util.ArrayList;
23
+import java.util.List;
24
+
25
+/**
26
+ * <p>
27
+    * 楼盘渠道表  前端控制器
28
+    * </p>
29
+ *
30
+ * @author jobob
31
+ * @since 2021-07-18
32
+ */
33
+@RestController
34
+@RequestMapping("/api")
35
+@Api(value = "楼盘渠道表", tags = "xlk-楼盘渠道表")
36
+public class BuildingChannelController extends BaseController {
37
+
38
+    private final Logger logger = LoggerFactory.getLogger(BuildingChannelController.class);
39
+
40
+    @Autowired
41
+    public IBuildingChannelService iBuildingChannelService;
42
+
43
+
44
+    /**
45
+     * 保存对象
46
+     * @param buildingChannelDTO 实体对象
47
+     * @return
48
+     */
49
+    @ApiOperation(value = "admin-保存楼盘渠道接口", notes = "admin-保存楼盘渠道接口")
50
+    @RequestMapping(value="/admin/buildingChannel",method= RequestMethod.POST)
51
+    public ResponseBean buildingChannelAdd(@RequestHeader("authorization") String token,
52
+                                           @RequestBody BuildingChannelDTO buildingChannelDTO,
53
+                                           HttpServletRequest request){
54
+        ResponseBean responseBean = new ResponseBean();
55
+        try {
56
+            Integer orgId = getOrgId(request);
57
+            List<BuildingChannel> buildingChannelList = new ArrayList<>();
58
+            List<String> channelIdList = buildingChannelDTO.getChannelIdList();
59
+            channelIdList.forEach(e -> {
60
+                BuildingChannel buildingChannel = new BuildingChannel();
61
+                BeanUtils.copyProperties(e,buildingChannel);
62
+                buildingChannel.setChannelId(e);
63
+                buildingChannel.setCreateDate(LocalDateTime.now());
64
+                buildingChannel.setOrgId(orgId);
65
+                buildingChannelList.add(buildingChannel);
66
+            });
67
+            if (iBuildingChannelService.saveBatch(buildingChannelList)){
68
+                responseBean.addSuccess("添加成功");
69
+            }else {
70
+                responseBean.addError("fail");
71
+            }
72
+        }catch (Exception e){
73
+            e.printStackTrace();
74
+            logger.error("buildingChannelAdd -=- {}",e.toString());
75
+            responseBean.addError(e.getMessage());
76
+        }
77
+        return responseBean;
78
+    }
79
+
80
+    /**
81
+     * 修改对象
82
+     *
83
+     * @return
84
+     */
85
+    @ApiOperation(value = "admin-修改楼盘渠道接口", notes = "admin-修改楼盘渠道接口")
86
+    @RequestMapping(value="/admin/buildingChannel",method= RequestMethod.PUT)
87
+    public ResponseBean buildingChannelUpdate(@RequestHeader("authorization") String token,
88
+                                              @RequestBody BuildingChannelDTO buildingChannelDTO,
89
+                                              HttpServletRequest request){
90
+        ResponseBean responseBean = new ResponseBean();
91
+        try {
92
+            // 先把此楼盘的渠道全部删除
93
+            iBuildingChannelService.remove(new LambdaQueryWrapper<BuildingChannel>().eq(BuildingChannel::getBuildingId,buildingChannelDTO.getBuildingId()));
94
+
95
+            // 重新添加
96
+            Integer orgId = getOrgId(request);
97
+            List<BuildingChannel> buildingChannelList = new ArrayList<>();
98
+            List<String> channelIdList = buildingChannelDTO.getChannelIdList();
99
+            channelIdList.forEach(e -> {
100
+                BuildingChannel buildingChannel = new BuildingChannel();
101
+                BeanUtils.copyProperties(e,buildingChannel);
102
+                buildingChannel.setChannelId(e);
103
+                buildingChannel.setCreateDate(LocalDateTime.now());
104
+                buildingChannel.setOrgId(orgId);
105
+                buildingChannelList.add(buildingChannel);
106
+            });
107
+            if (iBuildingChannelService.saveBatch(buildingChannelList)){
108
+                responseBean.addSuccess("修改成功");
109
+            }else {
110
+                responseBean.addError("fail");
111
+            }
112
+        }catch (Exception e){
113
+            e.printStackTrace();
114
+            logger.error("buildingChannelUpdate -=- {}",e.toString());
115
+            responseBean.addError(e.getMessage());
116
+        }
117
+        return responseBean;
118
+    }
119
+
120
+    /**
121
+     * 根据id查询对象
122
+     * @param
123
+     */
124
+    @ApiOperation(value = "admin-获取楼盘渠道详情接口", notes = "admin-获取楼盘渠道详情接口")
125
+    @RequestMapping(value="/admin/buildingChannel/{buildingId}",method= RequestMethod.GET)
126
+    public ResponseBean buildingChannelGet(@PathVariable String buildingId){
127
+        ResponseBean responseBean = new ResponseBean();
128
+        try {
129
+            LambdaQueryWrapper<BuildingChannel> queryWrapper = new LambdaQueryWrapper<>();
130
+            queryWrapper.eq(BuildingChannel::getBuildingId,buildingId);
131
+            List<BuildingChannel> list = iBuildingChannelService.list(queryWrapper);
132
+            responseBean.addSuccess(list);
133
+        }catch (Exception e){
134
+            e.printStackTrace();
135
+            logger.error("buildingChannelDelete -=- {}",e.toString());
136
+            responseBean.addError(e.getMessage());
137
+        }
138
+        return responseBean;
139
+    }
140
+}

+ 47
- 0
src/main/java/com/yunzhi/marketing/xlk/dto/BuildingChannelDTO.java View File

@@ -0,0 +1,47 @@
1
+package com.yunzhi.marketing.xlk.dto;
2
+
3
+import com.baomidou.mybatisplus.annotation.TableName;
4
+import lombok.Data;
5
+import lombok.EqualsAndHashCode;
6
+import lombok.experimental.Accessors;
7
+
8
+import java.io.Serializable;
9
+import java.time.LocalDateTime;
10
+import java.util.List;
11
+
12
+/**
13
+ * <p>
14
+ * 楼盘渠道表 
15
+ * </p>
16
+ *
17
+ * @author jobob
18
+ * @since 2021-07-18
19
+ */
20
+@Data
21
+@EqualsAndHashCode(callSuper = false)
22
+@Accessors(chain = true)
23
+@TableName("xlk_building_channel")
24
+public class BuildingChannelDTO implements Serializable {
25
+
26
+    /**
27
+     * 楼盘id
28
+     */
29
+    private String buildingId;
30
+
31
+    /**
32
+     * 渠道id
33
+     */
34
+    private List<String> channelIdList;
35
+
36
+    /**
37
+     * 有效期
38
+     */
39
+    private Integer expirationDate;
40
+
41
+    /**
42
+     * 备注
43
+     */
44
+    private String remark;
45
+
46
+
47
+}

+ 66
- 0
src/main/java/com/yunzhi/marketing/xlk/entity/BuildingChannel.java View File

@@ -0,0 +1,66 @@
1
+package com.yunzhi.marketing.xlk.entity;
2
+
3
+import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableId;
5
+import com.baomidou.mybatisplus.annotation.TableName;
6
+import lombok.Data;
7
+import lombok.EqualsAndHashCode;
8
+import lombok.experimental.Accessors;
9
+
10
+import java.io.Serializable;
11
+import java.time.LocalDateTime;
12
+
13
+/**
14
+ * <p>
15
+ * 楼盘渠道表 
16
+ * </p>
17
+ *
18
+ * @author jobob
19
+ * @since 2021-07-18
20
+ */
21
+@Data
22
+@EqualsAndHashCode(callSuper = false)
23
+@Accessors(chain = true)
24
+@TableName("xlk_building_channel")
25
+public class BuildingChannel implements Serializable {
26
+
27
+    private static final long serialVersionUID = 1L;
28
+
29
+    /**
30
+     * 楼盘渠道
31
+     */
32
+    @TableId(type = IdType.UUID)
33
+    private String buildingChannelId;
34
+
35
+    /**
36
+     * 创建时间
37
+     */
38
+    private LocalDateTime createDate;
39
+
40
+    /**
41
+     * 公司id
42
+     */
43
+    private Integer orgId;
44
+
45
+    /**
46
+     * 楼盘id
47
+     */
48
+    private String buildingId;
49
+
50
+    /**
51
+     * 渠道id
52
+     */
53
+    private String channelId;
54
+
55
+    /**
56
+     * 有效期
57
+     */
58
+    private Integer expirationDate;
59
+
60
+    /**
61
+     * 备注
62
+     */
63
+    private String remark;
64
+
65
+
66
+}

+ 18
- 0
src/main/java/com/yunzhi/marketing/xlk/mapper/BuildingChannelMapper.java View File

@@ -0,0 +1,18 @@
1
+package com.yunzhi.marketing.xlk.mapper;
2
+
3
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.yunzhi.marketing.xlk.entity.BuildingChannel;
5
+import org.apache.ibatis.annotations.Mapper;
6
+
7
+/**
8
+ * <p>
9
+ * 楼盘渠道表  Mapper 接口
10
+ * </p>
11
+ *
12
+ * @author jobob
13
+ * @since 2021-07-18
14
+ */
15
+@Mapper
16
+public interface BuildingChannelMapper extends BaseMapper<BuildingChannel> {
17
+
18
+}

+ 16
- 0
src/main/java/com/yunzhi/marketing/xlk/service/IBuildingChannelService.java View File

@@ -0,0 +1,16 @@
1
+package com.yunzhi.marketing.xlk.service;
2
+
3
+import com.baomidou.mybatisplus.extension.service.IService;
4
+import com.yunzhi.marketing.xlk.entity.BuildingChannel;
5
+
6
+/**
7
+ * <p>
8
+ * 楼盘渠道表  服务类
9
+ * </p>
10
+ *
11
+ * @author jobob
12
+ * @since 2021-07-18
13
+ */
14
+public interface IBuildingChannelService extends IService<BuildingChannel> {
15
+
16
+}

+ 20
- 0
src/main/java/com/yunzhi/marketing/xlk/service/impl/BuildingChannelServiceImpl.java View File

@@ -0,0 +1,20 @@
1
+package com.yunzhi.marketing.xlk.service.impl;
2
+
3
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4
+import com.yunzhi.marketing.xlk.entity.BuildingChannel;
5
+import com.yunzhi.marketing.xlk.mapper.BuildingChannelMapper;
6
+import com.yunzhi.marketing.xlk.service.IBuildingChannelService;
7
+import org.springframework.stereotype.Service;
8
+
9
+/**
10
+ * <p>
11
+ * 楼盘渠道表  服务实现类
12
+ * </p>
13
+ *
14
+ * @author jobob
15
+ * @since 2021-07-18
16
+ */
17
+@Service
18
+public class BuildingChannelServiceImpl extends ServiceImpl<BuildingChannelMapper, BuildingChannel> implements IBuildingChannelService {
19
+
20
+}

+ 5
- 0
src/main/resources/mapper/xlk/BuildingChannelMapper.xml View File

@@ -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.yunzhi.marketing.xlk.mapper.BuildingChannelMapper">
4
+
5
+</mapper>