diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/config/job/GenerateBusinessRealJob.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/config/job/GenerateBusinessRealJob.java new file mode 100644 index 0000000..1b3f485 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/config/job/GenerateBusinessRealJob.java @@ -0,0 +1,28 @@ +package com.lideeyunji.core.framework.config.job; + +import com.lideeyunji.core.framework.service.IGrBiFsBusinessRealService; +import com.lideeyunji.tool.framework.common.constant.lideeYunJiBaseConstant; +import com.lideeyunji.tool.framework.quartz.core.handler.JobHandler; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +/** + * oracle gr_bi_fs_business_real -> mysql gr_bi_fs_business_real + */ +@Slf4j +@Component("generateBusinessRealJob") +public class GenerateBusinessRealJob implements JobHandler { + + @Resource + private IGrBiFsBusinessRealService grBiFsBusinessRealService; + + @Override + public String execute(String param) throws Exception { + log.info("*********** 开始生成经营指标完成情况 ************"); + grBiFsBusinessRealService.generateBusinessReal(lideeYunJiBaseConstant.DS_ERP_BI_DATA); + log.info("*********** 生成经营指标完成情况完成 ************"); + return "*********** 生成经营指标完成情况完成 ************"; + } +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiFsBusinessReal.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiFsBusinessReal.java new file mode 100644 index 0000000..c1645c4 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiFsBusinessReal.java @@ -0,0 +1,61 @@ +package com.lideeyunji.core.framework.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.lideeyunji.tool.framework.yunji.model.global.BaseTenantEntity; + +/** + * 经营指标完成情况对象 gr_bi_fs_business_real + * + * @author ruoyi + * @date 2026-03-12 + */ +@TableName("gr_bi_fs_business_real") +@Data +@EqualsAndHashCode(callSuper = true) +public class GrBiFsBusinessReal extends BaseTenantEntity +{ + private static final long serialVersionUID = 1L; + + @TableId(value = "ID", type = IdType.INPUT) + private String ID; + + @TableField(value = "USEYEAR") + private String useYear; + + @TableField(value = "USEMONTH") + private String useMonth; + + @TableField(value = "ITEMID") + private String itemId; + + @TableField(value = "ITEMNAME") + private String itemName; + + @TableField(value = "ITEMORDER") + private String itemOrder; + + @TableField(value = "MONTH_REAL") + private String monthReal; + + @TableField(value = "YEAR_REAL") + private String yearReal; + + @TableField(value = "MONTH_DIFF") + private String monthDiff; + + @TableField(value = "YEAR_PLAN") + private String yearPlan; + + @TableField(value = "YEAR_RATE") + private String yearRate; + + + + + +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStLot.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStLot.java new file mode 100644 index 0000000..74f7197 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStLot.java @@ -0,0 +1,67 @@ +package com.lideeyunji.core.framework.entity; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.lideeyunji.tool.framework.yunji.model.global.BaseTenantEntity; + +/** + * 物料产品库存统计表对象 gr_bi_st_lot + * + * @author king + * @date 2026-03-12 + */ +@TableName("gr_bi_st_lot") +@Data +@EqualsAndHashCode(callSuper = true) +public class GrBiStLot extends BaseTenantEntity +{ + private static final long serialVersionUID = 1L; + + private Long ID; + + private Long GOODSID; + + private String GOODSNAME; + + private String GOODSTYPE; + + private String GOODSUNIT; + + private Long CLASSID; + + private String CLASSNAME; + + private Long LOTID; + + private String LOTNO; + + private Long GOODSQTY; + + private Date PRODDATE; + + private String INVALIDDATE; + + private Long INVALIDDAYS; + + private String STINDATE; + + private String STOUTDATE; + + private Long INVALIDDAYSTYPEID; + + private String INVALIDDAYSTYPE; + + private Long OUTTYPE; + + private Long STORAGEID; + + private String STORAGENAME; + + + + + +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStProduct.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStProduct.java new file mode 100644 index 0000000..7da271a --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStProduct.java @@ -0,0 +1,47 @@ +package com.lideeyunji.core.framework.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.lideeyunji.tool.framework.yunji.model.global.BaseTenantEntity; + +/** + * 库存产品占比表对象 gr_bi_st_product + * + * @author king + * @date 2026-03-12 + */ +@TableName("gr_bi_st_product") +@Data +@EqualsAndHashCode(callSuper = true) +public class GrBiStProduct extends BaseTenantEntity +{ + private static final long serialVersionUID = 1L; + + private Long ID; + + private Long GOODSID; + + private String GOODSNAME; + + private String GOODSTYPE; + + private String GOODSUNIT; + + private Long GOODSCLASSID; + + private String GOODSCLASSNAME; + + private Long QTY; + + private Long qtyProp; + + private Long MONEY; + + private Long moneyProp; + + + + + +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStProductAvl.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStProductAvl.java new file mode 100644 index 0000000..7f7ed2a --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/entity/GrBiStProductAvl.java @@ -0,0 +1,51 @@ +package com.lideeyunji.core.framework.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.lideeyunji.tool.framework.yunji.model.global.BaseTenantEntity; + +/** + * 产品可销库存对象 gr_bi_st_product_avl + * + * @author king + * @date 2026-03-12 + */ +@TableName("gr_bi_st_product_avl") +@Data +@EqualsAndHashCode(callSuper = true) +public class GrBiStProductAvl extends BaseTenantEntity +{ + private static final long serialVersionUID = 1L; + + private Long ID; + + private Long GOODSID; + + private String GOODSNAME; + + private String GOODSTYPE; + + private String GOODSUNIT; + + private Long PACKSIZE; + + private Long SORT; + + private Long SEMIREM; + + private String TODAYIN; + + private Long REM; + + private Long THISMONTHOUT; + + private Long LASTMONTHOUT; + + private Long THISYEAROUT; + + + + + +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiFsBusinessRealMapper.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiFsBusinessRealMapper.java new file mode 100644 index 0000000..4085d27 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiFsBusinessRealMapper.java @@ -0,0 +1,73 @@ +package com.lideeyunji.core.framework.mapper; + +import java.util.List; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.lideeyunji.core.framework.entity.GrBiFsBusinessReal; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.lideeyunji.core.framework.entity.GrBiSaAgg; +import org.apache.ibatis.annotations.Param; + +/** + * 经营指标完成情况Mapper接口 + * + * @author ruoyi + * @date 2026-03-12 + */ +public interface GrBiFsBusinessRealMapper extends BaseMapper +{ + /** + * 查询经营指标完成情况 + * + * @param ID 经营指标完成情况主键 + * @return 经营指标完成情况 + */ + public GrBiFsBusinessReal selectGrBiFsBusinessRealByID(String ID); + + /** + * 查询经营指标完成情况列表 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 经营指标完成情况集合 + */ + public List selectGrBiFsBusinessRealList(GrBiFsBusinessReal grBiFsBusinessReal); + + /** + * 新增经营指标完成情况 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 结果 + */ + public int insertGrBiFsBusinessReal(GrBiFsBusinessReal grBiFsBusinessReal); + + /** + * 修改经营指标完成情况 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 结果 + */ + public int updateGrBiFsBusinessReal(GrBiFsBusinessReal grBiFsBusinessReal); + + /** + * 删除经营指标完成情况 + * + * @param ID 经营指标完成情况主键 + * @return 结果 + */ + public int deleteGrBiFsBusinessRealByID(String ID); + + /** + * 批量删除经营指标完成情况 + * + * @param IDs 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteGrBiFsBusinessRealByIDs(String[] IDs); + + @DS(value = "#dataSourceType") + List getBusinessRealList(@Param("dataSourceType") String dataSourceType, @Param("pastYearMonth") Integer pastYearMonth, + @Param("currentYearMonth") Integer currentYearMonth); + @DS(value = "#dataSourceType") + int deleteOldBusinessReal(@Param("dataSourceType") String dataSourceType, @Param("pastYearMonth") Integer pastYearMonth, + @Param("currentYearMonth") Integer currentYearMonth); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStLotMapper.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStLotMapper.java new file mode 100644 index 0000000..ff28763 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStLotMapper.java @@ -0,0 +1,62 @@ +package com.lideeyunji.core.framework.mapper; + +import java.util.List; +import com.lideeyunji.core.framework.entity.GrBiStLot; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 物料产品库存统计表Mapper接口 + * + * @author king + * @date 2026-03-12 + */ +public interface GrBiStLotMapper extends BaseMapper +{ + /** + * 查询物料产品库存统计表 + * + * @param ID 物料产品库存统计表主键 + * @return 物料产品库存统计表 + */ + public GrBiStLot selectGrBiStLotByID(Long ID); + + /** + * 查询物料产品库存统计表列表 + * + * @param grBiStLot 物料产品库存统计表 + * @return 物料产品库存统计表集合 + */ + public List selectGrBiStLotList(GrBiStLot grBiStLot); + + /** + * 新增物料产品库存统计表 + * + * @param grBiStLot 物料产品库存统计表 + * @return 结果 + */ + public int insertGrBiStLot(GrBiStLot grBiStLot); + + /** + * 修改物料产品库存统计表 + * + * @param grBiStLot 物料产品库存统计表 + * @return 结果 + */ + public int updateGrBiStLot(GrBiStLot grBiStLot); + + /** + * 删除物料产品库存统计表 + * + * @param ID 物料产品库存统计表主键 + * @return 结果 + */ + public int deleteGrBiStLotByID(Long ID); + + /** + * 批量删除物料产品库存统计表 + * + * @param IDs 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteGrBiStLotByIDs(Long[] IDs); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStProductAvlMapper.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStProductAvlMapper.java new file mode 100644 index 0000000..04ce825 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStProductAvlMapper.java @@ -0,0 +1,62 @@ +package com.lideeyunji.core.framework.mapper; + +import java.util.List; +import com.lideeyunji.core.framework.entity.GrBiStProductAvl; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 产品可销库存Mapper接口 + * + * @author king + * @date 2026-03-12 + */ +public interface GrBiStProductAvlMapper extends BaseMapper +{ + /** + * 查询产品可销库存 + * + * @param ID 产品可销库存主键 + * @return 产品可销库存 + */ + public GrBiStProductAvl selectGrBiStProductAvlByID(Long ID); + + /** + * 查询产品可销库存列表 + * + * @param grBiStProductAvl 产品可销库存 + * @return 产品可销库存集合 + */ + public List selectGrBiStProductAvlList(GrBiStProductAvl grBiStProductAvl); + + /** + * 新增产品可销库存 + * + * @param grBiStProductAvl 产品可销库存 + * @return 结果 + */ + public int insertGrBiStProductAvl(GrBiStProductAvl grBiStProductAvl); + + /** + * 修改产品可销库存 + * + * @param grBiStProductAvl 产品可销库存 + * @return 结果 + */ + public int updateGrBiStProductAvl(GrBiStProductAvl grBiStProductAvl); + + /** + * 删除产品可销库存 + * + * @param ID 产品可销库存主键 + * @return 结果 + */ + public int deleteGrBiStProductAvlByID(Long ID); + + /** + * 批量删除产品可销库存 + * + * @param IDs 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteGrBiStProductAvlByIDs(Long[] IDs); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStProductMapper.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStProductMapper.java new file mode 100644 index 0000000..eb9164a --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/GrBiStProductMapper.java @@ -0,0 +1,62 @@ +package com.lideeyunji.core.framework.mapper; + +import java.util.List; +import com.lideeyunji.core.framework.entity.GrBiStProduct; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 库存产品占比表Mapper接口 + * + * @author king + * @date 2026-03-12 + */ +public interface GrBiStProductMapper extends BaseMapper +{ + /** + * 查询库存产品占比表 + * + * @param ID 库存产品占比表主键 + * @return 库存产品占比表 + */ + public GrBiStProduct selectGrBiStProductByID(Long ID); + + /** + * 查询库存产品占比表列表 + * + * @param grBiStProduct 库存产品占比表 + * @return 库存产品占比表集合 + */ + public List selectGrBiStProductList(GrBiStProduct grBiStProduct); + + /** + * 新增库存产品占比表 + * + * @param grBiStProduct 库存产品占比表 + * @return 结果 + */ + public int insertGrBiStProduct(GrBiStProduct grBiStProduct); + + /** + * 修改库存产品占比表 + * + * @param grBiStProduct 库存产品占比表 + * @return 结果 + */ + public int updateGrBiStProduct(GrBiStProduct grBiStProduct); + + /** + * 删除库存产品占比表 + * + * @param ID 库存产品占比表主键 + * @return 结果 + */ + public int deleteGrBiStProductByID(Long ID); + + /** + * 批量删除库存产品占比表 + * + * @param IDs 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteGrBiStProductByIDs(Long[] IDs); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiFsBusinessRealService.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiFsBusinessRealService.java new file mode 100644 index 0000000..8ad1a80 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiFsBusinessRealService.java @@ -0,0 +1,63 @@ +package com.lideeyunji.core.framework.service; + +import java.util.List; +import com.lideeyunji.core.framework.entity.GrBiFsBusinessReal; + +/** + * 经营指标完成情况Service接口 + * + * @author ruoyi + * @date 2026-03-12 + */ +public interface IGrBiFsBusinessRealService +{ + /** + * 查询经营指标完成情况 + * + * @param ID 经营指标完成情况主键 + * @return 经营指标完成情况 + */ + public GrBiFsBusinessReal selectGrBiFsBusinessRealByID(String ID); + + /** + * 查询经营指标完成情况列表 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 经营指标完成情况集合 + */ + public List selectGrBiFsBusinessRealList(GrBiFsBusinessReal grBiFsBusinessReal); + + /** + * 新增经营指标完成情况 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 结果 + */ + public int insertGrBiFsBusinessReal(GrBiFsBusinessReal grBiFsBusinessReal); + + /** + * 修改经营指标完成情况 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 结果 + */ + public int updateGrBiFsBusinessReal(GrBiFsBusinessReal grBiFsBusinessReal); + + /** + * 批量删除经营指标完成情况 + * + * @param IDs 需要删除的经营指标完成情况主键集合 + * @return 结果 + */ + public int deleteGrBiFsBusinessRealByIDs(String[] IDs); + + /** + * 删除经营指标完成情况信息 + * + * @param ID 经营指标完成情况主键 + * @return 结果 + */ + public int deleteGrBiFsBusinessRealByID(String ID); + + void generateBusinessReal(String dataSourceType); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStLotService.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStLotService.java new file mode 100644 index 0000000..d1b33cf --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStLotService.java @@ -0,0 +1,61 @@ +package com.lideeyunji.core.framework.service; + +import java.util.List; +import com.lideeyunji.core.framework.entity.GrBiStLot; + +/** + * 物料产品库存统计表Service接口 + * + * @author king + * @date 2026-03-12 + */ +public interface IGrBiStLotService +{ + /** + * 查询物料产品库存统计表 + * + * @param ID 物料产品库存统计表主键 + * @return 物料产品库存统计表 + */ + public GrBiStLot selectGrBiStLotByID(Long ID); + + /** + * 查询物料产品库存统计表列表 + * + * @param grBiStLot 物料产品库存统计表 + * @return 物料产品库存统计表集合 + */ + public List selectGrBiStLotList(GrBiStLot grBiStLot); + + /** + * 新增物料产品库存统计表 + * + * @param grBiStLot 物料产品库存统计表 + * @return 结果 + */ + public int insertGrBiStLot(GrBiStLot grBiStLot); + + /** + * 修改物料产品库存统计表 + * + * @param grBiStLot 物料产品库存统计表 + * @return 结果 + */ + public int updateGrBiStLot(GrBiStLot grBiStLot); + + /** + * 批量删除物料产品库存统计表 + * + * @param IDs 需要删除的物料产品库存统计表主键集合 + * @return 结果 + */ + public int deleteGrBiStLotByIDs(Long[] IDs); + + /** + * 删除物料产品库存统计表信息 + * + * @param ID 物料产品库存统计表主键 + * @return 结果 + */ + public int deleteGrBiStLotByID(Long ID); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStProductAvlService.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStProductAvlService.java new file mode 100644 index 0000000..f047dcd --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStProductAvlService.java @@ -0,0 +1,61 @@ +package com.lideeyunji.core.framework.service; + +import java.util.List; +import com.lideeyunji.core.framework.entity.GrBiStProductAvl; + +/** + * 产品可销库存Service接口 + * + * @author king + * @date 2026-03-12 + */ +public interface IGrBiStProductAvlService +{ + /** + * 查询产品可销库存 + * + * @param ID 产品可销库存主键 + * @return 产品可销库存 + */ + public GrBiStProductAvl selectGrBiStProductAvlByID(Long ID); + + /** + * 查询产品可销库存列表 + * + * @param grBiStProductAvl 产品可销库存 + * @return 产品可销库存集合 + */ + public List selectGrBiStProductAvlList(GrBiStProductAvl grBiStProductAvl); + + /** + * 新增产品可销库存 + * + * @param grBiStProductAvl 产品可销库存 + * @return 结果 + */ + public int insertGrBiStProductAvl(GrBiStProductAvl grBiStProductAvl); + + /** + * 修改产品可销库存 + * + * @param grBiStProductAvl 产品可销库存 + * @return 结果 + */ + public int updateGrBiStProductAvl(GrBiStProductAvl grBiStProductAvl); + + /** + * 批量删除产品可销库存 + * + * @param IDs 需要删除的产品可销库存主键集合 + * @return 结果 + */ + public int deleteGrBiStProductAvlByIDs(Long[] IDs); + + /** + * 删除产品可销库存信息 + * + * @param ID 产品可销库存主键 + * @return 结果 + */ + public int deleteGrBiStProductAvlByID(Long ID); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStProductService.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStProductService.java new file mode 100644 index 0000000..a830227 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/IGrBiStProductService.java @@ -0,0 +1,61 @@ +package com.lideeyunji.core.framework.service; + +import java.util.List; +import com.lideeyunji.core.framework.entity.GrBiStProduct; + +/** + * 库存产品占比表Service接口 + * + * @author king + * @date 2026-03-12 + */ +public interface IGrBiStProductService +{ + /** + * 查询库存产品占比表 + * + * @param ID 库存产品占比表主键 + * @return 库存产品占比表 + */ + public GrBiStProduct selectGrBiStProductByID(Long ID); + + /** + * 查询库存产品占比表列表 + * + * @param grBiStProduct 库存产品占比表 + * @return 库存产品占比表集合 + */ + public List selectGrBiStProductList(GrBiStProduct grBiStProduct); + + /** + * 新增库存产品占比表 + * + * @param grBiStProduct 库存产品占比表 + * @return 结果 + */ + public int insertGrBiStProduct(GrBiStProduct grBiStProduct); + + /** + * 修改库存产品占比表 + * + * @param grBiStProduct 库存产品占比表 + * @return 结果 + */ + public int updateGrBiStProduct(GrBiStProduct grBiStProduct); + + /** + * 批量删除库存产品占比表 + * + * @param IDs 需要删除的库存产品占比表主键集合 + * @return 结果 + */ + public int deleteGrBiStProductByIDs(Long[] IDs); + + /** + * 删除库存产品占比表信息 + * + * @param ID 库存产品占比表主键 + * @return 结果 + */ + public int deleteGrBiStProductByID(Long ID); +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/impl/GrBiFsBusinessRealServiceImpl.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/impl/GrBiFsBusinessRealServiceImpl.java new file mode 100644 index 0000000..bebc166 --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/impl/GrBiFsBusinessRealServiceImpl.java @@ -0,0 +1,146 @@ +package com.lideeyunji.core.framework.service.impl; + +import cn.hutool.core.collection.CollUtil; +import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.lideeyunji.core.framework.entity.GrBiFsBusinessReal; +import com.lideeyunji.core.framework.mapper.GrBiFsBusinessRealMapper; +import com.lideeyunji.core.framework.service.IGrBiFsBusinessRealService; +import com.lideeyunji.tool.framework.common.constant.lideeYunJiBaseConstant; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * 经营指标完成情况Service业务层处理 + * + * @author ruoyi + * @date 2026-03-12 + */ +@Slf4j +@Service +public class GrBiFsBusinessRealServiceImpl extends ServiceImpl implements IGrBiFsBusinessRealService +{ + + + @Override + @DS(value = "#dataSourceType") + public void generateBusinessReal(String dataSourceType) { + //获取本地mysql数据库中表中UPDATE_TIME最新的数据 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper().orderByDesc(GrBiFsBusinessReal::getUseYear, GrBiFsBusinessReal::getUseMonth).last("LIMIT 1"); + GrBiFsBusinessReal real = this.baseMapper.selectOne(queryWrapper); + int lastUserYear = 2022; + int lastUserMonth = 1; + if(real != null){ + lastUserYear = Integer.parseInt(real.getUseYear()); + lastUserMonth = Integer.parseInt(real.getUseMonth()); + } + // 获取当前时间的年和月 + LocalDateTime now = LocalDateTime.now(); + int currentYear = now.getYear(); + int currentMonth = now.getMonthValue(); + + // 获取三个月前的时间和年月 + LocalDateTime threeMonthsAgo = now.minusMonths(3); + int pastYear = threeMonthsAgo.getYear(); + int pastMonth = threeMonthsAgo.getMonthValue(); + + log.info("最后更新的年月:{}年{}月", lastUserYear, lastUserMonth); + log.info("当前:{}年{}月", currentYear, currentMonth); + log.info("三个月前:{}年{}月", pastYear, pastMonth); + if (lastUserYear < pastYear || (lastUserYear == pastYear && lastUserMonth < pastMonth)) { + pastYear = lastUserYear; + pastMonth = lastUserMonth; + } + log.info("开始时间:{}年{}月, 结束时间:{}年{}月", pastYear, pastMonth, currentYear, currentMonth); + + // 获取三个月前的数据 + List grBiSaSetdtlList = this.baseMapper.getBusinessRealList(lideeYunJiBaseConstant.DS_ORACLE_GRYYBI,pastYear * 100 + pastMonth, currentYear * 100 + currentMonth); + if (CollUtil.isEmpty(grBiSaSetdtlList)) { + return; + } + //保存数据 + int reNum = this.baseMapper.deleteOldBusinessReal(lideeYunJiBaseConstant.DS_ERP_BI_DATA,pastYear * 100 + pastMonth, currentYear * 100 + currentMonth); + log.info("删除数量:{}", reNum); + for (GrBiFsBusinessReal grBiSaSetdtl : grBiSaSetdtlList) { + int re = this.baseMapper.insert(grBiSaSetdtl); + if (re < 1) { + throw new RuntimeException("批量新增异常"); + } + } + } + /** + * 查询经营指标完成情况 + * + * @param ID 经营指标完成情况主键 + * @return 经营指标完成情况 + */ + @Override + public GrBiFsBusinessReal selectGrBiFsBusinessRealByID(String ID) + { + return this.baseMapper.selectGrBiFsBusinessRealByID(ID); + } + + /** + * 查询经营指标完成情况列表 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 经营指标完成情况 + */ + @Override + public List selectGrBiFsBusinessRealList(GrBiFsBusinessReal grBiFsBusinessReal) + { + return this.baseMapper.selectGrBiFsBusinessRealList(grBiFsBusinessReal); + } + + /** + * 新增经营指标完成情况 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 结果 + */ + @Override + public int insertGrBiFsBusinessReal(GrBiFsBusinessReal grBiFsBusinessReal) + { + return this.baseMapper.insertGrBiFsBusinessReal(grBiFsBusinessReal); + } + + /** + * 修改经营指标完成情况 + * + * @param grBiFsBusinessReal 经营指标完成情况 + * @return 结果 + */ + @Override + public int updateGrBiFsBusinessReal(GrBiFsBusinessReal grBiFsBusinessReal) + { + return this.baseMapper.updateGrBiFsBusinessReal(grBiFsBusinessReal); + } + + /** + * 批量删除经营指标完成情况 + * + * @param IDs 需要删除的经营指标完成情况主键 + * @return 结果 + */ + @Override + public int deleteGrBiFsBusinessRealByIDs(String[] IDs) + { + return this.baseMapper.deleteGrBiFsBusinessRealByIDs(IDs); + } + + /** + * 删除经营指标完成情况信息 + * + * @param ID 经营指标完成情况主键 + * @return 结果 + */ + @Override + public int deleteGrBiFsBusinessRealByID(String ID) + { + return this.baseMapper.deleteGrBiFsBusinessRealByID(ID); + } +} diff --git a/lidee-core/src/main/resources/mapper/framework/GrBiFsBusinessRealMapper.xml b/lidee-core/src/main/resources/mapper/framework/GrBiFsBusinessRealMapper.xml new file mode 100644 index 0000000..102a245 --- /dev/null +++ b/lidee-core/src/main/resources/mapper/framework/GrBiFsBusinessRealMapper.xml @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + + + select ID, USEYEAR, USEMONTH, ITEMID, ITEMNAME, ITEMORDER, MONTH_REAL, YEAR_REAL, MONTH_DIFF, YEAR_PLAN, YEAR_RATE from gr_bi_fs_business_real + + + + + + + + + insert into gr_bi_fs_business_real + + ID, + USEYEAR, + USEMONTH, + ITEMID, + ITEMNAME, + ITEMORDER, + MONTH_REAL, + YEAR_REAL, + MONTH_DIFF, + YEAR_PLAN, + YEAR_RATE, + + + #{ID}, + #{USEYEAR}, + #{USEMONTH}, + #{ITEMID}, + #{ITEMNAME}, + #{ITEMORDER}, + #{monthReal}, + #{yearReal}, + #{monthDiff}, + #{yearPlan}, + #{yearRate}, + + + + + update gr_bi_fs_business_real + + USEYEAR = #{USEYEAR}, + USEMONTH = #{USEMONTH}, + ITEMID = #{ITEMID}, + ITEMNAME = #{ITEMNAME}, + ITEMORDER = #{ITEMORDER}, + MONTH_REAL = #{monthReal}, + YEAR_REAL = #{yearReal}, + MONTH_DIFF = #{monthDiff}, + YEAR_PLAN = #{yearPlan}, + YEAR_RATE = #{yearRate}, + + where ID = #{ID} + + + + delete from gr_bi_fs_business_real where ID = #{ID} + + + + delete from gr_bi_fs_business_real where ID in + + #{ID} + + + \ No newline at end of file diff --git a/lidee-core/src/main/resources/mapper/framework/GrBiStLotMapper.xml b/lidee-core/src/main/resources/mapper/framework/GrBiStLotMapper.xml new file mode 100644 index 0000000..9ae1c26 --- /dev/null +++ b/lidee-core/src/main/resources/mapper/framework/GrBiStLotMapper.xml @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select ID, GOODSID, GOODSNAME, GOODSTYPE, GOODSUNIT, CLASSID, CLASSNAME, LOTID, LOTNO, GOODSQTY, PRODDATE, INVALIDDATE, INVALIDDAYS, STINDATE, STOUTDATE, INVALIDDAYSTYPEID, INVALIDDAYSTYPE, OUTTYPE, STORAGEID, STORAGENAME from gr_bi_st_lot + + + + + + + + insert into gr_bi_st_lot + + ID, + GOODSID, + GOODSNAME, + GOODSTYPE, + GOODSUNIT, + CLASSID, + CLASSNAME, + LOTID, + LOTNO, + GOODSQTY, + PRODDATE, + INVALIDDATE, + INVALIDDAYS, + STINDATE, + STOUTDATE, + INVALIDDAYSTYPEID, + INVALIDDAYSTYPE, + OUTTYPE, + STORAGEID, + STORAGENAME, + + + #{ID}, + #{GOODSID}, + #{GOODSNAME}, + #{GOODSTYPE}, + #{GOODSUNIT}, + #{CLASSID}, + #{CLASSNAME}, + #{LOTID}, + #{LOTNO}, + #{GOODSQTY}, + #{PRODDATE}, + #{INVALIDDATE}, + #{INVALIDDAYS}, + #{STINDATE}, + #{STOUTDATE}, + #{INVALIDDAYSTYPEID}, + #{INVALIDDAYSTYPE}, + #{OUTTYPE}, + #{STORAGEID}, + #{STORAGENAME}, + + + + + update gr_bi_st_lot + + GOODSID = #{GOODSID}, + GOODSNAME = #{GOODSNAME}, + GOODSTYPE = #{GOODSTYPE}, + GOODSUNIT = #{GOODSUNIT}, + CLASSID = #{CLASSID}, + CLASSNAME = #{CLASSNAME}, + LOTID = #{LOTID}, + LOTNO = #{LOTNO}, + GOODSQTY = #{GOODSQTY}, + PRODDATE = #{PRODDATE}, + INVALIDDATE = #{INVALIDDATE}, + INVALIDDAYS = #{INVALIDDAYS}, + STINDATE = #{STINDATE}, + STOUTDATE = #{STOUTDATE}, + INVALIDDAYSTYPEID = #{INVALIDDAYSTYPEID}, + INVALIDDAYSTYPE = #{INVALIDDAYSTYPE}, + OUTTYPE = #{OUTTYPE}, + STORAGEID = #{STORAGEID}, + STORAGENAME = #{STORAGENAME}, + + where ID = #{ID} + + + + delete from gr_bi_st_lot where ID = #{ID} + + + + delete from gr_bi_st_lot where ID in + + #{ID} + + + \ No newline at end of file diff --git a/lidee-core/src/main/resources/mapper/framework/GrBiStProductAvlMapper.xml b/lidee-core/src/main/resources/mapper/framework/GrBiStProductAvlMapper.xml new file mode 100644 index 0000000..e9503a9 --- /dev/null +++ b/lidee-core/src/main/resources/mapper/framework/GrBiStProductAvlMapper.xml @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + + + select ID, GOODSID, GOODSNAME, GOODSTYPE, GOODSUNIT, PACKSIZE, SORT, SEMIREM, TODAYIN, REM, THISMONTHOUT, LASTMONTHOUT, THISYEAROUT from gr_bi_st_product_avl + + + + + + + + insert into gr_bi_st_product_avl + + ID, + GOODSID, + GOODSNAME, + GOODSTYPE, + GOODSUNIT, + PACKSIZE, + SORT, + SEMIREM, + TODAYIN, + REM, + THISMONTHOUT, + LASTMONTHOUT, + THISYEAROUT, + + + #{ID}, + #{GOODSID}, + #{GOODSNAME}, + #{GOODSTYPE}, + #{GOODSUNIT}, + #{PACKSIZE}, + #{SORT}, + #{SEMIREM}, + #{TODAYIN}, + #{REM}, + #{THISMONTHOUT}, + #{LASTMONTHOUT}, + #{THISYEAROUT}, + + + + + update gr_bi_st_product_avl + + GOODSID = #{GOODSID}, + GOODSNAME = #{GOODSNAME}, + GOODSTYPE = #{GOODSTYPE}, + GOODSUNIT = #{GOODSUNIT}, + PACKSIZE = #{PACKSIZE}, + SORT = #{SORT}, + SEMIREM = #{SEMIREM}, + TODAYIN = #{TODAYIN}, + REM = #{REM}, + THISMONTHOUT = #{THISMONTHOUT}, + LASTMONTHOUT = #{LASTMONTHOUT}, + THISYEAROUT = #{THISYEAROUT}, + + where ID = #{ID} + + + + delete from gr_bi_st_product_avl where ID = #{ID} + + + + delete from gr_bi_st_product_avl where ID in + + #{ID} + + + \ No newline at end of file diff --git a/lidee-core/src/main/resources/mapper/framework/GrBiStProductMapper.xml b/lidee-core/src/main/resources/mapper/framework/GrBiStProductMapper.xml new file mode 100644 index 0000000..a1f3f1a --- /dev/null +++ b/lidee-core/src/main/resources/mapper/framework/GrBiStProductMapper.xml @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + + + + + + + select ID, GOODSID, GOODSNAME, GOODSTYPE, GOODSUNIT, GOODSCLASSID, GOODSCLASSNAME, QTY, QTY_PROP, MONEY, MONEY_PROP from gr_bi_st_product + + + + + + + + insert into gr_bi_st_product + + ID, + GOODSID, + GOODSNAME, + GOODSTYPE, + GOODSUNIT, + GOODSCLASSID, + GOODSCLASSNAME, + QTY, + QTY_PROP, + MONEY, + MONEY_PROP, + + + #{ID}, + #{GOODSID}, + #{GOODSNAME}, + #{GOODSTYPE}, + #{GOODSUNIT}, + #{GOODSCLASSID}, + #{GOODSCLASSNAME}, + #{QTY}, + #{qtyProp}, + #{MONEY}, + #{moneyProp}, + + + + + update gr_bi_st_product + + GOODSID = #{GOODSID}, + GOODSNAME = #{GOODSNAME}, + GOODSTYPE = #{GOODSTYPE}, + GOODSUNIT = #{GOODSUNIT}, + GOODSCLASSID = #{GOODSCLASSID}, + GOODSCLASSNAME = #{GOODSCLASSNAME}, + QTY = #{QTY}, + QTY_PROP = #{qtyProp}, + MONEY = #{MONEY}, + MONEY_PROP = #{moneyProp}, + + where ID = #{ID} + + + + delete from gr_bi_st_product where ID = #{ID} + + + + delete from gr_bi_st_product where ID in + + #{ID} + + + \ No newline at end of file