Example #1
0
        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);
        }
Example #2
0
        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();
        }
Example #3
0
        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);
            }
        }
Example #4
0
        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"));
                }
            }
        }