|
|
@@ -1,5 +1,6 @@
|
|
|
package com.uas.platform.b2b.erp.service.impl;
|
|
|
|
|
|
+import com.uas.account.util.AccountUtils;
|
|
|
import com.uas.platform.b2b.core.util.ThreadTask;
|
|
|
import com.uas.platform.b2b.dao.*;
|
|
|
import com.uas.platform.b2b.erp.model.SaleTenderErp;
|
|
|
@@ -7,6 +8,7 @@ import com.uas.platform.b2b.erp.service.TenderService;
|
|
|
import com.uas.platform.b2b.model.*;
|
|
|
import com.uas.platform.b2b.service.AttachService;
|
|
|
import com.uas.platform.b2b.support.SystemSession;
|
|
|
+import com.uas.platform.b2b.temporary.model.PartnershipRecord;
|
|
|
import com.uas.platform.b2b.temporary.model.PurcTenderProd;
|
|
|
import com.uas.platform.b2b.temporary.model.TenderContactInfo;
|
|
|
import com.uas.platform.core.model.Constant;
|
|
|
@@ -577,8 +579,8 @@ public class TenderServiceImpl implements TenderService {
|
|
|
} else {
|
|
|
User admin = userDao.findOne(enterprise.getEnAdminuu());
|
|
|
if (null != admin) {
|
|
|
- contactInfo.setContactTel(admin.getUserName());
|
|
|
- contactInfo.setContact(admin.getUserTel());
|
|
|
+ contactInfo.setContactTel(admin.getUserTel());
|
|
|
+ contactInfo.setContact(admin.getUserName());
|
|
|
contactInfo.setContactUU(admin.getUserUU());
|
|
|
}
|
|
|
}
|
|
|
@@ -593,9 +595,28 @@ public class TenderServiceImpl implements TenderService {
|
|
|
if (null == saleTender) {
|
|
|
saleTender = new SaleTender(tender, contactInfo);
|
|
|
saleTender.setVendUU(enBaseInfo.getUu());
|
|
|
- saleTender.setVendor(enBaseInfo); // 投标单主表构造完毕
|
|
|
- saleTenderDao.save(saleTender);
|
|
|
- saveUserOrders(saleTender, tender);
|
|
|
+ saleTender.setEnterpriseBaseInfo(enBaseInfo); // 投标单主表构造完毕
|
|
|
+ List<Vendor> vendors = vendorDao.findByMyEnUUAndVendUU(saleTender.getEnUU(), saleTender.getVendUU());
|
|
|
+ Vendor vendor = null;
|
|
|
+ if (vendors.size() == 0) {// 供应商列表中不存在供应商关系
|
|
|
+ vendor = addVendor(saleTender);// 增加供应商关系
|
|
|
+ addPartnerShipRecord(vendor);
|
|
|
+ } else {
|
|
|
+ vendor = vendors.get(0);
|
|
|
+ }
|
|
|
+ if (vendor != null) {// 供应商uu号不为非法的值
|
|
|
+ // 如果客户联系人UU号为空或者UU号不存在对应的用户,则设为供应商资料中的供应商联系人(可能为空)
|
|
|
+ if (saleTender.getUseruu() != null) {
|
|
|
+ List<User> vendUsers = userDao.findByEnUUAndUserUU(vendor.getVendEnUU(),
|
|
|
+ saleTender.getUseruu());
|
|
|
+ if (vendUsers.size() == 0)
|
|
|
+ saleTender.setUseruu(vendor.getVendUserUU());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ saleTender = saleTenderDao.save(saleTender);
|
|
|
+ if (tender.getIsPublish() == Constant.YES) {
|
|
|
+ saveUserOrders(saleTender, tender);
|
|
|
+ }
|
|
|
}
|
|
|
tenderItem.setSaleTender(saleTender);
|
|
|
}
|
|
|
@@ -610,13 +631,68 @@ public class TenderServiceImpl implements TenderService {
|
|
|
List<SaleTender> saleTenders = saleTenderDao.findByEnUUAndCode(tender.getEnUU(), tender.getCode());
|
|
|
for (SaleTender saleTender : saleTenders) {
|
|
|
saleTender.setIsPublish(Constant.YES);
|
|
|
- saveUserOrders(saleTender, tender);
|
|
|
+ if (tender.getIsPublish() == Constant.YES) {
|
|
|
+ saveUserOrders(saleTender, tender);
|
|
|
+ }
|
|
|
}
|
|
|
saleTenderDao.save(saleTenders);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 添加供应商资料
|
|
|
+ *
|
|
|
+ * @param saleTender
|
|
|
+ */
|
|
|
+ private Vendor addVendor(SaleTender saleTender) {
|
|
|
+ Enterprise enterprise = enterpriseDao.findOne(saleTender.getVendUU());
|
|
|
+ if (enterprise != null) {
|
|
|
+ Vendor vendor = new Vendor();
|
|
|
+ vendor.setMyEnUU(saleTender.getEnUU());
|
|
|
+ vendor.setMyUserUU(saleTender.getRecorderuu());
|
|
|
+ vendor.setVendorEnterprise(enterprise);
|
|
|
+ vendor.setVendEnUU(enterprise.getUu());
|
|
|
+ if (saleTender.getUseruu() != null) {
|
|
|
+ List<User> users = userDao.findByEnUUAndUserUU(enterprise.getUu(), saleTender.getUseruu());
|
|
|
+ if (users.size() > 0) {
|
|
|
+ vendor.setVendUserUU(saleTender.getUseruu());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return vendorDao.save(vendor);
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 添加合作伙伴关系
|
|
|
+ * @param vendor
|
|
|
+ */
|
|
|
+ private void addPartnerShipRecord(Vendor vendor) {
|
|
|
+ PartnershipRecord shipRecord = new PartnershipRecord("uas", vendor);
|
|
|
+ com.uas.account.entity.PartnershipRecord record = new com.uas.account.entity.PartnershipRecord();
|
|
|
+ record.setAppId(shipRecord.getAppId());
|
|
|
+ record.setCustName(shipRecord.getCustName());
|
|
|
+ record.setCustUID(shipRecord.getCustUID());
|
|
|
+ record.setCustUserCode(shipRecord.getCustUserCode());
|
|
|
+ record.setCustUserEmail(shipRecord.getCustUserEmail());
|
|
|
+ record.setCustUserName(shipRecord.getCustUserName());
|
|
|
+ record.setCustUserTel(shipRecord.getCustUserTel());
|
|
|
+ record.setVendName(shipRecord.getVendName());
|
|
|
+ record.setVendUID(shipRecord.getVendUID());
|
|
|
+ record.setVendUserCode(shipRecord.getVendUserCode());
|
|
|
+ record.setVendUserEmail(shipRecord.getVendUserEmail());
|
|
|
+ record.setVendUserName(shipRecord.getVendUserName());
|
|
|
+ record.setVendUserTel(shipRecord.getVendUserTel());
|
|
|
+ try {
|
|
|
+ AccountUtils.synchronizeRecord(record);
|
|
|
+ vendor.setSynchStatus(Constant.YES);
|
|
|
+ vendorDao.save(vendor);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 保存
|
|
|
*
|