public void LinkConception(List <int> accessoryPKs, int conceptionPK, string userID) { try { // link conception Conception conception = db.Conceptions.Find(conceptionPK); foreach (var accessoryPK in accessoryPKs) { Accessory accessory = db.Accessories.Find(accessoryPK); if (conception.CustomerPK != accessory.CustomerPK) { throw new Exception("MÃ HÀNG VÀ ACCESSORY KHÔNG CÙNG CUSTOMER!"); } ConceptionAccessory conceptionAccessory = new ConceptionAccessory(conceptionPK, accessoryPK); db.ConceptionAccessories.Add(conceptionAccessory); // lưu activity link Activity activity1 = new Activity("link", conception.ConceptionCode, "Conception", userID); Activity activity2 = new Activity("link", accessory.AccessoryID, "Accessory", userID); db.Activities.Add(activity1); db.Activities.Add(activity2); } db.SaveChanges(); } catch (Exception e) { throw e; } }
public void DeleteConception(int conceptionPK, string userID) { try { ConceptionAccessory conceptionAccessory = (from ca in db.ConceptionAccessories where ca.ConceptionPK == conceptionPK select ca).FirstOrDefault(); if (conceptionAccessory != null) { throw new Exception("MÃ HÀNG ĐÃ CÓ GẮN PHỤ LIỆU, KHÔNG ĐƯỢC XÓA"); } // delete conception Conception conception = db.Conceptions.Find(conceptionPK); db.Conceptions.Remove(conception); // lưu activity delete Activity activity = new Activity("delete", conception.ConceptionCode, "Conception", userID); db.Activities.Add(activity); db.SaveChanges(); } catch (Exception e) { throw e; } }
public void UnlinkConception(int accessoryPK, int conceptionPK, string userID) { try { // unlink conception Conception conception = db.Conceptions.Find(conceptionPK); Accessory accessory = db.Accessories.Find(accessoryPK); if (conception.CustomerPK != accessory.CustomerPK) { throw new Exception("MÃ HÀNG VÀ PHỤ LIỆU KHÔNG CÙNG KHÁCH HÀNG!"); } List <DemandedItem> demandedItems = (from dI in db.DemandedItems where dI.AccessoryPK == accessoryPK select dI).ToList(); foreach (var item in demandedItems) { Demand demand = db.Demands.Find(item.DemandPK); if (demand.ConceptionPK == conception.ConceptionPK) { throw new Exception("MÃ HÀNG VÀ PHỤ LIỆU ĐÃ ĐƯỢC LIÊN KẾT VÀ SỬ DỤNG!"); } } ConceptionAccessory conceptionAccessory = (from ca in db.ConceptionAccessories where ca.AccessoryPK == accessoryPK && ca.ConceptionPK == conceptionPK select ca).FirstOrDefault(); db.ConceptionAccessories.Remove(conceptionAccessory); // lưu activity unlink Activity activity1 = new Activity("unlink", conception.ConceptionCode, "Conception", userID); Activity activity2 = new Activity("unlink", accessory.AccessoryID, "Accessory", userID); db.Activities.Add(activity1); db.Activities.Add(activity2); db.SaveChanges(); } catch (Exception e) { throw e; } }
public void CreateDemandedItems(Demand demand, List <Client_Accessory_DemandedQuantity_Comment> list, int conceptionPK) { try { foreach (var item in list) { Accessory accessory = (from a in db.Accessories where a.AccessoryID == item.AccessoryID select a).FirstOrDefault(); Conception conception = db.Conceptions.Find(conceptionPK); ConceptionAccessory conceptionAccessory = (from ca in db.ConceptionAccessories where ca.AccessoryPK == accessory.AccessoryPK && ca.ConceptionPK == conception.ConceptionPK select ca).FirstOrDefault(); if (accessory == null) { throw new Exception("PHỤ LIỆU " + accessory.AccessoryID + " KHÔNG TỒN TẠI!"); } if (conception == null) { throw new Exception("MÃ HÀNG " + conception.ConceptionCode + " KHÔNG TỒN TẠI!"); } if (conceptionAccessory == null) { throw new Exception("PHỤ LIỆU " + accessory.AccessoryID + " CHƯA ĐƯỢC GẮN CC!"); } DemandedItem demandedItem = new DemandedItem(item.DemandedQuantity, item.Comment, demand.DemandPK, accessory.AccessoryPK); db.DemandedItems.Add(demandedItem); } db.SaveChanges(); } catch (Exception e) { throw e; } }