|
|
@@ -813,6 +813,7 @@ public class OrderServiceImpl implements OrderService {
|
|
|
or.setSellCompanyArea(enterprise.getEnArea());
|
|
|
or.setSellCompanyAddress(enterprise.getEnAddress());
|
|
|
or.setOrderDetails(newOrderDetails);
|
|
|
+ updateOrderBill(or);
|
|
|
or.setOrderid(createNumberService.generateOrderNumber(EncodingRulesConstant.ORDER, "trade$order", 8));
|
|
|
orders.add(or);
|
|
|
}
|
|
|
@@ -826,6 +827,45 @@ public class OrderServiceImpl implements OrderService {
|
|
|
return ResultMap.success(orderList);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 调整订单的发票类型
|
|
|
+ * 寄售类型,若选择普票(没有专票信息,修改为不开票。有则修改成专票)
|
|
|
+ * @param order
|
|
|
+ */
|
|
|
+ public void updateOrderBill(Order order){
|
|
|
+ if (sysConf.getStoreid().equals(order.getStoreid())){ //如果是寄售类型的订单
|
|
|
+ if (order.getInvoiceid() != null && order.getInvoicetype() == Type.Bill_NoDeduct.value()){ //发票为普票
|
|
|
+ //将普票类型修改为专票
|
|
|
+ List<Bill> billOne;
|
|
|
+ if (SystemSession.getUser().getEnterprise() != null){
|
|
|
+ billOne = billDao.getBillByUseruuAndEnuuAndKind(SystemSession.getUser().getUserUU(),
|
|
|
+ SystemSession.getUser().getEnterprise().getUu(), Type.Bill_Deduct.value());
|
|
|
+ }else {
|
|
|
+ billOne = billDao.getBillByUseruuAndDissociativeAndKind(SystemSession.getUser().getUserUU(),
|
|
|
+ Type.PERSONAL.value(), Type.Bill_Deduct.value());
|
|
|
+ }
|
|
|
+ if (CollectionUtils.isEmpty(billOne)){
|
|
|
+ //没有专票信息,则修改成暂不开票
|
|
|
+ order.setInvoicetype(Type.Bill_No.value());
|
|
|
+ order.setInvoiceid(null);
|
|
|
+ order.setInvoicetitle(null);
|
|
|
+ order.setInvoiceAddress(null);
|
|
|
+ order.setVatBillStatus(Status.NEEDNO_BILL.value()); // 不需要开票
|
|
|
+ Set<OrderDetail> orderDetails = order.getOrderDetails();
|
|
|
+ for (OrderDetail orderDetail : orderDetails) {
|
|
|
+ orderDetail.setBillStatus(Status.NEEDNO_BILL.value());
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ Bill bill = billOne.get(0);
|
|
|
+ order.setInvoicetype(Type.Bill_Deduct.value());
|
|
|
+ order.setInvoiceid(bill.getId());
|
|
|
+ order.setInvoicetitle(bill.getHead());
|
|
|
+ order.setInvoiceAddress(FastjsonUtils.toJson(bill));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* <h1>将orderInfos的信息封装进Order的List集合中,便于操作。</h1>
|
|
|
*
|
|
|
@@ -3100,4 +3140,16 @@ public class OrderServiceImpl implements OrderService {
|
|
|
order.setCmpQty(cmps.size());// 型号数量
|
|
|
return order;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResultMap checkConsignment(List<String> uuidArray) {
|
|
|
+ Boolean bool = false;
|
|
|
+ for (String uuid : uuidArray){
|
|
|
+ if (sysConf.getStoreid().equals(uuid)){
|
|
|
+ bool = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return ResultMap.success(bool);
|
|
|
+ }
|
|
|
}
|