提交 447bd930 作者: zhenjie

Merge branch 'develop' of ssh://git.mmcuav.cn:8222/iuav/oms into develop

......@@ -14,4 +14,4 @@ patches:
images:
- name: REGISTRY/NAMESPACE/IMAGE:TAG
newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/oms
newTag: 2213e3133e4f0406a0b6d12c85398f7d646b3166
newTag: a987cfc143d4a8bf1fa6caf6f1d39c115f56de5c
package com.mmc.oms.controller;
import com.mmc.oms.common.publicinterface.Send;
import com.mmc.oms.common.publicinterface.Take;
import com.mmc.oms.common.result.ResultBody;
import com.mmc.oms.model.dto.order.OrderInfoDTO;
import com.mmc.oms.model.dto.order.OrderVcuDTO;
import com.mmc.oms.model.dto.transtatus.TranStatusDicDTO;
import com.mmc.oms.model.qo.OrderInfoQO;
import com.mmc.oms.model.vo.order.LeaseOrderVO;
......@@ -71,6 +71,14 @@ public class RentalOrdersController extends BaseController {
}
@ApiOperation(value = "web/小程序——订单详情相关信息")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = OrderVcuDTO.class)})
@GetMapping("orderImageDetail")
public ResultBody<OrderVcuDTO> orderImageDetail(
@ApiParam(value = "订单id") @RequestParam(required = true) String orderInfoId) {
return rentalOrdersService.orderImageDetail(orderInfoId);
}
@ApiOperation(value = "小程序————订单分页列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = OrderInfoDTO.class)})
@PostMapping("listPageWechatOrder")
......@@ -80,6 +88,25 @@ public class RentalOrdersController extends BaseController {
}
@ApiOperation(value = "关闭/取消订单--用户操作")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = OrderInfoDTO.class)})
@GetMapping("closeOrder")
public ResultBody closeOrder(HttpServletRequest request,
@ApiParam(value = "订单Id") @RequestParam(required = true) Integer orderInfoId,
@ApiParam(value = "取消原因") @RequestParam(required = true) String shutReason) {
return rentalOrdersService.closeSelfOrder(orderInfoId, shutReason);
}
@ApiOperation(value = "后台管理----关闭订单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = OrderInfoDTO.class)})
@GetMapping("platFormCloseOrder")
public ResultBody platFormCloseOrder(HttpServletRequest request,
@ApiParam(value = "订单Id") @RequestParam(required = true) Integer orderInfoId,
@ApiParam(value = "取消原因") @RequestParam(required = true) String shutReason) {
return rentalOrdersService.platFormCloseOrder(orderInfoId, shutReason);
}
@ApiIgnore
@ApiOperation(value = "前端不使用 订单状态的变更")
@GetMapping("orderStatusChanges")
......@@ -101,7 +128,7 @@ public class RentalOrdersController extends BaseController {
@ApiOperation(value = "web/小程序 确认收货-订单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("renterTakeOrder")
public ResultBody renterTakeOrder(@Validated({Take.class}) @RequestBody OrderVcuVO param) {
public ResultBody renterTakeOrder(@RequestBody OrderVcuVO param) {
return rentalOrdersService.renterTakeOrder(param);
}
......
......@@ -59,4 +59,8 @@ public interface RentalOrdersDao {
CouponDO couponMoney(Integer couponId);
List<TranStatusDicDO> listTranStatus();
List<OrderInfoDO> listPcOrderInfoRental(OrderInfoQO param);
List<OrderVcuDO> orderImageDetail(String orderInfoId);
}
......@@ -28,7 +28,7 @@ import java.util.List;
//@ApiModel(value = "com.mmc.csf.model.vo.OrderVcuVO", description = "发货/收货类")
public class OrderVcuVO implements Serializable {
private static final long serialVersionUID = -4483344821357835193L;
@ApiModelProperty(value = "订单ID")
@ApiModelProperty(value = "订单ID", required = true)
@NotNull(message = "订单id不能为空", groups = {Send.class, Auto.class})
private Integer orderInfoId;
@ApiModelProperty(value = "退款单id(退款-发货必填,其他可不填)")
......
......@@ -104,7 +104,7 @@ public class OrderRefundServiceImpl implements OrderRefundService {
@Override
public ResultBody refund(BaseAccountDTO currentAccount, RefundYesOrNoVO param) {
if (currentAccount.getPortType() != 0) {
ResultBody.error(ResultEnum.NO_PERMISSION_TEMPORARILY);
return ResultBody.error(ResultEnum.NO_PERMISSION_TEMPORARILY);
}
OrderInfoDO order = rentalOrdersDao.getOrderInfo(param.getOrderInfoId());
OrderRefundDO applicationInformation = rentalOrdersDao.getApplicationInformation(order.getId());
......@@ -131,11 +131,10 @@ public class OrderRefundServiceImpl implements OrderRefundService {
HttpHeaders headers = new HttpHeaders();
headers.add("token", token);
HttpEntity<MultiValueMap<String, Object>> formEntity = new HttpEntity<MultiValueMap<String, Object>>(headers);
ResponseEntity<String> exchange = restTemplate.exchange(paymentUrl + "/amountOfRefund?actualPay="
+ actualPay + "&orderNo="
+ orderNo + "&repoAccountId="
+ userAccountId + "&refundNo="
+ refundNo,
ResponseEntity<String> exchange = restTemplate.exchange(paymentUrl + "repocash/amountOfRefund?actualPay=" + actualPay
+ "&orderNo=" + orderNo
+ "&repoAccountId=" + userAccountId
+ "&refundNo=" + refundNo,
HttpMethod.GET, formEntity, String.class);
System.out.println(exchange);
......
......@@ -18,10 +18,7 @@ import com.mmc.oms.entity.order.OrderReceiptDO;
import com.mmc.oms.entity.order.OrderRefundDO;
import com.mmc.oms.entity.order.OrderVcuDO;
import com.mmc.oms.entity.ware.WareInfoDO;
import com.mmc.oms.model.dto.order.OrderInfoDTO;
import com.mmc.oms.model.dto.order.OrderReceiptDTO;
import com.mmc.oms.model.dto.order.OrderRefundDTO;
import com.mmc.oms.model.dto.order.SkuOrderDTO;
import com.mmc.oms.model.dto.order.*;
import com.mmc.oms.model.dto.repo.RepoAccountDTO;
import com.mmc.oms.model.dto.transtatus.TranStatusDicDTO;
import com.mmc.oms.model.dto.user.BaseAccountDTO;
......@@ -82,7 +79,7 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
return ResultBody.error(ResultEnum.THE_CURRENT_ACCOUNT_CANNOT_PLACE_ORDERS);
}
//用户信息的远程调用
ResponseEntity<String> responseEntity = UserId(user.getUserAccountId());
ResponseEntity<String> responseEntity = UserId(user.getUserAccountId(), user.getToken());
UserAccountSimpleDTO account = JSON.parseObject(responseEntity.getBody(), UserAccountSimpleDTO.class);
//优惠券id获取优惠券面值
......@@ -144,14 +141,23 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
}
private ResponseEntity<String> UserId(Integer repoAccountId) {
private ResponseEntity<String> UserId(Integer repoAccountId, String token) {
HttpHeaders headers = new HttpHeaders();
//封装请求头
headers.add("token", token);
HttpEntity<MultiValueMap<String, Object>> formEntity = new HttpEntity<MultiValueMap<String, Object>>(headers);
ResponseEntity<String> response = restTemplate.exchange(userAppUrl + "user-account/feignGetUserSimpleInfo?userAccountId=" + repoAccountId,
HttpMethod.GET, formEntity, String.class);
// 用户信息
ResponseEntity<String> response =
/* ResponseEntity<String> response =
restTemplate.getForEntity(
userAppUrl
+ "user-account/feignGetUserSimpleInfo?userAccountId="
+ repoAccountId,
String.class);
String.class);*/
return response;
}
......@@ -200,13 +206,16 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
*/
private BigDecimal getUnitPrice(PriceAcquisition param) {
// 需要支付的价格
/* ResponseEntity<String> responseEntity = restTemplate.postForEntity(pmsUrl + "product/spec/feignGetSpecLeaseUnitPrice"
ResponseEntity<String> responseEntity = restTemplate.postForEntity(pmsUrl + "/product/spec/feignGetSpecLeaseUnitPrice"
, param, String.class);
String body = responseEntity.getBody();
BigDecimal bigDecimal = new BigDecimal(body);*/
if (null == body) {
body = "0";
}
BigDecimal bigDecimal = new BigDecimal(body);
// 模拟
int i = 12;
BigDecimal bigDecimal = BigDecimal.valueOf(i);
// int i = 12;
// BigDecimal bigDecimal = BigDecimal.valueOf(i);
return bigDecimal;
}
......@@ -305,6 +314,15 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
}
@Override
public ResultBody orderImageDetail(String orderInfoId) {
List<OrderVcuDO> orderVcuDOS = rentalOrdersDao.orderImageDetail(orderInfoId);
List<OrderVcuDTO> collect = orderVcuDOS.stream().map(t -> {
return t.buildOrderVcuDTO();
}).collect(Collectors.toList());
return ResultBody.success(collect);
}
@Override
public PageResult listPcOrderInfo(OrderInfoQO param, BaseAccountDTO cuser) {
Integer count = rentalOrdersDao.countPcOrderInfo(param);
......@@ -331,6 +349,7 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
return PageResult.buildPage(param.getPageNo(), param.getPageSize(), count);
}
Integer pageNo = param.getPageNo();
param.setRepoAccountId(account.getUserAccountId());
param.buildCurrentPage();
List<OrderInfoDTO> data =
rentalOrdersDao.listPageOrderInfo(param).stream()
......@@ -395,9 +414,10 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
return PageResult.buildPage(param.getPageNo(), param.getPageSize(), count);
}
Integer pageNo = param.getPageNo();
param.setRepoAccountId(currentAccount.getUserAccountId());
param.buildCurrentPage();
List<OrderInfoDTO> data =
rentalOrdersDao.listPcOrderInfo(param).stream()
rentalOrdersDao.listPcOrderInfoRental(param).stream()
.map(
d -> {
return d.buildOrderInfoDTO();
......@@ -409,6 +429,9 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
@Override
public ResultBody renterTakeOrder(OrderVcuVO param) {
OrderInfoDO order = rentalOrdersDao.getOrderInfo(param.getOrderInfoId());
if (null == order) {
return ResultBody.error(ResultEnum.ORDER_NO_EXIT_ERROR);
}
if (!TranStatusDic.YFH.getStatus().equals(order.getTranStatus())) {
return ResultBody.error(ResultEnum.ORDER_STATUS_ERROR);
}
......@@ -531,15 +554,13 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
* @return
*/
private ResultBody passwordAuthentication(BaseAccountDTO cuser, String authPwd) {
ResponseEntity<String> response =
restTemplate.getForEntity(
userAppUrl
+ "back-user/feignAuthUserPwd?authPwd="
+ authPwd
+ "&id="
+ +cuser.getUserAccountId(),
String.class);
ResultBody body = JSON.parseObject(response.getBody(), ResultBody.class);
HttpHeaders headers = new HttpHeaders();
headers.add("token", cuser.getToken());
HttpEntity<MultiValueMap<String, Object>> formEntity = new HttpEntity<MultiValueMap<String, Object>>(headers);
ResponseEntity<String> result4 = restTemplate.exchange(userAppUrl +
"back-user/feignAuthUserPwd?authPwd=" + authPwd + "&id=" + cuser.getUserAccountId(),
HttpMethod.GET, formEntity, String.class);
ResultBody body = JSON.parseObject(result4.getBody(), ResultBody.class);
if (!ResultEnum.SUCCESS.getResultCode().equals(body.getCode())) {
return body;
}
......@@ -555,6 +576,44 @@ public class RentalOrdersServiceImpl implements RentalOrdersService {
}
@Override
@Transactional
public ResultBody platFormCloseOrder(Integer orderInfoId, String shutReason) {
OrderInfoDO order = rentalOrdersDao.getOrderInfo(orderInfoId);
OrderInfoDO upOrder = new OrderInfoDO();
upOrder.setId(orderInfoId);
upOrder.setTranStatus(TranStatusDic.CLOSE.getStatus());
upOrder.setShutReason(shutReason);
rentalOrdersDao.updateOrderInfo(upOrder);
return ResultBody.success();
}
@Override
@Transactional
public ResultBody closeSelfOrder(Integer orderInfoId, String shutReason) {
OrderInfoDO order = rentalOrdersDao.getOrderInfo(orderInfoId);
if (order == null) {
return ResultBody.error(ResultEnum.ORDER_POWER_ERROR);
}
if (!TranStatusDic.INIT.getStatus().equals(order.getTranStatus())) {
return ResultBody.error(ResultEnum.ORDER_STATUS_ERROR);
}
OrderInfoDO upOrder = new OrderInfoDO();
upOrder.setId(orderInfoId);
upOrder.setTranStatus(TranStatusDic.CLOSE.getStatus());
upOrder.setShutReason(shutReason);
rentalOrdersDao.updateOrderInfo(upOrder);
/*if (WarePayStatus.BEFORE.getStatus().equals(order.getExWare().toString())) {
OrderInfoVO stock = OrderInfoVO.builder().wareInfoId(order.getWareInfoId()).skuInfoId(order.getSkuInfoId())
.addStock(order.getWareNum()).build();
ResultBody stockResult = wareServletClient.feignOrderNum(stock);
return stockResult;
}*/
return ResultBody.success();
}
@Override
public ResultBody pfConfirmOrderWare(BaseAccountDTO cuser, OrderVcuVO param) {
// 密码认证
ResultBody body = passwordAuthentication(cuser, param.getAuthPwd());
......
......@@ -19,6 +19,8 @@ public interface RentalOrdersService {
ResultBody getOrderDetail(String orderNo);
ResultBody orderImageDetail(String orderInfoId);
ResultBody feignAddLease(BaseAccountDTO user, LeaseOrderVO param);
PageResult listPcOrderInfo(OrderInfoQO param, BaseAccountDTO cuser);
......@@ -38,4 +40,8 @@ public interface RentalOrdersService {
ResultBody pfConfirmOrderWare(BaseAccountDTO currentAccount, OrderVcuVO param);
List<TranStatusDicDTO> listTranStatus();
ResultBody platFormCloseOrder(Integer orderInfoId, String shutReason);
ResultBody closeSelfOrder(Integer orderInfoId, String shutReason);
}
......@@ -271,7 +271,7 @@
<select id="listPcOrderInfo" resultMap="orderInfoResultMap" parameterType="com.mmc.oms.model.qo.OrderInfoQO">
select o.id,o.order_no,o.ware_title,o.sku_title,o.ware_img,o.deposit,
o.unit_price,o.ware_num,o.buyer_name,o.buyer_phone,o.uid,o.remark,
o.tran_status,o.should_pay,o.actual_pay,o.pf_remark,o.create_time,o.ware_no,o.nick_name,
o.tran_status,o.should_pay,o.actual_pay,o.pf_remark,o.create_time,o.ware_no,o.nick_name,o.repo_account_id,
rp.order_info_id,rp.receipt_method,rp.take_name,
rp.take_phone,rp.region,rp.detail_address,rp.repo_name,rp.repo_address,
rp.book_phone,rp.send_ex_code,rp.send_ex_no,rp.send_address,rp.ren_method,
......@@ -331,6 +331,86 @@
order by o.create_time DESC
limit #{pageNo},#{pageSize}
</select>
<select id="listPcOrderInfoRental" resultMap="orderInfoResultMap" parameterType="com.mmc.oms.model.qo.OrderInfoQO">
select o.id,o.order_no,o.ware_title,o.sku_title,o.ware_img,o.deposit,
o.unit_price,o.ware_num,o.buyer_name,o.buyer_phone,o.uid,o.remark,
o.tran_status,o.should_pay,o.actual_pay,o.pf_remark,o.create_time,o.ware_no,o.nick_name,o.repo_account_id,
rp.order_info_id,rp.receipt_method,rp.take_name,
rp.take_phone,rp.region,rp.detail_address,rp.repo_name,rp.repo_address,
rp.book_phone,rp.send_ex_code,rp.send_ex_no,rp.send_address,rp.ren_method,
rp.ren_phone,rp.ren_name,rp.ren_ex_code,rp.ren_ex_no,rp.ren_address,rp.ren_repo_name,
rp.ren_repo_addr,rp.ren_repo_phone,
ts.doing ,
ts.waiting,
ts.lease_order_status
from order_info o
inner join order_receipt rp on rp.order_info_id=o.id
LEFT JOIN tran_status_dic ts on ts.`status` =o.tran_status
<where>o.repo_account_id=#{repoAccountId}
<if test=" buyerAccount != null and buyerAccount != '' ">
and (
o.uid like CONCAT('%',#{buyerAccount},'%')
or o.nick_name like CONCAT('%',#{buyerAccount},'%')
or o.buyer_name like CONCAT('%',#{buyerAccount},'%')
)
</if>
<if test=" orderNo != null and orderNo != '' ">
and (
o.order_no like CONCAT('%',#{orderNo},'%')
)
</if>
<if test=" wareNo != null and wareNo != '' ">
and (
o.ware_no like CONCAT('%',#{wareNo},'%')
)
</if>
<if test=" wareTitle != null and wareTitle != '' ">
and (
o.ware_title like CONCAT('%',#{wareTitle},'%')
)
</if>
<if test=" startTime != null and startTime != '' ">
and o.create_time &gt;= STR_TO_DATE(#{startTime},'%Y-%m-%d %H:%i:%s')
</if>
<if test=" endTime != null and endTime != '' ">
and o.create_time &lt;= STR_TO_DATE(#{endTime},'%Y-%m-%d %H:%i:%s')
</if>
<if test=" tranStatus != null and tranStatus != '' ">
and o.tran_status = #{tranStatus}
</if>
<if test=" userIds != null">
<foreach collection="userIds" item="id" open="and o.repo_account_id in (" close=")" separator=",">
#{id}
</foreach>
</if>
<if test=" companys != null ">
<foreach collection="companys" item="id" open="and o.rcd_company_id in (" close=")" separator=",">
#{id}
</foreach>
</if>
</where>
order by o.create_time DESC
limit #{pageNo},#{pageSize}
</select>
<select id="orderImageDetail" resultType="com.mmc.oms.entity.order.OrderVcuDO">
SELECT id,
order_info_id AS orderInfoId,
order_refund_id AS orderRefundId,
vcu_type AS vcuType,
vcu_satus AS vcuSatus,
imgs,
video_url AS videoUrl,
remark,
create_time AS createTime
FROM order_vcu
WHERE order_info_id = #{orderInfoId}
</select>
<select id="countPageOrderInfo" resultType="java.lang.Integer" parameterType="com.mmc.oms.model.qo.OrderInfoQO">
select count(*)
from order_info o
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论