|
|
@@ -13,12 +13,15 @@ import javax.persistence.criteria.Root;
|
|
|
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.dao.DataAccessException;
|
|
|
import org.springframework.data.domain.Page;
|
|
|
import org.springframework.data.jpa.domain.Specification;
|
|
|
+import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.ui.ModelMap;
|
|
|
|
|
|
import com.uas.platform.b2b.core.util.ContextUtils;
|
|
|
+import com.uas.platform.b2b.dao.CommonDao;
|
|
|
import com.uas.platform.b2b.dao.EnterpriseDao;
|
|
|
import com.uas.platform.b2b.dao.ProductDao;
|
|
|
import com.uas.platform.b2b.dao.PurcInquiryDao;
|
|
|
@@ -82,6 +85,12 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
@Autowired
|
|
|
private PurchaseInquiryInfoDao purchaseInquiryInfoDao;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private CommonDao commonDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private JdbcTemplate jdbcTemplate;
|
|
|
+
|
|
|
@Override
|
|
|
public ModelMap save(PurcInquiryInfo inquiryInfo, List<VendorAndContact> contacts) {
|
|
|
ModelMap map = new ModelMap();
|
|
|
@@ -104,6 +113,8 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
inquiry.setEnteryStatus(Status.UNAPPLY.value());
|
|
|
inquiry.setPriceType(inquiryInfo.getPriceType());
|
|
|
inquiry.setIsOpen((short) inquiryInfo.getIsOpen());
|
|
|
+ inquiry.setInvoice(inquiryInfo.getInvoice());
|
|
|
+ inquiry.setShip(inquiryInfo.getShip());
|
|
|
Set<PurcInquiryItem> items = new HashSet<PurcInquiryItem>();
|
|
|
Short i = 0;
|
|
|
for (VendorAndContact contact : contacts) {
|
|
|
@@ -188,6 +199,8 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
saleInquiry.setIsOpen((short) inquiryInfo.getIsOpen());
|
|
|
saleInquiry.setSourceId(Long.valueOf(inquiryId.toString()));
|
|
|
saleInquiry.setSourceApp(SOURCERAPP);
|
|
|
+ saleInquiry.setInvoice(inquiryInfo.getInvoice());
|
|
|
+ saleInquiry.setShip(inquiryInfo.getShip());
|
|
|
Set<PurchaseInquiryItem> items = new HashSet<PurchaseInquiryItem>();
|
|
|
Short i = 0;
|
|
|
for (VendorAndContact contact : contacts) {
|
|
|
@@ -252,6 +265,8 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
saleInquiry.setAuditor(SystemSession.getUser().getUserName());
|
|
|
saleInquiry.setSourceApp(SOURCERAPP);
|
|
|
saleInquiry.setSourceId(id);
|
|
|
+ saleInquiry.setInvoice(inquiry.getInvoice());
|
|
|
+ saleInquiry.setShip(inquiry.getShip());
|
|
|
Set<PurchaseInquiryItem> items = new HashSet<PurchaseInquiryItem>();
|
|
|
if (!CollectionUtils.isEmpty(inquiry.getInquiryItems())) {
|
|
|
for (PurcInquiryItem item : inquiry.getInquiryItems()) {
|
|
|
@@ -385,6 +400,8 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
inquiry.setEnteryStatus(Status.UNAPPLY.value());
|
|
|
inquiry.setPriceType(inquiryInfo.getPriceType());
|
|
|
inquiry.setIsOpen((short) inquiryInfo.getIsOpen());
|
|
|
+ inquiry.setInvoice(inquiryInfo.getInvoice());
|
|
|
+ inquiry.setShip(inquiryInfo.getShip());
|
|
|
Set<PurcInquiryItem> items = new HashSet<PurcInquiryItem>();
|
|
|
Short i = 0;
|
|
|
if (!CollectionUtils.isEmpty(inquiryInfo.getInquiryItems())) {
|
|
|
@@ -485,13 +502,15 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
saleInquiry.setSourceApp(SOURCERAPP);
|
|
|
saleInquiry.setSourceId(purcInquiry.getId());
|
|
|
saleInquiry.setPriceType(purcInquiry.getPriceType());
|
|
|
+ saleInquiry.setInvoice(purcInquiry.getInvoice());
|
|
|
+ saleInquiry.setShip(purcInquiry.getShip());
|
|
|
Set<PurchaseInquiryItem> items = new HashSet<PurchaseInquiryItem>();
|
|
|
Short i = 0;
|
|
|
if (null != purcInquiryItem) {
|
|
|
PurchaseInquiryItem item = new PurchaseInquiryItem();
|
|
|
Product product = productDao.findOne(purcInquiryItem.getProductId());
|
|
|
- item.setInquiry(saleInquiry);
|
|
|
item.setProduct(product);
|
|
|
+ item.setInquiry(saleInquiry);
|
|
|
item.setNumber(i);
|
|
|
item.setCurrency(purcInquiryItem.getCurrency());
|
|
|
item.setFromDate(new Date());
|
|
|
@@ -524,9 +543,9 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
} else {
|
|
|
if (!CollectionUtils.isEmpty(inquiry.getInquiryItems())) {
|
|
|
if (null != purcInquiryItem) {
|
|
|
+ // 涉及到级联存储及ERP转入单据的操作,用主表id存储存在问题,这里先用sql语句直接插入
|
|
|
PurchaseInquiryItem item = new PurchaseInquiryItem();
|
|
|
Product product = productDao.findOne(purcInquiryItem.getProductId());
|
|
|
- item.setInid(inquiry.getId());
|
|
|
item.setProduct(product);
|
|
|
item.setNumber((short) (inquiry.getInquiryItems().size() + 1));
|
|
|
item.setCurrency(purcInquiryItem.getCurrency());
|
|
|
@@ -542,8 +561,21 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
item.setCustLap(Constant.NO);
|
|
|
item.setSendStatus((short) Status.DOWNLOADED.value());
|
|
|
item.setSourceId(id);
|
|
|
- item = purchaseInquiryItemDao.save(item);
|
|
|
- if (item.getId() != null) {
|
|
|
+ Long idid = commonDao.queryForObject("select purc$inquiryitems_seq.nextval from dual", Long.class);
|
|
|
+ try {
|
|
|
+ jdbcTemplate.update(
|
|
|
+ "insert into purc$inquiryitems(id_id,id_number,id_currency,id_fromdate,id_todate,id_taxrate,id_prid,id_venduu,"
|
|
|
+ + "id_venduseruu,id_sourceapp,id_status,id_custlap,id_sendstatus,id_sourceid,id_inid) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)",
|
|
|
+ idid, item.getNumber(), item.getCurrency(), item.getFromDate(), item.getToDate(),
|
|
|
+ item.getTaxrate(), item.getProductId(), item.getVendUU(), item.getVendUserUU(),
|
|
|
+ item.getSourceApp(), item.getStatus(), item.getCustLap(), item.getSendStatus(),
|
|
|
+ item.getSourceId(), inquiry.getId());
|
|
|
+ } catch (DataAccessException e) {
|
|
|
+ // TODO Auto-generated catch block
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ item = purchaseInquiryItemDao.findOne(idid);
|
|
|
+ if (item != null) {
|
|
|
map.put("success", "转客户询价单成功");
|
|
|
map.put("id", item.getInquiry().getId());
|
|
|
} else {
|
|
|
@@ -585,6 +617,8 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
|
|
|
inquiryInfo.setRemark(inquiry.getRemark());
|
|
|
inquiryInfo.setSourceApp(inquiry.getSourceApp());
|
|
|
inquiryInfo.setSourceId(inquiry.getSourceId());
|
|
|
+ inquiryInfo.setShip(inquiry.getShip());
|
|
|
+ inquiryInfo.setInvoice(inquiry.getInvoice());
|
|
|
Set<Long> ids = new HashSet<Long>();
|
|
|
List<Long> idStrings = new ArrayList<>();
|
|
|
Set<InquiryProductInfo> products = new HashSet<InquiryProductInfo>();
|