void SetData(ChargeItemInfo info) { if (info == null) { IconSprite.spriteName = ""; CountLabel.text = ""; TitleLabel.text = ""; return; } ItemTableItem item = ItemManager.GetItemRes(info.itemId); if (item == null) { Debug.LogError("物品表中不存在的物品id=" + info.itemId); return; } TitleLabel.text = info.title; CountLabel.text = info.count.ToString(); NameLabel.text = ItemManager.getItemNameWithColor(info.itemId); UIAtlasHelper.SetSpriteImage(IconSprite, item.picname, true); }
/// <remarks/> public System.IAsyncResult BeginChargeUpItem(string inpatiId, ChargeItemInfo itemInfo, string execOrgId, string operatorId, System.AsyncCallback callback, object asyncState) { return(this.BeginInvoke("ChargeUpItem", new object[] { inpatiId, itemInfo, execOrgId, operatorId }, callback, asyncState)); }
public ResponseContainerOfBoolean ChargeUpItem(string inpatiId, ChargeItemInfo itemInfo, string execOrgId, string operatorId) { object[] results = this.Invoke("ChargeUpItem", new object[] { inpatiId, itemInfo, execOrgId, operatorId }); return((ResponseContainerOfBoolean)(results[0])); }
void CreateItem(TotalChargeTableItem item) { GameObject gridObj = (GameObject)GameObject.Instantiate(mGridObj); if (gridObj == null) { return; } gridObj.transform.parent = mGrid.transform; gridObj.transform.localScale = Vector3.one; gridObj.name = item.id.ToString(); UIGrid perGrid = gridObj.GetComponent <UIGrid>(); mGridItems.Add(perGrid); for (int i = 0, j = item.ItemMaxNum; i < j; i++) { TotalChargeItemItem itemItem = item[i]; if (itemItem.itemid < 0) { continue; } ItemTableItem tableItem = ItemManager.GetItemRes(itemItem.itemid); if (tableItem == null) { continue; } //GameObject itemObj = (GameObject)GameObject.Instantiate(mItemObj); //if (itemObj == null) // return; //itemObj.transform.parent = gridObj.transform; //itemObj.transform.localScale = Vector3.one; //itemObj.name = itemItem.itemid.ToString(); //TotalChargeItemUI ui = new TotalChargeItemUI(itemObj); //ui.SetData(itemItem); ChargeItemInfo info = new ChargeItemInfo(itemItem.itemid, itemItem.itemNum); ChargeItemUI ui = new ChargeItemUI(info); ui.gameObject.transform.parent = gridObj.transform; ui.gameObject.transform.localScale = Vector3.one; ui.gameObject.name = itemItem.itemid.ToString(); } perGrid.repositionNow = true; }
protected override void OnOpen(object param = null) { FirstChargeRewardTableItemBase item = DataManager.FirstChargeTable[0] as FirstChargeRewardTableItemBase; if (item == null) { Close(); } else { FirstChargeRewardTableItem Item = (FirstChargeRewardTableItem)item; mItemList.Clear(); ObjectCommon.DestoryChildren(Grid.gameObject); for (int i = 0; i < 7; i++) { if (Item.FirstChargeItems[i] != null && Item.FirstChargeItems[i].itemid > 0 && Item.FirstChargeItems[i].itemnum > 0) { ItemTableItem mItemRes = ItemManager.GetItemRes(Item.FirstChargeItems[i].itemid); ChargeItemInfo info = new ChargeItemInfo(Item.FirstChargeItems[i].itemid, Item.FirstChargeItems[i].itemnum); ChargeItemUI itemIcon = new ChargeItemUI(info); itemIcon.gameObject.transform.parent = Grid.gameObject.transform; itemIcon.gameObject.transform.localScale = Vector3.one; mItemList.Add(itemIcon); } } Grid.Reposition(); Grid.repositionNow = true; } EventDelegate.Add(mReturnBtn.onClick, OnReturnBtnClick); PlayerDataModule mPlayerDataModule = ModuleManager.Instance.FindModule <PlayerDataModule>(); if (!mPlayerDataModule.GetCharged()) { NGUITools.SetActive(mGetRewardBtn.gameObject, false); NGUITools.SetActive(mChargeBtn.gameObject, true); EventDelegate.Add(mChargeBtn.onClick, OnChargeBtnClick); } else if (!mPlayerDataModule.GetFirstChargePicked()) { NGUITools.SetActive(mGetRewardBtn.gameObject, true); NGUITools.SetActive(mChargeBtn.gameObject, false); EventDelegate.Add(mGetRewardBtn.onClick, OnRewardBtnClick); picked = false; } else { NGUITools.SetActive(mChargeBtn.gameObject, false); UIAtlasHelper.SetButtonImage(mGetRewardBtn, "common:anniuhui", true); } mScrollBar.value = 0.0f; }
private void OnSelectChange(ChargeItemInfo obj) { if (current) { current.selected = false; } current = obj; currentItem = current.item; Util.SetText(confirmText, Util.Format(ConfigText.GetDefalutString(TextForMatType.RechargeUIText, 4), Util.GetChargeCurrencySymbol(current.item.info.currencyType) + current.item.info.cost, current.item.info.reward.diamond)); }
/// <remarks/> public void ChargeUpItemAsync(string inpatiId, ChargeItemInfo itemInfo, string execOrgId, string operatorId, object userState) { if ((this.ChargeUpItemOperationCompleted == null)) { this.ChargeUpItemOperationCompleted = new System.Threading.SendOrPostCallback(this.OnChargeUpItemOperationCompleted); } this.InvokeAsync("ChargeUpItem", new object[] { inpatiId, itemInfo, execOrgId, operatorId }, this.ChargeUpItemOperationCompleted, userState); }
private void CreateItem(FundTableItem item) { if (item == null) { return; } //GameObject go = WindowManager.Instance.CloneGameObject(MFundItemObj); //if (go == null) // return; //go.name = item.id.ToString(); //go.transform.parent = MGrid.transform; //go.transform.localScale = Vector3.one; ChargeItemInfo info = new ChargeItemInfo(item.itemId, item.count, item.title); ChargeItemUI ui = new ChargeItemUI(info); if (ui == null) { return; } ui.gameObject.name = item.id.ToString(); ui.gameObject.transform.parent = MGrid.transform; ui.gameObject.transform.localScale = Vector3.one; //UIEventListener.Get(ui.gameObject).onClick = onFundItemClick; if (!mFundItemUis.ContainsKey(item.id)) { mFundItemUis.Add(item.id, ui); } else { Debug.LogError("怎么会出现重复的;"); } }
public ChargeItemUI(ChargeItemInfo info) { mInfo = info; if (mGo == null) { mGo = WindowManager.Instance.CloneCommonUI("ChargeItem"); } if (mGo == null) { return; } TitleLabel = ObjectCommon.GetChildComponent <UILabel>(mGo, "title"); NameLabel = ObjectCommon.GetChildComponent <UILabel>(mGo, "name"); CountLabel = ObjectCommon.GetChildComponent <UILabel>(mGo, "number"); IconSprite = ObjectCommon.GetChildComponent <UISprite>(mGo, "icon"); GetDoneSprite = ObjectCommon.GetChildComponent <UISprite>(mGo, "getdone"); EventDelegate.Add(button.onClick, onItemClick); SetData(info); }
public void UpdateData(ChargeItemInfo info) { SetData(info); }
/// <summary> /// 计费接口(舱内扫描程序调用) /// 0 计费不成功 /// 1 计费成功 /// msg 失败原因 /// </summary> /// <param name="labelno"></param> /// <param name="UserID"></param> /// <param name="msg"></param> /// <returns></returns> public override string Charge(string labelno, string UserID, out string msg) { //配置费 ChargeItemInfo ItemInfo_pzf = new ChargeItemInfo(); ItemInfo_pzf.Quantity = 1; //注射器 ChargeItemInfo ItemInfo_zsq = new ChargeItemInfo(); ItemInfo_zsq.Quantity = 1; //三升袋 ChargeItemInfo ItemInfo_ssd = new ChargeItemInfo(); ItemInfo_zsq.Quantity = 1; msg = string.Empty; string inpatid = "", execOrgId = "33020B", operatorId = ""; string begintime = DateTime.Now.ToString(); string endtime = ""; string Parameters = ""; string ret = string.Empty; string hisRet = string.Empty; string LabelOver = "", DrugType = "", DrugCount = ""; try { string sql = "select p.CaseID,iv.LabelOver,p.DrugType ,(select count(DrugCode) from PrescriptionDetail " + "where PrescriptionDetail.GroupNo=p.GroupNo) as DrugCount from IVRecord iv inner join Prescription p " + "on iv.PrescriptionID=p.PrescriptionID where LabelNo='{0}' "; sql = sql + " select top 1 hiscode from DEmployee where DEmployeeID ='{1}'"; sql = string.Format(sql, labelno, UserID); DataSet Lds = dbHelp.GetPIVAsDB(sql); #region 调用HIS计费接口前,判断是否需要调用 if (Lds == null || Lds.Tables.Count <= 0 || Lds.Tables[0].Rows.Count <= 0 || Lds.Tables[1].Rows.Count <= 0) { msg = "无计费信息"; return("0"); } inpatid = Lds.Tables[0].Rows[0]["CaseID"].ToString().Trim(); LabelOver = Lds.Tables[0].Rows[0]["LabelOver"].ToString().Trim(); DrugType = Lds.Tables[0].Rows[0]["DrugType"].ToString().Trim(); DrugCount = Lds.Tables[0].Rows[0]["DrugCount"].ToString().Trim(); operatorId = Lds.Tables[1].Rows[0]["hiscode"].ToString().Trim(); //瓶签配置已取消 if (int.Parse(LabelOver) < 0) { msg = ChargeResult_Const.MANUAL_CANCEL; return("0"); } //单药不收费,不调用his计费接口 if (int.Parse(DrugCount) <= 1) { msg = "单药不收费"; return("1"); } //这里添加对IVRecord表中Remark3值的判断,若等于15,则已计费成功,直接返回计费成功,不再调用计费接口 #endregion #region 调用his计费接口 ResponseContainerOfBoolean hisret_pzf = null; ResponseContainerOfBoolean hisret_zsq = null; ResponseContainerOfBoolean hisret_ssd = null; /* * 120400013-2b 其他药物集中配置 * 120400013-2a 抗肿瘤化学药物集中配置 * 120400013-2c 全静脉营养液集中配置 */ //转换配置收费类型 if (DrugType == "3")//化疗药 { ItemInfo_pzf.ItemId = "120400013-2a"; ItemInfo_zsq.ItemId = "950030044"; //住院号 inpatid,项目信息ItemInfo,执行科室编码execOrgId,操作员编码operatorId hisret_pzf = hisChargeService.ChargeUpItem(inpatid, ItemInfo_pzf, execOrgId, operatorId); hisret_zsq = hisChargeService.ChargeUpItem(inpatid, ItemInfo_zsq, execOrgId, operatorId); if (hisret_pzf.ResponseContent) { Parameters = Parameters + "|配置费:" + inpatid + "," + ItemInfo_pzf.ItemId + "," + execOrgId + "," + operatorId; } else { Parameters = Parameters + "|配置费(失败):" + inpatid + "," + ItemInfo_pzf.ItemId + "," + execOrgId + "," + operatorId; } if (hisret_zsq.ResponseContent) { Parameters = Parameters + "|耗材:" + inpatid + "," + ItemInfo_zsq.ItemId + "," + execOrgId + "," + operatorId; } else { Parameters = Parameters + "|耗材(失败):" + inpatid + "," + ItemInfo_zsq.ItemId + "," + execOrgId + "," + operatorId; } } else if (DrugType == "4")//营养处方 { /* * 按照每组药的单位是否为ML判断使用哪种规格注射器 * 0.1ML 1ML 1ML注射器 02010100087 950030034 * 1.1ML 2.4ML 2ML注射器 02010100088 950030035 * 2.5ML 5ML 5ML注射器 02010100090 950030037 * 5.1ML 10ML 10ML注射器 02010100091 950030038 * 10.1ML 15ML 10ML注射器 02010100091 950030038 * 15.1ML 20ML 20ML注射器 950030040 * 20.1ML 30ML 30ML注射器 950030042 * 30.1ML 以上 50ML注射器 950030044 * 粉针剂 普通20ml抗30ml化50ml * * * 后面确定 1ml:950030034 2ml:950030035 5ml:950030037 10ml:950030038 * */ ItemInfo_pzf.ItemId = "120400013-2c"; //住院号 inpatid,项目信息ItemInfo,执行科室编码execOrgId,操作员编码operatorId hisret_pzf = hisChargeService.ChargeUpItem(inpatid, ItemInfo_pzf, execOrgId, operatorId); if (hisret_pzf.ResponseContent) { Parameters = Parameters + "|营养液配置费:" + inpatid + "," + ItemInfo_pzf.ItemId + "," + execOrgId + "," + operatorId; } else { Parameters = Parameters + "|营养液配置费(失败):" + inpatid + "," + ItemInfo_pzf.ItemId + "," + execOrgId + "," + operatorId; } string sql_hly = "select pr.Dosage, pr.DosageUnit,p.UsageCode,pr.DrugCode,dr.TheDrugType from IVRecord iv " + "inner join Prescription p on iv.PrescriptionID=p.PrescriptionID inner join PrescriptionDetail pr on " + "iv.GroupNo=pr.GroupNo left join DDrug dr on pr.DrugCode=dr.DrugCode where LabelNo='" + labelno + "'"; DataSet dsSQL_hly = dbHelp.GetPIVAsDB(sql_hly); if (dsSQL_hly.Tables.Count > 0) { DataTable DosageDT = dsSQL_hly.Tables[0]; for (int i = 0; i < DosageDT.Rows.Count; i++) { //如果单位是ML的按医生开的剂量绑定耗材 if (DosageDT.Rows[i]["DosageUnit"].ToString().Equals("ml")) { if (float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) >= 0.1 && float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) <= 1) { ItemInfo_zsq.ItemId = "950030034"; } else if (float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) > 1 && float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) <= 2.5) { ItemInfo_zsq.ItemId = "950030035"; } else if (float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) > 2.5 && float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) <= 5) { ItemInfo_zsq.ItemId = "950030037"; } else if (float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) > 5 && float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) <= 15) { ItemInfo_zsq.ItemId = "950030038"; } else if (float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) > 15 && float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) <= 20) { ItemInfo_zsq.ItemId = "950030040"; } else if (float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) > 20 && float.Parse(DosageDT.Rows[i]["Dosage"].ToString()) <= 30) { ItemInfo_zsq.ItemId = "950030042"; } else { ItemInfo_zsq.ItemId = "950030044"; } } else //非ML单位的查询药品的属性普、抗、化 { if (DosageDT.Rows[i]["TheDrugType"].ToString().Equals("1")) { ItemInfo_zsq.ItemId = "950030040"; } else if (DosageDT.Rows[i]["TheDrugType"].ToString().Equals("2")) { ItemInfo_zsq.ItemId = "950030042"; } else if (DosageDT.Rows[i]["TheDrugType"].ToString().Equals("3")) { ItemInfo_zsq.ItemId = "950030044"; } else { ItemInfo_zsq.ItemId = "950030040"; } } hisret_zsq = hisChargeService.ChargeUpItem(inpatid, ItemInfo_zsq, execOrgId, operatorId); if (hisret_zsq.ResponseContent) { Parameters = Parameters + "|营养液耗材:" + ItemInfo_zsq.ItemId; } else { Parameters = Parameters + "|营养液耗材(失败):" + ItemInfo_zsq.ItemId; } } /* * 一次性肠外营养输液袋970174003 按照组收费,医嘱用法为IVYY静脉营养才收费 * */ if (DosageDT.Rows[0]["UsageCode"].ToString().Contains("YY")) { ItemInfo_ssd.ItemId = "970174003"; hisret_ssd = hisChargeService.ChargeUpItem(inpatid, ItemInfo_ssd, execOrgId, operatorId); if (hisret_ssd.ResponseContent) { Parameters = Parameters + "|营养液三升袋:" + ItemInfo_ssd.ItemId; } else { Parameters = Parameters + "|营养液三升袋(失败):" + ItemInfo_ssd.ItemId; } } } } else { ItemInfo_pzf.ItemId = "120400013-2b"; if (DrugType == "2") { ItemInfo_zsq.ItemId = "950030042"; } else { ItemInfo_zsq.ItemId = "950030040"; } //住院号 inpatid,项目信息ItemInfo,执行科室编码execOrgId,操作员编码operatorId hisret_pzf = hisChargeService.ChargeUpItem(inpatid, ItemInfo_pzf, execOrgId, operatorId); hisret_zsq = hisChargeService.ChargeUpItem(inpatid, ItemInfo_zsq, execOrgId, operatorId); if (hisret_pzf.ResponseContent) { Parameters = Parameters + "|配置费:" + inpatid + "," + ItemInfo_pzf.ItemId + "," + execOrgId + "," + operatorId; } else { Parameters = Parameters + "|配置费(失败):" + inpatid + "," + ItemInfo_pzf.ItemId + "," + execOrgId + "," + operatorId; } if (hisret_zsq.ResponseContent) { Parameters = Parameters + "|耗材:" + inpatid + "," + ItemInfo_zsq.ItemId + "," + execOrgId + "," + operatorId; } else { Parameters = Parameters + "|耗材(失败):" + inpatid + "," + ItemInfo_zsq.ItemId + "," + execOrgId + "," + operatorId; } } #endregion #region 根据HIS计费接口返回值,更新pivas数据库表,更新内容如下 //1、HIS确定都计费成功的,将IVRecord表中Remark3更新为15 //2、HIS确定都计费失败的,将IVRecord表中LabelOver更新为-3 //3、HIS因各种原因造成计费结果模糊的,什么也不处理,ret值设置为"0" if (hisret_pzf.ResponseContent && hisret_zsq.ResponseContent) { ret = "1"; msg = "配置费:成功" + "|注射器:成功"; hisRet += "配置费:" + hisret_pzf.ResponseContent.ToString() + "|注射器:" + hisret_zsq.ResponseContent.ToString(); } else if (!hisret_pzf.ResponseContent && hisret_zsq.ResponseContent) { ret = "0"; msg = "配置费: " + hisret_pzf.ExceptionMessage + "|注射器:成功"; hisRet += "配置费:" + hisret_pzf.ResponseContent.ToString() + "|注射器:" + hisret_zsq.ResponseContent.ToString(); } else if (hisret_pzf.ResponseContent && !hisret_zsq.ResponseContent) { ret = "0"; msg = "配置费:成功" + "|注射器:" + hisret_zsq.ExceptionMessage; hisRet += "配置费:" + hisret_pzf.ResponseContent.ToString() + "|注射器:" + hisret_zsq.ResponseContent.ToString(); } else { ret = "0"; msg = "配置费:" + hisret_pzf.ExceptionMessage + "|注射器:" + hisret_zsq.ExceptionMessage; hisRet += "配置费:" + hisret_pzf.ResponseContent.ToString() + "|注射器:" + hisret_zsq.ResponseContent.ToString(); } #endregion } catch (Exception ex) { InternalLogger.Log.Error("调用HIS计费接口出错:" + ex.Message); ret = "0"; msg = "pivas:" + ex.Message; } endtime = DateTime.Now.ToString(); string sql_toHis = "insert into ToHisChargeLog (begintime,endtime,labelno,[Parameters],ChargeResult," + "HisReturn,msg,Remark1) values ('" + begintime + "','" + endtime + "','" + labelno + "','" + Parameters + "','" + ret + "' ,'','" + msg + "','" + hisRet + "' )"; dbHelp.GetPIVAsDB(sql_toHis); return(ret); }
/// <remarks/> public void ChargeUpItemAsync(string inpatiId, ChargeItemInfo itemInfo, string execOrgId, string operatorId) { this.ChargeUpItemAsync(inpatiId, itemInfo, execOrgId, operatorId, null); }