|
|
@@ -27,7 +27,7 @@ import com.style24.persistence.domain.Order;
|
|
|
import com.style24.persistence.domain.Pos;
|
|
|
import com.style24.scm.biz.dao.TssPosDao;
|
|
|
import com.style24.scm.support.security.session.TssSession;
|
|
|
-
|
|
|
+import com.style24.scm.biz.service.TssWmsPosService;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
|
/**
|
|
|
@@ -55,6 +55,10 @@ public class TssPosService {
|
|
|
@Autowired
|
|
|
private HansaeErp hansaeErp;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private TssWmsPosService wmsPosService;
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 매장로그인 정보 조회
|
|
|
* @param Pos
|
|
|
@@ -503,7 +507,7 @@ public class TssPosService {
|
|
|
}
|
|
|
|
|
|
// API 호출 재고이동
|
|
|
- //hansaeErp.erpStockRt(HansaeErp.ErpGb.HANSAE_DR.value(), rtList);
|
|
|
+ hansaeErp.erpStockRt(HansaeErp.ErpGb.HANSAE_DR.value(), rtList);
|
|
|
|
|
|
// API 호출 매출정보
|
|
|
//GagaMap resultMap = hansaeErp.uploadErpSales(HansaeErp.ErpGb.HANSAE_DR.value(), salesList);
|
|
|
@@ -539,6 +543,124 @@ public class TssPosService {
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 매장POS -출고확정
|
|
|
+ *
|
|
|
+ * @param Pos
|
|
|
+ * @return GagaMap
|
|
|
+ * @author moon
|
|
|
+ * @since 2021. 06. 21
|
|
|
+ */
|
|
|
+ @Transactional("shopTxnManager")
|
|
|
+ public GagaMap saveConfirmation2(Collection<Pos> posList, int cnt) {
|
|
|
+ GagaMap result = new GagaMap();
|
|
|
+ result.setString("resultMsg", "출고확정 되었습니다.");
|
|
|
+ Integer userNo = TssSession.getInfo().getUserNo();
|
|
|
+ Collection<Erp> rtList = new ArrayList();
|
|
|
+ Collection<Erp> salesList = new ArrayList();
|
|
|
+
|
|
|
+ Date date = new Date();
|
|
|
+
|
|
|
+ SimpleDateFormat ifDt = new SimpleDateFormat("yyyymmddhhmmss");
|
|
|
+ String noIf = ifDt.format(date);
|
|
|
+
|
|
|
+ for(Pos pos : posList) {
|
|
|
+ Collection<Pos> list = posDao.getSendErpList(pos);
|
|
|
+ //log.info("list {}"+list);
|
|
|
+ for(Pos data : list) {
|
|
|
+ Erp erpData = new Erp();
|
|
|
+ erpData.setCD_RTOUTSHOP(data.getCdRtoutshop());
|
|
|
+ erpData.setCD_STYLE(data.getCdStyle());
|
|
|
+ erpData.setCD_COLOR(data.getCdColor());
|
|
|
+ erpData.setCD_SIZE(data.getCdSize());
|
|
|
+ erpData.setQT_RTOUT(data.getQtRtout());
|
|
|
+ rtList.add(erpData);
|
|
|
+
|
|
|
+ erpData.setNO_IF(noIf+ GagaStringUtil.getLPadding(cnt+"", 4, "0"));
|
|
|
+ //erpData.setDT_SALE(data.getDtSale());
|
|
|
+ erpData.setDT_SALE("20210831");
|
|
|
+ erpData.setQT_SALE(data.getQtSale());
|
|
|
+ erpData.setAM_ACSALE(data.getAmAcsale());
|
|
|
+ erpData.setDS_REMARK("TEST");
|
|
|
+ salesList.add(erpData);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // API 호출 재고이동
|
|
|
+ String rtn = "";
|
|
|
+ //rtn = hansaeErp.erpStockRt(HansaeErp.ErpGb.HANSAE_DR.value(), rtList);
|
|
|
+ rtn = "S";
|
|
|
+ if("S".equals(rtn)) {
|
|
|
+ // API 호출 매출정보
|
|
|
+ //GagaMap resultMap = hansaeErp.uploadErpSales(HansaeErp.ErpGb.HANSAE_DR.value(), salesList);
|
|
|
+
|
|
|
+ //log.info("매출정보 호출결과 {}"+resultMap);
|
|
|
+
|
|
|
+ for(Pos pos : posList) {
|
|
|
+ // 주문상세 업데이트
|
|
|
+ pos.setOrdDtlStat(OrderDetailStat.SHIPPING.value()); // 배송중
|
|
|
+ pos.setInvoiceNo("");
|
|
|
+ pos.setDelvArGb("");
|
|
|
+ pos.setUpdNo(userNo);
|
|
|
+ posDao.updateOrderDetail(pos);
|
|
|
+
|
|
|
+ // 주문상세 이력 삽입
|
|
|
+ Order order = new Order();
|
|
|
+ order.setOrdDtlNo(pos.getOrdDtlNo());
|
|
|
+ order.setUpdNo(userNo);
|
|
|
+ order.setRegNo(userNo);
|
|
|
+ orderDao.createOrderDetailHst(order);
|
|
|
+
|
|
|
+ Collection<Pos> list = posDao.getSendErpList(pos);
|
|
|
+ // 주문상세단품 HST 등록???
|
|
|
+ for(Pos data : list) {
|
|
|
+ Order ordItem = new Order();
|
|
|
+ ordItem.setUpdNo(userNo);
|
|
|
+ ordItem.setRegNo(userNo);
|
|
|
+ ordItem.setOrdDtlItemSq(data.getOrdDtlItemSq());
|
|
|
+ //orderChangeDao.createOrderDetailItemHst(ordItem);
|
|
|
+
|
|
|
+ // 2021.06.25 POS 배송중 (정산구분값추가)
|
|
|
+ ordItem.setOrdDtlStat(TscConstants.OrdDtlItemStat.SALE_SHIPPING.value());
|
|
|
+ orderDao.createOrderDetailItemHst(ordItem);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // WMS에 출고 DATA 넣기 (회수시 출고DATA 필요!)
|
|
|
+ Collection<Pos> ordNoList = new ArrayList<>();
|
|
|
+
|
|
|
+ for (Pos posParam : posList) {
|
|
|
+ String chk = "N";
|
|
|
+ for (Pos param : ordNoList) {
|
|
|
+ if (param.getOrdNo().equals(posParam.getOrdNo())) {
|
|
|
+ chk = "Y";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!"Y".equals(chk)) {
|
|
|
+ Pos ordNo = new Pos();
|
|
|
+ ordNo.setOrdNo(posParam.getOrdNo());
|
|
|
+ ordNoList.add(ordNo);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ for(Pos ordParam : ordNoList) {
|
|
|
+ // wms 출고 정보 조회(mall_DB)
|
|
|
+ Collection<Pos> wmsDelvList = posDao.getWmsDeliveryList(ordParam);
|
|
|
+ // wms 출고 정보 등록 (wms_DB)
|
|
|
+ wmsPosService.insertWmsDelivery(wmsDelvList);
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ result.setString("resultMsg", "hansaeErp API 호출 실패했습니다.");
|
|
|
+ }
|
|
|
+
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 매장POS - 정산내역
|
|
|
*
|