xinyb
2024-08-27 3c2c1b5ab70758f75b1fe78397a495618074225f
提交 | 用户 | age
385e2d 1 package com.yc.crm.mail.action;
X 2
3 import com.yc.crm.mail.entity.T482107Entity;
4 import com.yc.crm.mail.service.MailFolderIfc;
5 import com.yc.crm.mail.util.AllBackMsg;
6 import com.yc.entity.DataSourceEntity;
7 import com.yc.multiData.MultiDataSource;
8 import com.yc.multiData.SpObserver;
9 import com.yc.utils.SessionKey;
10 import org.springframework.beans.factory.annotation.Autowired;
11 import org.springframework.web.bind.annotation.*;
12
13 import javax.servlet.http.HttpServletRequest;
14 import javax.servlet.http.HttpServletResponse;
15 import javax.servlet.http.HttpSession;
16 import java.util.List;
17
18 /**
19  * @BelongsProject: eCoWorksV3
20  * @BelongsPackage: com.yc.crm.mail.action
21  * @author: xinyb
22  * @CreateTime: 2024-08-23  09:23
23  * @Description:邮件文件夹
24  */
25 @CrossOrigin
26 @RestController
3c2c1b 27 @RequestMapping("/crm/mail/Folder")
385e2d 28 public class MailFolder {
X 29     @Autowired
30     MailFolderIfc mailFolderIfc;
31
32     /**
33      *添加邮件文件夹
34      *
35      * @param folder
36      * @param request
37      * @param response
38      * @return
39      */
40     @PostMapping("/addFolder.do")
41     public AllBackMsg addFolder(@RequestBody T482107Entity folder, HttpServletRequest request, HttpServletResponse response) {
42         AllBackMsg msg = new AllBackMsg();
43         try {
44
45             HttpSession session = request.getSession();
46             String companyId = (String) session.getAttribute(SessionKey.COMPANY_ID);
47             String companyName = (String) session.getAttribute(SessionKey.COMPANY_NAME);
48             String userCode = (String) session.getAttribute(SessionKey.USERCODE);
49             String userName = (String) session.getAttribute(SessionKey.USER_NAME);
50             folder.setCompanyId(companyId);
51             folder.setCompanyName(companyName);
52             folder.setUserCode(userCode);
53             folder.setUserName(userName);
54             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
55             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
56             mailFolderIfc.saveFolder(folder);
57             msg.setSuccess("执行成功", "已保存");
58         } catch (Exception e) {
59             msg.setError("执行出错", e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
60         } finally {
61             SpObserver.setDBtoInstance();
62         }
63         return msg;
64     }
65
66     /**
67      *修改邮件文件夹
68      *
69      * @param folder
70      * @param request
71      * @param response
72      * @return
73      */
74     @PostMapping("/updateFolder.do")
3c2c1b 75     public AllBackMsg updateFolder(@RequestBody T482107Entity folder, HttpServletRequest request, HttpServletResponse response) {
385e2d 76         AllBackMsg msg = new AllBackMsg();
X 77         try {
78             HttpSession session = request.getSession();
79             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
80             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
81             mailFolderIfc.updateFolder(folder);
82             msg.setSuccess("执行成功", "已更新");
83         } catch (Exception e) {
84             msg.setError("执行出错", e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
85         } finally {
86             SpObserver.setDBtoInstance();
87         }
88         return msg;
89     }
90
91     /**
92      *删除邮件文件夹
93      *
94      * @param account
95      * @param request
96      * @param response
97      * @return
98      */
99     @PostMapping("/deleteFolder.do")
100     public AllBackMsg deleteFolder(@RequestParam(defaultValue = "0") Integer folderId, HttpServletRequest request, HttpServletResponse response) {
101         AllBackMsg msg = new AllBackMsg();
102         try {
103             if (folderId == 0) {
104                 msg.setFail("邮件文件夹编号ID获取不到");
105                 return msg;
106             }
107             HttpSession session = request.getSession();
108             String userCode = (String) session.getAttribute(SessionKey.USERCODE);
109             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
110             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
111             Integer cont = mailFolderIfc.deleteFolder(userCode, folderId);
112             if (cont > 0) {
113                 msg.setSuccess("执行成功", "已删除");
114             }
115         } catch (Exception e) {
116             msg.setError("执行出错", e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
117         } finally {
118             SpObserver.setDBtoInstance();
119         }
120         return msg;
121     }
122
123     /**
124      *
125      *
126      * @param search   搜索
127      * @param request
128      * @param response
129      * @return
130      */
131     @GetMapping("/getFolder.do")
132     public AllBackMsg getFolder(String folderName, HttpServletRequest request, HttpServletResponse response) {
133         AllBackMsg msg = new AllBackMsg();
134         try {
135             HttpSession session = request.getSession();
136             String userCode = (String) session.getAttribute(SessionKey.USERCODE);
137             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
138             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
139             List<T482107Entity> t482107Entities = mailFolderIfc.getMailFolder(folderName);
140             if (t482107Entities.size() > 0) {
141                 msg.setSuccess("操作成功", t482107Entities);
142             }
143         } catch (Exception e) {
144             msg.setError("执行出错", e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
145         } finally {
146             SpObserver.setDBtoInstance();
147         }
148         return msg;
149     }
150 }