/// <summary> /// 根据 entityType , 返回对应的有关系的 FBEntity的集合, /// </summary> /// <param name="fbEntity"></param> /// <param name="entityType">有关系的对象集合类型</param> /// <returns>如果不存在,将会创建相应的集合</returns> private ObservableCollection<FBEntity> GetRelationFBEntities(FBEntity fbEntity, string entityType) { ObservableCollection<FBEntity> listFBEntities = null; try { RelationManyEntity rmEntity = fbEntity.CollectionEntity.FirstOrDefault(item => { return item.EntityType == entityType; }); if (rmEntity == null) { rmEntity = new RelationManyEntity(); rmEntity.EntityType = entityType; rmEntity.FBEntities = new ObservableCollection<FBEntity>(); fbEntity.CollectionEntity.Add(rmEntity); } listFBEntities = rmEntity.FBEntities; } catch (Exception ex) { } return listFBEntities; }
protected bool CheckSameSubject(FBEntity entity) { var listDetail = this.OrderEntity.GetRelationFBEntities(typeof(T_FB_BORROWAPPLYDETAIL).Name).ToList(); var entityDetail = listDetail.FirstOrDefault(item => { string str1 = item.GetObjValue("Entity.T_FB_SUBJECT.SUBJECTID").ToString(); string str2 = entity.GetObjValue("Entity.T_FB_SUBJECT.SUBJECTID").ToString(); return (str1 == str2) && (!string.IsNullOrEmpty(str1)); }); return entityDetail != null; }
public static void LoadComments(FBEntity Item, ListBox lstComments, Button btnCommentsMore, bool nextpage) { string lastid = null; var offset = 0; if (nextpage) { var current = lstComments.ItemsSource as VirtualizedCollection<Comment>; if (current != null) { lastid = current.Last().Id; offset = current.Count; } } LoadingManager.Start(); Item.GetComments(list => { ThreadHelper.RunOnUI(() => { var loadmoreenabled = nextpage ? list.Any() : list.Count >= FBDataAccess.LIST_LIMIT_SIZE; if (lastid.HasValue()) { var current = lstComments.ItemsSource as VirtualizedCollection<Comment>; if (current != null) { list = new VirtualizedCollection<Comment>(current.Concat(list).Distinct(a => a.Id)); } } lstComments.ItemsSource = list; btnCommentsMore.Visibility = loadmoreenabled.ToVisibility(); btnCommentsMore.IsEnabled = true; }); LoadingManager.Stop(); }, lastid, offset); }
//自定义汇总 public bool CreateDeptBudgetSumSetMaster(FBEntity fbMaster) { bool bRes = false; T_FB_DEPTBUDGETSUMMASTER Master = fbMaster.Entity as T_FB_DEPTBUDGETSUMMASTER; foreach (var entity in Master.T_FB_DEPTBUDGETSUMDETAIL) { T_FB_DEPTBUDGETSUMDETAIL detail = new T_FB_DEPTBUDGETSUMDETAIL(); detail.DEPTBUDGETSUMDETAILID = Guid.NewGuid().ToString(); detail.CREATEUSERID = SYSTEM_USER_ID; detail.CREATEDATE = System.DateTime.Now; detail.UPDATEUSERID = SYSTEM_USER_ID; detail.UPDATEDATE = System.DateTime.Now; detail.T_FB_DEPTBUDGETAPPLYMASTER = entity.T_FB_DEPTBUDGETAPPLYMASTER; FBEntity fbDetail = detail.ToFBEntity(); fbDetail.FBEntityState = FBEntityState.Added; List <FBEntity> fbSumMasterlist = new List <FBEntity>(); //查找汇总节点设置 有则新增汇总记录 FBEntity fbSumMaster = new FBEntity(); QueryExpression qeDetail = QueryExpression.Equal(FieldName.OwnerCompanyID, entity.T_FB_DEPTBUDGETAPPLYMASTER.OWNERCOMPANYID); qeDetail.QueryType = "T_FB_SUMSETTINGSDETAIL"; QueryExpression qeDetailEdits = QueryExpression.Equal(FieldName.EditStates, "1"); qeDetail.RelatedExpression = qeDetailEdits; T_FB_SUMSETTINGSDETAIL detailset = GetEntities <T_FB_SUMSETTINGSDETAIL>(qeDetail).FirstOrDefault(); T_FB_SUMSETTINGSMASTER masterset = null; if (detailset != null) { QueryExpression qeMaster = QueryExpression.Equal("SUMSETTINGSMASTERID", detailset.T_FB_SUMSETTINGSMASTERReference.EntityKey.EntityKeyValues[0].Value.ToString()); qeMaster.QueryType = "T_FB_SUMSETTINGSMASTER"; QueryExpression qeMasterEdits = QueryExpression.Equal(FieldName.EditStates, "1"); qeMaster.RelatedExpression = qeMasterEdits; masterset = GetEntities <T_FB_SUMSETTINGSMASTER>(qeMaster).FirstOrDefault(); if (masterset != null) { fbSumMaster = GetDeptBudgetSumSet(entity, masterset); detail.T_FB_DEPTBUDGETSUMMASTER = fbSumMaster.Entity as T_FB_DEPTBUDGETSUMMASTER; fbSumMaster.AddFBEntities <T_FB_DEPTBUDGETSUMDETAIL>(new List <FBEntity> { fbDetail }); fbSumMasterlist.Add(fbSumMaster); Master.PARENTID = detail.T_FB_DEPTBUDGETSUMMASTER.DEPTBUDGETSUMMASTERID; Master.SUMSETTINGSMASTERID = masterset.SUMSETTINGSMASTERID; Master.SUMLEVEL = 1; //0:代表当前汇总单不走自定义汇总流程;1:代表当前汇总单走自定义汇总流程 fbMaster.Entity = Master; fbMaster.FBEntityState = FBEntityState.Modified; fbSumMasterlist.Add(fbMaster); this.FBEntityBLLSaveListNoTrans(fbSumMasterlist); // this.InnerSave(fbSumMaster); } } } bRes = true; return(bRes); }
void WpService_GetTripSubjectCompleted(object sender, GetTripSubjectCompletedEventArgs e) { if (e.Error == null) { if (e.Result == null) { //OnQueryCompleted(null); return; } if (e.Result.Count == 0) { //OnQueryCompleted(null); return; } List<FBEntity> listall = new List<FBEntity>(); foreach (var item in e.Result) { if (item.SubjectName == "业务差旅费") { continue; } T_FB_EXTENSIONORDERDETAIL detail = new T_FB_EXTENSIONORDERDETAIL(); detail.EXTENSIONORDERDETAILID = Guid.NewGuid().ToString(); SMT.Saas.Tools.FBServiceWS.T_FB_SUBJECT subject = new SMT.Saas.Tools.FBServiceWS.T_FB_SUBJECT(); subject.SUBJECTID = item.SubjectID; subject.SUBJECTCODE = item.SubjectCode; subject.SUBJECTNAME = item.SubjectName; subject.OWNERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; subject.OWNERPOSTID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostID; subject.OWNERDEPARTMENTID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].DepartmentID; subject.OWNERCOMPANYID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyID; detail.T_FB_SUBJECT = subject; detail.USABLEMONEY = item.UseMoney; detail.APPLIEDMONEY = item.PaidMoney; if (detail.T_FB_EXTENSIONALORDERReference == null) { } FBEntity queryEntity = new FBEntity(); queryEntity = ToFBEntity(detail); listall.Add(queryEntity); //detail.T_F } OriginalItems = listall; OnGetUnSelectedItems(); } else { ComfirmWindow.ConfirmationBoxs(Utility.GetResourceStr("TIPS"), e.Error.Message.ToString(), Utility.GetResourceStr("CONFIRM"), MessageIcon.Exclamation); return; } }
public void Save(FBEntity fbEntity) { SetVisitUser(fbEntity); CurrentUserPost user = new CurrentUserPost(); user.EmployeeName = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeName; user.EmployeeID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; user.PostName = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostName; user.DepartmentName = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].DepartmentName; user.CompanyName = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyName; FBService.SaveAsync(fbEntity, user); }
public bool DeleteFBEntity(FBEntity fbEntity) { return(entityHelper.DeleteFBEntity(fbEntity)); }
private FBEntity ToFBEntity(EntityObject t) { FBEntity fbEntity = new FBEntity(); fbEntity.Entity = t; fbEntity.CollectionEntity = new ObservableCollection<RelationManyEntity>(); fbEntity.ReferencedEntity = new ObservableCollection<RelationOneEntity>(); return fbEntity; }
private FBEntity GetModifiedFBEntity(FBEntity fbEntity) { FBEntity newEntity = ToFBEntity(fbEntity.Entity); newEntity.FBEntityState = fbEntity.FBEntityState; foreach (RelationManyEntity rme in fbEntity.CollectionEntity) { RelationManyEntity rmeNew = new RelationManyEntity(); rmeNew.EntityType = rme.EntityType; rmeNew.FBEntities = new ObservableCollection<FBEntity>(); rme.FBEntities.ToList().ForEach(item => { if (item.FBEntityState != FBEntityState.Unchanged) { if (item.FBEntityState == FBEntityState.Added) { this.ExtensionalOrderFBEntity.CopyTo(item, "Entity.CREATEUSERID"); } this.ExtensionalOrderFBEntity.CopyTo(item, "Entity.UPDATEUSERID"); rmeNew.FBEntities.Add(item); } }); newEntity.CollectionEntity.Add(rmeNew); } if (DeleteList.Count > 0) { RelationManyEntity rmeDel = new RelationManyEntity(); rmeDel.EntityType = "DELETE_ENTITYTYPE"; rmeDel.FBEntities = DeleteList; newEntity.CollectionEntity.Add(rmeDel); } return newEntity; }
public void Save(OrderEntity orderEntity) { FBEntity newEntity = orderEntity.GetModifiedFBEntity(); Save(newEntity); }
public void Submit(FBEntity saveFBEntity) { this.SaveFBEntity = saveFBEntity; InitAudit(AuditOperation.Add); base.Submit(); }
private void Save() { ObservableCollection <FBEntity> listOfFBEntity = new ObservableCollection <FBEntity>(); for (int i = 0; i < EntityList.Count; i++) { OrderEntity item = EntityList[i]; FBEntity fbEntitySave = item.GetModifiedFBEntity(); fbEntitySave.CollectionEntity[0].FBEntities.ToList().ForEach(fbEntity => { T_FB_SUBJECTCOMPANY sc = fbEntity.Entity as T_FB_SUBJECTCOMPANY; if (fbEntity.Entity.EntityKey.EntityKeyValues == null) { fbEntity.FBEntityState = FBEntityState.Added; fbEntity.Entity.EntityKey = null; fbEntity.SetObjValue("Entity.SUBJECTCOMPANYID", Guid.NewGuid().ToString()); fbEntity.SetObjValue("Entity.CREATECOMPANYID", item.LoginUser.Company.Value); fbEntity.SetObjValue("Entity.CREATECOMPANYNAME", item.LoginUser.Company.Text); fbEntity.SetObjValue("Entity.CREATEDEPARTMENTID", item.LoginUser.Department.Value); fbEntity.SetObjValue("Entity.CREATEDEPARTMENTNAME", item.LoginUser.Department.Text); fbEntity.SetObjValue("Entity.CREATEPOSTID", item.LoginUser.Post.Value); fbEntity.SetObjValue("Entity.CREATEPOSTNAME", item.LoginUser.Post.Text); fbEntity.SetObjValue("Entity.CREATEUSERID", item.LoginUser.Value); fbEntity.SetObjValue("Entity.CREATEUSERNAME", item.LoginUser.Text); fbEntity.SetObjValue("Entity.OWNERCOMPANYID", item.GetObjValue("Entity.OWNERCOMPANYID")); fbEntity.SetObjValue("Entity.OWNERCOMPANYNAME", item.GetObjValue("Entity.OWNERCOMPANYNAME")); fbEntity.SetObjValue("Entity.OWNERDEPARTMENTID", item.LoginUser.Department.Value); fbEntity.SetObjValue("Entity.OWNERDEPARTMENTNAME", item.LoginUser.Department.Text); fbEntity.SetObjValue("Entity.OWNERPOSTID", item.LoginUser.Post.Value); fbEntity.SetObjValue("Entity.OWNERPOSTNAME", item.LoginUser.Post.Text); fbEntity.SetObjValue("Entity.OWNERID", item.LoginUser.Value); fbEntity.SetObjValue("Entity.OWNERNAME", item.LoginUser.Text); fbEntity.SetObjValue("Entity.EDITSTATES", decimal.Parse("1")); } else { if (sc.EDITSTATES != 1) { fbEntity.FBEntityState = FBEntityState.Detached; } } fbEntity.SetObjValue("Entity.UPDATEUSERID", item.LoginUser.Value); fbEntity.SetObjValue("Entity.UPDATEUSERNAME", item.LoginUser.Text); sc.T_FB_SUBJECTReference.EntityKey = sc.T_FB_SUBJECT.EntityKey; sc.T_FB_SUBJECT = null; sc.T_FB_SUBJECTDEPTMENT = new ObservableCollection <T_FB_SUBJECTDEPTMENT>(); listOfFBEntity.Add(fbEntity); }); } if (listOfFBEntity.Count > 0) { this.CurrentOrderEntity = new OrderEntity(typeof(VirtualCompany)); this.orderEntityService.SaveList(listOfFBEntity); } else { CloseProcess(); } }
private void OnEntityPropertyChanged(FBEntity fbEntity) { if (fbEntity.FBEntityState == FBEntityState.Unchanged) { fbEntity.FBEntityState = FBEntityState.Modified; } }
private void UnRegisterFBEntity(FBEntity fbEntity) { fbEntity.Entity.PropertyChanged -= new System.ComponentModel.PropertyChangedEventHandler(Entity_PropertyChanged); }
public FBEntity GetDeptBudgetSumSet(T_FB_DEPTBUDGETSUMDETAIL entity, T_FB_SUMSETTINGSMASTER masterset) { FBEntity result = null; DateTime budgetMonth = entity.T_FB_DEPTBUDGETAPPLYMASTER.BUDGETARYMONTH; QueryExpression qe = QueryExpression.Equal(FieldName_BudgetMonth, budgetMonth.ToString("yyyy-MM-dd")); QueryExpression qeStates = QueryExpression.Equal(FieldName.CheckStates, ((int)CheckStates.UnSubmit).ToString()); QueryExpression qeCompany = QueryExpression.Equal(FieldName.OwnerCompanyID, masterset.OWNERCOMPANYID); // QueryExpression qeSumsettings = QueryExpression.Equal("SUMSETTINGSMASTERID", masterset.SUMSETTINGSMASTERID).And("PARENTID", entity.T_FB_DEPTBUDGETSUMMASTER.PARENTID); qe.RelatedExpression = qeStates; qeStates.RelatedExpression = qeCompany; // qeCompany.RelatedExpression = qeSumsettings; T_FB_DEPTBUDGETSUMMASTER sumMaster = this.InnerGetEntities <T_FB_DEPTBUDGETSUMMASTER>(qe).FirstOrDefault(); if (sumMaster == null) { sumMaster = new T_FB_DEPTBUDGETSUMMASTER(); sumMaster.DEPTBUDGETSUMMASTERID = Guid.NewGuid().ToString(); sumMaster.DEPTBUDGETSUMMASTERCODE = "自动生成"; sumMaster.CREATEUSERID = SYSTEM_USER_ID; sumMaster.CREATEUSERNAME = "******"; sumMaster.CREATEDATE = System.DateTime.Now; sumMaster.UPDATEUSERID = SYSTEM_USER_ID; sumMaster.UPDATEDATE = System.DateTime.Now; sumMaster.BUDGETARYMONTH = budgetMonth; sumMaster.CREATECOMPANYID = SYSTEM_USER_ID; sumMaster.CREATECOMPANYNAME = "系统生成"; sumMaster.CREATEDEPARTMENTID = SYSTEM_USER_ID; sumMaster.CREATEDEPARTMENTNAME = "系统生成"; sumMaster.CREATEPOSTID = SYSTEM_USER_ID; sumMaster.CREATEPOSTNAME = "系统生成"; sumMaster.OWNERCOMPANYID = masterset.OWNERCOMPANYID; sumMaster.OWNERCOMPANYNAME = masterset.OWNERCOMPANYNAME; sumMaster.OWNERDEPARTMENTID = masterset.OWNERDEPARTMENTID; sumMaster.OWNERDEPARTMENTNAME = masterset.OWNERDEPARTMENTNAME; sumMaster.OWNERPOSTID = masterset.OWNERPOSTID; sumMaster.OWNERPOSTNAME = masterset.OWNERPOSTNAME; sumMaster.OWNERID = masterset.OWNERID; sumMaster.OWNERNAME = masterset.OWNERNAME; sumMaster.SUMSETTINGSMASTERID = masterset.SUMSETTINGSMASTERID; sumMaster.SUMLEVEL = 1; //0:代表当前汇总单不走自定义汇总流程;1:代表当前汇总单走自定义汇总流程 sumMaster.CHECKSTATES = (int)CheckStates.UnSubmit; sumMaster.EDITSTATES = (int)EditStates.Actived; result = sumMaster.ToFBEntity(); result.FBEntityState = FBEntityState.Added; } else { result = sumMaster.ToFBEntity(); result.FBEntityState = FBEntityState.Modified; } return(result); }
public SavingEventArgs(FBEntity fbEntity) { this.SaveFBEntity = fbEntity; }
public void AuditFBEntity(FBEntity fbEntity, CheckStates checkStates) { FBService.AuditFBEntityAsync(fbEntity, checkStates); }
void WpService_GetTripSubjectCompleted(object sender, GetTripSubjectCompletedEventArgs e) { if (e.Error == null) { if (e.Result == null) { OnQueryCompleted(null); return; } if (e.Result.Count == 0) { OnQueryCompleted(null); return; } T_FB_EXTENSIONALORDER Extentity = new T_FB_EXTENSIONALORDER(); Extentity.T_FB_EXTENSIONORDERDETAIL = new ObservableCollection<T_FB_EXTENSIONORDERDETAIL>(); //特殊科目出差报销业务差旅费 RelationManyEntity TravelEntity = new RelationManyEntity(); TravelEntity.FBEntities = new ObservableCollection<FBEntity>(); TravelEntity.EntityType = "T_FB_EXTENSIONORDERDETAIL_Travel"; //其他在报销控件里面选择的费用科目 RelationManyEntity chargeEntity = new RelationManyEntity(); chargeEntity.FBEntities = new ObservableCollection<FBEntity>(); chargeEntity.EntityType = "T_FB_EXTENSIONORDERDETAIL"; foreach(var item in e.Result) { T_FB_EXTENSIONORDERDETAIL detail = new T_FB_EXTENSIONORDERDETAIL(); detail.EXTENSIONORDERDETAILID = Guid.NewGuid().ToString(); SMT.Saas.Tools.FBServiceWS.T_FB_SUBJECT subject=new SMT.Saas.Tools.FBServiceWS.T_FB_SUBJECT(); if(string.IsNullOrEmpty(item.NormID)) { MessageBox.Show("工作计划获取科目Id失败,请联系管理员!"); } subject.SUBJECTID = item.NormID; subject.SUBJECTCODE = item.SubjectCode; subject.SUBJECTNAME = item.SubjectName; subject.OWNERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; subject.OWNERPOSTID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostID; subject.OWNERDEPARTMENTID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].DepartmentID; subject.OWNERCOMPANYID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyID; detail.T_FB_SUBJECT = subject; detail.USABLEMONEY = item.UseMoney; detail.APPLIEDMONEY = item.PaidMoney; detail.REMARK = item.NormName; Extentity.T_FB_EXTENSIONORDERDETAIL.Add(detail); if(item.SubjectName=="业务差旅费") { TravelEntity.FBEntities.Add(ToFBEntity(detail)); }else { chargeEntity.FBEntities.Add(ToFBEntity(detail)); } //detail.T_F } FBEntity queryEntity = new FBEntity(); queryEntity = ToFBEntity(Extentity); queryEntity.CollectionEntity.Add(TravelEntity); queryEntity.CollectionEntity.Add(chargeEntity); OnQueryCompleted(queryEntity); } else { ComfirmWindow.ConfirmationBoxs(Utility.GetResourceStr("TIPS"), e.Error.Message.ToString(), Utility.GetResourceStr("CONFIRM"), MessageIcon.Exclamation); return; } }
/// <summary> /// 导入借款单 /// Creator:安凯航 /// 日期:2011年5月30日 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void btnImportBorrowData_Click(object sender, RoutedEventArgs e) { //导入时间 DateTime createTime = DateTime.Now; OpenFileDialog dialog = new OpenFileDialog() { Multiselect = false, Filter = "Excel 2007-2010 File(*.xlsx)|*.xlsx" }; bool?userClickedOK = dialog.ShowDialog(); // Process input if the user clicked OK. if (userClickedOK != true) { return; } try { //待保存数据列表 List <OrderEntity> orders = new List <OrderEntity>(); #region 读取Excel文件 XLSXReader reader = new XLSXReader(dialog.File); List <string> subItems = reader.GetListSubItems(); var maseters = reader.GetData(subItems[0]); var listm = maseters.ToDataSource(); var details = reader.GetData(subItems[1]); var listd = details.ToDataSource(); List <dynamic> masterList = new List <dynamic>(); foreach (var item in listm) { dynamic d = item; masterList.Add(d); } //排除第一行信息 masterList.Remove(masterList.First()); List <dynamic> detailList = new List <dynamic>(); foreach (var item in listd) { dynamic d = item; detailList.Add(d); } //排除第一行信息 detailList.Remove(detailList.First()); #endregion #region 添加主表 List <T_FB_BORROWAPPLYMASTER> import = new List <T_FB_BORROWAPPLYMASTER>(); foreach (var item in masterList) { //构造OrderEntity数据 OrderEntity oe = new OrderEntity(typeof(T_FB_BORROWAPPLYMASTER)); orders.Add(oe); T_FB_BORROWAPPLYMASTER t = oe.FBEntity.Entity as T_FB_BORROWAPPLYMASTER; t.BORROWAPPLYMASTERID = Guid.NewGuid().ToString(); t.BORROWAPPLYMASTERCODE = item.单据号; if (item.借款类型 == "普通借款") { t.REPAYTYPE = 1; } else if (item.借款类型 == "备用金借款") { t.REPAYTYPE = 2; } else if (item.借款类型 == "专项借款") { t.REPAYTYPE = 3; } else { continue; } t.REMARK = item.备注; import.Add(t); } #endregion #region 添加子表 foreach (var item in detailList) { OrderEntity oe = orders.FirstOrDefault(oen => { T_FB_BORROWAPPLYMASTER bm = oen.FBEntity.Entity as T_FB_BORROWAPPLYMASTER; if (bm.BORROWAPPLYMASTERCODE == item.单据号) { return(true); } else { return(false); } }); if (oe == null) { string message = "导入的借款单明细借款单号为\"" + item.单据号 + "\"的明细,没有相应的借款单对应.请检查借款Excel中是否有此借款单的数据"; throw new InvalidOperationException(message); } FBEntity fbdetail = oe.CreateFBEntity <T_FB_BORROWAPPLYDETAIL>(); T_FB_BORROWAPPLYDETAIL d = fbdetail.Entity as T_FB_BORROWAPPLYDETAIL; d.BORROWAPPLYDETAILID = Guid.NewGuid().ToString(); d.REMARK = item.摘要; d.BORROWMONEY = Convert.ToDecimal(item.借款金额); d.UNREPAYMONEY = Convert.ToDecimal(item.未还款金额); d.T_FB_SUBJECT = d.T_FB_SUBJECT ?? new T_FB_SUBJECT(); d.T_FB_SUBJECT.SUBJECTID = item.借款科目; d.CREATEDATE = createTime; d.CREATEUSERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; d.UPDATEDATE = createTime; d.UPDATEUSERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; } #endregion //服务 OrderEntityService service = new OrderEntityService(); #region 得到科目信息 QueryExpression reExp = QueryExpressionHelper.Equal("OWNERID", SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID); QueryExpression exp = QueryExpressionHelper.Equal("OWNERPOSTID", SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostID); exp.QueryType = "T_FB_BORROWAPPLYDETAIL"; exp.RelatedExpression = reExp; exp.IsUnCheckRight = true; #endregion #region 获取申请人信息 ObservableCollection <string> numbers = new ObservableCollection <string>(); masterList.ForEach(item => numbers.Add(item.申请人身份证号));//拿到所有身份证号 SMT.Saas.Tools.PersonnelWS.PersonnelServiceClient client = new Saas.Tools.PersonnelWS.PersonnelServiceClient(); client.GetEmployeesByIdnumberAsync(numbers); #endregion #region 先获取申请人信息,待申请人信息填充完毕之后进行下一步操作 client.GetEmployeesByIdnumberCompleted += new EventHandler <Saas.Tools.PersonnelWS.GetEmployeesByIdnumberCompletedEventArgs>((oo, ee) => { if (ee.Error == null) { string message = null; try { masterList.ForEach(m => { //添加owner和creator SMT.Saas.Tools.PersonnelWS.V_EMPLOYEEVIEW userview = null; try { userview = ee.Result.First(t => t.IDNUMBER == m.申请人身份证号); } catch (InvalidOperationException ex) { message = ex.Message + "\n" + "在系统中找不到身份证号为\"" + m.申请人身份证号 + "\"的,员工信息.也可能是您没有相应的权限."; throw new InvalidOperationException(message); } T_FB_BORROWAPPLYMASTER master = null; try { master = import.First(t => t.BORROWAPPLYMASTERCODE == m.单据号); } catch (InvalidOperationException ex) { message = ex.Message + "\n" + "导入的借款单明细借款单号为\"" + m.单据号 + "\"的明细,没有相应的借款单对应.请检查借款Excel中是否有此借款单的数据"; throw new InvalidOperationException(message); } master.OWNERCOMPANYID = userview.OWNERCOMPANYID; master.OWNERCOMPANYNAME = userview.OWNERCOMPANYID; master.OWNERDEPARTMENTID = userview.OWNERDEPARTMENTID; master.OWNERID = userview.EMPLOYEEID; master.OWNERPOSTID = userview.OWNERPOSTID; master.CREATECOMPANYID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyID; master.CREATECOMPANYNAME = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyName; master.CREATEDEPARTMENTID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].DepartmentID; master.CREATEDEPARTMENTNAME = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].DepartmentName; master.CREATEPOSTID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostID; master.CREATEPOSTNAME = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostName; master.CREATEUSERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; master.CREATEUSERNAME = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeName; master.CREATEDATE = createTime; master.UPDATEUSERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; master.UPDATEUSERNAME = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeName; master.UPDATEDATE = createTime; }); //填充完申请人信息之后开始填充科目信息 service.QueryFBEntities(exp); } catch (Exception ex) { SMT.SaaS.FrameworkUI.ChildWidow.ComfirmWindow.ConfirmationBoxs("导入出错", ex.Message, "确定", MessageIcon.Exclamation); } } }); #endregion #region 填充完申请人信息之后开始填充科目信息 service.QueryFBEntitiesCompleted += new EventHandler <QueryFBEntitiesCompletedEventArgs>((o, args) => { if (args.Error == null) { //构造明细科目及账务信息 string message = null; try { import.ForEach(m => { OrderEntity oe = orders.FirstOrDefault(oen => { T_FB_BORROWAPPLYMASTER bm = oen.FBEntity.Entity as T_FB_BORROWAPPLYMASTER; if (bm.BORROWAPPLYMASTERCODE == m.BORROWAPPLYMASTERCODE) { return(true); } else { return(false); } }); var dlist = oe.GetRelationFBEntities("T_FB_BORROWAPPLYDETAIL"); List <T_FB_BORROWAPPLYDETAIL> detailslist = new List <T_FB_BORROWAPPLYDETAIL>(); dlist.ForEach(ddd => { detailslist.Add(ddd.Entity as T_FB_BORROWAPPLYDETAIL); }); detailslist.ForEach(d => { FBEntity en = null; try { en = args.Result.First(a => ((T_FB_BORROWAPPLYDETAIL)a.Entity).T_FB_SUBJECT.SUBJECTCODE == d.T_FB_SUBJECT.SUBJECTID); } catch (InvalidOperationException ex) { message = ex.Message + "\n" + "导入的借款单明细中,在系统中找不到ID为\"" + d.T_FB_SUBJECT.SUBJECTID + "\"的科目,也可能是您没有相应的权限"; throw new InvalidOperationException(message); } T_FB_BORROWAPPLYDETAIL t = en.Entity as T_FB_BORROWAPPLYDETAIL; if (t != null) { t.T_FB_SUBJECT.T_FB_BORROWAPPLYDETAIL.Clear(); d.T_FB_SUBJECT = t.T_FB_SUBJECT; d.CHARGETYPE = t.CHARGETYPE; d.USABLEMONEY = t.USABLEMONEY; #region 清理科目信息中的无用数据 t.T_FB_SUBJECT.T_FB_BORROWAPPLYDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_BUDGETACCOUNT.Clear(); t.T_FB_SUBJECT.T_FB_BUDGETCHECK.Clear(); t.T_FB_SUBJECT.T_FB_CHARGEAPPLYDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_COMPANYBUDGETAPPLYDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_COMPANYBUDGETMODDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_COMPANYBUDGETMODDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_COMPANYTRANSFERDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_DEPTBUDGETADDDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_DEPTBUDGETAPPLYDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_DEPTTRANSFERDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_EXTENSIONORDERDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_PERSONBUDGETADDDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_PERSONBUDGETAPPLYDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_PERSONMONEYASSIGNDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_REPAYAPPLYDETAIL.Clear(); t.T_FB_SUBJECT.T_FB_SUBJECTCOMPANY.Clear(); t.T_FB_SUBJECT.T_FB_SUBJECTDEPTMENT.Clear(); t.T_FB_SUBJECT.T_FB_SUBJECTPOST.Clear(); t.T_FB_SUBJECT.T_FB_TRAVELEXPAPPLYDETAIL.Clear(); #endregion } }); }); //保存 service.SaveList(orders); } catch (Exception ex) { SMT.SaaS.FrameworkUI.ChildWidow.ComfirmWindow.ConfirmationBoxs("导入出错", ex.Message, "确定", MessageIcon.Exclamation); } } }); #endregion #region 所有信息构造完成之后保存数据 service.SaveListCompleted += new EventHandler <ActionCompletedEventArgs <bool> >((s, evgs) => { if (evgs.Result) { SMT.SaaS.FrameworkUI.ChildWidow.ComfirmWindow.ConfirmationBox("导入成功", "导入成功", "确定"); } else { SMT.SaaS.FrameworkUI.ChildWidow.ComfirmWindow.ConfirmationBox("导入失败", "导入失败", "确定"); } }); #endregion } catch (Exception ex) { SMT.SaaS.FrameworkUI.ChildWidow.ComfirmWindow.ConfirmationBoxs("导入出错", ex.Message, "确定", MessageIcon.Exclamation); } }
private void OnQueryCompleted(FBEntity queryEntity) { try { if (queryEntity == null) // 新增 { this.ExtensionalOrder.EXTENSIONALORDERID = Guid.NewGuid().ToString(); this.ExtensionalOrderFBEntity = ToFBEntity(this.ExtensionalOrder); this.ExtensionalOrderFBEntity.FBEntityState = FBEntityState.Added; this.ExtensionalOrder.APPLYTYPE = 1; this.ExtensionalOrder.PAYTARGET = 1; } else { this.ExtensionalOrderFBEntity = queryEntity; var curEntity = this.ExtensionalOrderFBEntity.Entity as T_FB_EXTENSIONALORDER; if (this.ExtensionalOrderFBEntity.FBEntityState == FBEntityState.Added) { curEntity.CREATECOMPANYID = this.ExtensionalOrder.CREATECOMPANYID; curEntity.CREATECOMPANYNAME = this.ExtensionalOrder.CREATECOMPANYNAME; curEntity.CREATEDEPARTMENTID = this.ExtensionalOrder.CREATEDEPARTMENTID; curEntity.CREATEDEPARTMENTNAME = this.ExtensionalOrder.CREATEDEPARTMENTNAME; curEntity.CREATEPOSTID = this.ExtensionalOrder.CREATEPOSTID; curEntity.CREATEPOSTNAME = this.ExtensionalOrder.CREATEPOSTNAME; curEntity.CREATEUSERID = this.ExtensionalOrder.CREATEUSERID; curEntity.CREATEUSERNAME = this.ExtensionalOrder.CREATEUSERNAME; curEntity.OWNERCOMPANYID = this.ExtensionalOrder.OWNERCOMPANYID; curEntity.OWNERCOMPANYNAME = this.ExtensionalOrder.OWNERCOMPANYNAME; curEntity.OWNERDEPARTMENTID = this.ExtensionalOrder.OWNERDEPARTMENTID; curEntity.OWNERDEPARTMENTNAME = this.ExtensionalOrder.OWNERDEPARTMENTNAME; curEntity.OWNERPOSTID = this.ExtensionalOrder.OWNERPOSTID; curEntity.OWNERPOSTNAME = this.ExtensionalOrder.OWNERPOSTNAME; curEntity.OWNERID = this.ExtensionalOrder.OWNERID; curEntity.OWNERNAME = this.ExtensionalOrder.OWNERNAME; curEntity.UPDATEUSERID = this.ExtensionalOrder.UPDATEUSERID; curEntity.UPDATEUSERNAME = this.ExtensionalOrder.UPDATEUSERNAME; } this.ExtensionalOrder = curEntity; } this.DeleteList = GetRelationFBEntities(this.ExtensionalOrderFBEntity, "_Delete"); this.ListExtOrderType = GetRelationFBEntities(this.ExtensionalOrderFBEntity, typeof(T_FB_EXTENSIONALTYPE).Name); this.ExtensionalOrderDetailFBEntityList = GetRelationFBEntities(this.ExtensionalOrderFBEntity, typeof(T_FB_EXTENSIONORDERDETAIL).Name); var masterList = GetRelationFBEntities(this.ExtensionalOrderFBEntity, typeof(T_FB_CHARGEAPPLYMASTER).Name); var masterFBEntity = masterList.FirstOrDefault(); if (masterFBEntity != null) { ChargeApplyMaster = masterFBEntity.Entity as T_FB_CHARGEAPPLYMASTER; this.ListBorrowDetail = ChargeApplyMaster.T_FB_CHARGEAPPLYREPAYDETAIL; } else { ChargeApplyMaster = new T_FB_CHARGEAPPLYMASTER(); this.ListBorrowDetail = new ObservableCollection <T_FB_CHARGEAPPLYREPAYDETAIL>(); } HandleSpecialSubject(); this.CountTotalMoney(); this.ExtensionalOrderDetailFBEntityList.CollectionChanged += new NotifyCollectionChangedEventHandler(FBEntities_CollectionChanged); this.ExtensionalOrderDetailFBEntityList.ForEach(detail => { this.RegisterFBEntity(detail); }); if (ListExtOrderType.Count() > 0) { (this.ExtensionalOrderFBEntity.Entity as T_FB_EXTENSIONALORDER).T_FB_EXTENSIONALTYPE = ListExtOrderType.FirstOrDefault().Entity as T_FB_EXTENSIONALTYPE; } QueryDataCompletedInitControl(); if (InitDataComplete != null) { List <string> messages = new List <string>(); if (this.TravelSubject != null && this.TravelSubject.SpecialListDetail.Count == 0) { string msg = "当前申请人没有出差的预算额度"; if (!IsFromFB) { msg = "工作计划出差单:" + msg; } messages.Add(msg); } InitDataComplete(this, new InitDataCompletedArgs(messages)); } }catch (Exception ex) { MessageBox.Show("工作计划出差单OnQueryCompleted err:" + ex.ToString()); } }
public EntityAdapter(FBEntity fbEntity) { FBEntity = fbEntity; }
private void SetRowDetailTemplate() { if (this.orderDetailGridInfo.RowDetailDataPanel != null) { #region RowDetailTemplate DataTemplate dt = DataTemplateHelper.GetEmptyGrid(); this.ADGrid.RowDetailsTemplate = dt; this.ADGrid.LoadingRowDetails += (o, e) => { IDataPanel panel = this.orderDetailGridInfo.RowDetailDataPanel; IControlAction control = panel.GetUIElement(); Grid grid = e.DetailsElement as Grid; grid.Background = e.Row.Background; if (grid.Children.Count == 0) { Border border = new Border(); border.Style = (Style)Application.Current.Resources["DetailShow_1"]; grid.Children.Add(border); if (control.GetType() == typeof(DetailGrid)) { DetailGrid dgrid = control as DetailGrid; border.Child = dgrid; // dgrid.Margin = new Thickness(80, 0, 0, 0); control.InitControl(this.operationType); } else { border.Child = (control as UIElement); OperationTypes cOpType = this.operationType; if (this.operationType == OperationTypes.Audit) { cOpType = OperationTypes.Edit; } control.InitControl(cOpType); } } DependencyObject dObj = VisualTreeHelper.GetChild(e.DetailsElement,0); UIElement curControl = (dObj as Border).Child; if (curControl.GetType() == typeof(DetailGrid)) { DetailGrid dgrid = curControl as DetailGrid; string entityType = dgrid.OrderDetailGridInfo.OrderDetailEntityInfo.Entity.Type; FBEntity source = e.Row.DataContext as FBEntity; ; if (source != null) { ObservableCollection<FBEntity> list = source.GetRelationFBEntities(entityType); if (list.Count > 0) { dgrid.ItemsSource = list; } else { dgrid.Visibility = Visibility.Collapsed; } } } if (LoadRowDetailComplete != null) { ActionCompletedEventArgs<UIElement> args = new ActionCompletedEventArgs<UIElement>(curControl); LoadRowDetailComplete(o, args); } }; #endregion } }
public void Save(FBEntity fbEntity) { SetVisitUser(fbEntity); FBService.SaveAsync(fbEntity); }
public GroupSubject(FBEntity fbEntity) { innerFBEntity = fbEntity; this.Entity = innerFBEntity.Entity; this.CollectionEntity = innerFBEntity.CollectionEntity; this.ReferencedEntity = innerFBEntity.ReferencedEntity; VirtualDepartment vd = innerFBEntity.ReferencedEntity[0].FBEntity.Entity as VirtualDepartment; this.DepartmentName = vd.Name; }
void dGrid_ToolBarItemClick(object sender, ToolBarItemClickEventArgs e) { if (e.Action != Actions.Add) { return; } e.Action = Actions.Cancel; string perm = "3"; string entity = typeof(T_FB_PERSONMONEYASSIGNMASTER).Name; if (this.EditForm.OperationType == OperationTypes.Edit) { perm = ((int)Permissions.Edit).ToString(); } else if (this.EditForm.OperationType == OperationTypes.Add) { perm = ((int)Permissions.Add + 1).ToString(); } else { perm = ((int)Permissions.Browse).ToString(); } string userID = DataCore.CurrentUser.Value.ToString(); // BF06E969-1B2C-4a89-B0AE-A91CA1244053 OrganizationLookup ogzLookup = new OrganizationLookup(); ogzLookup.SelectedObjType = OrgTreeItemTypes.Personnel; ogzLookup.MultiSelected = true; FrameworkElement plRoot = CommonFunction.ParentLayoutRoot; try { ogzLookup.SelectedClick += (o, ea) => { if (ogzLookup.SelectedObj.Count > 0) { //处理岗位及下拨 SMT.Saas.Tools.PersonnelWS.PersonnelServiceClient pe = new SMT.Saas.Tools.PersonnelWS.PersonnelServiceClient(); ObservableCollection <SMT.Saas.Tools.PersonnelWS.V_EMPLOYEEFUNDS> vlistpostinfo = new ObservableCollection <SMT.Saas.Tools.PersonnelWS.V_EMPLOYEEFUNDS>(); var assignDetail = this.OrderEntity.GetRelationFBEntities(typeof(T_FB_PERSONMONEYASSIGNDETAIL).Name); var selectedObjects = ogzLookup.SelectedObj; selectedObjects.ForEach(obj => { ExtOrgObj post = obj.ParentObject as ExtOrgObj; ExtOrgObj dept = post.ParentObject as ExtOrgObj; // ExtOrgObj com = dept.ParentObject as ExtOrgObj; ITextValueItem pdata = DataCore.FindReferencedData <PostData>(post.ObjectID); ITextValueItem ddata = DataCore.FindReferencedData <DepartmentData>(dept.ObjectID); ITextValueItem cdata = (ddata as DepartmentData).Company; var existDetail = assignDetail.FirstOrDefault(item => { T_FB_PERSONMONEYASSIGNDETAIL cd = item.Entity as T_FB_PERSONMONEYASSIGNDETAIL; return(cd.OWNERID == obj.ObjectID && cd.OWNERPOSTID == pdata.Value.ToString()); }); T_FB_PERSONMONEYASSIGNDETAIL detail = new T_FB_PERSONMONEYASSIGNDETAIL(); if (existDetail != null) { detail.PERSONBUDGETAPPLYDETAILID = (existDetail.Entity as T_FB_PERSONMONEYASSIGNDETAIL).PERSONBUDGETAPPLYDETAILID; detail.T_FB_PERSONMONEYASSIGNMASTER = this.OrderEntity.Entity as T_FB_PERSONMONEYASSIGNMASTER; } else { detail.PERSONBUDGETAPPLYDETAILID = Guid.NewGuid().ToString(); detail.T_FB_PERSONMONEYASSIGNMASTER = this.OrderEntity.Entity as T_FB_PERSONMONEYASSIGNMASTER; detail.BUDGETMONEY = 0; } // start 添加岗位级别,用于排序 var employee1 = obj.ObjectInstance as SMT.Saas.Tools.PersonnelWS.T_HR_EMPLOYEE; if (employee1 != null) { var ep = employee1.T_HR_EMPLOYEEPOST.FirstOrDefault(); if (ep != null) { detail.POSTLEVEL = ep.POSTLEVEL; } } // end detail.OWNERID = obj.ObjectID; detail.OWNERNAME = obj.ObjectName; detail.OWNERPOSTID = pdata.Value.ToString(); detail.OWNERPOSTNAME = pdata.Text; detail.OWNERDEPARTMENTID = ddata.Value.ToString(); detail.OWNERDEPARTMENTNAME = ddata.Text; detail.OWNERCOMPANYID = cdata.Value.ToString(); detail.OWNERCOMPANYNAME = cdata.Text; //SMT.Saas.Tools.PersonnelWS.V_EMPLOYEEPOSTFORFB vpostinfo = new SMT.Saas.Tools.PersonnelWS.V_EMPLOYEEPOSTFORFB(); //vpostinfo.PERSONBUDGETAPPLYDETAILID = detail.PERSONBUDGETAPPLYDETAILID; //vpostinfo.OWNERID = detail.OWNERID; //vpostinfo.OWNERPOSTID = detail.OWNERPOSTID; //vlistpostinfo.Add(vpostinfo); SMT.Saas.Tools.PersonnelWS.V_EMPLOYEEFUNDS vpostinfo = new SMT.Saas.Tools.PersonnelWS.V_EMPLOYEEFUNDS(); vpostinfo.EMPLOYEEID = detail.OWNERID; vpostinfo.POSTID = detail.OWNERPOSTID; vpostinfo.COMPANYID = detail.OWNERCOMPANYID; vlistpostinfo.Add(vpostinfo); if (existDetail != null) { return; } else { FBEntity fbEntity = detail.ToFBEntity(); fbEntity.FBEntityState = FBEntityState.Added; assignDetail.Add(fbEntity); } }); if (vlistpostinfo != null && vlistpostinfo.Count > 0) { this.ShowProcess(); pe.GetEmployeeFundsListCompleted += new EventHandler <Saas.Tools.PersonnelWS.GetEmployeeFundsListCompletedEventArgs>(pe_GetEmployeeFundsListCompleted); pe.GetEmployeeFundsListAsync(vlistpostinfo); } } }; ogzLookup.Show <string>(DialogMode.ApplicationModal, plRoot, "", (result) => { }); } catch (Exception ex) { CommonFunction.ShowErrorMessage("调用HR服务返回异常信息:" + ex.ToString()); } }