|
|
@@ -4,9 +4,17 @@ import java.util.HashSet;
|
|
|
import java.util.List;
|
|
|
import java.util.Set;
|
|
|
|
|
|
+import javax.persistence.criteria.CriteriaBuilder;
|
|
|
+import javax.persistence.criteria.CriteriaQuery;
|
|
|
+import javax.persistence.criteria.Predicate;
|
|
|
+import javax.persistence.criteria.Root;
|
|
|
+
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.data.domain.Page;
|
|
|
+import org.springframework.data.jpa.domain.Specification;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import com.uas.platform.b2b.dao.EnterpriseDao;
|
|
|
import com.uas.platform.b2b.dao.PurchaseOrderChangeDao;
|
|
|
import com.uas.platform.b2b.dao.PurchaseOrderChangeItemDao;
|
|
|
import com.uas.platform.b2b.erp.model.SaleDownChangeReply;
|
|
|
@@ -16,6 +24,7 @@ import com.uas.platform.b2b.model.PurchaseOrderChangeItem;
|
|
|
import com.uas.platform.b2b.service.PurchaseOrderChangeService;
|
|
|
import com.uas.platform.b2b.support.SystemSession;
|
|
|
import com.uas.platform.b2b.support.XingePusher;
|
|
|
+import com.uas.platform.core.model.PageInfo;
|
|
|
import com.uas.platform.core.model.Status;
|
|
|
|
|
|
@Service
|
|
|
@@ -27,6 +36,9 @@ public class PurchaseOrderChangeServiceImpl implements PurchaseOrderChangeServic
|
|
|
@Autowired
|
|
|
private PurchaseOrderChangeItemDao purchaseOrderChangeItemDao;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private EnterpriseDao enterpriseDao;
|
|
|
+
|
|
|
@Override
|
|
|
public void save(List<PurchaseOrderChangeItem> changeItems) {
|
|
|
purchaseOrderChangeItemDao.save(changeItems);
|
|
|
@@ -35,12 +47,14 @@ public class PurchaseOrderChangeServiceImpl implements PurchaseOrderChangeServic
|
|
|
for (PurchaseOrderChangeItem orderItem : changeItems) {
|
|
|
if (!orderId.contains(orderItem.getOrderChange().getId())) {
|
|
|
PurchaseOrder order = orderItem.getOrderChange().getOrder();
|
|
|
- // Android
|
|
|
- XingePusher.pushSingleAccountAndroid(order.getVendUserUU().toString(), "新增一条客户采购变更单-", "单号:"
|
|
|
- + orderItem.getOrderChange().getCode() + ",客户:" + order.getEnterprise().getEnName());
|
|
|
- // IOS
|
|
|
- XingePusher.pushSingleAccountIOS(order.getVendUserUU().toString(), "新增一条客户采购变更单-" + "单号:"
|
|
|
- + orderItem.getOrderChange().getCode() + ",客户:" + order.getEnterprise().getEnName());
|
|
|
+ if (order.getVendUserUU() != null) {
|
|
|
+ // Android
|
|
|
+ XingePusher.pushSingleAccountAndroid(order.getVendUserUU().toString(), "新增一条客户采购变更单-", "单号:"
|
|
|
+ + orderItem.getOrderChange().getCode() + ",客户:" + order.getEnterprise().getEnName());
|
|
|
+ // IOS
|
|
|
+ XingePusher.pushSingleAccountIOS(order.getVendUserUU().toString(), "新增一条客户采购变更单-" + "单号:"
|
|
|
+ + orderItem.getOrderChange().getCode() + ",客户:" + order.getEnterprise().getEnName());
|
|
|
+ }
|
|
|
orderId.add(orderItem.getOrderChange().getId());
|
|
|
}
|
|
|
}
|
|
|
@@ -87,9 +101,8 @@ public class PurchaseOrderChangeServiceImpl implements PurchaseOrderChangeServic
|
|
|
if (orderChange != null) {
|
|
|
orderChange.setAgreed(reply.getSc_agreed());
|
|
|
orderChange.setReplyRemark(reply.getSc_replyremark());
|
|
|
- orderChange.setStatus((short) Status.REPLIED.value());
|
|
|
orderChange.setReplySendStatus((short) Status.DOWNLOADED.value());
|
|
|
- purchaseOrderChangeDao.save(orderChange);
|
|
|
+ reply(orderChange);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -111,4 +124,31 @@ public class PurchaseOrderChangeServiceImpl implements PurchaseOrderChangeServic
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Page<PurchaseOrderChange> findAllByPageInfo(final PageInfo pageInfo) {
|
|
|
+ return purchaseOrderChangeDao.findAll(new Specification<PurchaseOrderChange>() {
|
|
|
+
|
|
|
+ public Predicate toPredicate(Root<PurchaseOrderChange> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
|
|
|
+ query.where(pageInfo.getPredicates(root, builder));
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ }, pageInfo);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void reply(PurchaseOrderChange change) {
|
|
|
+ change.setStatus((short) Status.REPLIED.value());
|
|
|
+ purchaseOrderChangeDao.save(change);
|
|
|
+ // 将回复信息推送给采购企业采购员(或管理员)
|
|
|
+ PurchaseOrder order = change.getOrder();
|
|
|
+ if (order.getUserUU() != null) {
|
|
|
+ // Android
|
|
|
+ XingePusher.pushSingleAccountAndroid(order.getUserUU().toString(), "新增采购单回复", "单号:" + order.getCode() + ",供应商:"
|
|
|
+ + enterpriseDao.findOne(order.getVendUU()).getEnName());
|
|
|
+ // IOS
|
|
|
+ XingePusher.pushSingleAccountIOS(order.getUserUU().toString(), "新增采购单回复" + "单号:" + order.getCode() + ",供应商:"
|
|
|
+ + enterpriseDao.findOne(order.getVendUU()).getEnName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|