Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
hg-smart
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
platform
hg-smart
Commits
92884c92
Commit
92884c92
authored
Sep 23, 2024
by
宋祥
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.同步德诚产品信息接口
parent
1d1e7b7f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
382 additions
and
3 deletions
+382
-3
DcOpenApi.java
.../com/baosight/hggp/core/extapp/decheng/api/DcOpenApi.java
+18
-0
DeChengConst.java
...sight/hggp/core/extapp/decheng/constant/DeChengConst.java
+5
-0
DcProductList.java
...aosight/hggp/core/extapp/decheng/model/DcProductList.java
+44
-0
ServiceHGSC101.java
.../java/com/baosight/hggp/hg/sc/service/ServiceHGSC101.java
+1
-1
HGSCTools.java
src/main/java/com/baosight/hggp/hg/sc/tools/HGSCTools.java
+0
-1
HGWD005.java
src/main/java/com/baosight/hggp/hg/wd/domain/HGWD005.java
+0
-0
ServiceHGWD003.java
.../java/com/baosight/hggp/hg/wd/service/ServiceHGWD003.java
+3
-1
ServiceHGWD005.java
.../java/com/baosight/hggp/hg/wd/service/ServiceHGWD005.java
+157
-0
HGWD005.xml
src/main/java/com/baosight/hggp/hg/wd/sql/HGWD005.xml
+128
-0
HGWDTools.java
src/main/java/com/baosight/hggp/hg/wd/tools/HGWDTools.java
+26
-0
No files found.
src/main/java/com/baosight/hggp/core/extapp/decheng/api/DcOpenApi.java
View file @
92884c92
...
...
@@ -7,6 +7,7 @@ import com.baosight.hggp.core.extapp.decheng.constant.DeChengConst;
import
com.baosight.hggp.core.extapp.decheng.model.DcChance
;
import
com.baosight.hggp.core.extapp.decheng.model.DcContractList
;
import
com.baosight.hggp.core.extapp.decheng.model.DcDeptList
;
import
com.baosight.hggp.core.extapp.decheng.model.DcProductList
;
import
com.baosight.hggp.core.extapp.decheng.model.DcUser
;
import
com.baosight.hggp.core.extapp.decheng.model.DcUserList
;
import
com.baosight.hggp.core.extapp.decheng.utils.DcApiUtils
;
...
...
@@ -139,4 +140,21 @@ public class DcOpenApi {
DcApiUtils
.
handleMessage
(
JSONObject
.
parseObject
(
result
));
}
/**
* 产品管理-列表
*
* @param pageIndex 当前页
*/
public
static
Pager
<
DcProductList
>
productList
(
int
pageIndex
)
throws
IOException
{
JSONArray
dataJsons
=
new
JSONArray
();
dataJsons
.
add
(
DcApiUtils
.
buildValueJson
(
"pageindex"
,
pageIndex
));
dataJsons
.
add
(
DcApiUtils
.
buildValueJson
(
"pagesize"
,
100
));
String
param
=
JSON
.
toJSONString
(
DcApiUtils
.
buildParamJson
(
dataJsons
));
String
result
=
HttpUtils
.
post
(
DeChengConst
.
PRODUCT_BILLLIST
,
param
,
HttpUtils
.
JSON_MEDIA_TYPE
);
if
(
StringUtils
.
isBlank
(
result
))
{
throw
new
PlatException
(
"【德诚】获取产品管理列表失败"
);
}
return
DcApiUtils
.
handleResult
(
result
,
DcProductList
.
class
);
}
}
src/main/java/com/baosight/hggp/core/extapp/decheng/constant/DeChengConst.java
View file @
92884c92
...
...
@@ -57,6 +57,11 @@ public class DeChengConst {
public
static
final
String
INTERACTION_ADD
=
"http://106.15.43.147:6099/sysa/mobilephone/officemanage/interaction/add.asp"
;
/**
* 产品管理-列表
*/
public
static
final
String
PRODUCT_BILLLIST
=
"http://106.15.43.147:6099/sysa/mobilephone/salesmanage/product/billlist.asp"
;
/**
* API状态码
*
* @author:songx
...
...
src/main/java/com/baosight/hggp/core/extapp/decheng/model/DcProductList.java
0 → 100644
View file @
92884c92
package
com
.
baosight
.
hggp
.
core
.
extapp
.
decheng
.
model
;
import
lombok.Data
;
/**
* 合同信息
*
* @author:songx
* @date:2024/8/9,16:41
*/
@Data
public
class
DcProductList
{
/**
* 产品标识
*/
private
String
ord
;
/**
* 产品名称
*/
private
String
cpname
;
/**
* 产品编号
*/
private
String
cpbh
;
/**
* 产品型号
*/
private
String
cpxh
;
/**
* 产品单位
*/
private
String
unit
;
/**
* 产品分类
*/
private
String
fenlei
;
}
src/main/java/com/baosight/hggp/hg/sc/service/ServiceHGSC101.java
View file @
92884c92
...
...
@@ -162,7 +162,7 @@ public class ServiceHGSC101 extends ServiceEPBase {
Map
updateMap
=
new
HashMap
();
updateMap
.
put
(
HGSC001
.
FIELD_proj_code
,
projCode
);
updateMap
.
put
(
HGSC001
.
FIELD_proj_name
,
dcContractList
.
getTitle
());
DaoUtils
.
update
(
HgScSqlConstant
.
HgSc001
.
UPDATE_PROJ_NAME
,
dbSc001
);
DaoUtils
.
update
(
HgScSqlConstant
.
HgSc001
.
UPDATE_PROJ_NAME
,
updateMap
);
}
}
}
...
...
src/main/java/com/baosight/hggp/hg/sc/tools/HGSCTools.java
View file @
92884c92
...
...
@@ -235,7 +235,6 @@ public class HGSCTools {
*/
public
static
class
Hgsc001
{
/**
*
* @param code
...
...
src/main/java/com/baosight/hggp/hg/wd/domain/HGWD005.java
0 → 100644
View file @
92884c92
This diff is collapsed.
Click to expand it.
src/main/java/com/baosight/hggp/hg/wd/service/ServiceHGWD003.java
View file @
92884c92
...
...
@@ -198,8 +198,10 @@ public class ServiceHGWD003 extends ServiceEPBase {
Map
queryMap
=
EiInfoUtils
.
getFirstRow
(
inInfo
);
// 文档管理员不做校验
if
(
HgWdUtils
.
HgWd009
.
isManager
(
UserSessionUtils
.
getLoginName
()))
{
inInfo
.
set
(
"is
Project
Manager"
,
CommonConstant
.
YesNo
.
YES_1
);
inInfo
.
set
(
"isManager"
,
CommonConstant
.
YesNo
.
YES_1
);
return
inInfo
;
}
else
{
inInfo
.
set
(
"isManager"
,
CommonConstant
.
YesNo
.
NO_0
);
}
queryMap
.
put
(
HGWD003
.
FIELD_USER_ID
,
UserSessionUtils
.
getLoginName
());
List
<
HGWD003
>
dbWd003s
=
dao
.
query
(
HgWdSqlConstant
.
HgWd003
.
GET_BY_USER
,
queryMap
);
...
...
src/main/java/com/baosight/hggp/hg/wd/service/ServiceHGWD005.java
0 → 100644
View file @
92884c92
package
com
.
baosight
.
hggp
.
hg
.
wd
.
service
;
import
com.baosight.hggp.aspect.annotation.OperationLogAnnotation
;
import
com.baosight.hggp.core.dao.DaoUtils
;
import
com.baosight.hggp.core.extapp.decheng.api.DcOpenApi
;
import
com.baosight.hggp.core.extapp.decheng.model.DcContractList
;
import
com.baosight.hggp.core.extapp.decheng.model.DcProductList
;
import
com.baosight.hggp.core.model.Pager
;
import
com.baosight.hggp.core.utils.ThreadUtils
;
import
com.baosight.hggp.hg.pz.domain.HGPZ009
;
import
com.baosight.hggp.hg.pz.tools.HGPZTools
;
import
com.baosight.hggp.hg.sc.constant.HgScSqlConstant
;
import
com.baosight.hggp.hg.sc.domain.HGSC001
;
import
com.baosight.hggp.hg.sc.tools.HGSCTools
;
import
com.baosight.hggp.hg.wd.domain.HGWD005
;
import
com.baosight.hggp.hg.wd.tools.HGWDTools
;
import
com.baosight.hggp.util.AssertUtils
;
import
com.baosight.hggp.util.EiInfoUtils
;
import
com.baosight.hggp.util.LogUtils
;
import
com.baosight.hggp.util.MapUtils
;
import
com.baosight.iplat4j.core.ei.EiConstant
;
import
com.baosight.iplat4j.core.ei.EiInfo
;
import
com.baosight.iplat4j.core.service.impl.ServiceEPBase
;
import
org.apache.commons.collections.CollectionUtils
;
import
java.io.IOException
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
lombok.extern.slf4j.Slf4j
;
/**
* 产品列表
*
* @author:songx
* @date:2024/5/9,11:04
*/
@Slf4j
public
class
ServiceHGWD005
extends
ServiceEPBase
{
/**
* 画面初始化
*
* @param inInfo
* @return
*/
@Override
@OperationLogAnnotation
(
operModul
=
"文档权限"
,
operType
=
"查询"
,
operDesc
=
"初始化"
)
public
EiInfo
initLoad
(
EiInfo
inInfo
)
{
try
{
inInfo
.
addBlock
(
EiConstant
.
resultBlock
).
addBlockMeta
(
new
HGWD005
().
eiMetadata
);
}
catch
(
Exception
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"初始化失败"
);
}
return
inInfo
;
}
/**
* 查询
*
* @param inInfo
* @return
*/
public
EiInfo
query
(
EiInfo
inInfo
)
{
try
{
Map
queryMap
=
EiInfoUtils
.
getFirstRow
(
inInfo
);
inInfo
=
super
.
query
(
inInfo
,
HGWD005
.
QUERY
,
new
HGWD005
());
}
catch
(
Exception
e
)
{
LogUtils
.
setMsg
(
inInfo
,
e
,
"查询节点失败"
);
}
return
inInfo
;
}
/**
* 同步德诚产品信息
*
* @param inInfo
* @return
*/
public
EiInfo
syncDcProduct
(
EiInfo
inInfo
)
{
try
{
Map
queryMap
=
EiInfoUtils
.
getFirstRow
(
inInfo
);
String
accountCode
=
MapUtils
.
getString
(
queryMap
,
HGPZ009
.
FIELD_ACCOUNT_CODE
);
AssertUtils
.
isEmpty
(
accountCode
,
"企业编码不能为空"
);
ThreadUtils
.
FIXED_THREAD
.
execute
(()
->
{
try
{
syncDcProductData
(
accountCode
);
}
catch
(
Exception
e
)
{
log
.
error
(
"同步德诚产品信息失败:{}"
,
e
.
getMessage
(),
e
);
}
});
inInfo
.
setStatus
(
EiConstant
.
STATUS_SUCCESS
);
inInfo
.
setMsg
(
"同步德诚产品信息成功"
);
}
catch
(
Exception
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"同步德诚产品信息失败"
);
}
return
inInfo
;
}
/**
* 同步德诚产品信息
*
* @param accountCode
*/
private
void
syncDcProductData
(
String
accountCode
)
throws
IOException
{
int
pageIndex
=
1
;
while
(
true
)
{
// 超过1000次不在执行
if
(
pageIndex
>
1000
)
{
break
;
}
Pager
<
DcProductList
>
pager
=
DcOpenApi
.
productList
(
pageIndex
);
List
<
DcProductList
>
dcProductLists
=
pager
.
getData
();
if
(
CollectionUtils
.
isEmpty
(
dcProductLists
)
||
pageIndex
>
pager
.
getTotalPages
())
{
break
;
}
// 写入数据
saveProductData
(
accountCode
,
dcProductLists
);
pageIndex
++;
}
}
/**
* 写入产品信息
*
* @param accountCode
* @param dcProductLists
*/
private
void
saveProductData
(
String
accountCode
,
List
<
DcProductList
>
dcProductLists
)
{
for
(
DcProductList
dcProductList
:
dcProductLists
)
{
HGWD005
dbWd005
=
HGWDTools
.
HgWd005
.
get
(
dcProductList
.
getOrd
());
if
(
dbWd005
==
null
)
{
dbWd005
=
new
HGWD005
();
dbWd005
.
setAccountCode
(
accountCode
);
dbWd005
.
setDepCode
(
accountCode
);
dbWd005
.
setExtId
(
dcProductList
.
getOrd
());
dbWd005
.
setProductCode
(
dcProductList
.
getCpbh
());
dbWd005
.
setProductName
(
dcProductList
.
getCpname
());
dbWd005
.
setProductModel
(
dcProductList
.
getCpxh
());
dbWd005
.
setUnit
(
dcProductList
.
getUnit
());
dbWd005
.
setClassify
(
dcProductList
.
getFenlei
());
DaoUtils
.
insert
(
HGWD005
.
INSERT
,
dbWd005
);
}
else
{
Map
updateMap
=
new
HashMap
();
updateMap
.
put
(
HGWD005
.
FIELD_ID
,
dbWd005
.
getId
());
updateMap
.
put
(
HGWD005
.
FIELD_PRODUCT_NAME
,
dcProductList
.
getCpname
());
updateMap
.
put
(
HGWD005
.
FIELD_PRODUCT_MODEL
,
dcProductList
.
getCpxh
());
updateMap
.
put
(
HGWD005
.
FIELD_UNIT
,
dcProductList
.
getUnit
());
updateMap
.
put
(
HGWD005
.
FIELD_CLASSIFY
,
dcProductList
.
getFenlei
());
DaoUtils
.
update
(
HGWD005
.
UPDATE
,
updateMap
);
}
}
}
}
src/main/java/com/baosight/hggp/hg/wd/sql/HGWD005.xml
0 → 100644
View file @
92884c92
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap
namespace=
"HGWD005"
>
<sql
id=
"column"
>
ID as "id",
ACCOUNT_CODE as "accountCode",
<!-- 企业编码 -->
DEP_CODE as "depCode",
<!-- 部门编码 -->
CREATED_BY as "createdBy",
<!-- 记录创建者 -->
CREATED_NAME as "createdName",
<!-- 记录创建名称 -->
CREATED_TIME as "createdTime",
<!-- 记录创建时间 -->
UPDATED_BY as "updatedBy",
<!-- 记录修改者 -->
UPDATED_NAME as "updatedName",
<!-- 记录修改名称 -->
UPDATED_TIME as "updatedTime",
<!-- 记录修改时间 -->
DELETE_FLAG as "deleteFlag",
<!-- 0-未删除,1-已删除 -->
PRODUCT_CODE as "productCode",
<!-- 产品编号 -->
PRODUCT_NAME as "productName",
<!-- 产品名称 -->
PRODUCT_MODEL as "productModel",
<!-- 产品型号 -->
UNIT as "unit",
<!-- 产品单位 -->
CLASSIFY as "classify",
<!-- 产品分类 -->
REMARK as "remark",
<!-- 备注 -->
EXT_ID as "extId"
<!-- 外部系统主键ID -->
</sql>
<sql
id=
"condition"
>
<isNotEmpty
prepend=
" AND "
property=
"id"
>
ID = #id#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"accountCode"
>
ACCOUNT_CODE = #accountCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"depCode"
>
DEP_CODE = #depCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"deleteFlag"
>
DELETE_FLAG = #deleteFlag#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"productCode"
>
PRODUCT_CODE = #productCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"productName"
>
PRODUCT_NAME = #productName#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"productModel"
>
PRODUCT_MODEL = #productModel#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"unit"
>
UNIT = #unit#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"classify"
>
CLASSIFY = #classify#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"remark"
>
REMARK = #remark#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"extId"
>
EXT_ID = #extId#
</isNotEmpty>
</sql>
<sql
id=
"orderBy"
>
<dynamic
prepend=
"ORDER BY"
>
<isNotEmpty
property=
"orderBy"
>
$orderBy$
</isNotEmpty>
<isEmpty
property=
"orderBy"
>
ID asc
</isEmpty>
</dynamic>
</sql>
<select
id=
"query"
resultClass=
"com.baosight.ctdy.Hgwd005"
>
SELECT
<include
refid=
"column"
/>
FROM ${hggpSchema}.HGWD005
WHERE 1=1
<include
refid=
"condition"
/>
<include
refid=
"orderBy"
/>
</select>
<select
id=
"count"
resultClass=
"int"
>
SELECT COUNT(*) FROM ${hggpSchema}.HGWD005
WHERE 1=1
<include
refid=
"condition"
/>
</select>
<insert
id=
"insert"
>
INSERT INTO ${hggpSchema}.HGWD005 (
ACCOUNT_CODE,
<!-- 企业编码 -->
DEP_CODE,
<!-- 部门编码 -->
CREATED_BY,
<!-- 记录创建者 -->
CREATED_NAME,
<!-- 记录创建名称 -->
CREATED_TIME,
<!-- 记录创建时间 -->
UPDATED_BY,
<!-- 记录修改者 -->
UPDATED_NAME,
<!-- 记录修改名称 -->
UPDATED_TIME,
<!-- 记录修改时间 -->
DELETE_FLAG,
<!-- 0-未删除,1-已删除 -->
PRODUCT_CODE,
<!-- 产品编号 -->
PRODUCT_NAME,
<!-- 产品名称 -->
PRODUCT_MODEL,
<!-- 产品型号 -->
UNIT,
<!-- 产品单位 -->
CLASSIFY,
<!-- 产品分类 -->
REMARK,
<!-- 备注 -->
EXT_ID
<!-- 外部系统主键ID -->
) VALUES (
#accountCode#, #depCode#, #createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#,
#updatedTime#, #deleteFlag#, #productCode#, #productName#, #productModel#, #unit#, #classify#, #remark#,
#extId#)
</insert>
<delete
id=
"delete"
>
DELETE FROM ${hggpSchema}.HGWD005 WHERE ID = #id#
</delete>
<update
id=
"update"
>
UPDATE ${hggpSchema}.HGWD005
SET
UPDATED_BY = #updatedBy#,
<!-- 记录修改者 -->
UPDATED_NAME = #updatedName#,
<!-- 记录修改名称 -->
UPDATED_TIME = #updatedTime#,
<!-- 记录修改时间 -->
PRODUCT_NAME = #productName#,
<!-- 产品名称 -->
PRODUCT_MODEL = #productModel#,
<!-- 产品型号 -->
UNIT = #unit#,
<!-- 产品单位 -->
CLASSIFY = #classify#,
<!-- 产品分类 -->
WHERE ID = #id#
</update>
</sqlMap>
src/main/java/com/baosight/hggp/hg/wd/tools/HGWDTools.java
View file @
92884c92
...
...
@@ -5,11 +5,14 @@ import com.baosight.hggp.core.dao.DaoUtils;
import
com.baosight.hggp.core.extapp.decheng.api.DcOpenApi
;
import
com.baosight.hggp.core.security.UserSessionUtils
;
import
com.baosight.hggp.hg.cw.domain.HGCW999
;
import
com.baosight.hggp.hg.sc.constant.HgScSqlConstant
;
import
com.baosight.hggp.hg.sc.domain.HGSC001
;
import
com.baosight.hggp.hg.wd.constant.HgWdSqlConstant
;
import
com.baosight.hggp.hg.wd.domain.HGWD001
;
import
com.baosight.hggp.hg.wd.domain.HGWD001A
;
import
com.baosight.hggp.hg.wd.domain.HGWD002
;
import
com.baosight.hggp.hg.wd.domain.HGWD003
;
import
com.baosight.hggp.hg.wd.domain.HGWD005
;
import
com.baosight.hggp.hg.wd.domain.HGWD009
;
import
com.baosight.hggp.hg.wd.domain.HGWD099
;
import
com.baosight.hggp.util.AssertUtils
;
...
...
@@ -213,6 +216,29 @@ public class HGWDTools {
}
/**
* 产品信息
*
* @author:songx
* @date:2024/8/28,17:40
*/
public
static
class
HgWd005
{
/**
* 外部系统标识
*
* @param extId
* @return
*/
public
static
HGWD005
get
(
String
extId
)
{
AssertUtils
.
isNull
(
extId
,
"项目Code不能为空!"
);
Map
queryMap
=
new
HashMap
();
queryMap
.
put
(
HGWD005
.
FIELD_EXT_ID
,
extId
);
List
<
HGWD005
>
results
=
DaoBase
.
getInstance
().
query
(
HGWD005
.
QUERY
,
queryMap
);
return
CollectionUtils
.
isEmpty
(
results
)
?
null
:
results
.
get
(
0
);
}
}
public
static
class
HgWd099
{
public
static
List
<
HGWD099
>
getByDocId
(
String
bizType
,
String
docId
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment