Esempio n. 1
0
        /// <summary>
        /// 获取新物料
        /// </summary>
        private void CallGetNewPart(string[] PartNumArr, out List <ExportDto.MBOM_UD> ListMBOM, out List <ExportDto.MPART> ListMPART)
        {
            List <Entity.DTO.DTO_MPART> lists = new List <Entity.DTO.DTO_MPART>();
            List <Entity.DTO.DTO_MBOM>  MBOM  = new List <Entity.DTO.DTO_MBOM>();

            ListMBOM = new List <ExportDto.MBOM_UD>();
            int gid = 1;

            foreach (string PartNum in PartNumArr)
            {
                List <Entity.DTO.DTO_MBOM> MB;
                var item = PLM.GetPLMBOMPart(PartNum, out MB);
                MB = MB.OrderBy(o => o.MtlSeq).ToList();

                lists = lists.Union(item).ToList();
                MBOM  = MBOM.Union(MB).ToList();

                List <ExportDto.MBOM_UD> exMBOM = Utilities.MapTo <List <ExportDto.MBOM_UD> >(MB);
                foreach (var it in exMBOM)
                {
                    it.GroupID = gid;
                }
                ListMBOM = ListMBOM.Union(exMBOM).ToList();
                gid++;
            }

            List <ExportDto.MBOM> mbom_data = Utilities.MapTo <List <ExportDto.MBOM> >(MBOM);

            mbom_data       = mbom_data.OrderBy(o => o.PartNum).ThenBy(o => o.MtlSeq).ToList();
            DataNewBOM      = Utility.ListToDataTable(mbom_data, "_", "#");
            ListMBOM        = ListMBOM.OrderBy(o => o.GroupID).ThenBy(o => o.PartNum).ThenBy(o => o.MtlSeq).ToList();
            DataNewBOMGroup = Utility.ListToDataTable(ListMBOM, "_", "#");

            List <ExportDto.MPART> data = Utilities.MapTo <List <ExportDto.MPART> >(lists);

            foreach (var part in data)
            {
                part.TrackLots              = "TRUE";
                part.NonStock               = Utilities.CheckNonStock(part.PartNum).ToString().ToUpper();
                part.PartPlant_NonStock     = part.NonStock;
                part.PartPlant_CostMethod   = part.CostMethod;
                part.PartWhse_WarehouseCode = "YJK";
            }
            DataNewPart = Utility.ListToDataTable(data, "_", "#");
            ListMPART   = data;

            Utility.ExportExcel(DataNewPart, SaveFolderPath + "\\PART.xls");
            pecentExe += 20;
            lblStatus  = "新物料数据已就绪...";
        }