顾绍勇 5 years ago
parent
commit
072a2b4cdc

+ 5
- 11
src/main/java/com/huiju/estateagents/sample/controller/TaContactController.java View File

1
 package com.huiju.estateagents.sample.controller;
1
 package com.huiju.estateagents.sample.controller;
2
 
2
 
3
+import com.alibaba.fastjson.JSONObject;
3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
14
 import org.springframework.beans.factory.annotation.Autowired;
15
 import org.springframework.beans.factory.annotation.Autowired;
15
 import org.springframework.web.bind.annotation.*;
16
 import org.springframework.web.bind.annotation.*;
16
 
17
 
18
+import javax.servlet.http.HttpServletRequest;
17
 import java.time.LocalDateTime;
19
 import java.time.LocalDateTime;
18
-import java.util.ArrayList;
19
 import java.util.List;
20
 import java.util.List;
20
 
21
 
21
 
22
 
105
      */
106
      */
106
     @ResponseBody
107
     @ResponseBody
107
     @RequestMapping(value = "/channel/taContact/batchDelete", method = RequestMethod.PUT)
108
     @RequestMapping(value = "/channel/taContact/batchDelete", method = RequestMethod.PUT)
108
-    public ResponseBean batchDelete(@RequestBody List<TaContact> taContactList) {
109
+    public ResponseBean batchDelete(@RequestBody List<TaContact> taContactList, HttpServletRequest request) {
109
         ResponseBean responseBean = new ResponseBean();
110
         ResponseBean responseBean = new ResponseBean();
110
         try {
111
         try {
111
-            List<TaContact> updateList = new ArrayList<>();
112
-            TaContact newContact;
113
-            for (TaContact taContact : taContactList) {
114
-                newContact = new TaContact();
115
-                newContact.setContactId(taContact.getContactId());
116
-                newContact.setStatus(CommConstant.STATUS_DELETE);
117
-                updateList.add(newContact);
118
-            }
119
-            responseBean.addSuccess(iTaContactService.updateBatchById(updateList));
112
+            responseBean = iTaContactService.batchDelete(taContactList,getUserId(request));
113
+            logger.info("TaContactController.batchDelete 返回结果:", JSONObject.toJSONString(responseBean));
120
         } catch (Exception e) {
114
         } catch (Exception e) {
121
             e.printStackTrace();
115
             e.printStackTrace();
122
             logger.error("taContactDelete -=- {}", e.toString());
116
             logger.error("taContactDelete -=- {}", e.toString());

+ 2
- 0
src/main/java/com/huiju/estateagents/sample/mapper/TaContactMapper.java View File

5
 import com.huiju.estateagents.sample.entity.TaContact;
5
 import com.huiju.estateagents.sample.entity.TaContact;
6
 import org.apache.ibatis.annotations.Mapper;
6
 import org.apache.ibatis.annotations.Mapper;
7
 import org.apache.ibatis.annotations.Param;
7
 import org.apache.ibatis.annotations.Param;
8
+import org.springframework.stereotype.Component;
8
 
9
 
9
 /**
10
 /**
10
  * <p>
11
  * <p>
15
  * @since 2020-03-18
16
  * @since 2020-03-18
16
  */
17
  */
17
 @Mapper
18
 @Mapper
19
+@Component
18
 public interface TaContactMapper extends BaseMapper<TaContact> {
20
 public interface TaContactMapper extends BaseMapper<TaContact> {
19
     IPage<TaContact> taContactInfoBySampleId(IPage<TaContact> pg, @Param("id") String id);
21
     IPage<TaContact> taContactInfoBySampleId(IPage<TaContact> pg, @Param("id") String id);
20
 }
22
 }

+ 6
- 0
src/main/java/com/huiju/estateagents/sample/mapper/TaH5SampleMapper.java View File

2
 
2
 
3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.huiju.estateagents.sample.entity.TaContact;
5
 import com.huiju.estateagents.sample.entity.TaH5Sample;
6
 import com.huiju.estateagents.sample.entity.TaH5Sample;
6
 import org.apache.ibatis.annotations.Mapper;
7
 import org.apache.ibatis.annotations.Mapper;
8
+import org.apache.ibatis.annotations.Param;
7
 import org.springframework.stereotype.Component;
9
 import org.springframework.stereotype.Component;
8
 
10
 
11
+import java.util.List;
12
+
9
 /**
13
 /**
10
  * <p>
14
  * <p>
11
  * 样例表  Mapper 接口
15
  * 样例表  Mapper 接口
19
 public interface TaH5SampleMapper extends BaseMapper<TaH5Sample> {
23
 public interface TaH5SampleMapper extends BaseMapper<TaH5Sample> {
20
 
24
 
21
     IPage<TaH5Sample> listH5SampleByCondition(IPage<TaH5Sample> pg, String sampleName);
25
     IPage<TaH5Sample> listH5SampleByCondition(IPage<TaH5Sample> pg, String sampleName);
26
+
27
+    Boolean batchUpdateStatus(@Param("list") List<TaContact> taContactList, @Param("userId") Integer userId);
22
 }
28
 }

+ 12
- 0
src/main/java/com/huiju/estateagents/sample/service/ITaContactService.java View File

2
 
2
 
3
 import com.baomidou.mybatisplus.core.metadata.IPage;
3
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.extension.service.IService;
4
 import com.baomidou.mybatisplus.extension.service.IService;
5
+import com.huiju.estateagents.base.ResponseBean;
5
 import com.huiju.estateagents.sample.entity.TaContact;
6
 import com.huiju.estateagents.sample.entity.TaContact;
6
 
7
 
8
+import java.util.List;
9
+
7
 /**
10
 /**
8
  * <p>
11
  * <p>
9
  * 联系人表  服务类
12
  * 联系人表  服务类
14
  */
17
  */
15
 public interface ITaContactService extends IService<TaContact> {
18
 public interface ITaContactService extends IService<TaContact> {
16
     IPage<TaContact> taContactInfoBySampleId(String id, Integer pageNum, Integer pageSize);
19
     IPage<TaContact> taContactInfoBySampleId(String id, Integer pageNum, Integer pageSize);
20
+
21
+    /**
22
+     * 批量删除
23
+     *
24
+     * @param taContactList
25
+     * @param userId
26
+     * @return
27
+     */
28
+    ResponseBean batchDelete(List<TaContact> taContactList, Integer userId);
17
 }
29
 }

+ 31
- 2
src/main/java/com/huiju/estateagents/sample/service/impl/TaContactServiceImpl.java View File

4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
+import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.common.CommConstant;
7
 import com.huiju.estateagents.sample.entity.TaContact;
9
 import com.huiju.estateagents.sample.entity.TaContact;
8
 import com.huiju.estateagents.sample.mapper.TaContactMapper;
10
 import com.huiju.estateagents.sample.mapper.TaContactMapper;
11
+import com.huiju.estateagents.sample.mapper.TaH5SampleMapper;
9
 import com.huiju.estateagents.sample.service.ITaContactService;
12
 import com.huiju.estateagents.sample.service.ITaContactService;
10
 import org.springframework.beans.factory.annotation.Autowired;
13
 import org.springframework.beans.factory.annotation.Autowired;
11
 import org.springframework.stereotype.Service;
14
 import org.springframework.stereotype.Service;
12
 
15
 
16
+import java.util.ArrayList;
17
+import java.util.List;
18
+
13
 /**
19
 /**
14
  * <p>
20
  * <p>
15
  * 联系人表  服务实现类
21
  * 联系人表  服务实现类
22
 public class TaContactServiceImpl extends ServiceImpl<TaContactMapper, TaContact> implements ITaContactService {
28
 public class TaContactServiceImpl extends ServiceImpl<TaContactMapper, TaContact> implements ITaContactService {
23
 
29
 
24
     @Autowired
30
     @Autowired
25
-    TaContactMapper taContactMapper;
31
+    private TaContactMapper taContactMapper;
32
+
33
+    @Autowired
34
+    private TaH5SampleMapper taH5SampleMapper;
26
 
35
 
27
     @Override
36
     @Override
28
     public IPage<TaContact> taContactInfoBySampleId(String id, Integer pageNum, Integer pageSize) {
37
     public IPage<TaContact> taContactInfoBySampleId(String id, Integer pageNum, Integer pageSize) {
29
         IPage<TaContact> pg = new Page<>(pageNum, pageSize);
38
         IPage<TaContact> pg = new Page<>(pageNum, pageSize);
30
-        return  taContactMapper.taContactInfoBySampleId(pg, id);
39
+        return taContactMapper.taContactInfoBySampleId(pg, id);
40
+    }
41
+
42
+    @Override
43
+    public ResponseBean batchDelete(List<TaContact> taContactList, Integer userId) {
44
+        ResponseBean responseBean = new ResponseBean();
45
+
46
+        List<TaContact> updateList = new ArrayList<>();
47
+        TaContact newContact;
48
+        for (TaContact taContact : taContactList) {
49
+            newContact = new TaContact();
50
+            newContact.setContactId(taContact.getContactId());
51
+            newContact.setStatus(CommConstant.STATUS_DELETE);
52
+            updateList.add(newContact);
53
+        }
54
+
55
+        // 更新样例表状态
56
+        taH5SampleMapper.batchUpdateStatus(updateList, userId);
57
+
58
+        responseBean.addSuccess(updateBatchById(updateList));
59
+        return responseBean;
31
     }
60
     }
32
 }
61
 }

+ 13
- 1
src/main/resources/mapper/sample/TaH5SampleMapper.xml View File

12
             LEFT JOIN ta_user t2 ON t.add_user = t2.user_id
12
             LEFT JOIN ta_user t2 ON t.add_user = t2.user_id
13
             LEFT JOIN ta_user t3 ON t.update_user = t3.user_id
13
             LEFT JOIN ta_user t3 ON t.update_user = t3.user_id
14
         WHERE
14
         WHERE
15
-            t.`status` != - 1
15
+            t.`status` = 1
16
             <if test = "sampleName != null and sampleName != ''">
16
             <if test = "sampleName != null and sampleName != ''">
17
                 AND t.sample_name LIKE concat('%',#{sampleName},'%')
17
                 AND t.sample_name LIKE concat('%',#{sampleName},'%')
18
             </if>
18
             </if>
21
             t.create_date
21
             t.create_date
22
     </select>
22
     </select>
23
 
23
 
24
+    <update id="batchUpdateStatus">
25
+        UPDATE ta_h5_sample t
26
+            SET t.`status` = - 1,
27
+                t.update_user = #{userId},
28
+                t.update_date = NOW( )
29
+        WHERE
30
+            t.sample_id IN ( SELECT t2.sample_id FROM ta_sample_contact t2 WHERE t2.contact_id IN
31
+        <foreach collection="list" item="record" open="(" close=")" separator=",">
32
+            #{record.contactId}
33
+        </foreach>)
34
+    </update>
35
+
24
 </mapper>
36
 </mapper>