protected override bool InnerHandle(IFillElement element, IReportKey RK) { LOG.Info("reportinfo 内部处理"); bool result = false; InfoElement info = element as InfoElement; if (info != null) { //设置报告ID info.ReportID = RK.ID; //修改备注内容 if (info.SectionNo == 11) { if (info.Memo != null) { info.Memo = info.Memo.Replace(";", SystemInfo.NewLine); } } //清理身份证号信息 if (info.CID != null) { info.CID = info.CID.Trim(); } //设置检验者、审核者签名url info.CheckerUrl = PUser.GetUserUrl(info.Checker); info.TechnicianUrl = PUser.GetUserUrl(info.Technician); //设置检验者、审核者签名图片 info.CheckerImage = PUser.GetUserImage(info.Checker); info.TechnicianImage = PUser.GetUserImage(info.Technician); result = true; } return result; }
protected override bool InnerHandle(List<IFillElement> elements, IReportKey RK) { if (IsExist(elements)) { LOG.Info("保存报告图片到本地"); return SaveLocalImages(elements, RK); } return true; }
protected override bool InnerHandle(IFillElement element, IReportKey RK) { bool result = false; ItemElement item = element as ItemElement; if (item != null) { item.ReportID = RK.ID; result = this.OperateItem(item); } return result; }
public bool HandleElement(IFillElement element, IReportKey RK) { bool result = false; if (element != null) { LOG.Info("ID为" + RK.ID + "的报告进行" + element.GetType().Name + "类型的数据填充"); result = FillElement(element, RK); if (result) { LOG.Info(element.GetType().Name + "数据填充成功,进行内部处理"); result = InnerHandle(element, RK); } } return result; }
public bool HandleElement(List<IFillElement> elements, IReportKey RK, Type type) { bool result = false; if (elements != null) { elements.Clear(); LOG.Info("ID为" + RK.ID + "的报告进行" + type.Name + "类型的数据集合填充"); result = FillElement(elements, RK, type); if (result) { LOG.Info(type.Name + "数据集合填充成功,进行内部处理"); result = InnerHandle(elements, RK); } } return result; }
protected override bool InnerHandle(List<IFillElement> elements, IReportKey RK) { if (IsExist(elements)) { LOG.Info("reportinfo 列表内部处理"); bool result = false; for (int i = elements.Count - 1; i >= 0; i--) { result = this.InnerHandle(elements[i], RK); if (!result) { elements.RemoveAt(i); } } } return true; }
protected bool SaveLocalImages(List<IFillElement> elements, IReportKey RK) { ImageElement ie = null; string imgFileName = null; string midPath = DateTime.Now.ToString("yyyyMMdd"); string imagePath = this.ImagePath(midPath); foreach (IFillElement element in elements) { ie = element as ImageElement; if (ie != null) { ie.ReportID = RK.ID; imgFileName = SaveImage(imagePath, ie.Value); ie.Url = ImageServer + "/" + midPath + "/" + imgFileName; } } return true; }
private bool FillElement(List<IFillElement> elements, IReportKey RK, Type type) { string sql = GenderSql(type, RK); LOG.Info("填充" + type.Name + "集合SQL语句:" + sql); try { LOG.Info(type.Name + "类型集合填充"); return this.DAL.FillList(elements, type, sql); } catch (Exception ex) { LOG.Error(type.Name + "类型集合填充异常:" + ex.Message); return false; } }
protected override bool InnerHandle(IFillElement element, IReportKey RK) { List<IFillElement> elements = new List<IFillElement>(1); elements.Add(element); return InnerHandle(elements, RK); }
protected abstract bool InnerHandle(List<IFillElement> elements, IReportKey RK);
protected abstract bool InnerHandle(IFillElement element, IReportKey RK);
protected string GenderSql(Type type, IReportKey RK) { return GenderPreSQL(type) + RK.KeyWhere(); }
protected string GenderSql(IFillElement element, IReportKey RK) { return GenderSql(element.GetType(), RK); }
protected bool UploadImages(List<IFillElement> elements, IReportKey RK) { ImageElement ie = null; string boundary = GenderBoundary(); string folder = DateTime.Now.ToString("yyyyMMdd"); //LOG.Info("生成上传图片数据"); //获取上传数据 byte[] postData = GenderPostData(elements, boundary); using (WebClient wc = new WebClient()) { InitWebClient(wc, boundary, folder); try { //LOG.Info("开始图片上传,上传url为" + wc.BaseAddress + "/upload"); byte[] resposeBytes = wc.UploadData("/upload", "POST", postData); string resposeStr = Encoding.UTF8.GetString(resposeBytes); List<WebImage> resList = JsonConvert.DeserializeObject<List<WebImage>>(resposeStr); foreach (WebImage wi in resList) { if (!string.IsNullOrEmpty(wi.Path)) { ie = GetImageByName(wi.Name, elements); if (ie != null) { ie.ReportID = RK.ID; if (wi.Path[0] == '/') { ie.Url = ImageServer + wi.Path; } else { ie.Url = ImageServer + "/" + wi.Path; } } } else { //LOG.Error("图片服务器返回数据格式错误,上传图片集合失败"); return false; } } return true; } catch (Exception ex) { //LOG.Error("上传图片集合出现异常!"); return false; } } }
//11小组添加标准图片(通讯数据整体处理) private void HandleAfter(LabReport report, IReportKey RK) { this.HandleAfterImage(report, RK.ID); }
private bool FillElement(IFillElement element, IReportKey RK) { string sql = GenderSql(element, RK); LOG.Info("填充SQL语句:" + sql); try { LOG.Info("数据填充中"); return this.DAL.Fill(element, sql); } catch (Exception ex) { LOG.Error("数据填充异常:" + ex.Message); return false; } }
protected override bool InnerHandle(IFillElement element, IReportKey RK) { element.ReportID = RK.ID; return true; }