public void CommitEvent(object key) { string str = ConfigHelper.Get("IsWBSRelevance"); BudTaskChangeService service = new BudTaskChangeService(); BudTaskService service2 = new BudTaskService(); BudTaskResourceService service3 = new BudTaskResourceService(); cn.justwin.Domain.Entities.BudTaskChange byId = service.GetById(key.ToString()); IList <cn.justwin.Domain.Entities.BudTask> byProject = service2.GetByProject(byId.PrjId, 0x3e7); IList <int> years = service2.GetYears(byId.PrjId); if (years != null) { foreach (int num in years) { IList <cn.justwin.Domain.Entities.BudTask> yearTask = service2.GetYearTask(byProject, num); foreach (cn.justwin.Domain.Entities.BudTask task in yearTask) { service2.Add(task); } foreach (int num2 in service2.GetMonths(yearTask, num)) { foreach (cn.justwin.Domain.Entities.BudTask task2 in service2.GetMonthTasks(yearTask, num, num2)) { service2.Add(task2); } } } } if (str == "1") { service3.AddTaskResource(byId.PrjId); } }
private void GenerageBudgetByParent(string prjId) { PTPrjInfoService pTPrjInfoService = new PTPrjInfoService(); PTPrjInfo byId = pTPrjInfoService.GetById(prjId); PTPrjInfo parent = pTPrjInfoService.GetParent(prjId); string str = byId.TypeCode.Substring(6, 4); BudTaskService budTaskService = new BudTaskService(); budTaskService.DeleteByProject(prjId); System.Collections.Generic.IList <cn.justwin.Domain.Entities.BudTask> byProject = budTaskService.GetByProject(parent.PrjGuid.Value.ToString(), 999); for (int i = 0; i < byProject.Count; i++) { cn.justwin.Domain.Entities.BudTask budTask = byProject[i]; budTask.PrjId = byId.PrjGuid.Value.ToString(); budTask.TaskId = budTask.TaskId.Substring(0, 9) + str + budTask.TaskId.Substring(13); if (!string.IsNullOrEmpty(budTask.ParentId)) { budTask.ParentId = budTask.ParentId.Substring(0, 9) + str + budTask.ParentId.Substring(13); } budTaskService.Add(budTask); } this.BindGv(); }
protected void btnSave_Click(object sender, System.EventArgs e) { string value = this.txtQuantity.Text.Trim(); string text = string.Empty; string text2 = string.Empty; if (string.IsNullOrEmpty(value)) { base.RegisterScript("alert('工程量必须输入');"); this.txtQuantity.Focus(); return; } if (this.hfldIsWBSRelevance.Value == "0" && base.Request["page"].ToString() != "BudTemplateList.aspx" && string.IsNullOrEmpty(this.txtUnitPrice.Text.Trim())) { base.RegisterScript("alert('综合单价必须输入');"); this.txtUnitPrice.Focus(); return; } if (this.hfldIsWBSRelevance.Value == "0" && base.Request["page"].ToString() != "BudTemplateList.aspx") { text = System.Convert.ToDecimal(this.txtUnitPrice.Text.Trim()).ToString(); text2 = System.Convert.ToDecimal(this.txtTotal.Value.Trim()).ToString(); } string text3 = this.txtTaskCode.Text.Trim(); bool flag = false; string text4 = base.Request["type"]; string arg_14E_0 = base.Request["isBudTask"]; if (this.ViewState["oldCode"] != null) { this.ViewState["oldCode"].ToString(); } else { string arg_17E_0 = string.Empty; } if (flag) { base.RegisterScript("top.ui.alert('清单编码不能重复');"); this.txtTaskCode.Focus(); return; } string text5 = System.Guid.NewGuid().ToString(); string text6 = this.txtTaskName.Text.Trim(); string text7 = this.txtStartDate.Text; string text8 = this.txtEndDate.Text; string text9 = this.txtUnit.Text.Trim(); string arg_1F9_0 = this.ddlTaskType.SelectedValue; string text10 = this.txtNote.Text.Trim(); string text11 = this.txtConstructionPeriod.Text.Trim(); string text12 = this.txtDescription.Text.Trim(); string a = base.Request["page"]; if (a == "BudgetPlaitList.aspx") { BudTaskService budTaskService = new BudTaskService(); string text13 = string.Empty; text13 = base.Request["prjId"]; string text14 = base.Request["id"]; cn.justwin.Domain.Entities.BudTask budTask; if (text4.ToLower() == "edit") { budTask = budTaskService.GetById(text14); } else { budTask = new cn.justwin.Domain.Entities.BudTask(); budTask.TaskId = text5; budTask.OrderNumber = cn.justwin.Domain.BudTask.GetOrderNumber(text13, text14); if (string.IsNullOrEmpty(text14)) { budTask.ParentId = null; } else { budTask.ParentId = text14; } budTask.PrjId = text13; budTask.InputUser = base.UserCode; budTask.InputDate = System.DateTime.Now; budTask.IsValid = new bool?(true); budTask.Version = new int?(1); budTask.Modified = null; } budTask.TaskCode = text3; budTask.TaskName = text6; System.DateTime?startDate = null; if (!string.IsNullOrEmpty(text7)) { startDate = new System.DateTime?(System.Convert.ToDateTime(text7)); } budTask.StartDate = startDate; System.DateTime?endDate = null; if (!string.IsNullOrEmpty(text8)) { endDate = new System.DateTime?(System.Convert.ToDateTime(text8)); } budTask.EndDate = endDate; if (!string.IsNullOrEmpty(value)) { budTask.Quantity = new decimal?(System.Convert.ToDecimal(value)); } if (!string.IsNullOrEmpty(text)) { budTask.UnitPrice = new decimal?(System.Convert.ToDecimal(text)); } if (!string.IsNullOrEmpty(text2)) { budTask.Total = new decimal?(System.Convert.ToDecimal(text2)); } budTask.Unit = text9; budTask.Note = text10; if (!string.IsNullOrEmpty(text11)) { budTask.ConstructionPeriod = new int?(System.Convert.ToInt32(text11)); } budTask.TaskType = ""; budTask.FeatureDescription = this.txtDescription.Text.Trim(); if (text4.ToLower() == "edit") { budTaskService.Update(budTask); } else { budTaskService.Add(budTask); } string str = "resetData();"; string str2 = "top.ui.winSuccess({ parentName: '_BudTaskEdit' });"; base.RegisterScript(str + str2); } if (a == "BudTemplateList.aspx") { string message = string.Concat(new string[] { "closeDial('", text3, "','", text6, "','", text9, "','", System.Convert.ToDecimal(value).ToString(), "','", text10, "','", this.ddlTaskType.SelectedItem.Text, "','", text7, "','", text8, "','", text, "','", text2, "','", text11, "','", text5, "','", text12, "');" }); string str3 = "/BudgetManage/Template/BudTemplateList.aspx?tempId=" + this.hfldTempId.Value; //"top.ui.winSuccess({ parentName: '_BudTaskEdit',url:" + str3 + " });"; base.RegisterScript(message); } }
public void CommitEvent(object key) { BudModifyService service = new BudModifyService(); BudTaskService service2 = new BudTaskService(); BudModifyTaskService service3 = new BudModifyTaskService(); BudTaskResourceService service4 = new BudTaskResourceService(); ConPayoutModifyService service5 = new ConPayoutModifyService(); string modifyId = key.ToString(); BudModify budmodify = (from r in service where r.ModifyId == modifyId select r).FirstOrDefault <BudModify>(); ConPayoutModify item = (from r in service5 where r.BudModifyId == modifyId select r).FirstOrDefault <ConPayoutModify>(); if (item != null) { item.FlowState = 1; service5.Update(item); } using (List <BudModifyTask> .Enumerator enumerator = (from p in service3 where p.ModifyId == budmodify.ModifyId select p).ToList <BudModifyTask>().GetEnumerator()) { BudModifyTask taskx; while (enumerator.MoveNext()) { taskx = enumerator.Current; cn.justwin.Domain.Entities.BudTask task = (from p in service2 where p.TaskId == taskx.TaskId select p).FirstOrDefault <cn.justwin.Domain.Entities.BudTask>(); if ((task != null) && (budmodify.Flowstate == 1)) { if (taskx.ModifyType == 0) { task.IsValid = true; service2.Update(task); service3.UpdateTotal2(taskx.ModifyTaskId); } if ((task.ModifyId != task.ModifyId) || (taskx.ModifyType == 1)) { task.ModifyId = task.ModifyId; if (!task.Total2.HasValue) { task.Total2 = 0; } if (!task.Quantity.HasValue) { task.Quantity = 0; } task.Total2 = new decimal?(Convert.ToDecimal(task.Total2) + Convert.ToDecimal(task.Total2)); task.Quantity = new decimal?(Convert.ToDecimal(task.Quantity) + Convert.ToDecimal(task.Quantity)); if (task.Quantity != 0M) { task.UnitPrice = task.Total2 / task.Quantity; } service2.Update(task); service3.UpdateTotal2(taskx.ModifyTaskId); } } } } if (ConfigHelper.Get("BudgetRequireDiff") != "0") { string str2 = ConfigHelper.Get("IsWBSRelevance"); BudModify byId = service.GetById(key.ToString()); service2.DeleteYearMonthByPrj(byId.PrjId); IList <cn.justwin.Domain.Entities.BudTask> byProject = service2.GetByProject(byId.PrjId, 0x3e7); IList <int> years = service2.GetYears(byId.PrjId); if (years != null) { foreach (int num in years) { IList <cn.justwin.Domain.Entities.BudTask> yearTask = service2.GetYearTask(byProject, num); foreach (cn.justwin.Domain.Entities.BudTask task2 in yearTask) { service2.Add(task2); } foreach (int num2 in service2.GetMonths(yearTask, num)) { foreach (cn.justwin.Domain.Entities.BudTask task3 in service2.GetMonthTasks(yearTask, num, num2)) { service2.Add(task3); } } } if (str2 == "1") { service4.AddTaskResource(byId.PrjId); } } } }
public int ConverBudTaskList(string[] colArray, string inputUser, List <string> errors, string IsWBSRelevance) { int num = 0; List <cn.justwin.Domain.BudTask> list = new List <cn.justwin.Domain.BudTask>(); IDictionary <string, int> relation = ExcelUtility.GetRelation(colArray); List <string> orderNumberByLayer = new List <string>(); try { this.ParseTaskTable(relation); List <int> layerList = new List <int>(); if (this.rankIndex == -1) { List <string> codeList = this.GetCodeList(); layerList = this.GetLayersByCode(codeList); } else { layerList = this.GetLayers(); } orderNumberByLayer = this.GetOrderNumberByLayer(layerList); } catch (Exception exception) { errors.Add(exception.Message); } string code = string.Empty; string name = string.Empty; string unit = string.Empty; decimal quantity = 0M; decimal num3 = 0M; decimal num4 = 0M; DateTime?startDate = null; DateTime?endDate = null; string note = string.Empty; string orderNumber = cn.justwin.Domain.BudTask.GetOrderNumber(this.prjId, this.taskId); string str6 = string.Empty; int num5 = 0; string str7 = string.Empty; string str8 = string.Empty; for (int i = this.startIndex; i < this.taskTable.Rows.Count; i++) { bool flag = true; DataRow row = this.taskTable.Rows[i]; code = (row[this.codeIndex] == null) ? "" : row[this.codeIndex].ToString(); string item = string.Empty; name = (row[this.nameIndex] == null) ? "" : row[this.nameIndex].ToString(); quantity = 0M; if (this.quantityIndex != -1) { try { string str10 = row[this.quantityIndex].ToString().Trim(); if (!string.IsNullOrEmpty(str10)) { quantity = decimal.Parse(str10); } } catch { item = "在您的Excel中:编码" + code + ",工程量存在非有效的数字,请修改!"; errors.Add(item); flag = false; } } if (IsWBSRelevance == "0") { if (this.unitPriceIndex != -1) { try { string str11 = row[this.unitPriceIndex].ToString().Trim(); if (!string.IsNullOrEmpty(str11)) { num3 = decimal.Parse(str11); } } catch { item = "在您的Excel中:编码" + code + ",综合单价存在非有效的数字,请修改!"; errors.Add(item); flag = false; } } if (this.totalIndex != -1) { try { num4 = quantity * num3; } catch { item = "在您的Excel中:编码" + code + ",综合单价存在非有效的数字,请修改!"; errors.Add(item); flag = false; } } } unit = string.Empty; if (this.unitIndex != -1) { unit = row[this.unitIndex].ToString(); } if (this.startDateIndex != -1) { try { string str12 = row[this.startDateIndex].ToString().Trim(); if (!string.IsNullOrEmpty(str12)) { startDate = new DateTime?(Convert.ToDateTime(str12)); } else { startDate = null; } } catch { item = "在您的Excel中:编码" + code + ",存在非有效时间类型,请修改!"; errors.Add(item); flag = false; } } if (this.endDateIndex != -1) { try { string str13 = row[this.endDateIndex].ToString(); if (!string.IsNullOrEmpty(str13)) { endDate = new DateTime?(Convert.ToDateTime(str13)); } else { endDate = null; } } catch { item = "在您的Excel中:编码" + code + ",存在非有效时间类型,请修改!"; errors.Add(item); flag = false; } } if (this.noteIndex != -1) { note = row[this.noteIndex].ToString(); } if (this.constructionPeriodIndex != -1) { try { num5 = Convert.ToInt32(row[this.constructionPeriodIndex]); } catch { } } if (this.featureDescriptionIndex != -1) { str7 = row[this.featureDescriptionIndex].ToString(); } if (row.Table.Columns.Contains("序号")) { str8 = row["序号"].ToString(); } if (!flag) { item = "在您的Excel中:编码" + code + ",存在错误数据导致其子节点不能导入!"; errors.Add(item); int num7 = 0; string str14 = orderNumberByLayer[i]; for (int j = i + 1; j < orderNumberByLayer.Count; j++) { if (orderNumberByLayer[j].StartsWith(str14)) { num7++; } } i += num7; } else { num++; string id = Guid.NewGuid().ToString(); string parentTaskId = (this.taskId == "") ? null : this.taskId; cn.justwin.Domain.BudTask task = null; if (IsWBSRelevance == "1") { decimal?unitPrice = null; decimal?total = null; task = cn.justwin.Domain.BudTask.Create(id, parentTaskId, null, this.prjId, code, name, unit, quantity, startDate, endDate, true, note, inputUser, DateTime.Now, unitPrice, total); } else { task = cn.justwin.Domain.BudTask.Create(id, parentTaskId, null, this.prjId, code, name, unit, quantity, startDate, endDate, true, note, inputUser, DateTime.Now, new decimal?(num3), new decimal?(num4)); } string str17 = orderNumberByLayer[i].Substring(3); if (string.IsNullOrEmpty(str17)) { if (i > this.startIndex) { orderNumber = cn.justwin.Domain.BudTask.GetOrderNumber(this.prjId, this.taskId); } task.OrderNumber = orderNumber; } else { task.OrderNumber = orderNumber + str17; } if (i > 0) { int count = list.Count; if (count > 0) { if ((orderNumberByLayer[i].Length - str6.Length) == 3) { task.ParentId = list[count - 1].Id; } else if ((orderNumberByLayer[i].Length - str6.Length) == 0) { task.ParentId = list[count - 1].ParentId; } else { int length = orderNumberByLayer[i].Length; if (length == 3) { task.ParentId = list[0].ParentId; } else if (length > 3) { int differOrderNumber = list[0].OrderNumber.Length - orderNumberByLayer[0].Length; int num10 = list.FindLastIndex(t => t.OrderNumber.Length == (length + differOrderNumber)); task.ParentId = list[num10].ParentId; } } } } str6 = orderNumberByLayer[i]; list.Add(task); cn.justwin.Domain.Entities.BudTask task2 = null; BudTaskService service = new BudTaskService(); task2 = new cn.justwin.Domain.Entities.BudTask { TaskId = task.Id, ParentId = task.ParentId, OrderNumber = task.OrderNumber, PrjId = task.Prj, InputUser = task.InputUser, InputDate = task.InputDate, IsValid = true, Version = 1, Modified = null, TaskCode = task.Code, TaskName = task.Name, StartDate = task.StartDate, EndDate = task.EndDate, Quantity = new decimal?(task.Quantity), UnitPrice = task.UnitPrice, Total = task.Total, Unit = task.Unit, Note = task.Note, ConstructionPeriod = new int?(num5), FeatureDescription = str7, TaskType = "", Total2 = 0 }; service.Add(task2); if (!string.IsNullOrEmpty(str8)) { this.AddSerialNoAndTaskId(str8, task.Id); } else { this.AddCodeAndTaskId(task.Code, task.Id); } } } return(num); }