/// <summary> /// 网格赋值 /// </summary> /// <param name="record"></param> /// <param name="dr"></param> /// <param name="dt"></param> /// <param name="rowid"></param> /// <param name="OrderType"></param> public void CardData(HIS.Model.zy_doc_orderrecord_son record, DataRow dr, DataTable dt, int rowid, int OrderType) { record.ORDER_CONTENT = XcConvert.IsNull(dr["ITEMNAME"], ""); record.ORDER_TYPE = OrderType; record.EXEC_DEPT = Convert.ToInt32(XcConvert.IsNull(dr["EXECDEPTCODE"], "0")); record.ITEM_TYPE = Convert.ToInt32(XcConvert.IsNull(dr["order_type"], "")); record.UNIT = XcConvert.IsNull(dr["doseunit"], ""); record.UNITTYPE = 0; record.ORDER_PRICE = Convert.ToDecimal(XcConvert.IsNull(dr["sell_price"], "0")); //record.PRES_DEPTID = deptid; //record.ORDER_DOC = employid; record.OrderDocName = HIS.ZYDoc_BLL.GetName.GetEmployname(record.ORDER_DOC.ToString());// BaseData.GetUserName(record.ORDER_DOC); record.PRES_AMOUNT = 1; record.AMOUNT = Convert.ToDecimal(dr["dosenum"]); record.PresNum = 1; record.STATUS_FALG = -1; record.ITEM_CODE = XcConvert.IsNull(dr["statitem_code"], ""); record.ORDER_SPEC = XcConvert.IsNull(dr["standard"], ""); if (Convert.ToInt32(dr["tc_flag"]) == 1) { record.TC_ID = Convert.ToInt32(dr["server_item_id"]); } else { record.TC_ID = 0; } if (record.ORECORD_A2 != 2) { record.GROUP_ID = -1; record.ORECORD_A2 = 0; record.PRES_AMOUNT = 1; record.PresNum = 1; } if (Convert.ToInt16(dr["order_type"]) > 3) { record.SEVERS_ID = Convert.ToInt32(XcConvert.IsNull(dr["server_item_id"], "0")); record.ORDITEM_ID = Convert.ToInt32(XcConvert.IsNull(dr["itemid"], "0")); record.MAKEDICID = 0; record.FIRSET_TIMES = 1; record.First = 1; } if (!IsGroupFirstRow(dt, rowid))//如果不是一组的第一行 { record.FREQUENCY = XcConvert.IsNull(dt.Rows[rowid - 1]["FREQUENCY"].ToString(), ""); record.ORDER_USAGE = XcConvert.IsNull(dt.Rows[rowid - 1]["order_usage"].ToString(), ""); record.FIRSET_TIMES = Convert.ToInt32(XcConvert.IsNull(dt.Rows[rowid - 1]["firset_times"].ToString(), "1")); record.PRES_AMOUNT = Convert.ToDecimal(XcConvert.IsNull(dt.Rows[rowid - 1]["pres_amount"].ToString(), "1")); } }
/// <summary> /// 修改医嘱保存 /// </summary> /// <param name="dt"></param> /// <param name="i"></param> /// <returns></returns> private static void UpdateSave(HIS.Model.zy_doc_orderrecord_son record, int i) { string ordercontent = record.ORDER_CONTENT.ToString().Trim(); if (ordercontent == "术后医嘱" || ordercontent == "产后医嘱" || record.ITEM_TYPE == 10) { record.STATUS_FALG = 1; } else if (PubMethd.IsTransOrder(record.ORDER_ID)) { record.STATUS_FALG = 2; } else { record.STATUS_FALG = 0; } if (record.BeginTime.ToString() != timeformat.ToString()) { record.ORDER_BDATE = record.BeginTime;// Convert.ToDateTime(dt.Rows[i]["BeginTime"].ToString()); } record.ORECORD_A2 = 1; }
public static void ModelDataApply(HIS.Model.zy_doc_orderrecord_son record, HIS.Model.ZY_DOC_ORDERMODELLIST model, int ordertype, int deptid, int order_doc) { HIS.ZYDoc_BLL.BaseInfo.DrugBase drugbase = new HIS.ZYDoc_BLL.BaseInfo.DrugBase(); record.ITEM_TYPE = model.ITEM_TYPE; if (model.ITEM_TYPE != 7) { DataRow dr = drugbase.GetItemDrugInfo(model.ITEM_ID, model.ITEM_TYPE); if (dr == null) { throw new Exception("找不到'" + model.ITEM_NAME + "' 的内容"); } record.ORDER_CONTENT = dr["itemname"].ToString().Trim(); record.ORDER_SPEC = HIS.SYSTEM.PubicBaseClasses.XcConvert.IsNull(dr["standard"], "");; record.ITEM_CODE = HIS.SYSTEM.PubicBaseClasses.XcConvert.IsNull(dr["statitem_code"], ""); if (Convert.ToInt32(dr["tc_flag"]) == 1) { record.TC_ID = Convert.ToInt32(HIS.SYSTEM.PubicBaseClasses.XcConvert.IsNull(dr["server_item_id"], "0")); } else { record.TC_ID = 0; } if (model.ITEM_TYPE > 3) { record.EXEC_DEPT = Convert.ToInt32(HIS.SYSTEM.PubicBaseClasses.XcConvert.IsNull(dr["EXECDEPTCODE"], "0")); } else //药品的执行科室取模板的执行科室,因为有多个药房的时候,从视图中去找的也不准 { record.EXEC_DEPT = model.EXEC_DEPT; } } else { record.ORDER_CONTENT = model.ITEM_NAME; record.TC_ID = 0; record.EXEC_DEPT = 0; } //record.ORDER_CONTENT = model.ITEM_NAME; record.ORDER_DOC = order_doc; record.AMOUNT = model.AMOUNT; record.PRES_AMOUNT = Convert.ToDecimal(Convert.ToInt32(model.PRESAMOUNT)); if (ordertype == 0) { record.UNIT = model.doseunit.ToString().Trim(); record.UNITTYPE = 0; if (model.ITEM_TYPE < 3 && model.UNITTYPE != 0) //如果开的不是含量单位,则数量要转换 { decimal dosenum = drugbase.GetDosePackNum(model.ITEM_ID, model.ITEM_TYPE, 0); decimal packnum = drugbase.GetDosePackNum(model.ITEM_ID, model.ITEM_TYPE, 1); if (model.UNITTYPE == 1) //如果开的是最小单位,则要把数量乘以含量系数 { record.AMOUNT = model.AMOUNT * dosenum; } if (model.UNITTYPE == 2) //如果开的是包装单位,则要把数量乘以包装系数和含量系数 { record.AMOUNT = model.AMOUNT * packnum * dosenum; } } } else { record.UNIT = model.UNIT; record.UNITTYPE = model.UNITTYPE; } record.ORDER_STRUC = model.ORDER_STRUC; record.FREQUENCY = model.ORDER_FRENQUECY; record.ORDER_USAGE = model.ORDER_USAGE; // record.EXEC_DEPT = model.EXEC_DEPT; record.DROPSPEC = model.DROPSPER; record.ORDER_TYPE = ordertype; record.STATUS_FALG = -1; record.PRES_DEPTID = deptid; record.GROUP_ID = -1; // record.TC_ID = model.TC_ID; // record.ITEM_CODE = model.ITEM_CODE; record.ORDER_PRICE = drugbase.GetPrice(model.ITEM_ID, model.ITEM_TYPE); record.Usage = model.ORDER_USAGE; record.Frency = model.ORDER_FRENQUECY; record.PresNum = Convert.ToInt32(model.PRESAMOUNT); if (model.ORDER_FRENQUECY == "") { record.FIRSET_TIMES = 1; record.First = 1; } else { if (ordertype == 0) { if (model.ORDER_FRENQUECY == "持续") { string dtime = HIS.SYSTEM.PubicBaseClasses.XcDate.ServerDateTime.ToShortTimeString(); decimal hourStr = Convert.ToDecimal(dtime.Replace(":", ".")); record.FIRSET_TIMES = Convert.ToInt32(24 - hourStr); record.First = record.FIRSET_TIMES; } else { record.FIRSET_TIMES = drugbase.getExecTimes(model.ORDER_FRENQUECY, HIS.SYSTEM.PubicBaseClasses.XcDate.ServerDateTime, 0); record.First = record.FIRSET_TIMES; } } else { record.FIRSET_TIMES = 1; record.First = 1; } } }