Commit 33341622 authored by hehongwei's avatar hehongwei

32类物料清洗

parent 95873cdf
package com.ruoyi.system.domain;
import java.util.Arrays;
public class ActStringList {
private String key;
private String[] value;
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String[] getValue() {
return value;
}
public void setValue(String[] value) {
this.value = value;
}
@Override
public String toString() {
return "ActStringList{" +
"key='" + key + '\'' +
", value=" + Arrays.toString(value) +
'}';
}
}
...@@ -50,6 +50,26 @@ public class ActSuppliesImportCleaningAcc extends BaseEntity ...@@ -50,6 +50,26 @@ public class ActSuppliesImportCleaningAcc extends BaseEntity
private String moneyColumns; private String moneyColumns;
/** 导入表内日期*/ /** 导入表内日期*/
private String dateColumn; private String dateColumn;
/** 费用来源*/
private String sOfExpenses;
/** 32类分类*/
private String categories;
public String getsOfExpenses() {
return sOfExpenses;
}
public void setsOfExpenses(String sOfExpenses) {
this.sOfExpenses = sOfExpenses;
}
public String getCategories() {
return categories;
}
public void setCategories(String categories) {
this.categories = categories;
}
public String getKmCode() { public String getKmCode() {
return kmCode; return kmCode;
......
package com.ruoyi.system.mapper; package com.ruoyi.system.mapper;
import com.ruoyi.system.domain.*; import com.ruoyi.system.domain.*;
import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
...@@ -10,6 +11,7 @@ import java.util.List; ...@@ -10,6 +11,7 @@ import java.util.List;
* @author * @author
* @date 2023-08-30 * @date 2023-08-30
*/ */
@Repository
public interface ActSuppliesCleaningRuleMapper public interface ActSuppliesCleaningRuleMapper
{ {
......
package com.ruoyi.system.mapper; package com.ruoyi.system.mapper;
import com.ruoyi.system.domain.*; import com.ruoyi.system.domain.*;
import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository
public interface ActSuppliesConverMapper { public interface ActSuppliesConverMapper {
List<ActSuppliesTemplate> templiteList(ActSuppliesTemplate sysSupplies); List<ActSuppliesTemplate> templiteList(ActSuppliesTemplate sysSupplies);
......
...@@ -3,6 +3,7 @@ package com.ruoyi.system.mapper; ...@@ -3,6 +3,7 @@ package com.ruoyi.system.mapper;
import java.util.List; import java.util.List;
import com.ruoyi.system.domain.ActSuppliesConvertrole; import com.ruoyi.system.domain.ActSuppliesConvertrole;
import com.ruoyi.system.domain.ActSuppliesTemplate; import com.ruoyi.system.domain.ActSuppliesTemplate;
import org.springframework.stereotype.Repository;
/** /**
* 通用规则Mapper接口 * 通用规则Mapper接口
...@@ -10,6 +11,7 @@ import com.ruoyi.system.domain.ActSuppliesTemplate; ...@@ -10,6 +11,7 @@ import com.ruoyi.system.domain.ActSuppliesTemplate;
* @author ruoyi * @author ruoyi
* @date 2023-08-29 * @date 2023-08-29
*/ */
@Repository
public interface ActSuppliesConvertroleMapper public interface ActSuppliesConvertroleMapper
{ {
/** /**
......
...@@ -2,6 +2,7 @@ package com.ruoyi.system.mapper; ...@@ -2,6 +2,7 @@ package com.ruoyi.system.mapper;
import java.util.List; import java.util.List;
import com.ruoyi.system.domain.ActSuppliesHistorydata; import com.ruoyi.system.domain.ActSuppliesHistorydata;
import org.springframework.stereotype.Repository;
/** /**
* 历史数据Mapper接口 * 历史数据Mapper接口
...@@ -9,6 +10,7 @@ import com.ruoyi.system.domain.ActSuppliesHistorydata; ...@@ -9,6 +10,7 @@ import com.ruoyi.system.domain.ActSuppliesHistorydata;
* @author dongjg * @author dongjg
* @date 2023-08-01 * @date 2023-08-01
*/ */
@Repository
public interface ActSuppliesHistorydataMapper public interface ActSuppliesHistorydataMapper
{ {
/** /**
......
package com.ruoyi.system.service.impl; package com.ruoyi.system.service.impl;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
...@@ -14,6 +15,7 @@ import com.ruoyi.common.utils.SecurityUtils; ...@@ -14,6 +15,7 @@ import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.domain.*; import com.ruoyi.system.domain.*;
import com.ruoyi.system.mapper.ActSuppliesCleaningRuleMapper; import com.ruoyi.system.mapper.ActSuppliesCleaningRuleMapper;
import com.ruoyi.system.mapper.ActSuppliesDetailsMapper;
import com.sun.javafx.collections.MappingChange; import com.sun.javafx.collections.MappingChange;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -38,6 +40,9 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat ...@@ -38,6 +40,9 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat
@Autowired @Autowired
private ActSuppliesCleaningRuleMapper actSuppliesCleaningRuleMapper; private ActSuppliesCleaningRuleMapper actSuppliesCleaningRuleMapper;
@Autowired
private ActSuppliesDetailsMapper actSuppliesDetailsMapper;
/** /**
* 查询 历史数据 * 查询 历史数据
* *
...@@ -635,37 +640,49 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat ...@@ -635,37 +640,49 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat
attributes[i-1]= 'A' + String.valueOf(i); attributes[i-1]= 'A' + String.valueOf(i);
} }
//获取物料明细编码与32类编码对应关系
ActSuppliesDetails actSuppliesDetails = new ActSuppliesDetails();
List<ActSuppliesDetails> actSuppliesDetails1 = actSuppliesDetailsMapper.selectActSuppliesDetailsMaterialList(actSuppliesDetails);
for (int i = 0; i < actOperation2s.size(); i++) { for (int i = 0; i < actOperation2s.size(); i++) {
Gson gson = new Gson(); Gson gson = new Gson();
JSONArray parse = (JSONArray) JSONArray.parse(actOperation2s.get(i).getConvenRole()); JSONArray parse = (JSONArray) JSONArray.parse(actOperation2s.get(i).getConvenRole());
Map<Integer, String>[] mapArray = gson.fromJson(actOperation2s.get(i).getHistoryRole(), Map[].class); Map<String, String>[] mapArray = gson.fromJson(actOperation2s.get(i).getHistoryRole(), Map[].class);
Map<String,String[]> mapcode = new HashMap<>();
for (Map<String, String> map : mapArray) {
String key = map.get("key");
String value = map.get("value");
String[] values = value.split(",");
mapcode.put(key,values);
}
//获取导入excel表数据存储到生成表实体类中 //获取导入excel表数据存储到生成表实体类中
for (int x = (int)parse.getJSONObject(0).get("HeaderRow"); x < actOperation2s.get(i).getActOperation2().length; x++) { for (int x = (int)parse.getJSONObject(0).get("HeaderRow"); x < actOperation2s.get(i).getActOperation2().length; x++) {
//判断数据是否为空,为空结束循环 //判断数据是否为空,为空结束循环
Map<String,String> mapcode = new HashMap<>();
for (Map<Integer, String> map : mapArray) { String[] s1 = mapcode.get(String.valueOf(x));
mapcode.put(map.get("key"),map.get("value"));
}
String s1 = mapcode.get(String.valueOf(x));
if (actOperation2s.get(i).getActOperation2()[x]!=null){ if (actOperation2s.get(i).getActOperation2()[x]!=null){
ActSuppliesImportTable actSuppliesImportTable = new ActSuppliesImportTable(); ActSuppliesImportTable actSuppliesImportTable = new ActSuppliesImportTable();
ActSuppliesImportCleaningAcc actSuppliesImportCleaningAcc = new ActSuppliesImportCleaningAcc(); ActSuppliesImportCleaningAcc actSuppliesImportCleaningAcc = new ActSuppliesImportCleaningAcc();
UUID uuid = UUID.randomUUID(); UUID uuid = UUID.randomUUID();
String s = StringUtils.remove(uuid.toString(), '-'); String s = StringUtils.remove(uuid.toString(), '-');
if (s1!=null){
actSuppliesImportTable.setKmCode(s1); actSuppliesImportTable.setKmCode(s1[0]);
}
actSuppliesImportTable.setId(s); actSuppliesImportTable.setId(s);
actSuppliesImportTable.sethId(actOperation2s.get(i).gethId()); actSuppliesImportTable.sethId(actOperation2s.get(i).gethId());
actSuppliesImportTable.sethDate(actOperation2s.get(i).gethDate()); actSuppliesImportTable.sethDate(actOperation2s.get(i).gethDate());
actSuppliesImportTable.setMining(actOperation2s.get(i).getMining()); actSuppliesImportTable.setMining(actOperation2s.get(i).getMining());
actSuppliesImportTable.setExportUuid(actOperation2s.get(i).getExportUuid()); actSuppliesImportTable.setExportUuid(actOperation2s.get(i).getExportUuid());
actSuppliesImportCleaningAcc.setKmCode(s1); if (s1!=null) {
actSuppliesImportCleaningAcc.setKmCode(s1[0]);
actSuppliesImportCleaningAcc.setsOfExpenses(s1[1]);
}
actSuppliesImportCleaningAcc.setId(s); actSuppliesImportCleaningAcc.setId(s);
actSuppliesImportCleaningAcc.sethId(actOperation2s.get(i).gethId()); actSuppliesImportCleaningAcc.sethId(actOperation2s.get(i).gethId());
actSuppliesImportCleaningAcc.setHdate(actOperation2s.get(i).gethDate()); actSuppliesImportCleaningAcc.setHdate(actOperation2s.get(i).gethDate());
...@@ -675,7 +692,6 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat ...@@ -675,7 +692,6 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat
//获取数组x行的真实非空长度 //获取数组x行的真实非空长度
List<Object> actOperation2s1 = Arrays.asList(actOperation2s.get(i).getActOperation2()[x]); List<Object> actOperation2s1 = Arrays.asList(actOperation2s.get(i).getActOperation2()[x]);
long count = Arrays.stream(actOperation2s.get(i).getActOperation2()[x]).filter(Objects::nonNull).count(); long count = Arrays.stream(actOperation2s.get(i).getActOperation2()[x]).filter(Objects::nonNull).count();
//循环保存到实体类字段中 //循环保存到实体类字段中
for (int y = 0; y < count; y++) { for (int y = 0; y < count; y++) {
if (actOperation2s.get(i).getActOperation2()[x][y]!=null) { if (actOperation2s.get(i).getActOperation2()[x][y]!=null) {
...@@ -690,7 +706,7 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat ...@@ -690,7 +706,7 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat
} }
} }
//新增一条生成表数据 //新增一条生成表数据(全部)
actSuppliesCleaningRuleMapper.addInsertConvertAcc(actSuppliesImportTable); actSuppliesCleaningRuleMapper.addInsertConvertAcc(actSuppliesImportTable);
if (actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("CodeColumn") - 1)] != null) { if (actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("CodeColumn") - 1)] != null) {
...@@ -701,13 +717,15 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat ...@@ -701,13 +717,15 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat
actSuppliesImportCleaningAcc.setDepartmentColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("DepartmentColumn") - 1)].getV()); actSuppliesImportCleaningAcc.setDepartmentColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("DepartmentColumn") - 1)].getV());
actSuppliesImportCleaningAcc.setNumberColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("NumberColumn") - 1)].getV()); actSuppliesImportCleaningAcc.setNumberColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("NumberColumn") - 1)].getV());
actSuppliesImportCleaningAcc.setMoneyColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("MoneyColumn") - 1)].getV()); actSuppliesImportCleaningAcc.setMoneyColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("MoneyColumn") - 1)].getV());
actSuppliesImportCleaningAcc.setMoneyColumns(Double.toString(Double.parseDouble(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("MoneyColumn") - 1)].getV()) * Double.parseDouble(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("NumberColumn") - 1)].getV()))); BigDecimal moneyColumn1 = new BigDecimal(Double.parseDouble(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("MoneyColumn") - 1)].getV()));
BigDecimal moneyColumn2 = new BigDecimal(Double.parseDouble(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("NumberColumn") - 1)].getV()));
actSuppliesImportCleaningAcc.setMoneyColumns(Double.toString(moneyColumn1.multiply(moneyColumn2).doubleValue()));
Object dateColumn = parse.getJSONObject(0).get("DateColumn"); Object dateColumn = parse.getJSONObject(0).get("DateColumn");
if(parse.getJSONObject(0).get("DateColumn").hashCode()>0){ if(parse.getJSONObject(0).get("DateColumn").hashCode()>0){
actSuppliesImportCleaningAcc.setDateColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("DateColumn") - 1)].getV()); actSuppliesImportCleaningAcc.setDateColumn(actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("DateColumn") - 1)].getV());
} }
//actSuppliesImportCleaning.setDateColumn(actOperation2s.get(i).getActOperation2()[x][JSON.parseObject(actOperation2s.get(i).getHistoryRole()).getInteger("DateColumn")].getV()); //actSuppliesImportCleaning.setDateColumn(actOperation2s.get(i).getActOperation2()[x][JSON.parseObject(actOperation2s.get(i).getHistoryRole()).getInteger("DateColumn")].getV());
//新增一条生成表数据 //新增一条生成表数据(筛选)
actSuppliesCleaningRuleMapper.addActSuppliesImportCleaningAcc(actSuppliesImportCleaningAcc); actSuppliesCleaningRuleMapper.addActSuppliesImportCleaningAcc(actSuppliesImportCleaningAcc);
} }
} }
...@@ -716,7 +734,11 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat ...@@ -716,7 +734,11 @@ public class ActSuppliesHistorydataServiceImpl implements IActSuppliesHistorydat
break; break;
} }
String codeColumn = actOperation2s.get(i).getActOperation2()[x][((int) parse.getJSONObject(0).get("CodeColumn") - 1)].getV();
} }
//修改历史表中的数据状态(是否清洗) //修改历史表中的数据状态(是否清洗)
actSuppliesHistorydataMapper.updateActSuppliesHistorydataStatusByIdAcc(actOperation2s.get(i).gethId()); actSuppliesHistorydataMapper.updateActSuppliesHistorydataStatusByIdAcc(actOperation2s.get(i).gethId());
......
...@@ -28,7 +28,6 @@ import static jdk.nashorn.internal.runtime.regexp.joni.Config.log; ...@@ -28,7 +28,6 @@ import static jdk.nashorn.internal.runtime.regexp.joni.Config.log;
* @date 2023-07-11 * @date 2023-07-11
*/ */
@Service @Service
public class ActSuppliesServiceImpl implements IActSuppliesService public class ActSuppliesServiceImpl implements IActSuppliesService
{ {
@Autowired @Autowired
......
...@@ -16,6 +16,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -16,6 +16,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="numberColumn" column="number_column" /> <result property="numberColumn" column="number_column" />
<result property="moneyColumn" column="money_column" /> <result property="moneyColumn" column="money_column" />
<result property="dateColumn" column="date_column" /> <result property="dateColumn" column="date_column" />
<result property="sOfExpenses" column="source_of_expenses" />
<result property="categories" column="categories" />
<result property="createBy" column="create_by" /> <result property="createBy" column="create_by" />
<result property="createTime" column="create_time" /> <result property="createTime" column="create_time" />
</resultMap> </resultMap>
...@@ -244,6 +246,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -244,6 +246,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="moneyColumns != null">money_columns,</if> <if test="moneyColumns != null">money_columns,</if>
<if test="moneyColumn != null">money_column,</if> <if test="moneyColumn != null">money_column,</if>
<if test="dateColumn != null">date_column,</if> <if test="dateColumn != null">date_column,</if>
<if test="sOfExpenses != null">source_of_expenses,</if>
<if test="categories != null">categories,</if>
</trim> </trim>
<trim prefix="values (" suffix=")" suffixOverrides=","> <trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if> <if test="id != null">#{id},</if>
...@@ -259,6 +263,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -259,6 +263,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="moneyColumns != null">#{moneyColumns},</if> <if test="moneyColumns != null">#{moneyColumns},</if>
<if test="moneyColumn != null">#{moneyColumn},</if> <if test="moneyColumn != null">#{moneyColumn},</if>
<if test="dateColumn != null">#{dateColumn},</if> <if test="dateColumn != null">#{dateColumn},</if>
<if test="sOfExpenses != null">#{sOfExpenses},</if>
<if test="categories != null">#{categories},</if>
</trim> </trim>
</insert> </insert>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment