Jelajahi Sumber

2022年9月26日 17:53

wangzhuo 3 tahun lalu
induk
melakukan
d2616f4030

+ 11 - 0
blade-service-api/blade-client-api/src/main/java/org/springblade/client/feign/ICorpsDescClient.java

@@ -44,6 +44,7 @@ public interface ICorpsDescClient {
 	String GRT_CORPS_ADDR = API_PREFIX + "/getCorpsAddr";
 	String GRT_CORPS_BANK = API_PREFIX + "/getCorpsBank";
 	String INSERT_CORP = API_PREFIX + "/insertCorp";
+	String CORP_BY_IDS = API_PREFIX + "/selectByCorpIds";
 	@PostMapping(CORPS_UPDATE)
 	R corpsUpdate(@RequestBody CorpsDesc corpsDesc);
 
@@ -159,6 +160,16 @@ public interface ICorpsDescClient {
 	 */
 	@PostMapping(GET_CORP)
 	List<CorpsDesc> getCorp(@RequestBody CorpsDesc corpsDesc);
+
+	/**
+	 * 根据ids查询客户通用方法
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@GetMapping(CORP_BY_IDS)
+	List<CorpsDesc> selectByCorpIds(@RequestParam("ids") String ids);
+
 	@GetMapping(GRT_CORPS_ADDR)
 	List<CorpsAddr> getCorpsAddr(@RequestParam("pid") Long pid,
 								 @RequestParam("tenantId")String tenantId);

+ 6 - 0
blade-service-api/blade-mocha-item-api/src/main/java/org/springblade/mocha/entity/BusinessOverpayment.java

@@ -53,6 +53,12 @@ public class BusinessOverpayment implements Serializable {
 	*/
 		@ApiModelProperty(value = "客户名称")
 		private String corpName;
+
+	/**
+	 * 客户编码
+	 */
+		@TableField(exist = false)
+		private String corpCode;
 	/**
 	* 增加积分
 	*/

+ 15 - 7
blade-service/blade-client/src/main/java/org/springblade/client/corps/controller/CorpsDescController.java

@@ -27,10 +27,7 @@ import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
-import org.springblade.core.tool.utils.BeanUtil;
-import org.springblade.core.tool.utils.CollectionUtil;
-import org.springblade.core.tool.utils.Func;
-import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.core.tool.utils.*;
 import org.springblade.finance.feign.IFinanceClient;
 import org.springblade.finance.vojo.Acc;
 import org.springblade.purchase.sales.entity.Order;
@@ -87,6 +84,15 @@ public class CorpsDescController extends BladeController {
 		corpsDesc.setTenantId(SecureUtil.getTenantId());
 		IPage<CorpsDescVO> pages = corpsDescService.selectCorpsDescPage(Condition.getPage(query), corpsDesc);
 
+		String belongtocompany = "";//所属公司ids
+
+		for (CorpsDescVO descVO: pages.getRecords()){
+			if (ObjectUtil.isNotEmpty(descVO.getBelongtocompany())){
+				belongtocompany = belongtocompany + descVO.getBelongtocompany() + ",";
+			}
+		}
+		List<CorpsDesc> corpsDescList = corpsDescService.selectByCorpIds(belongtocompany);
+
 		if (CollectionUtils.isNotEmpty(pages.getRecords())) {
 			pages.getRecords().forEach(item -> {
 				if (StringUtils.isNotBlank(item.getAdminProfiles())) {
@@ -101,9 +107,11 @@ public class CorpsDescController extends BladeController {
 					}
 					item.setAdminProfilesName(stringBuffer.toString());
 				}
-				if (StringUtils.isNotBlank(item.getBelongtocompany())) {
-					CorpsDesc desc = corpsDescService.getById(item.getBelongtocompany());
-					item.setBelongCompany(desc.getCname());
+				if (item.getBelongtocompany() != null){
+					if (ObjectUtil.isNotEmpty(corpsDescList)) {
+						System.out.println(item.getBelongtocompany());
+						item.setBelongCompany(corpsDescList.stream().filter(e -> e.getId().toString().equals(item.getBelongtocompany())).findFirst().get().getCname());
+					}
 				}
 
 				List<Long> typeIdList = corpsTypeDescService.list(new LambdaQueryWrapper<CorpsTypeDesc>().eq(CorpsTypeDesc::getCorpId, item.getId()))

+ 6 - 0
blade-service/blade-client/src/main/java/org/springblade/client/corps/feign/CorpsDescClient.java

@@ -183,6 +183,12 @@ public class CorpsDescClient implements ICorpsDescClient {
 	}
 
 	@Override
+	@GetMapping(CORP_BY_IDS)
+	public List<CorpsDesc> selectByCorpIds(String ids){
+		return service.selectByCorpIds(ids);
+	}
+
+	@Override
 	public List<CorpsAddr> getCorpsAddr(Long pid, String tenantId) {
 		return corpsAddrService.getCorpsAddr(pid,tenantId);
 	}

+ 3 - 3
blade-service/blade-client/src/main/java/org/springblade/client/corps/mapper/CorpsDescMapper.java

@@ -84,10 +84,10 @@ public interface CorpsDescMapper extends BaseMapper<CorpsDesc> {
 	List<CorpsDesc> getCorp(@Param("CorpsDesc") CorpsDesc corpsDesc);
 
 	/**
-	 * 查询车队信息
+	 * 根据ids查询客户通用方法
 	 *
-	 * @param fleetIds
+	 * @param ids
 	 * @return
 	 */
-	List<CorpsDesc> getByFleetIds(@Param("fleetIds") List<Long> fleetIds);
+	List<CorpsDesc> selectByCorpIds(@Param("ids") List<Long> ids);
 }

+ 2 - 2
blade-service/blade-client/src/main/java/org/springblade/client/corps/mapper/CorpsDescMapper.xml

@@ -360,13 +360,13 @@
             and status = #{CorpsDesc.status}
         </if>
     </select>
-    <select id="getByFleetIds" resultMap="corpsDescResultMap">
+    <select id="selectByCorpIds" resultMap="corpsDescResultMap">
         select
             *
         from basic_corps_desc
         where is_deleted = 0
           and id in
-        <foreach item="id" collection="fleetIds" open="(" separator="," close=")">
+        <foreach item="id" collection="ids" open="(" separator="," close=")">
             #{id}
         </foreach>
     </select>

+ 3 - 3
blade-service/blade-client/src/main/java/org/springblade/client/corps/service/ICorpsDescService.java

@@ -174,10 +174,10 @@ public interface ICorpsDescService extends IService<CorpsDesc> {
 	int inserts(CorpsDesc corpsDesc);
 
 	/**
-	 * 查询车队
+	 * 根据ids查询客户通用方法
 	 *
-	 * @param fleetIds
+	 * @param ids
 	 * @return
 	 */
-	List<CorpsDesc> getByFleetIds(String fleetIds);
+	List<CorpsDesc> selectByCorpIds(String ids);
 }

+ 17 - 12
blade-service/blade-client/src/main/java/org/springblade/client/corps/service/impl/CorpsDescServiceImpl.java

@@ -614,6 +614,22 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
 		return baseMapper.insert(corpsDesc);
 	}
 
+	/**
+	 * 根据ids查询客户通用方法
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@Override
+	public List<CorpsDesc> selectByCorpIds(String ids){
+		if (ids == null || ids.equals("")){
+			return new ArrayList<>();
+		}
+		List<Long> collect = Arrays.stream(ids.split(","))
+			.map(s -> Long.parseLong(s.trim()))
+			.collect(Collectors.toList());
+		return baseMapper.selectByCorpIds(collect);
+	}
 
 	/**
 	 * 保护客户联系人信息
@@ -855,17 +871,6 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
 		return result;
 	}
 
-	/**
-	 * 查询车队
-	 *
-	 * @param fleetIds
-	 * @return
-	 */
-	public List<CorpsDesc> getByFleetIds(String fleetIds){
-		List<Long> collect = Arrays.stream(fleetIds.split(","))
-			.map(s -> Long.parseLong(s.trim()))
-			.collect(Collectors.toList());
-		return baseMapper.getByFleetIds(collect);
-	}
+
 
 }

+ 1 - 1
blade-service/blade-client/src/main/java/org/springblade/client/land/controller/LandVehicleController.java

@@ -152,7 +152,7 @@ public class LandVehicleController extends BladeController {
 			}
 		}
 
-		List<CorpsDesc> fleetList = corpsDescService.getByFleetIds(fleetIds);
+		List<CorpsDesc> fleetList = corpsDescService.selectByCorpIds(fleetIds);
 		List<LandDriver> driverList = landDriverService.getByDriverIds(driverIds);
 
 		vehicleList.forEach(vehicle -> {

+ 5 - 0
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderServiceImpl.java

@@ -845,6 +845,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			.eq(OrderItem::getIsDeleted, 0));
 		detail.setItemList(itemList);
 
+		LandDriver driver = landDriverClient.getDriver(detail.getDriverId());
+		if (ObjectUtil.isNotEmpty(driver)) {
+			detail.setDriverName(driver.getName());
+		}
+
 		//杂费明细
 		List<OrderFee> orderFeeList = orderFeeMapper.selectList(new LambdaQueryWrapper<OrderFee>()
 			.eq(OrderFee::getOrderId, order.getId())

+ 21 - 1
blade-service/blade-mocha-item/src/main/java/org/springblade/mocha/controller/BusinessOverpaymentController.java

@@ -24,11 +24,15 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.client.entity.CorpsDesc;
+import org.springblade.client.feign.ICorpsDescClient;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.ObjectUtil;
+import org.springblade.purchase.sales.entity.Order;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.web.bind.annotation.*;
@@ -38,6 +42,8 @@ import org.springblade.mocha.vo.BusinessOverpaymentVO;
 import org.springblade.mocha.service.IBusinessOverpaymentService;
 import org.springblade.core.boot.ctrl.BladeController;
 
+import java.util.List;
+
 /**
  * 客户溢付款主表 控制器
  *
@@ -50,7 +56,7 @@ import org.springblade.core.boot.ctrl.BladeController;
 @Api(value = "客户溢付款主表", tags = "客户溢付款主表接口")
 public class BusinessOverpaymentController extends BladeController {
 	private final IUserClient userClient;
-
+	private final ICorpsDescClient corpsDescClient;//客户信息
 	private final IBusinessOverpaymentService businessOverpaymentService;
 
 	/**
@@ -73,8 +79,22 @@ public class BusinessOverpaymentController extends BladeController {
 	public R<IPage<BusinessOverpayment>> list(BusinessOverpayment businessOverpayment, Query query) {
 		businessOverpayment.setTenantId(SecureUtil.getTenantId());
 		IPage<BusinessOverpayment> pages = businessOverpaymentService.page(Condition.getPage(query), Condition.getQueryWrapper(businessOverpayment));
+
+		String corpIds = "";//客户拼接ids
+		for (BusinessOverpayment bo : pages.getRecords()){
+			if (ObjectUtil.isNotEmpty(bo.getCorpId())){
+				corpIds = corpIds + bo.getCorpId() + ",";
+			}
+		}
+		//获得客户信息
+		List<CorpsDesc> corpsDescList = corpsDescClient.selectByCorpIds(corpIds);
 		if (CollectionUtils.isNotEmpty(pages.getRecords())){
 			pages.getRecords().stream().forEach(item ->{
+				if (item.getCorpId() != null) {
+					if (ObjectUtil.isNotEmpty(corpsDescList)) {
+						item.setCorpCode(corpsDescList.stream().filter(e -> e.getId().equals(item.getCorpId())).findFirst().get().getCode());
+					}
+				}
 				R<User> user = userClient.userInfoById(item.getCreateUser());
 				if (user.isSuccess() && user.getData() != null){
 					item.setCreateUserName(user.getData().getName());

+ 78 - 28
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/controller/OrderController.java

@@ -41,9 +41,8 @@ import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
-import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.deliver.goods.entity.Delivery;
-import org.springblade.deliver.goods.entity.DeliveryItems;
 import org.springblade.deliver.goods.feign.IDeliveryClient;
 import org.springblade.finance.feign.IFinanceClient;
 import org.springblade.finance.vojo.Acc;
@@ -90,7 +89,6 @@ public class OrderController extends BladeController {
 	private final IFinanceClient iFinanceClient;
 	private final IDeliveryClient deliveryClient;
 
-
 	/**
 	 * 详情
 	 */
@@ -166,31 +164,57 @@ public class OrderController extends BladeController {
 		}
 		lambdaQueryWrapper.orderByDesc(Order::getId);
 		IPage<Order> page = orderService.page(Condition.getPage(query), lambdaQueryWrapper);
+
+		String corpIds = "";//客户拼接ids
+		String belongToCorpIds = "";//销售公司ids
+		String productionPlantIds = "";//生产工厂ids
+		String createUserIds = "";//创建人id拼接
+
+		for (Order orders : page.getRecords()){
+			if (ObjectUtil.isNotEmpty(orders.getCorpId())){
+				corpIds = corpIds + orders.getCorpId() + ",";
+			}
+			if (ObjectUtil.isNotEmpty(orders.getCorpId())){
+				belongToCorpIds = belongToCorpIds + orders.getBelongToCorpId() + ",";
+			}
+			if (ObjectUtil.isNotEmpty(orders.getCorpId())){
+				productionPlantIds = productionPlantIds + orders.getProductionPlant() + ",";
+			}
+			if (ObjectUtil.isNotEmpty(orders.getCreateUser())){
+				createUserIds = createUserIds + orders.getCreateUser() + ",";
+			}
+		}
+
+		List<CorpsDesc> corpsDescList = corpsDescClient.selectByCorpIds(corpIds);
+		List<CorpsDesc> belongToCorpList = corpsDescClient.selectByCorpIds(belongToCorpIds);
+		List<CorpsDesc> productionPlantList = corpsDescClient.selectByCorpIds(productionPlantIds);
+		//获得创建人信息
+		List<User> createUserList = userClient.selectUserIds(createUserIds);
+
 		if (CollectionUtils.isNotEmpty(page.getRecords())) {
 			page.getRecords().stream().forEach(item -> {
 				if (item.getCorpId() != null) {
-					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getCorpId());//客户
-					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
-						item.setCorpsName(corpMessage.getData().getCname());
+					if (ObjectUtil.isNotEmpty(corpsDescList)) {
+						item.setCorpsName(corpsDescList.stream().filter(e -> e.getId().equals(item.getCorpId())).findFirst().get().getCname());
 					}
 				}
 				if (item.getBelongToCorpId() != null) {
-					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getBelongToCorpId());//销售公司
-					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
-						item.setBelongToCorpName(corpMessage.getData().getCname());
+					if (ObjectUtil.isNotEmpty(belongToCorpList)) {
+						item.setBelongToCorpName(belongToCorpList.stream().filter(e -> e.getId().equals(item.getBelongToCorpId())).findFirst().get().getCname());
 					}
 				}
 				if (item.getProductionPlant() != null) {
-					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getProductionPlant());//销售公司
-					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
-						item.setProductionPlantName(corpMessage.getData().getCname());
+					if (ObjectUtil.isNotEmpty(productionPlantList)) {
+						item.setProductionPlantName(productionPlantList.stream().filter(e -> e.getId().equals(item.getProductionPlant())).findFirst().get().getCname());
 					}
 				}
-				R<User> user = userClient.userInfoById(item.getCreateUser());//制单人
-				if (user.isSuccess() && user.getData() != null) {
-					item.setCreateUserName(user.getData().getName());
+				//制单人
+				if (item.getCreateUser() != null){
+					if (ObjectUtil.isNotEmpty(createUserList)) {
+						item.setCreateUserName(createUserList.stream().filter(e -> e.getId().equals(item.getCreateUser())).findFirst().get().getName());
+					}
 				}
-				//获取订单明细
+//				//获取订单明细
 				List<OrderItems> list = orderItemsService.list(new QueryWrapper<OrderItems>().eq("pid", item.getId()).eq("is_deleted", 0));
 				if (CollectionUtils.isNotEmpty(list)) {
 					item.setOrderQuantity(list.stream().map(OrderItems::getOrderQuantity).reduce(BigDecimal.ZERO, BigDecimal::add));//数量合计
@@ -245,6 +269,33 @@ public class OrderController extends BladeController {
 		}
 		lambdaQueryWrapper.orderByDesc(Order::getId);
 		List<Order> list = orderService.list(lambdaQueryWrapper);
+
+		String corpIds = "";//客户拼接ids
+		String belongToCorpIds = "";//销售公司ids
+		String productionPlantIds = "";//生产工厂ids
+		String createUserIds = "";//创建人id拼接
+
+		for (Order orders : list){
+			if (ObjectUtil.isNotEmpty(orders.getCorpId())){
+				corpIds = corpIds + orders.getCorpId() + ",";
+			}
+			if (ObjectUtil.isNotEmpty(orders.getCorpId())){
+				belongToCorpIds = belongToCorpIds + orders.getBelongToCorpId() + ",";
+			}
+			if (ObjectUtil.isNotEmpty(orders.getCorpId())){
+				productionPlantIds = productionPlantIds + orders.getProductionPlant() + ",";
+			}
+			if (ObjectUtil.isNotEmpty(orders.getCreateUser())){
+				createUserIds = createUserIds + orders.getCreateUser() + ",";
+			}
+		}
+
+		List<CorpsDesc> corpsDescList = corpsDescClient.selectByCorpIds(corpIds);
+		List<CorpsDesc> belongToCorpList = corpsDescClient.selectByCorpIds(belongToCorpIds);
+		List<CorpsDesc> productionPlantList = corpsDescClient.selectByCorpIds(productionPlantIds);
+		//获得创建人信息
+		List<User> createUserList = userClient.selectUserIds(createUserIds);
+
 		if (CollectionUtils.isNotEmpty(list)) {
 			list.forEach(item -> {
 				if (item.getCreatePurchase() == 0){
@@ -263,26 +314,25 @@ public class OrderController extends BladeController {
 					item.setSpecialCheckName("是");
 				}
 				if (item.getCorpId() != null) {
-					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getCorpId());//客户
-					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
-						item.setCorpsName(corpMessage.getData().getCname());
+					if (ObjectUtil.isNotEmpty(corpsDescList)) {
+						item.setCorpsName(corpsDescList.stream().filter(e -> e.getId().equals(item.getCorpId())).findFirst().get().getCname());
 					}
 				}
 				if (item.getBelongToCorpId() != null) {
-					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getBelongToCorpId());//销售公司
-					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
-						item.setBelongToCorpName(corpMessage.getData().getCname());
+					if (ObjectUtil.isNotEmpty(belongToCorpList)) {
+						item.setBelongToCorpName(belongToCorpList.stream().filter(e -> e.getId().equals(item.getBelongToCorpId())).findFirst().get().getCname());
 					}
 				}
 				if (item.getProductionPlant() != null) {
-					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getProductionPlant());//销售公司
-					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
-						item.setProductionPlantName(corpMessage.getData().getCname());
+					if (ObjectUtil.isNotEmpty(productionPlantList)) {
+						item.setProductionPlantName(productionPlantList.stream().filter(e -> e.getId().equals(item.getProductionPlant())).findFirst().get().getCname());
 					}
 				}
-				R<User> user = userClient.userInfoById(item.getCreateUser());//制单人
-				if (user.isSuccess() && user.getData() != null) {
-					item.setCreateUserName(user.getData().getName());
+				//制单人
+				if (item.getCreateUser() != null){
+					if (ObjectUtil.isNotEmpty(createUserList)) {
+						item.setCreateUserName(createUserList.stream().filter(e -> e.getId().equals(item.getCreateUser())).findFirst().get().getName());
+					}
 				}
 				//获取订单明细
 				List<OrderItems> itemsListlist = orderItemsService.list(new QueryWrapper<OrderItems>().eq("pid", item.getId()).eq("is_deleted", 0));