Browse Source

散货权限修改,报表查询和导出

lichao 3 years ago
parent
commit
c82de3cfd7

+ 7 - 0
blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/OrderAddress.java

@@ -16,6 +16,7 @@
  */
  */
 package org.springblade.land.entity;
 package org.springblade.land.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
@@ -148,6 +149,12 @@ public class OrderAddress implements Serializable {
 	private String packingType;
 	private String packingType;
 
 
 	/**
 	/**
+	 * 包装类型名称
+	 */
+	@TableField(exist = false)
+	private String packingTypeName;
+
+	/**
 	 * 重量
 	 * 重量
 	 */
 	 */
 	@ApiModelProperty(value = "重量")
 	@ApiModelProperty(value = "重量")

+ 5 - 1
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/vo/SalesDetailsVo.java

@@ -20,6 +20,8 @@ public class SalesDetailsVo implements Serializable {
 	private String tenantId;
 	private String tenantId;
 	//销售订单表主键
 	//销售订单表主键
 	private Long orderId;
 	private Long orderId;
+	//来源订单号
+	private String orgOrderNo;
 	//销售订单物料明细主键
 	//销售订单物料明细主键
 	private Long itemsId;
 	private Long itemsId;
 	//销售订单费用主键
 	//销售订单费用主键
@@ -47,7 +49,7 @@ public class SalesDetailsVo implements Serializable {
 	private BigDecimal amount;
 	private BigDecimal amount;
 	//单价
 	//单价
 	private BigDecimal price;
 	private BigDecimal price;
-	//回款额
+	//回款额----已付金额
 	private BigDecimal settlmentAmount;
 	private BigDecimal settlmentAmount;
 	//包装费
 	//包装费
 	private BigDecimal feesAmount;
 	private BigDecimal feesAmount;
@@ -65,4 +67,6 @@ public class SalesDetailsVo implements Serializable {
 	//尺寸
 	//尺寸
 	private String specs;
 	private String specs;
 
 
+	//采购金额
+	private BigDecimal orderAmount;
 }
 }

+ 10 - 0
blade-service/blade-land/src/main/java/org/springblade/land/controller/OrderController.java

@@ -143,6 +143,16 @@ public class OrderController extends BladeController {
 	}
 	}
 
 
 	/**
 	/**
+	 * 陆运App散货详情
+	 */
+	@GetMapping("/detailAppBulkLoad")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "散货App详情", notes = "传入order")
+	public R<Order> detailAppBulkLoad(Order order) {
+		return R.data(orderService.detailAppBulkLoad(order));
+	}
+
+	/**
 	 * 自定义分页 陆运散货订单表
 	 * 自定义分页 陆运散货订单表
 	 */
 	 */
 	@GetMapping("/pageBulkLoad")
 	@GetMapping("/pageBulkLoad")

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

