Commit 2d1327f9 by 李小惠

修改已读消息接口,编写出入库日志通用方法

parent cf038366
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -204,4 +204,6 @@ public class InventoryReq extends BaseRequest { ...@@ -204,4 +204,6 @@ public class InventoryReq extends BaseRequest {
private Integer property; private Integer property;
private String bussinessType;
} }
...@@ -4,12 +4,12 @@ import com.junmp.jyzb.api.constant.JYZBConstant; ...@@ -4,12 +4,12 @@ import com.junmp.jyzb.api.constant.JYZBConstant;
import com.junmp.jyzb.entity.Temp.HumidityAndtemperature; import com.junmp.jyzb.entity.Temp.HumidityAndtemperature;
import com.junmp.v2.cache.AbstractRedisCache; import com.junmp.v2.cache.AbstractRedisCache;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ZSetOperations;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
import java.util.concurrent.TimeUnit;
@Component @Component
...@@ -33,6 +33,7 @@ public class TemperatureRedisCache extends AbstractRedisCache<Object> { ...@@ -33,6 +33,7 @@ public class TemperatureRedisCache extends AbstractRedisCache<Object> {
// String key = warehouseId; // String key = warehouseId;
// Long size = getRedisTemplate().opsForZSet().size(key); // Long size = getRedisTemplate().opsForZSet().size(key);
getRedisTemplate().opsForZSet().add("WarehouseDev:"+warehouseId, data, timestamp); getRedisTemplate().opsForZSet().add("WarehouseDev:"+warehouseId, data, timestamp);
setValueWithExpiration("WarehouseDev:"+warehouseId, data,86400);
put(warehouseId, data); put(warehouseId, data);
} }
public List<Object> getDataByTimestampRange(String warehouseId, long startTimestamp, long endTimestamp) { public List<Object> getDataByTimestampRange(String warehouseId, long startTimestamp, long endTimestamp) {
...@@ -45,4 +46,8 @@ public class TemperatureRedisCache extends AbstractRedisCache<Object> { ...@@ -45,4 +46,8 @@ public class TemperatureRedisCache extends AbstractRedisCache<Object> {
// Set<Object> dataInRange1= getRedisTemplate().opsForZSet ().reverseRange(key, startTimestamp, endTimestamp); // Set<Object> dataInRange1= getRedisTemplate().opsForZSet ().reverseRange(key, startTimestamp, endTimestamp);
return new ArrayList<>(dataInRange); return new ArrayList<>(dataInRange);
} }
public void setValueWithExpiration(String key, HumidityAndtemperature value, long expirationSeconds) {
getRedisTemplate().opsForValue().set(key, value, expirationSeconds, TimeUnit.SECONDS);
}
} }
...@@ -185,9 +185,9 @@ public class PublicController { ...@@ -185,9 +185,9 @@ public class PublicController {
List<LogSummaryReq> collect1 = dataByTimestampRange.stream().map(obj -> (LogSummaryReq) obj).collect(Collectors.toList()); List<LogSummaryReq> collect1 = dataByTimestampRange.stream().map(obj -> (LogSummaryReq) obj).collect(Collectors.toList());
logList.addAll(collect1); logList.addAll(collect1);
} }
if (CollectionUtil.isNotEmpty(logList)){ // if (CollectionUtil.isNotEmpty(logList)){
orderMainService.addLogs(logList, req.getBussinessType()); // orderMainService.addLogs(logList, req.getBussinessType());
} // }
......
...@@ -3,11 +3,17 @@ package com.junmp.jyzb.service; ...@@ -3,11 +3,17 @@ package com.junmp.jyzb.service;
import com.junmp.jyzb.api.bean.dto.LogSummaryDto; import com.junmp.jyzb.api.bean.dto.LogSummaryDto;
import com.junmp.jyzb.api.bean.query.InAndOutRecordReq.CabinetLogsRecordReq; import com.junmp.jyzb.api.bean.query.InAndOutRecordReq.CabinetLogsRecordReq;
import com.junmp.jyzb.api.bean.query.InAndOutRecordReq.OutInLogsReq; import com.junmp.jyzb.api.bean.query.InAndOutRecordReq.OutInLogsReq;
import com.junmp.jyzb.api.bean.query.InAndOutRecordReq.SummaryLogReq;
import com.junmp.jyzb.api.bean.query.InventoryReq;
import com.junmp.jyzb.api.bean.query.LogSummaryReq; import com.junmp.jyzb.api.bean.query.LogSummaryReq;
import com.junmp.jyzb.entity.LogSummary; import com.junmp.jyzb.entity.LogSummary;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.v2.auth.api.bean.login.LoginUser;
import com.junmp.v2.db.api.page.PageResult; import com.junmp.v2.db.api.page.PageResult;
import java.util.List;
import java.util.Map;
/** /**
* @author lxh专属坐骑 * @author lxh专属坐骑
* @description 针对表【base_log_summary】的数据库操作Service * @description 针对表【base_log_summary】的数据库操作Service
...@@ -30,4 +36,23 @@ public interface LogSummaryService extends IService<LogSummary> { ...@@ -30,4 +36,23 @@ public interface LogSummaryService extends IService<LogSummary> {
PageResult<LogSummaryDto> RecordSumByOrderId(LogSummaryReq req); PageResult<LogSummaryDto> RecordSumByOrderId(LogSummaryReq req);
LogSummaryDto RecordSumByOrderIdCount(LogSummaryReq req); LogSummaryDto RecordSumByOrderIdCount(LogSummaryReq req);
//添加出入库日志(根据装备明细进行汇总创建)
Boolean addLogSummaryByInv(List<InventoryReq> list,String orderId,String orderCode,String bussiness,Integer deviceType);
//添加出入库日志(根据logSummaryReq实体类直接创建)
Boolean addLogSummaryByClass(List<LogSummaryReq> list,String bussinessType);
Map<String,LogSummaryReq> setLogDetailToMap(List<InventoryReq> list,Map<String,LogSummaryReq> logMap,String bussiness);
Map<String,LogSummaryReq> setLogSummaryToMap(Map<String,LogSummaryReq> logMap,LoginUser loginUser,
String locationId,String bussinessType,String typeName,String locationName,
String orderId,String orderCode,Long orgId,
String locationState,Integer deviceType);
LogSummaryReq setLogSummary(LoginUser loginUser, String typeName, String locationId, String locationName, Integer subNum,
String orderId, String orderCode, String bussinesstype, Long orgId, String outInState,Integer devideType);
} }
...@@ -59,5 +59,5 @@ public interface OrderMainService extends IService<OrderMain> { ...@@ -59,5 +59,5 @@ public interface OrderMainService extends IService<OrderMain> {
//快速创建入库单(快速移库内容) //快速创建入库单(快速移库内容)
// boolean addQuickOrder(OrderMain existOrder); // boolean addQuickOrder(OrderMain existOrder);
boolean addLogs(List<LogSummaryReq> list,String bussinessType);
} }
...@@ -251,56 +251,6 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory ...@@ -251,56 +251,6 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
return PageResultFactory.createPageResult(page1); return PageResultFactory.createPageResult(page1);
} }
//根据条件查询仓库/单警柜下的所有装备信息
public PageResult<InventoryDto> GetDetailByTerms1(InventoryReq req) {
//判断组织机构是否存在
PubOrg pubOrg = pubOrgService.PubOrgExist(req.getOrgId());
//根据条件查询仓库下的所有装备
LambdaQueryWrapper<Inventory> eq = new LambdaQueryWrapper<Inventory>()
.eq(Inventory::getOrgId, req.getOrgId())
.eq(ObjectUtil.isNotNull(req.getLocationType()),Inventory::getLocationType, req.getLocationType())
.eq(ObjectUtil.isNotNull(req.getLocationState()) && !req.getLocationState().trim().isEmpty(), Inventory::getLocationState, req.getLocationState())
.eq(ObjectUtil.isNotNull(req.getBussinessState()) && !req.getBussinessState().trim().isEmpty(), Inventory::getBussinessState, req.getBussinessState())
.eq(ObjectUtil.isNotNull(req.getTermState()), Inventory::getTermState, req.getTermState())
.eq(ObjectUtil.isNotNull(req.getSizeId()) && !req.getSizeId().trim().isEmpty(),Inventory::getSizeId,req.getSizeId())
.eq(ObjectUtil.isNotNull(req.getTypeId()) && !req.getTypeId().trim().isEmpty(),Inventory::getTypeId,req.getTypeId())
.eq(ObjectUtil.isNotNull(req.getPrice()),Inventory::getPrice,req.getPrice());
if (req.getLocationType().equals("0")){
eq.eq(ObjectUtil.isNotNull(req.getLocationId()) && !req.getLocationId().trim().isEmpty(), Inventory::getLocationId, req.getLocationId());
}else {
List<CabinetBox> list = cabinetBoxService.list(new LambdaQueryWrapper<CabinetBox>().eq(CabinetBox::getCabinetId, req.getLocationId()));
Set<String> cabinetList=list.stream().map(CabinetBox::getId).collect(Collectors.toSet());
eq.in(Inventory::getLocationId,cabinetList);
}
long size = list(eq).size();
Page<Inventory> page = page(PageFactory.getDefaultPage(req.getPageNo(), req.getPageSize()), eq);
List<Inventory> records = page.getRecords();
List<InventoryDto> collect = records.parallelStream()
.map(inventory -> {
InventoryDto inventoryDto = new InventoryDto();
BeanPlusUtil.copyProperties(inventory, inventoryDto);
Map<String, String> map = setNames(inventory.getTypeId(), inventory.getSizeId(), inventory.getSupplierId());
//设置typeName
inventoryDto.setTypeName(map.get("typeName"));
//设置sizeName
inventoryDto.setSizeName(map.get("sizeName"));
//查询图片并返回
inventoryDto.setPhoto(map.get("photo"));
//如果有供应商id的前提下,设置supplierName
if (ObjectUtil.isNotNull(inventory.getSupplierId())) {
inventoryDto.setSupplierName(map.get("supplierName"));
}
inventoryDto.setOrgName(pubOrg.getOrgName());
return inventoryDto;
}).collect(Collectors.toList());
Page<InventoryDto> page1 = PageFactory.getDefaultPage(req.getPageNo(), req.getPageSize());
page1.setRecords(collect);
page1.setTotal(size);
return PageResultFactory.createPageResult(page1);
}
public PageResult<InventoryDto> GetDetailByTerms(InventoryReq req) { public PageResult<InventoryDto> GetDetailByTerms(InventoryReq req) {
...@@ -426,8 +376,8 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory ...@@ -426,8 +376,8 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
List<Inventory> collect = req.getInventoryList().stream().map(inventory1 -> { List<Inventory> collect = req.getInventoryList().stream().map(inventory1 -> {
Inventory inventory = new Inventory(); Inventory inventory = new Inventory();
BeanPlusUtil.copyProperties(inventory1,inventory); BeanPlusUtil.copyProperties(inventory1,inventory);
inventory.setWarrantyPeriod(req.getWarrantyPeriod()); inventory.setWarrantyPeriod(ObjectUtil.isNull(req.getWarrantyPeriod())?inventory1.getWarrantyPeriod(): req.getWarrantyPeriod());
inventory.setMaintenancePeriod(req.getMaintenancePeriod()); inventory.setMaintenancePeriod(ObjectUtil.isNull(req.getMaintenancePeriod())?inventory1.getMaintenancePeriod(): req.getMaintenancePeriod());
inventory.setPrice(req.getPrice()); inventory.setPrice(req.getPrice());
return inventory; return inventory;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
...@@ -438,9 +388,9 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory ...@@ -438,9 +388,9 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
//批量修改个别装备 //批量修改个别装备
List<Inventory> collect = req.getInventoryList().stream().map(inventory1 -> { List<Inventory> collect = req.getInventoryList().stream().map(inventory1 -> {
Inventory inventory = new Inventory(); Inventory inventory = new Inventory();
BeanPlusUtil.copyProperties(inventory,inventory1); BeanPlusUtil.copyProperties(inventory1,inventory);
inventory.setWarrantyPeriod(req.getWarrantyPeriod()); inventory.setWarrantyPeriod(ObjectUtil.isNull(req.getWarrantyPeriod())?inventory1.getWarrantyPeriod(): req.getWarrantyPeriod());
inventory.setMaintenancePeriod(req.getMaintenancePeriod()); inventory.setMaintenancePeriod(ObjectUtil.isNull(req.getMaintenancePeriod())?inventory1.getMaintenancePeriod(): req.getMaintenancePeriod());
return inventory; return inventory;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
return updateBatchById(collect); return updateBatchById(collect);
......
...@@ -101,9 +101,11 @@ public class PublicServiceImpl implements PublicService { ...@@ -101,9 +101,11 @@ public class PublicServiceImpl implements PublicService {
Long bizId = message.getBizId(); Long bizId = message.getBizId();
//将该条消息全设置为已读并且更新再推送一条消息 //将该条消息全设置为已读并且更新再推送一条消息
List<SysMessage> list = sysMessageService.list(new LambdaQueryWrapper<SysMessage>().eq(SysMessage::getBizId, bizId)); List<SysMessage> list = sysMessageService.list(new LambdaQueryWrapper<SysMessage>().eq(SysMessage::getBizId, bizId));
List<Long> idList = list.stream()
.map(SysMessage::getMsgId).collect(Collectors.toList()); // messageApi.batchReadFlagByMessageIds(StrUtil.join(",", new Object[]{idList}), MsgReadStateEnum.READ);
messageApi.batchReadFlagByMessageIds(StrUtil.join(",", new Object[]{idList}), MsgReadStateEnum.READ); sysMessageService.update(new LambdaUpdateWrapper<SysMessage>()
.set(SysMessage::getReadFlag, 1)
.eq(SysMessage::getBizId, bizId));
List<Long> userIdList = list.stream().map(SysMessage::getReceiveUserId).collect(Collectors.toList()); List<Long> userIdList = list.stream().map(SysMessage::getReceiveUserId).collect(Collectors.toList());
userIdList.forEach(userId ->{ userIdList.forEach(userId ->{
if (userId!= LoginContext.getContext().getLoginUser().getUserId())//非本人审核单据 if (userId!= LoginContext.getContext().getLoginUser().getUserId())//非本人审核单据
......
...@@ -348,7 +348,6 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper,Warehouse> ...@@ -348,7 +348,6 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper,Warehouse>
// Long endTimeStamp = DateTimeUtil.getCurrentDateTime().toInstant().toEpochMilli(); // Long endTimeStamp = DateTimeUtil.getCurrentDateTime().toInstant().toEpochMilli();
List<Object> dataByTimestampRange =new ArrayList<>(); List<Object> dataByTimestampRange =new ArrayList<>();
if (ObjectUtil.isNotNull(req.getStartTime()) && ObjectUtil.isNotNull(req.getEndTime())){ if (ObjectUtil.isNotNull(req.getStartTime()) && ObjectUtil.isNotNull(req.getEndTime())){
Long startTimeStamp = DateTimeUtil.TimeDateToLong(req.getStartTime()); Long startTimeStamp = DateTimeUtil.TimeDateToLong(req.getStartTime());
Long endTimeStamp = DateTimeUtil.TimeDateToLong(req.getEndTime()); Long endTimeStamp = DateTimeUtil.TimeDateToLong(req.getEndTime());
dataByTimestampRange = temperatureRedisCache.getDataByTimestampRange(req.getId(), startTimeStamp, endTimeStamp); dataByTimestampRange = temperatureRedisCache.getDataByTimestampRange(req.getId(), startTimeStamp, endTimeStamp);
......
...@@ -484,20 +484,26 @@ ...@@ -484,20 +484,26 @@
join base_equipment_type on base_equipment_type.id= t.type_parent_id join base_equipment_type on base_equipment_type.id= t.type_parent_id
</select> </select>
<select id="GetCount" resultType="com.junmp.jyzb.entity.InventorySummary"> <select id="GetCount" resultType="com.junmp.jyzb.entity.InventorySummary">
select sum(number) as number,sum(price)as price,sum(stock_number)as stockNumber, select sum(case when location_type=0 then stock_number else 0 end)+
sum(outbound_number)as outboundNumber,sum(destruction_number)as destructionNumber, sum(case when location_type=0 then outbound_number else 0 end)+
sum(expire_number)as expireNumber,sum(broken_number)as brokenNumber, sum(case when location_type=1 then stock_number else 0 end)+
sum(fix_number)as fixNumber,sum(use_number)as useNumber sum(case when location_type=1 then outbound_number else 0 end) as number,
FROM base_inventory_summary where SUBSTRING( org_code, 1, #{length} ) = #{req.findCode} sum(price)as price,sum(case when location_type=0 then stock_number else 0 end)as stockNumber,
<if test="length != 12"> sum(case when location_type=0 then outbound_number else 0 end)as outboundNumber,
sum(case when location_type=1 then stock_number else 0 end)as djgstockNumber,
<if test="req.levelType == 0"> sum(case when location_type=1 then outbound_number else 0 end)as djgoutboundNumber,
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 ) sum(destruction_number)as destructionNumber,
</if> sum(expire_number)as expireNumber,sum(broken_number)as brokenNumber,
</if> sum(fix_number)as fixNumber,sum(use_number)as useNumber
<if test="length == 12"> FROM base_inventory_summary where SUBSTRING( org_code, 1, #{length} ) = #{req.findCode}
and org_id_int =(select org_id FROM pub_org where org_code=#{req.findCode} ) <if test="length != 12">
</if> <if test="req.levelType == 0">
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 )
</if>
</if>
<if test="length == 12">
and org_id_int =(select org_id FROM pub_org where org_code=#{req.findCode} )
</if>
</select> </select>
<select id="getTypeParentName" resultType="java.lang.String"> <select id="getTypeParentName" resultType="java.lang.String">
select name FROM base_equipment_type where parent_id="00000000-0000-0000-0000-000000000000" select name FROM base_equipment_type where parent_id="00000000-0000-0000-0000-000000000000"
...@@ -647,7 +653,7 @@ ...@@ -647,7 +653,7 @@
count(*) as totalElements count(*) as totalElements
from( from(
SELECT SELECT
sum(number) as number, sum(stock_number)+sum(outbound_number) as number,
sum(price) as price, sum(price) as price,
sum(stock_number) as stockNumber, sum(stock_number) as stockNumber,
sum(outbound_number) as outboundNumber, sum(outbound_number) as outboundNumber,
...@@ -677,7 +683,7 @@ ...@@ -677,7 +683,7 @@
<select id="getBydetail" resultType="com.junmp.jyzb.api.bean.dto.LargeScreenDto.ContentDto"> <select id="getBydetail" resultType="com.junmp.jyzb.api.bean.dto.LargeScreenDto.ContentDto">
select t.*,pub_org.d_name as orgName,pub_org.org_code as orgCode from( select t.*,pub_org.d_name as orgName,pub_org.org_code as orgCode from(
SELECT SELECT
sum(number) as zsCount, sum(stock_number)+sum(outbound_number) as zsCount,
sum(price) as priceCount, sum(price) as priceCount,
sum(stock_number) as zkCount, sum(stock_number) as zkCount,
sum(outbound_number) as ckCount, sum(outbound_number) as ckCount,
...@@ -708,7 +714,7 @@ ...@@ -708,7 +714,7 @@
</select> </select>
<select id="getByChildren" resultType="com.junmp.jyzb.api.bean.dto.LargeScreenDto.ContentChildrenDto"> <select id="getByChildren" resultType="com.junmp.jyzb.api.bean.dto.LargeScreenDto.ContentChildrenDto">
SELECT SELECT
sum(number) as zsCount, sum(stock_number)+sum(outbound_number) as zsCount,
sum(price) as priceCount, sum(price) as priceCount,
sum(stock_number) as zkCount, sum(stock_number) as zkCount,
sum(outbound_number) as ckCount, sum(outbound_number) as ckCount,
......
...@@ -36,7 +36,7 @@ knife4j: ...@@ -36,7 +36,7 @@ knife4j:
spring: spring:
datasource: datasource:
driver-class-name: com.mysql.cj.jdbc.Driver driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.1.128:3306/db_jyzb_test?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT&nullCatalogMeansCurrent=true url: jdbc:mysql://192.168.1.128:3306/db_jyzb?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT&nullCatalogMeansCurrent=true
username: root username: root
password: 123456 password: 123456
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论