yanjinhui
2025-10-27 7f5c1fef5f8fdcdb3a0a2ebadae9ae31564a103c
н¨Îļþ¼Ð/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/MedicineGoodsServices.cs
@@ -88,6 +88,8 @@
                    MaterielErpType = Medicat.goods_type,
                    item = Medicat.goods_tym, //通用名
                    MaterielName = Medicat.goods_spm,//物料名称
                    Dosage_form = GetDosageForm(Medicat.dosage_form),//药剂
                    Barcode = Medicat.barcode,//条形吗
                    MaterielSpec = Medicat.model,
                    Factory = Medicat.factory,
                    MaterielUnit = Medicat.unit,//单位
@@ -125,10 +127,9 @@
        {
            try
            {
                //先找到所有未下发的药品
                //var list = BaseDal.QueryData(x => x.GoodStatus == "未下发").ToList();
                //把小件未下发的的信息
                var list = BaseDal.Db.Queryable<Dt_MaterielInfo>().Where(x => x.GoodStatusState == "未下发" && x.MaterielSourceType == MaterielSourceTypeEnum.SelfMadePart).ToList();
                //把小件未下发的的信息和箱规为0,最低库存为0的过滤掉
                //var list = BaseDal.Db.Queryable<Dt_MaterielInfo>().Where(x => x.GoodStatusState == "未下发" && x.MaterielSourceType == MaterielSourceTypeEnum.SelfMadePart).ToList();
                var list = BaseDal.Db.Queryable<Dt_MaterielInfo>().Where(x =>x.MaterielSourceType == MaterielSourceTypeEnum.SelfMadePart&&x.BoxQty!=0&&x.MinQty!=0&& x.GoodStatusState == "未下发").ToList();
                if (list == null || !list.Any())
                {
                    return new WebResponseContent().OK("无未下发药品");
@@ -147,7 +148,10 @@
                        //产品名
                        productName = item.MaterielName,
                        //产品条码
                        productBarCode = item.MaterielCode,
                        productBarCode = item.Barcode,
                        //药剂
                        medicine = item.Dosage_form,//这里要调用方法,转化方法
                        //规格
                        productSpecifications = item.MaterielSpec,
@@ -290,6 +294,60 @@
                Console.WriteLine("异常接口推送失败:" + e.Message);
            }
        }
        /// <summary>
        /// åˆ›å»ºè¯å‰‚å­—å…¸
        /// </summary>
        private static readonly Dictionary<string, string> _dosageFormMap = new Dictionary<string, string>
        {
            {"001", "片剂"}, {"002", "片剂"}, {"003", "片剂"}, {"004", "片剂"}, {"005", "片剂"},
            {"006", "片剂"}, {"007", "片剂"}, {"008", "片剂"}, {"009", "片剂"}, {"010", "片剂"},
            {"011", "其它"}, {"012", "片剂"}, {"013", "其它"}, {"014", "片剂"}, {"015", "片剂"},
            {"016", "片剂"}, {"017", "片剂"}, {"018", "其它"}, {"019", "其它"}, {"020", "其它"},
            {"021", "针剂"}, {"022", "针剂"}, {"023", "针剂"}, {"024", "针剂"}, {"025", "中成药"},
            {"026", "中成药"}, {"027", "其它"}, {"028", "其它"}, {"029", "其它"}, {"030", "其它"},
            {"031", "其它"}, {"032", "其它"}, {"033", "其它"}, {"034", "中成药"}, {"035", "中成药"},
            {"036", "中成药"}, {"037", "中成药"}, {"038", "其它"}, {"039", "其它"}, {"040", "其它"},
            {"041", "中成药"}, {"042", "中成药"}, {"043", "中成药"}, {"044", "其它"}, {"045", "中成药"},
            {"046", "中成药"}, {"047", "中成药"}, {"048", "中成药"}, {"049", "中成药"}, {"050", "中成药"},
            {"051", "中成药"}, {"052", "中成药"}, {"053", "中成药"}, {"054", "中成药"}, {"055", "中成药"},
            {"056", "其它"}, {"057", "其它"}, {"058", "其它"}, {"059", "其它"}, {"060", "其它"},
            {"061", "其它"}, {"062", "其它"}, {"063", "其它"}, {"064", "其它"}, {"065", "其它"},
            {"066", "其它"}, {"067", "中成药"}, {"068", "中成药"}, {"069", "中成药"}, {"070", "其它"},
            {"071", "其它"}, {"072", "其它"}, {"073", "中成药"}, {"074", "其它"}, {"075", "其它"},
            {"076", "中成药"}, {"077", "其它"}, {"078", "其它"}, {"079", "中成药"}, {"080", "中成药"},
            {"081", "中成药"}, {"082", "中成药"}, {"083", "其它"}, {"084", "中成药"}, {"085", "其它"},
            {"086", "中成药"}, {"087", "其它"}, {"088", "其它"}, {"089", "中成药"}, {"090", "中成药"},
            {"091", "其它"}, {"092", "其它"}, {"093", "其它"}, {"094", "中成药"}, {"095", "其它"},
            {"096", "其它"}, {"097", "其它"}, {"098", "其它"}, {"099", "其它"}, {"100", "其它"},
            {"101", "其它"}, {"102", "其它"}, {"103", "其它"}, {"104", "其它"}, {"105", "其它"},
            {"106", "其它"}, {"107", "其它"}, {"108", "其它"}, {"109", "其它"}, {"110", "其它"},
            {"111", "其它"}, {"112", "其它"}, {"113", "其它"}, {"114", "其它"}, {"115", "其它"},
            {"116", "其它"}, {"117", "其他"}
        };
        /// <summary>
        /// æ ¹æ®å‰‚型编号获取剂型分类
        /// </summary>
        /// <param name="dosageCode">剂型编号(001-117)</param>
        /// <returns>剂型分类(片剂/针剂/中成药/其它/其他)</returns>
        public static string GetDosageForm(string dosageCode)
        {
            if (string.IsNullOrEmpty(dosageCode))
                return "未知";
            // å¤„理编号格式,确保是3位数字
            if (dosageCode.Length == 1)
                dosageCode = "00" + dosageCode;
            else if (dosageCode.Length == 2)
                dosageCode = "0" + dosageCode;
            if (_dosageFormMap.TryGetValue(dosageCode, out string form))
            {
                return form;
            }
            return "未知";
        }
    }