/// <summary> /// 获得update或者insert单位项目信息表的传入参数数组 /// </summary> /// <param name="Item">单位项目信息实体</param> /// <returns>字符串数组</returns> private string[] myGetParmItem(Neusoft.HISFC.Models.Pharmacy.Company company) { string IsValid = "0"; if (company.IsValid) { IsValid = "1"; } string[] strParm = { company.ID, //公司编码 //0 company.Name, //公司名称//1 company.Type, //单位类别//2 company.SpellCode, //拼音码//3 company.WBCode, //五笔码//4 company.RelationCollection.Email, //邮件地址//5 company.RelationCollection.Phone, //电话号码/6 company.OpenAccounts, //银行帐号7 company.RelationCollection.LinkMan.Name, //公司联系人8 company.RelationCollection.Address, //单位地址9 IsValid, //有效标志10 company.Oper.ID, //操作员编码11 company.RelationCollection.FaxCode, //传真12 company.Memo, //13 company.User01 // 手机号 }; return(strParm); }
/// <summary> /// 目标单位信息填充 /// </summary> /// <param name="targetNO">目标单位编码</param> private int FillTargetInfo(string targetNO) { if (this.isPIDept) //药库 { Neusoft.HISFC.BizLogic.Pharmacy.Constant phaConsManager = new Neusoft.HISFC.BizLogic.Pharmacy.Constant(); Neusoft.HISFC.Models.Pharmacy.Company company = phaConsManager.QueryCompanyByCompanyID(targetNO); if (company == null) { MessageBox.Show(Language.Msg("无法获取该条供货单位信息")); return(-1); } this.phaInManager.TargetDept = company; this.phaInManager.TargetDept.Memo = "1"; } else { Neusoft.HISFC.BizLogic.Manager.Department deptManager = new Neusoft.HISFC.BizLogic.Manager.Department(); Neusoft.HISFC.Models.Base.Department dept = deptManager.GetDeptmentById(targetNO); if (dept == null) { MessageBox.Show(Language.Msg("无法获取该条记录申请科室信息!")); return(-1); } this.phaInManager.TargetDept = dept; this.phaInManager.TargetDept.Memo = "0"; } return(1); }
/// <summary> /// 查询某个ID的体检单位信息 /// </summary> /// <param name="ID"></param> /// <returns></returns> public Neusoft.HISFC.Models.Pharmacy.Company GetCompanyByID(string ID) { Neusoft.HISFC.Models.Pharmacy.Company com = new Neusoft.HISFC.Models.Pharmacy.Company(); string strSQL = ""; //取SELECT语句 if (this.Sql.GetSql("Exami.Company.GetCompany", ref strSQL) == -1) { this.Err = "没有找到Exami.Company字段!"; return(null); } //取单位信息数据 ArrayList list = this.myGetItem(strSQL); if (list == null) { return(null); } if (list.Count == 0) { return(com); } return((Neusoft.HISFC.Models.Pharmacy.Company)list[0]); }
/// <summary> /// 数据初始化 /// </summary> protected void Init() { ArrayList al = new ArrayList(); #region 银行 Neusoft.HISFC.BizLogic.Manager.Constant constantManager = new Neusoft.HISFC.BizLogic.Manager.Constant(); al = constantManager.GetList("BANK"); if (al == null) { MessageBox.Show(Language.Msg("获取银行列表失败" + constantManager.Err)); return; } bankHelper.ArrayObject = al; #endregion #region 人员 Neusoft.HISFC.BizLogic.Manager.Person personManager = new Neusoft.HISFC.BizLogic.Manager.Person(); al = personManager.GetEmployeeAll(); if (al == null) { MessageBox.Show(Language.Msg("获取所有人员列表" + personManager.Err)); return; } this.personHelper.ArrayObject = al; #endregion #region 供货单位 Neusoft.HISFC.BizLogic.Pharmacy.Constant constant = new Neusoft.HISFC.BizLogic.Pharmacy.Constant(); this.alCompany = constant.QueryCompany("1"); if (this.alCompany == null) { MessageBox.Show(constant.Err); return; } //{49390DE5-B54F-4b15-A012-208CDF288FF5} 可选择全部供货公司 增加银行列表选择功能 Neusoft.HISFC.Models.Pharmacy.Company rootCompany = new Neusoft.HISFC.Models.Pharmacy.Company(); rootCompany.ID = "AAAA"; rootCompany.Name = "全部供货公司"; this.alCompany.Insert(0, rootCompany); this.companyHelper = new Neusoft.FrameWork.Public.ObjectHelper(this.alCompany); #endregion Neusoft.FrameWork.Management.DataBaseManger dataBaseManager = new Neusoft.FrameWork.Management.DataBaseManger(); DateTime sysTime = dataBaseManager.GetDateTimeFromSysDateTime().Date.AddDays(1); this.dtBegin = sysTime.AddDays(-30); this.dtEnd = sysTime; this.privOper = dataBaseManager.Operator; this.payFlag = "'0','1'"; }
/// <summary> /// 增加或删除一行数据 /// </summary> /// <param name="company"></param> /// <returns></returns> public int AddOrUpdate(Neusoft.HISFC.Models.Pharmacy.Company company) { if (UpdateInfo(company) <= 0) { if (this.InsertInfo(company) == -1) { return(-1); } } return(1); }
/// <summary> /// 入库单据查询 /// </summary> protected override void QueryIn() { Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item(); ArrayList alList = itemManager.QueryInputList(this.DeptInfo.ID, "AAAA", this.State, this.BeginDate, this.EndDate); if (alList == null) { MessageBox.Show(Language.Msg("查询单据列表发生错误" + itemManager.Err)); } this.neuSpread1_Sheet1.Rows.Count = 0; foreach (Neusoft.HISFC.Models.Pharmacy.Input info in alList) { if (this.MarkPrivType != null) { if (this.MarkPrivType.ContainsKey(info.PrivType)) //对于过滤的权限不显示 { continue; } } this.neuSpread1_Sheet1.Rows.Add(0, 1); this.neuSpread1_Sheet1.Cells[0, 0].Text = info.InListNO; this.neuSpread1_Sheet1.Cells[0, 1].Text = info.DeliveryNO; this.neuSpread1_Sheet1.Cells[0, 2].Text = this.inTypeHelper.GetName(info.PrivType); Neusoft.HISFC.Models.Pharmacy.Company company = new Neusoft.HISFC.Models.Pharmacy.Company(); if (info.Company.ID != "None") { Neusoft.HISFC.BizLogic.Pharmacy.Constant constant = new Neusoft.HISFC.BizLogic.Pharmacy.Constant(); company = constant.QueryCompanyByCompanyID(info.Company.ID); if (company == null) { MessageBox.Show(Language.Msg(constant.Err)); return; } } else { company.ID = "None"; company.Name = "无供货公司"; } this.neuSpread1_Sheet1.Cells[0, 3].Text = company.Name; this.neuSpread1_Sheet1.Cells[0, (int)ColumnSet.ColTargetID].Text = company.ID; } }
/// <summary> /// 显示供货公司 /// </summary> protected void ShowCompany() { Neusoft.FrameWork.Models.NeuObject info = new Neusoft.FrameWork.Models.NeuObject(); if (Neusoft.FrameWork.WinForms.Classes.Function.ChooseItem(this.alCompany, ref info) == 0) { return; } else { this.Company = (Neusoft.HISFC.Models.Pharmacy.Company)info; this.Query(this.payFlag, this.dtBegin, this.dtEnd); } }
/// <summary> /// 取单位信息数据列表,可能是一条或者多条 /// 私有方法,在其他方法中调用 /// </summary> /// <param name="SQLString">SQL语句</param> /// <returns>单位信息对象数组</returns> protected ArrayList myGetItem(string SQLString) { ArrayList al = new ArrayList(); Neusoft.HISFC.Models.Pharmacy.Company company = null; //单位项目信息实体 //执行查询语句 if (this.ExecQuery(SQLString) == -1) { this.Err = "获得单位项目信息时,执行SQL语句出错!" + this.Err; this.ErrCode = "-1"; return(null); } try { while (this.Reader.Read()) { //取查询结果中的记录 company = new Neusoft.HISFC.Models.Pharmacy.Company(); company.ID = this.Reader[0].ToString(); //公司编码 //0 company.Name = this.Reader[1].ToString(); //公司名称//1 company.Type = this.Reader[2].ToString(); //单位类别//2 company.SpellCode = this.Reader[3].ToString(); //拼音码//3 company.WBCode = this.Reader[4].ToString(); //五笔码//4 company.RelationCollection.Email = this.Reader[5].ToString(); //邮件地址//5 company.RelationCollection.Phone = this.Reader[6].ToString(); //电话号码/6 company.OpenAccounts = this.Reader[7].ToString(); //银行帐号7 company.RelationCollection.LinkMan.Name = this.Reader[8].ToString(); //公司联系人8 company.RelationCollection.Address = this.Reader[9].ToString(); //单位地址9 company.IsValid = Neusoft.FrameWork.Function.NConvert.ToBoolean(Reader[10].ToString()); //有效标志10 company.Oper.Name = this.Reader[11].ToString(); //操作员11 company.Oper.ID = this.Reader[12].ToString(); //操作员编码12 company.Oper.OperTime = Neusoft.FrameWork.Function.NConvert.ToDateTime(this.Reader[13].ToString()); //操作时间13 company.RelationCollection.FaxCode = this.Reader[14].ToString(); //传真 company.Memo = this.Reader[15].ToString(); //备注 company.User01 = this.Reader[16].ToString(); //手机号 al.Add(company); } }//抛出错误 catch (Exception ex) { this.Err = "获得单位项目信息信息时出错!" + ex.Message; this.ErrCode = "-1"; return(null); } this.Reader.Close(); return(al); }
/// <summary> /// 增加申请数据 /// </summary> /// <param name="listCode">申请单号</param> /// <param name="state">状态</param> /// <returns>成功返回1 </失败返回-1returns> protected virtual int AddApplyData(string listCode, string state) { Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item(); ArrayList al = itemManager.QueryApplyIn(this.phaInManager.DeptInfo.ID, listCode, "0"); if (al == null) { System.Windows.Forms.MessageBox.Show(Language.Msg("未正确获取外部入库申请信息" + itemManager.Err)); return(-1); } this.Clear(); Neusoft.FrameWork.Models.NeuObject applyCompany = new Neusoft.FrameWork.Models.NeuObject(); foreach (Neusoft.HISFC.Models.Pharmacy.Input input in al) { Neusoft.HISFC.Models.Pharmacy.Item tempItem = itemManager.GetItem(input.Item.ID); input.Item = tempItem; //药品实体信息 input.Quantity = input.Operation.ApplyQty; if (this.AddDataToTable(input) == 1) { this.hsInputData.Add(input.Item.ID + input.BatchNO, input); } applyCompany = input.Company; } Neusoft.HISFC.BizLogic.Pharmacy.Constant consManager = new Neusoft.HISFC.BizLogic.Pharmacy.Constant(); Neusoft.HISFC.Models.Pharmacy.Company compay = consManager.QueryCompanyByCompanyID(applyCompany.ID); applyCompany.Name = compay.Name; applyCompany.Memo = "1"; this.phaInManager.TargetDept = applyCompany; this.CompuateSum(); this.SetFormat(); return(1); }
/// <summary> /// 向数据表内加入数据 /// </summary> /// <param name="company"></param> private void AddDataToTable(Neusoft.HISFC.Models.Pharmacy.Company company) { this.dt.Rows.Add(new object[] { company.Name, company.RelationCollection.Relative, company.OpenBank, company.OpenAccounts, company.ActualRate, company.SpellCode, company.WBCode, company.UserCode, company.IsValid, company.GSPInfo, company.GMPInfo, company.RelationCollection.Address, company.Memo, company.ID, company.Type }); }
/// <summary> /// 从数据表内获取数据 /// </summary> /// <param name="row">需获取数据的数据表行</param> /// <returns></returns> private Neusoft.HISFC.Models.Pharmacy.Company GetDataFromTable(DataRow row) { Neusoft.HISFC.Models.Pharmacy.Company company = new Neusoft.HISFC.Models.Pharmacy.Company(); company.ID = row["公司编码"].ToString(); //公司编码 company.Name = row["单位名称"].ToString(); //公司名称 company.RelationCollection.Address = row["地址"].ToString(); //公司地址 company.RelationCollection.Relative = row["联系方式"].ToString(); //联系方式 company.GMPInfo = row["GMP"].ToString(); //GMP信息 company.GSPInfo = row["GSP"].ToString(); //GSP信息 company.SpellCode = row["拼音码"].ToString(); //拼音码 company.WBCode = row["五笔码"].ToString(); //五笔码 company.UserCode = row["自定义码"].ToString(); //自定义码 company.Type = ((int)this.type).ToString(); //公司类型 company.OpenBank = row["开户银行"].ToString(); //开户银行 company.OpenAccounts = row["开户帐号"].ToString(); //开户帐号 company.ActualRate = Neusoft.FrameWork.Function.NConvert.ToDecimal(row["加价率"]); //加价率 company.Memo = row["备注"].ToString(); //备注 company.IsValid = Neusoft.FrameWork.Function.NConvert.ToBoolean(row["有效"]); //有效性 return(company); }
/// <summary> /// 删除一行数据 /// </summary> /// <param name="company"></param> /// <returns></returns> public int DeleteInfo(Neusoft.HISFC.Models.Pharmacy.Company company) { string strSQL = ""; //取删除操作的SQL语句 if (this.Sql.GetSql("Exami.Company.DeleteInfo", ref strSQL) == -1) { this.Err = "没有找到Exami.Company.DeleteInfo字段!"; return(-1); } try { strSQL = string.Format(strSQL, company.ID); //替换SQL语句中的参数。 } catch (Exception ex) { this.Err = "格式化SQL语句时出错Exami.Company.DeleteInfo" + ex.Message; this.WriteErr(); return(-1); } return(this.ExecNoQuery(strSQL)); }
/// <summary> /// 修改一行数据 /// </summary> /// <param name="company"></param> /// <returns></returns> protected int UpdateInfo(Neusoft.HISFC.Models.Pharmacy.Company company) { string strSQL = ""; //取更新操作的SQL语句 if (this.Sql.GetSql("Exami.Company.UpdateInfo", ref strSQL) == -1) { this.Err = "没有找到Exami.Company.UpdateInfo字段!"; return(-1); } try { string[] strParm = myGetParmItem(company); //取参数列表 //strSQL = string.Format(strSQL, strParm); //替换SQL语句中的参数。 return(this.ExecNoQuery(strSQL, strParm)); } catch (Exception ex) { this.Err = "格式化SQL语句时出错Exami.Company.UpdateInfo:" + ex.Message; this.WriteErr(); return(-1); } }
/// <summary> /// 出库单据查询 /// </summary> protected override void QueryOut() { Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item(); ArrayList alList = new ArrayList(); if (this.PrivType != null && this.PrivType.ID != "") { #region 根据不同权限进行不同处理 switch (this.PrivType.Memo) { case "16": //核准入库 alList = itemManager.QueryOutputListForApproveInput(this.DeptInfo.ID, this.BeginDate, this.EndDate); break; } #endregion } else { alList = itemManager.QueryOutputList(this.DeptInfo.ID, "A", this.State, this.BeginDate, this.EndDate); } if (alList == null) { MessageBox.Show(Language.Msg("查询单据列表发生错误" + itemManager.Err)); } this.neuSpread1_Sheet1.Rows.Count = 0; foreach (Neusoft.FrameWork.Models.NeuObject info in alList) { if (this.MarkPrivType != null) { if (this.MarkPrivType.ContainsKey(info.User01)) //对于过滤的权限不显示 { continue; } } this.neuSpread1_Sheet1.Rows.Add(0, 1); this.neuSpread1_Sheet1.Cells[0, 0].Text = info.ID; this.neuSpread1_Sheet1.Cells[0, 2].Text = this.outTypeHelper.GetName(info.User01); Neusoft.HISFC.Models.Pharmacy.Company company = new Neusoft.HISFC.Models.Pharmacy.Company(); if (this.deptHelper.GetObjectFromID(info.Memo) == null) { Neusoft.HISFC.BizLogic.Pharmacy.Constant constant = new Neusoft.HISFC.BizLogic.Pharmacy.Constant(); company = constant.QueryCompanyByCompanyID(info.Memo); if (company == null) { MessageBox.Show(constant.Err); return; } } else { company.ID = info.Memo; company.Name = this.deptHelper.GetName(info.Memo); } this.neuSpread1_Sheet1.Cells[0, 3].Text = company.Name; this.neuSpread1_Sheet1.Cells[0, (int)ColumnSet.ColTargetID].Text = company.ID; } }
/// <summary> /// 保存数据 /// </summary> public int Save() { this.neuSpread1.StopCellEditing(); foreach (DataRow dr in this.dt.Rows) { dr.EndEdit(); } //有效性判断 if (!Valid()) { return(-1); } ; //定义数据库处理事务 Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); //Neusoft.FrameWork.Management.Transaction t = new Neusoft.FrameWork.Management.Transaction(Neusoft.FrameWork.Management.Connection.Instance); //t.BeginTransaction(); this.phaConsManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); bool isUpdate = false; //判断是否更新或者删除过数据 //取修改和增加的数据 DataTable dataChanges = this.dt.GetChanges(DataRowState.Modified | DataRowState.Added); if (dataChanges != null) { foreach (DataRow row in dataChanges.Rows) { Neusoft.HISFC.Models.Pharmacy.Company company = this.GetDataFromTable(row); //执行更新操作,先更新,如果没有成功则插入新数据 if (this.phaConsManager.SetCompany(company) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(Language.Msg("保存公司信息发生错误!" + this.phaConsManager.Err)); return(-1); } } dataChanges.AcceptChanges(); isUpdate = true; } //取删除的数据 dataChanges = this.dt.GetChanges(DataRowState.Deleted); if (dataChanges != null) { dataChanges.RejectChanges(); foreach (DataRow row in dataChanges.Rows) { string companyID = row["公司编码"].ToString(); //公司编码 //执行删除操作 if (this.phaConsManager.DeleteCompany(companyID) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(Language.Msg("删除供货公司" + row["单位名称"].ToString() + "发生错误" + this.phaConsManager.Err)); return(-1); } } dataChanges.AcceptChanges(); isUpdate = true; } Neusoft.FrameWork.Management.PublicTrans.Commit(); if (isUpdate) { MessageBox.Show(Language.Msg("保存成功!")); } else { return(1); } //刷新数据 this.ShowData(this.type); return(1); }
/// <summary> /// 删除一行数据 /// </summary> /// <param name="company"></param> /// <returns></returns> public int DeleteInfo(Neusoft.HISFC.Models.Pharmacy.Company company) { this.SetDB(mgrCompany); return(mgrCompany.DeleteInfo(company)); }
/// <summary> /// 增加或删除一行数据 /// </summary> /// <param name="company"></param> /// <returns></returns> public int AddOrUpdate(Neusoft.HISFC.Models.Pharmacy.Company company) { this.SetDB(mgrCompany); return(mgrCompany.AddOrUpdate(company)); }