Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
midjourney-proxy
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
徐少华
midjourney-proxy
Commits
ab400b29
Commit
ab400b29
authored
Aug 26, 2020
by
郑永强
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: [1003483] ERP自动创建RAYS书刊和二维码
parent
06fe9eeb
Hide whitespace changes
Inline
Side-by-side
Showing
33 changed files
with
1584 additions
and
7 deletions
+1584
-7
CreateBookResultVO.java
...ain/java/com/pcloud/book/book/dto/CreateBookResultVO.java
+16
-0
CreateBookVO.java
.../src/main/java/com/pcloud/book/book/dto/CreateBookVO.java
+87
-0
CreateQrcodeVO.java
...rc/main/java/com/pcloud/book/book/dto/CreateQrcodeVO.java
+55
-0
RelateAdviserVO.java
...c/main/java/com/pcloud/book/book/dto/RelateAdviserVO.java
+28
-0
Book.java
...-book/src/main/java/com/pcloud/book/book/entity/Book.java
+26
-0
BookAdviserErp.java
...main/java/com/pcloud/book/book/entity/BookAdviserErp.java
+122
-0
BookSerialNumber.java
...in/java/com/pcloud/book/book/entity/BookSerialNumber.java
+32
-0
QrcodeSceneErp.java
...main/java/com/pcloud/book/book/entity/QrcodeSceneErp.java
+142
-0
BookAdviserErpBiz.java
...main/java/com/pcloud/book/book/biz/BookAdviserErpBiz.java
+39
-0
BookBiz.java
...-book/src/main/java/com/pcloud/book/book/biz/BookBiz.java
+7
-0
BookSerialNumberBiz.java
...in/java/com/pcloud/book/book/biz/BookSerialNumberBiz.java
+50
-0
QrcodeSceneErpBiz.java
...main/java/com/pcloud/book/book/biz/QrcodeSceneErpBiz.java
+52
-0
BookAdviserBizImpl.java
...ava/com/pcloud/book/book/biz/impl/BookAdviserBizImpl.java
+2
-0
BookAdviserErpBizImpl.java
.../com/pcloud/book/book/biz/impl/BookAdviserErpBizImpl.java
+99
-0
BookBizImpl.java
.../main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
+287
-3
BookSerialNumberBizImpl.java
...om/pcloud/book/book/biz/impl/BookSerialNumberBizImpl.java
+76
-0
QrcodeSceneErpBizImpl.java
.../com/pcloud/book/book/biz/impl/QrcodeSceneErpBizImpl.java
+73
-0
BookAdviserErpDao.java
...main/java/com/pcloud/book/book/dao/BookAdviserErpDao.java
+17
-0
BookDao.java
...-book/src/main/java/com/pcloud/book/book/dao/BookDao.java
+2
-0
BookSerialNumberDao.java
...in/java/com/pcloud/book/book/dao/BookSerialNumberDao.java
+15
-0
QrcodeSceneErpDao.java
...main/java/com/pcloud/book/book/dao/QrcodeSceneErpDao.java
+16
-0
BookAdviserErpDaoImpl.java
.../com/pcloud/book/book/dao/impl/BookAdviserErpDaoImpl.java
+23
-0
BookDaoImpl.java
.../main/java/com/pcloud/book/book/dao/impl/BookDaoImpl.java
+5
-0
BookSerialNumberDaoImpl.java
...om/pcloud/book/book/dao/impl/BookSerialNumberDaoImpl.java
+20
-0
QrcodeSceneErpDaoImpl.java
.../com/pcloud/book/book/dao/impl/QrcodeSceneErpDaoImpl.java
+23
-0
BookFacade.java
...src/main/java/com/pcloud/book/book/facade/BookFacade.java
+10
-0
BookFacadeImpl.java
...java/com/pcloud/book/book/facade/impl/BookFacadeImpl.java
+16
-2
QrcodeSceneConsr.java
...va/com/pcloud/book/consumer/channel/QrcodeSceneConsr.java
+5
-0
ChannelConsr.java
...main/java/com/pcloud/book/consumer/user/ChannelConsr.java
+15
-0
Book.Mapper.xml
...rvice-book/src/main/resources/mapper/book/Book.Mapper.xml
+21
-2
BookAdviserErp.Mapper.xml
.../src/main/resources/mapper/book/BookAdviserErp.Mapper.xml
+60
-0
BookSerialNumber.Mapper.xml
...rc/main/resources/mapper/book/BookSerialNumber.Mapper.xml
+72
-0
QrcodeSceneErp.Mapper.xml
.../src/main/resources/mapper/book/QrcodeSceneErp.Mapper.xml
+71
-0
No files found.
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/CreateBookResultVO.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dto
;
import
lombok.Data
;
@Data
public
class
CreateBookResultVO
{
private
Long
projectId
;
private
Long
bookId
;
private
Long
adviserId
;
private
Long
channelId
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/CreateBookVO.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@Data
public
class
CreateBookVO
{
@ApiModelProperty
(
"类型编码"
)
private
String
typeCode
;
@ApiModelProperty
(
"书籍ISBN码"
)
private
String
isbn
;
@ApiModelProperty
(
"书籍名称"
)
private
String
bookName
;
@ApiModelProperty
(
"图书价格"
)
private
String
bookPrice
;
@ApiModelProperty
(
"作者"
)
private
String
author
;
@ApiModelProperty
(
"出版社"
)
private
String
publish
;
@ApiModelProperty
(
"封面图"
)
private
String
coverImg
;
@ApiModelProperty
(
"渠道。运营平台"
)
private
Long
channelId
;
@ApiModelProperty
(
"期刊序号"
)
private
String
serialNumber
;
@ApiModelProperty
(
"图书类型"
)
private
Long
templetId
;
@ApiModelProperty
(
"代理标识"
)
private
Long
agentId
;
@ApiModelProperty
(
"是否社群书"
)
private
Boolean
isBookGroup
;
@ApiModelProperty
(
"社群码ID"
)
private
Long
bookGroupId
;
@ApiModelProperty
(
"第二级类型"
)
private
Long
secondTempletId
;
@ApiModelProperty
(
"年级标签id"
)
private
Long
graLabelId
;
@ApiModelProperty
(
"科目标签id"
)
private
Long
subLabelId
;
@ApiModelProperty
(
"版本标签id"
)
private
Long
verLabelId
;
@ApiModelProperty
(
"地域标签id"
)
private
Long
areaLabelId
;
@ApiModelProperty
(
"专业标签ID"
)
private
Long
proLabelId
;
@ApiModelProperty
(
"深度标签ID"
)
private
Long
depLabelId
;
@ApiModelProperty
(
"目的标签ID"
)
private
Long
purLabelId
;
@ApiModelProperty
(
"上下册标签id"
)
private
Long
volLabelId
;
@ApiModelProperty
(
"全局唯一id"
)
private
String
uniqueNumber
;
@ApiModelProperty
(
"创建二维码实体"
)
private
CreateQrcodeVO
createQrcodeVO
;
@ApiModelProperty
(
"项目id"
)
private
Long
projectId
;
@ApiModelProperty
(
"编辑id"
)
private
Long
adviserId
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/CreateQrcodeVO.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@Data
public
class
CreateQrcodeVO
{
@ApiModelProperty
(
value
=
"场景标识"
,
dataType
=
"String"
)
private
String
qrcodeType
;
@ApiModelProperty
(
value
=
"场景名称"
,
dataType
=
"String"
)
private
String
sceneName
;
/**
* 描述
*/
@ApiModelProperty
(
value
=
"描述"
,
dataType
=
"String"
)
private
String
description
;
/**
* 渠道当事人标识
*/
@ApiModelProperty
(
value
=
"渠道当事人标识"
,
dataType
=
"Long"
)
private
Long
channelPartyId
;
@ApiModelProperty
(
value
=
"专业标签标识"
,
dataType
=
"Long"
)
private
Long
proLabelId
;
@ApiModelProperty
(
value
=
"深度标签标识"
,
dataType
=
"Long"
)
private
Long
depLabelId
;
@ApiModelProperty
(
value
=
"目的标签标识"
,
dataType
=
"Long"
)
private
Long
purLabelId
;
@ApiModelProperty
(
value
=
"顾问书籍"
,
dataType
=
"Long"
)
private
Long
adviserBookId
;
@ApiModelProperty
(
value
=
"模板标识"
,
dataType
=
"Long"
)
private
Long
templetId
;
@ApiModelProperty
(
value
=
"印码位置标识"
,
dataType
=
"Long"
)
private
Long
locationId
;
private
String
pageNumLocationId
;
@ApiModelProperty
(
value
=
"位置页码"
,
dataType
=
"String"
)
private
Integer
locationPageNum
;
@ApiModelProperty
(
value
=
"印码位置"
,
dataType
=
"String"
)
private
String
codePosition
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/RelateAdviserVO.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @ClassName: UpdateProjectVO
* @Description:
* @Author: xp_sh
* @Date: 2020/6/28 17:04
* @Version: 1.0
**/
@Data
public
class
RelateAdviserVO
{
@ApiModelProperty
(
"项目ID"
)
private
Long
projectId
;
@ApiModelProperty
(
"RAYS编辑ID"
)
private
Integer
raysAdviserId
;
@ApiModelProperty
(
"关联RAYS书刊ID"
)
private
Integer
raysBookId
;
@ApiModelProperty
(
"关联RAYS渠道ID"
)
private
Integer
raysChannelId
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/entity/Book.java
View file @
ab400b29
...
...
@@ -246,6 +246,16 @@ public class Book extends BaseEntity {
*/
private
String
uniqueNumber
;
/**
* 书籍标识
*/
private
Long
bookAdviserId
;
/**
* 来自ERP的自动创建书刊
*/
private
Integer
fromErp
;
public
String
getUniqueNumber
()
{
return
uniqueNumber
;
}
...
...
@@ -614,6 +624,22 @@ public class Book extends BaseEntity {
this
.
purLabelId
=
purLabelId
;
}
public
Long
getBookAdviserId
()
{
return
bookAdviserId
;
}
public
void
setBookAdviserId
(
Long
bookAdviserId
)
{
this
.
bookAdviserId
=
bookAdviserId
;
}
public
Integer
getFromErp
()
{
return
fromErp
;
}
public
void
setFromErp
(
Integer
fromErp
)
{
this
.
fromErp
=
fromErp
;
}
@Override
public
String
toString
()
{
return
"Book{"
+
...
...
pcloud-facade-book/src/main/java/com/pcloud/book/book/entity/BookAdviserErp.java
0 → 100644
View file @
ab400b29
/**
*
*/
package
com
.
pcloud
.
book
.
book
.
entity
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.common.entity.BaseEntity
;
import
lombok.Data
;
import
java.util.Date
;
/**
* @描述:
*
* @作者:songx
* @创建时间:2016年12月30日,上午11:44:11 @版本:1.0
*/
@Data
public
class
BookAdviserErp
extends
BaseEntity
{
/**
* 书籍编辑标识
*/
private
Long
bookAdviserErpId
;
/**
* 书籍标识
*/
private
Long
bookId
;
/**
* 编辑标识
*/
private
Long
adviserId
;
/**
* 渠道标识
*/
private
Long
channelId
;
/**
* 模板标识
*/
private
Long
templetId
;
/**
* 创建人标识
*/
private
Long
createdUser
;
/**
* 刊物序号
*/
private
String
serialNumber
;
/**
* 是否是主编辑
*/
private
Boolean
isMainEditor
;
/**
* 是否已经被删除 1是 0否
*/
private
Integer
isDelete
;
/**
* 第二级类型
*/
private
Long
secondTempletId
;
/**
* 年级标签id
*/
private
Long
graLabelId
;
/**
* 科目标签id
*/
private
Long
subLabelId
;
/**
* 版本标签id
*/
private
Long
verLabelId
;
/**
* 地域标签id
*/
private
Long
areaLabelId
;
/**
* 是否已下印
*/
private
Boolean
isPrint
;
/**
* 专业标签ID
*/
private
Long
proLabelId
;
/**
* 深度标签ID
*/
private
Long
depLabelId
;
/**
* 目的标签ID
*/
private
Long
purLabelId
;
private
Integer
isOpenRobotProcess
;
/**
* 上下册标签id
*/
private
Long
volLabelId
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
createdDate
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
lastModifiedDate
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/entity/BookSerialNumber.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
entity
;
import
java.util.Date
;
import
java.math.BigDecimal
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* 序号自动生成表(BookSerialNumber)实体类
*
* @author makejava
* @since 2020-08-26 13:58:55
*/
@Data
public
class
BookSerialNumber
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
-
95051806019576407L
;
private
Long
id
;
@ApiModelProperty
(
"isbn"
)
private
String
isbn
;
@ApiModelProperty
(
"序号"
)
private
Long
serialNumber
;
@ApiModelProperty
(
"创建时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
createTime
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/entity/QrcodeSceneErp.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
entity
;
import
java.util.Date
;
import
java.math.BigDecimal
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* ERP自动创建二维码临时表,由于没有 adviserId,所以无法创建二维码,将数据暂存,关联时再创建(QrcodeSceneErp)实体类
*
* @author makejava
* @since 2020-08-26 21:01:47
*/
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
public
class
QrcodeSceneErp
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
462217150676961069L
;
@ApiModelProperty
(
"场景标识"
)
private
Long
sceneErpId
;
@ApiModelProperty
(
"场景编码"
)
private
String
sceneCode
;
@ApiModelProperty
(
"书籍标识"
)
private
Long
bookId
;
private
Long
adviserBookId
;
@ApiModelProperty
(
"图书名称"
)
private
String
bookName
;
@ApiModelProperty
(
"是否有省份配置数据"
)
private
Boolean
haveProvinceMessage
;
@ApiModelProperty
(
"素材标识"
)
private
Long
materialLibId
;
@ApiModelProperty
(
"场景名称"
)
private
String
sceneName
;
@ApiModelProperty
(
"二维码图片url"
)
private
String
qrcodeUrl
;
@ApiModelProperty
(
"场景说明"
)
private
String
description
;
@ApiModelProperty
(
"渠道标识"
)
private
Long
channelPartyId
;
@ApiModelProperty
(
"公众号标识"
)
private
Long
accountSettingId
;
@ApiModelProperty
(
"0未删除 1已删除"
)
private
String
isDelete
;
@ApiModelProperty
(
"是否已被从回收站中删除,“0”未删除,“1”已删除"
)
private
String
isDeleteRecycleBin
;
@ApiModelProperty
(
"图书是否删除 1 已删除 0 未删除"
)
private
Boolean
isBookDelete
;
@ApiModelProperty
(
"二维码图片解析后的地址"
)
private
String
url
;
@ApiModelProperty
(
"创建人角色"
)
private
String
createdUserRole
;
@ApiModelProperty
(
"顾问标识"
)
private
Long
adviserId
;
@ApiModelProperty
(
"用途类型"
)
private
String
purposeType
;
@ApiModelProperty
(
"二维码类型(wechat:微信码 ali:支付宝码)"
)
private
String
qrcodeType
;
@ApiModelProperty
(
"模板标识"
)
private
Long
templetId
;
@ApiModelProperty
(
"来源(1 PC 2 wechat 3 app 4 小程序)"
)
private
Integer
clientCode
;
@ApiModelProperty
(
"创建人"
)
private
Long
createdByUserLogin
;
@ApiModelProperty
(
"创建时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
createdDate
;
@ApiModelProperty
(
"修改人"
)
private
Long
lastModifiedByUserLogin
;
@ApiModelProperty
(
"修改时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
lastModifiedDate
;
@ApiModelProperty
(
"版本"
)
private
Integer
version
;
@ApiModelProperty
(
"审核状态"
)
private
String
auditState
;
@ApiModelProperty
(
"审核人"
)
private
Long
auditUser
;
@ApiModelProperty
(
"审核时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
auditDate
;
@ApiModelProperty
(
"审核原因"
)
private
String
auditReason
;
@ApiModelProperty
(
"审核提交时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
auditSubmitDate
;
@ApiModelProperty
(
"二维码推送封面图"
)
private
String
coverImg
;
@ApiModelProperty
(
"公众号二维码"
)
private
Boolean
isOpenApp
;
private
Integer
locationPageNum
;
@ApiModelProperty
(
value
=
"专业标签标识"
,
dataType
=
"Long"
)
private
Long
proLabelId
;
@ApiModelProperty
(
value
=
"深度标签标识"
,
dataType
=
"Long"
)
private
Long
depLabelId
;
@ApiModelProperty
(
value
=
"目的标签标识"
,
dataType
=
"Long"
)
private
Long
purLabelId
;
@ApiModelProperty
(
value
=
"印码位置标识"
,
dataType
=
"Long"
)
private
Long
locationId
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/BookAdviserErpBiz.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
biz
;
import
com.pcloud.book.book.entity.BookAdviserErp
;
import
com.pcloud.common.page.PageBeanNew
;
import
java.util.List
;
/**
* 书与编辑临时关联表,供ERP自动创建书刊时使用,由于没有adviserId,所以暂存(BookAdviserErp)表服务接口
*
* @author makejava
* @since 2020-08-26 15:41:12
*/
public
interface
BookAdviserErpBiz
{
/**
* 通过ID查询单条数据
*
* @param bookAdviserErpId 主键
* @return 实例对象
*/
BookAdviserErp
getById
(
Long
bookAdviserErpId
);
/**
* 新增数据
*
* @param bookAdviserErp 实例对象
* @return 主键
*/
Long
create
(
BookAdviserErp
bookAdviserErp
);
/**
* 修改数据
*
* @param bookAdviserErp 实例对象
*/
void
update
(
BookAdviserErp
bookAdviserErp
);
BookAdviserErp
getByBookId
(
Long
bookId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/BookBiz.java
View file @
ab400b29
...
...
@@ -11,6 +11,9 @@ import com.pcloud.book.book.dto.BookDto;
import
com.pcloud.book.book.dto.BookInfo4AnlysicsDTO
;
import
com.pcloud.book.book.dto.BookInfoAnalysicsDTO
;
import
com.pcloud.book.book.dto.BookInfoAndAuthStatusDTO
;
import
com.pcloud.book.book.dto.CreateBookResultVO
;
import
com.pcloud.book.book.dto.CreateBookVO
;
import
com.pcloud.book.book.dto.RelateAdviserVO
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.entity.BookLabel
;
import
com.pcloud.book.book.vo.BookQualifyVO
;
...
...
@@ -668,4 +671,8 @@ public interface BookBiz {
Map
<
Integer
,
List
<
BookLabel
>>
getBookLabels4Erp
();
void
relateUniqueNumber4Erp
(
List
<
BookUniqueNumberDTO
>
bookUniqueNumberVos
);
void
relateBookAdviser4Erp
(
RelateAdviserVO
relateAdviserVO
);
List
<
CreateBookResultVO
>
batchCreateBook4Erp
(
List
<
CreateBookVO
>
createBookVOList
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/BookSerialNumberBiz.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
biz
;
import
com.pcloud.book.book.entity.BookSerialNumber
;
import
com.pcloud.common.page.PageBeanNew
;
/**
* 序号自动生成表(BookSerialNumber)表服务接口
*
* @author makejava
* @since 2020-08-26 14:04:04
*/
public
interface
BookSerialNumberBiz
{
/**
* 通过ID查询单条数据
*
* @param id 主键
* @return 实例对象
*/
BookSerialNumber
getById
(
Long
id
);
/**
* 分页查询
*/
PageBeanNew
getList
(
Integer
currentPage
,
Integer
numPerPage
);
/**
* 新增数据
*
* @return 主键
*/
void
insert
(
BookSerialNumber
bookSerialNumber
);
/**
* 修改数据
*
* @param bookSerialNumber 实例对象
*/
void
update
(
BookSerialNumber
bookSerialNumber
);
/**
* 通过主键删除数据
*
* @param id 主键
* @return 是否成功
*/
void
deleteById
(
Long
id
);
BookSerialNumber
getByIsbn
(
String
isbn
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/QrcodeSceneErpBiz.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
biz
;
import
com.pcloud.book.book.entity.QrcodeSceneErp
;
import
com.pcloud.common.page.PageBeanNew
;
import
java.util.List
;
/**
* ERP自动创建二维码临时表,由于没有 adviserId,所以无法创建二维码,将数据暂存,关联时再创建(QrcodeSceneErp)表服务接口
*
* @author makejava
* @since 2020-08-26 21:00:12
*/
public
interface
QrcodeSceneErpBiz
{
/**
* 通过ID查询单条数据
*
* @param sceneErpId 主键
* @return 实例对象
*/
QrcodeSceneErp
getById
(
Long
sceneErpId
);
/**
* 分页查询
*/
PageBeanNew
getList
(
Integer
currentPage
,
Integer
numPerPage
);
/**
* 新增数据
*
* @param qrcodeSceneErp 实例对象
* @return 主键
*/
Long
insert
(
QrcodeSceneErp
qrcodeSceneErp
);
/**
* 修改数据
*
* @param qrcodeSceneErp 实例对象
*/
void
update
(
QrcodeSceneErp
qrcodeSceneErp
);
/**
* 通过主键删除数据
*
* @param sceneErpId 主键
* @return 是否成功
*/
void
deleteById
(
Long
sceneErpId
);
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookAdviserBizImpl.java
View file @
ab400b29
...
...
@@ -187,6 +187,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
if
(
dtoByBookId
!=
null
){
bookGroupBiz
.
createBookGroupAppletUrl
(
dtoByBookId
.
getId
(),
bookAdviser
.
getBookId
(),
bookAdviser
.
getChannelId
(),
bookAdviser
.
getAdviserId
());
}
bookAdviser
.
setBookAdviserId
(
bookAdviserDto
.
getBookAdviserId
());
return
;
}
...
...
@@ -196,6 +197,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookAdviser
.
getTempletId
(),
bookAdviser
.
getSecondTempletId
(),
bookAdviser
.
getGraLabelId
(),
bookAdviser
.
getSubLabelId
(),
bookAdviser
.
getVerLabelId
(),
bookAdviser
.
getAreaLabelId
(),
false
);
bookAdviser
.
setBookAdviserId
(
bookAdviserDto
.
getBookAdviserId
());
}
else
{
// 判断是否配置过该书籍推广信息
checkIsHaveOtherAdviser
(
bookAdviser
.
getBookId
(),
bookAdviser
.
getChannelId
(),
bookAdviser
.
getAdviserId
());
...
...
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookAdviserErpBizImpl.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
biz
.
impl
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.constant.BookConstant
;
import
com.pcloud.book.book.dto.BookAdviserDto
;
import
com.pcloud.book.book.entity.BookAdviser
;
import
com.pcloud.book.book.entity.BookAdviserErp
;
import
com.pcloud.book.book.dao.BookAdviserErpDao
;
import
com.pcloud.book.book.biz.BookAdviserErpBiz
;
import
com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.NumberUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.dao.DataIntegrityViolationException
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.Collections
;
import
java.util.List
;
/**
* 书与编辑临时关联表,供ERP自动创建书刊时使用,由于没有adviserId,所以暂存(BookAdviserErp)表服务实现类
*
* @author makejava
* @since 2020-08-26 15:41:12
*/
@Service
(
"bookAdviserErpBiz"
)
public
class
BookAdviserErpBizImpl
implements
BookAdviserErpBiz
{
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
BookAdviserErpBizImpl
.
class
);
@Autowired
private
BookAdviserErpDao
bookAdviserErpDao
;
@Override
@ParamLog
(
"通过ID查询单条数据"
)
public
BookAdviserErp
getById
(
Long
bookAdviserErpId
)
{
return
bookAdviserErpDao
.
getById
(
bookAdviserErpId
);
}
/**
* 创建编辑管理书籍关系
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Long
create
(
BookAdviserErp
bookAdviserErp
)
{
LOGGER
.
info
(
"创建编辑与书籍关联关系【START】bookAdviserErp="
+
bookAdviserErp
);
checkParam
(
bookAdviserErp
);
try
{
// 默认是主编辑
bookAdviserErp
.
setIsMainEditor
(
true
);
bookAdviserErpDao
.
insert
(
bookAdviserErp
);
return
bookAdviserErp
.
getBookAdviserErpId
();
// BookGroupDTO dtoByBookId = bookGroupBiz.getDTOByBookId(bookAdviserErp.getBookId(), bookAdviserErp.getChannelId(), bookAdviserErp.getAdviserId());
// if(dtoByBookId != null){
// bookGroupBiz.createBookGroupAppletUrl(dtoByBookId.getId(),bookAdviserErp.getBookId(),bookAdviserErp.getChannelId(), bookAdviserErp.getAdviserId());
// }
}
catch
(
DataIntegrityViolationException
e
)
{
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"该书刊已经被别的编辑添加过"
);
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"【书籍-编辑】编辑设置书籍推广信息,<ERROR>.[bookAdviserErpDao.insert]"
+
e
.
getMessage
(),
e
);
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"设置书刊推广信息失败"
);
}
}
/**
* 校验参数
* @param bookAdviserErp
*/
private
void
checkParam
(
BookAdviserErp
bookAdviserErp
)
{
if
(
bookAdviserErp
.
getBookId
()
==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"请选择书刊"
);
}
// if (bookAdviserErp.getChannelId() == null) {
// throw new BookBizException(BookBizException.PARAM_IS_NULL, "请选择运营平台");
// }
}
@Override
@ParamLog
(
"修改"
)
public
void
update
(
BookAdviserErp
bookAdviserErp
)
{
if
(
bookAdviserErp
==
null
||
!
NumberUtil
.
isNumber
(
bookAdviserErp
.
getBookAdviserErpId
())){
throw
BizException
.
PARAM_IS_NULL
;
}
bookAdviserErpDao
.
update
(
bookAdviserErp
);
}
@Override
public
BookAdviserErp
getByBookId
(
Long
bookId
)
{
return
bookAdviserErpDao
.
getByBookId
(
bookId
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
View file @
ab400b29
...
...
@@ -18,18 +18,21 @@ import com.pcloud.book.base.enums.BookStatusEnum;
import
com.pcloud.book.base.enums.BookTypeEnum
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.biz.BookAdviserBiz
;
import
com.pcloud.book.book.biz.BookAdviserErpBiz
;
import
com.pcloud.book.book.biz.BookAppBiz
;
import
com.pcloud.book.book.biz.BookBiz
;
import
com.pcloud.book.book.biz.BookFreezeBiz
;
import
com.pcloud.book.book.biz.BookFundBiz
;
import
com.pcloud.book.book.biz.BookProductBiz
;
import
com.pcloud.book.book.biz.BookResourceBiz
;
import
com.pcloud.book.book.biz.BookSerialNumberBiz
;
import
com.pcloud.book.book.cache.BookCache
;
import
com.pcloud.book.book.constant.BookConstant
;
import
com.pcloud.book.book.dao.BookAdviserDao
;
import
com.pcloud.book.book.dao.BookDao
;
import
com.pcloud.book.book.dao.BookLabelDao
;
import
com.pcloud.book.book.dao.BookRaysClassifyDao
;
import
com.pcloud.book.book.dao.QrcodeSceneErpDao
;
import
com.pcloud.book.book.dto.AdviserBookInfoDTO
;
import
com.pcloud.book.book.dto.BookAdviserDto
;
import
com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO
;
...
...
@@ -43,9 +46,16 @@ import com.pcloud.book.book.dto.BookInfo4AnlysicsDTO;
import
com.pcloud.book.book.dto.BookInfoAnalysicsDTO
;
import
com.pcloud.book.book.dto.BookInfoAndAuthStatusDTO
;
import
com.pcloud.book.book.dto.BookNameUpdateDTO
;
import
com.pcloud.book.book.dto.CreateBookResultVO
;
import
com.pcloud.book.book.dto.CreateBookVO
;
import
com.pcloud.book.book.dto.CreateQrcodeVO
;
import
com.pcloud.book.book.dto.RelateAdviserVO
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.entity.BookAdviser
;
import
com.pcloud.book.book.entity.BookAdviserErp
;
import
com.pcloud.book.book.entity.BookLabel
;
import
com.pcloud.book.book.entity.BookSerialNumber
;
import
com.pcloud.book.book.entity.QrcodeSceneErp
;
import
com.pcloud.book.book.set.BookSet
;
import
com.pcloud.book.book.tools.BookTools
;
import
com.pcloud.book.book.vo.BookQualifyVO
;
...
...
@@ -78,10 +88,14 @@ import com.pcloud.book.group.dao.BookAppletSceneDao;
import
com.pcloud.book.group.dao.BookGroupDao
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.book.group.entity.BookAppletScene
;
import
com.pcloud.book.group.entity.BookGroup
;
import
com.pcloud.book.group.enums.JoinGroupTypeEnum
;
import
com.pcloud.book.mq.producer.BookMQProducer
;
import
com.pcloud.book.rightsSetting.mapper.RightsSettingBookRelationMapper
;
import
com.pcloud.book.util.common.ThreadPoolUtils
;
import
com.pcloud.channelcenter.qrcode.entity.QrcodeLabel
;
import
com.pcloud.channelcenter.qrcode.entity.QrcodeScene
;
import
com.pcloud.channelcenter.qrcode.entity.QrcodeStyle
;
import
com.pcloud.channelcenter.wechat.dto.BookServeParamVO
;
import
com.pcloud.channelcenter.wechat.vo.BookServeVO
;
import
com.pcloud.common.core.aspect.ParamLog
;
...
...
@@ -94,6 +108,7 @@ import com.pcloud.common.page.PageBeanNew;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.utils.DateUtils
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.NumberUtil
;
import
com.pcloud.common.utils.cache.redis.JedisClusterUtils
;
import
com.pcloud.common.utils.string.StringUtil
;
import
com.pcloud.commoncenter.export.service.ExportService
;
...
...
@@ -105,6 +120,7 @@ import org.slf4j.Logger;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.dao.DuplicateKeyException
;
import
org.springframework.data.domain.Page
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
...
...
@@ -113,6 +129,7 @@ import org.springframework.util.CollectionUtils;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Calendar
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.HashMap
;
...
...
@@ -121,6 +138,7 @@ import java.util.Map;
import
java.util.Objects
;
import
java.util.Optional
;
import
java.util.Random
;
import
java.util.UUID
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.Executors
;
import
java.util.stream.Collectors
;
...
...
@@ -211,9 +229,12 @@ public class BookBizImpl implements BookBiz {
@Autowired
private
AppletBookClassifyBiz
appletBookClassifyBiz
;
@Autowired
private
BookSerialNumberBiz
bookSerialNumberBiz
;
@Autowired
private
BookAdviserErpBiz
bookAdviserErpBiz
;
@Autowired
private
QrcodeSceneErpDao
qrcodeSceneErpDao
;
...
...
@@ -1627,6 +1648,7 @@ public class BookBizImpl implements BookBiz {
bookAdviser
.
setIsOpenRobotProcess
(
0
);
}
bookAdviserBiz
.
create
(
bookAdviser
);
book
.
setBookAdviserId
(
bookAdviser
.
getBookAdviserId
());
}
@Override
...
...
@@ -2436,4 +2458,266 @@ public class BookBizImpl implements BookBiz {
}
bookDao
.
relateUniqueNumber4Erp
(
bookUniqueNumberVos
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
relateBookAdviser4Erp
(
RelateAdviserVO
relateAdviserVO
){
if
(
null
==
relateAdviserVO
||
null
==
relateAdviserVO
.
getProjectId
()
||
null
==
relateAdviserVO
.
getRaysAdviserId
()
||
null
==
relateAdviserVO
.
getRaysBookId
()
||
null
==
relateAdviserVO
.
getRaysChannelId
()){
throw
new
BizException
(
BizException
.
PARAM_IS_NULL
.
getCode
(),
"参数缺失"
);
}
Long
bookId
=
relateAdviserVO
.
getRaysBookId
().
longValue
();
BookAdviserErp
bookAdviserErp
=
bookAdviserErpBiz
.
getByBookId
(
bookId
.
longValue
());
QrcodeSceneErp
qrcodeSceneErp
=
qrcodeSceneErpDao
.
getByBookId
(
bookId
.
longValue
());
if
(
bookAdviserErp
==
null
||
qrcodeSceneErp
==
null
){
throw
new
BizException
(
BizException
.
PARAM_IS_NULL
.
getCode
(),
"未找到与 bookId 匹配的相关信息,无法进行关联"
);
}
// 更新创建人
Book
updateBook
=
new
Book
();
updateBook
.
setCreatedUser
(
relateAdviserVO
.
getRaysAdviserId
().
longValue
());
updateBook
.
setLastModifiedUser
(
relateAdviserVO
.
getRaysAdviserId
().
longValue
());
bookDao
.
updateByPrimaryKeySelective
(
updateBook
);
// 创建书和编辑关系
Book
book
=
new
Book
();
BeanUtils
.
copyProperties
(
bookAdviserErp
,
book
);
book
.
setBookAdviserId
(
relateAdviserVO
.
getRaysAdviserId
().
longValue
());
book
.
setCreatedUser
(
relateAdviserVO
.
getRaysAdviserId
().
longValue
());
book
.
setChannelId
(
relateAdviserVO
.
getRaysChannelId
().
longValue
());
book
.
setIsBookGroup
(
bookAdviserErp
.
getIsOpenRobotProcess
()
==
1
);
createBookAdviserRelation
(
book
);
if
(
null
!=
bookAdviserErp
.
getIsOpenRobotProcess
()
&&
bookAdviserErp
.
getIsOpenRobotProcess
()
==
1
){
// 小睿书
BookGroupDTO
bookGroupDTO
=
bookGroupBiz
.
getBookGroupInfoByBookId
(
book
.
getBookId
(),
book
.
getChannelId
(),
book
.
getCreatedUser
(),
null
,
null
,
4
);
BookGroup
bookGroup
=
new
BookGroup
();
bookGroup
.
setId
(
bookGroupDTO
.
getId
());
bookGroup
.
setAddFriendGuide
(
"嗨,你好!我是您的专属学习助手。我会根据您的需求量身定制学习计划与学习内容,提高您的学习效率,提升您的语文学习能力"
);
bookGroup
.
setGroupQrcodeName
(
qrcodeSceneErp
.
getSceneName
());
bookGroup
.
setGroupQrcodeLocationId
(
qrcodeSceneErp
.
getLocationId
().
intValue
());
bookGroup
.
setJoinGroupType
(
4
);
bookGroupBiz
.
updateBookGroup
(
bookGroup
);
}
else
{
ThreadPoolUtils
.
OTHER_THREAD_POOL
.
execute
(()->
{
// 现代纸书创建二维码
QrcodeScene
qrcodeScene
=
new
QrcodeScene
();
BeanUtils
.
copyProperties
(
qrcodeSceneErp
,
qrcodeScene
);
qrcodeScene
.
setAdviserBookId
(
bookId
);
qrcodeScene
.
setCreatedByUserLogin
(
relateAdviserVO
.
getRaysAdviserId
().
longValue
());
qrcodeScene
.
setLastModifiedByUserLogin
(
relateAdviserVO
.
getRaysAdviserId
().
longValue
());
qrcodeScene
.
setChannelPartyId
(
relateAdviserVO
.
getRaysChannelId
().
longValue
());
QrcodeLabel
qrcodeLabel
=
new
QrcodeLabel
();
qrcodeLabel
.
setProLabelId
(
qrcodeSceneErp
.
getProLabelId
());
qrcodeLabel
.
setDepLabelId
(
qrcodeSceneErp
.
getDepLabelId
());
qrcodeLabel
.
setPurLabelId
(
qrcodeSceneErp
.
getPurLabelId
());
qrcodeScene
.
setQrcodeLabel
(
qrcodeLabel
);
QrcodeStyle
qrcodeStyle
=
new
QrcodeStyle
();
qrcodeStyle
.
setStyleType
(
0
);
qrcodeScene
.
setQrcodeStyle
(
qrcodeStyle
);
qrcodeSceneConsr
.
createQrcodeScene4Erp
(
qrcodeScene
);
});
}
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
List
<
CreateBookResultVO
>
batchCreateBook4Erp
(
List
<
CreateBookVO
>
createBookVOList
){
List
<
CreateBookResultVO
>
resultList
=
Lists
.
newArrayList
();
if
(
CollectionUtils
.
isEmpty
(
createBookVOList
)){
return
resultList
;
}
this
.
checkLabel
(
createBookVOList
);
this
.
fillDefaultChannel
(
createBookVOList
);
Book
book
;
CreateBookResultVO
createBookResultVO
;
for
(
CreateBookVO
createBookVO
:
createBookVOList
)
{
book
=
new
Book
();
BeanUtils
.
copyProperties
(
createBookVO
,
book
);
book
.
setCreatedUser
(
createBookVO
.
getAdviserId
());
book
.
setLastModifiedUser
(
createBookVO
.
getAdviserId
());
book
.
setFromErp
(
1
);
// 创建现代纸书或者小睿书
this
.
create4Erp
(
book
);
// 创建二维码
this
.
createQrcode4Erp
(
createBookVO
,
book
);
// 构建返回值
createBookResultVO
=
new
CreateBookResultVO
();
createBookResultVO
.
setProjectId
(
createBookVO
.
getProjectId
());
createBookResultVO
.
setBookId
(
book
.
getBookId
());
createBookResultVO
.
setAdviserId
(
createBookVO
.
getAdviserId
());
createBookResultVO
.
setChannelId
(
createBookVO
.
getChannelId
());
resultList
.
add
(
createBookResultVO
);
}
return
resultList
;
}
private
void
checkLabel
(
List
<
CreateBookVO
>
createBookVOList
)
{
for
(
CreateBookVO
createBookVO
:
createBookVOList
)
{
if
(!
createBookVO
.
getIsBookGroup
()
&&
(!
NumberUtil
.
isNumber
(
createBookVO
.
getCreateQrcodeVO
().
getProLabelId
())
||
!
NumberUtil
.
isNumber
(
createBookVO
.
getCreateQrcodeVO
().
getDepLabelId
())
||
!
NumberUtil
.
isNumber
(
createBookVO
.
getCreateQrcodeVO
().
getPurLabelId
())))
{
throw
new
BizException
(
BizException
.
PARAM_IS_NULL
.
getCode
(),
"二维码标签不能为空!"
);
}
}
}
private
void
fillDefaultChannel
(
List
<
CreateBookVO
>
createBookVOList
)
{
CreateBookVO
createBookVOFirst
=
createBookVOList
.
stream
().
findFirst
().
get
();
// 如果是小睿书,并且 channelId 为空,且 adviserId 有值,则获取编辑的默认渠道
if
(
null
!=
createBookVOFirst
.
getIsBookGroup
()
&&
createBookVOFirst
.
getIsBookGroup
()
&&
!
NumberUtil
.
isNumber
(
createBookVOFirst
.
getChannelId
())
&&
NumberUtil
.
isNumber
(
createBookVOFirst
.
getAdviserId
())){
Long
defaultChannelId
=
channelConsr
.
getDefaultChannelId
(
createBookVOFirst
.
getAdviserId
());
// 因为是批量创建,所以所有的编辑是同一个,渠道也是同一个
for
(
CreateBookVO
createBookVO
:
createBookVOList
)
{
createBookVO
.
setChannelId
(
defaultChannelId
);
}
}
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
createQrcode4Erp
(
CreateBookVO
createBookVO
,
Book
book
)
{
if
(
NumberUtil
.
isNumber
(
book
.
getBookAdviserId
())){
// 正常创建二维码
if
(
book
.
getIsBookGroup
()){
// 小睿二维码
BookGroupDTO
bookGroupDTO
=
bookGroupBiz
.
getBookGroupInfoByBookId
(
book
.
getBookId
(),
book
.
getChannelId
(),
book
.
getCreatedUser
(),
null
,
null
,
4
);
BookGroup
bookGroup
=
new
BookGroup
();
bookGroup
.
setId
(
bookGroupDTO
.
getId
());
bookGroup
.
setAddFriendGuide
(
"嗨,你好!我是您的专属学习助手。我会根据您的需求量身定制学习计划与学习内容,提高您的学习效率,提升您的语文学习能力"
);
bookGroup
.
setGroupQrcodeName
(
createBookVO
.
getCreateQrcodeVO
().
getSceneName
());
bookGroup
.
setGroupQrcodeLocationId
(
createBookVO
.
getCreateQrcodeVO
().
getLocationId
().
intValue
());
bookGroup
.
setJoinGroupType
(
4
);
bookGroupBiz
.
updateBookGroup
(
bookGroup
);
}
else
{
ThreadPoolUtils
.
OTHER_THREAD_POOL
.
execute
(()->{
// 现代纸书二维码
QrcodeScene
qrcodeScene
=
new
QrcodeScene
();
CreateQrcodeVO
createQrcodeVO
=
createBookVO
.
getCreateQrcodeVO
();
BeanUtils
.
copyProperties
(
createQrcodeVO
,
qrcodeScene
);
qrcodeScene
.
setAdviserBookId
(
book
.
getBookId
());
qrcodeScene
.
setCreatedByUserLogin
(
book
.
getCreatedUser
());
qrcodeScene
.
setLastModifiedByUserLogin
(
book
.
getCreatedUser
());
qrcodeScene
.
setChannelPartyId
(
book
.
getChannelId
());
qrcodeScene
.
setClientCode
(
1
);
QrcodeLabel
qrcodeLabel
=
new
QrcodeLabel
();
qrcodeLabel
.
setProLabelId
(
createQrcodeVO
.
getProLabelId
());
qrcodeLabel
.
setDepLabelId
(
createQrcodeVO
.
getDepLabelId
());
qrcodeLabel
.
setPurLabelId
(
createQrcodeVO
.
getPurLabelId
());
qrcodeScene
.
setQrcodeLabel
(
qrcodeLabel
);
QrcodeStyle
qrcodeStyle
=
new
QrcodeStyle
();
qrcodeStyle
.
setStyleType
(
0
);
qrcodeScene
.
setQrcodeStyle
(
qrcodeStyle
);
qrcodeSceneConsr
.
createQrcodeScene4Erp
(
qrcodeScene
);
});
}
}
else
{
// 小睿码
// 存储qrcode创建参数,待关联时创建二维码
QrcodeSceneErp
qrcodeSceneErp
=
new
QrcodeSceneErp
();
BeanUtils
.
copyProperties
(
createBookVO
.
getCreateQrcodeVO
(),
qrcodeSceneErp
);
qrcodeSceneErp
.
setClientCode
(
1
);
qrcodeSceneErp
.
setBookId
(
book
.
getBookId
());
qrcodeSceneErpDao
.
insert
(
qrcodeSceneErp
);
}
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
BookDto
create4Erp
(
Book
book
)
{
LOGGER
.
info
(
"Erp自动创建图书book="
+
book
);
this
.
checkAddParam
(
book
);
// if (book.getChannelId() == null) {
// throw new BookBizException(BookBizException.PARAM_IS_NULL, "请选择运营平台");
// }
if
(
Objects
.
isNull
(
book
.
getTempletId
())
||
Objects
.
isNull
(
book
.
getSecondTempletId
()))
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"请选择书刊分类"
);
}
// 校验书号
bookSet
.
checkISBN
(
book
.
getTypeCode
(),
book
.
getIsbn
());
BookDto
bookDto
;
while
(
true
){
bookDto
=
bookDao
.
getByIsbnAndSnum
(
book
.
getIsbn
(),
book
.
getSerialNumber
());
if
(
bookDto
==
null
)
{
break
;
}
// 图书已存在,重新生成序号
book
.
setSerialNumber
(
this
.
builderSerialNumber
(
book
.
getIsbn
()));
}
// 新增图书
bookDao
.
insert
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
// 查看现代纸书是否存在
BookGroupDTO
dtoByBookId
=
null
;
if
(
NumberUtil
.
isNumber
(
book
.
getChannelId
())
&&
book
.
getChannelId
()
>
0
&&
NumberUtil
.
isNumber
(
book
.
getCreatedUser
())
&&
book
.
getCreatedUser
()
>
0
){
dtoByBookId
=
bookGroupBiz
.
getDTOByBookId
(
book
.
getBookId
(),
book
.
getChannelId
(),
book
.
getCreatedUser
());
// 新增图书与编辑关联关系
createBookAdviserRelation
(
book
);
}
else
{
// 如果没有编辑id,暂时将数据存放到临时表,后续关联编辑时再建立关系
createBookAdviserErpRelation
(
book
);
}
// 书籍总数缓存加1
bookCache
.
incrObject
(
BookConstant
.
BOOK_CACHE
+
"PLATFORM_BOOK_COUNT"
);
bookDto
=
bookDao
.
getByIsbnAndSnum
(
book
.
getIsbn
(),
book
.
getSerialNumber
());
bookDto
.
setChannelId
(
book
.
getChannelId
());
// 关联社群码和社群书信息
if
(
null
!=
book
.
getIsBookGroup
()
&&
book
.
getIsBookGroup
()
&&
null
!=
book
.
getBookGroupId
())
{
bookGroupBiz
.
linkBookGroup
(
book
.
getBookId
(),
book
.
getBookGroupId
(),
book
.
getCreatedUser
());
}
bookDto
.
setIsDelete
(
null
==
dtoByBookId
?
1
:
dtoByBookId
.
getIsDelete
()
?
1
:
0
);
return
bookDto
;
}
/**
* 新增图书与编辑关联关系
* @param book
*/
void
createBookAdviserErpRelation
(
Book
book
)
{
BookAdviserErp
bookAdviserErp
=
new
BookAdviserErp
();
bookAdviserErp
.
setBookId
(
book
.
getBookId
());
bookAdviserErp
.
setAdviserId
(
book
.
getCreatedUser
());
bookAdviserErp
.
setChannelId
(
book
.
getChannelId
());
bookAdviserErp
.
setCreatedUser
(
book
.
getCreatedUser
());
bookAdviserErp
.
setTempletId
(
book
.
getTempletId
());
bookAdviserErp
.
setSecondTempletId
(
book
.
getSecondTempletId
());
bookAdviserErp
.
setSubLabelId
(
book
.
getSubLabelId
());
bookAdviserErp
.
setGraLabelId
(
book
.
getGraLabelId
());
bookAdviserErp
.
setAreaLabelId
(
book
.
getAreaLabelId
());
bookAdviserErp
.
setVerLabelId
(
book
.
getVerLabelId
());
bookAdviserErp
.
setProLabelId
(
book
.
getProLabelId
());
bookAdviserErp
.
setDepLabelId
(
book
.
getDepLabelId
());
bookAdviserErp
.
setPurLabelId
(
book
.
getPurLabelId
());
bookAdviserErp
.
setVolLabelId
(
book
.
getVolLabelId
());
if
(
book
.
getIsBookGroup
()!=
null
&&
book
.
getIsBookGroup
()){
bookAdviserErp
.
setIsOpenRobotProcess
(
1
);
}
else
{
bookAdviserErp
.
setIsOpenRobotProcess
(
0
);
}
bookAdviserErpBiz
.
create
(
bookAdviserErp
);
}
/**
* 生成书刊序号
* @return
*/
private
String
builderSerialNumber
(
String
isbn
)
{
BookSerialNumber
bookSerialNumber
=
bookSerialNumberBiz
.
getByIsbn
(
isbn
);
if
(
bookSerialNumber
==
null
){
bookSerialNumber
=
new
BookSerialNumber
();
bookSerialNumber
.
setIsbn
(
isbn
);
bookSerialNumber
.
setSerialNumber
(
1L
);
try
{
bookSerialNumberBiz
.
insert
(
bookSerialNumber
);
}
catch
(
DuplicateKeyException
e
){
bookSerialNumber
=
new
BookSerialNumber
();
bookSerialNumber
.
setIsbn
(
isbn
);
bookSerialNumberBiz
.
update
(
bookSerialNumber
);
}
}
else
{
bookSerialNumber
=
new
BookSerialNumber
();
bookSerialNumber
.
setIsbn
(
isbn
);
bookSerialNumberBiz
.
update
(
bookSerialNumber
);
}
Calendar
date
=
Calendar
.
getInstance
();
String
year
=
String
.
valueOf
(
date
.
get
(
Calendar
.
YEAR
));
return
year
+
bookSerialNumber
.
getSerialNumber
();
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookSerialNumberBizImpl.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
biz
.
impl
;
import
com.pcloud.book.book.dao.BookSerialNumberDao
;
import
com.pcloud.book.book.biz.BookSerialNumberBiz
;
import
com.pcloud.book.book.entity.BookSerialNumber
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.NumberUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* 序号自动生成表(BookSerialNumber)表服务实现类
*
* @author makejava
* @since 2020-08-26 14:04:04
*/
@Service
(
"bookSerialNumberBiz"
)
public
class
BookSerialNumberBizImpl
implements
BookSerialNumberBiz
{
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
BookSerialNumberBizImpl
.
class
);
@Autowired
private
BookSerialNumberDao
bookSerialNumberDao
;
@Override
@ParamLog
(
"通过ID查询单条数据"
)
public
BookSerialNumber
getById
(
Long
id
)
{
return
bookSerialNumberDao
.
getById
(
id
);
}
@Override
@ParamLog
(
"查询多条数据"
)
public
PageBeanNew
getList
(
Integer
currentPage
,
Integer
numPerPage
)
{
PageBeanNew
pageBeanNew
=
bookSerialNumberDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
null
,
"getList"
);
List
recordList
=
pageBeanNew
.
getRecordList
();
if
(
ListUtils
.
isEmpty
(
recordList
)){
return
pageBeanNew
;
}
// 加载其它数据
return
pageBeanNew
;
}
@Override
@ParamLog
(
"新增"
)
public
void
insert
(
BookSerialNumber
bookSerialNumber
)
{
bookSerialNumberDao
.
insert
(
bookSerialNumber
);
}
@Override
@ParamLog
(
"修改"
)
public
void
update
(
BookSerialNumber
bookSerialNumber
)
{
if
(
bookSerialNumber
==
null
){
throw
BizException
.
PARAM_IS_NULL
;
}
bookSerialNumberDao
.
update
(
bookSerialNumber
);
}
@Override
@ParamLog
(
"删除"
)
public
void
deleteById
(
Long
id
)
{
bookSerialNumberDao
.
deleteById
(
id
);
}
@Override
public
BookSerialNumber
getByIsbn
(
String
isbn
)
{
return
bookSerialNumberDao
.
getByIsbn
(
isbn
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/QrcodeSceneErpBizImpl.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
biz
.
impl
;
import
com.pcloud.book.book.entity.QrcodeSceneErp
;
import
com.pcloud.book.book.dao.QrcodeSceneErpDao
;
import
com.pcloud.book.book.biz.QrcodeSceneErpBiz
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.NumberUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* ERP自动创建二维码临时表,由于没有 adviserId,所以无法创建二维码,将数据暂存,关联时再创建(QrcodeSceneErp)表服务实现类
*
* @author makejava
* @since 2020-08-26 21:00:12
*/
@Service
(
"qrcodeSceneErpBiz"
)
public
class
QrcodeSceneErpBizImpl
implements
QrcodeSceneErpBiz
{
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
QrcodeSceneErpBizImpl
.
class
);
@Autowired
private
QrcodeSceneErpDao
qrcodeSceneErpDao
;
@Override
@ParamLog
(
"通过ID查询单条数据"
)
public
QrcodeSceneErp
getById
(
Long
sceneErpId
)
{
return
qrcodeSceneErpDao
.
getById
(
sceneErpId
);
}
@Override
@ParamLog
(
"查询多条数据"
)
public
PageBeanNew
getList
(
Integer
currentPage
,
Integer
numPerPage
)
{
PageBeanNew
pageBeanNew
=
qrcodeSceneErpDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
null
,
"getList"
);
List
recordList
=
pageBeanNew
.
getRecordList
();
if
(
ListUtils
.
isEmpty
(
recordList
)){
return
pageBeanNew
;
}
// 加载其它数据
return
pageBeanNew
;
}
@Override
@ParamLog
(
"新增"
)
public
Long
insert
(
QrcodeSceneErp
qrcodeSceneErp
)
{
qrcodeSceneErpDao
.
insert
(
qrcodeSceneErp
);
return
qrcodeSceneErp
.
getSceneErpId
();
}
@Override
@ParamLog
(
"修改"
)
public
void
update
(
QrcodeSceneErp
qrcodeSceneErp
)
{
if
(
qrcodeSceneErp
==
null
||
!
NumberUtil
.
isNumber
(
qrcodeSceneErp
.
getSceneErpId
())){
throw
BizException
.
PARAM_IS_NULL
;
}
qrcodeSceneErpDao
.
update
(
qrcodeSceneErp
);
}
@Override
@ParamLog
(
"删除"
)
public
void
deleteById
(
Long
sceneErpId
)
{
qrcodeSceneErpDao
.
deleteById
(
sceneErpId
);
}
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/BookAdviserErpDao.java
0 → 100644
View file @
ab400b29
/**
*
*/
package
com
.
pcloud
.
book
.
book
.
dao
;
import
com.pcloud.book.book.entity.BookAdviserErp
;
import
com.pcloud.common.core.dao.BaseDao
;
/**
* @描述:编辑管理书籍数据访问层接口类
* @作者:songx
* @创建时间:2016年12月30日,下午5:15:22 @版本:1.0
*/
public
interface
BookAdviserErpDao
extends
BaseDao
<
BookAdviserErp
>
{
BookAdviserErp
getByBookId
(
Long
bookId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/BookDao.java
View file @
ab400b29
...
...
@@ -356,4 +356,6 @@ public interface BookDao extends BaseDao<Book> {
List
<
AdviserBookInfoDTO
>
getBookAdviserInfos
(
List
<
Long
>
bookIds
);
void
relateUniqueNumber4Erp
(
List
<
BookUniqueNumberDTO
>
bookUniqueNumberVos
);
void
updateByPrimaryKeySelective
(
Book
book
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/BookSerialNumberDao.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dao
;
import
com.pcloud.book.book.entity.BookSerialNumber
;
import
com.pcloud.common.core.dao.BaseDao
;
/**
* 序号自动生成表(BookSerialNumber)表数据库访问层
*
* @author makejava
* @since 2020-08-26 14:00:12
*/
public
interface
BookSerialNumberDao
extends
BaseDao
<
BookSerialNumber
>
{
BookSerialNumber
getByIsbn
(
String
isbn
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/QrcodeSceneErpDao.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dao
;
import
com.pcloud.book.book.entity.QrcodeSceneErp
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
/**
* ERP自动创建二维码临时表,由于没有 adviserId,所以无法创建二维码,将数据暂存,关联时再创建(QrcodeSceneErp)表数据库访问层
*
* @author makejava
* @since 2020-08-26 21:00:12
*/
public
interface
QrcodeSceneErpDao
extends
BaseDao
<
QrcodeSceneErp
>
{
QrcodeSceneErp
getByBookId
(
Long
bookId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/BookAdviserErpDaoImpl.java
0 → 100644
View file @
ab400b29
/**
*
*/
package
com
.
pcloud
.
book
.
book
.
dao
.
impl
;
import
com.pcloud.book.book.dao.BookAdviserErpDao
;
import
com.pcloud.book.book.entity.BookAdviserErp
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
/**
* @描述:编辑管理书籍数据访问层接口实现类
* @作者:songx
* @创建时间:2016年12月30日,下午5:15:37 @版本:1.0
*/
@Repository
(
"bookAdviserErpDao"
)
public
class
BookAdviserErpDaoImpl
extends
BaseDaoImpl
<
BookAdviserErp
>
implements
BookAdviserErpDao
{
@Override
public
BookAdviserErp
getByBookId
(
Long
bookId
)
{
return
this
.
sqlSessionTemplate
.
selectOne
(
getStatement
(
"getByBookId"
),
bookId
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/BookDaoImpl.java
View file @
ab400b29
...
...
@@ -399,4 +399,9 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao {
paramMap
.
put
(
"bookUniqueNumberVos"
,
bookUniqueNumberVos
);
super
.
getSqlSession
().
update
(
getStatement
(
"relateUniqueNumber4Erp"
),
paramMap
);
}
@Override
public
void
updateByPrimaryKeySelective
(
Book
book
){
super
.
getSqlSession
().
update
(
getStatement
(
"updateByPrimaryKeySelective"
),
book
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/BookSerialNumberDaoImpl.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dao
.
impl
;
import
com.pcloud.book.book.dao.BookSerialNumberDao
;
import
com.pcloud.book.book.entity.BookSerialNumber
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
/**
* 序号自动生成表(BookSerialNumber)表数据库访问层
*
* @author makejava
* @since 2020-08-26 14:00:12
*/
@Repository
(
"bookSerialNumberDaoImpl"
)
public
class
BookSerialNumberDaoImpl
extends
BaseDaoImpl
<
BookSerialNumber
>
implements
BookSerialNumberDao
{
@Override
public
BookSerialNumber
getByIsbn
(
String
isbn
)
{
return
this
.
sqlSessionTemplate
.
selectOne
(
getStatement
(
"getByIsbn"
),
isbn
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/QrcodeSceneErpDaoImpl.java
0 → 100644
View file @
ab400b29
package
com
.
pcloud
.
book
.
book
.
dao
.
impl
;
import
com.pcloud.book.book.entity.QrcodeSceneErp
;
import
com.pcloud.book.book.dao.QrcodeSceneErpDao
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* ERP自动创建二维码临时表,由于没有 adviserId,所以无法创建二维码,将数据暂存,关联时再创建(QrcodeSceneErp)表数据库访问层
*
* @author makejava
* @since 2020-08-26 21:00:12
*/
@Repository
(
"qrcodeSceneErpDaoImpl"
)
public
class
QrcodeSceneErpDaoImpl
extends
BaseDaoImpl
<
QrcodeSceneErp
>
implements
QrcodeSceneErpDao
{
@Override
public
QrcodeSceneErp
getByBookId
(
Long
bookId
)
{
return
this
.
sqlSessionTemplate
.
selectOne
(
getStatement
(
"getByBookId"
),
bookId
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/facade/BookFacade.java
View file @
ab400b29
...
...
@@ -6,6 +6,8 @@ package com.pcloud.book.book.facade;
import
com.pcloud.book.book.dto.AdviserBookInfoDTO
;
import
com.pcloud.book.book.dto.BookAssocCount
;
import
com.pcloud.book.book.dto.BookDto
;
import
com.pcloud.book.book.dto.CreateBookVO
;
import
com.pcloud.book.book.dto.RelateAdviserVO
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.vo.ListNoAuthBookParam
;
import
com.pcloud.book.book.vo.ListNoAuthGroupBookParam
;
...
...
@@ -777,4 +779,12 @@ public interface BookFacade {
public
ResponseDto
<?>
relateUniqueNumber4Erp
(
@RequestBody
List
<
BookUniqueNumberDTO
>
bookUniqueNumberVos
)
throws
BizException
;
@ApiOperation
(
"erp关联自动创建书刊"
)
@RequestMapping
(
value
=
"/relateBookAdviser4Erp"
,
method
=
RequestMethod
.
POST
)
ResponseDto
<?>
relateBookAdviser4Erp
(
@RequestBody
RelateAdviserVO
relateAdviserVO
)
throws
BizException
;
@ApiOperation
(
"erp自动创建RAYS书刊"
)
@RequestMapping
(
value
=
"/batchCreateBook4Erp"
,
method
=
RequestMethod
.
POST
)
ResponseDto
<?>
batchCreateBook4Erp
(
@RequestBody
List
<
CreateBookVO
>
createBookVOList
)
throws
BizException
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/facade/impl/BookFacadeImpl.java
View file @
ab400b29
...
...
@@ -11,6 +11,8 @@ import com.pcloud.book.book.biz.BookLabelBiz;
import
com.pcloud.book.book.dto.AdviserBookInfoDTO
;
import
com.pcloud.book.book.dto.BookAssocCount
;
import
com.pcloud.book.book.dto.BookDto
;
import
com.pcloud.book.book.dto.CreateBookVO
;
import
com.pcloud.book.book.dto.RelateAdviserVO
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.facade.BookFacade
;
import
com.pcloud.book.book.vo.BookQualifyVO
;
...
...
@@ -1119,4 +1121,17 @@ public class BookFacadeImpl implements BookFacade {
bookBiz
.
relateUniqueNumber4Erp
(
bookUniqueNumberVos
);
return
new
ResponseDto
<>();
}
}
\ No newline at end of file
@Override
@RequestMapping
(
value
=
"/relateBookAdviser4Erp"
,
method
=
RequestMethod
.
POST
)
public
ResponseDto
<?>
relateBookAdviser4Erp
(
@RequestBody
RelateAdviserVO
relateAdviserVO
)
throws
BizException
{
bookBiz
.
relateBookAdviser4Erp
(
relateAdviserVO
);
return
new
ResponseDto
<>();
}
@Override
@RequestMapping
(
value
=
"/batchCreateBook4Erp"
,
method
=
RequestMethod
.
POST
)
public
ResponseDto
<?>
batchCreateBook4Erp
(
@RequestBody
List
<
CreateBookVO
>
createBookVOList
)
throws
BizException
{
return
new
ResponseDto
<>(
bookBiz
.
batchCreateBook4Erp
(
createBookVOList
));
}
}
pcloud-service-book/src/main/java/com/pcloud/book/consumer/channel/QrcodeSceneConsr.java
View file @
ab400b29
...
...
@@ -7,6 +7,7 @@ import com.pcloud.book.base.exception.BookBizException;
import
com.pcloud.channelcenter.qrcode.dto.BookDto
;
import
com.pcloud.channelcenter.qrcode.dto.GroupQrcodeVO
;
import
com.pcloud.channelcenter.qrcode.dto.QrcodeSceneDto
;
import
com.pcloud.channelcenter.qrcode.entity.QrcodeScene
;
import
com.pcloud.channelcenter.qrcode.service.QrcodeSceneService
;
import
com.pcloud.channelcenter.qrcode.vo.BookAssocLastQrAskVO
;
import
com.pcloud.channelcenter.qrcode.vo.BookAssocLastQrVO
;
...
...
@@ -433,4 +434,8 @@ public class QrcodeSceneConsr {
return
accountSettingId
;
}
@ParamLog
(
"小程序书刊资源数量"
)
public
Long
createQrcodeScene4Erp
(
QrcodeScene
qrcodeScene
)
{
return
ResponseHandleUtil
.
parseResponse
(
qrcodeSceneService
.
createQrcodeScene4Erp
(
qrcodeScene
),
Long
.
class
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/consumer/user/ChannelConsr.java
View file @
ab400b29
...
...
@@ -201,4 +201,19 @@ public class ChannelConsr {
}
public
Long
getDefaultChannelId
(
Long
adviserId
)
{
Long
channelId
=
null
;
LOGGER
.
info
(
"根据 adviserId 获取 channelId,<START>.[adviserId]="
+
adviserId
);
try
{
channelId
=
ResponseHandleUtil
.
parseResponse
(
channelService
.
getDefaultChannelId
(
adviserId
),
Long
.
class
);
if
(
null
==
channelId
)
{
throw
new
ChannelBizException
(
ChannelBizException
.
PARAM_IS_NULL
,
"channelId 为空"
);
}
return
channelId
;
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"根据 adviserId 获取 channelId"
+
e
.
getMessage
(),
e
);
throw
new
ChannelBizException
(
ChannelBizException
.
PARAM_IS_NULL
,
"channelId 为空"
);
}
}
}
pcloud-service-book/src/main/resources/mapper/book/Book.Mapper.xml
View file @
ab400b29
...
...
@@ -81,6 +81,9 @@
ISBN, TYPE_CODE, BOOK_NAME,BOOK_PRICE, REMARK, AUTHOR, PUBLISH, PUBLISH_DATE, COVER_IMG, DETAIL,
SPONSOR, ORGANIZER, CN, RELEASE_CYCLE, BOOK_NUM, PROGRAMA, MAIL_CODE, ADDRESS, TELEPHONE, MAIL, PURPOSE, ORIGIN_NAME,
CREATED_USER, CREATED_DATE, LAST_MODIFIED_USER, LAST_MODIFIED_DATE, ISSN, SERIAL_NUMBER, AD_IMG
<if
test=
"fromErp != null"
>
,FROM_ERP
</if>
)
VALUES (
#{isbn, jdbcType=VARCHAR}, #{typeCode, jdbcType=VARCHAR}, #{bookName, jdbcType=VARCHAR}, #{bookPrice, jdbcType=VARCHAR},
...
...
@@ -90,6 +93,9 @@
#{mailCode, jdbcType=VARCHAR}, #{address, jdbcType=VARCHAR}, #{telephone, jdbcType=VARCHAR}, #{mail, jdbcType=VARCHAR},
#{purpose, jdbcType=VARCHAR}, #{originName, jdbcType=VARCHAR}, #{createdUser, jdbcType=BIGINT}, NOW(),
#{createdUser, jdbcType=BIGINT}, NOW(),#{issn, jdbcType=VARCHAR},#{serialNumber, jdbcType=VARCHAR},#{adImg, jdbcType=VARCHAR}
<if
test=
"fromErp != null"
>
, #{fromErp}
</if>
) ON
DUPLICATE KEY UPDATE IS_DELETE = 0
</insert>
...
...
@@ -2510,4 +2516,18 @@
G.UPDATE_TIME DESC
</select>
</mapper>
\ No newline at end of file
<update
id=
"updateByPrimaryKeySelective"
parameterType=
"Book"
>
update book
<set>
LAST_MODIFIED_DATE = NOW(),
<if
test=
"createdUser != null"
>
created_user = #{createdUser},
</if>
<if
test=
"lastModifiedUser != null"
>
last_modified_user = #{lastModifiedUser},
</if>
</set>
where book_id = #{bookId}
</update>
</mapper>
pcloud-service-book/src/main/resources/mapper/book/BookAdviserErp.Mapper.xml
0 → 100644
View file @
ab400b29
<?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=
"com.pcloud.book.book.dao.impl.BookAdviserErpDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.book.entity.BookAdviserErp"
>
<result
column=
"BOOK_ADVISER_ERP_ID"
property=
"bookAdviserErpId"
jdbcType=
"BIGINT"
/>
<result
column=
"BOOK_ID"
property=
"bookId"
jdbcType=
"BIGINT"
/>
<result
column=
"ADVISER_ID"
property=
"adviserId"
jdbcType=
"BIGINT"
/>
<result
column=
"CHANNEL_ID"
property=
"channelId"
jdbcType=
"BIGINT"
/>
<result
column=
"TEMPLET_ID"
property=
"templetId"
jdbcType=
"BIGINT"
/>
<result
column=
"CREATED_USER"
property=
"createdUser"
jdbcType=
"BIGINT"
/>
<result
column=
"CREATED_DATE"
property=
"createdDate"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"LAST_MODIFIED_DATE"
property=
"lastModifiedDate"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"VERSION"
property=
"version"
jdbcType=
"BIGINT"
/>
<result
column=
"IS_MAIN_EDITOR"
property=
"isMainEditor"
jdbcType=
"BOOLEAN"
/>
<result
column=
"IS_DELETE"
property=
"isDelete"
jdbcType=
"BOOLEAN"
/>
<result
column=
"SECOND_TEMPLET_ID"
property=
"secondTempletId"
jdbcType=
"BIGINT"
/>
<result
column=
"GRA_LABEL_ID"
property=
"graLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"SUB_LABEL_ID"
property=
"subLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"VER_LABEL_ID"
property=
"verLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"AREA_LABEL_ID"
property=
"areaLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"IS_PRINT"
property=
"isPrint"
jdbcType=
"BOOLEAN"
/>
<result
column=
"pro_label_id"
property=
"proLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"dep_label_id"
property=
"depLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"pur_label_id"
property=
"purLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"is_open_robot_process"
property=
"isOpenRobotProcess"
jdbcType=
"INTEGER"
/>
<result
column=
"vol_label_id"
property=
"volLabelId"
jdbcType=
"INTEGER"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
BOOK_ADVISER_ERP_ID, BOOK_ID, ADVISER_ID, CHANNEL_ID, TEMPLET_ID, CREATED_USER, CREATED_DATE, LAST_MODIFIED_DATE,
VERSION, IS_MAIN_EDITOR, IS_DELETE, SECOND_TEMPLET_ID, GRA_LABEL_ID, SUB_LABEL_ID, VER_LABEL_ID, AREA_LABEL_ID,
IS_PRINT, pro_label_id, dep_label_id, pur_label_id, is_open_robot_process, vol_label_id
</sql>
<select
id=
"getByBookId"
resultMap=
"BaseResultMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM book_adviser_erp
WHERE BOOK_ID = #{bookId}
</select>
<!-- 新增书籍和编辑关联信息-->
<insert
id=
"insert"
parameterType=
"com.pcloud.book.book.entity.BookAdviserErp"
useGeneratedKeys=
"true"
keyProperty=
"bookAdviserErpId"
flushCache=
"true"
>
INSERT INTO BOOK_ADVISER_ERP (
BOOK_ID, ADVISER_ID, CHANNEL_ID, CREATED_USER, CREATED_DATE,IS_MAIN_EDITOR, TEMPLET_ID, SECOND_TEMPLET_ID,
GRA_LABEL_ID,SUB_LABEL_ID,VER_LABEL_ID,AREA_LABEL_ID,pro_label_id, dep_label_id,pur_label_id,is_open_robot_process,
vol_label_id
)
VALUES (
#{bookId, jdbcType=VARCHAR}, #{adviserId, jdbcType=VARCHAR}, #{channelId, jdbcType=VARCHAR},
#{adviserId, jdbcType=BIGINT}, NOW(),#{isMainEditor, jdbcType=BIT},#{templetId, jdbcType=BIGINT},
#{secondTempletId, jdbcType=BIGINT},#{graLabelId, jdbcType=BIGINT},#{subLabelId, jdbcType=BIGINT},
#{verLabelId, jdbcType=BIGINT},#{areaLabelId, jdbcType=BIGINT},#{proLabelId,jdbcType=BIGINT},
#{depLabelId,jdbcType=BIGINT},#{purLabelId,jdbcType=BIGINT},#{isOpenRobotProcess,jdbcType=INTEGER},
#{volLabelId}
)
</insert>
</mapper>
pcloud-service-book/src/main/resources/mapper/book/BookSerialNumber.Mapper.xml
0 → 100644
View file @
ab400b29
<?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=
"com.pcloud.book.book.dao.impl.BookSerialNumberDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.book.entity.BookSerialNumber"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"isbn"
property=
"isbn"
jdbcType=
"VARCHAR"
/>
<result
column=
"serial_number"
property=
"serialNumber"
jdbcType=
"BIGINT"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, isbn, serial_number, create_time
</sql>
<select
id=
"getById"
resultMap=
"BaseResultMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM book_serial_number
WHERE id = #{id}
</select>
<select
id=
"getByIsbn"
resultMap=
"BaseResultMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM book_serial_number
WHERE isbn = #{isbn}
</select>
<select
id=
"getList"
resultMap=
"BaseResultMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM book_serial_number
</select>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.book.entity.BookSerialNumber"
>
INSERT INTO book_serial_number
(isbn, serial_number, create_time)
VALUES
(#{isbn, jdbcType=VARCHAR}, #{serialNumber, jdbcType=BIGINT},NOW())
</insert>
<insert
id=
"batchInsert"
>
INSERT INTO book_serial_number (
isbn,
serial_number,
create_time
) VALUES
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(
#{item.isbn, jdbcType=VARCHAR},
#{item.serialNumber, jdbcType=BIGINT},
#{item.markId, jdbcType=VARCHAR},
NOW()
)
</foreach>
</insert>
<!--通过主键修改数据-->
<update
id=
"update"
parameterType=
"com.pcloud.book.book.entity.BookSerialNumber"
>
UPDATE book_serial_number SET serial_number = serial_number + 1 WHERE isbn = #{isbn}
<selectKey
resultType=
"Long"
keyProperty=
"serialNumber"
order=
"AFTER"
>
SELECT serial_number FROM book_serial_number WHERE isbn = #{isbn}
</selectKey>
</update>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
DELETE FROM book_serial_number where id = #{id}
</delete>
</mapper>
pcloud-service-book/src/main/resources/mapper/book/QrcodeSceneErp.Mapper.xml
0 → 100644
View file @
ab400b29
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.book.dao.impl.QrcodeSceneErpDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.book.entity.QrcodeSceneErp"
>
<id
column=
"SCENE_ERP_ID"
property=
"sceneErpId"
jdbcType=
"BIGINT"
/>
<result
column=
"MATERIAL_LIB_ID"
property=
"materialLibId"
jdbcType=
"BIGINT"
/>
<result
column=
"ADVISER_BOOK_ID"
property=
"adviserBookId"
jdbcType=
"BIGINT"
/>
<result
column=
"SCENE_NAME"
property=
"sceneName"
jdbcType=
"VARCHAR"
/>
<result
column=
"DESCRIPTION"
property=
"description"
jdbcType=
"VARCHAR"
/>
<result
column=
"QRCODE_URL"
property=
"qrcodeUrl"
jdbcType=
"VARCHAR"
/>
<result
column=
"QRCODE_TYPE"
property=
"qrcodeType"
jdbcType=
"VARCHAR"
/>
<result
column=
"SCENE_CODE"
property=
"sceneCode"
jdbcType=
"VARCHAR"
/>
<result
column=
"IS_HAVE_PROVINCE"
property=
"haveProvinceMessage"
jdbcType=
"BIGINT"
/>
<result
column=
"CHANNEL_PARTY_ID"
property=
"channelPartyId"
jdbcType=
"BIGINT"
/>
<result
column=
"IS_DELETE"
property=
"isDelete"
jdbcType=
"VARCHAR"
/>
<result
column=
"IS_DELETE_RECYCLE_BIN"
property=
"isDeleteRecycleBin"
jdbcType=
"VARCHAR"
/>
<result
column=
"ACCOUNT_SETTING_ID"
property=
"accountSettingId"
jdbcType=
"BIGINT"
/>
<result
column=
"PURPOSE_TYPE"
property=
"purposeType"
jdbcType=
"VARCHAR"
/>
<result
column=
"CREATED_BY_USER_LOGIN"
property=
"createdByUserLogin"
jdbcType=
"BIGINT"
/>
<result
column=
"CREATED_USER_ROLE"
property=
"createdUserRole"
jdbcType=
"VARCHAR"
/>
<result
column=
"CREATED_DATE"
property=
"createdDate"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"LAST_MODIFIED_BY_USER_LOGIN"
property=
"lastModifiedByUserLogin"
jdbcType=
"BIGINT"
/>
<result
column=
"LAST_MODIFIED_DATE"
property=
"lastModifiedDate"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"VERSION"
property=
"version"
jdbcType=
"INTEGER"
/>
<result
column=
"CLIENT_CODE"
property=
"clientCode"
jdbcType=
"BIGINT"
/>
<result
column=
"AUDIT_STATE"
property=
"auditState"
jdbcType=
"VARCHAR"
/>
<result
column=
"AUDIT_USER"
property=
"auditUser"
jdbcType=
"VARCHAR"
/>
<result
column=
"AUDIT_DATE"
property=
"auditDate"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"AUDIT_REASON"
property=
"auditReason"
jdbcType=
"VARCHAR"
/>
<!--<result column="COVER_IMG" property="coverImg" jdbcType="VARCHAR"/>-->
<result
column=
"BOOK_NAME"
property=
"bookName"
jdbcType=
"VARCHAR"
/>
<result
column=
"AUDIT_SUBMIT_DATE"
property=
"auditSubmitDate"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"location_page_num"
property=
"locationPageNum"
jdbcType=
"INTEGER"
/>
<result
column=
"LOCATION_ID"
property=
"locationId"
jdbcType=
"BIGINT"
/>
<result
column=
"pro_label_id"
property=
"proLabelId"
jdbcType=
"BIGINT"
/>
<result
column=
"dep_label_id"
property=
"depLabelId"
jdbcType=
"BIGINT"
/>
<result
column=
"pur_label_id"
property=
"purLabelId"
jdbcType=
"BIGINT"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
SCENE_ERP_ID, MATERIAL_LIB_ID, SCENE_NAME, DESCRIPTION,SCENE_CODE,ADVISER_BOOK_ID,QRCODE_URL,IS_DELETE,
IS_DELETE_RECYCLE_BIN,PURPOSE_TYPE,CHANNEL_PARTY_ID,ACCOUNT_SETTING_ID,CREATED_BY_USER_LOGIN,
CREATED_USER_ROLE,VERSION,IS_HAVE_PROVINCE,CLIENT_CODE,AUDIT_STATE, location_page_num, LOCATION_ID,
pro_label_id, dep_label_id, pur_label_id
</sql>
<!-- 根据场景id查询二维码场景基本信息 -->
<select
id=
"getByBookId"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM QRCODE_SCENE_ERP
WHERE book_id = #{bookId}
</select>
<!-- 插入二维码场景信息 -->
<insert
id=
"insert"
parameterType=
"com.pcloud.book.book.entity.QrcodeSceneErp"
useGeneratedKeys=
"true"
keyProperty=
"sceneErpId"
>
INSERT INTO qrcode_scene_erp(
SCENE_CODE, BOOK_ID,ADVISER_BOOK_ID,BOOK_NAME,SCENE_NAME,QRCODE_URL,DESCRIPTION,
CHANNEL_PARTY_ID, ACCOUNT_SETTING_ID, URL, ADVISER_ID, PURPOSE_TYPE, QRCODE_TYPE,
TEMPLET_ID, CLIENT_CODE, CREATED_BY_USER_LOGIN, CREATED_DATE, VERSION, is_open_app,
location_page_num, LOCATION_ID, pro_label_id, dep_label_id, pur_label_id
) VALUES (
#{sceneCode, jdbcType=VARCHAR}, #{bookId, jdbcType=BIGINT}, #{adviserBookId, jdbcType=BIGINT},#{bookName, jdbcType=VARCHAR},#{sceneName, jdbcType=VARCHAR}, #{qrcodeUrl, jdbcType=VARCHAR}, #{description, jdbcType=VARCHAR},
#{channelPartyId, jdbcType=BIGINT}, #{accountSettingId, jdbcType=BIGINT},#{url, jdbcType=VARCHAR},#{adviserId, jdbcType=BIGINT},#{purposeType, jdbcType=VARCHAR},#{qrcodeType, jdbcType=VARCHAR},
#{templetId, jdbcType=BIGINT}, #{clientCode, jdbcType=BOOLEAN}, #{createdByUserLogin, jdbcType=BIGINT},NOW(),1, #{isOpenApp, jdbcType=BOOLEAN},
#{locationPageNum}, #{locationId}, #{proLabelId}, #{depLabelId}, #{purLabelId}
)
</insert>
</mapper>
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