private void CreateLoseReplenish(S_BorrowDetail detail) { var S_A_LoseReplenish = new S_A_LoseReplenish { ID = FormulaHelper.CreateGuid(), RelateDocID = detail.RelateID, State = LostReplenishState.Lose.ToString(), LoseCount = detail.LostNumber, ReplenishState = ReplenishState.Unreplenished.ToString(), LosePeople = detail.LostUserID, LosePeopleName = detail.LostUserName, LoseDept = detail.LostDeptID, LoseDeptName = detail.LostDeptName, Name = detail.Name, ConfigID = detail.ConfigID, SpaceID = detail.SpaceID, Quantity = detail.LostNumber, LoseDate = detail.LostDate, LoseExplain = detail.LostRemarks, RelateDocType = detail.DetailType, DocumentCode = detail.Code }; this.entities.Set <S_A_LoseReplenish>().Add(S_A_LoseReplenish); }
protected override void OnFlowEnd(T_B_BorrowApply entity, Workflow.Logic.Domain.S_WF_InsTaskExec taskExec, Workflow.Logic.Domain.S_WF_InsDefRouting routing) { var carIds = entity.T_B_BorrowApply_DetailInfo.Select(a => a.CarInfoID).ToArray(); var carItems = this.BusinessEntities.Set <S_CarInfo>().Where(a => carIds.Contains(a.ID)); foreach (var item in entity.T_B_BorrowApply_DetailInfo.ToList()) { var carItem = carItems.FirstOrDefault(a => a.ID == item.CarInfoID); if (carItem != null) { carItem.State = ItemState.Finish.ToString(); #region 创建S_BorrowDetail S_BorrowDetail borrowDetail = new S_BorrowDetail { ID = FormulaHelper.CreateGuid(), BorrowID = entity.ID, SpaceID = carItem.SpaceID, SpaceName = item.SpaceName, DataType = carItem.DataType, DetailType = string.IsNullOrEmpty(item.FileID) ? NodeType.Node.ToString() : NodeType.File.ToString(), RelateID = string.IsNullOrEmpty(item.FileID) ? item.NodeID : item.FileID, ConfigID = carItem.ConfigID, Name = item.Name, Code = item.Code, CreateUserID = entity.ApplyUser, CreateUserName = entity.ApplyUserName, CreateDeptID = entity.ApplyDept, CreateDeptName = entity.ApplyDeptName, CreateDate = DateTime.Now, ApplyNumber = item.ApplyAmount, BorrowState = BorrowDetailState.ToLend.ToString() }; this.BusinessEntities.Set <S_BorrowDetail>().Add(borrowDetail); #endregion } S_FileInfo file = new S_FileInfo(item.FileID, FormulaHelper.GetEntities <DocConfigEntities>().S_DOC_Space.FirstOrDefault(a => a.ID.Equals(item.SpaceID))); InventoryFO.CreateNewInventoryLedger(file, "", InventoryType.BorrowFile); } this.BusinessEntities.SaveChanges(); }
public void SynchS_BorrowDetail() { var entities = FormulaHelper.GetEntities <DocConstEntities>(); var list = this.T_Borrow_FileInfo.ToList(); foreach (var item in list) { S_BorrowDetail entity = new S_BorrowDetail(); entity.ID = FormulaHelper.CreateGuid(); entity.LendDate = this.LendDate; entity.LendUserID = this.CreateUserID; entity.LendUserName = this.CreateUserName; entity.Name = item.FileName; entity.SpaceID = item.SpaceID; if (!String.IsNullOrEmpty(item.FileID)) { entity.DetailType = NodeType.File.ToString(); entity.RelateID = item.FileID; } else { entity.DetailType = NodeType.Node.ToString(); entity.RelateID = item.NodeID; } entity.CreateUserID = this.CreateUserID; entity.CreateUserName = this.CreateUserName; entity.BorrowID = this.ID; entity.CreateDate = DateTime.Now; entity.ConfigID = item.ConfigID; entity.BorrowState = BorrowReturnState.Borrow.ToString(); if (!string.IsNullOrEmpty(this.LendDate.ToString())) { int borrowExpireDate = Convert.ToInt32(string.IsNullOrEmpty(System.Configuration.ConfigurationManager.AppSettings["DocBorrowExpireDays"]) ? 7 : Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["DocBorrowExpireDays"])); entity.BorrowExpireDate = Convert.ToDateTime(this.LendDate).AddDays(borrowExpireDate); } entities.Set <S_BorrowDetail>().Add(entity); AddBorrowLog(item); } }
private void Lend(Dictionary <string, object> row) { var lendNumber = 0; int.TryParse(row.GetValue("LendNumber"), out lendNumber); var id = row.GetValue("ID"); var borrowDetail = this.entities.Set <S_BorrowDetail>().FirstOrDefault(a => a.ID == id); var isNew = false; if (lendNumber > 0) { #region 部分借阅 if (borrowDetail == null) { if (string.IsNullOrEmpty(id)) { id = FormulaHelper.CreateGuid(); } borrowDetail = new S_BorrowDetail { ID = id, SpaceID = row.GetValue("SpaceID"), SpaceName = row.GetValue("SpaceName"), DataType = row.GetValue("DataType"), DetailType = row.GetValue("DetailType"), RelateID = row.GetValue("RelateID"), ConfigID = row.GetValue("ConfigID"), Name = row.GetValue("Name"), Code = row.GetValue("Code"), LendUserID = row.GetValue("LendUserID"), LendUserName = row.GetValue("LendUserName"), LendDeptID = row.GetValue("LendDeptID"), LendDeptName = row.GetValue("LendDeptName"), ParentID = row.GetValue("ParentID") }; var applyNumber = 0; int.TryParse(row.GetValue("ApplyNumber"), out applyNumber); borrowDetail.ApplyNumber = applyNumber; this.entities.Set <S_BorrowDetail>().Add(borrowDetail); isNew = true; var parent = this.entities.Set <S_BorrowDetail>().FirstOrDefault(a => a.ID == borrowDetail.ParentID); if (parent != null) { parent.HasChild = TrueOrFalse.True.ToString(); } } #endregion borrowDetail.LendUserID = row.GetValue("LendUserID"); borrowDetail.LendUserName = row.GetValue("LendUserName"); borrowDetail.LendDeptID = row.GetValue("LendDeptID"); borrowDetail.LendDeptName = row.GetValue("LendDeptName"); borrowDetail.LendNumber = (borrowDetail.LendNumber ?? 0) + lendNumber; if (borrowDetail.LendDate == null) { borrowDetail.LendDate = Convert.ToDateTime(row.GetValue("LendDate")); borrowDetail.BorrowExpireDate = Convert.ToDateTime(row.GetValue("BorrowExpireDate")); } borrowDetail.BorrowState = BorrowDetailState.ToReturn.ToString(); if (borrowDetail.DetailType == NodeType.Node.ToString()) { var space = DocConfigHelper.CreateConfigSpaceByID(borrowDetail.SpaceID); var nodeInfo = new S_NodeInfo(borrowDetail.RelateID, space); InventoryFO.CreateInventoryLedger(nodeInfo, InventoryType.Lend, 0, (0 - lendNumber), borrowDetail.ID, borrowDetail.LendUserID, borrowDetail.LendUserName, EnumBaseHelper.GetEnumDescription(InventoryType.Lend.GetType(), InventoryType.Lend.ToString()) + "份数:" + lendNumber + "份"); nodeInfo.DataEntity.SetValue("BorrowState", BorrowReturnState.Borrow.ToString()); nodeInfo.Save(false); if (isNew) { borrowDetail.Name = nodeInfo.CreateCarName(); } } else { var space = DocConfigHelper.CreateConfigSpaceByID(borrowDetail.SpaceID); var fileInfo = new S_FileInfo(borrowDetail.RelateID, space); InventoryFO.CreateInventoryLedger(fileInfo, InventoryType.Lend, 0, (0 - lendNumber), borrowDetail.ID, borrowDetail.LendUserID, borrowDetail.LendUserName, EnumBaseHelper.GetEnumDescription(InventoryType.Lend.GetType(), InventoryType.Lend.ToString()) + "份数:" + lendNumber + "份"); fileInfo.DataEntity.SetValue("BorrowState", BorrowReturnState.Borrow.ToString()); fileInfo.Save(false); if (isNew) { borrowDetail.Name = fileInfo.CreateCarName(); } } } else if (borrowDetail != null) { if (borrowDetail.LendDate == null) { borrowDetail.LendDate = Convert.ToDateTime(row.GetValue("LendDate")); } if (borrowDetail.BorrowExpireDate == null) { borrowDetail.BorrowExpireDate = Convert.ToDateTime(row.GetValue("BorrowExpireDate")); } } }