Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
szpt
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
以墨为白
szpt
Commits
7b57fa6e
Commit
7b57fa6e
authored
Dec 27, 2024
by
以墨为白
🎧
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
任务完成情况
parent
045c68ea
Pipeline
#522
failed with stages
Changes
10
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
314 additions
and
23 deletions
+314
-23
rest.http
rest.http
+16
-2
src/main/java/com/zksy/szpt/config/WebConfig.java
src/main/java/com/zksy/szpt/config/WebConfig.java
+5
-5
src/main/java/com/zksy/szpt/controller/IndexController.java
src/main/java/com/zksy/szpt/controller/IndexController.java
+29
-0
src/main/java/com/zksy/szpt/domain/dto/XxRwwcqkDTO.java
src/main/java/com/zksy/szpt/domain/dto/XxRwwcqkDTO.java
+207
-0
src/main/java/com/zksy/szpt/domain/po/AppStore.java
src/main/java/com/zksy/szpt/domain/po/AppStore.java
+0
-1
src/main/java/com/zksy/szpt/domain/po/XxRwwcqk.java
src/main/java/com/zksy/szpt/domain/po/XxRwwcqk.java
+6
-0
src/main/java/com/zksy/szpt/filter/SignatureVerificationFilter.java
...ava/com/zksy/szpt/filter/SignatureVerificationFilter.java
+10
-11
src/main/java/com/zksy/szpt/handler/SzptMetaObjectHandler.java
...ain/java/com/zksy/szpt/handler/SzptMetaObjectHandler.java
+18
-2
src/main/java/com/zksy/szpt/mapper/XxRwwcqkMapper.java
src/main/java/com/zksy/szpt/mapper/XxRwwcqkMapper.java
+2
-2
src/main/java/com/zksy/szpt/service/IndexService.java
src/main/java/com/zksy/szpt/service/IndexService.java
+21
-0
No files found.
rest.http
View file @
7b57fa6e
...
@@ -4,12 +4,26 @@ Content-Type: application/json
...
@@ -4,12 +4,26 @@ Content-Type: application/json
x-szpt-appid: 1
x-szpt-appid: 1
x-szpt-timestamp: 21
x-szpt-timestamp: 21
x-szpt-nonce: nonce
x-szpt-nonce: nonce
x-szpt-sign:
804a69ec3288bd90a9955fef6b6f4cfa
x-szpt-sign:
a31189e46fc5c41894b3e155dafb77b4
{
{
"id":"23",
"id":"23",
"appKey":"wer"
"appKey":"wer"
}
}
######
######任务完成情况
######1
POST http://localhost:8086/rest/index/addXxRwwcqk
Content-Type: application/json
x-szpt-appid: 1
x-szpt-timestamp: 21
x-szpt-nonce: nonce
x-szpt-sign: cf9292d20f20c3705cabe1f08d07bec7
{
"rwid":"23",
"xxyid":"wer",
"bmzt": "1",
"shrid": "2",
"wczt": "3"
}
src/main/java/com/zksy/szpt/config/WebConfig.java
View file @
7b57fa6e
package
com
.
zksy
.
szpt
.
config
;
package
com
.
zksy
.
szpt
.
config
;
import
com.zksy.szpt.filter.SignatureVerificationFilter
;
import
com.zksy.szpt.filter.SignatureVerificationFilter
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.boot.web.servlet.FilterRegistrationBean
;
import
org.springframework.boot.web.servlet.FilterRegistrationBean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -14,9 +15,6 @@ import javax.annotation.Resource;
...
@@ -14,9 +15,6 @@ import javax.annotation.Resource;
@Component
@Component
public
class
WebConfig
implements
WebMvcConfigurer
{
public
class
WebConfig
implements
WebMvcConfigurer
{
@Resource
SignatureVerificationFilter
signatureVerificationFilter
;
@Override
@Override
public
void
addInterceptors
(
InterceptorRegistry
registry
)
{
public
void
addInterceptors
(
InterceptorRegistry
registry
)
{
// 多个拦截器组成一个拦截器链
// 多个拦截器组成一个拦截器链
...
@@ -37,6 +35,7 @@ public class WebConfig implements WebMvcConfigurer {
...
@@ -37,6 +35,7 @@ public class WebConfig implements WebMvcConfigurer {
/**
/**
* 静态资源配置
* 静态资源配置
*
* @param registry
* @param registry
*/
*/
@Override
@Override
...
@@ -52,12 +51,13 @@ public class WebConfig implements WebMvcConfigurer {
...
@@ -52,12 +51,13 @@ public class WebConfig implements WebMvcConfigurer {
/**
/**
* 注册过滤器,这里注册的是自定义的签名验证过滤器,并且只会对/rest/*路径下的请求进行过滤
* 注册过滤器,这里注册的是自定义的签名验证过滤器,并且只会对/rest/*路径下的请求进行过滤
*
* @return
* @return
*/
*/
@Bean
@Bean
public
FilterRegistrationBean
getFilter1Registration
()
{
public
FilterRegistrationBean
getFilter1Registration
(
@Qualifier
(
"signatureVerificationFilter"
)
SignatureVerificationFilter
signatureVerificationFilter
)
{
FilterRegistrationBean
filterRegistrationBean
=
new
FilterRegistrationBean
();
FilterRegistrationBean
filterRegistrationBean
=
new
FilterRegistrationBean
();
filterRegistrationBean
.
setFilter
(
this
.
signatureVerificationFilter
);
filterRegistrationBean
.
setFilter
(
signatureVerificationFilter
);
//设置过滤器名称和路径,在过滤器类写了的话,这里不用重复写
//设置过滤器名称和路径,在过滤器类写了的话,这里不用重复写
filterRegistrationBean
.
setName
(
"filter"
);
filterRegistrationBean
.
setName
(
"filter"
);
filterRegistrationBean
.
addUrlPatterns
(
"/rest/*"
);
filterRegistrationBean
.
addUrlPatterns
(
"/rest/*"
);
...
...
src/main/java/com/zksy/szpt/controller/IndexController.java
0 → 100644
View file @
7b57fa6e
package
com
.
zksy
.
szpt
.
controller
;
import
com.zksy.szpt.domain.dto.XxRwwcqkDTO
;
import
com.zksy.szpt.service.IndexService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.validation.Valid
;
@Api
(
tags
=
"新增服务"
)
@RequestMapping
(
"/rest/index"
)
@RestController
public
class
IndexController
{
private
final
IndexService
indexService
;
public
IndexController
(
IndexService
indexService
)
{
this
.
indexService
=
indexService
;
}
@ApiOperation
(
value
=
"新增xx_rwwcqk数据"
)
@PostMapping
(
"/addXxRwwcqk"
)
public
Integer
addXxRwwcqk
(
@RequestBody
@Valid
XxRwwcqkDTO
xxRwwcqkDTO
)
{
return
indexService
.
addXxRwwcqk
(
xxRwwcqkDTO
);
}
}
src/main/java/com/zksy/szpt/domain/dto/XxRwwcqkDTO.java
0 → 100644
View file @
7b57fa6e
package
com
.
zksy
.
szpt
.
domain
.
dto
;
import
javax.validation.constraints.NotBlank
;
import
java.util.Date
;
public
class
XxRwwcqkDTO
{
/**
* 任务ID
*/
@NotBlank
(
message
=
"任务ID不能为空"
)
private
String
rwid
;
/**
* 义警ID
*/
@NotBlank
(
message
=
"义警ID不能为空"
)
private
String
xxyid
;
/**
* 姓名
*/
private
String
xm
;
/**
* 联系电话;
*/
private
String
lxdh
;
/**
* 义警队伍;cslb=3210
*/
private
String
yjdw
;
/**
* 完成状态;cslb=3212
*/
@NotBlank
(
message
=
"完成状态不能为空"
)
private
String
wczt
;
/**
* 报名状态;cslb=1005
*/
@NotBlank
(
message
=
"报名状态不能为空"
)
private
String
bmzt
;
/**
* 反馈内容;
*/
private
String
fknr
;
/**
* 接收时间
*/
private
Date
jssj
;
/**
* 反馈时间
*/
private
Date
fksj
;
/**
* 审核时间
*/
private
Date
shsj
;
/**
* 审核人姓名
*/
private
String
shrxm
;
/**
* 审核人id
*/
@NotBlank
(
message
=
"审核人ID不能为空"
)
private
String
shrid
;
/**
* 审核说明
*/
private
String
shsm
;
/**
* 运营单位ID
*/
private
String
mchid
;
public
String
getRwid
()
{
return
rwid
;
}
public
void
setRwid
(
String
rwid
)
{
this
.
rwid
=
rwid
==
null
?
null
:
rwid
.
trim
();
}
public
String
getXxyid
()
{
return
xxyid
;
}
public
void
setXxyid
(
String
xxyid
)
{
this
.
xxyid
=
xxyid
==
null
?
null
:
xxyid
.
trim
();
}
public
String
getXm
()
{
return
xm
;
}
public
void
setXm
(
String
xm
)
{
this
.
xm
=
xm
==
null
?
null
:
xm
.
trim
();
}
public
String
getLxdh
()
{
return
lxdh
;
}
public
void
setLxdh
(
String
lxdh
)
{
this
.
lxdh
=
lxdh
==
null
?
null
:
lxdh
.
trim
();
}
public
String
getYjdw
()
{
return
yjdw
;
}
public
void
setYjdw
(
String
yjdw
)
{
this
.
yjdw
=
yjdw
==
null
?
null
:
yjdw
.
trim
();
}
public
String
getWczt
()
{
return
wczt
;
}
public
void
setWczt
(
String
wczt
)
{
this
.
wczt
=
wczt
==
null
?
null
:
wczt
.
trim
();
}
public
String
getBmzt
()
{
return
bmzt
;
}
public
void
setBmzt
(
String
bmzt
)
{
this
.
bmzt
=
bmzt
==
null
?
null
:
bmzt
.
trim
();
}
public
String
getFknr
()
{
return
fknr
;
}
public
void
setFknr
(
String
fknr
)
{
this
.
fknr
=
fknr
==
null
?
null
:
fknr
.
trim
();
}
public
Date
getJssj
()
{
return
jssj
;
}
public
void
setJssj
(
Date
jssj
)
{
this
.
jssj
=
jssj
;
}
public
Date
getFksj
()
{
return
fksj
;
}
public
void
setFksj
(
Date
fksj
)
{
this
.
fksj
=
fksj
;
}
public
Date
getShsj
()
{
return
shsj
;
}
public
void
setShsj
(
Date
shsj
)
{
this
.
shsj
=
shsj
;
}
public
String
getShrxm
()
{
return
shrxm
;
}
public
void
setShrxm
(
String
shrxm
)
{
this
.
shrxm
=
shrxm
==
null
?
null
:
shrxm
.
trim
();
}
public
String
getShrid
()
{
return
shrid
;
}
public
void
setShrid
(
String
shrid
)
{
this
.
shrid
=
shrid
==
null
?
null
:
shrid
.
trim
();
}
public
String
getShsm
()
{
return
shsm
;
}
public
void
setShsm
(
String
shsm
)
{
this
.
shsm
=
shsm
==
null
?
null
:
shsm
.
trim
();
}
public
String
getMchid
()
{
return
mchid
;
}
public
void
setMchid
(
String
mchid
)
{
this
.
mchid
=
mchid
==
null
?
null
:
mchid
.
trim
();
}
}
\ No newline at end of file
src/main/java/com/zksy/szpt/domain/po/AppStore.java
View file @
7b57fa6e
...
@@ -6,7 +6,6 @@ import java.util.Date;
...
@@ -6,7 +6,6 @@ import java.util.Date;
@TableName
(
"tb_app_store"
)
@TableName
(
"tb_app_store"
)
public
class
AppStore
{
public
class
AppStore
{
@TableId
(
type
=
IdType
.
AUTO
)
private
Long
id
;
private
Long
id
;
//uuid, 唯一标识,雪花算法实现
//uuid, 唯一标识,雪花算法实现
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
...
...
src/main/java/com/zksy/szpt/domain/po/XxRwwcqk.java
View file @
7b57fa6e
package
com
.
zksy
.
szpt
.
domain
.
po
;
package
com
.
zksy
.
szpt
.
domain
.
po
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
java.util.Date
;
import
java.util.Date
;
@TableName
public
class
XxRwwcqk
{
public
class
XxRwwcqk
{
/**
/**
* IID
* IID
...
@@ -11,6 +16,7 @@ public class XxRwwcqk {
...
@@ -11,6 +16,7 @@ public class XxRwwcqk {
/**
/**
* 任务完成ID
* 任务完成ID
*/
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
private
String
id
;
private
String
id
;
/**
/**
...
...
src/main/java/com/zksy/szpt/filter/SignatureVerificationFilter.java
View file @
7b57fa6e
...
@@ -3,36 +3,35 @@ package com.zksy.szpt.filter;
...
@@ -3,36 +3,35 @@ package com.zksy.szpt.filter;
import
cn.hutool.crypto.digest.DigestUtil
;
import
cn.hutool.crypto.digest.DigestUtil
;
import
cn.hutool.json.JSONUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.zksy.szpt.domain.HttpResult
;
import
com.zksy.szpt.domain.HttpResult
;
import
com.zksy.szpt.domain.HttpResultState
;
import
com.zksy.szpt.domain.HttpResultState
;
import
com.zksy.szpt.service.AppStoreService
;
import
com.zksy.szpt.service.AppStoreService
;
import
com.zksy.szpt.util.SignatureUtil
;
import
com.zksy.szpt.util.SignatureUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.MediaType
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.StreamUtils
;
import
org.springframework.util.StreamUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
javax.annotation.Resource
;
import
javax.servlet.FilterChain
;
import
javax.servlet.FilterChain
;
import
javax.servlet.ServletException
;
import
javax.servlet.ServletException
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.nio.charset.StandardCharsets
;
import
java.nio.charset.StandardCharsets
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.function.Function
;
@Component
@Component
public
class
SignatureVerificationFilter
extends
OncePerRequestFilter
{
public
class
SignatureVerificationFilter
extends
OncePerRequestFilter
{
public
Logger
logger
=
LoggerFactory
.
getLogger
(
SignatureVerificationFilter
.
class
);
public
Logger
logger
=
LoggerFactory
.
getLogger
(
SignatureVerificationFilter
.
class
);
private
static
Map
<
String
,
Function
<
String
,
String
>>
workTypeMap
=
new
HashMap
<>();
@Resource
ObjectMapper
objectMapper
;
private
final
AppStoreService
appStoreService
;
private
final
AppStoreService
appStoreService
;
...
@@ -68,10 +67,9 @@ public class SignatureVerificationFilter extends OncePerRequestFilter {
...
@@ -68,10 +67,9 @@ public class SignatureVerificationFilter extends OncePerRequestFilter {
// 时间戳
// 时间戳
String
timestampStr
=
request
.
getHeader
(
SignatureUtil
.
TIMESTAMP
);
String
timestampStr
=
request
.
getHeader
(
SignatureUtil
.
TIMESTAMP
);
if
(!
StringUtils
.
hasText
(
appId
)
||
!
StringUtils
.
hasText
(
sign
)
||
!
StringUtils
.
hasText
(
nonce
)
||
!
StringUtils
.
hasText
(
timestampStr
))
{
if
(!
StringUtils
.
hasText
(
appId
)
||
!
StringUtils
.
hasText
(
sign
)
||
!
StringUtils
.
hasText
(
nonce
)
||
!
StringUtils
.
hasText
(
timestampStr
))
{
logger
.
error
(
"缺少参数appId{},sign{},nonce{},timestampStr
{}"
,
appId
,
sign
,
nonce
,
timestampStr
);
logger
.
warn
(
"缺少参数appId:{},sign:{},nonce{},timestampStr:
{}"
,
appId
,
sign
,
nonce
,
timestampStr
);
this
.
write
(
response
,
"
缺少参数"
);
this
.
write
(
response
,
"
请求头缺少参数,appId:"
+
appId
+
",sign:"
+
sign
+
",nonce:"
+
nonce
+
",timestamp:"
+
timestampStr
);
return
false
;
return
false
;
}
}
...
@@ -92,10 +90,11 @@ public class SignatureVerificationFilter extends OncePerRequestFilter {
...
@@ -92,10 +90,11 @@ public class SignatureVerificationFilter extends OncePerRequestFilter {
// return false;
// return false;
// }
// }
// 请求体
// 请求体
String
body
=
StreamUtils
.
copyToString
(
request
.
getInputStream
(),
StandardCharsets
.
UTF_8
);
String
body
=
StreamUtils
.
copyToString
(
request
.
getInputStream
(),
StandardCharsets
.
UTF_8
);
// 需要签名的数据:appId+nonce+timestampStr+body+secretKey
body
=
objectMapper
.
writeValueAsString
(
objectMapper
.
readValue
(
body
,
Map
.
class
));
// 校验签名
// 校验签名
appId+nonce+timestampStr+body+secretKey
String
data
=
String
.
format
(
"%s%s%s%s%s"
,
appId
,
nonce
,
timestampStr
,
body
,
secretKey
);
String
data
=
String
.
format
(
"%s%s%s%s%s"
,
appId
,
nonce
,
timestampStr
,
body
,
secretKey
);
String
generatedSignature
=
DigestUtil
.
md5Hex
(
data
);
String
generatedSignature
=
DigestUtil
.
md5Hex
(
data
);
if
(!
generatedSignature
.
equals
(
sign
))
{
if
(!
generatedSignature
.
equals
(
sign
))
{
...
...
src/main/java/com/zksy/szpt/handler/SzptMetaObjectHandler.java
View file @
7b57fa6e
package
com
.
zksy
.
szpt
.
handler
;
package
com
.
zksy
.
szpt
.
handler
;
import
com.baomidou.mybatisplus.core.handlers.MetaObjectHandler
;
import
com.baomidou.mybatisplus.core.handlers.MetaObjectHandler
;
import
com.baomidou.mybatisplus.core.handlers.StrictFill
;
import
org.apache.ibatis.reflection.MetaObject
;
import
org.apache.ibatis.reflection.MetaObject
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* 自动填充 create_time, update_time 字段
* 自动填充 create_time, update_time 字段
...
@@ -14,11 +17,24 @@ public class SzptMetaObjectHandler implements MetaObjectHandler {
...
@@ -14,11 +17,24 @@ public class SzptMetaObjectHandler implements MetaObjectHandler {
@Override
@Override
public
void
insertFill
(
MetaObject
metaObject
)
{
public
void
insertFill
(
MetaObject
metaObject
)
{
// 新增时自动填充 create_time, update_time 字段
// 新增时自动填充 create_time, update_time 字段
this
.
strictInsertFill
(
metaObject
,
"createTime"
,
Date
.
class
,
new
Date
());
// this.strictInsertFill(metaObject, "createTime", Date.class, new Date());
// this.strictInsertFill(metaObject, "cjsj", Date.class, new Date());
List
<
StrictFill
>
fields
=
Arrays
.
asList
(
StrictFill
.
of
(
"createTime"
,
Date
.
class
,
new
Date
()),
StrictFill
.
of
(
"cjsj"
,
Date
.
class
,
new
Date
())
);
this
.
strictInsertFill
(
findTableInfo
(
metaObject
),
metaObject
,
fields
);
}
}
@Override
@Override
public
void
updateFill
(
MetaObject
metaObject
)
{
public
void
updateFill
(
MetaObject
metaObject
)
{
this
.
strictInsertFill
(
metaObject
,
"updateTime"
,
Date
.
class
,
new
Date
());
List
<
StrictFill
>
fields
=
Arrays
.
asList
(
StrictFill
.
of
(
"updateTime"
,
Date
.
class
,
new
Date
()),
StrictFill
.
of
(
"gxrid"
,
String
.
class
,
"1"
),
StrictFill
.
of
(
"gxsj"
,
Date
.
class
,
new
Date
()),
StrictFill
.
of
(
"gxrxm"
,
String
.
class
,
"测试"
)
);
this
.
strictInsertFill
(
findTableInfo
(
metaObject
),
metaObject
,
fields
);
// this.strictInsertFill(metaObject, "updateTime", Date.class, new Date());
}
}
}
}
src/main/java/com/zksy/szpt/mapper/XxRwwcqkMapper.java
View file @
7b57fa6e
package
com
.
zksy
.
szpt
.
mapper
;
package
com
.
zksy
.
szpt
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.zksy.szpt.domain.po.XxRwwcqk
;
import
com.zksy.szpt.domain.po.XxRwwcqk
;
import
com.zksy.szpt.domain.po.XxRwwcqkExample
;
import
com.zksy.szpt.domain.po.XxRwwcqkExample
;
import
java.util.List
;
import
java.util.List
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
public
interface
XxRwwcqkMapper
{
public
interface
XxRwwcqkMapper
extends
BaseMapper
<
XxRwwcqk
>
{
long
countByExample
(
XxRwwcqkExample
example
);
long
countByExample
(
XxRwwcqkExample
example
);
int
deleteByExample
(
XxRwwcqkExample
example
);
int
deleteByExample
(
XxRwwcqkExample
example
);
int
deleteByPrimaryKey
(
Long
iid
);
int
deleteByPrimaryKey
(
Long
iid
);
int
insert
(
XxRwwcqk
record
);
int
insertSelective
(
XxRwwcqk
record
);
int
insertSelective
(
XxRwwcqk
record
);
...
...
src/main/java/com/zksy/szpt/service/IndexService.java
0 → 100644
View file @
7b57fa6e
package
com
.
zksy
.
szpt
.
service
;
import
com.zksy.szpt.domain.dto.XxRwwcqkDTO
;
import
com.zksy.szpt.domain.po.XxRwwcqk
;
import
com.zksy.szpt.mapper.XxRwwcqkMapper
;
import
com.zksy.szpt.util.BeanMapperUtil
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
@Service
public
class
IndexService
{
@Resource
private
XxRwwcqkMapper
xxRwwcqkMapper
;
public
Integer
addXxRwwcqk
(
XxRwwcqkDTO
xxRwwcqkDTO
)
{
XxRwwcqk
xxRwwcqk
=
BeanMapperUtil
.
map
(
xxRwwcqkDTO
,
XxRwwcqk
.
class
);
return
xxRwwcqkMapper
.
insert
(
xxRwwcqk
);
}
}
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