use of com.topcom.cms.exception.BusinessException in project topcom-cloud by 545314690.
the class UserController method modifyState.
@RequestMapping(value = "/modifyState/{id}", method = RequestMethod.POST)
@ResponseBody
public ModelMap modifyState(HttpServletRequest request, @PathVariable Long userId, @RequestParam User.State state) throws BusinessException {
ModelMap modelMap = new ModelMap("success", false);
int i = userManager.updateState(userId, state);
if (i > 0) {
modelMap.put("success", true);
} else {
throw new BusinessException("更改状态失败");
}
return modelMap;
}
use of com.topcom.cms.exception.BusinessException in project topcom-cloud by 545314690.
the class UserController method modifyPassword.
@RequestMapping(value = "/modifyPassword", method = RequestMethod.POST)
@ResponseBody
public ModelMap modifyPassword(@CurrentUser User user, HttpServletRequest request, @RequestParam String oldPwd, @RequestParam String newPwd) throws BusinessException {
ModelMap modelMap = new ModelMap("success", false);
// 保持的旧密码
String savedPwd = user.getPassword();
// 加密接收的就密码
String encodedOldPwd = PasswordHelper.getEncodedPassword(oldPwd, user.getCredentialsSalt());
// 对比
if (StringUtils.equals(savedPwd, encodedOldPwd)) {
user.setPassword(newPwd);
PasswordHelper.encryptPassword(user);
int i = userManager.updatePassword(user.getId(), user.getPassword(), user.getSalt());
if (i > 0) {
modelMap.put("success", true);
// 密码修改成功,需要重新登陆
// TODO://
tokenManager.deleteToken(user.getId());
}
} else {
throw new BusinessException("原密码错误");
}
return modelMap;
}
use of com.topcom.cms.exception.BusinessException in project topcom-cloud by 545314690.
the class BriefingTaskWatcher method doAroundUpdate.
@Around("updateBriefingTask()")
public Object doAroundUpdate(ProceedingJoinPoint joinPoint) throws BusinessException {
Object[] args = joinPoint.getArgs();
if (args.length == 1) {
try {
Object proceed = joinPoint.proceed(args);
final BriefingTask briefingTask = (BriefingTask) proceed;
if (briefingTask != null) {
if (briefingTask.isEnable() == true) {
// 如果是开启
scheduleJob(briefingTask);
LogUtil.logger.info("更新任务:" + briefingTask.getBriefingType() + "成功");
} else {
// 如果是关闭
deleteJob(String.valueOf(briefingTask.getId()));
}
}
return briefingTask;
} catch (Throwable throwable) {
throwable.printStackTrace();
throw new BusinessException("更新失败");
}
}
return null;
}
use of com.topcom.cms.exception.BusinessException in project topcom-cloud by 545314690.
the class BriefingJob method execute.
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
Long briefingTaskId = (Long) context.getMergedJobDataMap().get("briefingTaskId");
BriefingTask briefingTask = briefingTaskManager.findById(briefingTaskId);
logger.info("任务运行:" + briefingTask.getBriefingType() + ":" + briefingTaskId);
/**
* 生成月报
*/
JSONObject briefing = null;
try {
briefing = (JSONObject) briefingCreator.create(briefingTask).get();
logger.info("任务运行:生成报告成功");
} catch (BusinessException | InterruptedException | ExecutionException e) {
e.printStackTrace();
logger.info("任务运行:生成报告失败");
}
List<Contact> contacts = briefingTask.getContacts();
// 过滤出email联系人
Set<String> emailSet = contacts.stream().filter(contact -> Contact.Type.EMAIL.equals(contact.getType())).map(contact -> contact.getAccount()).collect(Collectors.toSet());
if (emailSet.size() > 0) {
SenderFactory emailSenderFactory = new EmailSenderFactory();
Sender emailSender = emailSenderFactory.create();
String[] emails = {};
emails = emailSet.toArray(emails);
if (briefing != null) {
try {
BriefingEmail briefingEmail = new BriefingEmail().create(emails, briefing);
briefingEmail.setSubject(SUBJECT);
emailSender.send(briefingEmail);
} catch (IOException | TemplateException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Aggregations