Commit 85175c6e authored by hezhen's avatar hezhen

Merge branch 'master-tiande' into dev-tiande

parents 040789ab a339e865
package com.xxfc.platform.order.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;
@Data
@Table(name = "branch_company")
public class BranchCompany {
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键id")
private Integer id;
@Column(name = "company_base_id")
@ApiModelProperty("主键id")
private Integer companyBaseId;
@Column(name = "company_id")
@ApiModelProperty("公司id")
private Long companyId;
/**
* 分公司名称
*/
@ApiModelProperty("分公司名称")
private String name;
@Column(name = "short_name")
@ApiModelProperty("简称")
private String shortName;
/**
* 分支机构类型
*/
@Column(name = "branch_type")
@ApiModelProperty("分支机构类型")
private Integer branchType;
/**
* 分支机构所属机构
*/
@Column(name = "subordinate_branch")
@ApiModelProperty("分支机构所属机构")
private Integer subordinateBranch;
/**
* 地址-省/直辖市(编码)
*/
@Column(name = "addr_province")
@ApiModelProperty("地址-省/直辖市(编码)")
private Integer addrProvince;
/**
* 地址-省/直辖市(编码)名称
*/
@Column(name = "province_name")
@ApiModelProperty("地址-省/直辖市(编码)名称")
private String provinceName;
/**
* 地址-市(编码)
*/
@Column(name = "addr_city")
@ApiModelProperty("地址-市(编码)")
private Integer addrCity;
/**
* 地址-市(编码)名称
*/
@Column(name = "city_name")
@ApiModelProperty("地址-市(编码名称")
private String cityName;
/**
* 地址-镇/县(编码)
*/
@Column(name = "addr_town")
@ApiModelProperty("地址-镇/县(编码)")
private Integer addrTown;
/**
* 地址-县名称
*/
@Column(name = "town_name")
@ApiModelProperty("县名称")
private String townName;
/**
* 详细地址
*/
@Column(name = "addr_detail")
@ApiModelProperty("详细地址")
private String addrDetail;
private Date createTime;
private Date updateTime;
/**
* 负责人
*/
@ApiModelProperty("负责人")
private String leader;
/**
* 负责人联系方式
*/
@ApiModelProperty("负责人联系方式")
private String leaderContactInfo;
/**
* 分公司状态
*/
@ApiModelProperty("分公司状态")
private Integer status;
/**
*公司地址-纬度
*/
@ApiModelProperty("公司地址-纬度")
private BigDecimal latitude;
/**
* 公司地址-经度
*/
@ApiModelProperty("公司地址-经度")
private BigDecimal longitude;
private String companyPic;
private Integer zoneId;
private String phone;
/**
* 租车客服电话
*/
@Column(name = "vehice_service_phone")
@ApiModelProperty("租车客服电话")
private String vehiceServicePhone;
/**
* 旅游客服电话
*/
@Column(name = "tour_service_phone")
@ApiModelProperty("旅游客服电话")
private String tourServicePhone;
/**
* 上下架:1-上架;2-下架
*/
private Integer state;
/**
* 是否app展示:1-是;2-否
*/
@Column(name = "is_show")
private Integer isShow;
/**
* 是否删除:0-正常;1-删除
*/
@Column(name = "is_del")
private Integer isDel;
}
\ No newline at end of file
package com.xxfc.platform.order.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Data
@Table(name = "company_info")
public class CompanyInfo {
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键id")
private Long id;
@ApiModelProperty("公司名称")
private String name;
@ApiModelProperty("法人姓名")
@Column(name = "legal_person")
private String legalPerson;
@ApiModelProperty("公司名称")
@Column(name = "legal_id_number")
private String legalIdNumber;
@ApiModelProperty("联系人")
private String contact;
@ApiModelProperty("联系电话")
private String mobile;
@ApiModelProperty("营业执照")
@Column(name = "business_license")
private String businessLicense;
@Column(name = "crt_time")
private Long crtTime;
@Column(name = "upd_time")
private Long updTime;
@Column(name = "is_del")
private Integer isDel;
}
\ No newline at end of file
...@@ -120,8 +120,13 @@ public class OrderTourDetail implements Serializable { ...@@ -120,8 +120,13 @@ public class OrderTourDetail implements Serializable {
* 出发公司Id * 出发公司Id
*/ */
@Column(name = "start_company_id") @Column(name = "start_company_id")
@ApiModelProperty(value = "出发公司Id") @ApiModelProperty(value = "出发门店Id")
private Integer startCompanyId; private Integer startCompanyId;
@Column(name = "start_corporation_id")
@ApiModelProperty(value = "出发公司id")
private Integer startCorporationId;
/** /**
* 费用明细 * 费用明细
...@@ -251,6 +256,15 @@ public class OrderTourDetail implements Serializable { ...@@ -251,6 +256,15 @@ public class OrderTourDetail implements Serializable {
@ApiModelProperty(value = "费用其他明细 type:1--取消违约金;2--取消费用明细;3--提前还车费用明细;4--延期还车费用明细") @ApiModelProperty(value = "费用其他明细 type:1--取消违约金;2--取消费用明细;3--提前还车费用明细;4--延期还车费用明细")
private String costDetailExtend; private String costDetailExtend;
@Column(name = "company_id")
@ApiModelProperty(value = "所属门店Id")
private Integer companyId;
@Column(name = "corporation_id")
@ApiModelProperty(value = "所属公司id")
private Integer corporationId;
@Transient @Transient
private List<TourUser> userVoList; private List<TourUser> userVoList;
......
...@@ -2,17 +2,22 @@ package com.xxfc.platform.order.biz; ...@@ -2,17 +2,22 @@ package com.xxfc.platform.order.biz;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.bean.copier.CopyOptions;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.alibaba.csp.sentinel.util.StringUtil;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.admin.dto.UserMemberDTO; import com.github.wxiaoqi.security.admin.dto.UserMemberDTO;
import com.github.wxiaoqi.security.admin.entity.AppUserLogin;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO; import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface; import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.context.BaseContextHandler; import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
...@@ -43,6 +48,7 @@ import com.xxfc.platform.order.pojo.order.OrderListVo; ...@@ -43,6 +48,7 @@ import com.xxfc.platform.order.pojo.order.OrderListVo;
import com.xxfc.platform.order.pojo.order.OrderPageVO; import com.xxfc.platform.order.pojo.order.OrderPageVO;
import com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto; import com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto;
import com.xxfc.platform.order.pojo.order.QueryOrderDTO; import com.xxfc.platform.order.pojo.order.QueryOrderDTO;
import com.xxfc.platform.order.rest.BaseOrderController;
import com.xxfc.platform.tour.entity.TourUser; import com.xxfc.platform.tour.entity.TourUser;
import com.xxfc.platform.tour.feign.TourFeign; import com.xxfc.platform.tour.feign.TourFeign;
import com.xxfc.platform.universal.constant.DictionaryKey; import com.xxfc.platform.universal.constant.DictionaryKey;
...@@ -137,6 +143,12 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements ...@@ -137,6 +143,12 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
@Autowired @Autowired
OrderActivityDetailBiz orderActivityDetailBiz; OrderActivityDetailBiz orderActivityDetailBiz;
@Autowired
BranchCompanyBiz branchCompanyBiz;
@Autowired
CompanyInfoBiz companyInfoBiz;
public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss"); public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
...@@ -1015,4 +1027,64 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements ...@@ -1015,4 +1027,64 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
List<BaseOrderDTO> baseOrderDTOS = mapper.findOrdersByDate(startDate,endDate,startTime,endTime); List<BaseOrderDTO> baseOrderDTOS = mapper.findOrdersByDate(startDate,endDate,startTime,endTime);
return CollectionUtils.isEmpty(baseOrderDTOS)?Collections.emptyList():baseOrderDTOS; return CollectionUtils.isEmpty(baseOrderDTOS)?Collections.emptyList():baseOrderDTOS;
} }
public PageDataVO<OrderListVo> selectList(BaseOrderController.QueryOrderList dto){
//车辆排班表查询订单详情
if (dto.getOneNo()!=null) {
dto.setPage(1);
dto.setLimit(1);
dto.setType(1);
}
if (StringUtils.isNotBlank(dto.getPhone()) || StringUtils.isNotBlank(dto.getRealName())) {
List<AppUserLogin> appUserLoins = userFeign.getOne(dto.getPhone(), dto.getRealName());
if (CollectionUtil.isNotEmpty(appUserLoins)) {
List<Integer> collect = appUserLoins.parallelStream().map(AppUserLogin::getId).collect(Collectors.toList());
dto.setUserIds(collect);
} else {
return new PageDataVO<>();
}
}
if (dto.getStartTime() != null) {
if (dto.getEndTime() == null) {
dto.setEndTime(new Date().getTime());
}
}
Query query = new Query(dto);
PageDataVO pageDataVO = PageDataVO.pageInfo(query, () ->listOrder(query.getSuper()));
List<OrderListVo> list = pageDataVO.getData();
List<Integer> userIds = list.stream().map(OrderListVo::getUserId).distinct().collect(Collectors.toList());
if (userIds != null && userIds.size() > 0) {
ObjectRestResponse<List<AppUserVo>> objectRestResponse = userFeign.getUsersByUserIds(userIds);
log.info("获取用户信息:objectRestResponse = {}", objectRestResponse.getData());
Map<Integer, AppUserVo> appvoMap = new HashMap<Integer, AppUserVo>();
if (objectRestResponse.getData() != null) {
for (AppUserVo appUserVo : objectRestResponse.getData()) {
if (appUserVo != null) {
appvoMap.put(appUserVo.getUserid(), appUserVo);
}
}
}
for (OrderListVo orderPageVO : list) {
AppUserVo appUserVo = appvoMap.get(orderPageVO.getUserId());
if (appUserVo != null) {
orderPageVO.setTelephone(appUserVo.getUsername());
orderPageVO.setUsername(appUserVo.getNickname());
orderPageVO.setRealName(appUserVo.getRealname());
orderPageVO.setJobTitle(appUserVo.getJobTitle());
orderPageVO.setMemberName(appUserVo.getMemberName());
}
if (orderPageVO.getOrderTourDetail() != null && orderPageVO.getOrderTourDetail().getStartCompanyId() != null) {
if (StringUtils.isNotBlank(orderPageVO.getOrderTourDetail().getTourUserIds())) {
List<TourUser> tourUsers = tourFeign.getTourUsers(orderPageVO.getOrderTourDetail().getTourUserIds()).getData();
orderPageVO.getOrderTourDetail().setUserVoList(tourUsers == null || tourUsers.size() <= 0 ? new ArrayList<>() : tourUsers);
}
}
}
}
return pageDataVO;
}
} }
\ No newline at end of file
package com.xxfc.platform.order.biz;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.order.entity.BranchCompany;
import com.xxfc.platform.order.mapper.BranchCompanyMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@Slf4j
public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany>{
public ObjectRestResponse addOrUpd(BranchCompany branchCompany){
Long id = branchCompany.getId() == null ? 0L :branchCompany.getId();
BranchCompany branchCompany1=selectById(id);
if (branchCompany1 != null){
updateSelectiveById(branchCompany);
}else {
insertSelective(branchCompany);
}
return ObjectRestResponse.succ();
}
}
package com.xxfc.platform.order.biz;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.order.entity.CompanyInfo;
import com.xxfc.platform.order.mapper.CompanyInfoMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@Slf4j
public class CompanyInfoBiz extends BaseBiz<CompanyInfoMapper, CompanyInfo>{
public ObjectRestResponse addOrUpd(CompanyInfo companyInfo){
Long id = companyInfo.getId() == null ? 0L :companyInfo.getId();
CompanyInfo companyInfo1=selectById(id);
if (companyInfo1 != null){
updateSelectiveById(companyInfo);
}else {
insertSelective(companyInfo);
}
return ObjectRestResponse.succ();
}
}
...@@ -21,9 +21,20 @@ public class RabbitOrderConfig extends RabbitCommonConfig { ...@@ -21,9 +21,20 @@ public class RabbitOrderConfig extends RabbitCommonConfig {
//退款队列 绑定订单完成 //退款队列 绑定订单完成
public static final String ORDER_DEPOSIT_REFUND_QUEUE = "order.deposit.refund.queue"; public static final String ORDER_DEPOSIT_REFUND_QUEUE = "order.deposit.refund.queue";
//同步企业信息
public static final String ORDER_CORPORATION_UPD_QUEUE = "order.corporation:upd.queue";
//同步门店信息
public static final String ORDER_COMPANY_UPD_QUEUE = "order.company:upd.queue";
static { static {
myQueue = new ArrayList<BindDTO>(){{ myQueue = new ArrayList<BindDTO>(){{
add(new BindDTO(ORDER_DEPOSIT_REFUND_QUEUE, ORDER_TOPIC, KEY_ORDER_FINLISH)); add(new BindDTO(ORDER_DEPOSIT_REFUND_QUEUE, ORDER_TOPIC, KEY_ORDER_FINLISH));
//企业
add(new BindDTO(ORDER_CORPORATION_UPD_QUEUE, VEHICLE_TOPIC, KEY_CORPORATION_UPD));
//门店
add(new BindDTO(ORDER_COMPANY_UPD_QUEUE, VEHICLE_TOPIC, KEY_COMPANY_UPD));
}}; }};
} }
......
package com.xxfc.platform.order.mapper;
import com.xxfc.platform.order.entity.BranchCompany;
import tk.mybatis.mapper.additional.idlist.SelectByIdListMapper;
import tk.mybatis.mapper.common.Mapper;
public interface BranchCompanyMapper extends Mapper<BranchCompany>, SelectByIdListMapper<BranchCompany,Integer> {
}
\ No newline at end of file
package com.xxfc.platform.order.mapper;
import com.xxfc.platform.order.entity.CompanyInfo;
import tk.mybatis.mapper.additional.idlist.SelectByIdListMapper;
import tk.mybatis.mapper.common.Mapper;
public interface CompanyInfoMapper extends Mapper<CompanyInfo>, SelectByIdListMapper<CompanyInfo,Long> {
}
\ No newline at end of file
package com.xxfc.platform.order.mqhandler;
import cn.hutool.json.JSONUtil;
import com.rabbitmq.client.Channel;
import com.xxfc.platform.order.biz.BranchCompanyBiz;
import com.xxfc.platform.order.entity.BranchCompany;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.amqp.support.AmqpHeaders;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.handler.annotation.Headers;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import static com.xxfc.platform.order.config.RabbitOrderConfig.*;
@Component
@Slf4j
public class BranchCompanyMQHandler {
@Autowired
BranchCompanyBiz branchCompanyBiz;
/**
* 同步门店信息
* @param
*/
@RabbitListener(queues = ORDER_COMPANY_UPD_QUEUE)
public void integralHandler(Message message, @Headers Map<String, Object> headers, Channel channel) {
log.info("同步门店信息 messageJson:"+ JSONUtil.parse(message));
ExecutorService executorService = Executors.newCachedThreadPool();
executorService.execute(new Runnable() {
@Override
public void run() {
try {
String messageId = message.getMessageProperties().getMessageId();
String msg = new String(message.getBody(), "UTF-8");
BranchCompany branchCompany = JSONUtil.toBean(msg, BranchCompany.class);
branchCompanyBiz.addOrUpd(branchCompany);
executorService.shutdown();
Long deliveryTag = (Long) headers.get(AmqpHeaders.DELIVERY_TAG);
// 手动签收
channel.basicAck(deliveryTag, false);
} catch (Exception e) {
log.info("接收到的消息失败");
try {
channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, false);
} catch (IOException i) {
log.error(e.getMessage(), i);
}
log.error(e.getMessage(), e);
}
}
});
}
}
package com.xxfc.platform.order.mqhandler;
import cn.hutool.json.JSONUtil;
import com.rabbitmq.client.Channel;
import com.xxfc.platform.order.biz.CompanyInfoBiz;
import com.xxfc.platform.order.entity.CompanyInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.amqp.support.AmqpHeaders;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.handler.annotation.Headers;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import static com.xxfc.platform.order.config.RabbitOrderConfig.*;
@Component
@Slf4j
public class CorporationMQHandler {
@Autowired
CompanyInfoBiz companyInfoBiz;
/**
* 同步企业信息
* @param
*/
@RabbitListener(queues = ORDER_CORPORATION_UPD_QUEUE)
public void integralHandler(Message message, @Headers Map<String, Object> headers, Channel channel) {
log.info("同步企业信息 messageJson:"+ JSONUtil.parse(message));
ExecutorService executorService = Executors.newCachedThreadPool();
executorService.execute(new Runnable() {
@Override
public void run() {
try {
String messageId = message.getMessageProperties().getMessageId();
String msg = new String(message.getBody(), "UTF-8");
CompanyInfo companyInfo = JSONUtil.toBean(msg, CompanyInfo.class);
companyInfoBiz.addOrUpd(companyInfo);
executorService.shutdown();
Long deliveryTag = (Long) headers.get(AmqpHeaders.DELIVERY_TAG);
// 手动签收
channel.basicAck(deliveryTag, false);
} catch (Exception e) {
log.info("接收到的消息失败");
try {
channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, false);
} catch (IOException i) {
log.error(e.getMessage(), i);
}
log.error(e.getMessage(), e);
}
}
});
}
}
...@@ -115,7 +115,7 @@ public class BackStageOrderController extends CommonBaseController implements Us ...@@ -115,7 +115,7 @@ public class BackStageOrderController extends CommonBaseController implements Us
return userFeign; return userFeign;
} }
@RequestMapping(value = "/baseOrder/getOrderList", method = RequestMethod.GET) @RequestMapping(value = "/baseOrder/getOrderListV2", method = RequestMethod.GET)
@ResponseBody @ResponseBody
@ApiOperation(value = "获取后台订单列表") @ApiOperation(value = "获取后台订单列表")
@IgnoreClientToken @IgnoreClientToken
...@@ -291,6 +291,18 @@ public class BackStageOrderController extends CommonBaseController implements Us ...@@ -291,6 +291,18 @@ public class BackStageOrderController extends CommonBaseController implements Us
return new ObjectRestResponse<>().data(pageDataVO); return new ObjectRestResponse<>().data(pageDataVO);
} }
@RequestMapping(value = "/baseOrder/getOrderList", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "获取后台订单列表")
@IgnoreClientToken
@CrossOrigin
public ObjectRestResponse<PageDataVO<OrderListVo>> getOrderListV2(BaseOrderController.QueryOrderList dto) {
setPowerData(dto,true);
return new ObjectRestResponse<>().data(baseOrderBiz.selectList(dto));
}
@RequestMapping(value = "/baseOrder/getVehicleList", method = RequestMethod.GET) @RequestMapping(value = "/baseOrder/getVehicleList", method = RequestMethod.GET)
@ResponseBody @ResponseBody
@ApiOperation(value = "交还车租车订单列表") @ApiOperation(value = "交还车租车订单列表")
......
...@@ -15,6 +15,7 @@ import com.github.wxiaoqi.security.common.rest.CommonBaseController; ...@@ -15,6 +15,7 @@ import com.github.wxiaoqi.security.common.rest.CommonBaseController;
import com.github.wxiaoqi.security.common.util.ClientUtil; import com.github.wxiaoqi.security.common.util.ClientUtil;
import com.github.wxiaoqi.security.common.util.Query; import com.github.wxiaoqi.security.common.util.Query;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.vo.DataInter;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.order.biz.*; import com.xxfc.platform.order.biz.*;
import com.xxfc.platform.order.biz.inner.OrderCancelBiz; import com.xxfc.platform.order.biz.inner.OrderCancelBiz;
...@@ -363,7 +364,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -363,7 +364,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes
} }
@Data @Data
public class QueryOrderList extends BaseOrderBiz.QueryOrderDetailDTO { public class QueryOrderList extends BaseOrderBiz.QueryOrderDetailDTO implements DataInter {
private Long startTime; private Long startTime;
...@@ -423,6 +424,12 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -423,6 +424,12 @@ public class BaseOrderController extends CommonBaseController implements UserRes
Integer memberLevel; Integer memberLevel;
List<Integer> companyIds; List<Integer> companyIds;
List<Integer> dataCorporationIds;
List<Integer> dataCompanyIds;
private Integer corporationId;
} }
@RequestMapping(value = "/app/unauth/refund/{no}/{refundAmount}", method = RequestMethod.POST) @RequestMapping(value = "/app/unauth/refund/{no}/{refundAmount}", method = RequestMethod.POST)
......
...@@ -122,10 +122,17 @@ ...@@ -122,10 +122,17 @@
<if test="type==1"> <if test="type==1">
,i.detail as carArticlesJson ,i.detail as carArticlesJson
</if> </if>
,
c.name as companyName,
c1.name as startCompanyName,
i.name as corporationName,
ci.name as startCorporationName
from base_order b from base_order b
LEFT JOIN order_rent_vehicle_detail r on r.order_id = b.id
LEFT JOIN order_tour_detail t on t.order_id = b.id LEFT JOIN order_tour_detail t on t.order_id = b.id
LEFT JOIN order_member_detail m on m.order_id = b.id LEFT JOIN branch_company c ON t.company_id=c.id
LEFT JOIN branch_company c1 ON t.start_company_id=c1.id
LEFT JOIN company_info i ON t.corporation_id=i.id
LEFT JOIN company_info ci ON t.start_corporation_id=i.id
<if test="type==1"> <if test="type==1">
LEFT JOIN (select * from order_item where type = 104) i on b.id = i.order_id LEFT JOIN (select * from order_item where type = 104) i on b.id = i.order_id
</if> </if>
...@@ -168,24 +175,31 @@ ...@@ -168,24 +175,31 @@
#{vehicleId} #{vehicleId}
</foreach> </foreach>
</if> </if>
<if test="companyIds != null and companyIds.size > 0"> <if test="startCompanyId != null and startCompanyId > 0 ">
and (r.start_company_id = #{startCompanyId} or t.start_company_id = #{startCompanyId}
or t.company_id = #{startCompanyId})
</if>
<if test="corporationId != null and corporationId > 0 ">
and (t.corporation_id = #{corporationId} or t.start_corporation_id = #{corporationId}
</if>
<if test="dataCompanyIds != null and dataCompanyIds.size > 0">
and (r.start_company_id in and (r.start_company_id in
<foreach collection="companyIds" item="id" open="(" separator="," close=")"> <foreach collection="dataCompanyIds" item="id" open="(" separator="," close=")">
#{id} #{id}
</foreach> </foreach>
or t.start_company_id in or t.start_company_id in
<foreach collection="companyIds" item="id" open="(" separator="," close=")"> <foreach collection="dataCompanyIds" item="id" open="(" separator="," close=")">
#{id} #{id}
</foreach> </foreach>
) )
</if> </if>
<if test="zoneIds != null and zoneIds.size > 0"> <if test="dataCorporationIds != null and dataCorporationIds.size > 0">
and (r.start_zone_id in and (t.corporation_id in
<foreach collection="zoneIds" item="id" open="(" separator="," close=")"> <foreach collection="dataCorporationIds" item="id" open="(" separator="," close=")">
#{id} #{id}
</foreach> </foreach>
or t.start_zone_id in or t.start_corporation_id in
<foreach collection="zoneIds" item="id" open="(" separator="," close=")"> <foreach collection="dataCorporationIds" item="id" open="(" separator="," close=")">
#{id} #{id}
</foreach> </foreach>
) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment