From 00f39e457e7604fade0da9020bbed777f2da76f7 Mon Sep 17 00:00:00 2001
From: 李林 <z1292839451@163.com>
Date: 星期六, 23 十二月 2023 23:09:44 +0800
Subject: [PATCH] 第一阶段

---
 data-server/src/main/java/com/yuanchu/mom/service/DataReportingService.java          |   21 +++
 data-server/src/main/java/com/yuanchu/mom/mapper/DataReportingMapper.java            |   23 +++
 data-server/src/main/java/com/yuanchu/mom/pojo/DataReporting.java                    |  193 ++++++++++++++++++++++++++++++++
 data-server/src/main/java/com/yuanchu/mom/service/impl/DataReportingServiceImpl.java |   56 +++++++++
 data-server/src/main/resources/mapper/DataReportingMapper.xml                        |   55 +++++++++
 5 files changed, 348 insertions(+), 0 deletions(-)

diff --git a/data-server/src/main/java/com/yuanchu/mom/mapper/DataReportingMapper.java b/data-server/src/main/java/com/yuanchu/mom/mapper/DataReportingMapper.java
new file mode 100644
index 0000000..9c1f08c
--- /dev/null
+++ b/data-server/src/main/java/com/yuanchu/mom/mapper/DataReportingMapper.java
@@ -0,0 +1,23 @@
+package com.yuanchu.mom.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yuanchu.mom.dto.DataReportingPageDto;
+import com.yuanchu.mom.pojo.DataReporting;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author Administrator
+* @description 閽堝琛ㄣ�恉ata_reporting(鏁版嵁涓婃姤)銆戠殑鏁版嵁搴撴搷浣淢apper
+* @createDate 2023-12-23 10:39:43
+* @Entity com.yuanchu.mom.pojo.DataReporting
+*/
+public interface DataReportingMapper extends BaseMapper<DataReporting> {
+
+    IPage<DataReportingPageDto> selectDataReportingDtoPageList(IPage<DataReportingPageDto> page, QueryWrapper<DataReportingPageDto> ew);
+
+}
+
+
+
+
diff --git a/data-server/src/main/java/com/yuanchu/mom/pojo/DataReporting.java b/data-server/src/main/java/com/yuanchu/mom/pojo/DataReporting.java
new file mode 100644
index 0000000..232eb34
--- /dev/null
+++ b/data-server/src/main/java/com/yuanchu/mom/pojo/DataReporting.java
@@ -0,0 +1,193 @@
+package com.yuanchu.mom.pojo;
+
+import javax.validation.constraints.Size;
+import javax.validation.constraints.NotNull;
+
+import java.io.Serializable;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yuanchu.mom.annotation.ValueTableShow;
+import com.yuanchu.mom.common.OrderBy;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.hibernate.validator.constraints.Length;
+
+/**
+* 鏁版嵁涓婃姤
+* @TableName data_reporting
+*/
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DataReporting extends OrderBy implements Serializable {
+
+    /**
+    * 
+    */
+    @NotNull(message="[]涓嶈兘涓虹┖")
+    @ApiModelProperty("涓婚敭")
+    private Integer id;
+    /**
+     * 鐧昏浜�
+     */
+    @Size(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ApiModelProperty("鐧昏浜�")
+    @Length(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ValueTableShow(1)
+    private String registrant;
+    /**
+    * 閮ㄩ棬
+    */
+    @Size(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ApiModelProperty("閮ㄩ棬")
+    @Length(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ValueTableShow(2)
+    private String department;
+    /**
+     * 璐︽埛鍚�
+     */
+    @Size(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ApiModelProperty("璐︽埛鍚�")
+    @Length(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ValueTableShow(3)
+    private String name;
+    /**
+    * 娓犻亾
+    */
+    @Size(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ApiModelProperty("娓犻亾")
+    @Length(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ValueTableShow(4)
+    private String channel;
+    /**
+     * 椤圭洰
+     */
+    @Size(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ApiModelProperty("椤圭洰")
+    @Length(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ValueTableShow(5)
+    private String product;
+    /**
+    * 灞曠幇閲�
+    */
+    @ApiModelProperty("灞曠幇閲�")
+    @ValueTableShow(6)
+    private Integer show;
+    /**
+    * 鐐瑰嚮閲�
+    */
+    @ApiModelProperty("鐐瑰嚮閲�")
+    @ValueTableShow(7)
+    private Integer click;
+    /**
+    * 璐︽埛娑堣垂
+    */
+    @ApiModelProperty("璐︽埛娑堣垂")
+    @ValueTableShow(8)
+    private BigDecimal accountConsumption;
+    /**
+    * 瀹㈡埛杩旂偣娑堣垂
+    */
+    @ApiModelProperty("瀹㈡埛杩旂偣娑堣垂")
+    @ValueTableShow(9)
+    private BigDecimal rebateConsumption;
+    /**
+    * 娑堣垂
+    */
+    @ApiModelProperty("娑堣垂")
+    @ValueTableShow(10)
+    private BigDecimal consumption;
+    /**
+    * 鎶樺悗娑堣垂
+    */
+    @ApiModelProperty("鎶樺悗娑堣垂")
+    @ValueTableShow(11)
+    private BigDecimal discountedConsumption;
+    /**
+    * 杩涚矇
+    */
+    @ApiModelProperty("杩涚矇")
+    @ValueTableShow(12)
+    private Integer fansAdd;
+    /**
+    * 瀹為檯鎴愭湰
+    */
+    @ApiModelProperty("瀹為檯鎴愭湰")
+    @ValueTableShow(13)
+    private BigDecimal actualCost;
+    /**
+    * 鍐呴儴鎴愭湰
+    */
+    @ApiModelProperty("鍐呴儴鎴愭湰")
+    @ValueTableShow(14)
+    private BigDecimal internalCosts;
+    /**
+    * 瀹㈡埛鎴愭湰
+    */
+    @ApiModelProperty("瀹㈡埛鎴愭湰")
+    @ValueTableShow(15)
+    private BigDecimal customerCosts;
+    /**
+    * 鍒╂鼎
+    */
+    @ApiModelProperty("鍒╂鼎")
+    @ValueTableShow(16)
+    private BigDecimal profit;
+    /**
+    * 浠g悊杩旂偣
+    */
+    @ApiModelProperty("浠g悊杩旂偣")
+    @ValueTableShow(17)
+    private BigDecimal agentRebate;
+    /**
+    * 瀹㈡埛杩旂偣
+    */
+    @ApiModelProperty("瀹㈡埛杩旂偣")
+    @ValueTableShow(18)
+    private BigDecimal customerRebate;
+    /**
+    * 澶囩敤瀛楁
+    */
+    @ApiModelProperty("澶囩敤瀛楁")
+    @ValueTableShow(23)
+    private BigDecimal remark;
+    /**
+    * 
+    */
+    @ApiModelProperty("鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ValueTableShow(20)
+    private LocalDateTime createTime;
+    /**
+    * 
+    */
+    @ApiModelProperty("鏇存柊鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ValueTableShow(21)
+    private LocalDateTime updateTime;
+    /**
+    * 
+    */
+    @Size(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ApiModelProperty("鍒涘缓鐢ㄦ埛")
+    @Length(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    private String createUser;
+    /**
+    * 
+    */
+    @Size(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    @ApiModelProperty("鏇存柊鐢ㄦ埛")
+    @Length(max= 255,message="缂栫爜闀垮害涓嶈兘瓒呰繃255")
+    private String updateUser;
+
+}
diff --git a/data-server/src/main/java/com/yuanchu/mom/service/DataReportingService.java b/data-server/src/main/java/com/yuanchu/mom/service/DataReportingService.java
new file mode 100644
index 0000000..19e56c8
--- /dev/null
+++ b/data-server/src/main/java/com/yuanchu/mom/service/DataReportingService.java
@@ -0,0 +1,21 @@
+package com.yuanchu.mom.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yuanchu.mom.dto.DataReportingPageDto;
+import com.yuanchu.mom.pojo.DataReporting;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+* @author Administrator
+* @description 閽堝琛ㄣ�恉ata_reporting(鏁版嵁涓婃姤)銆戠殑鏁版嵁搴撴搷浣淪ervice
+* @createDate 2023-12-23 10:39:43
+*/
+public interface DataReportingService extends IService<DataReporting> {
+
+    Map<String, Object> selectUserList(IPage<DataReportingPageDto> page, DataReportingPageDto dataReportingPageDto);
+
+    int updateDataReporting(DataReporting dataReporting);
+
+}
diff --git a/data-server/src/main/java/com/yuanchu/mom/service/impl/DataReportingServiceImpl.java b/data-server/src/main/java/com/yuanchu/mom/service/impl/DataReportingServiceImpl.java
new file mode 100644
index 0000000..afd5c7d
--- /dev/null
+++ b/data-server/src/main/java/com/yuanchu/mom/service/impl/DataReportingServiceImpl.java
@@ -0,0 +1,56 @@
+package com.yuanchu.mom.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yuanchu.mom.common.PrintChina;
+import com.yuanchu.mom.dto.DataReportingPageDto;
+import com.yuanchu.mom.pojo.DataReporting;
+import com.yuanchu.mom.service.DataReportingService;
+import com.yuanchu.mom.mapper.DataReportingMapper;
+import com.yuanchu.mom.utils.QueryWrappers;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+* @author Administrator
+* @description 閽堝琛ㄣ�恉ata_reporting(鏁版嵁涓婃姤)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
+* @createDate 2023-12-23 10:39:43
+*/
+@Service
+@AllArgsConstructor
+public class DataReportingServiceImpl extends ServiceImpl<DataReportingMapper, DataReporting>
+    implements DataReportingService{
+
+    private DataReportingMapper dataReportingMapper;
+
+    @Override
+    public Map<String, Object> selectUserList(IPage<DataReportingPageDto> page, DataReportingPageDto dataReportingPageDto) {
+        Map<String, Object> map = new HashMap<>();
+        map.put("head", PrintChina.printChina(DataReportingPageDto.class));
+        map.put("body", dataReportingMapper.selectDataReportingDtoPageList(page, QueryWrappers.queryWrappers(dataReportingPageDto)));
+        return map;
+    }
+
+    @Override
+    public int updateDataReporting(DataReporting dataReporting) {
+        DataReporting dataReporting2 = new DataReporting();
+        dataReporting2.setId(dataReporting.getId());
+        dataReporting2.setInternalCosts(dataReporting.getInternalCosts());
+        dataReporting2.setCustomerCosts(dataReporting.getCustomerCosts());
+        dataReporting2.setCustomerRebate(dataReporting.getCustomerRebate());
+        dataReporting2.setRemark(dataReporting.getRemark());
+        dataReporting2.setRebateConsumption(dataReporting.getAccountConsumption().divide(dataReporting.getCustomerRebate(), 2, RoundingMode.HALF_UP));
+        dataReporting2.setConsumption(dataReporting.getCustomerCosts().multiply(BigDecimal.valueOf(dataReporting.getFansAdd())));
+        System.out.println(dataReporting2);
+        return dataReportingMapper.updateById(dataReporting2);
+    }
+}
+
+
+
+
diff --git a/data-server/src/main/resources/mapper/DataReportingMapper.xml b/data-server/src/main/resources/mapper/DataReportingMapper.xml
new file mode 100644
index 0000000..abbdd78
--- /dev/null
+++ b/data-server/src/main/resources/mapper/DataReportingMapper.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yuanchu.mom.mapper.DataReportingMapper">
+
+    <resultMap id="BaseResultMap" type="com.yuanchu.mom.pojo.DataReporting">
+            <id property="id" column="id" jdbcType="INTEGER"/>
+            <result property="department" column="department" jdbcType="VARCHAR"/>
+            <result property="registrant" column="registrant" jdbcType="VARCHAR"/>
+            <result property="product" column="product" jdbcType="VARCHAR"/>
+            <result property="channel" column="channel" jdbcType="VARCHAR"/>
+            <result property="name" column="name" jdbcType="VARCHAR"/>
+            <result property="show" column="show" jdbcType="INTEGER"/>
+            <result property="click" column="click" jdbcType="INTEGER"/>
+            <result property="accountConsumption" column="account_consumption" jdbcType="DECIMAL"/>
+            <result property="rebateConsumption" column="rebate_consumption" jdbcType="DECIMAL"/>
+            <result property="consumption" column="consumption" jdbcType="DECIMAL"/>
+            <result property="discountedConsumption" column="discounted_consumption" jdbcType="DECIMAL"/>
+            <result property="fansAdd" column="fans_add" jdbcType="INTEGER"/>
+            <result property="actualCost" column="actual_cost" jdbcType="DECIMAL"/>
+            <result property="internalCosts" column="internal_costs" jdbcType="DECIMAL"/>
+            <result property="customerCosts" column="customer_costs" jdbcType="DECIMAL"/>
+            <result property="profit" column="profit" jdbcType="DECIMAL"/>
+            <result property="agentRebate" column="agent_rebate" jdbcType="DECIMAL"/>
+            <result property="customerRebate" column="customer_rebate" jdbcType="DECIMAL"/>
+            <result property="remark" column="remark" jdbcType="DECIMAL"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+            <result property="createUser" column="create_user" jdbcType="VARCHAR"/>
+            <result property="updateUser" column="update_user" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,department,registrant,
+        product,channel,name,
+        show,click,account_consumption,
+        rebate_consumption,consumption,discounted_consumption,
+        fans_add,actual_cost,internal_costs,
+        customer_costs,profit,agent_rebate,
+        customer_rebate,remark,create_time,
+        update_time,create_user,update_user
+    </sql>
+
+    <select id="selectDataReportingDtoPageList" resultType="com.yuanchu.mom.dto.DataReportingPageDto">
+        select * from (
+        select dr.*,u1.name create_user_name,u2.name update_user_name from data_reporting dr
+                    left join user u1 on dr.create_user = u1.id
+                    left join user u2 on dr.update_user = u2.id
+        ) a
+        <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
+            ${ew.customSqlSegment}
+        </if>
+    </select>
+</mapper>

--
Gitblit v1.9.3