Browse Source

Merge remote-tracking branch 'origin/dev' into dev

lazhaoqian 3 years ago
parent
commit
688fcb10bd

+ 5 - 0
blade-service-api/blade-client-api/src/main/java/org/springblade/client/entity/CorpsDesc.java

@@ -59,6 +59,11 @@ public class CorpsDesc implements Serializable {
 	@ApiModelProperty(value = "客户名称")
 	private String cname;
 	/**
+	 * 客户简称
+	 */
+	@ApiModelProperty(value = "客户简称")
+	private String shortName;
+	/**
 	 * 英文名
 	 */
 	@ApiModelProperty(value = "英文名")

+ 14 - 0
blade-service-api/blade-client-api/src/main/java/org/springblade/client/entity/LandVehicle.java

@@ -166,6 +166,20 @@ public class LandVehicle implements Serializable {
 	@ApiModelProperty(value = "装备重量(kg)")
 	private BigDecimal equipmentWeight;
 	/**
+	 * 年审到期日期
+	 */
+	@ApiModelProperty(value = "年审到期日期")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date inspectExpired;
+	/**
+	 * 保险到期日期
+	 */
+	@ApiModelProperty(value = "保险到期日期")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date insuranceExpired;
+	/**
 	 * 状态(0 正常 1停用)
 	 */
 	@ApiModelProperty(value = "状态(0 正常 1停用)")

+ 5 - 1
blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/OrderItem.java

@@ -333,7 +333,11 @@ public class OrderItem implements Serializable {
 	 */
 	@ApiModelProperty(value = "运输方式(用于统计)")
 	private String shippingMode;
-
+	/**
+	 * 业务员(用于统计)
+	 */
+	@ApiModelProperty(value = "业务员(用于统计)")
+	private Long salesman;
 	/**
 	 * 业务部门(用于统计)
 	 */

+ 39 - 64
blade-service/blade-land/src/main/java/org/springblade/land/controller/OrderIndexController.java

@@ -28,6 +28,7 @@ import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.ObjectUtil;
+import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.land.entity.Order;
 import org.springblade.land.entity.OrderItem;
 import org.springblade.land.service.IOrderItemService;
@@ -41,7 +42,6 @@ import org.springframework.web.bind.annotation.RestController;
 
 import java.text.SimpleDateFormat;
 import java.util.*;
-import java.util.stream.Collectors;
 
 /**
  * 陆运订单明细表 控制器
@@ -151,21 +151,7 @@ public class OrderIndexController extends BladeController {
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "业务统计")
 	public R bizCount(Integer mold) {
-		LambdaQueryWrapper<OrderItem> wrapper = new LambdaQueryWrapper<OrderItem>()
-			.between(OrderItem::getCreateTime, getTime(true), getTime(false))
-			.eq(OrderItem::getKind, 2)
-			.eq(OrderItem::getIsDeleted, 0)
-			.eq(OrderItem::getTenantId, AuthUtil.getTenantId());
-
-		if (mold == 1) {
-			wrapper.eq(OrderItem::getShippingMode, "集装箱");
-		} else if (mold == 2) {
-			wrapper.eq(OrderItem::getShippingMode, "散货");
-		} else {
-			wrapper.eq(OrderItem::getShippingMode, "特种车辆");
-		}
-
-		List<OrderItem> itemList = orderItemService.list(wrapper);
+		List<OrderItem> itemList = orderItemService.list(getBizWrapper(mold, 0));
 
 		Map<String, Object> data = new HashMap<>();
 		Map<String, Object> table;
@@ -201,32 +187,6 @@ public class OrderIndexController extends BladeController {
 		table.put("all", all);
 		table.put("list", tableTemp);
 		data.put("flow", table);
-
-
-		// 部门统计
-		Map<Long, Long> deptMap = itemList.stream().collect(Collectors.groupingBy(OrderItem::getSalesmanDept, Collectors.counting()));
-
-		table = new HashMap<>();
-		tableTemp = new ArrayList<>();
-		for (Long key : deptMap.keySet()) {
-			String deptName = "";
-			if (!ObjectUtil.isEmpty(key)) {
-				R<String> dept = sysClient.getDeptName(key);
-				if (dept.isSuccess() && dept.getData() != null) {
-					deptName = dept.getData();
-				}
-			}
-
-			mapTemp = new HashMap<>();
-			mapTemp.put("dept", key);
-			mapTemp.put("name", deptName);
-			mapTemp.put("value", deptMap.get(key));
-			tableTemp.add(mapTemp);
-		}
-		table.put("all", all);
-		table.put("list", tableTemp);
-		data.put("dept", table);
-
 		return R.data(data);
 	}
 
@@ -236,19 +196,52 @@ public class OrderIndexController extends BladeController {
 	@GetMapping("/biz-detail")
 	@ApiOperationSupport(order = 4)
 	@ApiOperation(value = "业务详情")
-	public R bizDetail(Integer mold, Long dept, Integer status) {
+	public R bizDetail(Integer mold, Integer status) {
+		List<OrderItem> itemList = orderItemService.list(getBizWrapper(mold, status));
+		itemList.forEach(item -> {
+			Order order = orderService.getById(item.getOrderId());
+			item.setBillNo(order.getBillNo());
+			item.setStation(order.getStation());
+			item.setAddressDetail(order.getAddressDetail());
+			item.setAllFeeD(item.getOneFeeD().add(item.getTwoFeeD()).add(item.getThreeFeeD()).add(item.getFourFeeD()).add(item.getFiveFeeD()));
+			item.setAllFeeC(item.getOneFeeC().add(item.getTwoFeeC()).add(item.getThreeFeeC()).add(item.getFourFeeC()).add(item.getFiveFeeC()));
+
+			if (!ObjectUtil.isEmpty(order.getSalesman())) {
+				R<User> user = userClient.userInfoById(order.getSalesman());
+				if (user.isSuccess() && user.getData() != null) {
+					item.setSalesmanName(user.getData().getRealName());
+				}
+			}
+		});
+
+		return R.data(itemList);
+	}
+
+	private LambdaQueryWrapper<OrderItem> getBizWrapper(Integer mold, Integer status) {
 		LambdaQueryWrapper<OrderItem> wrapper = new LambdaQueryWrapper<OrderItem>()
 			.between(OrderItem::getCreateTime, getTime(true), getTime(false))
-			.eq(ObjectUtil.isNotEmpty(dept), OrderItem::getSalesmanDept, dept)
 			.eq(OrderItem::getKind, 2)
 			.eq(OrderItem::getIsDeleted, 0)
 			.eq(OrderItem::getTenantId, AuthUtil.getTenantId());
 
+		// 获取角色
+		String userRole = AuthUtil.getUserRole();
+		if (userRole.contains("总经理")) {
+
+		} else if (userRole.contains("部门经理")) {
+			String deptId = AuthUtil.getDeptId();
+			if (StringUtil.isNotBlank(deptId)) {
+				wrapper.in(OrderItem::getSalesmanDept, Arrays.asList(deptId.split(",")));
+			}
+		} else {
+			wrapper.eq(OrderItem::getSalesman, AuthUtil.getUserId());
+		}
+
 		if (mold == 1) {
 			wrapper.eq(OrderItem::getShippingMode, "集装箱");
 		} else if (mold == 2) {
 			wrapper.eq(OrderItem::getShippingMode, "散货");
-		} else if (mold == 3){
+		} else {
 			wrapper.eq(OrderItem::getShippingMode, "特种车辆");
 		}
 
@@ -259,25 +252,7 @@ public class OrderIndexController extends BladeController {
 		} else if (status == 3){
 			wrapper.in(OrderItem::getStatus, 4);
 		}
-
-		List<OrderItem> itemList = orderItemService.list(wrapper);
-		itemList.forEach(item -> {
-			Order order = orderService.getById(item.getOrderId());
-			item.setBillNo(order.getBillNo());
-			item.setStation(order.getStation());
-			item.setAddressDetail(order.getAddressDetail());
-			item.setAllFeeD(item.getOneFeeD().add(item.getTwoFeeD()).add(item.getThreeFeeD()).add(item.getFourFeeD()).add(item.getFiveFeeD()));
-			item.setAllFeeC(item.getOneFeeC().add(item.getTwoFeeC()).add(item.getThreeFeeC()).add(item.getFourFeeC()).add(item.getFiveFeeC()));
-
-			if (!ObjectUtil.isEmpty(order.getSalesman())) {
-				R<User> user = userClient.userInfoById(order.getSalesman());
-				if (user.isSuccess() && user.getData() != null) {
-					item.setSalesmanName(user.getData().getRealName());
-				}
-			}
-		});
-
-		return R.data(itemList);
+		return wrapper;
 	}
 
 	private String getTime(boolean init) {

+ 1 - 0
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderItemServiceImpl.java

@@ -636,6 +636,7 @@ public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem
 			.eq(ObjectUtil.isNotEmpty(orderItem.getVehicleId()), OrderItem::getVehicleId, orderItem.getVehicleId())
 			.eq(ObjectUtil.isNotEmpty(orderItem.getDriverId()), OrderItem::getDriverId, orderItem.getDriverId())
 			.eq(ObjectUtil.isNotEmpty(orderItem.getStatus()), OrderItem::getStatus, orderItem.getStatus())
+			.eq(StringUtil.isNotBlank(orderItem.getShippingMode()), OrderItem::getShippingMode, orderItem.getShippingMode())
 			.eq(OrderItem::getKind, 2)
 			.eq(OrderItem::getIsDeleted, 0)
 			.eq(OrderItem::getTenantId, AuthUtil.getTenantId())

+ 4 - 1
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderServiceImpl.java

@@ -209,6 +209,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			.eq(ObjectUtil.isNotEmpty(order.getCorpId()), Order::getCorpId, order.getCorpId())
 			.eq(ObjectUtil.isNotEmpty(order.getSalesman()), Order::getSalesman, order.getSalesman())
 			.eq(ObjectUtil.isNotEmpty(itemStatus) && itemStatus == 999, Order::getStatus, 0)
+			.eq(StringUtil.isNotBlank(order.getShippingMode()), Order::getShippingMode, order.getShippingMode())
 			.like(StringUtil.isNotBlank(order.getOrderNo()), Order::getOrderNo, order.getOrderNo())
 			.like(StringUtil.isNotBlank(order.getBillNo()), Order::getBillNo, order.getBillNo())
 			.like(StringUtil.isNotBlank(order.getBelongCompany()), Order::getBelongCompany, order.getBelongCompany())
@@ -372,7 +373,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			}
 		}
 
-		orderIdList = baseMapper.selectList(orderQueryWrapper).stream().filter(orderTemp -> orderTemp.getStatus() == 1).map(Order::getId).collect(Collectors.toList());
+		orderIdList = baseMapper.selectList(orderQueryWrapper).stream().filter(orderTemp -> orderTemp.getStatus() != 0).map(Order::getId).collect(Collectors.toList());
 		if (CollectionUtil.isNotEmpty(orderIdList)) {
 			List<OrderItem> itemList = orderItemMapper.selectList(new LambdaQueryWrapper<OrderItem>()
 				.in(OrderItem::getOrderId, orderIdList)
@@ -429,6 +430,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				item.setBillNo(order.getBillNo());
 				item.setKind(1);
 				item.setShippingMode(order.getShippingMode());
+				item.setSalesman(order.getSalesman());
 				item.setSalesmanDept(order.getSalesmanDept());
 				item.setTenantId(AuthUtil.getTenantId());
 				item.setCreateUser(AuthUtil.getUserId());
@@ -437,6 +439,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			} else {
 				item.setBillNo(order.getBillNo());
 				item.setShippingMode(order.getShippingMode());
+				item.setSalesman(order.getSalesman());
 				item.setSalesmanDept(order.getSalesmanDept());
 				item.setUpdateUser(AuthUtil.getUserId());
 				item.setUpdateTime(new Date());