Browse Source

统计分析 销售明细

lichao 3 years ago
parent
commit
9fca354647

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

@@ -0,0 +1,60 @@
+package org.springblade.purchase.sales.vo;
+
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 统计分析 销售明细视图实体类
+ *
+ * @author BladeX
+ * @since 2022-06-27
+ */
+
+@Data
+public class SalesDetailsVo {
+	//销售订单表主键
+	private Long orderId;
+	//销售订单物料明细主键
+	private Long itemsId;
+	//销售订单费用主键
+	private Long feesId;
+	//商品主键
+	private Long commodityId;
+	//客户主键
+	private Long corpid;
+	//客户名称
+	private String corpName;
+	//时间
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date careteTime;
+	//业务员
+	private String salesName;
+	//产品编码
+	private String commodityCode;
+	//规格
+	private String typeno;
+	//花纹
+	private String brandItem;
+	//数量
+	private BigDecimal quantity;
+	//金额
+	private BigDecimal amount;
+	//单价
+	private BigDecimal price;
+	//回款额
+	private BigDecimal settlmentAmount;
+	//包装费
+	private BigDecimal feesAmount;
+	//特价金额
+
+	//开始日期
+	private String beginCreateTime;
+	//结束日期
+	private String endCreateTime;
+	//品牌
+	private String brand;
+
+}

+ 13 - 3
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/export/ExportOrderController.java

@@ -31,9 +31,7 @@ import org.springblade.purchase.sales.entity.OrderItems;
 import org.springblade.purchase.sales.excel.ExportOrderExcel;
 import org.springblade.purchase.sales.excel.ExportOrderExcel;
 import org.springblade.purchase.sales.excel.ProfitItemExcel;
 import org.springblade.purchase.sales.excel.ProfitItemExcel;
 import org.springblade.purchase.sales.service.*;
 import org.springblade.purchase.sales.service.*;
-import org.springblade.purchase.sales.vo.CheckDate;
-import org.springblade.purchase.sales.vo.OrderItemsVO;
-import org.springblade.purchase.sales.vo.OrderVO;
+import org.springblade.purchase.sales.vo.*;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.feign.IUserClient;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
@@ -650,4 +648,16 @@ public class ExportOrderController extends BladeController {
 		}
 		}
 		return R.data(orderService.salesTrend(order));
 		return R.data(orderService.salesTrend(order));
 	}
 	}
+	/**
+	 * 查询 统计分析 销售明细
+	 */
+	@GetMapping("/selBusinessOrder")
+	@ApiOperation(value = "统计分析 销售明细", notes = "统计分析 销售明细")
+	public R<IPage<SalesDetailsVo>> selBusinessOrder(SalesDetailsVo detailsVo, Query query)
+	{
+		System.out.println("1111111111111111111111");
+		System.out.println(detailsVo);
+		IPage<SalesDetailsVo> pages = orderService.selBusinessOrder(Condition.getPage(query), detailsVo);
+		return R.data(pages);
+	}
 }
 }

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

@@ -79,6 +79,11 @@ public interface OrderMapper extends BaseMapper<Order> {
 						  @Param("billType") String billType,
 						  @Param("billType") String billType,
 						  @Param("annual") String annual);
 						  @Param("annual") String annual);
 	/**
 	/**
+	 * 查询 统计分析 销售明细
+	 */
+	List<SalesDetailsVo> selBusinessOrder(IPage<SalesDetailsVo> page,@Param("detailsVo") SalesDetailsVo detailsVo);
+
+	/**
 	 * 首页获取销售趋势
 	 * 首页获取销售趋势
 	 * @param tenantId 租户id
 	 * @param tenantId 租户id
 	 * @param tradeType 贸易类型
 	 * @param tradeType 贸易类型

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

@@ -530,6 +530,50 @@ FROM
 ORDER BY
 ORDER BY
 	m.id
 	m.id
     </select>
     </select>
+
+    <select id="selBusinessOrder" resultType="org.springblade.purchase.sales.vo.SalesDetailsVo">
+        SELECT
+        BOI.id AS itemsId,
+        BO.id AS orderId,
+        BO.Corp_id AS corpid,
+        BCD.cname AS corpName,
+        BO.create_time AS careteTime,
+        BO.Sales_name AS salesName,
+        BGD.id AS commodityId,
+        BGD.code AS commodityCode,
+        BGD.Typeno AS typeno,
+        BGD.brand_item AS brandItem,
+        BOI.Actual_quantity AS quantity,
+        BOI.Amount AS amount,
+        BGD.Price AS price,
+        BO.Settlment_amount AS settlmentAmount,
+        BOF.Amount AS feesAmount,
+        BGD.Brand AS brand
+        FROM business_order_items AS BOI
+        LEFT JOIN business_order BO 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
+            <if test="detailsVo.corpName != null and detailsVo.corpName != ''">
+                AND BCD.cname like concat('%', #{detailsVo.corpName}, '%')
+            </if>
+            <if test="detailsVo.brand != null and detailsVo.brand != ''">
+                AND BGD.Brand like concat('%', #{detailsVo.brand}, '%')
+            </if>
+            <if test="detailsVo.salesName != null and detailsVo.salesName != ''">
+                AND BO.Sales_name like concat('%', #{detailsVo.salesName}, '%')
+            </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>
+    </select>
+
     <select id="monthSales"  resultType="BigDecimal">
     <select id="monthSales"  resultType="BigDecimal">
         SELECT
         SELECT
         ROUND( IFNULL( SUM( bi.amount * bo.exchange_rate ), 0 ), 2 ) AS a
         ROUND( IFNULL( SUM( bi.amount * bo.exchange_rate ), 0 ), 2 ) AS a

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

@@ -159,4 +159,9 @@ public interface IOrderService extends IService<Order> {
 	 * @param id
 	 * @param id
 	 */
 	 */
 	void reject(Long id);
 	void reject(Long id);
+
+	/**
+	 * 查询 统计分析 销售明细
+	 */
+	IPage<SalesDetailsVo> selBusinessOrder(IPage<SalesDetailsVo> page, SalesDetailsVo detailsVo);
 }
 }

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

@@ -1331,6 +1331,14 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		return baseMapper.salesTrend(Order.getTenantId(), Order.getTradeType(), Order.getBillType(), Order.getAnnual());
 		return baseMapper.salesTrend(Order.getTenantId(), Order.getTradeType(), Order.getBillType(), Order.getAnnual());
 	}
 	}
 
 
+	/**
+	 * 查询 统计分析 销售明细
+	 */
+	@Override
+	public IPage<SalesDetailsVo> selBusinessOrder(IPage<SalesDetailsVo> page, SalesDetailsVo detailsVo) {
+		return page.setRecords(baseMapper.selBusinessOrder(page, detailsVo));
+	}
+
 	@Override
 	@Override
 	public MonthSales monthSales(OrderVO order) {
 	public MonthSales monthSales(OrderVO order) {
 		MonthSales monthSales = new MonthSales();
 		MonthSales monthSales = new MonthSales();