xinyb
2024-09-20 0c7568c19ebdb540d5cca242eb9e95231d1a0dd7
提交 | 用户 | age
385e2d 1 package com.yc.crm.mail.action;
X 2
3 import com.yc.crm.mail.entity.T482109Entity;
4 import com.yc.crm.mail.service.MailSignatureIfc;
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.apache.commons.lang3.StringUtils;
11 import org.springframework.beans.factory.annotation.Autowired;
12 import org.springframework.web.bind.annotation.*;
13
14 import javax.servlet.http.HttpServletRequest;
15 import javax.servlet.http.HttpServletResponse;
16 import javax.servlet.http.HttpSession;
17 import java.util.List;
18
19 /**
20  * @BelongsProject: eCoWorksV3
21  * @BelongsPackage: com.yc.crm.mail.action
22  * @author: xinyb
23  * @CreateTime: 2024-08-15  14:57
24  * @Description:个人签名
25  */
26 @CrossOrigin
27 @RestController
f5cc47 28 @RequestMapping("/crm/mail/signature")
385e2d 29 public class MailSignature {
X 30     @Autowired
31     MailSignatureIfc mailSignatureIfc;
32
33     /**
34      * 添加个人签名
35      *
36      * @param signature
37      * @param request
38      * @param response
39      * @return
40      */
41     @PostMapping("/addSignature.do")
42     public AllBackMsg addSignature(@RequestBody T482109Entity signature, HttpServletRequest request, HttpServletResponse response) {
43         AllBackMsg msg = new AllBackMsg();
44         try {
45
46             HttpSession session = request.getSession();
47             String companyId = (String) session.getAttribute(SessionKey.COMPANY_ID);
48             String companyName = (String) session.getAttribute(SessionKey.COMPANY_NAME);
49             String userCode = (String) session.getAttribute(SessionKey.USERCODE);
50             String userName = (String) session.getAttribute(SessionKey.USER_NAME);
51             signature.setCompanyId(companyId);
52             signature.setCompanyName(companyName);
53             signature.setUserCode(userCode);
54             signature.setUserName(userName);
55             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
56             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
57             //保存
58             mailSignatureIfc.saveSignature(signature);
f5cc47 59             msg.setOk("已保存");
385e2d 60         } catch (Exception e) {
f5cc47 61             msg.setFail(e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
385e2d 62         } finally {
X 63             SpObserver.setDBtoInstance();
64         }
65         return msg;
66     }
67
68     /**
69      * 修改个人签名
70      *
71      * @param signature
72      * @param request
73      * @param response
74      * @return
75      */
76     @PostMapping("/updateSignature.do")
3c2c1b 77     public AllBackMsg updateSignature(@RequestBody T482109Entity signature, HttpServletRequest request, HttpServletResponse response) {
385e2d 78         AllBackMsg msg = new AllBackMsg();
X 79         try {
f5cc47 80             if (signature.getSignId() == null) {
3c2c1b 81                 msg.setFail("缺少SignId值,请检查");
X 82                 return msg;
83             }
385e2d 84             HttpSession session = request.getSession();
f5cc47 85             String userCode = (String) session.getAttribute(SessionKey.USERCODE);
X 86             if (StringUtils.isBlank(userCode)) {
87                 msg.setFail("登录用户已过期,请检查");
88                 return msg;
89             }
90             signature.setUserCode(userCode);
385e2d 91             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
X 92             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
93             mailSignatureIfc.updateSignature(signature);
f5cc47 94             msg.setOk("已更新");
385e2d 95         } catch (Exception e) {
f5cc47 96             msg.setFail(e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
385e2d 97         } finally {
X 98             SpObserver.setDBtoInstance();
99         }
100         return msg;
101     }
102
103     /**
104      * 删除个人签名
105      *
106      * @param signId
107      * @param request
108      * @param response
109      * @return
110      */
111     @PostMapping("/deleteSignature.do")
112     public AllBackMsg deleteSignature(@RequestParam(defaultValue = "0") Integer signId, HttpServletRequest request, HttpServletResponse response) {
113         AllBackMsg msg = new AllBackMsg();
114         try {
115             if (signId == 0) {
116                 msg.setFail("签名ID获取不到");
117                 return msg;
118             }
119             HttpSession session = request.getSession();
120             String userCode = (String) session.getAttribute(SessionKey.USERCODE);
f5cc47 121             if (StringUtils.isBlank(userCode)) {
X 122                 msg.setFail("登录用户已过期,请检查");
123                 return msg;
124             }
385e2d 125             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
X 126             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
f5cc47 127             Integer cont = mailSignatureIfc.deleteSignature(userCode, signId);
385e2d 128             if (cont > 0) {
f5cc47 129                 msg.setOk("已删除");
385e2d 130             }
X 131         } catch (Exception e) {
f5cc47 132             msg.setFail(e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
385e2d 133         } finally {
X 134             SpObserver.setDBtoInstance();
135         }
136         return msg;
137     }
138
139     /**
140      * @param search   搜索
141      * @param request
142      * @param response
143      * @return
144      */
145     @GetMapping("/getSignature.do")
f5cc47 146     public AllBackMsg getSignature(String search, HttpServletRequest request, HttpServletResponse response) {
385e2d 147         AllBackMsg msg = new AllBackMsg();
X 148         try {
149             HttpSession session = request.getSession();
150             String userCode = (String) session.getAttribute(SessionKey.USERCODE);
f5cc47 151             if (StringUtils.isBlank(userCode)) {
X 152                 msg.setFail("登录用户已过期,请检查");
153                 return msg;
154             }
385e2d 155             DataSourceEntity dataSource = MultiDataSource.getDataSourceMap(request);//获取数据源
X 156             SpObserver.setDBtoInstance("_" + dataSource.getDbId());
f5cc47 157             List<T482109Entity> list = mailSignatureIfc.getSignature(userCode, search);
385e2d 158             msg.setSuccess("执行成功", list);
X 159         } catch (Exception e) {
f5cc47 160             msg.setFail(e.getCause() != null ? e.getCause().getMessage() : e.getMessage());
385e2d 161         } finally {
X 162             SpObserver.setDBtoInstance();
163         }
164         return msg;
165     }
166 }