Просмотр исходного кода

明细上传时判断是否存在,不存在才进行插入处理

hejq 8 лет назад
Родитель
Сommit
5db1dfe780
1 измененных файлов с 16 добавлено и 13 удалено
  1. 16 13
      src/main/java/com/uas/platform/b2b/erp/service/impl/InquiryServiceImpl.java

+ 16 - 13
src/main/java/com/uas/platform/b2b/erp/service/impl/InquiryServiceImpl.java

@@ -233,21 +233,24 @@ public class InquiryServiceImpl implements InquiryService {
                 //先查询已经上传的询价单主表信息
                 //先查询已经上传的询价单主表信息
                 Inquiry inquiry = getInquiry(detail.getIn_code(), detail.getId_id());
                 Inquiry inquiry = getInquiry(detail.getIn_code(), detail.getId_id());
                 if(null != inquiry) {
                 if(null != inquiry) {
-                    //查询对应平台的物料信息
-                    List<Product> products = productDao.findByEnUUAndCode(SystemSession.getUser().getEnterprise().getUu(), detail.getId_prodcode());
-                    if(products.size() > 0) {
-                        Long prodId = products.get(0).getId();
-                        Long id = commonDao.getJdbcTemplate().queryForLong("select purc$inquiryitems_seq.nextval from dual");
-                        String sql = "insert into purc$inquiryitems(id_id,id_sourceid,id_number,id_inid,id_useruu,id_prid,id_currency,id_taxrate,id_remark,id_venduu,id_venduseruu,id_fromdate,id_todate,id_status,id_sendstatus,id_erpdate,id_date,id_sourceapp) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
-                        commonDao.getJdbcTemplate().update(sql, id,detail.getId_id(), detail.getId_detno(), inquiry.getIn_id(), SystemSession.getUser().getUserUU(), prodId, detail.getId_currency(), detail.getId_rate(), detail.getId_remark(), detail.getVe_uu(), detail.getVe_contactuu(), detail.getId_fromdate(), detail.getId_todate(), Status.NOT_REPLY.value(), Status.NOT_UPLOAD.value(), new Date(), inquiry.getIn_date(), "erp");
-                        //插入分段信息
-                        if(detail.getDets().size() > 0) {
-                            for(InquiryDetailDet det : detail.getDets()) {
-                                sql = "insert into purc$inquiryreply (ir_id,ir_lapqty,ir_idid) VALUES (purc$inquiryreply_seq.nextval, ?, ?)";
-                                commonDao.getJdbcTemplate().update(sql, det.getIdd_lapqty() == null ? 0 :  det.getIdd_lapqty(), id);
+                    List<InquiryDetail> inquiryDetails = commonDao.query("select * from purc$inquiryitems where id_inid = " + inquiry.getIn_id() + " and id_sourceid = " + detail.getId_id(), InquiryDetail.class);
+                    if(inquiryDetails.size() == 0) {
+                        //查询对应平台的物料信息
+                        List<Product> products = productDao.findByEnUUAndCode(SystemSession.getUser().getEnterprise().getUu(), detail.getId_prodcode());
+                        if(products.size() > 0) {
+                            Long prodId = products.get(0).getId();
+                            Long id = commonDao.getJdbcTemplate().queryForLong("select purc$inquiryitems_seq.nextval from dual");
+                            String sql = "insert into purc$inquiryitems(id_id,id_sourceid,id_number,id_inid,id_useruu,id_prid,id_currency,id_taxrate,id_remark,id_venduu,id_venduseruu,id_fromdate,id_todate,id_status,id_sendstatus,id_erpdate,id_date,id_sourceapp) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
+                            commonDao.getJdbcTemplate().update(sql, id,detail.getId_id(), detail.getId_detno(), inquiry.getIn_id(), SystemSession.getUser().getUserUU(), prodId, detail.getId_currency(), detail.getId_rate(), detail.getId_remark(), detail.getVe_uu(), detail.getVe_contactuu(), detail.getId_fromdate(), detail.getId_todate(), Status.NOT_REPLY.value(), Status.NOT_UPLOAD.value(), new Date(), inquiry.getIn_date(), "erp");
+                            //插入分段信息
+                            if(detail.getDets().size() > 0) {
+                                for(InquiryDetailDet det : detail.getDets()) {
+                                    sql = "insert into purc$inquiryreply (ir_id,ir_lapqty,ir_idid) VALUES (purc$inquiryreply_seq.nextval, ?, ?)";
+                                    commonDao.getJdbcTemplate().update(sql, det.getIdd_lapqty() == null ? 0 :  det.getIdd_lapqty(), id);
+                                }
                             }
                             }
+                            logger.log("自动询价明细上传", "新增了自动询价的明细(" + id + ")", 1);
                         }
                         }
-                        logger.log("自动询价明细上传", "新增了自动询价的明细(" + id + ")", 1);
                     }
                     }
                 }
                 }
             }
             }