public Stream CreateReport(string patrolno) { string reportid = String.Empty; bool success = false; Console.WriteLine("特巡编号" + patrolno); try { //将特巡报告ID进行加密 reportid = CreateReportId(); Console.WriteLine(reportid); success = PatrolEntity.CreateReportUri(reportid, patrolno); } catch (Exception ex) { Console.WriteLine("报告书失败" + ex.Message); #region 日志输出 CommonInfo.Error("创建特巡报告书错误" + ex.Message); #endregion } if (!success) { reportid = String.Empty; } MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(reportid)); //注意一定要设置流的位置到开始位置,否则没有消息输出 ms.Position = 0; return(ms); }
/// <summary> /// 展示某个特巡报告,用于生成报表数据 /// </summary> /// <param name="data"></param> /// <returns></returns> public Stream ShowReport(string reportid) { #region 查找数据 ResShowReport response = new ResShowReport(); bool success = false; try { if (reportid != null && reportid != String.Empty) { string patrolno = PatrolEntity.getPatrolNobyReportId(reportid); if (patrolno != null && patrolno != String.Empty) { DataTable header = PatrolEntity.getPatrolHeader4Report(patrolno); DataTable detail = PatrolEntity.getPatrolDetail4Report(patrolno); //DataTable facadeList = PatrolEntity.getFacadeList4Report(patrolno); List <PatrolDetailInfo> detailList = ResShowReport.getPatrolDetailList(detail); response.patrol_header = ResShowReport.getPatrolHeader(header); response.facade_list = ResShowReport.getFacadeImageList(detailList); response.patrol_detail_list = detailList; //设置成功状态 success = true; } } } catch (Exception ex) { Console.WriteLine(ex.Message); #region 日志输出 CommonInfo.Error("显示特巡报告书数据错误" + ex.Message); #endregion } //返回消息体 if (success) { response.SetSuccess(); } else { ////默认是失败 //response.SetFailed(); } //将消息序列化为Json格式数据 DataContractJsonSerializer obj2Json = new DataContractJsonSerializer(typeof(ResShowReport)); MemoryStream ms = new MemoryStream(); obj2Json.WriteObject(ms, response); //注意一定要设置流的位置到开始位置,否则没有消息输出 ms.Position = 0; return(ms); #endregion }
/// <summary> /// 获取特巡报告书需要的打印数据 /// </summary> /// <param name="patrolno"></param> /// <returns></returns> public ResShowReport GetData(string patrolno) { ResShowReport response = null; if (patrolno != null && patrolno != String.Empty) { response = new ResShowReport(); DataTable header = PatrolEntity.getPatrolHeader4Report(patrolno); DataTable detail = PatrolEntity.getPatrolDetail4Report(patrolno); //DataTable facadeList = PatrolEntity.getFacadeList4Report(patrolno); List <PatrolDetailInfo> detailList = ResShowReport.getPatrolDetailList(detail); response.patrol_header = ResShowReport.getPatrolHeader(header); response.facade_list = ResShowReport.getFacadeImageList(detailList); response.patrol_detail_list = detailList; } return(response); }
/// <summary> /// 上传特巡报告 /// </summary> /// <param name="data"></param> /// <returns></returns> public Stream UploadPatrolInformation(Stream data) { #region 查找数据 ResUploadPatrolInformation response = new ResUploadPatrolInformation(); bool success = false; try { DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(ReqUploadPatrolInformation)); //读取器 StreamReader sr = new StreamReader(data); string dataString = String.Empty; while (!sr.EndOfStream) { dataString = sr.ReadToEnd(); Console.WriteLine(dataString); #region 日志输出 CommonInfo.Log(dataString); #endregion //反序列化json为对象注意顺序很重要 ReqUploadPatrolInformation request = new ReqUploadPatrolInformation(); MemoryStream temp = new MemoryStream(Encoding.UTF8.GetBytes(dataString)); request = json.ReadObject(temp) as ReqUploadPatrolInformation; //关闭临时流 temp.Close(); //调用用户更新密码接口 if (request != null) { #region **********(此处加入代码) 根据查询条件 加入业务逻辑代码************* // 身份验证 if (request.user_id != String.Empty && request.token != String.Empty) { PatrolReportHeader header = ReportService.getHeader(request); List <PatrolReportDetail> detailList = ReportService.getDetailList(request, header, request.dir_name); success = PatrolEntity.InsertPatrol(header, detailList); if (success) { //将点检图片存到正式文件夹 if (request.dir_name != null && request.dir_name != String.Empty) { string saveDir = CommonInfo.ImageSaveUrl + "/" + request.dir_name; string tempDir = CommonInfo.ImageTempUrl + "/" + request.dir_name; if (Directory.Exists(tempDir)) { if (success) { //将临时文件夹拷贝到正式文件夹 Directory.Move(tempDir, saveDir); success = true; //事务成功完成 response.patrol_id = request.patrol_id; } } } } } #endregion } } sr.Close(); Console.WriteLine(data); } catch (Exception ex) { Console.WriteLine(ex.Message); #region 日志输出 CommonInfo.Error("上传特巡报告错误" + ex.Message); #endregion } //返回消息体 if (success) { response.SetSuccess(); } else { ////默认是失败 //response.SetFailed(); } //将消息序列化为Json格式数据 DataContractJsonSerializer obj2Json = new DataContractJsonSerializer(typeof(ResUploadPatrolInformation)); MemoryStream ms = new MemoryStream(); obj2Json.WriteObject(ms, response); //注意一定要设置流的位置到开始位置,否则没有消息输出 ms.Position = 0; return(ms); #endregion }
/// <summary> /// 删除特巡报告头表以及所有明细 /// </summary> /// <param name="data"></param> /// <returns></returns> public Stream DeletePatrol(Stream data) { #region 查找数据 ResDeletePatrol response = new ResDeletePatrol(); bool success = false; try { DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(ReqDeletePatrol)); //读取器 StreamReader sr = new StreamReader(data); string dataString = String.Empty; while (!sr.EndOfStream) { dataString = sr.ReadToEnd(); Console.WriteLine(dataString); #region 日志输出 CommonInfo.Log(dataString); #endregion //反序列化json为对象注意顺序很重要 ReqDeletePatrol request = new ReqDeletePatrol(); MemoryStream temp = new MemoryStream(Encoding.UTF8.GetBytes(dataString)); request = json.ReadObject(temp) as ReqDeletePatrol; //关闭临时流 temp.Close(); //调用用户更新密码接口 if (request != null && request.patrol_no.Length > 0 & request.account.Length > 0) { //**********(此处加入代码) 根据查询条件 加入业务逻辑代码************* Console.WriteLine("{0}正在删除特巡:{1}", request.account, request.patrol_no); #region 日志输出 CommonInfo.Log(request.account + "正在删除特巡:" + request.patrol_no); #endregion success = PatrolEntity.DeleteReport(request.patrol_no); } } sr.Close(); Console.WriteLine(data); } catch (Exception ex) { Console.WriteLine(ex.Message); #region 日志输出 CommonInfo.Error("删除特巡数据错误" + ex.Message); #endregion } //返回消息体 if (success) { response.SetSuccess(); } else { ////默认是失败 //response.SetFailed(); } //将消息序列化为Json格式数据 DataContractJsonSerializer obj2Json = new DataContractJsonSerializer(typeof(ResDeletePatrol)); MemoryStream ms = new MemoryStream(); obj2Json.WriteObject(ms, response); //注意一定要设置流的位置到开始位置,否则没有消息输出 ms.Position = 0; return(ms); #endregion }
/// <summary> /// 取得指定编号特巡报告 /// </summary> /// <param name="data"></param> /// <returns></returns> public Stream GetPatrol(Stream data) { #region 查找数据 ResGetPatrol response = new ResGetPatrol(); bool success = false; try { DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(ReqGetPatrol)); //读取器 StreamReader sr = new StreamReader(data); string dataString = String.Empty; while (!sr.EndOfStream) { dataString = sr.ReadToEnd(); Console.WriteLine(dataString); #region 日志输出 CommonInfo.Log(dataString); #endregion //反序列化json为对象注意顺序很重要 ReqGetPatrol request = new ReqGetPatrol(); MemoryStream temp = new MemoryStream(Encoding.UTF8.GetBytes(dataString)); request = json.ReadObject(temp) as ReqGetPatrol; //关闭临时流 temp.Close(); //调用用户更新密码接口 if (request != null) { //**********(此处加入代码) 根据查询条件 加入业务逻辑代码************* if (request.account != null && request.account != String.Empty && request.token != null && request.token != String.Empty) { if (request.patrol_no != null && request.patrol_no != String.Empty) { DataTable header = PatrolEntity.getPatrolHeader(request.patrol_no); DataTable detail = PatrolEntity.getPatrolDetail(request.patrol_no); response.patrol_header = ResGetPatrol.getPatrolHeader(header); response.patrol_detail_list = ResGetPatrol.getPatrolDetailList(detail); //设置成功状态 success = true; } } } } sr.Close(); Console.WriteLine(data); } catch (Exception ex) { Console.WriteLine(ex.Message); #region 日志输出 CommonInfo.Error("获取特巡数据" + ex.Message); #endregion } //返回消息体 if (success) { response.SetSuccess(); } else { ////默认是失败 //response.SetFailed(); } //将消息序列化为Json格式数据 DataContractJsonSerializer obj2Json = new DataContractJsonSerializer(typeof(ResGetPatrol)); MemoryStream ms = new MemoryStream(); obj2Json.WriteObject(ms, response); //注意一定要设置流的位置到开始位置,否则没有消息输出 ms.Position = 0; return(ms); #endregion }
/// <summary> /// 取得特巡报告列表 /// </summary> /// <param name="data"></param> /// <returns></returns> public Stream GetPatrolList(Stream data) { int starttime = Environment.TickCount; Console.WriteLine("特巡开始时间:" + starttime); #region 查找数据 ResGetPatrolList response = new ResGetPatrolList(); bool success = true; try { DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(ReqGetPatrolList)); //读取器 StreamReader sr = new StreamReader(data); string dataString = String.Empty; while (!sr.EndOfStream) { dataString = sr.ReadToEnd(); Console.WriteLine(dataString); #region 日志输出 CommonInfo.Log(dataString); #endregion //反序列化json为对象注意顺序很重要 ReqGetPatrolList request = new ReqGetPatrolList(); MemoryStream temp = new MemoryStream(Encoding.UTF8.GetBytes(dataString)); request = json.ReadObject(temp) as ReqGetPatrolList; //关闭临时流 temp.Close(); //调用用户更新密码接口 if (request != null) { #region **********(此处加入代码) 根据查询条件 加入业务逻辑代码************* // 身份验证 if (request.account != null && request.account != String.Empty && request.token != null && request.token != String.Empty) { // sql查询字符串组织 string queryString = String.Empty; string rangeString = String.Empty; // 按条件查询 if (request.search_info != null) { #region 属性查询对应 if (request.search_info.AgencyShop != null && request.search_info.AgencyShop != String.Empty) { queryString += " and sta.CompanyCD = '" + request.search_info.AgencyShop + "' "; } if (request.search_info.Customer != null && request.search_info.Customer != String.Empty) { queryString += " and t.ContactorName1 like '%" + request.search_info.Customer + "%' "; } if (request.search_info.MachineStatus != null && request.search_info.MachineStatus != String.Empty) { queryString += " and t.MachineStatus = '" + request.search_info.MachineStatus + "' "; } if (request.search_info.Filiale != null && request.search_info.Filiale != String.Empty) { queryString += " and sta.SubCompanyCD = '" + request.search_info.Filiale + "' "; } if (request.search_info.HasErrorImage != null && request.search_info.HasErrorImage != String.Empty) { string haserror = request.search_info.HasErrorImage.Trim().ToUpper(); if (haserror == "0") { //无不正常图片 queryString += " and dc.ErrImageCount is null "; } else { //所有不正常图片 queryString += " and dc.ErrImageCount > 0 "; } } if (request.search_info.IsEmergency != null && request.search_info.IsEmergency != String.Empty) { //前台过来的是true和false 需要转换 string istrue = (request.search_info.IsEmergency.Trim().ToLower() == "true") ? "1" : "0"; queryString += " and t.IsEmergency = '" + istrue + "' "; } if (request.search_info.MachineNO != null && request.search_info.MachineNO != String.Empty) { queryString += " and t.MachineNO like '%" + request.search_info.MachineNO + "%' "; } if (request.search_info.MachineType != null && request.search_info.MachineType != String.Empty) { queryString += " and t.MachineType = '" + request.search_info.MachineType + "' "; } if (request.search_info.LocationCode != null && request.search_info.LocationCode != String.Empty) { queryString += " and d.LocationCode = '" + request.search_info.LocationCode + "' "; } if (request.search_info.SpotCode != null && request.search_info.SpotCode != String.Empty) { queryString += " and d.SpotCode = '" + request.search_info.SpotCode + "' "; } if (request.search_info.Remarks != null && request.search_info.Remarks != String.Empty) { queryString += " and d.Remarks like '%" + request.search_info.Remarks + "%' "; } if (request.search_info.ReportDateStart != null && request.search_info.ReportDateStart != String.Empty) { queryString += " and t.ReportDate >= '" + request.search_info.ReportDateStart + "' "; } if (request.search_info.ReportDateClosed != null && request.search_info.ReportDateClosed != String.Empty) { queryString += " and t.ReportDate <= '" + request.search_info.ReportDateClosed + "' "; } if (request.search_info.Reporter != null && request.search_info.Reporter != String.Empty) { queryString += " and t.Reporter = '" + request.search_info.Reporter + "' "; } if (request.search_info.ReportStatus != null && request.search_info.ReportStatus != String.Empty) { queryString += " and t.ReportStatus = '" + request.search_info.ReportStatus + "' "; } //分页控制对象范围 int pageIndex = 1; int pageSize = 10; if (request.search_info.Paginator != null) { pageIndex = request.search_info.Paginator.PageIndex; pageIndex = pageIndex > 0 ? pageIndex : 1; pageSize = request.search_info.Paginator.PageSize; pageSize = pageSize > 0 ? pageSize : 10; int rangeStart = (pageIndex - 1) * pageSize + 1; int rangeEnd = pageIndex * pageSize; rangeString += " and orderno between " + rangeStart + " and " + rangeEnd + " "; } else { rangeString += " and orderno between " + pageIndex + " and " + pageSize + " "; } //获取数据调用数据库接口 DataTable dt = PatrolEntity.getPatrolList(queryString, rangeString); //转换数据 response.patrol_list = ResGetPatrolList.Transfer(dt); response.count = PatrolEntity.getPatrolCount(queryString); success = true; #endregion } } #endregion } } sr.Close(); } catch (Exception ex) { Console.WriteLine(ex.Message); #region 日志输出 CommonInfo.Error("获取特巡列表数据错误" + ex.Message); #endregion } //返回消息体 if (success) { response.SetSuccess(); #region 日志输出 CommonInfo.Log("获取特巡列表成功 总数量" + response.count.ToString()); #endregion } else { ////默认是失败 //response.SetFailed(); } //将消息序列化为Json格式数据 DataContractJsonSerializer obj2Json = new DataContractJsonSerializer(typeof(ResGetPatrolList)); MemoryStream ms = new MemoryStream(); obj2Json.WriteObject(ms, response); //注意一定要设置流的位置到开始位置,否则没有消息输出 ms.Position = 0; Console.WriteLine("结束时间:" + (Environment.TickCount - starttime)); return(ms); #endregion }