protected override void OnUpdatingRow(UpdatingEventArgs e) { base.OnUpdatingRow(e); TaxDocumentResolver resolver; DataRow docRow; switch (e.Status) { case UpdateKind.Update: int flag = e.Row["SendFlag"].Value <int>(); if (flag == 0) { resolver = new TaxDocumentResolver(Source); NonUIResolvers.NonUIResolvers.Add(resolver); docRow = resolver.SelectRowWithKeys(e.Row["DocId"]); docRow["MassFlag"] = 1; resolver.SetCommands(AdapterCommand.Update); e.Row["SendFlag"] = 1; } break; case UpdateKind.Delete: resolver = new TaxDocumentResolver(Source); NonUIResolvers.NonUIResolvers.Add(resolver); docRow = resolver.SelectRowWithKeys(e.Row["DocId"]); docRow.BeginEdit(); docRow["MassFlag"] = 0; docRow["MassId"] = DBNull.Value; docRow.EndEdit(); resolver.SetCommands(AdapterCommand.Update); break; } }
public override OutputData DoAction(IInputData input) { using (WeixinMassResolver massResolver = new WeixinMassResolver(this)) using (TaxDocumentResolver docResolver = new TaxDocumentResolver(this)) { string docId = input.QueryString["DocId"]; DataRow docRow = docResolver.SelectRowWithKeys(docId); string massId = docRow["MassId"].ToString(); if (string.IsNullOrEmpty(massId)) { docResolver.SetCommands(AdapterCommand.Update); massId = massResolver.NewRow(docId); docRow.BeginEdit(); docRow["MassId"] = massId; docRow["MassFlag"] = 0; docRow.EndEdit(); UpdateUtil.UpdateTableResolvers(null, docResolver, massResolver); } string retUrl = input.QueryString["RetUrl"]; if (!string.IsNullOrEmpty(retUrl)) { retUrl = "&RetUrl=" + HttpUtility.UrlEncode(retUrl); } string url = string.Format("~/Library/WebUpdateXmlPage.tkx?Source=CXCS/WeixinMass&MassId={0}{1}", massId, retUrl); return(OutputData.Create(url)); } }
protected override void OnUpdatingRow(UpdatingEventArgs e) { base.OnUpdatingRow(e); TaxDocumentResolver resolver; DataRow docRow; switch (e.Status) { case UpdateKind.Update: int flag = e.Row["SendFlag"].Value<int>(); if (flag == 0) { resolver = new TaxDocumentResolver(Source); NonUIResolvers.NonUIResolvers.Add(resolver); docRow = resolver.SelectRowWithKeys(e.Row["DocId"]); docRow["MassFlag"] = 1; resolver.SetCommands(AdapterCommand.Update); e.Row["SendFlag"] = 1; } break; case UpdateKind.Delete: resolver = new TaxDocumentResolver(Source); NonUIResolvers.NonUIResolvers.Add(resolver); docRow = resolver.SelectRowWithKeys(e.Row["DocId"]); docRow.BeginEdit(); docRow["MassFlag"] = 0; docRow["MassId"] = DBNull.Value; docRow.EndEdit(); resolver.SetCommands(AdapterCommand.Update); break; } }
public override OutputData DoAction(IInputData input) { using (WeixinMassResolver massResolver = new WeixinMassResolver(this)) using (TaxDocumentResolver docResolver = new TaxDocumentResolver(this)) { string docId = input.QueryString["DocId"]; DataRow docRow = docResolver.SelectRowWithKeys(docId); string massId = docRow["MassId"].ToString(); if (string.IsNullOrEmpty(massId)) { docResolver.SetCommands(AdapterCommand.Update); massId = massResolver.NewRow(docId); docRow.BeginEdit(); docRow["MassId"] = massId; docRow["MassFlag"] = 0; docRow.EndEdit(); UpdateUtil.UpdateTableResolvers(null, docResolver, massResolver); } string retUrl = input.QueryString["RetUrl"]; if (!string.IsNullOrEmpty(retUrl)) retUrl = "&RetUrl=" + HttpUtility.UrlEncode(retUrl); string url = string.Format("~/Library/WebUpdateXmlPage.tkx?Source=CXCS/WeixinMass&MassId={0}{1}", massId, retUrl); return OutputData.Create(url); } }
public override OutputData DoAction(IInputData input) { using (TaxDocumentResolver docResolver = new TaxDocumentResolver(this)) using (WeixinMassResolver massResolver = new WeixinMassResolver(this)) using (WeixinMassDetailResolver detailResolver = new WeixinMassDetailResolver(this)) { DataRow row = massResolver.Query(input.QueryString); if (row["SendFlag"].Value <int>() == 4) // 已发送的不在发送 { return(OutputData.Create("-2")); } massResolver.SetCommands(AdapterCommand.Update); docResolver.SetCommands(AdapterCommand.Update); DateTime current = DateTime.Now; row.BeginEdit(); row["SendFlag"] = 4; row["SendDate"] = row["UpdateDate"] = current; row["SendId"] = row["UpdateId"] = BaseGlobalVariable.UserId; row.EndEdit(); MpNewsMassMessage msg = new MpNewsMassMessage(); string basePath = Path.Combine(BaseAppSetting.Current.AppPath, @"..\pic\sys\"); string path = Path.Combine(basePath, "hzwtitle.jpg"); //MediaId mId = WeUtil.UploadFile(MediaType.Image, path); string mediaId = WeDataUtil.GetMediaId(MediaType.Image, path); DataRow docRow = UpdateDocRow(docResolver, row, current, 4); msg.AddArticle(CreateArticle(docRow, mediaId)); detailResolver.SelectWithParam(string.Empty, "ORDER BY WMD_ORDER_NUM", "MassId", input.QueryString["MassId"]); DataTable childTable = detailResolver.HostTable; if (childTable != null) { foreach (DataRow childRow in childTable.Rows) { docRow = UpdateDocRow(docResolver, childRow, current, 2); path = Path.Combine(basePath, string.Format("A{0}.jpg", docRow["Catelog"])); mediaId = WeDataUtil.GetMediaId(MediaType.Image, path); msg.AddArticle(CreateArticle(docRow, mediaId)); } } UpdateUtil.UpdateTableResolvers(null, docResolver, massResolver); var media_Id = msg.UploadMessage(); var users = WeFanContainter.GetAllUsers(); var result = msg.Send(users); if (result > 0) { return(OutputData.Create("0")); } return(OutputData.Create("-1")); } }
public override OutputData DoAction(IInputData input) { using (TaxDocumentResolver docResolver = new TaxDocumentResolver(this)) using (WeixinMassResolver massResolver = new WeixinMassResolver(this)) using (WeixinMassDetailResolver detailResolver = new WeixinMassDetailResolver(this)) { DataRow row = massResolver.Query(input.QueryString); if (row["SendFlag"].Value<int>() == 4) // 已发送的不在发送 return OutputData.Create("-2"); massResolver.SetCommands(AdapterCommand.Update); docResolver.SetCommands(AdapterCommand.Update); DateTime current = DateTime.Now; row.BeginEdit(); row["SendFlag"] = 4; row["SendDate"] = row["UpdateDate"] = current; row["SendId"] = row["UpdateId"] = BaseGlobalVariable.UserId; row.EndEdit(); MpNewsMassMessage msg = new MpNewsMassMessage(); string basePath = Path.Combine(BaseAppSetting.Current.AppPath, @"..\pic\sys\"); string path = Path.Combine(basePath, "hzwtitle.jpg"); //MediaId mId = WeUtil.UploadFile(MediaType.Image, path); string mediaId = WeDataUtil.GetMediaId(MediaType.Image, path); DataRow docRow = UpdateDocRow(docResolver, row, current, 4); msg.AddArticle(CreateArticle(docRow, mediaId)); detailResolver.SelectWithParam(string.Empty, "ORDER BY WMD_ORDER_NUM", "MassId", input.QueryString["MassId"]); DataTable childTable = detailResolver.HostTable; if (childTable != null) { foreach (DataRow childRow in childTable.Rows) { docRow = UpdateDocRow(docResolver, childRow, current, 2); path = Path.Combine(basePath, string.Format("A{0}.jpg", docRow["Catelog"])); mediaId = WeDataUtil.GetMediaId(MediaType.Image, path); msg.AddArticle(CreateArticle(docRow, mediaId)); } } UpdateUtil.UpdateTableResolvers(null, docResolver, massResolver); var media_Id = msg.UploadMessage(); var users = WeFanContainter.GetAllUsers(); var result = msg.Send(users); if (result > 0) return OutputData.Create("0"); return OutputData.Create("-1"); } }
public override OutputData DoAction(IInputData input) { try { string docId = input.QueryString["DocId"]; using (TaxDocumentResolver destResolver = new TaxDocumentResolver(this)) { DataRow row = destResolver.TrySelectRowWithParam("SourceId", docId); if (row != null) { throw new WebPostException("已经复制过该文档!"); } var toolSource = new EmptyDbDataSource() { Context = DbContextUtil.CreateDbContext("Tools") }; using (toolSource) using (var srcResolver = new TaxDocumentResolver(toolSource)) using (var srcAttachResolver = new DocAttachmentResolver(toolSource)) using (var destAttachResolver = new DocAttachmentResolver(this)) { srcResolver.SelectWithKeys(docId); srcAttachResolver.SelectWithParam("DocId", docId); DataSetUtil.CopyDataTable(srcResolver.HostTable, destResolver.HostTable); destResolver.SetCommands(AdapterCommand.Insert); string id = null; string keyField = destResolver.KeyField; foreach (DataRow destRow in destResolver.HostTable.Rows) { id = destResolver.CreateUniId(); destRow.BeginEdit(); destRow["SourceId"] = destRow[keyField]; destRow[keyField] = id; destRow.EndEdit(); } DataTable attachTable = srcAttachResolver.HostTable; if (attachTable == null) { UpdateUtil.UpdateTableResolvers(null, destResolver); } else { DataTable destAttachTable = destAttachResolver.SelectTableStructure(); DataSetUtil.CopyDataTable(attachTable, destAttachTable); foreach (DataRow attachRow in destAttachTable.Rows) { attachRow.BeginEdit(); attachRow["AttId"] = destAttachResolver.CreateUniId(); attachRow["DocId"] = id; attachRow.EndEdit(); } destAttachResolver.SetCommands(AdapterCommand.Insert); UpdateUtil.UpdateTableResolvers(null, destResolver, destAttachResolver); } return(OutputData.CreateToolkitObject(destResolver.CreateKeyData())); } } } catch (WebPostException ex) { return(OutputData.CreateToolkitObject(ex.CreateErrorResult())); } }
public override OutputData DoAction(IInputData input) { try { string docId = input.QueryString["DocId"]; using (TaxDocumentResolver destResolver = new TaxDocumentResolver(this)) { DataRow row = destResolver.TrySelectRowWithParam("SourceId", docId); if (row != null) throw new WebPostException("已经复制过该文档!"); var toolSource = new EmptyDbDataSource() { Context = DbContextUtil.CreateDbContext("Tools") }; using (toolSource) using (var srcResolver = new TaxDocumentResolver(toolSource)) using (var srcAttachResolver = new DocAttachmentResolver(toolSource)) using (var destAttachResolver = new DocAttachmentResolver(this)) { srcResolver.SelectWithKeys(docId); srcAttachResolver.SelectWithParam("DocId", docId); DataSetUtil.CopyDataTable(srcResolver.HostTable, destResolver.HostTable); destResolver.SetCommands(AdapterCommand.Insert); string id = null; string keyField = destResolver.KeyField; foreach (DataRow destRow in destResolver.HostTable.Rows) { id = destResolver.CreateUniId(); destRow.BeginEdit(); destRow["SourceId"] = destRow[keyField]; destRow[keyField] = id; destRow.EndEdit(); } DataTable attachTable = srcAttachResolver.HostTable; if (attachTable == null) { UpdateUtil.UpdateTableResolvers(null, destResolver); } else { DataTable destAttachTable = destAttachResolver.SelectTableStructure(); DataSetUtil.CopyDataTable(attachTable, destAttachTable); foreach (DataRow attachRow in destAttachTable.Rows) { attachRow.BeginEdit(); attachRow["AttId"] = destAttachResolver.CreateUniId(); attachRow["DocId"] = id; attachRow.EndEdit(); } destAttachResolver.SetCommands(AdapterCommand.Insert); UpdateUtil.UpdateTableResolvers(null, destResolver, destAttachResolver); } return OutputData.CreateToolkitObject(destResolver.CreateKeyData()); } } } catch (WebPostException ex) { return OutputData.CreateToolkitObject(ex.CreateErrorResult()); } }