Commit 34a2ffa4 by 李小惠

Merge branch 'develop' of http://gitlab.sothing.top/843502640/jyzb_platformV2 into develop-lxh

parents ec70df2b f424b1ba
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class ESOrgDto {
private List<OrgDto> orgDto;
private ArrayList ids;
}
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class ESTypeDto {
private List<EquipmentTypeDto> typeDto;
private ArrayList ids;
}
......@@ -2,6 +2,8 @@ package com.junmp.jyzb.controller.ES;
import com.junmp.jyzb.Repository.BlogRepository;
import com.junmp.jyzb.entity.ES.Blog;
import com.junmp.jyzb.entity.EquipmentSize;
import com.junmp.jyzb.service.EquipmentSizeService;
import com.junmp.jyzb.service.EquipmentTypeService;
import com.junmp.jyzb.service.PubOrgService;
import io.swagger.annotations.Api;
......@@ -33,6 +35,8 @@ public class CrudController {
@Resource
public EquipmentTypeService equipmentTypeService;
@Resource
public EquipmentSizeService equipmentSizeService;
@Resource
public PubOrgService pubOrgService;
@ApiOperation("测试")
@PostMapping("testDocument")
......@@ -50,7 +54,7 @@ public class CrudController {
public Object UpdateES() {
pubOrgService.AddToEs();
equipmentTypeService.addEs();
equipmentSizeService.addEs();
return true;
}
@ApiOperation("添加单个文档")
......
package com.junmp.jyzb.controller;
import com.junmp.jyzb.api.bean.dto.ESTypeDto;
import com.junmp.jyzb.api.bean.dto.EquipmentTypeDto;
import com.junmp.jyzb.api.bean.dto.EquipmentTreeDto;
import com.junmp.jyzb.api.bean.query.QueryEquipmentTypeReq;
......@@ -52,7 +53,7 @@ public class EquipmentTypeController {
}
@PostMapping("/ShowEquipmentESList")
@ApiOperation("通过ES模糊检索类别列表")
public ApiRes<List<EquipmentTypeDto>> ShowEquipmentESList(@RequestBody QueryEquipmentTypeReq req) throws IOException {
public ApiRes<ESTypeDto> ShowEquipmentESList(@RequestBody QueryEquipmentTypeReq req) throws IOException {
return ApiRes.success(equipmentTypeService.getTypeTreeByEs(req));
}
......
......@@ -35,6 +35,13 @@ public class InventoryController {
public MQProductService mqProductService;
@GetMapping("/TestSum")
@ApiOperation("根据组织机构查询库存信息")
public ApiRes<Boolean> TestSum( ) {
inventorySummaryService.MonthStartSum();
return ApiRes.success();
}
@GetMapping("/testMQ")
@ApiOperation("根据组织机构查询库存信息")
public ApiRes<Boolean> testMQ( ) {
......
package com.junmp.jyzb.controller;
import com.junmp.jyzb.api.bean.dto.ESOrgDto;
import com.junmp.jyzb.api.bean.dto.OrgDto;
import com.junmp.jyzb.api.bean.dto.OrgTreeDto;
import com.junmp.jyzb.api.bean.query.ProductSkuReq;
......@@ -56,7 +57,7 @@ public class PubOrgController {
}
@PostMapping("/GetCurrentESList")
@ApiOperation("根据当前组织机构列表ES查询")
public ApiRes<List<OrgDto>> GetCurrentESList(@RequestBody QueryOrgReq req) throws IOException {
public ApiRes<ESOrgDto> GetCurrentESList(@RequestBody QueryOrgReq req) throws IOException {
return ApiRes.success(pubOrgService.getOrgTreeByEs(req));
}
@PostMapping("/ChangeOrgState")
......
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <pre>
*
* 描述:
* 版本:1.0.0
* 日期:2022/7/29 16:54
* 作者:ningzp@junmp.com.cn
* <br>修改记录
* <br>修改日期 修改人 修改内容
*
* </pre>
*/
@Data
@TableName("vie_price_sum_summary")
public class PriceSumSummary implements Serializable {
@TableId(value = "id")
private String id;
/**
*
*/
@TableField("org_id_int")
private String orgIdInt;
/**
*
*/
@TableField("org_code")
private String orgCode;
/**
*
*/
@TableField("org_name")
private String orgName;
/**
*
*/
@TableField("org_name_short")
private String orgNameShort;
/**
*
*/
@TableField("sum_type")
private String sumType;
/**
*
*/
private String year;
/**
*
*/
private String month;
/**
*
*/
@TableField("start_price")
private String startPrice;
/**
*
*/
@TableField("end_price")
private String endPrice;
/**
*
*/
@TableField("start_num")
private String startNum;
/**
*
*/
@TableField("end_num")
private String endNum;
/**
*
*/
@TableField("destory_num")
private String destoryNum;
/**
*
*/
@TableField("destory_price")
private String destoryPrice;
/**
*
*/
@TableField("add_num")
private String addNum;
/**
*
*/
@TableField("add_price")
private String addPrice;
/**
*
*/
@TableField("type_name")
private String typeName;
/**
*
*/
@TableField("type_id")
private String typeId;
/**
*
*/
@TableField("size_name")
private String sizeName;
/**
*
*/
@TableField("size_id")
private String sizeId;
/**
* 创建时间
*/
@TableField(value = "create_time", fill = FieldFill.INSERT)
private Date createTime;
/**
* 更新时间
*/
@TableField(value = "update_time", fill = FieldFill.UPDATE)
private Date updateTime;
}
package com.junmp.jyzb.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.junmp.jyzb.entity.PriceSumSummary;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface PriceSumSummaryMapper extends BaseMapper<PriceSumSummary> {
/**
* 存储过程-月初金额数量统计
*/
void MonthStart ();
/**
* 存储过程-月末金额数量统计
*/
void MonthEnd ();
/**
* 存储过程-月末差值计算统计
*/
void MonthDifference ();
}
package com.junmp.jyzb.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.api.bean.dto.ESTypeDto;
import com.junmp.jyzb.api.bean.dto.EquipmentTypeDto;
import com.junmp.jyzb.api.bean.dto.EquipmentTreeDto;
import com.junmp.jyzb.api.bean.dto.OrgDto;
......@@ -25,7 +26,7 @@ public interface EquipmentTypeService extends IService<EquipmentType> {
List<EquipmentTypeDto> getLowType(QueryEquipmentTypeReq orgId);
ResponseResult setTypeParentIds();
List<EquipmentTypeDto> getTypeTreeByEs(QueryEquipmentTypeReq req) throws IOException;
ESTypeDto getTypeTreeByEs(QueryEquipmentTypeReq req) throws IOException;
List<EquipmentTreeDto> GetTypeTree();
}
......@@ -16,6 +16,10 @@ import java.util.List;
public interface InventorySummaryService extends IService<InventorySummary> {
void MonthStartSum();
void MonthEndSum();
//根据条件查询库存汇总信息
PageResult<InventorySummary> getEquipmentInfo(InventorySumReq req);
......
......@@ -20,6 +20,8 @@ import java.util.List;
public interface PolicemanService extends IService<Policeman> {
Object addEs();
//添加警员
String AddPoliceman(UpdatePolicemanReq req);
......
package com.junmp.jyzb.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.api.bean.dto.ESOrgDto;
import com.junmp.jyzb.api.bean.dto.OrgDto;
import com.junmp.jyzb.api.bean.dto.OrgTreeDto;
import com.junmp.jyzb.api.bean.dto.TjOrgEqsDto;
......@@ -29,7 +30,7 @@ public interface PubOrgService extends IService<PubOrg> {
OrgDto getOrgHierarchy(QueryOrgReq req);
List<OrgDto> getOrgTreeByEs(QueryOrgReq req) throws IOException;
ESOrgDto getOrgTreeByEs(QueryOrgReq req) throws IOException;
List<OrgDto> getLowOrg(QueryOrgReq req);
Boolean ChangeState(UpdateOrgReq req);
......
......@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.Repository.BlogRepository;
import com.junmp.jyzb.Repository.TypeRepository;
import com.junmp.jyzb.api.bean.dto.ESTypeDto;
import com.junmp.jyzb.api.bean.dto.EquipmentTypeDto;
import com.junmp.jyzb.api.bean.dto.EquipmentTreeDto;
import com.junmp.jyzb.api.bean.dto.OrgDto;
......@@ -46,7 +47,8 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
@Resource
private SupplierTypeService supplierTypeService;
private static final String REDIS_TYPE = "Type_";
private List<EquipmentTypeDto> typeDto;
private ArrayList<String> ids;
//查询出类别表中数据的所有装备信息(入库时调用)
public List<EquipmentTypeDto> getEquipmentList(QueryEquipmentTypeReq req) {
......@@ -272,7 +274,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
}
public List<EquipmentTypeDto> getTypeTreeByEs(QueryEquipmentTypeReq req) throws IOException {
public ESTypeDto getTypeTreeByEs(QueryEquipmentTypeReq req) throws IOException {
ElasticsearchUtil es=new ElasticsearchUtil<>(client);
// 先从ES中拿到检索数据
......@@ -281,7 +283,34 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
// 获取所有组织机构数据
List<EquipmentType> allTypes = this.list(wp);
List<EquipmentTypeDto> treeResult= buildTypeTree(searchResults,allTypes);
return treeResult;
ESTypeDto resultDto=new ESTypeDto();
resultDto.setTypeDto(treeResult);
SetIds(treeResult);
resultDto.setIds(ids);
return resultDto;
}
public void SetIds(List<EquipmentTypeDto> treeResult) {
ids = new ArrayList<>();
if (treeResult != null) {
for (EquipmentTypeDto equipmentTypeDto : treeResult) {
setIdsRecursive(equipmentTypeDto);
}
}
}
private void setIdsRecursive(EquipmentTypeDto equipmentTypeDto) {
if (equipmentTypeDto != null) {
// 添加当前节点的 id
ids.add(equipmentTypeDto.getId());
// 递归处理子节点
if (equipmentTypeDto.getChildren() != null) {
for (EquipmentTypeDto child : equipmentTypeDto.getChildren()) {
setIdsRecursive(child);
}
}
}
}
public List<EquipmentTypeDto> buildTypeTree(List<EquipmentType> searchResults, List<EquipmentType> allTypes) {
......
......@@ -12,6 +12,7 @@ import com.junmp.jyzb.api.bean.query.InventorySumReq;
import com.junmp.jyzb.api.bean.req.CabinetInOutRecordsReq;
import com.junmp.jyzb.api.bean.req.RabbitMqOrderReq;
import com.junmp.jyzb.entity.*;
import com.junmp.jyzb.mapper.PriceSumSummaryMapper;
import com.junmp.jyzb.service.*;
import com.junmp.v2.common.util.BeanPlusUtil;
import com.junmp.v2.db.api.factory.PageFactory;
......@@ -64,8 +65,18 @@ public class InventorySummaryServiceImpl extends ServiceImpl<InventorySummaryMa
@Resource
private SysDictItemService sysDictItemService;
@Resource
private PriceSumSummaryMapper PriceSumSummaryMapper;
@Override
public void MonthStartSum() {
PriceSumSummaryMapper.MonthStart();
}
@Override
public void MonthEndSum() {
PriceSumSummaryMapper.MonthEnd();
PriceSumSummaryMapper.MonthDifference();
}
//根据条件查询库存汇总信息
@Override
public PageResult<InventorySummary> getEquipmentInfo(InventorySumReq req) {
......
......@@ -117,6 +117,11 @@ public class PolicemanServiceImpl extends ServiceImpl<PolicemanMapper, Policeman
private static final String REDIS_ORG = "Organization_";
@Override
public Object addEs() {
return null;
}
/**
* 添加警员信息
*
......
......@@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.Repository.PubOrgRepository;
import com.junmp.jyzb.Repository.TypeRepository;
import com.junmp.jyzb.api.bean.dto.EquipmentTypeDto;
import com.junmp.jyzb.api.bean.dto.OrgDto;
import com.junmp.jyzb.api.bean.dto.OrgTreeDto;
import com.junmp.jyzb.api.bean.dto.TjOrgEqsDto;
import com.junmp.jyzb.api.bean.dto.*;
import com.junmp.jyzb.api.bean.query.QueryOrgReq;
import com.junmp.jyzb.api.bean.req.UpdateOrgReq;
import com.junmp.jyzb.api.exception.JYZBAppException;
......@@ -60,7 +57,8 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
private RedisUtils redisUtils;
@Autowired
private PubOrgRepository pubOrgRepository;
private List<OrgDto> OrgDto;
private ArrayList<String> ids;
//例:传入abc,OrderMQReceiver ==>bc 删掉开头的字符串,不是就不删除
public static String removePrefix(String name, String deleteName) {
if (name.startsWith(deleteName)) {
......@@ -514,7 +512,7 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
}
///通过ES获取数据
@Override
public List<OrgDto> getOrgTreeByEs(QueryOrgReq req) throws IOException {
public ESOrgDto getOrgTreeByEs(QueryOrgReq req) throws IOException {
// 先进行搜索,获取前20条数据
List<PubOrg> searchResults = searchOrg(0, 10, req.getOrgName());
......@@ -523,8 +521,34 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
// 获取所有组织机构数据
List<PubOrg> allOrgs = this.list(wp);
List<OrgDto> treeResult= buildTree(searchResults,allOrgs);
return treeResult;
ESOrgDto resultDto =new ESOrgDto();
resultDto.setOrgDto(treeResult);
SetIds(treeResult);
resultDto.setIds(ids);
return resultDto;
}
public void SetIds(List<OrgDto> treeResult) {
ids = new ArrayList<>();
if (treeResult != null) {
for (OrgDto orgDto : treeResult) {
setIdsRecursive(orgDto);
}
}
}
private void setIdsRecursive(OrgDto orgDto) {
if (orgDto != null) {
// 添加当前节点的 id
ids.add(String.valueOf(orgDto.getOrgId()));
// 递归处理子节点
if (orgDto.getChildren() != null) {
for (OrgDto child : orgDto.getChildren()) {
setIdsRecursive(child);
}
}
}
}
private OrgDto convertToDto(PubOrg org, List<PubOrg> allOrgs) {
......
package com.junmp.jyzb.task;
import com.junmp.jyzb.service.InventorySummaryService;
import com.junmp.v2.job.api.JobAction;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Slf4j
@Component
public class MonthEnd implements JobAction{
@Resource
public InventorySummaryService inventorySummaryService;
//月末执行以计算金额
@Override
public void action() {
inventorySummaryService.MonthEndSum();
}
}
package com.junmp.jyzb.task;
import com.junmp.jyzb.service.InventorySummaryService;
import com.junmp.v2.job.api.JobAction;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Slf4j
@Component
public class MonthStart implements JobAction{
@Resource
public InventorySummaryService inventorySummaryService;
//月初执行
@Override
public void action() {
inventorySummaryService.MonthStartSum();
}
}
......@@ -74,6 +74,21 @@
delete from base_inventory_summary where locationId = #{cabinetId}
</delete>
<update parameterType="java.lang.String" id="id">
UPDATE vie_price_sum_summary
SET
add_price = CASE
WHEN add_price IS NULL THEN start_price - end_price
ELSE add_price
END,
add_num = CASE
WHEN add_num IS NULL THEN start_num - end_num
ELSE add_num
END
WHERE add_price IS NULL OR add_num IS NULL;
</update>
<insert id="getSumByCabinet">
INSERT INTO base_inventory_summary (id,org_id_int,org_name,type_id, type_name,size_id,size_name,location_id,location_name,
number,unit_price,price,stock_number, outbound_number,destruction_number,expire_number,
......
<?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.junmp.jyzb.mapper.PriceSumSummaryMapper">
<!-- <update parameterType="java.lang.String" id="PriceNumCacu">-->
<!-- UPDATE vie_price_sum_summary-->
<!-- SET-->
<!-- add_price = CASE-->
<!-- WHEN add_price IS NULL THEN start_price - end_price-->
<!-- ELSE add_price-->
<!-- END,-->
<!-- add_num = CASE-->
<!-- WHEN add_num IS NULL THEN start_num - end_num-->
<!-- ELSE add_num-->
<!-- END-->
<!-- WHERE add_price IS NULL OR add_num IS NULL;-->
<!-- </update>-->
<select id="MonthStart" statementType="CALLABLE" >
{call UpdateStartSummary()}
</select>
<select id="MonthEnd" statementType="CALLABLE" >
{call UpdateEndSummary()}
</select>
<select id="MonthDifference" statementType="CALLABLE" >
{call UpdatePriceSummary()}
</select>
</mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论