public void Deal(SkuContract contract) { var skuNameDbEntity = ConvertToSkuName(contract); //转换成t_prop对象 var facade = new T_PropFacade(); var skuFacade = new T_Sku_PropertyFacade(); var result = facade.GetIdByParentId(contract.SkuId); //获取子数据 foreach (var i in result) //把所有子数据都删除 { facade.Delete(new T_PropEntity { prop_id = i }); } var skuValueDbEntityList = ConvertToSkuValue(contract); //生成新的sku值的列表(t_prop表) var skuDbEntity = ConvertToSku(contract); //转换成T_Sku_Property表 switch (contract.Operation) { case OptEnum.Create: facade.Create(skuNameDbEntity); skuFacade.Create(skuDbEntity); foreach (var i in skuValueDbEntityList) { facade.Create(i); } break; case OptEnum.Update: facade.Update(skuNameDbEntity); skuFacade.Update(skuDbEntity); foreach (var i in skuValueDbEntityList) //创建子对象 { facade.Create(i); } break; case OptEnum.Delete: facade.Delete(skuNameDbEntity); skuFacade.Delete(skuDbEntity); break; } }
public void Deal(ItemContract contract) { var itemFacade = new T_ItemFacade(); var itemSkuPropFacade = new T_ItemSkuPropFacade(); var skuPriceFacade = new T_Sku_PriceFacade(); var skuFacade = new T_SkuFacade(); var itemDeliveryMappingFacade = new T_Item_Delivery_MappingFacade(); var itemPropertyFacade = new T_Item_PropertyFacade(); var propFacade = new T_PropFacade(); itemFacade.Delete(new T_ItemEntity { item_id = contract.ItemId }); itemSkuPropFacade.DeleteByItemId(contract.ItemId); skuPriceFacade.DeleteByItemId(contract.ItemId); skuFacade.DeleteByItemId(contract.ItemId); itemDeliveryMappingFacade.DeleteByItemId(contract.ItemId); switch (contract.Operation) { case OptEnum.Create: case OptEnum.Update: if (contract.ItemDetailList == null || contract.ItemDetailList.Count == 0) { return; } var itemEntity = ConvertToT_ItemEntity(contract); var itemSkuPropEntity = ConvertToT_ItemSkuPropEntity(contract); var skuPriceEntityList = ConvertToT_Sku_PriceEntityList(contract); var skuEntityList = ConvertToT_SkuEntityList(contract); var deliveryList = ConvertToT_Item_Delivery_MappingEntityList(contract); itemFacade.Create(itemEntity); if (itemSkuPropEntity != null) { itemSkuPropFacade.Create(itemSkuPropEntity); } foreach (var i in skuPriceEntityList) { skuPriceFacade.Create(i); } foreach (var i in skuEntityList) { skuFacade.Create(i); } foreach (var i in deliveryList) { itemDeliveryMappingFacade.Create(i); } if (contract.ItemId.StartsWith("S_")) { //删除库存 itemPropertyFacade.DeleteByItemId(contract.ItemId); //添加库存 var inventory = new T_Item_PropertyEntity { item_property_id = Guid.NewGuid().ToString("N"), item_id = contract.ItemId, prop_id = propFacade.GetIdByCode("Qty"), prop_value = "10000000", status = "1", create_time = contract.CreateTime == null ? null : contract.CreateTime.Value.ToString("yyyy-MM-dd hh:mm:ss"), modify_time = contract.ModifyTime == null ? null : contract.ModifyTime.Value.ToString("yyyy-MM-dd hh:mm:ss") }; itemPropertyFacade.Create(inventory); } break; } }