EntrustAction.java
5.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
package com.cjs.site.action.user.entrust;
import java.security.SecureRandom;
import java.util.Map;
import javax.servlet.http.HttpSession;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.cjs.site.biz.ServiceException;
import com.cjs.site.biz.pub.ZhaoonlineBiz;
import com.cjs.site.biz.user.account.UserBiz;
import com.cjs.site.biz.user.entrust.EntrustBiz;
import com.cjs.site.dao.user.account.UserAddressDao;
import com.cjs.site.dao.user.pick.WarehouseDao;
import com.cjs.site.dao.user.ration.OtcTrusteeCodeDao;
import com.cjs.site.model.user.account.UserInfo;
import com.cjs.site.model.user.ration.OtcTrusteeCodeInfo;
import com.cjs.site.util.lang.JsonUtil;
import com.cjs.site.util.web.ActionUtil;
import com.cjs.site.util.web.Token;
/**
* 托管
*
* @author tongyufu
*
*/
@Controller
public class EntrustAction {
Logger log = LogManager.getLogger();
@Autowired
private UserBiz userBiz;
@Autowired
private EntrustBiz entrustBiz;
@Autowired
private UserAddressDao addressDao;
@Autowired
private ZhaoonlineBiz zhaoonlineBiz;
@Autowired
private WarehouseDao warehouseDao;
@Autowired
private OtcTrusteeCodeDao otcTrusteeCodeDao;
/**
* 托管申请列表
*/
@RequestMapping("/entrust/list")
public String entrustListView(Model model) {
model.addAttribute("entrusts", entrustBiz.entrustList());
model.addAttribute("supplements", entrustBiz.supplementList());
return "entrust/entrustList.jsp";
}
/**
* 再托管申请列表
*/
@RequestMapping("/entrust/quota")
public String entrustQuotaView(Model model) {
model.addAttribute("entrusts", entrustBiz.entrustList());
return "entrust/entrustQuota.jsp";
}
/**
* 托管申请详情页
*
* @param stockId 藏品代码
*/
@Token(save = true, group = "entrust")
@RequestMapping(value = "/user/entrust", method = RequestMethod.GET)
public String entrustView(String stockId, HttpSession session, Model model) {
try {
UserInfo userInfo = ActionUtil.getUser();
String userId = userInfo.getClient_id();
String password = userInfo.getPassword();
session.setAttribute(UserInfo.USER, userInfo);
//用户基本信息
model.addAttribute("user", userBiz.queryUserDetail(userId, password));
//藏品信息
model.addAttribute("entrust", entrustBiz.queryById(stockId));
model.addAttribute("random", new SecureRandom().nextInt());
//用户地址信息
model.addAttribute("userAddress", addressDao.queryByUserId(userInfo.getUserId()));
//仓库列表
model.addAttribute("warehouses", warehouseDao.queryByOtcCode(stockId));
} catch (Exception e) {
model.addAttribute("msg", e.getMessage());
log.error("", e);
}
return "entrust/entrust.jsp";
}
/**托管申请*/
@Token(remove = true, group = "entrust")
@ResponseBody
@RequestMapping(value = "/entrust", method = RequestMethod.POST)
public String entrust(@RequestParam Map<String, Object> params, Model model,
RedirectAttributes redirectAttributes) {
String result = JsonUtil.toFormJson("", true);
try {
UserInfo userInfo = ActionUtil.getUser();
if (userInfo == null) {
return JsonUtil.toFormJson("用户信息不存在,请重新登录", false);
}
log.info("托管申请params:" + params);
boolean isOpenTime = entrustBiz.entrust(params, userInfo);
if (!isOpenTime) {
String msg = "托管申请已提交,请保持账户资金充足,系统会在交易时间审核,请在交易时间进入用户中心查询相关托管进程,详询400-969-0800。";
result = JsonUtil.toFormJson(msg, false);
}
} catch (Exception e) {
if (e instanceof ServiceException) {
log.error(e.getMessage());
} else {
log.error("", e);
}
result = JsonUtil.toFormJson(e.getMessage(), false);
}
return result;
}
/**委托详细信息*/
@ResponseBody
@RequestMapping("/entrust/detail/{otcCode}")
public OtcTrusteeCodeInfo detail(@PathVariable("otcCode") String otcCode) {
return otcTrusteeCodeDao.queryByOtcCode(otcCode);
}
/**托管申请成功*/
@RequestMapping("/entrust/success")
public String entrustSuccess() {
return "entrust/success.jsp";
}
/**
* 检查赵涌在线账号是否存在
*
* @param userId 赵涌在线用户ID
* @return
*/
@ResponseBody
@RequestMapping("/entrust/zhaoonline/id")
public Map<String, Object> checkZhaoonlineId(String userId) {
return zhaoonlineBiz.checkZhaoonlineId(userId);
}
}