@@ -111,6 +111,11 @@ public interface IOrderService extends IService<Order> {
 	Order detailBulkLoad(Order order);
 	Order detailBulkLoad(Order order);
 
 
 	/**
 	/**
+	 * 陆运散货App详情
+	 */
+	Order detailAppBulkLoad(Order order);
+
+	/**
 	 * 陆运散货修改状态
 	 * 陆运散货修改状态
 	 */
 	 */
 	Long statusBulkLoad(Long id, Integer status);
 	Long statusBulkLoad(Long id, Integer status);

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

@@ -146,7 +146,8 @@ public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem
 
 
 		itemQueryWrapper.eq(OrderItem::getKind, 2)
 		itemQueryWrapper.eq(OrderItem::getKind, 2)
 			.eq(OrderItem::getTenantId, AuthUtil.getTenantId())
 			.eq(OrderItem::getTenantId, AuthUtil.getTenantId())
-			.eq(OrderItem::getIsDeleted, 0);
+			.eq(OrderItem::getIsDeleted, 0)
+			.ne(OrderItem::getShippingMode, "散货");
 		List<OrderItem> itemList = baseMapper.selectList(itemQueryWrapper);
 		List<OrderItem> itemList = baseMapper.selectList(itemQueryWrapper);
 		long all = itemList.size();
 		long all = itemList.size();
 		long one = itemList.stream().filter(item -> item.getStatus() == 1).count();
 		long one = itemList.stream().filter(item -> item.getStatus() == 1).count();
@@ -610,6 +611,7 @@ public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem
 				.like(StringUtil.isNotBlank(orderItem.getAddressDetail()), Order::getAddressDetail, orderItem.getAddressDetail())
 				.like(StringUtil.isNotBlank(orderItem.getAddressDetail()), Order::getAddressDetail, orderItem.getAddressDetail())
 				.eq(Order::getIsDeleted, 0)
 				.eq(Order::getIsDeleted, 0)
 				.eq(Order::getTenantId, AuthUtil.getTenantId())
 				.eq(Order::getTenantId, AuthUtil.getTenantId())
+				.ne(Order::getShippingMode, "散货")
 			).stream().map(Order::getId).collect(Collectors.toList());
 			).stream().map(Order::getId).collect(Collectors.toList());
 
 
 			if (CollectionUtil.isEmpty(orderIdList)) {
 			if (CollectionUtil.isEmpty(orderIdList)) {

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

@@ -229,6 +229,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			.between(StringUtil.isNotBlank(order.getBeginCrateTime()) && StringUtil.isNotBlank(order.getEndCrateTime()), Order::getCreateTime, order.getBeginCrateTime(), order.getEndCrateTime())
 			.between(StringUtil.isNotBlank(order.getBeginCrateTime()) && StringUtil.isNotBlank(order.getEndCrateTime()), Order::getCreateTime, order.getBeginCrateTime(), order.getEndCrateTime())
 			.eq(Order::getIsDeleted, 0)
 			.eq(Order::getIsDeleted, 0)
 			.eq(Order::getTenantId, AuthUtil.getTenantId())
 			.eq(Order::getTenantId, AuthUtil.getTenantId())
+			.ne(Order::getShippingMode, "散货")
 			.orderByDesc(Order::getArrivalTime);
 			.orderByDesc(Order::getArrivalTime);
 
 
 		if (order.getKind() == 2) {
 		if (order.getKind() == 2) {
@@ -277,7 +278,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					.ne(OrderItem::getCtnQuantity, 0)
 					.ne(OrderItem::getCtnQuantity, 0)
 					.eq(OrderItem::getOrderId, record.getId())
 					.eq(OrderItem::getOrderId, record.getId())
 					.eq(OrderItem::getKind, 1)
 					.eq(OrderItem::getKind, 1)
-					.eq(OrderItem::getIsDeleted, 0));
+					.eq(OrderItem::getIsDeleted, 0)
+					.ne(OrderItem::getShippingMode, "散货"));
 
 
 				if (CollectionUtil.isNotEmpty(itemList)) {
 				if (CollectionUtil.isNotEmpty(itemList)) {
 					Map<String, Long> ctnMap = itemList.stream().collect(Collectors.groupingBy(OrderItem::getCtnType, Collectors.summingLong(OrderItem::getCtnQuantity)));
 					Map<String, Long> ctnMap = itemList.stream().collect(Collectors.groupingBy(OrderItem::getCtnType, Collectors.summingLong(OrderItem::getCtnQuantity)));
@@ -296,7 +298,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				List<OrderItem> itemList = orderItemMapper.selectList(new LambdaQueryWrapper<OrderItem>()
 				List<OrderItem> itemList = orderItemMapper.selectList(new LambdaQueryWrapper<OrderItem>()
 					.eq(OrderItem::getOrderId, record.getId())
 					.eq(OrderItem::getOrderId, record.getId())
 					.eq(OrderItem::getKind, 2)
 					.eq(OrderItem::getKind, 2)
-					.eq(OrderItem::getIsDeleted, 0));
+					.eq(OrderItem::getIsDeleted, 0)
+					.ne(OrderItem::getShippingMode, "散货"));
 
 
 				if (CollectionUtil.isNotEmpty(itemList)) {
 				if (CollectionUtil.isNotEmpty(itemList)) {
 					// 全部
 					// 全部
@@ -422,7 +425,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		List<Long> orderIdList;
 		List<Long> orderIdList;
 		LambdaQueryWrapper<Order> orderQueryWrapper = new LambdaQueryWrapper<>();
 		LambdaQueryWrapper<Order> orderQueryWrapper = new LambdaQueryWrapper<>();
 		orderQueryWrapper.eq(Order::getTenantId, AuthUtil.getTenantId())
 		orderQueryWrapper.eq(Order::getTenantId, AuthUtil.getTenantId())
-			.eq(Order::getIsDeleted, 0);
+			.eq(Order::getIsDeleted, 0)
+			.ne(Order::getShippingMode, "散货");
 
 
 		if (order.getKind() == 1) {
 		if (order.getKind() == 1) {
 			orderIdList = baseMapper.selectList(orderQueryWrapper).stream().filter(orderTemp -> orderTemp.getStatus() == 0).map(Order::getId).collect(Collectors.toList());
 			orderIdList = baseMapper.selectList(orderQueryWrapper).stream().filter(orderTemp -> orderTemp.getStatus() == 0).map(Order::getId).collect(Collectors.toList());
@@ -486,7 +490,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			//未派车2,未受理3,未完工4,已关闭5
 			//未派车2,未受理3,未完工4,已关闭5
 			orderQueryWrapper.in(Order::getStatus,2,3,4,5);
 			orderQueryWrapper.in(Order::getStatus,2,3,4,5);
 		}
 		}
-		if (userRole.contains(LandConst.ROLE_SJ)){
+		if (userRole.contains(LandConst.ROLE_SJ)){//司机
 			//未受理3,未完工4,已关闭5
 			//未受理3,未完工4,已关闭5
 			orderQueryWrapper.in(Order::getStatus,3,4,5);
 			orderQueryWrapper.in(Order::getStatus,3,4,5);
 		}
 		}
@@ -590,6 +594,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				item.setOrderId(order.getId());
 				item.setOrderId(order.getId());
 				item.setShippingMode("散货");
 				item.setShippingMode("散货");
 				item.setKind(2);
 				item.setKind(2);
+				item.setCtnSize("1");
+				item.setCtnType("散货");
 				item.setTenantId(AuthUtil.getTenantId());
 				item.setTenantId(AuthUtil.getTenantId());
 				item.setCreateUser(AuthUtil.getUserId());
 				item.setCreateUser(AuthUtil.getUserId());
 				item.setCreateTime(new Date());
 				item.setCreateTime(new Date());
@@ -655,6 +661,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	 */
 	 */
 	@Override
 	@Override
 	public IPage<Order> selectBulkLoadList(Order order, Query query) {
 	public IPage<Order> selectBulkLoadList(Order order, Query query) {
+		System.out.println("jinlaile========");
 		LambdaQueryWrapper<Order> orderQueryWrapper = new LambdaQueryWrapper<>();
 		LambdaQueryWrapper<Order> orderQueryWrapper = new LambdaQueryWrapper<>();
 		orderQueryWrapper.eq(Order::getShippingMode, "散货")
 		orderQueryWrapper.eq(Order::getShippingMode, "散货")
 			.eq(Order::getTenantId, AuthUtil.getTenantId())
 			.eq(Order::getTenantId, AuthUtil.getTenantId())
@@ -676,6 +683,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 
 
 		// 获取角色 设置权限
 		// 获取角色 设置权限
 		String userRole = AuthUtil.getUserRole();
 		String userRole = AuthUtil.getUserRole();
+		Long userId = AuthUtil.getUserId();
+		System.out.println("userRole================"+userRole);
+		System.out.println("userId================"+userId);
 		if (userRole.contains(LandConst.ROLE_CD)) {//车队
 		if (userRole.contains(LandConst.ROLE_CD)) {//车队
 			//未派车2,未受理3,未完工4,已关闭5
 			//未派车2,未受理3,未完工4,已关闭5
 			orderQueryWrapper.in(Order::getStatus,2,3,4,5);
 			orderQueryWrapper.in(Order::getStatus,2,3,4,5);
@@ -846,6 +856,53 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	}
 	}
 
 
 	/**
 	/**
+	 * 陆运APP散货详情
+	 */
+	@Override
+	public Order detailAppBulkLoad(Order order) {
+		Order orderapp = detailBulkLoad(order);
+
+		if (!ObjectUtil.isEmpty(orderapp.getSalesman())) {
+			R<User> user = userClient.userInfoById(orderapp.getSalesman());
+			if (user.isSuccess() && user.getData() != null) {
+				orderapp.setSalesmanName(user.getData().getRealName());
+			}
+		}
+		if (!ObjectUtil.isEmpty(orderapp.getSalesmanDept())) {
+			R<String> dept = sysClient.getDeptName(orderapp.getSalesmanDept());
+			if (dept.isSuccess() && dept.getData() != null) {
+				orderapp.setSalesmanDeptName(dept.getData());
+			}
+		}
+		if (!ObjectUtil.isEmpty(orderapp.getDispatcher())) {
+			R<User> user = userClient.userInfoById(orderapp.getDispatcher());
+			if (user.isSuccess() && user.getData() != null) {
+				orderapp.setDispatcherName(user.getData().getRealName());
+			}
+		}
+		if (!ObjectUtil.isEmpty(orderapp.getDispatchDept())) {
+			R<String> dept = sysClient.getDeptName(orderapp.getDispatchDept());
+			if (dept.isSuccess() && dept.getData() != null) {
+				orderapp.setDispatchDeptName(dept.getData());
+			}
+		}
+		if (ObjectUtil.isNotEmpty(orderapp.getFleetId())) {
+			R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(orderapp.getFleetId());
+			if (corpMessage.isSuccess() && corpMessage.getData() != null) {
+				orderapp.setFleetName(corpMessage.getData().getCname());
+			}
+		}
+
+		if (ObjectUtil.isNotEmpty(orderapp.getDriverId())) {
+			LandDriver driver = landDriverClient.getDriver(orderapp.getDriverId());
+			if (ObjectUtil.isNotEmpty(driver)) {
+				orderapp.setDriverName(driver.getName());
+			}
+		}
+		return orderapp;
+	}
+
+	/**
 	 * 陆运散货修改状态
 	 * 陆运散货修改状态
 	 */
 	 */
 	@Override
 	@Override

+ 66 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/excel/PurchaseExcel.java

@@ -0,0 +1,66 @@
+package org.springblade.purchase.sales.excel;
+
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ *  统计分析 包装费用导出
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class PurchaseExcel implements Serializable {
+
+	/**
+	 *  采购单号
+	 */
+	@ExcelProperty(value = "采购单号")
+	private String orderNo;
+
+	/**
+	 * 来源销售单号
+	 */
+	@ExcelProperty(value = "来源销售单号")
+	private String orgOrderNo;
+
+	/**
+	 * 品牌
+	 */
+	@ExcelProperty(value = "品牌")
+	private String brand;
+
+	/**
+	 * 制单日期
+	 */
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+	@ExcelProperty(value = "制单日期")
+	private Date careteTime;
+
+	/**
+	 * 数量
+	 */
+	@ExcelProperty(value = "数量")
+	private Long quantity;
+
+	/**
+	 * 采购金额
+	 */
+	@ExcelProperty(value = "采购金额")
+	private BigDecimal orderAmount;
+
+	/**
+	 * 已付金额
+	 */
+	@ExcelProperty(value = "已付金额")
+	private BigDecimal settlmentAmount;
+}

+ 26 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/export/ExportOrderController.java

@@ -726,6 +726,32 @@ public class ExportOrderController extends BladeController {
 	}
 	}
 
 
 	/**
 	/**
+	 * 统计分析 品牌采购对账
+	 * @param detailsVo
+	 * @return
+	 */
+	@GetMapping("/purchaseReconciliation")
+	@ApiOperation(value = "品牌采购对账", notes = "品牌采购对账")
+	public R<IPage<SalesDetailsVo>> purchaseReconciliation(SalesDetailsVo detailsVo,Query query){
+		detailsVo.setTenantId(SecureUtil.getTenantId());
+		IPage<SalesDetailsVo> pages = orderService.purchaseReconciliation(Condition.getPage(query), detailsVo);
+		return R.data(pages);
+	}
+
+	/**
+	 * 统计分析 品牌采购对账列表导出
+	 * @param detailsVo
+	 * @return
+	 */
+	@GetMapping("/selPurchaseExport")
+	@ApiOperation(value = "品牌采购对账导出", notes = "品牌采购对账导出")
+	public void selPurchaseExport(SalesDetailsVo detailsVo, HttpServletResponse response){
+		detailsVo.setTenantId(SecureUtil.getTenantId());
+		List<PurchaseExcel> list = orderService.selPurchaseExport(detailsVo);
+		ExcelUtil.export(response, "品牌采购对账", "品牌采购对账", list, PurchaseExcel.class);
+	}
+
+	/**
 	 * 统计分析 销售利润
 	 * 统计分析 销售利润
 	 * @param
 	 * @param
 	 * @return
 	 * @return

+ 12 - 1
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/mapper/OrderMapper.java

@@ -23,6 +23,7 @@ import com.trade.purchase.order.vo.OrderDTO;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.purchase.sales.entity.Order;
 import org.springblade.purchase.sales.entity.Order;
 import org.springblade.purchase.sales.excel.PackingFeeExcel;
 import org.springblade.purchase.sales.excel.PackingFeeExcel;
+import org.springblade.purchase.sales.excel.PurchaseExcel;
 import org.springblade.purchase.sales.excel.SalesCommissionExcel;
 import org.springblade.purchase.sales.excel.SalesCommissionExcel;
 import org.springblade.purchase.sales.excel.SalesDetailsExcel;
 import org.springblade.purchase.sales.excel.SalesDetailsExcel;
 import org.springblade.purchase.sales.vo.*;
 import org.springblade.purchase.sales.vo.*;
@@ -107,11 +108,21 @@ public interface OrderMapper extends BaseMapper<Order> {
 	List<SalesDetailsVo> selPackingFee(IPage<SalesDetailsVo> page,@Param("detailsVo") SalesDetailsVo detailsVo);
 	List<SalesDetailsVo> selPackingFee(IPage<SalesDetailsVo> page,@Param("detailsVo") SalesDetailsVo detailsVo);
 
 
 	/**
 	/**
-	 * 统计分析 销售人员提成列表导出
+	 * 统计分析 包装费对账列表导出
 	 */
 	 */
 	List<PackingFeeExcel> selPackingFeeList(@Param("detailsVo") SalesDetailsVo detailsVo);
 	List<PackingFeeExcel> selPackingFeeList(@Param("detailsVo") SalesDetailsVo detailsVo);
 
 
 	/**
 	/**
+	 * 统计分析 品牌采购对账列表和检索条件查询
+	 */
+	List<SalesDetailsVo> purchaseReconciliation(IPage<SalesDetailsVo> page,@Param("detailsVo") SalesDetailsVo detailsVo);
+
+	/**
+	 * 统计分析 销售人员提成列表导出
+	 */
+	List<PurchaseExcel> selPurchaseList(@Param("detailsVo") SalesDetailsVo detailsVo);
+
+	/**
 	 * 首页获取销售趋势
 	 * 首页获取销售趋势
 	 * @param tenantId 租户id
 	 * @param tenantId 租户id
 	 * @param tradeType 贸易类型
 	 * @param tradeType 贸易类型

+ 64 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/mapper/OrderMapper.xml

@@ -787,6 +787,70 @@ ORDER BY
         order by BO.create_time desc
         order by BO.create_time desc
     </select>
     </select>
 
 
+    <select id="purchaseReconciliation" resultType="org.springblade.purchase.sales.vo.SalesDetailsVo">
+        SELECT
+        BO.id AS orderId,
+        BO.order_no as orderNo,
+        BO.org_order_no as orgOrderNo,
+        BGD.Brand AS brand,
+        BO.create_time AS careteTime,
+        BOI.order_quantity AS quantity,
+        BO.order_amount as orderAmount,
+        BO.settlment_amount as settlmentAmount
+        FROM business_order AS BO
+        LEFT JOIN business_order_items BOI ON BOI.pid = BO.id
+        LEFT JOIN basic_goods_desc BGD ON BOI.Item_id = BGD.id
+        LEFT JOIN business_order_fees BOF ON BOF.pid = BO.id
+        LEFT JOIN basic_corps_desc BCD ON BO.Corp_id = BCD.id
+        <where>
+            BOI.is_deleted = 0
+            AND BO.bill_type = 'CG'
+            AND BO.tenant_id = #{detailsVo.tenantId}
+            <if test="detailsVo.brand != null and detailsVo.brand != ''">
+                AND BGD.Brand like concat('%', #{detailsVo.brand}, '%')
+            </if>
+            <if test="detailsVo.beginCreateTime !=null and detailsVo.beginCreateTime != ''">
+                and BO.create_time &gt;= #{detailsVo.beginCreateTime}
+            </if>
+            <if test="detailsVo.endCreateTime !=null and detailsVo.endCreateTime != ''">
+                and BO.create_time &lt;= #{detailsVo.endCreateTime}
+            </if>
+        </where>
+        order by BO.create_time desc
+    </select>
+
+    <select id="selPurchaseList" resultType="org.springblade.purchase.sales.excel.PurchaseExcel">
+        SELECT
+        BO.id AS orderId,
+        BO.order_no as orderNo,
+        BO.org_order_no as orgOrderNo,
+        BGD.Brand AS brand,
+        BO.create_time AS careteTime,
+        BOI.order_quantity AS quantity,
+        BO.order_amount as orderAmount,
+        BO.settlment_amount as settlmentAmount
+        FROM business_order AS BO
+        LEFT JOIN business_order_items BOI ON BOI.pid = BO.id
+        LEFT JOIN basic_goods_desc BGD ON BOI.Item_id = BGD.id
+        LEFT JOIN business_order_fees BOF ON BOF.pid = BO.id
+        LEFT JOIN basic_corps_desc BCD ON BO.Corp_id = BCD.id
+        <where>
+            BOI.is_deleted = 0
+            AND BO.bill_type = 'CG'
+            AND BO.tenant_id = #{detailsVo.tenantId}
+            <if test="detailsVo.brand != null and detailsVo.brand != ''">
+                AND BGD.Brand like concat('%', #{detailsVo.brand}, '%')
+            </if>
+            <if test="detailsVo.beginCreateTime !=null and detailsVo.beginCreateTime != ''">
+                and BO.create_time &gt;= #{detailsVo.beginCreateTime}
+            </if>
+            <if test="detailsVo.endCreateTime !=null and detailsVo.endCreateTime != ''">
+                and BO.create_time &lt;= #{detailsVo.endCreateTime}
+            </if>
+        </where>
+        order by BO.create_time desc
+    </select>
+
     <update id="updateOrderMessage" parameterType="org.springblade.purchase.sales.entity.Order">
     <update id="updateOrderMessage" parameterType="org.springblade.purchase.sales.entity.Order">
         update  business_order
         update  business_order
         <trim prefix="SET" suffixOverrides=",">
         <trim prefix="SET" suffixOverrides=",">

+ 10 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/IOrderService.java

@@ -23,6 +23,7 @@ import org.apache.ibatis.annotations.Param;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.api.R;
 import org.springblade.purchase.sales.entity.Order;
 import org.springblade.purchase.sales.entity.Order;
 import org.springblade.purchase.sales.excel.PackingFeeExcel;
 import org.springblade.purchase.sales.excel.PackingFeeExcel;
+import org.springblade.purchase.sales.excel.PurchaseExcel;
 import org.springblade.purchase.sales.excel.SalesCommissionExcel;
 import org.springblade.purchase.sales.excel.SalesCommissionExcel;
 import org.springblade.purchase.sales.excel.SalesDetailsExcel;
 import org.springblade.purchase.sales.excel.SalesDetailsExcel;
 import org.springblade.purchase.sales.vo.*;
 import org.springblade.purchase.sales.vo.*;
@@ -193,6 +194,15 @@ public interface IOrderService extends IService<Order> {
 	 */
 	 */
 	List<PackingFeeExcel> selPackingFeeExport(SalesDetailsVo detailsVo );
 	List<PackingFeeExcel> selPackingFeeExport(SalesDetailsVo detailsVo );
 
 
+	/**
+	 * 统计分析 品牌采购对账列表和检索条件查询
+	 */
+	IPage<SalesDetailsVo> purchaseReconciliation(IPage<SalesDetailsVo> page,SalesDetailsVo detailsVo);
+
+	/**
+	 * 统计分析 品牌采购对账导出
+	 */
+	List<PurchaseExcel> selPurchaseExport(SalesDetailsVo detailsVo );
 
 
 	/**
 	/**
 	 * 统计分析 销售利润
 	 * 统计分析 销售利润

+ 17 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -49,6 +49,7 @@ import org.springblade.finance.vojo.Items;
 import org.springblade.purchase.sales.entity.*;
 import org.springblade.purchase.sales.entity.*;
 import org.springblade.purchase.sales.enums.OrderStatusEnum;
 import org.springblade.purchase.sales.enums.OrderStatusEnum;
 import org.springblade.purchase.sales.excel.PackingFeeExcel;
 import org.springblade.purchase.sales.excel.PackingFeeExcel;
+import org.springblade.purchase.sales.excel.PurchaseExcel;
 import org.springblade.purchase.sales.excel.SalesCommissionExcel;
 import org.springblade.purchase.sales.excel.SalesCommissionExcel;
 import org.springblade.purchase.sales.excel.SalesDetailsExcel;
 import org.springblade.purchase.sales.excel.SalesDetailsExcel;
 import org.springblade.purchase.sales.mapper.OrderFeesMapper;
 import org.springblade.purchase.sales.mapper.OrderFeesMapper;
@@ -1383,6 +1384,22 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	}
 	}
 
 
 	/**
 	/**
+	 * 统计分析 品牌采购对账列表和检索条件查询
+	 */
+	@Override
+	public IPage<SalesDetailsVo> purchaseReconciliation(IPage<SalesDetailsVo> page, SalesDetailsVo detailsVo) {
+		return page.setRecords(baseMapper.purchaseReconciliation(page, detailsVo));
+	}
+
+	/**
+	 * 统计分析 品牌采购对账列表导出
+	 */
+	@Override
+	public List<PurchaseExcel> selPurchaseExport(SalesDetailsVo detailsVo) {
+		return baseMapper.selPurchaseList(detailsVo);
+	}
+
+	/**
 	 * 统计分析 销售利润
 	 * 统计分析 销售利润
 	 */
 	 */
 	@Override
 	@Override