Commit 4134647e authored by 1650842865's avatar 1650842865

供应商、物料、采购信息记录、固定资产导入模板

parent b1245ca9
......@@ -743,7 +743,9 @@ function loadGrid(obj) {
})
}
//当选择了报关合同号时,所有的含税/不含税金额默认=运保费+运杂费,所有的税额默认=0
if (item.column.name == "zcustom"){
if (item.column.name == "zcustom"
|| item.column.name == "zexpense1"
|| item.column.name == "zexpense2"){
var zexpense1 = item.record.zexpense1;
var zexpense2 = item.record.zexpense2;
var zexpense = MathUtil.add(zexpense1,zexpense2);
......
......@@ -20,6 +20,7 @@ function loadCostCenterListGrid() {
// updateHandler();
// },
// deleteHandler: deleteHandler,
impExcelDataHandler:{id:'impExcelData',img:'fa-table',text:'导入数据',click:impExcelDataHandler},
});
gridManager = UICtrl.grid("#sapFixedAssetsListGrid", {
columns: [
......@@ -128,3 +129,10 @@ function bindEvent(){
});
}
//从EXCEL导入数据
function impExcelDataHandler(){
ExcelImpManager.showImpDialog('导入', 'sapFixedAssetsData', Public.getUUID(),function (){
reloadGrid();
});
}
......@@ -9,7 +9,8 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<x:base include="layout,dialog,grid,tree,combox,commonTree" />
<x:base include="layout,dialog,grid,tree,combox,commonTree,date,attachment"/>
<x:script src="/system/excelimport/AssignCodeImp.js"/>
<x:script src='/biz/topsun/sap/fixedAssets/sapFixedAssetsList.js'/>
</head>
<body>
......
......@@ -256,9 +256,6 @@ function initMRP(mtart){
}else if (mtart == "ZSHB"){
$("#dispo").val("107");//MRP控制者
$("#dispo_text").val("107-自制设备");//MRP控制者
}else {
$("#dispo").val("");//MRP控制者
$("#dispo_text").val("");//MRP控制者
}
}
......
......@@ -52,6 +52,7 @@ function initPurchaseListGrid() {
cancelHandlerInfoRecord();
}
},
impExcelDataHandler:{id:'impExcelData',img:'fa-table',text:'导入数据',click:impExcelDataHandler},
exportExcelHandler:exportExcelHandler,
});
purchaseInfoRecordGridManager = UICtrl.grid('#purchaseInfoRecordGrid', {
......@@ -297,3 +298,7 @@ function exportExcelHandler() {
UICtrl.gridExport(purchaseInfoRecordGridManager,{fileName:"采购信息记录"+date});
}
function impExcelDataHandler(){
ExcelImpManager.showImpDialog('导入', 'sapPurchaseInfoRecord', Public.getUUID());
}
......@@ -7,6 +7,7 @@
<script src='<c:url value="/lib/jquery/jquery.comboDialog.js"/>' type="text/javascript"></script>
<script src='<c:url value="/lib/jquery/jquery.commonTree.js"/>' type="text/javascript"></script>
<script src='<c:url value="/lib/jquery/jquery.flexField.js"/>' type="text/javascript"></script>
<script src='<c:url value="/system/excelimport/AssignCodeImp.js"/>' type="text/javascript"></script>
<script src='<c:url value="/biz/topsun/sap/purchaseInfoRecord/purchaseInfoRecordList.js"/>' type="text/javascript"></script>
</head>
<body>
......
package com.huigou.topsun.sap.fixedAssets.application.impl;
import com.huigou.topsun.sap.fixedAssets.domain.SapFixedAssets;
import com.huigou.topsun.sap.fixedAssets.domain.TmpFixedAssetsData;
import com.huigou.topsun.sap.fixedAssets.repository.SapFixedAssetsRepository;
import com.huigou.topsun.sap.fixedAssets.repository.TmpFixedAssetsDataRepository;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.tool.dataimport.application.ExcelImportInterface;
import com.huigou.util.ClassHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
@Service("sapFixedAssetsExcelImport")
public class SapFixedAssetsExcelImport implements ExcelImportInterface {
@Autowired
private TmpFixedAssetsDataRepository tmpFixedAssetsDataRepository;
@Autowired
private SapFixedAssetsRepository sapFixedAssetsRepository;
@Override
public void executeImport(String batchNumer) {
List<TmpFixedAssetsData> tmpFixedAssetsData = tmpFixedAssetsDataRepository.findByBatchNumber(batchNumer);
if (!CollectionUtils.isEmpty(tmpFixedAssetsData)){
List<SapFixedAssets> sapFixedAssetsList = new ArrayList<>();
for (TmpFixedAssetsData tmpFixedAssetsDatum : tmpFixedAssetsData) {
SapFixedAssets sapFixedAssets = new SapFixedAssets();
ClassHelper.copyProperties(tmpFixedAssetsDatum,sapFixedAssets);
sapFixedAssets.setDefaultValues();
sapFixedAssets.setZfiflg(1);
sapFixedAssets.setType("S");
sapFixedAssets.setMessage("创建成功");
sapFixedAssets.setZfibpmnr(sapFixedAssets.getBillCode());
sapFixedAssets.setStatusId(BizBillStatus.COMPLETED.getId());
sapFixedAssetsList.add(sapFixedAssets);
}
sapFixedAssetsRepository.save(sapFixedAssetsList);
}
System.out.println("=========================");
}
}
package com.huigou.topsun.sap.fixedAssets.domain;
import com.huigou.topsun.common.AbstractPortalOrg;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.math.BigDecimal;
/**
* @author xin.lu
* @Description: 固定资产导入临时表。
* @date 2025/8/514:08
*/
@Table(name = "tmp_fixed_assets_data")
@Entity
@Getter
@Setter
public class TmpFixedAssetsData extends AbstractPortalOrg {
/**
* 主资产号
* ;资产编号内部生成,当创建标识为2,即修改时,主资产号为必输。
*/
@Column(name = "anln1")
private String anln1;
/**
* 资产分类
* 当创建标识为1,即创建时,资产分类必输。
*/
@Column(name = "anlkl")
private String anlkl;
@Column(name = "anlkl_name")
private String anlklName;
/**
* 公司代码(必填)
*/
@Column(name = "bukrs")
private String bukrs;
@Column(name = "bukrs_name")
private String bukrsName;
/**
* 文本(必填)
*/
@Column(name = "txt50")
private String txt50;
/**
* 规格型号
*/
@Column(name = "txa50")
private String txa50;
/**
* 存货号;存放地点
*/
@Column(name = "invnr")
private String invnr;
/**
* 数量
*/
@Column(name = "menge")
private BigDecimal menge;
/**
* 基本计量单位
*/
@Column(name = "meins")
private String meins;
@Column(name = "meins_name")
private String meinsName;
/**
* 成本中心(必填)
*/
@Column(name = "kostl")
private String kostl;
/**
* 成本中心(必填)
*/
@Column(name = "kostl_name")
private String kostlName;
/**
* 责任成本中心
*/
@Column(name = "kostlv")
private String kostlv;
/**
* 责任成本中心
*/
@Column(name = "kostlv_name")
private String kostlvName;
/**
* 使用情况
* 1-外购、2-自制、3-合并新增
*/
@Column(name = "ORD41")
private String ord41;
/**
* 取得方式
* 1-在用、2-闲置、3-在建 、4-停建
*/
@Column(name = "ORD42")
private String ord42;
}
package com.huigou.topsun.sap.fixedAssets.repository;
import com.huigou.topsun.sap.fixedAssets.domain.TmpFixedAssetsData;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
/**
* @author xin.lu
* @Description: TODO
* @date 2025/8/514:33
*/
public interface TmpFixedAssetsDataRepository extends JpaRepository<TmpFixedAssetsData,String> {
List<TmpFixedAssetsData> findByBatchNumber(String batchNumber);
}
......@@ -12,6 +12,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
@Service("nonProdMaterialDataExcelImport")
......@@ -40,11 +41,30 @@ public class NonProdMaterialDataExcelImport implements ExcelImportInterface {
nonProdApplyBaseInfo.setItemAttributes(tmpNonProdMaterialDataImport.getMtart());
//文本说明
nonProdApplyBaseInfo.setTextDescription(tmpNonProdMaterialDataImport.getMaktxDescCn());
//处理状态: 0 待分发 1 基本信息填写 2 已分发 3 已办结
nonProdApplyBaseInfo.setDistribute(3);
//处理状态: 0 待提交 2 已办结
nonProdApplyBaseInfo.setDistribute(2);
nonProdApplyBaseInfo.setDefaultValues();
//审批状态已完成
nonProdApplyBaseInfo.setStatusId(BizBillStatus.COMPLETED.getId());
//设置类型
if ("ZZCP".equals(tmpNonProdMaterialDataImport.getMtart())
||"ZBCP".equals(tmpNonProdMaterialDataImport.getMtart())
|| "ZSHB".equals(tmpNonProdMaterialDataImport.getMtart())){
nonProdApplyBaseInfo.setKind("product");
}else {
nonProdApplyBaseInfo.setKind("material");
}
nonProdApplyBaseInfo.setMaktxRemZh(tmpNonProdMaterialDataImport.getMaktxDescCn());
nonProdApplyBaseInfo.setMaktxRemEn(tmpNonProdMaterialDataImport.getMaktxDescEn());
nonProdApplyBaseInfo.setCreatedDate(new Date());
nonProdApplyBaseInfo.setApprover(nonProdApplyBaseInfo.getPersonMemberName());
nonProdApplyBaseInfo.setApprovalDate(new Date());
nonProdApplyBaseInfo.setGenericName(tmpNonProdMaterialDataImport.getMaktx());
//用途
nonProdApplyBaseInfo.setBusinessUsage("V,E,D,A,L,S,B");
nonProdApplyBaseInfo = nonProdApplyBaseInfoRepository.save(nonProdApplyBaseInfo);
//赋值基本信息维护
......
......@@ -145,7 +145,7 @@ public class NonProdApplyBaseInfo extends FlowBillAbstractEntity {
@Column(name = "kind")
private String kind;
//处理状态: 0 待提交 1 待领导确认 2 已办结
//处理状态: 0 待提交 2 已办结
@Column(name = "distribute")
private Integer distribute;
......
......@@ -2,14 +2,14 @@ package com.huigou.topsun.sap.nonProdApply.domain;
import com.huigou.topsun.common.AbstractPortalOrg;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.math.BigDecimal;
/**
*
*
* @TableName tmp_non_prod_material_data
* 物料导入模板临时数据表
*/
......@@ -17,933 +17,432 @@ import java.util.Date;
@Data
@Entity
public class TmpNonProdMaterialDataImport extends AbstractPortalOrg {
/**
* 物料编码
*/
@Column(name = "MATNR")
private String matnr;
/**
* 行业
*/
@Column(name = "MBRSH")
private String mbrsh;
/**
* 物料类型
*/
@Column(name = "MATNR")
private String matnr; // 物料编码
@Column(name = "MTART")
private String mtart;
/**
* 工厂
*/
@Column(name = "WERKS")
private String werks;
@Column(name = "WERKS_NAME")
private String werksName;
/**
* 库存地点
*/
@Column(name = "LGORT")
private String lgort;
@Column(name = "LGORT_NAME")
private String lgortName;
/**
* 库存地点(存储)
*/
@Column(name = "LGORT_QM")
private String lgortQm;
@Column(name = "LGORT_QM_NAME")
private String lgortQmName;
/**
* 销售组织
*/
@Column(name = "VKORG")
private String vkorg;
@Column(name = "VKORG_NAME")
private String vkorgName;
/**
* 分销渠道
*/
@Column(name = "VTWEG")
private String vtweg;
@Column(name = "VTWEG_NAME")
private String vtwegName;
/**
* 仓库号
*/
@Column(name = "LGNUM")
private String lgnum;
@Column(name = "LGNUM_NAME")
private String lgnumName;
/**
* 存储类型
*/
@Column(name = "LGTYP")
private String lgtyp;
@Column(name = "LGTYP_NAME")
private String lgtypName;
/**
* 汉语品名
*/
private String mtart; // 物料类型编码
@Column(name = "MATKL_TYPE")
private String matklType; // 物料组大类编码
@Column(name = "MATKL_TYPE_NAME")
private String matklTypeName; // 物料组大类名称
@Column(name = "MATKL")
private String matkl; // 物料组
@Column(name = "MATKL_NAME")
private String matklName; // 物料组名称
@Column(name = "GROES")
private String groes; // 规格
@Column(name = "SPART")
private String spart; // 产品组
@Column(name = "SPART_NAME")
private String spartName; // 产品组名称
@Column(name = "MTPOS_MARA")
private String mtposMara; // 销售项目类别组
@Column(name = "XCHPF")
private String xchpf; // 批次管理
@Column(name = "MAKTX")
private String maktx;
/**
* 汉语语言
*/
private String maktx; // 物料描述(汉)
@Column(name = "SPARS")
private String spars;
/**
* 英语品名
*/
private String spars; // 汉语语言码
@Column(name = "MAKTX_EN")
private String maktxEn;
/**
* 英语语言码
*/
private String maktxEn; // 物料描述(英)
@Column(name = "SPARS_EN")
private String sparsEn;
/**
* 基本计量单位
*/
private String sparsEn; // 英语语言码
@Column(name = "MEINS")
private String meins;
private String meins; // 基本计量单位
@Column(name = "MEINS_NAME")
private String meinsName;
/**
* 物料组
*/
@Column(name = "MATKL")
private String matkl;
@Column(name = "MATKL_NAME")
private String matklName;
/**
* 毛重
*/
private String meinsName; // 基本计量单位名称
@Column(name = "RAUBE")
private String raube; // 存储条件
@Column(name = "BRGEW")
private String brgew;
/**
* 净重
*/
@Column(name = "NTGEW")
private String ntgew;
/**
* 重量单位
*/
private String brgew; // 毛重
@Column(name = "GEWEI")
private String gewei;
/**
* 产品组
*/
@Column(name = "SPART")
private String spart;
@Column(name = "SPART_NAME")
private String spartName;
/**
* 基本数据文本语言
*/
@Column(name = "SPTXT")
private String sptxt;
/**
* 文本说明中文
*/
private String gewei; // 重量单位编码
@Column(name = "VOLUM")
private String volum; // 体积
@Column(name = "VOLEH")
private String voleh; // 体积单位编码
@Column(name = "IPRKZ")
private String iprkz; // 有效期标识编码
@Column(name = "MHDHB")
private String mhdhb; // 总有效期
@Column(name = "MHDRZ")
private String mhdrz; // 最小货架寿命
@Column(name = "NORMT")
private String normt; // 适用行业标准编码
@Column(name = "LENGTH")
private BigDecimal length; // 长度cm
@Column(name = "WIDTH_CM")
private BigDecimal widthCm; // 宽度cm
@Column(name = "THICKNESS")
private BigDecimal thickness; // 高度cm
@Column(name = "WEIGHT")
private BigDecimal weight; // 克重g
@Column(name = "SINGLE_THICKNESS")
private BigDecimal singleThickness; // 单层丝厚
@Column(name = "KUNNR")
private String kunnr; // 客户编码
@Column(name = "KUNNR_NAME")
private String kunnrName; // 客户名称
@Column(name = "KLART")
private String klart; // 类型
@Column(name = "CLASSIFY")
private String classify; // 分类
@Column(name = "MAKTX_DESC_CN")
private String maktxDescCn;
/**
* 文本说明英文
*/
private String maktxDescCn; // 文本说明中文
@Column(name = "MAKTX_DESC_EN")
private String maktxDescEn;
/**
* 销售计量单位
*/
private String maktxDescEn; // 文本说明英文
@Column(name = "WERKS")
private String werks; // 工厂编码
@Column(name = "WERKS_NAME")
private String werksName; // 工厂名称
@Column(name = "LGORT")
private String lgort; // 库存地点
@Column(name = "LGORT_NAME")
private String lgortName; // 库存地点名称
@Column(name = "LGTYP")
private String lgtyp; // 存储类型
@Column(name = "LGTYP_NAME")
private String lgtypName; // 存储类型名称
@Column(name = "MTVFP")
private String mtvfp; // 可用性检查组
@Column(name = "VKORG")
private String vkorg; // 销售组织
@Column(name = "VKORG_NAME")
private String vkorgName; // 销售组织名称
@Column(name = "VTWEG")
private String vtweg; // 分销渠道
@Column(name = "VTWEG_NAME")
private String vtwegName; // 分销渠道名称
@Column(name = "VRKME")
private String vrkme;
@Column(name = "vrkme_name")
private String vrkmeName;
/**
* 销售计量单位转换分母
*/
private String vrkme; // 销售计量单位
@Column(name = "VRKME_NAME")
private String vrkmeName; // 销售计量单位描述
@Column(name = "UMREN_SALE")
private String umrenSale;
/**
* 销售计量单位转换分子
*/
private String umrenSale; // 转换分母(销售)
@Column(name = "UMREZ_SALE")
private String umrezSale;
/**
* 采购计量单位
*/
@Column(name = "BSTME")
private String bstme;
@Column(name = "BSTME_NAME")
private String bstmeName;
/**
* 转换分母(采购)
*/
@Column(name = "UMREN_PURCH")
private String umrenPurch;
/**
* 转换分子(采购)
*/
@Column(name = "UMREZ_PURCH")
private String umrezPurch;
/**
* 转换分母
*/
@Column(name = "UMREN")
private String umren;
/**
* 转换分子
*/
@Column(name = "UMREZ")
private String umrez;
/**
* 类型
*/
@Column(name = "KLART")
private String klart;
/**
* 类类型
*/
@Column(name = "CLASS")
private String classify;
/**
* 税分类
*/
private String umrezSale; // 转换分子(销售)
@Column(name = "DWERK")
private String dwerk; // 交货工厂
@Column(name = "DWERK_NAME")
private String dwerkName; // 交货工厂名称
@Column(name = "ALAND")
private String aland; // 税收发运国
@Column(name = "ALAND_NAME")
private String alandName; // 税收发运国名称
@Column(name = "TAXKM")
private String taxkm;
/**
* 批次管理
*/
@Column(name = "XCHPF")
private String xchpf;
/**
* 统计组
*/
private String taxkm; // 税分类编码
@Column(name = "VERSG")
private String versg;
/**
* 产品层级
*/
@Column(name = "PRODH")
private String prodh;
/**
* 会计科目组
*/
private String versg; // 统计组
@Column(name = "KONDM")
private String kondm; // 物料定价组
@Column(name = "KTGRM")
private String ktgrm;
/**
* 品牌
*/
private String ktgrm; // 会计科目组
@Column(name = "PRODH")
private String prodh; // 产品层级
@Column(name = "MVGR1")
private String mvgr1;
/**
* 经营类型
*/
private String mvgr1; // 品牌
@Column(name = "MVGR2")
private String mvgr2;
/**
* 可用性检查组
*/
@Column(name = "MTVFP")
private String mtvfp;
/**
* 运输组
*/
private String mvgr2; // 产品经营类型
@Column(name = "MTPOS")
private String mtpos; // 销售项次组
@Column(name = "TRAGR")
private String tragr;
/**
* 装载组
*/
private String tragr; // 运输组
@Column(name = "LADGR")
private String ladgr;
private String ladgr; // 装载组
@Column(name = "LADGR_NAME")
private String ladgrName;
/**
* 利润中心
*/
@Column(name = "PRCTR")
private String prctr;
/**
* 默认采购组
*/
private String ladgrName; // 装载组名称
@Column(name = "BSTME")
private String bstme; // 采购单位
@Column(name = "BSTME_NAME")
private String bstmeName; // 采购单位名称
@Column(name = "UMREN_PURCH")
private String umrenPurch; // 转换分母(采购)
@Column(name = "UMREZ_PURCH")
private String umrezPurch; // 转换分子(采购)
@Column(name = "EKGRP")
private String ekgrp;
private String ekgrp; // 默认采购组
@Column(name = "EKGRP_NAME")
private String ekgrpName;
/**
* 过账到质检
*/
@Column(name = "INSMK")
private String insmk;
/**
* 收货处理天数
*/
@Column(name = "WEBAZ")
private String webaz;
/**
* MRP类型
*/
@Column(name = "DISMM")
private String dismm;
/**
* 重订货点
*/
private String ekgrpName; // 默认采购组名称
@Column(name = "MMSTA")
private String mmsta; // 工厂特定的物料状态
@Column(name = "MINBE")
private String minbe;
/**
* MRP控制者
*/
private String minbe; // 重订货点
@Column(name = "DISMM")
private String dismm; // MRP类型
@Column(name = "DISPO")
private String dispo;
/**
* 最大批量
*/
private String dispo; // MRP控制者
@Column(name = "DISLS")
private String disls; // 批量规模
@Column(name = "BSTFE")
private String bstfe; // 固定批量
@Column(name = "BSTMA")
private String bstma;
/**
* 最小批量
*/
private String bstma; // 最大批量
@Column(name = "BSTMI")
private String bstmi;
/**
* 固定批量
*/
@Column(name = "BSTFE")
private String bstfe;
/**
* 舍入值
*/
@Column(name = "BSTRF")
private String bstrf;
/**
* 最大存货水平
*/
private String bstmi; // 最小批量
@Column(name = "MABST")
private String mabst;
/**
* 倒冲标志
*/
private String mabst; // 最大存货水平
@Column(name = "BSTRF")
private String bstrf; // 舍入值
@Column(name = "BESKZ")
private String beskz; // 获取类型
@Column(name = "SOBSL")
private String sobsl; // 特殊获取方式
@Column(name = "RGEKZ")
private String rgekz;
/**
* 生产发料默认存储地
*/
@Column(name = "LGPRO")
private String lgpro;
@Column(name = "LGPRO_NAME")
private String lgproName;
/**
* 采购收货默认存储地
*/
@Column(name = "LGFSB")
private String lgfsb;
@Column(name = "LGFSB_NAME")
private String lgfsbName;
/**
* 自制天数
*/
private String rgekz; // 倒冲标志
@Column(name = "WEBAZ")
private String webaz; // 收货处理天数
@Column(name = "RAUBE_NAME")
private String raubeName; // 存储条件名称
@Column(name = "DZEIT")
private String dzeit;
/**
* 计划交货天数
*/
@Column(name = "PLIFZ")
private String plifz;
/**
* 安全库存
*/
private String dzeit; // 自制时间
@Column(name = "FHORI")
private String fhori; // 排程边际码
@Column(name = "EISBE")
private String eisbe;
/**
*期间标识
*/
@Column(name = "PERKZ")
private String perkz;
/**
* 计划策略组
*/
private String eisbe; // 安全库存
@Column(name = "EISLO")
private String eislo; // 最小安全库存
@Column(name = "STRGR")
private String strgr;
/**
* 消耗模式
*/
private String strgr; // 计划策略组
@Column(name = "WZEIT")
private String wzeit; // 补货提前天数
@Column(name = "SBDKZ")
private String sbdkz; // 独立/集中
@Column(name = "VRMOD")
private String vrmod;
/**
* 逆推消耗期间
*/
private String vrmod; // 消耗模式
@Column(name = "VINT1")
private String vint1;
/**
* 顺推消耗期间
*/
private String vint1; // 逆推消耗期间
@Column(name = "LTKZE")
private String ltkze; // 存货上架存储类型
@Column(name = "VINT2")
private String vint2;
/**
* 独立/集中
*/
@Column(name = "SBDKZ")
private String sbdkz;
/**
* 投料计量单位
* 发货计量单位
*/
private String vint2; // 顺推消耗期间
@Column(name = "LTKZE_NAME")
private String ltkzeName; // 存货上架存储类型名称
@Column(name = "PERKZ")
private String perkz; // 期间标识
@Column(name = "LGBKZ")
private String lgbkz; // 存储分区标识
@Column(name = "PLIFZ")
private String plifz; // 外采交货时间
@Column(name = "LGBKZ_NAME")
private String lgbkzName; // 存储分区标识名称
@Column(name = "DISKZ")
private String diskz; // 库存地MRP标识
@Column(name = "LGPRO")
private String lgpro; // 默认生产存储地
@Column(name = "LGPRO_NAME")
private String lgproName; // 默认生产存储地名称
@Column(name = "LGFSB")
private String lgfsb; // 采购采购默认存储地
@Column(name = "LGFSB_NAME")
private String lgfsbName; // 采购采购默认存储地名称
@Column(name = "AUSME")
private String ausme;
private String ausme; // 投料计量单位
@Column(name = "AUSME_NAME")
private String ausmeName;
/**
* 转换分母(生产)
*/
private String ausmeName; // 投料计量单位名称
@Column(name = "UMREN_PROD")
private String umrenProd;
/**
* 转换分子(生产)
*/
private String umrenProd; // 转换分母(生产)
@Column(name = "UMREZ_PROD")
private String umrezProd;
/**
* 生产主管
*/
private String umrezProd; // 转换分子(生产)
@Column(name = "UEETK")
private String ueetk; // 允许未限制的过量交货
@Column(name = "FEVOR")
private String fevor;
/**
* 生产计划参数文件
*/
private String fevor; // 生产主管
@Column(name = "SFCPF")
private String sfcpf;
/**
* 存储条件
*/
@Column(name = "RAUBE")
private String raube;
@Column(name = "RAUBE_NAME")
private String raubeName;
/**
* 最小货架寿命
*/
@Column(name = "MHDRZ")
private String mhdrz;
/**
* 总有效期
*/
@Column(name = "MHDHB")
private String mhdhb;
/**
* 有效期标识
*/
@Column(name = "IPRKZ")
private String iprkz;
/**
* 过期日期
*/
@Column(name = "SLED_BBD")
private String sledBbd;
/**
* 序列号参数文件
*/
private String sfcpf; // 生产计划参数文件
@Column(name = "LGORT_QM")
private String lgortQm; // 库存地点(存储)
@Column(name = "LGORT_QM_NAME")
private String lgortQmName; // 库存地点名称(存储)
@Column(name = "SERNP")
private String sernp;
/**
* 序列号层次
*/
private String sernp; // 序列号参数
@Column(name = "SERLV")
private String serlv;
/**
* 存货下架存储类型
*/
@Column(name = "LTKZA")
private String ltkza;
@Column(name = "LTKZA_NAME")
private String ltkzaName;
/**
* 存货上架存储类型
*/
@Column(name = "LTKZE")
private String ltkze;
@Column(name = "LTKZE_NAME")
private String ltkzeName;
/**
* 存储分区标识
*/
@Column(name = "LGBKZ")
private String lgbkz;
@Column(name = "LGBKZ_NAME")
private String lgbkzName;
/**
* 仓库设施1存储数量
* 仓位最大承载
*/
private String serlv; // 序列号水平
@Column(name = "PRCTR")
private String prctr; // 利润中心
@Column(name = "INSMK")
private String insmk; // 检验过账
@Column(name = "SLED_BBD")
private String sledBbd; // 过期日期
@Column(name = "LGNUM")
private String lgnum; // 仓库号
@Column(name = "LGNUM_NAME")
private String lgnumName; // 仓库号名称
@Column(name = "LGORT_PROFIT_NAME")
private String lgortProfitName; // 库存地点(仓库)
@Column(name = "LGORT_PROFIT")
private String lgortProfit; // 库存地点名称(仓库)
@Column(name = "LETY1")
private String lety1; // 仓库设施1类型
@Column(name = "LHMG1")
private String lhmg1;
/**
* 仓库设施1存储单位
* 承载单位
*/
private String lhmg1; // 仓库设施1存储数量
@Column(name = "LHME1")
private String lhme1;
private String lhme1; // 仓库设施1存储单位
@Column(name = "LHME1_NAME")
private String lhme1Name;
/**
* 仓库设施1类型
* 仓储单位类型
*/
@Column(name = "LETY1")
private String lety1;
/**
* 评估分类
*/
private String lhme1Name; // 仓库设施1存储单位描述
@Column(name = "LTKZA")
private String ltkza; // 存货下架存储类型
@Column(name = "LTKZA_NAME")
private String ltkzaName; // 存货下架存储类型名称
@Column(name = "BKLAS")
private String bklas;
/**
* 销售评估类
*/
@Column(name = "EKLAS")
private String eklas;
/**
* 价格确定
*/
private String bklas; // 评估分类
@Column(name = "VPRSV")
private String vprsv; // 价格控制
@Column(name = "MLAST")
private String mlast;
/**
* 定价基数
*/
private String mlast; // 价格确定
@Column(name = "PEINH")
private String peinh;
/**
* 价格控制
*/
@Column(name = "VPRSV")
private String vprsv;
/**
* 数量结构
*/
@Column(name = "EKALR")
private String ekalr;
/**
* 物料来源
*/
private String peinh; // 定价基数
@Column(name = "NCOST")
private String ncost; // 不参与成本核算
@Column(name = "HKMAT")
private String hkmat;
/**
* 差异码
*/
private String hkmat; // 物料来源
@Column(name = "EKALR")
private String ekalr; // 根据数量结构进行成本核算
@Column(name = "AWSLS")
private String awsls;
/**
* 集团删除
*/
@Column(name = "LVORM")
private String lvorm;
/**
* 销售项目类别组
*/
@Column(name = "MTPOS_MARA")
private String mtposMara;
/**
* 适用标准
*/
@Column(name = "NORMT")
private String normt;
/**
* 包装物料组
*/
@Column(name = "MAGRV")
private String magrv;
/**
* 体积
*/
@Column(name = "VOLUM")
private String volum;
/**
* 体积单位
*/
@Column(name = "VOLEH")
private String voleh;
/**
* 交货工厂
*/
@Column(name = "DWERK")
private String dwerk;
@Column(name = "DWERK_NAME")
private String dwerkName;
/**
* 税收发运国
*/
@Column(name = "ALAND")
private String aland;
@Column(name = "ALAND_NAME")
private String alandName;
/**
* 物料定价组
*/
@Column(name = "KONDM")
private String kondm;
/**
* 用途
*/
@Column(name = "MVGR3")
private String mvgr3;
/**
* 备用
*/
@Column(name = "MVGR4")
private String mvgr4;
/**
* 备用
*/
@Column(name = "MVGR5")
private String mvgr5;
/**
* 销售项次组
*/
@Column(name = "MTPOS")
private String mtpos;
/**
* MPN参数
*/
@Column(name = "MPROF")
private String mprof;
/**
* 工厂(采购)
*/
@Column(name = "WERKS_PURCH")
private String werksPurch;
/**
* MRP组
*/
@Column(name = "DISGR")
private String disgr;
/**
* 批量规模
*/
@Column(name = "DISLS")
private String disls;
/**
* 采购类型
*/
@Column(name = "BESKZ")
private String beskz;
/**
* 特殊采购
*/
@Column(name = "SOBSL")
private String sobsl;
/**
* 排程边际码
*/
@Column(name = "FHORI")
private String fhori;
/**
* 最小安全库存
*/
@Column(name = "EISLO")
private String eislo;
/**
* 补货提前天数
*/
@Column(name = "WZEIT")
private String wzeit;
/**
* BOM选择方法
*/
@Column(name = "ALTSL")
private String altsl;
/**
* 库存地MRP标识
*/
@Column(name = "DISKZ")
private String diskz;
/**
* 工厂(质检)
*/
@Column(name = "WERKS_QM")
private String werksQm;
/**
* 工厂(利润中心)
*/
@Column(name = "WERKS_PROFIT")
private String werksProfit;
/**
* 库存地点(仓库)
*/
@Column(name = "LGORT_PROFIT")
private String lgortProfit;
@Column(name = "LGORT_PROFIT_NAME")
private String lgortProfitName;
/**
* 工厂(文档要求)
*/
@Column(name = "WERKS_DOC")
private String werksDoc;
/**
* 文档要求
*/
@Column(name = "KZDKZ")
private String kzdkz;
/**
* 检验类型
*/
@Column(name = "ART")
private String art;
/**
* 激活标识
*/
@Column(name = "AKTIV")
private String aktiv;
/**
* 过账到质检(质检)
*/
@Column(name = "INSMK_QM")
private String insmkQm;
/**
* 带任务清单检验
*/
@Column(name = "PPL")
private String ppl;
/**
* 自动分配
*/
@Column(name = "APP")
private String app;
/**
* 检查特性
*/
@Column(name = "MER")
private String mer;
/**
* 允许略过
*/
@Column(name = "DYN")
private String dyn;
/**
* 工厂(评估分类)
*/
@Column(name = "BWKEY")
private String bwkey;
/**
* 移动平均价
*/
@Column(name = "VERPR")
private String verpr;
/**
* 标准价
*/
@Column(name = "STPRS")
private String stprs;
/**
* 不参与成本核算
*/
@Column(name = "NCOST")
private String ncost;
/**
* 维护状态(0草稿;1保存;2分发)
*/
@Column(name = "STATUS")
private String status;
@Column(name = "dispo_name")
private String dispoName;
@Column(name = "minbe_name")
private String minbeName;
@Transient
private String billCode;
@Transient
private Integer statusId;
@Transient
private String personMemberName;
@Transient
private Date fillinDate;
@Transient
private String maintenanceType;
@Transient
private String businessUsage;
@Transient
private String businessCode;
private String awsls; // 差异码
@Column(name = "EKLAS")
private String eklas; // 销售评估类
//物品总属性
@Transient
private String genericName;
@Transient
private String applicableStandard;
@Transient
private String baseUnit;
@Transient
private String specifications;
@Transient
private String material;
@Transient
private String design;
@Transient
private String size;
@Transient
private String brand;
@Transient
private String brandName;
@Transient
private String materialUsage;
@Transient
private String itemAttributes;
@Transient
private Integer distribute;
@Transient
private String kind;
// 这里省略getter和setter方法
}
\ No newline at end of file
package com.huigou.topsun.sap.purchaseInfoRecord.application.impl;
import com.huigou.topsun.sap.purchaseInfoRecord.domain.SapPurchaseInfoRecord;
import com.huigou.topsun.sap.purchaseInfoRecord.domain.SapPurchaseInfoRecordItem;
import com.huigou.topsun.sap.purchaseInfoRecord.domain.TmpSapPurchaseInfoRecord;
import com.huigou.topsun.sap.purchaseInfoRecord.repository.SapPurchaseInfoRecordItemRepository;
import com.huigou.topsun.sap.purchaseInfoRecord.repository.SapPurchaseInfoRecordRepository;
import com.huigou.topsun.sap.purchaseInfoRecord.repository.TmpSapPurchaseInfoRecordRepository;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.tool.dataimport.application.ExcelImportInterface;
import com.huigou.util.ClassHelper;
import org.apache.cxf.common.util.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author xin.lu
* @Description: TODO
* @date 2025/8/516:50
*/
@Service("purchaseInfoRecordDataExcelImport")
public class PurchaseInfoRecordDataExcelImport implements ExcelImportInterface {
@Autowired
private TmpSapPurchaseInfoRecordRepository tmpSapPurchaseInfoRecordRepository;
@Autowired
private SapPurchaseInfoRecordRepository purchaseInfoRecordRepository;
@Autowired
private SapPurchaseInfoRecordItemRepository purchaseInfoRecordItemRepository;
@Override
public void executeImport(String s) {
List<TmpSapPurchaseInfoRecord> tmpSapPurchaseInfoRecordList = tmpSapPurchaseInfoRecordRepository.findByBatchNumber(s);
if (!CollectionUtils.isEmpty(tmpSapPurchaseInfoRecordList)){
for (TmpSapPurchaseInfoRecord tmpSapPurchaseInfoRecord : tmpSapPurchaseInfoRecordList) {
SapPurchaseInfoRecord purchaseInfoRecord = new SapPurchaseInfoRecord();
purchaseInfoRecord.setDefaultValues();
purchaseInfoRecord.setId(null);
purchaseInfoRecord.setStatusId(BizBillStatus.COMPLETED.getId());
purchaseInfoRecord.setFlag("new");
purchaseInfoRecordRepository.save(purchaseInfoRecord);
//采购信息记录明细
SapPurchaseInfoRecordItem purchaseInfoRecordItem = new SapPurchaseInfoRecordItem();
ClassHelper.copyProperties(tmpSapPurchaseInfoRecord,purchaseInfoRecordItem);
purchaseInfoRecordItem.setId(null);
purchaseInfoRecordItem.setSapPurchaseInfoRecordId(purchaseInfoRecord.getId());
purchaseInfoRecordItem.setEsokz("0");
purchaseInfoRecordItem.setTYPE("S");
purchaseInfoRecordItem.setMESSAGE("采购信息记录号:"+purchaseInfoRecordItem.getInfnr()+"创建成功");
purchaseInfoRecordItemRepository.save(purchaseInfoRecordItem);
}
}
}
}
package com.huigou.topsun.sap.purchaseInfoRecord.domain;
import com.huigou.topsun.common.AbstractPortalOrg;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;
/**
* @author xin.lu
* @Description: 采购信息记录导入
* @date 2025/8/516:39
*/
@Table(name="tmp_purchase_info_record")
@Entity
@Data
public class TmpSapPurchaseInfoRecord extends AbstractPortalOrg {
/**
* 采购信息记录号
*/
@Column(name = "INFNR")
private String infnr;
/**
* 采购组织
*/
@Column(name = "EKORG")
private String ekorg;
/**
* 采购组织
*/
@Column(name = "EKORG_NAME")
private String ekorgName;
/**
* 供应商
*/
@Column(name = "LIFNR")
private String lifnr;
/**
* 供应商物料编码
*/
@Column(name = "IDNLF")
private String idnlf;
/**
* 供应商名称
*/
@Column(name = "NAME1")
private String name1;
/**
* 物料编码
*/
@Column(name = "MATNR")
private String matnr;
/**
* 物料描述
*/
@Column(name = "MAKTX")
private String maktx;
/**
* 物料组
*/
@Column(name = "MATKL")
private String matkl;
/**
* 物料组名称
*/
@Column(name = "MATKL_NAME")
private String matklName;
/**
* 采购信息记录分类
*/
@Column(name = "ESOKZ")
private String esokz;
/**
* 采购组
*/
@Column(name = "EKGRP")
private String ekgrp;
/**
* 采购组名称
*/
@Column(name = "EKGRP_NAME")
private String ekgrpName;
/**
* 工厂
*/
@Column(name = "WERKS")
private String werks;
/**
* 工厂名称
*/
@Column(name = "WERKS_NAME")
private String werksName;
/**
* 生产版本
*/
@Column(name = "VERID")
private String verid;
/**
* 净价
*/
@Column(name = "NETPR")
private BigDecimal netpr;
/**
* 货币码
*/
@Column(name = "WAERS")
private String waers;
/**
* 货币码名称
*/
@Column(name = "WAERS_NAME")
private String waersName;
/**
* 价格单位
*/
@Column(name = "PEINH")
private String peinh;
/**
* 订单价格单位(采购)
*/
@Column(name = "BPRME")
private String bprme;
/**
* 订单价格单位(采购)
*/
@Column(name = "BPRME_NAME")
private String bprmeName;
/**
* 销售/购买税代码
*/
@Column(name = "MWSKZ")
private String mwskz;
/**
* 开始生效日期
*/
@Column(name = "DATAB")
private Date datab;
/**
* 有效期至日期
*/
@Column(name = "DATBI")
private Date datbi;
/**
* 销售员
*/
@Column(name = "VERKF")
private String verkf;
/**
* 电话
*/
@Column(name = "TELF1")
private String telf1;
/**
* 基本计量单位
*/
@Column(name = "MEINS")
private String meins;
/**
* 基本计量单位名称
*/
@Column(name = "MEINS_NAME")
private String meinsName;
/**
* 订单单位到基本单位转换的分母
*/
@Column(name = "UMREN")
private BigDecimal umren;
/**
* 基本计量单位转换分子
*/
@Column(name = "UMREZ")
private BigDecimal umrez;
/**
* 原产地国
*/
@Column(name = "URZLA")
private String urzla;
/**
* 原产地国名称
*/
@Column(name = "URZLA_NAME")
private String urzlaName;
/**
* 地区
*/
@Column(name = "REGIO")
private String regio;
/**
* 地区名称
*/
@Column(name = "REGIO_NAME")
private String regioName;
/**
* 删除标志
*/
@Column(name = "LOEKZ")
private String loekz;
/**
* 排序字段
*/
@Column(name = "SORTL")
private String sortl;
/**
* 标准采购订单数量
*/
@Column(name = "NORBM")
private BigDecimal norbm;
/**
* 最小采购订单数量
*/
@Column(name = "MINBM")
private BigDecimal minbm;
/**
* 等级类型
*/
@Column(name = "STFKZ")
private String stfkz;
/**
* 计划交货时间(天)
*/
@Column(name = "APLFZ")
private BigDecimal aplfz;
/**
* 基于收货的发票验证
*/
@Column(name = "WEBRE")
private String webre;
/**
* 条件类型
*/
@Column(name = "KSCHL")
private String kschl;
/**
* 价格有效至
*/
@Column(name = "PRDAT")
private Date prdat;
/**
* 订单价格单位转换为订单单位的分母
*/
@Column(name = "BPUMN")
private BigDecimal bpumn;
/**
* 订单价格单位转换为订单单位的分子
*/
@Column(name = "BPUMZ")
private BigDecimal bpumz;
/**
*条件等级计量单位
*/
@Column(name = "KONMS")
private String konms;
/**
* 等级数量1
*/
@Column(name = "KSTBM")
private BigDecimal kstbm;
/**
*等级金额1
* */
@Column(name = "KBETR")
private BigDecimal kbetr;
/**
* 等级数量2
*/
@Column(name = "KSTBM2")
private BigDecimal kstbm2;
/**
* 等级金额2
*/
@Column(name = "KBETR2")
private BigDecimal kbetr2;
/**
* 等级数量3
*/
@Column(name = "KSTBM3")
private BigDecimal kstbm3;
/**
* 等级金额3
*/
@Column(name = "KBETR3")
private BigDecimal kbetr3;
/**
* 等级数量4
*/
@Column(name = "KSTBM4")
private BigDecimal kstbm4;
/**
* 等级金额4
*/
@Column(name = "KBETR4")
private BigDecimal kbetr4;
/**
* 等级数量5
*/
@Column(name = "KSTBM5")
private BigDecimal kstbm5;
/**
* 等级金额5
*/
@Column(name = "KBETR5")
private BigDecimal kbetr5;
/**
* 运输费
*/
@Column(name = "FREIGHT")
private BigDecimal freight;
/**
* 包装费
*/
@Column(name = "KBETR6")
private BigDecimal kbetr6;
/**
* 备注
*/
@Column(name = "remark")
private String remark;
/**
* 定价条件号
*/
@Column(name = "KNUMH")
private String knumh;
}
package com.huigou.topsun.sap.purchaseInfoRecord.repository;
import com.huigou.topsun.sap.purchaseInfoRecord.domain.TmpSapPurchaseInfoRecord;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
/**
* @author xin.lu
* @Description: TODO
* @date 2025/8/516:48
*/
public interface TmpSapPurchaseInfoRecordRepository extends JpaRepository<TmpSapPurchaseInfoRecord,String> {
List<TmpSapPurchaseInfoRecord> findByBatchNumber(String batchNumber);
}
......@@ -302,6 +302,57 @@ public class TmpSuppliersData extends AbstractPortalOrg {
@Column(name = "bkref")
private String bkref;
/**
* 联系人信息
*/
@Column(name = "contact")
private String contact;
@Column(name = "contact1")
private String contact1;
@Column(name = "contact2")
private String contact2;
@Column(name = "contact3")
private String contact3;
@Column(name = "tel_number1")
private String telNumber1;
@Column(name = "tel_number2")
private String telNumber2;
@Column(name = "tel_number3")
private String telNumber3;
@Column(name = "fax_number1")
private String faxNumber1;
@Column(name = "fax_number2")
private String faxNumber2;
@Column(name = "fax_number3")
private String faxNumber3;
/**
* 电子邮件地址
*/
@Column(name = "smtp_addr1")
private String smtpAddr1;
/**
* 电子邮件地址
*/
@Column(name = "smtp_addr2")
private String smtpAddr2;
/**
* 电子邮件地址
*/
@Column(name = "smtp_addr3")
private String smtpAddr3;
//供应商公司信息
/**
......
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