Commit a3f773d8 authored by wanghang's avatar wanghang

订单采购2

parent 0998a3ce
...@@ -28,38 +28,38 @@ ...@@ -28,38 +28,38 @@
<x:hidden name="bsart"/> <x:hidden name="bsart"/>
<div class="hg-form-cols"> <div class="hg-form-cols">
<div class="hg-form-row"> <div class="hg-form-row">
<x:inputC name="ebeln" label="采购订单号码" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="ebeln" label="采购订单号码" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="bsart" label="采购订单类型" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="bsart" label="采购订单类型" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="batxt" label="采购订单类型描述" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="batxt" label="采购订单类型描述" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="purchaseOrderId" label="id" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="purchaseOrderId" label="id" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="ebelp" label="项目编号" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="ebelp" label="项目编号" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="pstyp" label="项目类别" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="pstyp" label="项目类别" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="ptext" label="项目类别描述" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="ptext" label="项目类别描述" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="knttp" label="科目分配类别" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="knttp" label="科目分配类别" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="knttx" label="科目分配类别描述" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="knttx" label="科目分配类别描述" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="matnr" label="物料号" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="matnr" label="物料号" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="matkl" label="物料组" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="matkl" label="物料组" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="wgbez" label="物料组描述" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="wgbez" label="物料组描述" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="menge" label="采购订单数量" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="menge" label="采购订单数量" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="meins" label="采购订单计量单位" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="meins" label="采购订单计量单位" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="msehl" label="单位描述" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="msehl" label="单位描述" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="eindt" label="要求交货日期" readonly="false" wrapper="date" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="eindt" label="要求交货日期" readonly="false" wrapper="date" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="werks" label="工厂" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="werks" label="工厂" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="name1" label="名称" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="name1" label="名称" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="lgort" label="库存地点" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="lgort" label="库存地点" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="lgobe" label="库存地点的描述" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="lgobe" label="库存地点的描述" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="ekgrp" label="采购组" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="ekgrp" label="采购组" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="eknam" label="采购组描述" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="eknam" label="采购组描述" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="netpr" label="价格" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="netpr" label="价格" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="peinh" label="价格单位" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="peinh" label="价格单位" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="mwskz" label="税码" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="mwskz" label="税码" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="waers" label="币种" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="waers" label="币种" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="netwr" label="总价" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="netwr" label="总价" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="retpo" label="退货项目" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="retpo" label="退货项目" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="sakto" label="总账科目" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="sakto" label="总账科目" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="kostl" label="成本中心" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="kostl" label="成本中心" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="anln1" label="主资产号" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="anln1" label="主资产号" readonly="false" labelCol="1" fieldCol="2" required="false"/>
<x:inputC name="anln2" label="资产次级编号" readonly="false" labelCol="1" fieldCol="2" required="true"/> <x:inputC name="anln2" label="资产次级编号" readonly="false" labelCol="1" fieldCol="2" required="false"/>
</div> </div>
</div> </div>
</form> </form>
......
...@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.purchaseOrder.application; ...@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.purchaseOrder.application;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder; import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderQueryRequest; import com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderQueryRequest;
import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderDto;
import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderVo; import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderVo;
import java.util.Map; import java.util.Map;
...@@ -20,7 +21,7 @@ public interface SapPurchaseOrderApplication { ...@@ -20,7 +21,7 @@ public interface SapPurchaseOrderApplication {
SapPurchaseOrder loadSapPurchaseOrder(String id); SapPurchaseOrder loadSapPurchaseOrder(String id);
void saveSapPurchaseOrderVo(SapPurchaseOrderVo sapPurchaseOrderVo); void saveSapPurchaseOrderDto(SapPurchaseOrderDto sapPurchaseOrderDto);
void sendSapDate(SapPurchaseOrder sapPurchaseOrder,String flag); void sendSapDate(SapPurchaseOrder sapPurchaseOrder,String flag);
......
...@@ -17,6 +17,7 @@ import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderItemAppli ...@@ -17,6 +17,7 @@ import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderItemAppli
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder; import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrderItem; import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrderItem;
import com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderQueryRequest; import com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderQueryRequest;
import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderDto;
import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderItemVo; import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderItemVo;
import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderVo; import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderVo;
import com.huigou.topsun.sap.purchaseOrder.repository.SapPurchaseOrderRepository; import com.huigou.topsun.sap.purchaseOrder.repository.SapPurchaseOrderRepository;
...@@ -147,7 +148,8 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu ...@@ -147,7 +148,8 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
@Override @Override
@Transactional @Transactional
public void saveSapPurchaseOrderVo(SapPurchaseOrderVo sapPurchaseOrderVo) { public void saveSapPurchaseOrderDto(SapPurchaseOrderDto sapPurchaseOrderDto){
SapPurchaseOrderVo sapPurchaseOrderVo = sapPurchaseOrderDto.getLsHeader();
SapPurchaseOrder purchaseOrder = sapPurchaseOrderRepository.findAllByEbeln(sapPurchaseOrderVo.getEbeln()); SapPurchaseOrder purchaseOrder = sapPurchaseOrderRepository.findAllByEbeln(sapPurchaseOrderVo.getEbeln());
String purchaseOrderId=""; String purchaseOrderId="";
//数据第一次接收,创建流程任务 //数据第一次接收,创建流程任务
...@@ -175,7 +177,7 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu ...@@ -175,7 +177,7 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
purchaseOrderId=purchaseOrder.getId(); purchaseOrderId=purchaseOrder.getId();
} }
SapPurchaseOrderItem sapPurchaseOrderItem = new SapPurchaseOrderItem(); SapPurchaseOrderItem sapPurchaseOrderItem = new SapPurchaseOrderItem();
BeanUtil.copyProperties(sapPurchaseOrderVo.getItem(), sapPurchaseOrderItem); BeanUtil.copyProperties(sapPurchaseOrderDto.getLtItems().get(0), sapPurchaseOrderItem);
sapPurchaseOrderItem.setPurchaseOrderId(purchaseOrderId); sapPurchaseOrderItem.setPurchaseOrderId(purchaseOrderId);
sapPurchaseOrderItemApplication.saveSapPurchaseOrderItem(sapPurchaseOrderItem); sapPurchaseOrderItemApplication.saveSapPurchaseOrderItem(sapPurchaseOrderItem);
} }
......
package com.huigou.topsun.sap.purchaseOrder.controller; package com.huigou.topsun.sap.purchaseOrder.controller;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature; import com.fasterxml.jackson.databind.SerializationFeature;
import com.huigou.context.Operator; import com.huigou.context.Operator;
import com.huigou.context.OrgUnit; import com.huigou.context.OrgUnit;
import com.huigou.topsun.sap.acceptanceFormAck.domain.SapAcceptanceFormAck;
import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderApplication; import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderApplication;
import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderItemApplication; import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderItemApplication;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder; import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrderItem; import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrderItem;
import com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderQueryRequest; import com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderQueryRequest;
import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderDto;
import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderVo; import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderVo;
import com.huigou.topsun.util.MyBaseUtil; import com.huigou.topsun.util.MyBaseUtil;
import com.huigou.uasp.annotation.ControllerMapping; import com.huigou.uasp.annotation.ControllerMapping;
...@@ -22,9 +25,16 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -22,9 +25,16 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
/** /**
* @Auther: xin.lu * @Auther: xin.lu
...@@ -46,15 +56,16 @@ public class SapPurchaseOrderController extends CommonController { ...@@ -46,15 +56,16 @@ public class SapPurchaseOrderController extends CommonController {
@SkipAuth @SkipAuth
@RequestMapping( value = "/getSapPurchaseOrder") @RequestMapping( value = "/getSapPurchaseOrder")
@ResponseBody @ResponseBody
public HashMap<String, Object> getSapPurchaseOrder(@RequestBody SapPurchaseOrderVo sapPurchaseOrderVo){ public HashMap<String, Object> getSapPurchaseOrder(@RequestBody SapPurchaseOrderDto sapPurchaseOrderDto){
this.sapPurchaseOrderApplication.saveSapPurchaseOrderDto(sapPurchaseOrderDto);
this.sapPurchaseOrderApplication.saveSapPurchaseOrderVo(sapPurchaseOrderVo);
HashMap<String, Object> messageMap = new HashMap<>(); HashMap<String, Object> messageMap = new HashMap<>();
messageMap.put("Message_Status","S"); messageMap.put("Message_Status","S");
messageMap.put("Message_Text","成功"); messageMap.put("Message_Text","成功");
return messageMap; return messageMap;
} }
public String forwardSapPurchaseOrderList(){ public String forwardSapPurchaseOrderList(){
return forward("sapPurchaseOrderList"); return forward("sapPurchaseOrderList");
} }
......
package com.huigou.topsun.sap.purchaseOrder.domain.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class SapPurchaseOrderDto {
@JsonProperty("LS_HEADER")
private SapPurchaseOrderVo lsHeader;
@JsonProperty("LT_ITEMS")
private List<SapPurchaseOrderItemVo> ltItems;
}
package com.huigou.topsun.sap.purchaseOrder.domain.vo; package com.huigou.topsun.sap.purchaseOrder.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data; import lombok.Data;
import javax.persistence.Column;
import java.math.BigDecimal;
import java.util.Date;
/** /**
* *
...@@ -13,142 +11,82 @@ import java.util.Date; ...@@ -13,142 +11,82 @@ import java.util.Date;
*/ */
@Data @Data
public class SapPurchaseOrderItemVo { public class SapPurchaseOrderItemVo {
@JsonProperty("EBELP")
/**
* 项目编号
*/
private String ebelp; private String ebelp;
/** @JsonProperty("PSTYP")
* 项目类别
*/
private String pstyp; private String pstyp;
/** @JsonProperty("PTEXT")
* 项目类别描述
*/
private String ptext; private String ptext;
/** @JsonProperty("KNTTP")
* 科目分配类别
*/
private String knttp; private String knttp;
/** @JsonProperty("KNTTX")
* 科目分配类别描述
*/
private String knttx; private String knttx;
/** @JsonProperty("MATNR")
* 物料号
*/
private String matnr; private String matnr;
/** @JsonProperty("TXZ01")
* 物料描述
*/
private String txz01; private String txz01;
/** @JsonProperty("MATKL")
* 物料组
*/
private String matkl; private String matkl;
/** @JsonProperty("WGBEZ")
* 物料组描述
*/
private String wgbez; private String wgbez;
/** @JsonProperty("MENGE")
* 采购订单数量 private double menge;
*/
private String menge;
/** @JsonProperty("MEINS")
* 采购订单计量单位
*/
private String meins; private String meins;
/** @JsonProperty("MSEHL")
* 单位描述
*/
private String msehl; private String msehl;
/** @JsonProperty("EINDT")
* 要求交货日期
*/
private String eindt; private String eindt;
/** @JsonProperty("WERKS")
* 工厂
*/
private String werks; private String werks;
/** @JsonProperty("NAME1")
* 名称
*/
private String name1; private String name1;
/** @JsonProperty("LGORT")
* 库存地点
*/
private String lgort; private String lgort;
/** @JsonProperty("LGOBE")
* 库存地点的描述
*/
private String lgobe; private String lgobe;
@JsonProperty("NETPR")
private double netpr;
@JsonProperty("PEINH")
private int peinh;
@JsonProperty("MWSKZ")
/**
* 价格
*/
private BigDecimal netpr;
/**
* 价格单位
*/
private Integer peinh;
/**
* 税码
*/
private String mwskz; private String mwskz;
@JsonProperty("NETWR")
private double netwr;
@JsonProperty("RETPO")
/**
* 总价
*/
private BigDecimal netwr;
/**
* 退货项目
*/
private String retpo; private String retpo;
/** @JsonProperty("SAKTO")
* 总账科目
*/
private String sakto; private String sakto;
/** @JsonProperty("KOSTL")
* 成本中心
*/
private String kostl; private String kostl;
/** @JsonProperty("ANLN1")
* 主资产号
*/
private String anln1; private String anln1;
/** @JsonProperty("ANLN2")
* 资产次级编号
*/
private String anln2; private String anln2;
} }
\ No newline at end of file
package com.huigou.topsun.sap.purchaseOrder.domain.vo; package com.huigou.topsun.sap.purchaseOrder.domain.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data; import lombok.Data;
import javax.persistence.Column; import javax.persistence.Column;
...@@ -15,38 +16,31 @@ import java.util.List; ...@@ -15,38 +16,31 @@ import java.util.List;
*/ */
@Data @Data
public class SapPurchaseOrderVo implements Serializable { public class SapPurchaseOrderVo implements Serializable {
/** @JsonProperty("AEDAT")
* 采购订单号码 private String aedat;
*/
@JsonProperty("ERNAM")
private String ernam;
@JsonProperty("NAME_TEXT")
private String nameText;
@JsonProperty("EBELN")
private String ebeln; private String ebeln;
/** @JsonProperty("BSART")
* 采购订单类型
*/
private String bsart; private String bsart;
/** @JsonProperty("BATXT")
* 采购订单类型描述
*/
private String batxt; private String batxt;
private String ernam; @JsonProperty("EKGRP")
private String nameText;
private String ekgrp; private String ekgrp;
/**
* 币种
*/
private String waers;
/**
* 采购组描述
*/
private String eknam;
/** @JsonProperty("WAERS")
* 创建日期 private String waers;
*/
private String aedat;
@JsonProperty("EKNAM")
private String eknam;
private SapPurchaseOrderItemVo item;
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment