package com.aps.core.service.impl;
|
|
import com.alibaba.fastjson2.JSONObject;
|
import com.aps.common.core.utils.DateUtils;
|
import com.aps.core.domain.ApsStandardProcessRouteHeader;
|
import com.aps.core.mapper.ApsStandardProcessRouteHeaderMapper;
|
import com.aps.core.service.IApsStandardProcessRouteHeaderService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.data.redis.core.RedisTemplate;
|
import org.springframework.stereotype.Service;
|
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.Set;
|
|
/**
|
* 标准工艺路线HeaderService业务层处理
|
*
|
* @author zhl
|
* @date 2025-05-06
|
*/
|
@Service
|
@Slf4j
|
public class ApsStandardProcessRouteHeaderServiceImpl implements IApsStandardProcessRouteHeaderService
|
{
|
@Autowired
|
private ApsStandardProcessRouteHeaderMapper apsStandardProcessRouteHeaderMapper;
|
|
@Autowired
|
public RedisTemplate redisTemplate;
|
|
/**
|
* 查询标准工艺路线Header
|
*
|
* @param id 标准工艺路线Header主键
|
* @return 标准工艺路线Header
|
*/
|
@Override
|
public ApsStandardProcessRouteHeader selectApsStandardProcessRouteHeaderById(Long id)
|
{
|
return apsStandardProcessRouteHeaderMapper.selectApsStandardProcessRouteHeaderById(id);
|
}
|
|
/**
|
* 查询标准工艺路线Header列表
|
*
|
* @param apsStandardProcessRouteHeader 标准工艺路线Header
|
* @return 标准工艺路线Header
|
*/
|
@Override
|
public List<ApsStandardProcessRouteHeader> selectApsStandardProcessRouteHeaderList(ApsStandardProcessRouteHeader apsStandardProcessRouteHeader)
|
{
|
return apsStandardProcessRouteHeaderMapper.selectApsStandardProcessRouteHeaderList(apsStandardProcessRouteHeader);
|
}
|
|
/**
|
* 新增标准工艺路线Header
|
*
|
* @param apsStandardProcessRouteHeader 标准工艺路线Header
|
* @return 结果
|
*/
|
@Override
|
public int insertApsStandardProcessRouteHeader(ApsStandardProcessRouteHeader apsStandardProcessRouteHeader)
|
{
|
apsStandardProcessRouteHeader.setCreateTime(DateUtils.getNowDate());
|
return apsStandardProcessRouteHeaderMapper.insertApsStandardProcessRouteHeader(apsStandardProcessRouteHeader);
|
}
|
|
/**
|
* 修改标准工艺路线Header
|
*
|
* @param apsStandardProcessRouteHeader 标准工艺路线Header
|
* @return 结果
|
*/
|
@Override
|
public int updateApsStandardProcessRouteHeader(ApsStandardProcessRouteHeader apsStandardProcessRouteHeader)
|
{
|
apsStandardProcessRouteHeader.setUpdateTime(DateUtils.getNowDate());
|
return apsStandardProcessRouteHeaderMapper.updateApsStandardProcessRouteHeader(apsStandardProcessRouteHeader);
|
}
|
|
/**
|
* 批量删除标准工艺路线Header
|
*
|
* @param ids 需要删除的标准工艺路线Header主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteApsStandardProcessRouteHeaderByIds(Long[] ids)
|
{
|
return apsStandardProcessRouteHeaderMapper.deleteApsStandardProcessRouteHeaderByIds(ids);
|
}
|
|
/**
|
* 删除标准工艺路线Header信息
|
*
|
* @param id 标准工艺路线Header主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteApsStandardProcessRouteHeaderById(Long id)
|
{
|
return apsStandardProcessRouteHeaderMapper.deleteApsStandardProcessRouteHeaderById(id);
|
}
|
|
@Override
|
public boolean setProcessRouteDataToRedis(String orgCode) {
|
try {
|
log.info("开始同步标准工艺路线数据至Redis");
|
Set<String> keys = redisTemplate.keys("ROUTE:ROUTE_*");
|
if (keys != null && !keys.isEmpty()) {
|
redisTemplate.delete(keys);
|
}
|
List<JSONObject> res = apsStandardProcessRouteHeaderMapper.selectProcessRouteStandardTimeData(orgCode);
|
Map<String, Object> bulkData = new HashMap<>();
|
for (JSONObject jsonObject : res) {
|
bulkData.put("ROUTE:ROUTE_"+jsonObject.getString("org_code")+"_"+jsonObject.getString("item_code"), jsonObject.getBigDecimal("standardtime"));
|
}
|
redisTemplate.opsForValue().multiSet(bulkData);
|
log.info("完成同步标准工艺路线数据至Redis");
|
return true;
|
} catch (Exception e) {
|
e.printStackTrace();
|
log.error("同步标准工艺路线数据至Redis失败"+e.getMessage());
|
return false;
|
}
|
}
|
}
|