package com.zym.pss.cargo.service.impl; import java.io.Serializable; import java.util.HashMap; import java.util.Map; import java.util.UUID; import javax.annotation.Resource; import org.springframework.stereotype.Service; import com.zym.pss.cargo.dao.OrderDao; import com.zym.pss.cargo.dao.PurchaseOrderDao; import com.zym.pss.cargo.dao.SaleOrderDao; import com.zym.pss.cargo.po.Order; import com.zym.pss.cargo.service.OrderService; import com.zym.pss.core.service.impl.BaseServiceImpl; @Service("orderService") public class OrderServiceImpl extends BaseServiceImpl<Order> implements OrderService{ OrderDao orderDao ; @Resource public void setOrderDao(OrderDao orderDao) { super.setBaseDao(orderDao); this.orderDao = orderDao; } @Resource PurchaseOrderDao purchaseOrderDao ; @Resource SaleOrderDao saleOrderDao ; @Override public void insert(Order entity) { entity.setId(UUID.randomUUID().toString()); entity.setState(1); //设置订单状态为草稿 this.orderDao.insert(entity); } @Override public void updateState(String[] ids,Integer state) { Map<String,Object> paramMap = new HashMap<String , Object>(); paramMap.put("state", state); paramMap.put("ids", ids); this.orderDao.updateState(paramMap); } @Override public void delete(String tenantId , Serializable[] ids) { Map<String,Object> paraMap = null ; for(int i = 0 ; i<ids.length;i++){ Order order = this.orderDao.get(ids[i]); paraMap = new HashMap<String,Object>(); paraMap.put("tenantId", tenantId); paraMap.put("orderNo", order.getOrderNo()); if("1".equals(order.getType())){ //采购订单 this.purchaseOrderDao.deleteByOrderNo(paraMap); //删除订单下,所有要采购的原材料 } if("2".equals(order.getType())){ //销售订单 this.saleOrderDao.deleteByOrderNo(paraMap); //删除销售订单中,涉及到的销售订单 } } this.orderDao.delete(ids); //删除订单信息 } }