Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-backend
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
AutogeneralShanghai
yd-backend
Commits
0fb2e9f1
Commit
0fb2e9f1
authored
Mar 25, 2021
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
查询分公司电子印章
parent
4d9938b7
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
61 additions
and
18 deletions
+61
-18
yd-api/src/main/java/com/yd/api/practitioner/service/PractitionerHiringContractService.java
+5
-4
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerHiringContractServiceImpl.java
+55
-13
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerHiringServiceImpl.java
+1
-1
No files found.
yd-api/src/main/java/com/yd/api/practitioner/service/PractitionerHiringContractService.java
View file @
0fb2e9f1
package
com
.
yd
.
api
.
practitioner
.
service
;
package
com
.
yd
.
api
.
practitioner
.
service
;
import
com.yd.
api.practitioner.vo.hiring.GeneratePDFRequestVO
;
import
com.yd.
dal.entity.customer.AclPractitioner
;
import
java.util.Map
;
import
java.util.Map
;
public
interface
PractitionerHiringContractService
{
public
interface
PractitionerHiringContractService
{
String
generatePractitionerContract
(
String
practitionerNO
,
String
contractNo
,
Long
hiringBasicInfoId
)
throws
Exception
;
String
generatePractitionerContract
(
AclPractitioner
practitioner
)
throws
Exception
;
Map
<
String
,
String
>
initHiringBasicInfoData
(
Long
hiringBasicInfoId
,
String
contractNo
);
Map
<
String
,
String
>
initHiringBasicInfoData
(
Long
hiringBasicInfoId
,
String
contractNo
);
Map
<
String
,
String
>
initHiringImageInfoData
(
Long
hiringBasicInfoId
);
Map
<
String
,
String
>
initHiringImageInfoData
(
Long
hiringBasicInfoId
,
String
signImage
);
String
generatePractitionerPDF
(
String
practitionerNO
,
Map
<
String
,
String
>
initDatas
,
Map
<
String
,
String
>
initImages
)
;
String
generatePractitionerPDF
(
AclPractitioner
practitioner
,
String
signImage
,
Map
<
String
,
String
>
initDatas
,
Map
<
String
,
String
>
initImages
)
throws
Exception
;
String
getNextContractNo
();
String
getNextContractNo
();
}
}
\ No newline at end of file
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerHiringContractServiceImpl.java
View file @
0fb2e9f1
...
@@ -10,6 +10,8 @@ import com.yd.rmi.cache.SystemConfigService;
...
@@ -10,6 +10,8 @@ import com.yd.rmi.cache.SystemConfigService;
import
com.yd.util.CommonUtil
;
import
com.yd.util.CommonUtil
;
import
com.yd.util.HttpUtil
;
import
com.yd.util.HttpUtil
;
import
com.yd.util.PDFConfiguration
;
import
com.yd.util.PDFConfiguration
;
import
com.yd.util.config.ZHBErrorConfig
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -37,16 +39,24 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
...
@@ -37,16 +39,24 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
private
AclPractitionerHiringPersonalStatementsMapper
statementsMapper
;
private
AclPractitionerHiringPersonalStatementsMapper
statementsMapper
;
@Autowired
@Autowired
private
SystemConfigService
systemConfigService
;
private
SystemConfigService
systemConfigService
;
@Autowired
private
AclInsurerBranchMapper
branchMapper
;
@Autowired
private
AclInsurerBranchDeptMapper
deptMapper
;
/**
/**
* 申请经纪人的ID,生成电子合同,在经纪人表中自动生成记录
* 申请经纪人的ID,生成电子合同,在经纪人表中自动生成记录
*
*
* @param
hiringBasicInfoId
* @param
practitioner
* @return
* @return
*/
*/
@Override
@Override
public
String
generatePractitionerContract
(
String
practitionerNO
,
String
contractNo
,
Long
hiringBasicInfoId
)
throws
Exception
{
public
String
generatePractitionerContract
(
AclPractitioner
practitioner
)
throws
Exception
{
String
contractNo
=
practitioner
.
getContractNo
();
Long
hiringBasicInfoId
=
practitioner
.
getHiringBasicInfoId
();
//0、查询分公司电子印章
String
signImage
=
this
.
getSignImageLocalPath
(
practitioner
);
//1、从DB中按照hiringBasicInfoId,获取经纪人的文字信息
//1、从DB中按照hiringBasicInfoId,获取经纪人的文字信息
Map
<
String
,
String
>
initDatas
=
new
HashMap
<
String
,
String
>();
Map
<
String
,
String
>
initDatas
=
new
HashMap
<
String
,
String
>();
...
@@ -54,15 +64,11 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
...
@@ -54,15 +64,11 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
//2、从DB中按照hiringBasicInfoId,从oss上获取经纪人上传的图片信息,需存本地临时文件
//2、从DB中按照hiringBasicInfoId,从oss上获取经纪人上传的图片信息,需存本地临时文件
Map
<
String
,
String
>
initImages
=
new
HashMap
<
String
,
String
>();
Map
<
String
,
String
>
initImages
=
new
HashMap
<
String
,
String
>();
initImages
=
initHiringImageInfoData
(
hiringBasicInfoId
);
initImages
=
initHiringImageInfoData
(
hiringBasicInfoId
,
signImage
);
//ag_acl_practitioner.practitioner_code
//String practitionerNO = "YDSH00009";
//String contractNO = "CTSH00009";
//3、PDF模板生成合同文件,存本地临时文件后,上传oss
//3、PDF模板生成合同文件,存本地临时文件后,上传oss
String
contractFile
=
generatePractitionerPDF
(
practitioner
NO
,
initDatas
,
initImages
);
String
contractFile
=
generatePractitionerPDF
(
practitioner
,
signImage
,
initDatas
,
initImages
);
//上传至oss ossService
//上传至oss ossService
String
contractFileOSS
=
this
.
putContractFileToOSS
(
contractFile
,
hiringBasicInfoId
);
String
contractFileOSS
=
this
.
putContractFileToOSS
(
contractFile
,
hiringBasicInfoId
);
...
@@ -383,7 +389,7 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
...
@@ -383,7 +389,7 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
* @return
* @return
*/
*/
@Override
@Override
public
Map
<
String
,
String
>
initHiringImageInfoData
(
Long
hiringBasicInfoId
)
{
public
Map
<
String
,
String
>
initHiringImageInfoData
(
Long
hiringBasicInfoId
,
String
signImage
)
{
AclPractitionerHiringBasicInfo
basicInfo
=
basicInfoMapper
.
selectByPrimaryKey
(
hiringBasicInfoId
);
AclPractitionerHiringBasicInfo
basicInfo
=
basicInfoMapper
.
selectByPrimaryKey
(
hiringBasicInfoId
);
...
@@ -401,7 +407,7 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
...
@@ -401,7 +407,7 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
String
personerPicture
=
this
.
getImgTolocal
(
localDirectory
,
"personerPicture.png"
,
basicInfo
.
getPersonerPictureOssPath
());
String
personerPicture
=
this
.
getImgTolocal
(
localDirectory
,
"personerPicture.png"
,
basicInfo
.
getPersonerPictureOssPath
());
images
.
put
(
"secondPersonerPicture"
,
personerPicture
);
images
.
put
(
"secondPersonerPicture"
,
personerPicture
);
//印章从配置文件读
//印章从配置文件读
String
signImage
=
PDFConfiguration
.
getProperty
(
"pdf.signImage"
);
//
String signImage = PDFConfiguration.getProperty("pdf.signImage");
images
.
put
(
"yindunESignature1001"
,
signImage
);
images
.
put
(
"yindunESignature1001"
,
signImage
);
images
.
put
(
"yindunESignature1201"
,
signImage
);
images
.
put
(
"yindunESignature1201"
,
signImage
);
images
.
put
(
"yindunESignature1401"
,
signImage
);
images
.
put
(
"yindunESignature1401"
,
signImage
);
...
@@ -589,13 +595,16 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
...
@@ -589,13 +595,16 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
* @return
* @return
*/
*/
@Override
@Override
public
String
generatePractitionerPDF
(
String
practitionerNO
,
Map
<
String
,
String
>
initDatas
,
Map
<
String
,
String
>
initImages
)
{
public
String
generatePractitionerPDF
(
AclPractitioner
practitioner
,
String
signImage
,
Map
<
String
,
String
>
initDatas
,
Map
<
String
,
String
>
initImages
)
throws
Exception
{
String
templatePDF
=
"D:\\pcs12\\templatePractitionerContract.pdf"
;
String
templatePDF
=
"D:\\pcs12\\templatePractitionerContract.pdf"
;
templatePDF
=
PDFConfiguration
.
getProperty
(
"pdf.template"
);
templatePDF
=
PDFConfiguration
.
getProperty
(
"pdf.template"
);
//模板文件生成零时文件
//模板文件生成零时文件
String
tmpPathPDF
=
PDFConfiguration
.
getProperty
(
"pdf.temp.path"
);
String
tmpPathPDF
=
PDFConfiguration
.
getProperty
(
"pdf.temp.path"
);
//PDF模板输出结果文件
//PDF模板输出结果文件
String
practitionerNO
=
practitioner
.
getPractitionerCode
();
String
templateResultPDF
=
tmpPathPDF
+
practitionerNO
+
"-template.pdf"
;
String
templateResultPDF
=
tmpPathPDF
+
practitionerNO
+
"-template.pdf"
;
//按模板填充数据生成结果PDF
//按模板填充数据生成结果PDF
PDFTemplate
.
generatePDF
(
templatePDF
,
templateResultPDF
,
initDatas
,
initImages
);
PDFTemplate
.
generatePDF
(
templatePDF
,
templateResultPDF
,
initDatas
,
initImages
);
...
@@ -614,8 +623,9 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
...
@@ -614,8 +623,9 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
String
signSourcePDF
=
templateResultPDF
;
String
signSourcePDF
=
templateResultPDF
;
//电子印章文件
//电子印章文件
String
signImage
=
"D:\\pcs12\\上海银盾保险经纪有限公司.png"
;
// String signImage = "D:\\pcs12\\上海银盾保险经纪有限公司.png";
signImage
=
PDFConfiguration
.
getProperty
(
"pdf.signImage"
);
// signImage = PDFConfiguration.getProperty("pdf.signImage");
float
x
=
450
;
float
x
=
450
;
float
y
=
150
;
float
y
=
150
;
x
=
Float
.
parseFloat
(
PDFConfiguration
.
getProperty
(
"pdf.position.x"
));
x
=
Float
.
parseFloat
(
PDFConfiguration
.
getProperty
(
"pdf.position.x"
));
...
@@ -629,6 +639,38 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
...
@@ -629,6 +639,38 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
return
signResultPDF
;
return
signResultPDF
;
}
}
private
String
getSignImageLocalPath
(
AclPractitioner
practitioner
)
throws
Exception
{
Long
insurerBranchId
=
practitioner
.
getInsurerBranchId
();
Long
deptId
=
practitioner
.
getDeptId
();
// 1.获取电子印章url
InputStream
inputStream
=
null
;
String
electronicTaxSeal
=
null
;
AclInsurerBranchDept
dept
=
deptMapper
.
selectByPrimaryKey
(
deptId
);
if
(
dept
!=
null
&&
StringUtils
.
isNotBlank
(
dept
.
getElectronicTaxSeal
()))
{
electronicTaxSeal
=
dept
.
getElectronicTaxSeal
();
}
else
{
AclInsurerBranch
insurerBranch
=
branchMapper
.
selectByPrimaryKey
(
insurerBranchId
);
if
(
insurerBranch
!=
null
&&
StringUtils
.
isNotBlank
(
insurerBranch
.
getElectronicTaxSeal
()))
{
electronicTaxSeal
=
insurerBranch
.
getElectronicTaxSeal
();
}
}
if
(
StringUtils
.
isBlank
(
electronicTaxSeal
))
{
throw
new
Exception
(
"分公司和部门电子印章url不能同时为空"
);
}
// 2.从Oss下载电子印章图片到本地
//本地图片目录
String
localDirectory
=
PDFConfiguration
.
getProperty
(
"pdf.signImage"
);
String
signature
=
this
.
getImgTolocal
(
localDirectory
,
"signImage.png"
,
electronicTaxSeal
);
return
signature
;
}
@Override
@Override
public
String
getNextContractNo
()
{
public
String
getNextContractNo
()
{
return
practitionerHiringMapper
.
getNextContractNo
();
return
practitionerHiringMapper
.
getNextContractNo
();
...
...
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerHiringServiceImpl.java
View file @
0fb2e9f1
...
@@ -756,7 +756,7 @@ public class PractitionerHiringServiceImpl implements PractitionerHiringService
...
@@ -756,7 +756,7 @@ public class PractitionerHiringServiceImpl implements PractitionerHiringService
if
(
StringUtils
.
isEmpty
(
contractNo
))
{
if
(
StringUtils
.
isEmpty
(
contractNo
))
{
contractNo
=
hiringContractService
.
getNextContractNo
();
contractNo
=
hiringContractService
.
getNextContractNo
();
}
}
String
contractOssPath
=
hiringContractService
.
generatePractitionerContract
(
practitioner
Code
,
contractNo
,
hiringBasicInfoId
);
String
contractOssPath
=
hiringContractService
.
generatePractitionerContract
(
practitioner
);
//4、经纪人表生成经纪人记录ag_acl_practitioner,ag_acl_practitioner.contract_oss_path
//4、经纪人表生成经纪人记录ag_acl_practitioner,ag_acl_practitioner.contract_oss_path
// 经纪人经纪人类型级别定义表ag_acl_practitioner_setting
// 经纪人经纪人类型级别定义表ag_acl_practitioner_setting
...
...
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