C# 报表接口样例,简单实用
//连接视图名称,视图在数据库写好
<%@ WebHandler Language="C#" Class="GetwmsReport" %> using System;
using System.Drawing;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Web;
using System.Text;
using CloudSaaS.DAL;
using CloudSaaS.Model;
using Newtonsoft.Json;
using CloudSaaS.Common;
using CloudSaaS.DB.Handler;
using Newtonsoft.Json.Linq; public class GetwmsReport : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{ var json = string.Empty;
var req = context.Request["req"].Trim();
string tenantId = HttpContext.Current.Request.Cookies["tenantID"].Value;
switch(req){
case "GetDeliverSum":
json = GetDeliverSum(tenantId, context);//当日发货汇总
break;
case "GetDeliverDetail":
json = GetDeliverDetail(tenantId, context);//当日发货明细
break;
case "GetReceiptSum":
json = GetReceiptSum(tenantId, context);//当日收获汇总
break;
case "GetReceiptDetail":
json = GetReceiptDetail(tenantId, context);//当日收货明细
break; }
context.Response.ContentType = "text/json";
context.Response.Write(json);
context.Response.End();
context.Response.Close(); }
/*--当日收货明细:UV_SYSWMSREPORT_1 --当日发货明细:UV_SYSWMSREPORT_2 --当日收货汇总:UV_SYSWMSREPORT_3 --当日发货汇总:UV_SYSWMSREPORT_4*/
/// <summary>
///当日发货汇总
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日发货汇总</returns>
public string GetDeliverSum(string tenantId, HttpContext context)
{
DataTable dt = new DataTable();
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_4 where 1=1 "); DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
dt = ds.Tables[0];
// obj.code = "200";
// obj.msg = "操作成功!";
}
return Newtonsoft.Json.JsonConvert.SerializeObject(dt);
} /// <summary>
///当日发货明细
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日发货明细</returns>
public string GetDeliverDetail(string tenantId, HttpContext context)
{
DataTable dt = new DataTable();
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_2 where 1=1 "); DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
dt = ds.Tables[0];
// obj.code = "200";
//obj.msg = "操作成功!";
}
return Newtonsoft.Json.JsonConvert.SerializeObject(dt);
}
/// <summary>
///当日收货汇总
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日收货汇总</returns>
public string GetReceiptSum(string tenantId, HttpContext context)
{
DataTable dt = new DataTable();
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_3 where 1=1 "); DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
dt = ds.Tables[0];
// obj.code = "200";
// obj.msg = "操作成功!";
}
return Newtonsoft.Json.JsonConvert.SerializeObject(dt);
}
/// <summary>
///当日收货明细
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日收货明细</returns>
public string GetReceiptDetail(string tenantId, HttpContext context)
{
dynamic obj = new System.Dynamic.ExpandoObject();
obj.code = "1000";
obj.msg="提交时出现错误!";
try {
// DataTable dt = new DataTable();
// dalSYSWMSInputBillHead dal = new dalSYSWMSInputBillHead(tenantId);
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_1 where 1=1 ");
/* if (!string.IsNullOrEmpty(hetong))
{
strSql.AppendFormat(" and 合同编号 like '%{0}%'",hetong);
}
// strSql.AppendFormat(" order by 序号 desc");
*/
DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
obj.data = ds.Tables[0];
obj.code = "200";
obj.msg = "操作成功!";
}
}
catch (Exception ex)
{
string strMsg = string.Format("提交时出现错误{0}", ex.Message);
obj.code = "1000";
obj.msg = strMsg;
}
// return Newtonsoft.Json.JsonConvert.SerializeObject(obj);
return JsonConvert.SerializeObject(obj);
} public bool IsReusable
{
get
{
return false;
}
} }
C# 报表接口样例,简单实用的更多相关文章
- 【gRPC】C++异步服务端优化版,多服务接口样例
官方的C++异步服务端API样例可读性并不好,理解起来非常的费劲,各种状态机也并不明了,整个运行过程也容易读不懂,因此此处参考网上的博客进行了重写,以求顺利读懂. C++异步服务端实例,详细注释版 g ...
- Ajax调用WebService接口样例
在做手机端h5的应用时,通过Ajax调用http接口时没啥问题的:但有些老的接口是用WebService实现的,也来不及改成http的方式,这时通过Ajax调用会有些麻烦,在此记录具体实现过程.本文使 ...
- go语言多态接口样例
感觉比java玄幻啊~~~ package main import ( "fmt" ) type notifier interface{ notify() } type user ...
- 怎样把报表放到网页中显示(Web页面与报表简单集成样例)
1.问题描写叙述 如今用户开发的系统基本上趋向于BS架构的浏览器/server模式.这些系统可能由不同的语言开发.如HTML.ASP.JSP.PHP等.因此须要将制作好的报表嵌入到这些页面中. Fin ...
- 最简单的视音频播放演示样例4:Direct3D播放RGB(通过Texture)
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- VC6 鼠标钩子 最简单样例
Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的.而钩子是Windows系统中非常重要的系统接口,用它能够截获并处理送给其它应用程序的消息,来完毕普通应用程序 ...
- 最简单的视音频播放演示样例8:DirectSound播放PCM
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- 最简单的视音频播放演示样例3:Direct3D播放YUV,RGB(通过Surface)
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- JBoss 系列九十六:JBoss MSC - 简介及一个简单演示样例
什么是 JBoss MSC JBoss MSC 即 JBoss Modular Service Container,是第三代 JBoss 产品 JBoss 7和WildFfly的内核,JBoss MS ...
- 百度地图 Android SDK - 检索功能使用的简单演示样例
百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ...
随机推荐
- SQLSERVER 的复合索引和包含索引到底有啥区别?
一:背景 1. 讲故事 在 SQLSERVER 中有非常多的索引,比如:聚集索引,非聚集索引,唯一索引,复合索引,Include索引,交叉索引,连接索引,奇葩索引等等,当索引多了之后很容易傻傻的分不清 ...
- DVWA靶场实战(一)——Brute Force
DVWA靶场实战(一) 一.Brute Force: 1.漏洞原理: Brute Force是暴力破解的意思,大致原理就是利用穷举法,穷举出所有可能的密码. 2.攻击方法: Burpsuite中的In ...
- [深度探索C++对象模型]关于成员初始化列表(member initiallization list)
四种特殊情况: 1.当初始化一个reference member时. 2.当初始化一个const member时. 3.当初始化一个base class的constructor,而它拥有一组参数时. ...
- 2022 CSP-J 游记
Day − ∞ -\infty −∞ 在家里跟父母约定 "只要csp-j一等奖,手机随你挑!" 对于一个没有手机的初中生废物,这个约定显然勾引了我 刷题! 刷题! 再刷! 刷废-- ...
- jupyter的配置
step1.安装jupyter 使用pip或者conda等包管理工具安装jupyter(这部分倒是没有任何难度,一般也没有什么坑) conda install jupyter notebook或者pi ...
- flutter 2.x运行flutter run 报错Cannot run with sound null safety, because the following dependenciesdon'
flutter 2.x运行flutter run 报错Cannot run with sound null safety, because the following dependenciesdon' ...
- Java 进阶P-1.1+P-1.2
用类制造对象 对象与类 对象是实体,需要被创建,可以为我们做事情 类是规范,根据类的定义来创建对象 对象=属性+服务 数据:属性或状态 操作:函数 从这些例子可以看出来 class是提供服务的,数据是 ...
- JSP第九次作业
1.建库,建表2个用户表(id,用户名,密码)邮件表(id,发件人,收件人,标题,内容,发送时间,状态) 2.建model层entity,dao包 3.登陆,注册,登陆后显示全部邮件 dao 1 pa ...
- 记录一个排查oom思路
一.背景 客户反馈系统白屏,同时运维反馈内存占用多.项目包括数据库等,是部署在不同docker里的 二.查linux日志是linux将mysql杀掉了 egrep -i -r 'killed proc ...
- springboot FilterRegistrationBean 拦截器的使用
1.创建一个filter package com.ruoyi.weixin.user.interator; import com.ruoyi.common.utils.SecurityUtils; i ...