承租方所属公司优化

This commit is contained in:
liang.chao 2024-12-03 10:29:01 +08:00
parent 22ec5ea7f5
commit edf110d40a
4 changed files with 68 additions and 44 deletions

View File

@ -37,7 +37,7 @@ public class OrderController extends BaseController {
*/
@ApiOperation(value = "提交预约车到订单")
@PostMapping("/submitBookCar")
public AjaxResult submitBookCar(@RequestBody OrderInfoDto orderInfoDto) {
public AjaxResult submitBookCar(@RequestBody List<OrderInfoDto> orderInfoDto) {
Integer i = orderService.submitOrderInfo(orderInfoDto);
if (i > 0) {
return success("下单成功");

View File

@ -11,7 +11,7 @@ import java.util.List;
*/
public interface OrderService {
Integer submitOrderInfo(OrderInfoDto orderInfoDto);
Integer submitOrderInfo(List<OrderInfoDto> orderInfoDto);
List<OrderInfoDto> getOrderDetails(OrderInfoDto orderInfoDto) throws Exception;

View File

@ -26,54 +26,58 @@ public class OrderServiceImpl implements OrderService {
@Override
@Transactional
public Integer submitOrderInfo(OrderInfoDto orderInfoDto) {
// 首先判断库存是否足够
List<OrderDetailDto> orderDetailDtos = orderInfoDto.getDetailsList();
for (OrderDetailDto orderDetailDto : orderDetailDtos) {
// 如果是数量设备 改库存
if ("1".equals(orderDetailDto.getManageType())) {
// 再查询库存是否足够
DevInfo devInfo = orderMapper.getdeviceCount(orderDetailDto);
if (devInfo.getDeviceCount() == 0) {
// 查询库存是否为0是的话让它下架
orderDetailDto.setMaStatus("1");
orderMapper.updateDeviceStatus(orderDetailDto);
throw new RuntimeException(devInfo.getDeviceName() + "已下架,无法下单");
}else if (devInfo.getDeviceCount() < orderDetailDto.getNum()) {
throw new RuntimeException(devInfo.getDeviceName() + "库存不足,无法下单");
} else {
// 改库存
orderMapper.updateDevCount(orderDetailDto);
}
} else {
//如果是编码设备改设备状态为在租
orderDetailDto.setMaStatus("3");
orderMapper.updateDeviceStatus(orderDetailDto);
}
// 更改购物车状态为已下单
orderMapper.updateMaStatus(orderDetailDto);
}
//生成订单信息
String code = "D" + System.currentTimeMillis();
orderInfoDto.setCode(code);
Long userid = SecurityUtils.getLoginUser().getUserid();
orderInfoDto.setBuyerId(userid.toString());
orderInfoDto.setCreater(userid);
Integer i = orderMapper.insertOrderInfo(orderInfoDto);
if (i > 0) {
public Integer submitOrderInfo(List<OrderInfoDto> orderInfoDtos) {
int j = 0;
for (OrderInfoDto orderInfoDto : orderInfoDtos) {
// 首先判断库存是否足够
List<OrderDetailDto> orderDetailDtos = orderInfoDto.getDetailsList();
for (OrderDetailDto orderDetailDto : orderDetailDtos) {
orderDetailDto.setOrderId(orderInfoDto.getOrderId());
orderMapper.insertOrderDetail(orderDetailDto);
// 如果是数量设备 改库存
if ("1".equals(orderDetailDto.getManageType())) {
// 再查询库存是否足够
DevInfo devInfo = orderMapper.getdeviceCount(orderDetailDto);
if (devInfo.getDeviceCount() == 0) {
// 查询库存是否为0是的话让它下架
orderDetailDto.setMaStatus("1");
orderMapper.updateDeviceStatus(orderDetailDto);
throw new RuntimeException(devInfo.getDeviceName() + "已下架,无法下单");
} else if (devInfo.getDeviceCount() < orderDetailDto.getNum()) {
throw new RuntimeException(devInfo.getDeviceName() + "库存不足,无法下单");
} else {
// 改库存
orderMapper.updateDevCount(orderDetailDto);
}
} else {
//如果是编码设备改设备状态为在租
orderDetailDto.setMaStatus("3");
orderMapper.updateDeviceStatus(orderDetailDto);
}
// 更改购物车状态为已下单
orderMapper.updateMaStatus(orderDetailDto);
}
//生成订单信息
String code = "D" + System.currentTimeMillis();
orderInfoDto.setCode(code);
Long userid = SecurityUtils.getLoginUser().getUserid();
orderInfoDto.setBuyerId(userid.toString());
orderInfoDto.setCreater(userid);
Integer i = orderMapper.insertOrderInfo(orderInfoDto);
j += i;
if (i > 0) {
for (OrderDetailDto orderDetailDto : orderDetailDtos) {
orderDetailDto.setOrderId(orderInfoDto.getOrderId());
orderMapper.insertOrderDetail(orderDetailDto);
}
}
}
return i;
return j;
}
@Override
public List<OrderInfoDto> getOrderDetails(OrderInfoDto orderInfoDto) throws Exception {
if (orderInfoDto.isFlag()){
if (orderInfoDto.isFlag()) {
orderInfoDto.setSellerId(SecurityUtils.getLoginUser().getUserid().toString());
}else {
} else {
orderInfoDto.setBuyerId(SecurityUtils.getLoginUser().getUserid().toString());
}

View File

@ -86,7 +86,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
sd1.dept_name AS companyName
FROM
sys_dept sd
JOIN ( SELECT SUBSTRING_INDEX( ancestors, ',', 2 ) AS first_ancestor, dept_id FROM sys_dept ) AS subquery ON sd.dept_id = subquery.dept_id
JOIN (
SELECT
CASE
ancestors
WHEN ( '0' ) THEN
dept_id ELSE SUBSTRING_INDEX( SUBSTRING_INDEX( ancestors, ',', 2 ), ',', - 1 )
END AS first_ancestor,
dept_id
FROM
sys_dept
) AS subquery ON sd.dept_id = subquery.dept_id
LEFT JOIN sys_dept sd1 ON sd1.dept_id = subquery.first_ancestor
) dept ON dept.deptId = su.dept_id
WHERE
@ -177,7 +187,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
sd1.dept_name AS companyName
FROM
sys_dept sd
JOIN ( SELECT SUBSTRING_INDEX( ancestors, ',', 2 ) AS first_ancestor, dept_id FROM sys_dept ) AS subquery ON sd.dept_id = subquery.dept_id
JOIN (
SELECT
CASE
ancestors
WHEN ( '0' ) THEN
dept_id ELSE SUBSTRING_INDEX( SUBSTRING_INDEX( ancestors, ',', 2 ), ',', - 1 )
END AS first_ancestor,
dept_id
FROM
sys_dept
) AS subquery ON sd.dept_id = subquery.dept_id
LEFT JOIN sys_dept sd1 ON sd1.dept_id = subquery.first_ancestor
) dept ON dept.deptId = su.dept_id
WHERE