资源简介
这是用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个文件信息
相关资源
- SuperVCD纯JAVA编程
- Java汪文君高并发编程.txt
- 汪文君Java8新特性及实战视频教程完整
- 用java写的多线程聊天程序GUI界面soc
- java课程设计系列之魔板游戏.rar
- java用servlet实现文件上传到数据库
- JAVA贪吃蛇源代码
- java绘图程序代码
- java 一笔画问题
- Java私塾——模拟银行系统源代码
- java核心技术卷1源码 第10版
- ford-fulkerson算法求网络最大流(java实
- 匈牙利算法java实现
- java游戏毕业设计之基于java的五子棋
- 文件校验和源码
- javaSE Tutorial中文版
- JAVA双缓冲绘图源码
- java获取系统信息cpu,内存,硬盘方法
- 2020 兴业数金Java笔试题.docx
- 2020 兴业银行Java笔试题
- 自定义JList
- java做服务器 android做客户端 实现聊天
- Java语言程序设计(基础篇) 机械工业
- java游戏开发之射击游戏
- javaweb购物车(全)
- linux-java调用c语言编译的so动态库-jn
- 嵌入式java虚拟机移植
- 尚硅谷_Java基础实战_Bank项目_源代码
- JAVA程序设计习题库及答案
-
ba
se64JAVA实现源码
评论
共有 条评论