public DataTable GetDrugMsgOrder(ZY_DRUGMESSAGE_MASTER queryMaster) { try { if (queryMaster != null) { int masterId = queryMaster.DRUGMESSAGEID; string strWhere = "a." + Tables.zy_drugmessage_order.MASTERID + oleDb.EuqalTo() + masterId.ToString() + oleDb.And() + "a." + Tables.zy_drugmessage_order.DISP_FLAG + oleDb.EuqalTo() + "0" + oleDb.And() + "a." + Tables.zy_drugmessage_order.NODRUG_FLAG + oleDb.EuqalTo() + "0"; string tableName = oleDb.TableNameBM(Tables.ZY_DRUGMESSAGE_ORDER, "a") + oleDb.LeftOuterJoin() + oleDb.TableNameBM(Tables.BASE_EMPLOYEE_PROPERTY, "b") + oleDb.ON("a." + Tables.zy_drugmessage_order.CUREDOC, "b." + Tables.base_employee_property.EMPLOYEE_ID) + oleDb.LeftOuterJoin() + oleDb.TableNameBM(Tables.BASE_DEPT_PROPERTY, "c") + oleDb.ON("a." + Tables.zy_drugmessage_order.CUREDEPT, "c." + Tables.base_dept_property.DEPT_ID); string strSql = oleDb.Table(tableName, "", strWhere, "a.*", "b.name as presdocname", "c.name as presdeptname", "1 as isdispense"); strSql += oleDb.OrderBy("a.dosename", "a.chemname"); DataTable rtnDt = oleDb.GetDataTable(strSql); GetSendNumAndFee(rtnDt); return(rtnDt); } else { return(null); } } catch (Exception error) { throw error; } }
/// <summary> /// 发药消息明细 /// </summary> /// <param name="presorderid"></param> /// <param name="masterid"></param> public void InsertDrugMessageRecord(int presorderid, int masterid) { Model.ZY_DRUGMESSAGE_MASTER zyDurgMessageMaster = new ZY_DRUGMESSAGE_MASTER(); Model.ZY_PresOrder zyPresOrder = BindEntity <ZY_PresOrder> .CreateInstanceDAL(oleDb).GetModel(presorderid); Model.ZY_PatList zyPatlist = BindEntity <ZY_PatList> .CreateInstanceDAL(oleDb).GetModel(zyPresOrder.PatListID); Model.YP_MakerDic makerdic = BindEntity <YP_MakerDic> .CreateInstanceDAL(oleDb).GetModel(zyPresOrder.ItemID); Model.YP_ProductDic productdic = BindEntity <YP_ProductDic> .CreateInstanceDAL(oleDb).GetModel(makerdic.ProductID); Model.ZY_DRUGMESSAGE_ORDER zy_drugMessageOrder = new ZY_DRUGMESSAGE_ORDER(); zy_drugMessageOrder.MASTERID = masterid; zy_drugMessageOrder.MAKERDICID = zyPresOrder.ItemID; zy_drugMessageOrder.CHEMNAME = zyPresOrder.ItemName; zy_drugMessageOrder.SPEC = zyPresOrder.Standard; zy_drugMessageOrder.DRUGNUM = zyPresOrder.Amount; zy_drugMessageOrder.CUREDEPT = Convert.ToInt32(zyPresOrder.PresDeptCode); zy_drugMessageOrder.CUREDOC = Convert.ToInt32(zyPresOrder.PresDocCode); zy_drugMessageOrder.CURENO = zyPatlist.CureNo; zy_drugMessageOrder.PATNAME = zyPatlist.PatientInfo.PatName; zy_drugMessageOrder.BEDNO = zyPatlist.BedCode; zy_drugMessageOrder.PATID = zyPresOrder.PatListID; zy_drugMessageOrder.UNITNAME = zyPresOrder.Unit; zy_drugMessageOrder.TRADEPRICE = zyPresOrder.Buy_Price; zy_drugMessageOrder.RETAILPRICE = zyPresOrder.Sell_Price; zy_drugMessageOrder.UNITNUM = Convert.ToInt32(zyPresOrder.RelationNum); zy_drugMessageOrder.ORDERRECIPEID = presorderid; zy_drugMessageOrder.CHARGEMAN = Convert.ToInt32(zyPresOrder.ChargeCode); zy_drugMessageOrder.CHARGEDATE = zyPresOrder.CostDate; zy_drugMessageOrder.ORDERGROUP_ID = zyPresOrder.group_id; zy_drugMessageOrder.DOCORDERTYPE = zyPresOrder.order_type; zy_drugMessageOrder.DOCORDERID = zyPresOrder.order_id; zy_drugMessageOrder.SPECDICID = makerdic.SpecDicID; // add 2010-09-19 zenghao zy_drugMessageOrder.PRODUCTNAME = productdic.ProductName; // add 2010-09-19 zenghao BindEntity <ZY_DRUGMESSAGE_ORDER> .CreateInstanceDAL(oleDb).Add(zy_drugMessageOrder); //object obj = BindEntity<ZY_DRUGMESSAGE_ORDER>.CreateInstanceDAL(oleDb).GetFieldValue("max(drugmessageid)", "1=1"); //string strwhere2 = "drugmessageid=" + int.Parse(obj.ToString()); //string updatefield = Tables.zy_drugmessage_order.SPECDICID+oleDb.EuqalTo()+ makerdic.SpecDicID; //BindEntity<HIS.Model.ZY_DRUGMESSAGE_ORDER>.CreateInstanceDAL(oleDb).Update(strwhere2, updatefield); //string strWhere = "drugmessageid=" + masterid; //string updatefiled1 = Tables.zy_drugmessage_master.PRESDEPTID + oleDb.EuqalTo() +Convert.ToInt32(zyPresOrder.PresDeptCode); //string updatefiled2 = Tables.zy_drugmessage_master.DISPDEPT + oleDb.EuqalTo() + Convert.ToInt32(zyPresOrder.ExecDeptCode); //BindEntity<HIS.Model.ZY_DRUGMESSAGE_MASTER>.CreateInstanceDAL(oleDb).Update(strWhere, updatefiled1,updatefiled2); return; }
//树形控件节点上checkbox被改变触发消息 private void treeDrugMsg_AfterCheck(object sender, TreeViewEventArgs e) { try { if (e.Node != null) { this.Cursor = GWMHIS.BussinessLogicLayer.Classes.PublicStaticFun.WaitCursor(); if (e.Node.Level == 2 && e.Node.Checked) { ZY_DRUGMESSAGE_MASTER currentMsg = (ZY_DRUGMESSAGE_MASTER)(e.Node.Tag); //cobSumWay.SelectedIndex = currentMsg.MESSAGETYPE == 0 ? 0 : 1; _selectDeptId = currentMsg.PRESDEPTID; TreeNode rootNode = treeDrugMsg.Nodes[0]; foreach (TreeNode node in rootNode.Nodes) { foreach (TreeNode msgNode in node.Nodes) { if (((ZY_DRUGMESSAGE_MASTER)msgNode.Tag).PRESDEPTID != currentMsg.PRESDEPTID && msgNode.Checked == true) { msgNode.Parent.Checked = false; break; } } } if (_recipeOrder != null) { DataTable recipeDt = _zyInterFace.GetDrugMsgOrder(currentMsg); for (int index = 0; index < recipeDt.Rows.Count; index++) { _recipeOrder.Rows.Add(recipeDt.Rows[index].ItemArray); } } else { _recipeOrder = _zyInterFace.GetDrugMsgOrder(currentMsg); _recipeOrder.PrimaryKey = new DataColumn[] { _recipeOrder.Columns["DRUGMESSAGEID"] }; _recipeOrder.DefaultView.RowFilter = "DRUGNUM<>0"; dgrdRecipeInfo.DataSource = _recipeOrder; } } if (e.Node.Level == 2 && !e.Node.Checked) { ZY_DRUGMESSAGE_MASTER currentMsg = (ZY_DRUGMESSAGE_MASTER)(e.Node.Tag); if (_recipeOrder != null) { DataRow[] removeRows = _recipeOrder.Select("MASTERID=" + currentMsg.DRUGMESSAGEID.ToString()); dgrdRecipeInfo.CurrentCellChanged -= dgrdRecipeInfo_CurrentCellChanged; foreach (DataRow removeRow in removeRows) { _recipeOrder.Rows.Remove(removeRow); } dgrdRecipeInfo.CurrentCellChanged += dgrdRecipeInfo_CurrentCellChanged; } } if ((e.Node.Level == 2 && e.Node.Checked) || (e.Node.Level == 1 && e.Node.Checked)) { e.Node.Parent.Checked = true; } if ((e.Node.Level == 1 && !e.Node.Checked) || (e.Node.Level == 0 && !e.Node.Checked)) { foreach (TreeNode node in e.Node.Nodes) { node.Checked = false; } } } } catch (Exception error) { MessageBox.Show(error.Message); } finally { this.Cursor = DefaultCursor; } }