|
|
@@ -38,7 +38,7 @@ import java.util.*;
|
|
|
|
|
|
/**
|
|
|
* 公共询价接口实现
|
|
|
- *
|
|
|
+ * <p>
|
|
|
* Created by hejq on 2018-01-13.
|
|
|
*/
|
|
|
@Service
|
|
|
@@ -175,8 +175,8 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
* 保存公共询价信息
|
|
|
*
|
|
|
* @param inquiries erp传入公共询价的信息
|
|
|
- * @param enuu 询价企业UU号
|
|
|
- * @param address 询价企业地址
|
|
|
+ * @param enuu 询价企业UU号
|
|
|
+ * @param address 询价企业地址
|
|
|
*/
|
|
|
@Override
|
|
|
public void save(List<BatchInquiry> inquiries, Long enuu, String address) throws NotFoundException {
|
|
|
@@ -219,19 +219,19 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
* 消息推送
|
|
|
*
|
|
|
* @param inquiryItems 询价明细
|
|
|
- * @param sourceApp 消息来源应用
|
|
|
+ * @param sourceApp 消息来源应用
|
|
|
*/
|
|
|
@Override
|
|
|
public void notifyMessage(List<PurcInquiryItem> inquiryItems, String sourceApp) throws Exception {
|
|
|
- final String CONSUMERAPP ="MALL,B2B";
|
|
|
+ final String CONSUMERAPP = "MALL,B2B";
|
|
|
for (PurcInquiryItem item : inquiryItems) {
|
|
|
- String cmpCode = null;
|
|
|
- if (item.getCmpCode() != null) {
|
|
|
- cmpCode = item.getCmpCode();
|
|
|
- } else if (null != item.getProductId()) {
|
|
|
- Product product = productDao.findOne(item.getProductId());
|
|
|
- cmpCode = product.getCmpCode();
|
|
|
- }
|
|
|
+ String cmpCode = null;
|
|
|
+ if (item.getCmpCode() != null) {
|
|
|
+ cmpCode = item.getCmpCode();
|
|
|
+ } else if (null != item.getProductId()) {
|
|
|
+ Product product = productDao.findOne(item.getProductId());
|
|
|
+ cmpCode = product.getCmpCode();
|
|
|
+ }
|
|
|
if (null != cmpCode) {
|
|
|
String url = PS_PRODUCT_URL + "/productuser/getProductUsersByEnUUAndCmpCode";
|
|
|
JSONObject formData = new JSONObject();
|
|
|
@@ -325,13 +325,13 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
public Predicate toPredicate(Root<ProductReplace> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
|
|
|
final PredicateFactory<ProductReplace> factory = new PredicateFactory<>();
|
|
|
factory.add(PredicateUtils.ne("userUU", userUU, false));
|
|
|
- factory.add(PredicateUtils.and (PredicateUtils.isNotNull("ptrCmpcode"), PredicateUtils.eq("ptrCmpcode", cmpCode, false)));
|
|
|
+ factory.add(PredicateUtils.and(PredicateUtils.isNotNull("ptrCmpcode"), PredicateUtils.eq("ptrCmpcode", cmpCode, false)));
|
|
|
query.where(factory.toPredicate(root, query, cb));
|
|
|
return null;
|
|
|
}
|
|
|
});
|
|
|
if (!CollectionUtils.isEmpty(productReplacesList)) {
|
|
|
- for (ProductReplace productReplace:productReplacesList) {
|
|
|
+ for (ProductReplace productReplace : productReplacesList) {
|
|
|
ProductUsers user = new ProductUsers();
|
|
|
user.setEnuu(productReplace.getEnuu());
|
|
|
user.setUseruu(productReplace.getUserUU());
|
|
|
@@ -354,7 +354,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
/**
|
|
|
* 通过查询的个人物料相关联的信息,自动生成推荐的报价的数据
|
|
|
*
|
|
|
- * @param item 报价明细
|
|
|
+ * @param item 报价明细
|
|
|
* @param users 用户信息
|
|
|
*/
|
|
|
private void remindInquiry(final PurcInquiryItem item, final List<ProductUsers> users) {
|
|
|
@@ -450,13 +450,13 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
* 将ERP传入的inquiry信息转成公共询价服务中心需要的信息
|
|
|
*
|
|
|
* @param inquiries 将ERP传入的inquiry信息
|
|
|
- * @param enuu 询价企业UU号
|
|
|
- * @param address 询价企业地址
|
|
|
+ * @param enuu 询价企业UU号
|
|
|
+ * @param address 询价企业地址
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
public List<PurcInquiry> covert(List<BatchInquiry> inquiries, Long enuu, String address) throws NotFoundException {
|
|
|
- List<PurcInquiry> purcInquiries = new ArrayList<PurcInquiry>();
|
|
|
+ List<PurcInquiry> purcInquiries = new ArrayList<PurcInquiry>();
|
|
|
if (!CollectionUtils.isEmpty(inquiries)) {
|
|
|
for (BatchInquiry inquiry : inquiries) {
|
|
|
PurcInquiry old = purcInquiryDao.findByCodeAndEnUU(inquiry.getBi_code(), enuu);
|
|
|
@@ -528,7 +528,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
* erp提交审核时,公共询价服务中心单据禁用报价功能
|
|
|
*
|
|
|
* @param inquiries erp询价信息
|
|
|
- * @param enuu 询价企业UU号
|
|
|
+ * @param enuu 询价企业UU号
|
|
|
*/
|
|
|
@Override
|
|
|
public void updateStatus(List<BatchInquiry> inquiries, Long enuu) {
|
|
|
@@ -547,7 +547,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
*/
|
|
|
@Override
|
|
|
public List<InquiryDetail> findNotUploadReply(Long enuu) {
|
|
|
- List<PublicInquiryItem> items = publicInquiryItemDao.findByEnUUAndBackStatus(enuu, (short) Status.NOT_UPLOAD.value());
|
|
|
+ List<PublicInquiryItem> items = publicInquiryItemDao.findByEnUUAndBackStatus(enuu, (short) Status.NOT_UPLOAD.value());
|
|
|
if (!CollectionUtils.isEmpty(items)) {
|
|
|
// 防止下载过程中进行操作,这里设置一个下载中的状态
|
|
|
Set<Long> ids = new HashSet<>();
|
|
|
@@ -640,7 +640,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
/**
|
|
|
* 针对供应商,客户对报价结果发送消息通知
|
|
|
*
|
|
|
- * @param item 询价明细
|
|
|
+ * @param item 询价明细
|
|
|
* @param sourceApp 应用来源
|
|
|
*/
|
|
|
@Override
|
|
|
@@ -716,7 +716,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
* 买家ERP作废询价单后,修改公共询价服务中心里面的状态
|
|
|
*
|
|
|
* @param inquiries 询价信息
|
|
|
- * @param enuu 企业UU
|
|
|
+ * @param enuu 企业UU
|
|
|
* @author hejq
|
|
|
* @date 2018-01-14 12:28
|
|
|
*/
|
|
|
@@ -885,7 +885,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
}
|
|
|
item = publicInquiryItemDao.findOne(idid);
|
|
|
//回复清单更新
|
|
|
- if(replies.size() > 0) {
|
|
|
+ if (replies.size() > 0) {
|
|
|
for (PublicInquiryReply reply1 : replies) {
|
|
|
jdbcTemplate.update("update public$inquiryreply set ir_idid = " + idid + "where ir_id = " + reply1.getId());
|
|
|
}
|
|
|
@@ -980,7 +980,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
/**
|
|
|
* 查询公共询价列表信息
|
|
|
*
|
|
|
- * @param info 分页参数
|
|
|
+ * @param info 分页参数
|
|
|
* @param filter 过滤条件
|
|
|
* @return
|
|
|
*/
|
|
|
@@ -1113,7 +1113,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
}
|
|
|
String sql = "select * from (select p.id_id id, p.id_prodtitle prodTitle, p.id_date as date, i.in_enuu enuu from purc$puinquiryitems p left join purc$puinquiry i on i.in_id = p.id_inid where 1=1";
|
|
|
if (enuu != null) {
|
|
|
- sql = sql + " and i.in_enuu <> " + enuu ;
|
|
|
+ sql = sql + " and i.in_enuu <> " + enuu;
|
|
|
}
|
|
|
sql = sql + " and COALESCE(p.id_overdue, 0) <> 1 order by p.id_id desc) i limit " + size;
|
|
|
List<PurcInquiryItem> items = jdbcTemplate.query(sql, new BeanPropertyRowMapper<PurcInquiryItem>(PurcInquiryItem.class));
|
|
|
@@ -1154,6 +1154,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
|
|
|
/**
|
|
|
* 商城-采购排行榜
|
|
|
+ *
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
@@ -1172,7 +1173,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
@Override
|
|
|
public PurcInquiryItemInfo findItemByItemId(Long itemId, Long enuu) {
|
|
|
PurcInquiryItemInfo itemInfo = inquiryItemInfoDao.findOne(itemId);
|
|
|
- PublicInquiryItem item = publicInquiryItemDao.findByVendUUAndSourceId(enuu, itemInfo.getId());
|
|
|
+ PublicInquiryItem item = publicInquiryItemDao.findByVendUUAndSourceId(enuu, itemInfo.getId());
|
|
|
itemInfo.setQuoted(Constant.NO);
|
|
|
if (null != item) {
|
|
|
itemInfo.setAgreed(item.getAgreed());
|
|
|
@@ -1192,6 +1193,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
|
|
|
/**
|
|
|
* 通过id查询单个已转报价的信息
|
|
|
+ *
|
|
|
* @param id
|
|
|
* @return
|
|
|
*/
|
|
|
@@ -1230,13 +1232,13 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
itemInfo.setAgreed(Constant.YES);
|
|
|
}
|
|
|
itemInfo.setQuoted(Constant.NO);
|
|
|
- if (remind.getStatus().equals(Status.SUBMITTED.value())) {
|
|
|
- itemInfo.setQuoted(Constant.YES);
|
|
|
- itemInfo.setQuteId(remind.getNewId());
|
|
|
- }
|
|
|
- if (itemInfo.getRemainingTime() <= 0) {
|
|
|
- itemInfo.setOverdue(Constant.YES);
|
|
|
- }
|
|
|
+ if (remind.getStatus().equals(Status.SUBMITTED.value())) {
|
|
|
+ itemInfo.setQuoted(Constant.YES);
|
|
|
+ itemInfo.setQuteId(remind.getNewId());
|
|
|
+ }
|
|
|
+ if (itemInfo.getRemainingTime() <= 0) {
|
|
|
+ itemInfo.setOverdue(Constant.YES);
|
|
|
+ }
|
|
|
infoList.add(itemInfo);
|
|
|
}
|
|
|
}
|
|
|
@@ -1247,62 +1249,63 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
/**
|
|
|
* 针对供应商,客户将拒绝理由发送信息给供应商
|
|
|
*
|
|
|
- * @param item 询价明细
|
|
|
+ * @param item 询价明细
|
|
|
* @param sourceApp 应用来源
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
@Override
|
|
|
public Page<MessageModel> refuseMessage(PublicInquiryItem item, String sourceApp) {
|
|
|
- if (null != item.getVendUU() && null != item.getVendUserUU() ) {
|
|
|
- final String SMS_TYPE = "SM"; //发送信息
|
|
|
- final String CONSUMERAPP ="MALL";
|
|
|
- List<MessageModel> models = new ArrayList<MessageModel>();
|
|
|
- String Buyer=item.getInquiry().getEnName() == null ? item.getInquiry().getRecorder():item.getInquiry().getEnName();
|
|
|
- String cmpCode = item.getCmpCode();
|
|
|
- String cmp = cmpCode.length() > 10 ? cmpCode.substring(0, 10).concat("...") : cmpCode;
|
|
|
- String content= "因"+item.getRefusereason() + "," + Buyer + "【未采纳】您关于“型号:" + cmp + "”的报价。期待与您的下次合作!" ;
|
|
|
- MessageModel model = new MessageModel();
|
|
|
- model.setType(INQUIRY_DECIDE_TYPE_MALL);
|
|
|
- model.setProducerApp(sourceApp);
|
|
|
- model.setConsumerType(CUST_TYPE);
|
|
|
- model.setConsumerApp(CONSUMERAPP);
|
|
|
- model.setContent(content);
|
|
|
- model.setRemark(String.valueOf(item.getInquiry().getId()));
|
|
|
- model.setSourceId(item.getId());
|
|
|
- model.setReceiverEnuu(item.getVendUU());
|
|
|
- model.setReceiverUu(item.getVendUserUU());
|
|
|
- model.setSenderEnuu(item.getInquiry().getEnUU());
|
|
|
- if (null != item.getUserUU() || null != item.getInquiry().getRecorderUU()) {
|
|
|
- model.setSenderUu(item.getUserUU() != null ? item.getUserUU() : item.getInquiry().getRecorderUU());
|
|
|
- } else {
|
|
|
- Enterprise enterprise = enterpriseDao.findOne(item.getInquiry().getEnUU());
|
|
|
- model.setSenderUu(null != enterprise ? enterprise.getAdminUU() : 0L);
|
|
|
- }
|
|
|
- model.setSmsType(SMS_TYPE);
|
|
|
- models.add(model);
|
|
|
- if (!CollectionUtils.isEmpty(models)) {
|
|
|
- sendMessage(models);
|
|
|
- }
|
|
|
+ if (null != item.getVendUU() && null != item.getVendUserUU()) {
|
|
|
+ final String SMS_TYPE = "SM"; //发送信息
|
|
|
+ final String CONSUMERAPP = "MALL";
|
|
|
+ List<MessageModel> models = new ArrayList<MessageModel>();
|
|
|
+ String Buyer = item.getInquiry().getEnName() == null ? item.getInquiry().getRecorder() : item.getInquiry().getEnName();
|
|
|
+ String cmpCode = item.getCmpCode();
|
|
|
+ String cmp = cmpCode.length() > 10 ? cmpCode.substring(0, 10).concat("...") : cmpCode;
|
|
|
+ String content = "因" + item.getRefusereason() + "," + Buyer + "【未采纳】您关于“型号:" + cmp + "”的报价。期待与您的下次合作!";
|
|
|
+ MessageModel model = new MessageModel();
|
|
|
+ model.setType(INQUIRY_DECIDE_TYPE_MALL);
|
|
|
+ model.setProducerApp(sourceApp);
|
|
|
+ model.setConsumerType(CUST_TYPE);
|
|
|
+ model.setConsumerApp(CONSUMERAPP);
|
|
|
+ model.setContent(content);
|
|
|
+ model.setRemark(String.valueOf(item.getInquiry().getId()));
|
|
|
+ model.setSourceId(item.getId());
|
|
|
+ model.setReceiverEnuu(item.getVendUU());
|
|
|
+ model.setReceiverUu(item.getVendUserUU());
|
|
|
+ model.setSenderEnuu(item.getInquiry().getEnUU());
|
|
|
+ if (null != item.getUserUU() || null != item.getInquiry().getRecorderUU()) {
|
|
|
+ model.setSenderUu(item.getUserUU() != null ? item.getUserUU() : item.getInquiry().getRecorderUU());
|
|
|
+ } else {
|
|
|
+ Enterprise enterprise = enterpriseDao.findOne(item.getInquiry().getEnUU());
|
|
|
+ model.setSenderUu(null != enterprise ? enterprise.getAdminUU() : 0L);
|
|
|
}
|
|
|
+ model.setSmsType(SMS_TYPE);
|
|
|
+ models.add(model);
|
|
|
+ if (!CollectionUtils.isEmpty(models)) {
|
|
|
+ sendMessage(models);
|
|
|
+ }
|
|
|
+ }
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* 针对供应商,把客户采纳报价的消息发送给供应商
|
|
|
*
|
|
|
- * @param item 询价明细
|
|
|
+ * @param item 询价明细
|
|
|
* @param sourceApp 应用来源
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
@Override
|
|
|
public Page<MessageModel> adoptMessage(PublicInquiryItem item, String sourceApp) {
|
|
|
- if (null != item.getVendUU() && null != item.getVendUserUU() ) {
|
|
|
+ if (null != item.getVendUU() && null != item.getVendUserUU()) {
|
|
|
final String SMS_TYPE = "SM"; //发送信息
|
|
|
- final String CONSUMERAPP ="MALL";
|
|
|
+ final String CONSUMERAPP = "MALL";
|
|
|
List<MessageModel> models = new ArrayList<MessageModel>();
|
|
|
String cmpCode = item.getCmpCode();
|
|
|
String cmp = cmpCode.length() > 10 ? cmpCode.substring(0, 10).concat("...") : cmpCode;
|
|
|
- String content= item.getInquiry().getEnName()+"【已采纳】您关于'型号:'" + cmp + "的报价,期待与您的合作!" ;
|
|
|
+ String content = item.getInquiry().getEnName() + "【已采纳】您关于'型号:'" + cmp + "的报价,期待与您的合作!";
|
|
|
MessageModel model = new MessageModel();
|
|
|
model.setType(INQUIRY_DECIDE_TYPE_MALL);
|
|
|
model.setProducerApp(sourceApp);
|
|
|
@@ -1332,13 +1335,13 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
|
|
|
@Override
|
|
|
public Page<MessageModel> ReceiveMessage(PublicInquiryItem item, String sourceApp) {
|
|
|
- if (null != item.getVendUU() && null != item.getVendUserUU() ) {
|
|
|
+ if (null != item.getVendUU() && null != item.getVendUserUU()) {
|
|
|
final String SMS_TYPE = "SM"; //发送信息
|
|
|
- final String CONSUMERAPP ="MALL";
|
|
|
+ final String CONSUMERAPP = "MALL";
|
|
|
List<MessageModel> models = new ArrayList<MessageModel>();
|
|
|
String cmpCode = item.getCmpCode();
|
|
|
String cmp = cmpCode.length() > 10 ? cmpCode.substring(0, 10).concat("...") : cmpCode;
|
|
|
- String content= "您收到了"+item.getVendName()+"关于“型号:"+ cmp +"“的报价,马上去看一看吧!";
|
|
|
+ String content = "您收到了" + item.getVendName() + "关于“型号:" + cmp + "“的报价,马上去看一看吧!";
|
|
|
|
|
|
MessageModel model = new MessageModel();
|
|
|
model.setType(INQUIRY_TYPE_MALL);
|
|
|
@@ -1370,9 +1373,36 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
|
|
|
@Override
|
|
|
public ModelMap getPurcInquiryItemCount() {
|
|
|
- ModelMap result = new ModelMap();
|
|
|
- Long count = inquiryItemInfoDao.count();
|
|
|
- result.put("count", count);
|
|
|
+ ModelMap result = null;
|
|
|
+ try {
|
|
|
+ result = new ModelMap();
|
|
|
+ Long count = inquiryItemInfoDao.count();
|
|
|
+ result.put("count", count);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+
|
|
|
+ }
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询某年某月的询价明细总数
|
|
|
+ *
|
|
|
+ * @param month
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public ModelMap countByMonth(Integer year, Integer month) {
|
|
|
+ ModelMap result = null;
|
|
|
+ try {
|
|
|
+ result = new ModelMap();
|
|
|
+ Long count = inquiryItemInfoDao.countByMonth(year, month);
|
|
|
+ result.put("count", count);
|
|
|
+ result.put("success", "true");
|
|
|
+ } catch (Exception e) {
|
|
|
+ result.put("message", e.getMessage());
|
|
|
+ result.put("success", false);
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
return result;
|
|
|
}
|
|
|
}
|