| | |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_BasicRepository; |
| | | using WIDESEA_Common.CommonEnum; |
| | | using WIDESEA_Common.MaterielEnum; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.BaseServices; |
| | | using WIDESEA_DTO.Basic; |
| | | using WIDESEA_DTO.ERP; |
| | | using WIDESEA_IBasicRepository; |
| | | using WIDESEA_IBasicService; |
| | | using WIDESEA_Model.Models; |
| | |
| | | { |
| | | public partial class MaterielInfoService : ServiceBase<Dt_MaterielInfo, IMaterielInfoRepository>, IMaterielInfoService |
| | | { |
| | | |
| | | /// <summary> |
| | | /// å¤æç©ææ¯å¦åå¨ |
| | | /// </summary> |
| | | /// <param name="materielCode">ç©æç¼å·</param> |
| | | /// <returns></returns> |
| | | public bool ExsitMateriel(string materielCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.MaterielCode == materielCode) != null; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å¤æç©ææ¯å¦åå¨ |
| | | /// </summary> |
| | | /// <param name="materielCodes">ç©æç¼å·éå</param> |
| | | /// <returns></returns> |
| | | public bool ExsitMateriels(List<string> materielCodes) |
| | | { |
| | | return BaseDal.QueryFirst(x => materielCodes.Contains(x.MaterielCode)) != null; |
| | | return BaseDal.QueryData(x => materielCodes.Contains(x.MaterielCode)).Count == materielCodes.Count; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åç©æä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="materielCode">ç©æç¼å·</param> |
| | | /// <returns></returns> |
| | | public Dt_MaterielInfo GetMaterielInfo(string materielCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.MaterielCode == materielCode); |
| | |
| | | /// <summary> |
| | | /// æ¥è¯¢ç©æä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="materielCodes"></param> |
| | | /// <param name="materielCodes">ç©æç¼å·</param> |
| | | /// <returns></returns> |
| | | public List<Dt_MaterielInfo> GetMaterielInfos(List<string> materielCodes) |
| | | { |
| | | return BaseDal.QueryData(x => materielCodes.Contains(x.MaterielCode)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¥æ¶ERPç©æä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="model"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent ReceiveMaterial(MaterielInfoDTO model) |
| | | { |
| | | try |
| | | { |
| | | Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == model.WaId); |
| | | if (warehouse == null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°ä»åºä¿¡æ¯"); |
| | | } |
| | | |
| | | if (model.OperateType == 0) |
| | | { |
| | | Dt_MaterielInfo materielInfo = new Dt_MaterielInfo() |
| | | { |
| | | IsCheck = (WhetherEnum)model.IsCheck, |
| | | MaterielCode = model.Code, |
| | | MaterielInvOrgId = model.InvOrgId, |
| | | MaterielLength = model.Length, |
| | | MaterielModel = model.Model, |
| | | MaterielName = model.Name, |
| | | MaterielSize = model.Size, |
| | | MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType, |
| | | MaterielSpec = model.StandType, |
| | | MaterielState = (EnableEnum)model.State, |
| | | MaterielThickness = model.Thickness, |
| | | MaterielType = (MaterielTypeEnum)model.ItemType, |
| | | MaterielUnit = model.Unit, |
| | | MaterielVersion = model.MaterialVersion, |
| | | MaterielWide = model.Wide, |
| | | WarehouseId = warehouse.WarehouseId, |
| | | }; |
| | | BaseDal.AddData(materielInfo); |
| | | } |
| | | else if (model.OperateType == 1) |
| | | { |
| | | Dt_MaterielInfo materielInfo = BaseDal.QueryFirst(x => x.MaterielCode == model.Code); |
| | | if (materielInfo == null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°ç©æä¿¡æ¯"); |
| | | } |
| | | |
| | | materielInfo.IsCheck = (WhetherEnum)model.IsCheck; |
| | | materielInfo.MaterielCode = model.Code; |
| | | materielInfo.MaterielInvOrgId = model.InvOrgId; |
| | | materielInfo.MaterielLength = model.Length; |
| | | materielInfo.MaterielModel = model.Model; |
| | | materielInfo.MaterielName = model.Name; |
| | | materielInfo.MaterielSize = model.Size; |
| | | materielInfo.MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType; |
| | | materielInfo.MaterielSpec = model.StandType; |
| | | materielInfo.MaterielState = (EnableEnum)model.State; |
| | | materielInfo.MaterielThickness = model.Thickness; |
| | | materielInfo.MaterielType = (MaterielTypeEnum)model.ItemType; |
| | | materielInfo.MaterielUnit = model.Unit; |
| | | materielInfo.MaterielVersion = model.MaterialVersion; |
| | | materielInfo.MaterielWide = model.Wide; |
| | | materielInfo.WarehouseId = warehouse.WarehouseId; |
| | | BaseDal.UpdateData(materielInfo); |
| | | } |
| | | else if (model.OperateType == 2) |
| | | { |
| | | Dt_MaterielInfo materielInfo = BaseDal.QueryFirst(x => x.MaterielCode == model.Code); |
| | | if (materielInfo == null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°ç©æä¿¡æ¯"); |
| | | } |
| | | |
| | | BaseDal.DeleteData(materielInfo); |
| | | } |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | } |
| | | } |
| | | } |