Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
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
youjj
cloud-platform
Commits
76c7b2a3
Commit
76c7b2a3
authored
Dec 26, 2019
by
jiaorz
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master-invoice-modular' into dev
parents
06d38134
3e0be9e0
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
346 additions
and
27 deletions
+346
-27
BaseOrder.java
...c/main/java/com/xxfc/platform/order/entity/BaseOrder.java
+12
-0
OrderInvoice.java
...ain/java/com/xxfc/platform/order/entity/OrderInvoice.java
+117
-0
BaseOrderBiz.java
...c/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
+14
-0
OrderInvoiceBiz.java
...ain/java/com/xxfc/platform/order/biz/OrderInvoiceBiz.java
+143
-0
OrderInvoiceMapper.java
...va/com/xxfc/platform/order/mapper/OrderInvoiceMapper.java
+7
-0
BaseOrderController.java
...ava/com/xxfc/platform/order/rest/BaseOrderController.java
+9
-4
OrderInvoiceController.java
.../com/xxfc/platform/order/rest/OrderInvoiceController.java
+38
-0
generatorConfig.xml
...der-server/src/main/resources/builder/generatorConfig.xml
+1
-1
BaseOrderMapper.xml
...rder-server/src/main/resources/mapper/BaseOrderMapper.xml
+0
-22
OrderInvoiceMapper.xml
...r-server/src/main/resources/mapper/OrderInvoiceMapper.xml
+5
-0
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/BaseOrder.java
View file @
76c7b2a3
...
...
@@ -330,4 +330,16 @@ public class BaseOrder implements Serializable {
@ApiModelProperty
(
value
=
"上级公司员工id"
)
@Column
(
name
=
"parent_position_id"
)
private
Integer
parentPositionId
;
/**
* 是否开票
*/
@Column
(
name
=
"invoice_status"
)
private
Integer
invoiceStatus
;
/**
* 开票记录Id
*/
@Column
(
name
=
"invoice_id"
)
private
Integer
invoiceId
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderInvoice.java
0 → 100644
View file @
76c7b2a3
package
com
.
xxfc
.
platform
.
order
.
entity
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
java.math.BigDecimal
;
@Table
(
name
=
"order_e_invoice"
)
@Data
public
class
OrderInvoice
{
/**
* 主键
*/
@Id
private
Integer
id
;
/**
* 发票类型:1--租房车;2--房车游;3--会员
*/
private
Integer
type
;
/**
* 订单ids,逗号分隔
*/
@Column
(
name
=
"order_ids"
)
private
String
orderIds
;
/**
* 发票抬头类型:1--企业单位;2--个人/非企业单位
*/
@Column
(
name
=
"title_type"
)
private
Integer
titleType
;
/**
* 抬头名称
*/
@Column
(
name
=
"title_name"
)
private
String
titleName
;
/**
* 税号
*/
@Column
(
name
=
"tax_code"
)
private
String
taxCode
;
/**
* 发票内容-备注说明
*/
@Column
(
name
=
"content_remark"
)
private
String
contentRemark
;
/**
* 发票内容-地址和电话
*/
@Column
(
name
=
"content_contact"
)
private
String
contentContact
;
/**
* 发票内容-开户行和账号
*/
@Column
(
name
=
"content_account"
)
private
String
contentAccount
;
/**
* 发票方
*/
private
String
drawer
;
/**
* 金额
*/
private
BigDecimal
amount
;
/**
* 接收方式:1--邮件
*/
@Column
(
name
=
"receive_type"
)
private
Integer
receiveType
;
/**
* 接收方式内容
*/
@Column
(
name
=
"receive_content"
)
private
String
receiveContent
;
/**
* 创建时间
*/
@Column
(
name
=
"crt_time"
)
private
Long
crtTime
;
/**
* 更新时间
*/
@Column
(
name
=
"upd_time"
)
private
Long
updTime
;
/**
* 创建者id
*/
@Column
(
name
=
"crt_user"
)
private
Integer
crtUser
;
/**
* 更新者id
*/
@Column
(
name
=
"upd_user"
)
private
Integer
updUser
;
/**
* 更多内容
*/
private
String
extend
;
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
View file @
76c7b2a3
...
...
@@ -799,6 +799,20 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
sendQueue
(
orderMQDTO
,
sign
);
}
public
ObjectRestResponse
updateBaseOrder
(
BaseOrder
baseOrder
)
{
if
(
baseOrder
.
getId
()
==
null
)
{
return
ObjectRestResponse
.
paramIsEmpty
();
}
BaseOrder
oldValue
=
mapper
.
selectByPrimaryKey
(
baseOrder
.
getId
());
if
(
oldValue
==
null
)
{
return
ObjectRestResponse
.
createFailedResult
(
ResCode
.
ORDER_IS_NOT_EXIST
.
getCode
(),
ResCode
.
ORDER_IS_NOT_EXIST
.
getDesc
());
}
BeanUtil
.
copyProperties
(
baseOrder
,
oldValue
,
CopyOptions
.
create
().
setIgnoreNullValue
(
true
).
setIgnoreError
(
true
));
updateSelectiveByIdReT
(
oldValue
);
return
ObjectRestResponse
.
succ
();
}
@Override
public
void
updateSelectiveById
(
BaseOrder
entity
)
{
super
.
updateSelectiveById
(
entity
);
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderInvoiceBiz.java
0 → 100644
View file @
76c7b2a3
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
com.xxfc.platform.order.entity.OrderInvoice
;
import
com.xxfc.platform.order.mapper.OrderInvoiceMapper
;
import
com.xxfc.platform.vehicle.constant.ResCode.ResCode
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
tk.mybatis.mapper.entity.Example
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Set
;
/**
* 订单发票记录
*/
@Service
@Slf4j
public
class
OrderInvoiceBiz
extends
BaseBiz
<
OrderInvoiceMapper
,
OrderInvoice
>
{
@Autowired
BaseOrderBiz
baseOrderBiz
;
@Autowired
UserFeign
userFeign
;
@Autowired
HttpServletRequest
request
;
/**
* 添加发票记录
* @return
*/
public
ObjectRestResponse
add
(
OrderInvoice
orderInvoice
)
{
AppUserDTO
appUserDTO
=
userFeign
.
userDetailByToken
(
request
.
getHeader
(
"Authorization"
)).
getData
();
if
(
appUserDTO
==
null
)
{
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
RSTOKEN_EXPIRED_CODE
,
ResultCode
.
getMsg
(
ResultCode
.
RSTOKEN_EXPIRED_CODE
));
}
if
(
orderInvoice
==
null
||
StringUtils
.
isBlank
(
orderInvoice
.
getOrderIds
()))
{
return
ObjectRestResponse
.
paramIsEmpty
();
}
String
[]
orderIdArray
=
orderInvoice
.
getOrderIds
().
split
(
","
);
if
(
orderIdArray
.
length
>
0
)
{
for
(
int
a
=
0
;
a
<=
orderIdArray
.
length
;
a
++)
{
String
orderId
=
StringUtils
.
isBlank
(
orderIdArray
[
a
])?
"0"
:
orderIdArray
[
a
];
BaseOrder
baseOrder
=
baseOrderBiz
.
selectById
(
Integer
.
parseInt
(
orderId
));
if
(
baseOrder
==
null
)
{
return
ObjectRestResponse
.
createFailedResult
(
ResCode
.
ORDER_IS_NOT_EXIST
.
getCode
(),
ResCode
.
ORDER_IS_NOT_EXIST
.
getDesc
()
+
", 订单Id = "
+
orderId
);
}
//查询是否已开票
OrderInvoice
oldValue
=
selectByUserIdAndOrderId
(
appUserDTO
.
getUserid
(),
Integer
.
parseInt
(
orderId
)).
getData
();
if
(
oldValue
==
null
)
{
//不存在就添加
orderInvoice
.
setCrtUser
(
appUserDTO
.
getUserid
());
insertSelectiveRe
(
orderInvoice
);
log
.
info
(
"添加发票记录成功: {}"
,
orderInvoice
);
OrderInvoice
newValue
=
selectByUserIdAndOrderId
(
appUserDTO
.
getUserid
(),
Integer
.
parseInt
(
orderId
)).
getData
();
if
(
newValue
!=
null
)
{
baseOrder
.
setInvoiceStatus
(
1
);
baseOrder
.
setInvoiceId
(
newValue
.
getId
());
baseOrderBiz
.
updateBaseOrder
(
baseOrder
);
}
else
{
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
DB_OPERATION_FAIL_CODE
,
ResultCode
.
getMsg
(
ResultCode
.
DB_OPERATION_FAIL_CODE
));
}
}
else
{
//已开票
log
.
info
(
"该订单已经开票, {}"
,
orderId
);
}
}
}
return
ObjectRestResponse
.
succ
();
}
/**
* 根据orderIds字符串查询对应的发票记录
* @param orderIds
* @return
*/
public
ObjectRestResponse
<
List
<
OrderInvoice
>>
selectByIds
(
String
orderIds
)
{
AppUserDTO
appUserDTO
=
userFeign
.
userDetailByToken
(
request
.
getHeader
(
"Authorization"
)).
getData
();
if
(
appUserDTO
==
null
)
{
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
RSTOKEN_EXPIRED_CODE
,
ResultCode
.
getMsg
(
ResultCode
.
RSTOKEN_EXPIRED_CODE
));
}
if
(
StringUtils
.
isBlank
(
orderIds
))
{
return
ObjectRestResponse
.
paramIsEmpty
();
}
Set
<
OrderInvoice
>
set
=
new
HashSet
<>();
String
[]
orderIdArray
=
orderIds
.
split
(
","
);
if
(
orderIdArray
.
length
>
0
)
{
for
(
int
a
=
0
;
a
<=
orderIdArray
.
length
;
a
++)
{
Example
example
=
new
Example
(
OrderInvoice
.
class
);
example
.
createCriteria
().
andEqualTo
(
"crtUser"
,
appUserDTO
.
getUserid
()).
andLike
(
"orderIds"
,
"%"
+
orderIdArray
[
a
]
+
"%"
);
OrderInvoice
orderInvoice
=
mapper
.
selectOneByExample
(
example
);
set
.
add
(
orderInvoice
);
}
}
return
ObjectRestResponse
.
succ
(
set
);
}
/**
* 获取用户的发票记录列表
* @return
*/
public
ObjectRestResponse
<
List
<
OrderInvoice
>>
selectByToken
(
Integer
type
)
{
AppUserDTO
appUserDTO
=
userFeign
.
userDetailByToken
(
request
.
getHeader
(
"Authorization"
)).
getData
();
if
(
appUserDTO
==
null
)
{
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
RSTOKEN_EXPIRED_CODE
,
ResultCode
.
getMsg
(
ResultCode
.
RSTOKEN_EXPIRED_CODE
));
}
Example
example
=
new
Example
(
OrderInvoice
.
class
);
example
.
createCriteria
().
andEqualTo
(
"crtUser"
,
appUserDTO
.
getUserid
());
if
(
type
!=
null
)
{
example
.
createCriteria
().
andEqualTo
(
"type"
,
type
);
}
return
ObjectRestResponse
.
succ
(
mapper
.
selectByExample
(
example
));
}
/**
* 根据用户Id获取用户发票记录
* @param userId
* @return
*/
public
ObjectRestResponse
<
List
<
OrderInvoice
>>
selectByUserId
(
Integer
userId
,
Integer
type
)
{
Example
example
=
new
Example
(
OrderInvoice
.
class
);
example
.
createCriteria
().
andEqualTo
(
"crtUser"
,
userId
);
if
(
type
!=
null
)
{
example
.
createCriteria
().
andEqualTo
(
"type"
,
type
);
}
return
ObjectRestResponse
.
succ
(
mapper
.
selectByExample
(
example
));
}
public
ObjectRestResponse
<
OrderInvoice
>
selectByUserIdAndOrderId
(
Integer
userId
,
Integer
orderId
)
{
Example
example
=
new
Example
(
OrderInvoice
.
class
);
example
.
createCriteria
().
andEqualTo
(
"crtUser"
,
userId
).
andLike
(
"orderIds"
,
"%"
+
orderId
+
"%"
);
return
ObjectRestResponse
.
succ
(
mapper
.
selectOneByExample
(
example
));
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/OrderInvoiceMapper.java
0 → 100644
View file @
76c7b2a3
package
com
.
xxfc
.
platform
.
order
.
mapper
;
import
com.xxfc.platform.order.entity.OrderInvoice
;
import
tk.mybatis.mapper.common.Mapper
;
public
interface
OrderInvoiceMapper
extends
Mapper
<
OrderInvoice
>
{
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/BaseOrderController.java
View file @
76c7b2a3
...
...
@@ -19,11 +19,11 @@ import com.github.wxiaoqi.security.common.vo.PageDataVO;
import
com.xxfc.platform.order.biz.*
;
import
com.xxfc.platform.order.biz.inner.OrderCancelBiz
;
import
com.xxfc.platform.order.biz.inner.OrderMsgBiz
;
import
com.xxfc.platform.order.contant.enumerate.*
;
import
com.xxfc.platform.order.contant.enumerate.CrosstownTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderStatusEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.entity.*
;
import
com.xxfc.platform.order.mqhandler.RabbitProduct
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDeduction
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDetail
;
import
com.xxfc.platform.order.pojo.dto.OrderDTO
;
import
com.xxfc.platform.order.pojo.mq.OrderMQDTO
;
import
com.xxfc.platform.order.pojo.order.CancelOrderDTO
;
...
...
@@ -58,7 +58,6 @@ import java.util.List;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
constant
.
CommonConstants
.
SYS_FALSE
;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
constant
.
CommonConstants
.
SYS_TRUE
;
import
static
com
.
xxfc
.
platform
.
universal
.
constant
.
DictionaryKey
.
APP_ORDER
;
...
...
@@ -482,4 +481,10 @@ public class BaseOrderController extends CommonBaseController implements UserRes
return
ObjectRestResponse
.
succ
();
//ObjectRestResponse.succ(baseOrderBiz.selectBaeOrderByOrderIds(orderIds));
}
@RequestMapping
(
value
=
"/updateOrder"
,
method
=
RequestMethod
.
POST
)
public
ObjectRestResponse
updateOrder
(
@RequestBody
BaseOrder
baseOrder
)
{
return
baseOrderBiz
.
updateBaseOrder
(
baseOrder
);
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/OrderInvoiceController.java
0 → 100644
View file @
76c7b2a3
package
com
.
xxfc
.
platform
.
order
.
rest
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.rest.BaseController
;
import
com.xxfc.platform.order.biz.OrderInvoiceBiz
;
import
com.xxfc.platform.order.entity.OrderInvoice
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* 发票记录
*/
@RestController
@RequestMapping
(
value
=
"/order/invoice"
)
public
class
OrderInvoiceController
extends
BaseController
<
OrderInvoiceBiz
,
OrderInvoice
>
{
@PostMapping
(
value
=
"/add"
)
public
ObjectRestResponse
add
(
@RequestBody
OrderInvoice
orderInvoice
)
{
return
baseBiz
.
add
(
orderInvoice
);
}
@GetMapping
(
value
=
"selectByOrderIds"
)
public
ObjectRestResponse
<
List
<
OrderInvoice
>>
selectByOrderIds
(
String
orderIds
)
{
return
baseBiz
.
selectByIds
(
orderIds
);
}
@GetMapping
(
value
=
"selectByType"
)
public
ObjectRestResponse
<
List
<
OrderInvoice
>>
selectByToken
(
Integer
type
)
{
return
baseBiz
.
selectByToken
(
type
);
}
@GetMapping
(
value
=
"getByUser"
)
public
ObjectRestResponse
<
List
<
OrderInvoice
>>
selectByUserId
(
Integer
userId
,
Integer
type
)
{
return
baseBiz
.
selectByUserId
(
userId
,
type
);
}
}
xx-order/xx-order-server/src/main/resources/builder/generatorConfig.xml
View file @
76c7b2a3
...
...
@@ -37,6 +37,6 @@
<!-- </table>-->
<!-- <table tableName="branch_company_stock_info" domainObjectName="BranchCompanyStockInfo"></table>-->
<!-- <table tableName="branch_company_stock_apply_info" domainObjectName="BranchCompanyStockApplyInfo"></table>-->
<table
tableName=
"
deposit_refund_record"
domainObjectName=
"DepositRefundRecord
"
></table>
<table
tableName=
"
order_e_invoice"
domainObjectName=
"OrderInvoice
"
></table>
</context>
</generatorConfiguration>
\ No newline at end of file
xx-order/xx-order-server/src/main/resources/mapper/BaseOrderMapper.xml
View file @
76c7b2a3
...
...
@@ -3,28 +3,6 @@
<mapper
namespace=
"com.xxfc.platform.order.mapper.BaseOrderMapper"
>
<!-- 可根据自己的需求,是否要使用 -->
<resultMap
type=
"com.xxfc.platform.order.entity.BaseOrder"
id=
"baseOrderMap"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"no"
column=
"no"
/>
<result
property=
"type"
column=
"type"
/>
<result
property=
"detailId"
column=
"detail_id"
/>
<result
property=
"status"
column=
"status"
/>
<result
property=
"productAmount"
column=
"product_amount"
/>
<result
property=
"orderAmount"
column=
"order_amount"
/>
<result
property=
"detailJson"
column=
"detail_json"
/>
<result
property=
"thirdType"
column=
"third_type"
/>
<result
property=
"outTradeNo"
column=
"out_trade_no"
/>
<result
property=
"crtTime"
column=
"crt_time"
/>
<result
property=
"crtUser"
column=
"crt_user"
/>
<result
property=
"crtName"
column=
"crt_name"
/>
<result
property=
"crtHost"
column=
"crt_host"
/>
<result
property=
"updTime"
column=
"upd_time"
/>
<result
property=
"updUser"
column=
"upd_user"
/>
<result
property=
"updName"
column=
"upd_name"
/>
<result
property=
"updHost"
column=
"upd_host"
/>
</resultMap>
<resultMap
type=
"com.xxfc.platform.order.pojo.order.OrderPageVO"
id=
"orderPageMap"
>
<result
javaType=
"Integer"
column=
"type"
property=
"type"
></result>
<discriminator
javaType=
"Integer"
column=
"type"
>
...
...
xx-order/xx-order-server/src/main/resources/mapper/OrderInvoiceMapper.xml
0 → 100644
View file @
76c7b2a3
<?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.xxfc.platform.order.mapper.OrderInvoiceMapper"
>
</mapper>
\ No newline at end of file
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