| | |
| | | package com.iailab.module.ansteel.coking.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.iailab.module.ansteel.coking.dao.CokingTraceDeviationDao; |
| | | import com.iailab.module.ansteel.coking.entity.CokingTraceDeviationEntity; |
| | | import com.iailab.module.ansteel.coking.service.CokingTraceDeviationService; |
| | | import com.iailab.module.model.api.mcs.McsApi; |
| | | import com.iailab.module.model.api.mcs.dto.ChartParamDTO; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.math.BigDecimal; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * 焦化工序影响因数偏差值 |
| | |
| | | @Autowired |
| | | private CokingTraceDeviationDao cokingTraceDeviationDao; |
| | | |
| | | @Autowired |
| | | private McsApi mcsApi; |
| | | |
| | | @Override |
| | | public List<CokingTraceDeviationEntity> list(Map<String, Object> params) { |
| | | return cokingTraceDeviationDao.selectList(new QueryWrapper<>()); |
| | | String relId = (String) params.get("relId"); |
| | | String sugObj = (String) params.get("sugObj"); |
| | | |
| | | QueryWrapper<CokingTraceDeviationEntity> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("rel_id", relId) |
| | | .eq(StringUtils.isNotBlank(sugObj),"sug_obj", sugObj); |
| | | return cokingTraceDeviationDao.selectList(queryWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public void save(CokingTraceDeviationEntity deviationEntity) { |
| | | cokingTraceDeviationDao.insert(deviationEntity); |
| | | public void save(List<CokingTraceDeviationEntity> entityList) { |
| | | cokingTraceDeviationDao.insert(entityList); |
| | | } |
| | | |
| | | @Override |
| | | public void saveTraceDeviation(String relId, String process, String clock, String jsonString, String sugObj) { |
| | | JSONArray jsonArray = JSON.parseArray(jsonString); |
| | | |
| | | List<CokingTraceDeviationEntity> entityList = new ArrayList<>(); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | JSONObject jsonObject = jsonArray.getJSONObject(i); |
| | | |
| | | Map<String,String> values = new HashMap<>(); |
| | | // 指标 |
| | | for (int index = 1; index <= 2; index++) { |
| | | String indexKey = "index" + index; |
| | | if (jsonObject.containsKey(indexKey)) { |
| | | String nameValue = jsonObject.getString(indexKey); |
| | | if (StringUtils.isBlank(nameValue)) { |
| | | continue; |
| | | } |
| | | String[] split = nameValue.split(" "); |
| | | String name = split[0]; |
| | | String value = split[1]; |
| | | |
| | | values.put("ind" + index + "Name",name); |
| | | values.put("ind" + index + "Value",value); |
| | | } |
| | | } |
| | | // 影响因素 |
| | | for (int index = 1; index <= 20; index++) { |
| | | String factorKey = "factor" + index; |
| | | if (jsonObject.containsKey(factorKey)) { |
| | | String nameValue = jsonObject.getString(factorKey); |
| | | if (StringUtils.isBlank(nameValue)) { |
| | | continue; |
| | | } |
| | | String[] split = nameValue.split(" "); |
| | | String name = split[0]; |
| | | String value = split[1]; |
| | | |
| | | values.put("fac" + index + "Name",name); |
| | | values.put("fac" + index + "Value",value); |
| | | } |
| | | } |
| | | |
| | | CokingTraceDeviationEntity entity = new CokingTraceDeviationEntity(); |
| | | BeanUtil.fillBeanWithMap(values,entity,true); |
| | | entity.setRelId(relId); |
| | | entity.setProcess(process); |
| | | entity.setClock(clock); |
| | | entity.setSugObj(sugObj); |
| | | entity.setCreateDate(new Date()); |
| | | entityList.add(entity); |
| | | } |
| | | cokingTraceDeviationDao.insert(entityList); |
| | | } |
| | | } |