|
|
@@ -48,7 +48,7 @@ public class MessageListener implements ApplicationListener<SaveReleaseEvent<?,
|
|
|
private CommonDao commonDao;
|
|
|
|
|
|
@Autowired
|
|
|
- private PurcInquiryDao purcInquiryDao;
|
|
|
+ private PurcInquiryItemDao purcInquiryItemDao;
|
|
|
|
|
|
@SuppressWarnings("unchecked")
|
|
|
@Async
|
|
|
@@ -60,44 +60,44 @@ public class MessageListener implements ApplicationListener<SaveReleaseEvent<?,
|
|
|
// ERP公共询价比较特殊,单独处理
|
|
|
if (event instanceof PurcInquirySaveReleaseEvent) {
|
|
|
for(PagingReleaseDetail detail : pagingReleaseDetails) {
|
|
|
- PurcInquiry inquiry = purcInquiryDao.findOne(detail.getPagingRelease().getSourceId());
|
|
|
- if (null != inquiry) {
|
|
|
- for(PurcInquiryItem item : inquiry.getInquiryItems()) {
|
|
|
- //先取出企业uu
|
|
|
- String sql = "select distinct pr_enuu enuu from products p left join purc$vendors v on v.ve_vendenuu = p.pr_enuu where p.pr_spec = '" + item.getProduct().getSpec() + "' and v.ve_myenuu = " + inquiry.getEnUU();
|
|
|
- List<UserAndEnterprise> enuus = commonDao.query(sql, UserAndEnterprise.class);
|
|
|
- // enuus存在才进行人员选择
|
|
|
- if(enuus.size() > 0) {
|
|
|
- for(UserAndEnterprise enter : enuus) {
|
|
|
- List<UserAndEnterprise> useruus = commonDao.query(
|
|
|
- "select user_uu useruu from sec$userrole u left join sec$roles r on u.role_id = r.role_id where r.role_desc = '业务员' and r.role_enuu = " + enter.getEnuu(),
|
|
|
+ PurcInquiryItem item = purcInquiryItemDao.findOne(detail.getPagingRelease().getSourceId());
|
|
|
+ if (null != item) {
|
|
|
+ //先取出企业uu
|
|
|
+ String sql = "select distinct pr_enuu enuu from products p left join purc$vendors v on v.ve_vendenuu = p.pr_enuu where p.pr_title = " + item.getProduct().getTitle() + "' and v.ve_myenuu = " + item.getInquiry().getEnUU();
|
|
|
+ List<UserAndEnterprise> enuus = commonDao.query(sql, UserAndEnterprise.class);
|
|
|
+ // enuus存在才进行人员选择
|
|
|
+ if(enuus.size() > 0) {
|
|
|
+ for(UserAndEnterprise enter : enuus) {
|
|
|
+ List<UserAndEnterprise> useruus = commonDao.query(
|
|
|
+ "select user_uu useruu from sec$userrole u left join sec$roles r on u.role_id = r.role_id where r.role_desc = '业务员' and r.role_enuu = " + enter.getEnuu(),
|
|
|
+ UserAndEnterprise.class);
|
|
|
+ if (CollectionUtils.isEmpty(useruus)) {
|
|
|
+ useruus = commonDao.query(
|
|
|
+ "select user_uu useruu from sec$userrole u left join sec$roles r on u.role_id = r.role_id where r.role_desc = '管理员' and r.role_enuu = " + enter.getEnuu(),
|
|
|
UserAndEnterprise.class);
|
|
|
- if (CollectionUtils.isEmpty(useruus)) {
|
|
|
- useruus = commonDao.query(
|
|
|
- "select user_uu useruu from sec$userrole u left join sec$roles r on u.role_id = r.role_id where r.role_desc = '管理员' and r.role_enuu = " + enter.getEnuu(),
|
|
|
- UserAndEnterprise.class);
|
|
|
- }
|
|
|
- // 新增消息
|
|
|
- for (UserAndEnterprise userAndEnterprise : useruus) {
|
|
|
- Long userUU = userAndEnterprise.getUseruu();
|
|
|
- try { //去除userUU为空值的情况
|
|
|
- if (null != userUU) {
|
|
|
- User user = userDao.findOne(userUU);
|
|
|
- if (null != user) {
|
|
|
- PagingReleaseDetail pagingReleaseDetail = new PagingReleaseDetail(enter.getEnuu(), userUU, user.getUserName());
|
|
|
- pagingReleaseDetail.setPagingRelease(detail.getPagingRelease());
|
|
|
- otherReleaseDetails.add(pagingReleaseDetail);
|
|
|
- }
|
|
|
+ }
|
|
|
+ // 新增消息
|
|
|
+ for (UserAndEnterprise userAndEnterprise : useruus) {
|
|
|
+ Long userUU = userAndEnterprise.getUseruu();
|
|
|
+ try { //去除userUU为空值的情况
|
|
|
+ if (null != userUU) {
|
|
|
+ User user = userDao.findOne(userUU);
|
|
|
+ if (null != user) {
|
|
|
+ PagingReleaseDetail pagingReleaseDetail = new PagingReleaseDetail(enter.getEnuu(), userUU, user.getUserName());
|
|
|
+ pagingReleaseDetail.setPagingRelease(detail.getPagingRelease());
|
|
|
+ otherReleaseDetails.add(pagingReleaseDetail);
|
|
|
}
|
|
|
- } catch (RuntimeException e) {
|
|
|
- e.getStackTrace();
|
|
|
}
|
|
|
+ } catch (RuntimeException e) {
|
|
|
+ e.getStackTrace();
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ // 公共询价消息暂时不采用手机推送
|
|
|
+ pagingReleaseDetailDao.save(otherReleaseDetails);
|
|
|
} else {
|
|
|
for (PagingReleaseDetail detail : pagingReleaseDetails) {
|
|
|
// 先将产生的一条记录加入保存列表,去掉用1补充空值的情况
|
|
|
@@ -170,15 +170,15 @@ public class MessageListener implements ApplicationListener<SaveReleaseEvent<?,
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
- otherReleaseDetails = pagingReleaseDetailDao.save(otherReleaseDetails);
|
|
|
- if (!CollectionUtils.isEmpty(otherReleaseDetails)) {
|
|
|
- pagingReleaseDetails.addAll(otherReleaseDetails);
|
|
|
- }
|
|
|
- try { // 推送消息
|
|
|
- mobileReleaseService.pushReleases(pagingReleaseDetails);
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
+ otherReleaseDetails = pagingReleaseDetailDao.save(otherReleaseDetails);
|
|
|
+ if (!CollectionUtils.isEmpty(otherReleaseDetails)) {
|
|
|
+ pagingReleaseDetails.addAll(otherReleaseDetails);
|
|
|
+ }
|
|
|
+ try { // 推送消息
|
|
|
+ mobileReleaseService.pushReleases(pagingReleaseDetails);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|