protected override void Grid_ClickCellButton(GridRecord row, string commandName) { // base.Grid_ClickCellButton(sender, e); SystemSettingFacade systemSettingFacade = new SystemSettingFacade(this.DataProvider); UserFacade userFacade = new UserFacade(this.DataProvider); if (commandName == "Download") { string tryCode = row.Items.FindItemByKey("TryCode").Value.ToString(); if (facade == null) { facade = new TryFacade(base.DataProvider); } object trySelected = facade.GetTry(tryCode); if (trySelected == null) { ExceptionManager.Raise(this.GetType(), "试流单不存在"); } Try selectedTry = trySelected as Try; string originalFilePath = this.Request.PhysicalApplicationPath + @"download\TryCode.htm"; if (!File.Exists(originalFilePath)) { ExceptionManager.Raise(this.GetType(), "文件[TryCode.htm]不存在"); } //获取Deparment Name string deparmentCode = selectedTry.Department; string deparmentName = " "; if (deparmentCode.Trim().Length > 0) { Domain.BaseSetting.Parameter department = (Domain.BaseSetting.Parameter)systemSettingFacade.GetParameter(selectedTry.Department, "DEPARTMENT"); if (department != null) { deparmentName = department.ParameterAlias; } } //获取Create User Name string createUserCode = selectedTry.CreateUser; string createUserName = "******"; if (createUserCode.Trim().Length > 0) { User createUser = (User)userFacade.GetUser(createUserCode); if (createUser != null) { createUserName = createUser.UserName; } } string fileContent = File.ReadAllText(originalFilePath, Encoding.GetEncoding("GB2312")); fileContent = fileContent.Replace("$$TryCode$$", selectedTry.TryCode); fileContent = fileContent.Replace("$$Department$$", deparmentName); fileContent = fileContent.Replace("$$CreateUser$$", createUserName); fileContent = fileContent.Replace("$$ReleaseDate$$", selectedTry.ReleaseDate == 0 ? " " : FormatHelper.ToDateString(selectedTry.ReleaseDate, "/")); //fileContent = fileContent.Replace("$$ReleaseDate$$", selectedTry.ReleaseDate == 0 ? " " : selectedTry.ReleaseDate.ToString()); fileContent = fileContent.Replace("$$MaterialCode$$", selectedTry.ItemCode == "" ? " " : selectedTry.ItemCode); fileContent = fileContent.Replace("$$MaterialDescription$$", row.Items.FindItemByKey("Dept").Value.ToString() == "" ? " " : row.Items.FindItemByKey("Dept").Value.ToString()); fileContent = fileContent.Replace("$$PlanQuantity$$", selectedTry.PlanQty.ToString()); fileContent = fileContent.Replace("$$VendorCode$$", selectedTry.VendorName == "" ? " " : selectedTry.VendorName); fileContent = fileContent.Replace("$$Result$$", selectedTry.Result == "" ? " " : selectedTry.Result); fileContent = fileContent.Replace("$$Memo$$", selectedTry.Memo == "" ? " " : selectedTry.Memo); //fileContent = fileContent.Replace("$$PrintDateTime$$", DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss", new System.Globalization.CultureInfo("en-US"))); fileContent = fileContent.Replace("$$TryType$$", selectedTry.TryType.Trim() == "" ? " " : this.languageComponent1.GetString(selectedTry.TryType)); fileContent = fileContent.Replace("$$TryReason$$", selectedTry.TryReason == "" ? " " : selectedTry.TryReason); fileContent = fileContent.Replace("$$SoftVersion$$", selectedTry.SoftVersion == "" ? " " : selectedTry.SoftVersion); fileContent = fileContent.Replace("$$WaitTry$$", selectedTry.WaitTry == "" ? " " : this.languageComponent1.GetString(selectedTry.WaitTry)); fileContent = fileContent.Replace("$$Change$$", selectedTry.Change == "" ? " " : this.languageComponent1.GetString(selectedTry.Change)); fileContent = fileContent.Replace("$$BurnINDuration$$", selectedTry.BurnINDuration == "" ? " " : selectedTry.BurnINDuration); string downloadPhysicalPath = this.Request.PhysicalApplicationPath + @"upload\"; if (!Directory.Exists(downloadPhysicalPath)) { Directory.CreateDirectory(downloadPhysicalPath); } string filename = string.Format("{0}_{1}_{2}", row.Items.FindItemByKey("TryCode").Value.ToString(), FormatHelper.TODateInt(System.DateTime.Now).ToString(), FormatHelper.TOTimeInt(System.DateTime.Now).ToString()); string filepath = string.Format(@"{0}{1}{2}", downloadPhysicalPath, filename, ".xls"); while (File.Exists(filepath)) { filename = string.Format("{0}_{1}", filename, "0"); filepath = string.Format(@"{0}{1}{2}", downloadPhysicalPath, filename, ".xls"); } StreamWriter writer = new StreamWriter(filepath, false, System.Text.Encoding.GetEncoding("GB2312")); writer.Write(fileContent); writer.Flush(); writer.Close(); this.DownloadFile(filename); } }
public Messages Execute(ActionEventArgs actionEventArgs) { Messages messages = new Messages(); DataCollectDebug dataCollectDebug = new DataCollectDebug(this.GetType().ToString() + "Collect"); TryEventArgs tryEventArgs = actionEventArgs as TryEventArgs; DBDateTime dbDateTime = FormatHelper.GetNowDBDateTime(this.DataProvider); int date = dbDateTime.DBDate; int time = dbDateTime.DBTime; string userCode = tryEventArgs.UserCode; string tryCode = tryEventArgs.TryCode.Trim().ToUpper(); string mItemCode = tryEventArgs.MItemCode.Trim().ToUpper(); string mCard = tryEventArgs.MRunningCard.Trim().ToUpper(); string itemCode = tryEventArgs.ItemCode.Trim().ToUpper(); string rCard = tryEventArgs.RunningCard.Trim().ToUpper(); dataCollectDebug.WhenFunctionIn(messages); try { TryFacade tryFacade = new TryFacade(this.DataProvider); //用于上料或者carton采集 if (tryEventArgs.ForCollect) { if (string.IsNullOrEmpty(tryEventArgs.MRunningCard)) { List <string> TryCodeList = new List <string>(); if (tryEventArgs.TryCode.Trim().Length > 0) { if (tryEventArgs.TryCode.IndexOf(",") >= 0) { string[] TryCode = tryEventArgs.TryCode.Split(','); for (int i = 0; i < TryCode.Length; i++) { TryCodeList.Add(TryCode[i]); } } else { TryCodeList.Add(tryEventArgs.TryCode.Trim()); } for (int i = 0; i < TryCodeList.Count; i++) { string TryCode = TryCodeList[i].ToString().Trim().ToUpper(); Try2RCard try2RCard = (Try2RCard)tryFacade.GetTry2RCard(TryCode, tryEventArgs.RunningCard, tryEventArgs.ItemCode); if (try2RCard == null) { try2RCard = tryFacade.CreateNewTry2RCard(); try2RCard.TryCode = TryCode; try2RCard.RCard = tryEventArgs.RunningCard; try2RCard.ItemCode = tryEventArgs.ItemCode; try2RCard.OPCode = tryEventArgs.OPCode; try2RCard.MaintainDate = date; try2RCard.MaintainTime = time; try2RCard.MaintainUser = userCode; try2RCard.EAttribute1 = " "; tryFacade.AddTry2RCard(try2RCard); object objectTry = tryFacade.GetTry(TryCode); if (objectTry != null) { ((Try)objectTry).ActualQty += 1; ((Try)objectTry).Status = TryStatus.STATUS_PRODUCE; ((Try)objectTry).MaintainDate = date; ((Try)objectTry).MaintainTime = time; ((Try)objectTry).MaintainUser = userCode; if (tryEventArgs.ForLinkLot) { ((Try)objectTry).LinkLot = "Y"; } else { if (((Try)objectTry).LinkLot != "Y") { ((Try)objectTry).LinkLot = "N"; } } if (string.IsNullOrEmpty(((Try)objectTry).LinkLot)) { ((Try)objectTry).LinkLot = "N"; } tryFacade.UpdateTry((Try)objectTry); } } } } } else { object[] try2RCardList = tryFacade.QueryTry2RCard(tryCode, mCard, mItemCode); if (try2RCardList != null) { foreach (Try2RCard try2RCard in try2RCardList) { Try2RCard try2RCardParent = (Try2RCard)tryFacade.GetTry2RCard(try2RCard.TryCode, rCard, itemCode); if (try2RCardParent == null) { try2RCardParent = tryFacade.CreateNewTry2RCard(); try2RCardParent.TryCode = try2RCard.TryCode; try2RCardParent.RCard = rCard; try2RCardParent.ItemCode = itemCode; try2RCardParent.OPCode = tryEventArgs.OPCode; try2RCardParent.MaintainDate = date; try2RCardParent.MaintainTime = time; try2RCardParent.MaintainUser = userCode; try2RCardParent.EAttribute1 = " "; tryFacade.AddTry2RCard(try2RCardParent); object objectTry = tryFacade.GetTry(try2RCard.TryCode); if (objectTry != null) { //((Try)objectTry).ActualQty += 1; ////((Try)objectTry).Status = TryStatus.STATUS_PRODUCE; //((Try)objectTry).MaintainDate = date; //((Try)objectTry).MaintainTime = time; //((Try)objectTry).MaintainUser = userCode; ////隐形的LINKLOT不改变 changed by hiro 2009/01/19 ////if (tryEventArgs.ForLinkLot) ////{ //// ((Try)objectTry).LinkLot = "Y"; ////} ////else ////{ //// if (((Try)objectTry).LinkLot != "Y") //// { //// ((Try)objectTry).LinkLot = "N"; //// } ////} ////if (string.IsNullOrEmpty(((Try)objectTry).LinkLot)) ////{ //// ((Try)objectTry).LinkLot = "N"; ////} //tryFacade.UpdateTry((Try)objectTry); } } } } } } //用于拆解 else { object[] try2RCardList = tryFacade.QueryTry2RCard(tryCode, mCard, mItemCode); if (try2RCardList != null) { foreach (Try2RCard try2RCard in try2RCardList) { Try2RCard try2RCardParent = (Try2RCard)tryFacade.GetTry2RCard(try2RCard.TryCode, rCard, itemCode); if (try2RCardParent != null) { Try objectTry = (Try)tryFacade.GetTry(try2RCard.TryCode); if (objectTry != null) { objectTry.ActualQty -= 1; objectTry.MaintainDate = date; objectTry.MaintainTime = time; objectTry.MaintainUser = userCode; tryFacade.UpdateTry(objectTry); } tryFacade.DeleteTry2RCard(try2RCardParent); } } } } } catch (Exception e) { messages.Add(new Message(e)); } dataCollectDebug.WhenFunctionOut(messages); return(messages); }