/// <summary> /// 把装订工艺插入到工艺序列,并插入配页工艺 /// </summary> /// <param name="bindtype"></param> public void InserBind(int bindtype) { BindType = bindtype; List <Model.recttange> plist = new List <Model.recttange>(); Model.P_ProcessList w1 = new Model.P_ProcessList(); Model.Process p = DAL.Process.GetModel(bindtype); if (p != null) { w1.ProcessId = p.ProcessId; w1.ProcessName = p.ProcessName; w1.Num = ProductNum; w1.PType = 2; w1.GroupId = 0; int extend = p.MinExtendPaper; w1.Price = DAL.C_ProcessPrice.GetPrice(w1.ProcessId, w1.Num); Cover.ExtendNum += extend; w1.ListCode = Cover.UnitName; Process.Add(w1); int id = p.MustNext; if (id > 0) { Model.Process p2 = DAL.Process.GetModel(id); Model.P_ProcessList w2 = new Model.P_ProcessList(); int alltie = 0; if (Inner != null) { foreach (ProductUnit p1 in Inner) { alltie += p1.PrintPs.HalfPsNum + p1.PrintPs.AllPsNum + p1.PrintPs.QuarPsNum; p1.ExtendNum += p2.MinExtendPaper; p1.ExtendRatio = ConstantValue.Process.ExtendRatio; } } alltie += Cover.PrintPs.HalfPsNum + Cover.PrintPs.AllPsNum + Cover.PrintPs.QuarPsNum; w2.ProcessId = id; w2.GroupId = 1; w2.ProcessName = p2.ProcessName; w2.Num = alltie * ProductNum; w2.PType = 2; w2.Price = DAL.C_ProcessPrice.GetPrice(w2.ProcessId, w2.Num); w2.ListCode = "内页总贴"; Process.Add(w2); } } }
/// <summary> /// 增加用户选择工艺 /// mr结构为id为processid,length ,heigth; /// 同时增加某工艺的隐含工艺。 /// </summary> /// <param name="mr"></param> private static Model.recttange AddNexeProcess(Model.recttange mr) { Model.recttange r1 = null; Model.Process p1 = DAL.Process.GetModel(mr.Id); int next = p1.MustNext; if (next > 0) { r1 = new Model.recttange(); r1.length = mr.length; r1.height = mr.height; r1.QuNum = mr.QuNum; r1.Id = next; } return(r1); }
public string GetProcessNumUnit(int Processid) { string reslut = ""; if (AllNum == null) { CalAllNum(); } Model.Process pro = Model.Process.GetDataById(Processid); if (pro != null) { int ptype = pro.TypeId; reslut = NumUnit[ptype]; } return(reslut); }
public static Model.Working GetProcess(int pid) { Model.Working w = new Model.Working(); Model.Process p = DAL.Process.GetModel(pid); if (p != null) { w.Pid = pid; w.Pname = p.ProcessName; w.ExtendPaper = p.MinExtendPaper; w.ExtendRatio = p.ExtendRatio; return(w); } else { return(null); } }
public int GetProcessNum(int processid) { if (AllNum == null) { CalAllNum(); } Model.Process pro = Model.Process.GetDataById(processid); if (pro == null) { return(0); } int num = 0; int ptype = pro.TypeId; num = AllNum[ptype]; return(num); }
protected void createBtn_Click(object sender, EventArgs e) { if (Page.IsValid) { Model.Process p = new Model.Process() { Name = Name.Text }; BLL.Process.ProcessLogic pl = new BLL.Process.ProcessLogic(); int res = pl.CreateProcess(p); if (res > 0) { // Server.TransferRequest("../About.aspx", true); Response.Redirect("/Admin"); } } }
public void InsertSingleProcess(int ProcessId, int Num, int Groupid) { if (Process == null) { Process = new List <Model.P_ProcessList>(); } Model.P_ProcessList w = new Model.P_ProcessList(); Model.Process mp = DAL.Process.GetModel(ProcessId); w.GroupId = Groupid; if (mp != null) { w.ProcessId = ProcessId; w.Num = Num; w.ProcessName = mp.ProcessName; w.ListCode = Cover.UnitName; w.Price = DAL.C_ProcessPrice.GetPrice(ProcessId, Num); Process.Add(w); } }
private Model.P_ProcessList CheckProcess(Model.P_ProcessList w) { //检查某种工艺需要关联工艺; //折页超过克重后,压痕; ProductUnit p1 = null; Model.P_ProcessList result = null; if (w.ProcessName.IndexOf("折页") >= 0) { int gp = w.GroupId; if (gp > 0) { if (Inner != null) { if (Inner.Count <= gp) { p1 = Inner[gp - 1]; } } } else { p1 = Cover; } if (p1 != null) { if (p1.UserPaper.kg > 157) { int id = 41; result = new Model.P_ProcessList(); Model.Process p2 = DAL.Process.GetModel(id); result.ProcessId = p2.ProcessId; result.ProcessName = p2.ProcessName; result.Num = w.Num; result.Price = DAL.C_ProcessPrice.GetPrice(result.ProcessId, w.Num); result.ListCode = w.ListCode; result.GroupId = w.GroupId; } } } return(result); }
public bool AddProcess(int processid, int num) { Model.PartItem pi = new Model.PartItem(); pi.PartType = 8; pi.PartName = "后道工艺"; pi.Id = processid; Model.Process pro = Model.Process.GetDataById(processid); int extend = (int)(Part.PaperNum * 10 * pro.ExtendRatio); Part.PaperExtend += extend; AllExtendPaper += extend; pi.Name = pro.ProcessName; pi.Num = num; pi.Money = Model.C_ProcessPrice.GetProcessPrice(processid, num); Model.C_ProcessPrice cp = Model.C_ProcessPrice.GetById(processid); pi.Price = cp.SinglePrice1; pi.Remark = "放张数:" + extend.ToString(); AllItem.Add(pi); return(true); }
/// <summary> /// 添加工艺,判断是否有相同type的工艺 /// </summary> /// <param name="processid">工艺id</param> /// <param name="rectlist">工艺类列表</param> /// <param name="l">长</param> /// <param name="h">高</param> /// <param name="q">数量</param> /// <returns></returns> public List <Model.recttange> GetProcessList(int processid, List <Model.recttange> rectlist, int l, int h, int q) { Model.Process pro1 = DAL.Process.GetModel(processid); for (int i = 0; i < rectlist.Count; i++) { Model.Process pro = DAL.Process.GetModel(rectlist[i].Id); if (pro1.TypeId == pro.TypeId) { rectlist[i].Id = processid; rectlist[i].Name = pro1.ProcessName; if (l > 0 && h > 0) { rectlist[i].length = l; rectlist[i].height = h; } if (q > 0) { rectlist[i].QuNum = q; } } else//没有同类型的工艺 { Model.recttange rect = new Model.recttange(); rect.Id = processid; rect.Name = pro1.ProcessName; if (l > 0 && h > 0) { rect.length = l; rect.height = h; } if (q > 0) { rect.QuNum = q; } rectlist.Add(rect); } }//循环结束 return(rectlist); }
public int CreateProcess(Model.Process process) { return(this.CreateProcess(process.Name)); }
public Object CreateProject(Model.Project project, string userName) { //获取创建人 Model.User user = new UserController().GetUserByName(userName); project.CreateUserId = user.Id; project.CurrentUserId = user.Id; //新建项目 Dictionary <string, string> backData = (Dictionary <string, string>)project.Create(); int projectId = Convert.ToInt32(backData["Id"]); try { //新建表单实例 Model.FormInst formInst = new Model.FormInst(); formInst.ProjectId = projectId; FormTempController formTempController = new FormTempController(); Model.FormTemp formTemp = (Model.FormTemp)formTempController.GetFormTempByBusinessId(project.BusinessId); formInst.Name = formTemp.Name; formInst.FormTempId = formTemp.Id; formInst.Content = System.IO.File.ReadAllBytes(path); formInst.Create(); //新建流程实例 ProcessController processController = new ProcessController(); Model.Process process = (Model.Process)processController.GetProcessByBusinessId(project.BusinessId); Model.Process_Inst process_Inst = new Model.Process_Inst(); process_Inst.ProcessId = process.Id; process_Inst.ProjectId = projectId; process_Inst.CreateUserId = user.Id; int processInstId = (int)process_Inst.Create(); //新建环节实例 ActivityController activityController = new ActivityController(); Model.Activity activity = (Model.Activity)activityController.GetActivityByProcessId(process.Id); Model.Activity_Inst activity_Inst = new Model.Activity_Inst(); activity_Inst.ActivityId = activity.Id; activity_Inst.ProcessInstId = processInstId; activity_Inst.ProjectId = project.Id; int activityInstId = (int)activity_Inst.Create(); //新建工作项 Model.WorkItem workItem = new Model.WorkItem(); workItem.ProjectId = projectId; workItem.State = 0; workItem.ActivityInstId = activityInstId; workItem.ReceiveUserId = user.Id; int workItemId = (int)workItem.Create(); project.WorkItemId = workItemId; project.Update(); //新建材料清单模板实例 MaterialTempController materialTempController = new MaterialTempController(); Model.MaterialTemp materialTemp = (Model.MaterialTemp)materialTempController.GetMaterialTempByBusinessId(project.BusinessId); Model.MaterialTemp_Inst materialTemp_Inst = new Model.MaterialTemp_Inst(); materialTemp_Inst.MaterialTempId = materialTemp.Id; materialTemp_Inst.Name = materialTemp.Name; materialTemp_Inst.ProjectId = projectId; materialTemp_Inst.Create(); } catch (Exception e) { Util.Log.LogHelper.WriteLog(e.Message); } //返回项目数据 return(Newtonsoft.Json.JsonConvert.SerializeObject(backData)); }
public void InsertProces(List <Model.recttange> plist) { if (Process == null) { Process = new List <Model.P_ProcessList>(); } foreach (Model.recttange r in plist) { Model.P_ProcessList w = new Model.P_ProcessList(); w.GroupId = r.MId; Model.Process p = DAL.Process.GetModel(r.Id); if (p != null) { w.ProcessId = p.ProcessId; w.ProcessName = p.ProcessName; int type = p.AreaMarking; if (type == 1) { w.ArHeight = ProductSize.Height; w.ArLength = ProductSize.Length; int s = w.ArHeight * w.ArLength; if (ProductId == 1 && w.GroupId == 0) { s = Cover.Size.Height * Cover.Size.Length * 2; } if (ProductId == 4) { s = Cover.Size.Length * Cover.Size.Height; } double s0 = s; s0 = s0 * ProductNum; s0 = s0 / 1000000; w.Num = Convert.ToInt32(s0); } if (type == 0) { w.Num = ProductNum; } if (type == 12) { w.Num = r.length * ProductNum; } if (type == 13) { w.Num = r.QuNum; } int extend = p.MinExtendPaper; w.Price = DAL.C_ProcessPrice.GetPrice(r.Id, w.Num); w.GroupId = 0; if (w.GroupId == 0) { Cover.ExtendRatio = p.ExtendRatio; Cover.ExtendNum += extend; w.ListCode = Cover.UnitName; } else { if (Inner != null) { if (w.GroupId <= Inner.Count) { Inner[w.GroupId - 1].ExtendRatio = p.ExtendRatio; Inner[w.GroupId - 1].ExtendNum += extend; w.ListCode = Inner[w.GroupId - 1].UnitName; } } else { return; } } w.b1 = 1; Process.Add(w); } } }
public Boolean UpdateProcess(Model.Process process) { process.Update(); return(true); }
public Object CreateProcess(Model.Process process) { return(Newtonsoft.Json.JsonConvert.SerializeObject(process.Create())); }
/// <summary> /// Recreate all activities within this task /// </summary> internal void RebuildProcesses() { ProcessList.Clear(); //convert and add each activity (ssaGroup) within current StateStation to ProcessList //note that: each group of SSA (grouped by activity) MUST be added ONCE (not 0 not 5) // if SSA of one of processModels is in ssaGroup, consider that SSA // else create a new processModel foreach (var ssaGroup in Model.Block.StateStation.StateStationActivities.GroupBy(ssa => ssa.Activity.Id)) { ProcessEditorVm processVm = null; #region processVm = Create a new PPEditorProcess for this ssaGroup //processModel: existing process which its ssa is in ssaGroup var processModel = Model.Processes .Where(p => p.StateStationActivity != null) .FirstOrDefault(p => ssaGroup.Any(ssa => ssa.Id == p.StateStationActivity.Id)); if (processModel != null)//a process exists matching a ssa in ssaGroup { processVm = new ProcessEditorVm(processModel, _uow); } else//no process matches any ssa in ssaGroup { processModel = new Model.Process(); processModel.Task = Model; processVm = new ProcessEditorVm(processModel, _uow, ssaGroup); } #endregion #region Set the event handlers of processVm processVm.ActivityChoiceChanged += (oldVal, newVal) => { if (newVal == null) return; //update TargetPoint of process if (IsSameQtyForActivitiesSelected) { processVm.TargetPoint = SameQtyForActivities; var newDuration = SameQtyForActivities * (int)newVal.CycleTime; if (newDuration != processVm.DurationSeconds) processVm.DurationSeconds = newDuration; } else if (IsSameTimeForActivitiesSelected) { processVm.TargetPoint = (int)Math.Floor(SameTimeForActivities.TotalSeconds / newVal.CycleTime); var newDuration = processVm.TargetPoint * (int)newVal.CycleTime; if (newDuration != processVm.DurationSeconds) processVm.DurationSeconds = newDuration; } else { if (processVm.DurationSeconds > 0) processVm.TargetPoint = (int)Math.Floor(processVm.DurationSeconds / newVal.CycleTime); else if (processVm.TargetPoint > 0) processVm.DurationSeconds = (int)Math.Floor(processVm.TargetPoint * newVal.CycleTime); } }; processVm.ProcessTargetPointChanged += (oldVal, newVal) => { }; processVm.ProcessDurationChanged += (oldVal, newVal) => { DurationSeconds = ProcessList.Max(x => x.DurationSeconds); }; #endregion //finally add it to ProcessList ProcessList.Add(processVm); } }