Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
O
OZT-Integration
Project
Project
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
Graph
比较
统计图
议题
0
议题
0
列表
看板
标记
Milestones
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
许俊
OZT-Integration
Commits
faee3c48
提交
faee3c48
authored
5月 07, 2022
作者:
inroi
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
微调
上级
39dfb21f
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
351 行增加
和
4 行删除
+351
-4
KingdeeLogUtil.java
.../java/org/jeecg/modules/iost/ims/Util/KingdeeLogUtil.java
+1
-2
ImsCommonSyn.java
.../java/org/jeecg/modules/iost/ims/entity/ImsCommonSyn.java
+85
-0
ImsCommonKingdeeApi.java
...eecg/modules/iost/ims/kingdeeapi/ImsCommonKingdeeApi.java
+87
-0
ImsConstants.java
...a/org/jeecg/modules/iost/ims/kingdeeapi/ImsConstants.java
+60
-0
PurchaseReturnKingdeeApi.java
...modules/iost/ims/kingdeeapi/PurchaseReturnKingdeeApi.java
+1
-1
ImsCommonSynMapper.java
...org/jeecg/modules/iost/ims/mapper/ImsCommonSynMapper.java
+12
-0
ImsCommonSyn.xml
...va/org/jeecg/modules/iost/ims/mapper/xml/ImsCommonSyn.xml
+5
-0
IImsCommonSynService.java
.../jeecg/modules/iost/ims/service/IImsCommonSynService.java
+21
-0
ISynServiceImpl.java
.../jeecg/modules/iost/ims/service/impl/ISynServiceImpl.java
+6
-1
ImsCommonSynServiceImpl.java
...odules/iost/ims/service/impl/ImsCommonSynServiceImpl.java
+73
-0
没有找到文件。
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/Util/KingdeeLogUtil.java
浏览文件 @
faee3c48
...
@@ -37,7 +37,6 @@ public class KingdeeLogUtil {
...
@@ -37,7 +37,6 @@ public class KingdeeLogUtil {
public
void
KingdeeLog
(
List
<
List
<
Object
>>
list
,
String
name
,
String
content
)
{
public
void
KingdeeLog
(
List
<
List
<
Object
>>
list
,
String
name
,
String
content
)
{
//获取该线程的存入的变量,在接口开头添加追加的参数
//获取该线程的存入的变量,在接口开头添加追加的参数
Map
map
=
ThreadLocalConfig
.
get
();
Map
map
=
ThreadLocalConfig
.
get
();
String
kingdeeLogOZTName
=
map
.
get
(
"KingdeeLogOZTName"
).
toString
();
Kingdeelog
kingdeelog
=
new
Kingdeelog
();
Kingdeelog
kingdeelog
=
new
Kingdeelog
();
if
(!
ObjectUtils
.
isEmpty
(
map
))
{
if
(!
ObjectUtils
.
isEmpty
(
map
))
{
long
costime
=
Long
.
valueOf
(
map
.
get
(
"Costime"
).
toString
());
long
costime
=
Long
.
valueOf
(
map
.
get
(
"Costime"
).
toString
());
...
@@ -52,7 +51,7 @@ public class KingdeeLogUtil {
...
@@ -52,7 +51,7 @@ public class KingdeeLogUtil {
kingdeelog
.
setFailReason
(
"此单据不存在"
);
kingdeelog
.
setFailReason
(
"此单据不存在"
);
}
}
kingdeelog
.
setName
(
name
);
kingdeelog
.
setName
(
name
);
kingdeelog
.
setOztName
(
kingdeeLogOZTName
);
kingdeelog
.
setOztName
(
map
.
get
(
"KingdeeLogOZTName"
)
!=
null
?
map
.
get
(
"KingdeeLogOZTName"
).
toString
()
:
""
);
kingdeelog
.
setCreatetime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
format
(
new
Date
()));
kingdeelog
.
setCreatetime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
format
(
new
Date
()));
//获取result的返回信息的成功状态
//获取result的返回信息的成功状态
//查询失败则会有报错
//查询失败则会有报错
...
...
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/entity/ImsCommonSyn.java
0 → 100644
浏览文件 @
faee3c48
package
org
.
jeecg
.
modules
.
iost
.
ims
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
org.jeecgframework.poi.excel.annotation.Excel
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.util.Date
;
/**
* @author Inori
*/
@Data
@TableName
(
"ims_common_syn"
)
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
false
)
@ApiModel
(
value
=
"ims_common_syn对象"
,
description
=
"通用同步类"
)
public
class
ImsCommonSyn
{
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@ApiModelProperty
(
value
=
"主键"
)
private
String
id
;
/**
* 金蝶标识
*/
@Excel
(
name
=
"主键ID"
,
width
=
15
)
@ApiModelProperty
(
value
=
"金蝶标识"
)
private
String
formId
;
/**
* ims标识
*/
@Excel
(
name
=
"ims标识"
,
width
=
15
)
@ApiModelProperty
(
value
=
"ims标识"
)
private
String
docType
;
/**
* 日志名称
*/
@Excel
(
name
=
"日志名称"
,
width
=
15
)
@ApiModelProperty
(
value
=
"日志名称"
)
private
String
name
;
/**
* 明细内容
*/
@Excel
(
name
=
"明细内容"
,
width
=
15
)
@ApiModelProperty
(
value
=
"明细内容"
)
private
String
detail
;
/**
* 创建日期
*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建日期"
)
private
Date
createTime
;
/**
* 更新日期
*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新日期"
)
private
Date
updateTime
;
}
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/kingdeeapi/ImsCommonKingdeeApi.java
0 → 100644
浏览文件 @
faee3c48
package
org
.
jeecg
.
modules
.
iost
.
ims
.
kingdeeapi
;
import
org.jeecg.modules.iost.ims.Dao.CategoryDao
;
import
org.jeecg.modules.iost.ims.Util.ImsUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.CollectionUtils
;
import
java.util.*
;
/**
* @author Inori
*/
@Component
public
class
ImsCommonKingdeeApi
{
@Autowired
private
CategoryDao
categoryDao
;
/**
* 封装金蝶字段
*/
private
Map
<
String
,
String
>
purchaseKingDee
(
List
<
Map
<
String
,
String
>>
fieldList
)
{
Map
<
String
,
String
>
key
=
new
LinkedHashMap
<>();
for
(
Map
<
String
,
String
>
map
:
fieldList
)
{
String
kingDee
=
map
.
get
(
"kingdee"
);
if
(
"true"
.
equals
(
map
.
get
(
"isNumber"
)))
{
kingDee
=
kingDee
+
".Fnumber"
;
}
else
if
(
"true"
.
equals
(
map
.
get
(
"isName"
)))
{
kingDee
=
kingDee
+
".Fname"
;
}
key
.
put
(
kingDee
,
kingDee
);
}
return
key
;
}
/**
* 获取金蝶云数据
*/
public
List
<
Map
<
String
,
Object
>>
selectAndLog
(
String
sFormId
,
List
<
Map
<
String
,
String
>>
fieldList
,
Map
<
String
,
String
>
where
,
String
name
)
{
Map
<
String
,
String
>
key
=
purchaseKingDee
(
fieldList
);
List
<
List
<
Object
>>
result
=
categoryDao
.
selectAndLog
(
sFormId
,
key
,
where
,
name
);
return
purchaseIms
(
result
,
fieldList
);
}
/**
* 封装第三方字段
*/
private
List
<
Map
<
String
,
Object
>>
purchaseIms
(
List
<
List
<
Object
>>
list
,
List
<
Map
<
String
,
String
>>
fieldList
)
{
List
<
Map
<
String
,
Object
>>
result
=
new
ArrayList
<>();
if
(!
CollectionUtils
.
isEmpty
(
list
))
{
if
(!
list
.
get
(
0
).
get
(
0
).
toString
().
contains
(
"Errors"
))
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>(
fieldList
.
size
());
List
<
Map
<
String
,
Object
>>
imsList
=
new
ArrayList
<>();
for
(
List
<
Object
>
objectList
:
list
)
{
Map
<
String
,
Object
>
tempMap
=
new
HashMap
<>(
fieldList
.
size
());
for
(
int
i
=
0
;
i
<
fieldList
.
size
();
i
++)
{
//是否是明细字段
if
(
"true"
.
equals
(
fieldList
.
get
(
i
).
get
(
"isDetail"
)))
{
tempMap
.
put
(
fieldList
.
get
(
i
).
get
(
"ims"
),
String
.
valueOf
(
objectList
.
get
(
i
)));
}
else
{
map
.
put
(
fieldList
.
get
(
i
).
get
(
"ims"
),
String
.
valueOf
(
objectList
.
get
(
i
)));
}
}
if
(!
CollectionUtils
.
isEmpty
(
tempMap
))
{
imsList
.
add
(
tempMap
);
}
}
if
(!
CollectionUtils
.
isEmpty
(
imsList
))
{
map
.
put
(
"detail_list"
,
imsList
);
}
result
.
add
(
map
);
}
else
{
//如果有错误信息则返回
String
message
=
ImsUtil
.
getMessage
(
list
.
get
(
0
).
get
(
0
));
Map
<
String
,
Object
>
resultMap
=
new
HashMap
<>(
1
);
resultMap
.
put
(
"false"
,
message
);
result
.
add
(
resultMap
);
}
}
return
result
;
}
}
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/kingdeeapi/ImsConstants.java
0 → 100644
浏览文件 @
faee3c48
package
org
.
jeecg
.
modules
.
iost
.
ims
.
kingdeeapi
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
org.jeecg.modules.iost.ims.entity.ImsCommonSyn
;
import
org.jeecg.modules.iost.ims.mapper.ImsCommonSynMapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
javax.annotation.PostConstruct
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.ConcurrentHashMap
;
/**
* @author Inori
*/
@Component
public
class
ImsConstants
{
private
Map
<
String
,
Map
<
String
,
String
>>
map
=
new
ConcurrentHashMap
<>();
@Autowired
private
ImsCommonSynMapper
imsCommonSynMapper
;
@PostConstruct
public
void
init
()
{
List
<
ImsCommonSyn
>
imsCommonSynList
=
imsCommonSynMapper
.
selectList
(
null
);
for
(
ImsCommonSyn
imsCommonSyn
:
imsCommonSynList
)
{
Map
<
String
,
String
>
temp
=
new
HashMap
<>(
5
);
temp
.
put
(
"formId"
,
imsCommonSyn
.
getFormId
());
temp
.
put
(
"docType"
,
imsCommonSyn
.
getDocType
());
temp
.
put
(
"name"
,
imsCommonSyn
.
getName
());
temp
.
put
(
"detail"
,
imsCommonSyn
.
getDetail
());
map
.
put
(
imsCommonSyn
.
getFormId
(),
temp
);
}
}
public
Map
<
String
,
String
>
get
(
String
formId
)
{
return
map
.
get
(
formId
);
}
public
void
set
(
String
formId
)
{
ImsCommonSyn
imsCommonSyn
=
imsCommonSynMapper
.
selectOne
(
new
QueryWrapper
<
ImsCommonSyn
>().
eq
(
"form_id"
,
formId
));
if
(
imsCommonSyn
!=
null
)
{
map
.
remove
(
formId
);
Map
<
String
,
String
>
temp
=
new
HashMap
<>(
4
);
temp
.
put
(
"formId"
,
imsCommonSyn
.
getFormId
());
temp
.
put
(
"docType"
,
imsCommonSyn
.
getDocType
());
temp
.
put
(
"name"
,
imsCommonSyn
.
getName
());
temp
.
put
(
"detail"
,
imsCommonSyn
.
getDetail
());
map
.
put
(
imsCommonSyn
.
getFormId
(),
temp
);
}
}
}
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/kingdeeapi/PurchaseReturnKingdeeApi.java
浏览文件 @
faee3c48
...
@@ -101,7 +101,7 @@ public class PurchaseReturnKingdeeApi {
...
@@ -101,7 +101,7 @@ public class PurchaseReturnKingdeeApi {
return
list
;
return
list
;
}
}
List
<
Map
<
String
,
Object
>>
purchaseWarehousing
(
List
<
List
<
Object
>>
list
)
{
private
List
<
Map
<
String
,
Object
>>
purchaseWarehousing
(
List
<
List
<
Object
>>
list
)
{
List
<
Map
<
String
,
Object
>>
result
=
new
ArrayList
<>();
List
<
Map
<
String
,
Object
>>
result
=
new
ArrayList
<>();
if
(!
CollectionUtils
.
isEmpty
(
list
))
{
if
(!
CollectionUtils
.
isEmpty
(
list
))
{
if
(!
list
.
get
(
0
).
get
(
0
).
toString
().
contains
(
"Errors"
))
{
if
(!
list
.
get
(
0
).
get
(
0
).
toString
().
contains
(
"Errors"
))
{
...
...
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/mapper/ImsCommonSynMapper.java
0 → 100644
浏览文件 @
faee3c48
package
org
.
jeecg
.
modules
.
iost
.
ims
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.jeecg.modules.iost.ims.entity.ImsCommonSyn
;
/**
* @author Inori
*/
@Mapper
public
interface
ImsCommonSynMapper
extends
BaseMapper
<
ImsCommonSyn
>
{
}
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/mapper/xml/ImsCommonSyn.xml
0 → 100644
浏览文件 @
faee3c48
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.jeecg.modules.iost.ims.mapper.ImsCommonSynMapper"
>
</mapper>
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/service/IImsCommonSynService.java
0 → 100644
浏览文件 @
faee3c48
package
org
.
jeecg
.
modules
.
iost
.
ims
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
org.jeecg.modules.iost.ims.entity.ImsCommonSyn
;
/**
* @author Inori
*/
public
interface
IImsCommonSynService
extends
IService
<
ImsCommonSyn
>
{
/**
* 通用同步方法
*
* @param fid FID
* @param formId formId
* @return 是否成功
*/
Boolean
synchronization
(
Object
fid
,
Object
formId
);
}
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/service/impl/ISynServiceImpl.java
浏览文件 @
faee3c48
...
@@ -52,6 +52,8 @@ public class ISynServiceImpl extends ServiceImpl<SynMapper, Syn> implements ISyn
...
@@ -52,6 +52,8 @@ public class ISynServiceImpl extends ServiceImpl<SynMapper, Syn> implements ISyn
IImsImsNestingAnalysisService
nestingAnalysisService
;
IImsImsNestingAnalysisService
nestingAnalysisService
;
@Autowired
@Autowired
IImsPickingListService
iImsPickingListService
;
IImsPickingListService
iImsPickingListService
;
@Autowired
IImsCommonSynService
iImsCommonSynService
;
/**
/**
* 查询新更新的记录
* 查询新更新的记录
...
@@ -146,7 +148,10 @@ public class ISynServiceImpl extends ServiceImpl<SynMapper, Syn> implements ISyn
...
@@ -146,7 +148,10 @@ public class ISynServiceImpl extends ServiceImpl<SynMapper, Syn> implements ISyn
}
else
if
(
data
.
get
(
"formid"
).
equals
(
"LQKJ_ContrastRecord"
))
{
}
else
if
(
data
.
get
(
"formid"
).
equals
(
"LQKJ_ContrastRecord"
))
{
logName
=
"提料分析同步失败"
;
logName
=
"提料分析同步失败"
;
success
=
iImsPickingListService
.
synchronization
(
data
.
get
(
"dataid"
),
sysUser
);
//提料分析
success
=
iImsPickingListService
.
synchronization
(
data
.
get
(
"dataid"
),
sysUser
);
//提料分析
}
}
/* else {
logName = data.get("dataid") + "同步失败";
success = iImsCommonSynService.synchronization(data.get("dataid"), sysUser);//通用同步
}*/
/*//将金蝶云的数据同步该成1 已同步
/*//将金蝶云的数据同步该成1 已同步
Map<String, Object> result = new HashMap<>();
Map<String, Object> result = new HashMap<>();
...
...
jeecg-boot-module-system/src/main/java/org/jeecg/modules/iost/ims/service/impl/ImsCommonSynServiceImpl.java
0 → 100644
浏览文件 @
faee3c48
package
org
.
jeecg
.
modules
.
iost
.
ims
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.toolkit.CollectionUtils
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.jeecg.modules.iost.ims.ExternalInterface.IMSApi
;
import
org.jeecg.modules.iost.ims.Util.ImsLogUtil
;
import
org.jeecg.modules.iost.ims.Util.JsonUtil
;
import
org.jeecg.modules.iost.ims.Util.KingdeeLogUtil
;
import
org.jeecg.modules.iost.ims.entity.ImsCommonSyn
;
import
org.jeecg.modules.iost.ims.kingdeeapi.ImsCommonKingdeeApi
;
import
org.jeecg.modules.iost.ims.kingdeeapi.ImsConstants
;
import
org.jeecg.modules.iost.ims.mapper.ImsCommonSynMapper
;
import
org.jeecg.modules.iost.ims.service.IImsCommonSynService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* @author Inori
*/
@Service
public
class
ImsCommonSynServiceImpl
extends
ServiceImpl
<
ImsCommonSynMapper
,
ImsCommonSyn
>
implements
IImsCommonSynService
{
@Autowired
private
ImsCommonKingdeeApi
imsCommonKingdeeApi
;
@Autowired
private
ImsConstants
imsConstants
;
@Autowired
private
IMSApi
imsApi
;
@Override
public
Boolean
synchronization
(
Object
fid
,
Object
formId
)
{
//查询表单
Map
<
String
,
String
>
temp
=
imsConstants
.
get
(
formId
.
toString
());
if
(
CollectionUtils
.
isEmpty
(
temp
))
{
new
KingdeeLogUtil
().
synLog
(
"通用同步失败"
,
"formId为: "
+
formId
+
"的表单不存在"
);
return
false
;
}
//追加参数(上下文对象)
/*String kingDeeLogOZTName = temp.get("name");
Map map2 = ThreadLocalConfig.get();
map2.put("KingdeeLogOZTName", kingDeeLogOZTName);*/
List
<
Object
>
objectList
=
JsonUtil
.
toList
(
temp
.
get
(
"detail"
),
Object
.
class
);
List
<
Map
<
String
,
String
>>
fieldList
=
objectList
.
stream
().
map
(
m
->
JsonUtil
.
toMap
(
JsonUtil
.
toString
(
m
),
String
.
class
,
String
.
class
)).
collect
(
Collectors
.
toList
());
//设置需要同步的主键
Map
<
String
,
String
>
where
=
new
HashMap
<>(
1
);
where
.
put
(
"FID"
,
fid
.
toString
());
List
<
Map
<
String
,
Object
>>
list
=
imsCommonKingdeeApi
.
selectAndLog
(
temp
.
get
(
"formId"
),
fieldList
,
where
,
temp
.
get
(
"name"
));
//将数据包装成IMS格式
Map
<
String
,
Object
>
map
=
new
HashMap
<>(
3
);
map
.
put
(
"docType"
,
temp
.
get
(
"docType"
));
map
.
put
(
"updateType"
,
"UPDATE"
);
map
.
put
(
"data"
,
list
);
String
json
=
JsonUtil
.
toString
(
map
);
String
result
=
imsApi
.
add
(
json
,
temp
.
get
(
"name"
),
temp
.
get
(
"docType"
));
//记录IMS日志
return
new
ImsLogUtil
().
ImsLog
(
json
,
result
,
temp
.
get
(
"name"
),
temp
.
get
(
"docType"
),
null
);
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论