• 大小: 809KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-13
  • 语言: Java
  • 标签: MRP  JAVA  

资源简介

这是用Java是现代的mrp系统的算法,通过各种物料,计算出各种物料的需求,是ERP课程实验一。控制台界面,用mysql数据库。

资源截图

代码片段和文件信息

package com.mrp.algorithm;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.concurrent.ConcurrentHashMap;
import java.sql.*;

import com.mrp.entity.BillOfMaterial;
import com.mrp.entity.ClassAB;
import com.mrp.entity.Dosql;
import com.mrp.entity.MasterMaterial;
import com.mrp.entity.Mclass;
import com.mrp.entity.RealMaterial;
import com.mrp.entity.Table3;

public class Algorithm {
private List input;//输入数据 LLC为0的物料 类Material的实例
private MasterMaterialManager mmm;
private Map map = new ConcurrentHashMap();
private int T = 12;
private int maxLLC;
public Algorithm(List inputMasterMaterialManager mmm)
{
this.input=input;
this.mmm = mmm;
}
/**
 * 单阶BOM展开结点
 * @param x
 */
private void expandRealMaterial(RealMaterial x)
{
for(Entry entry : mmm.getMasterMaterial(x.P_NO).BOM.entrySet())
{
String P_NO = entry.getKey(); 
int num = entry.getValue();
if (map.get(P_NO)==null)
{
RealMaterial y = new RealMaterial(P_NO);
for (int t=0;t<=T;t++)
y.TPOP[t].GR+=x.TPOP[t].POR*num;
map.put(P_NO y);
maxLLC = Math.max(maxLLC mmm.getMasterMaterial(P_NO).LLC);
}else
{
RealMaterial y = map.get(P_NO);
for (int t=0;t<=T;t++)
y.TPOP[t].GR+=x.TPOP[t].POR*num;
}
}
}
public void runMRPDivideAlrotithm()
{
maxLLC=0;
for (RealMaterial e :input)
{
expandRealMaterial(e);
printRealMaterial(e);
}

for (int LLC=1;LLC<=maxLLC;LLC++)
{
for(Entry entry : map.entrySet()){
               
           RealMaterial x = entry.getValue();
           if (mmm.getMasterMaterial(x.P_NO).LLC==LLC)
           {
            dealMaterial(x);
            expandRealMaterial(x);
            printRealMaterial(x);
           }
    }
}
}
private void dealMaterial(RealMaterial x)
{
MasterMaterial g = mmm.getMasterMaterial(x.P_NO);
x.TPOP[0].PAB = g.OH - g.AL + Math.max( g.SR[0]  0);
for (int t=1;t<=T;t++)
{
if (t==1)
{
x.TPOP[1].POH = x.TPOP[0].PAB + g.SR[1] - x.TPOP[1].GR - Math.max(x.TPOP[0].GR0);
}else
{
x.TPOP[t].POH = x.TPOP[t-1].PAB + g.SR[t] - x.TPOP[t].GR;
}
if (x.TPOP[t].POH < g.SS)
{
x.TPOP[t].NR = g.SS -x.TPOP[t].POH;
//x.TPOP[t].PORcpt =
if (g.LSR==MasterMaterial.LFL)
x.TPOP[t].PORcpt = x.TPOP[t].NR;
else if (g.LSR==MasterMaterial.FOQ)
x.TPOP[t].PORcpt = (x.TPOP[t].NR/g.LS+1) * g.LS ;
else if (g.LSR==MasterMaterial.POQ)
{
int sum=0;
for (int i=0j=t;i sum+=x.TPOP[j].GR;
x.TPOP[t].PORcpt=sum;
}
}else
{
x.TPOP[t].NR = 0;
x.TPOP[t].PORcpt = 0;
}
x.TPOP[t].PAB = x.TPOP[t].POH

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-05-22 13:42  NEWMRP\
     文件         393  2015-05-21 23:27  NEWMRP\.classpath
     文件         382  2015-05-21 22:35  NEWMRP\.project
     目录           0  2015-05-22 19:00  NEWMRP\.settings\
     文件          57  2015-05-21 22:36  NEWMRP\.settings\org.eclipse.core.resources.prefs
     文件         598  2015-05-21 22:36  NEWMRP\.settings\org.eclipse.jdt.core.prefs
     文件         624  2015-05-22 13:21  NEWMRP\billofmaterial.sql
     目录           0  2015-05-22 19:00  NEWMRP\bin\
     目录           0  2015-05-22 19:00  NEWMRP\bin\com\
     目录           0  2015-05-22 19:00  NEWMRP\bin\com\mrp\
     目录           0  2015-05-22 19:00  NEWMRP\bin\com\mrp\algorithm\
     文件       11618  2015-05-22 18:59  NEWMRP\bin\com\mrp\algorithm\Algorithm.class
     文件        1062  2015-05-22 18:49  NEWMRP\bin\com\mrp\algorithm\MasterMaterialManager.class
     目录           0  2015-05-22 19:00  NEWMRP\bin\com\mrp\entity\
     文件         368  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\BillOfMaterial.class
     文件         519  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\ClassAB.class
     文件        1698  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\Dosql.class
     文件        1539  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\MasterMaterial.class
     文件         393  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\Mclass.class
     文件         699  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\RealMaterial.class
     文件         522  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\Table3.class
     文件         486  2015-05-22 18:49  NEWMRP\bin\com\mrp\entity\TPOPNode.class
     文件         663  2015-05-22 13:21  NEWMRP\itemmaster.sql
     文件      709922  2015-03-02 17:12  NEWMRP\mysql-connector-java-5.1.7-bin.jar
     目录           0  2015-05-22 19:00  NEWMRP\src\
     目录           0  2015-05-22 19:00  NEWMRP\src\com\
     目录           0  2015-05-22 19:00  NEWMRP\src\com\mrp\
     目录           0  2015-05-22 19:00  NEWMRP\src\com\mrp\algorithm\
     文件       11227  2015-05-22 18:59  NEWMRP\src\com\mrp\algorithm\Algorithm.java
     文件         415  2015-05-21 22:36  NEWMRP\src\com\mrp\algorithm\MasterMaterialManager.java
     目录           0  2015-05-22 19:00  NEWMRP\src\com\mrp\entity\
............此处省略13个文件信息

评论

共有 条评论