Esempio n. 1
0
 public T_OA_BUSINESSTRIP GetTravelmanagementBysId(string tripid)
 {
     using (TravelmanagementBLL TL = new TravelmanagementBLL())
     {
         T_OA_BUSINESSTRIP MyContract = TL.GetTravelmanagementBysId(tripid);
         return(MyContract != null ? MyContract : null);
     }
 }
Esempio n. 2
0
 public T_OA_BUSINESSTRIP GetTravelmanagementById(string TravelmanagementID)
 {
     using (TravelmanagementBLL TL = new TravelmanagementBLL())
     {
         T_OA_BUSINESSTRIP TravelmanagementById = TL.GetTravelmanagementById(TravelmanagementID);
         return(TravelmanagementById == null ? null : TravelmanagementById);
     }
 }
Esempio n. 3
0
        public string TravelmanagementAdd(T_OA_BUSINESSTRIP Travelmanagement, List <T_OA_BUSINESSTRIPDETAIL> TraveDetail)
        {
            using (TravelmanagementBLL TL = new TravelmanagementBLL())
            {
                string returnStr = "";

                if (!TL.TravelmanagementAdd(Travelmanagement, TraveDetail, ref returnStr))
                {
                }
                return(returnStr);
            }
        }
Esempio n. 4
0
 public string UpdateTravelmanagement(T_OA_BUSINESSTRIP TravelmanagementInfo, List <T_OA_BUSINESSTRIPDETAIL> TraveDetail, string FormType)
 {
     using (TravelmanagementBLL TL = new TravelmanagementBLL())
     {
         string Travelmanagement = "";
         if (!TL.UpdateTravelmanagement(TravelmanagementInfo, TraveDetail, FormType, ref Travelmanagement))
         {
             //Travelmanagement = "更新数据失败!";
         }
         return(Travelmanagement);
     }
 }
Esempio n. 5
0
        public TravelRequestForm(FormTypes formType, string BUSINESSTRIPID)
        {
            InitializeComponent();
            this.formType = formType;
            if (!string.IsNullOrEmpty(BUSINESSTRIPID))
            {
                Master_Golbal = new T_OA_BUSINESSTRIP();//传递出差id给Load事件
                Master_Golbal.BUSINESSTRIPID = BUSINESSTRIPID;
            }

            if (formType != FormTypes.New && formType != FormTypes.Edit && formType != FormTypes.Resubmit)
            {
                svdgEdit.Visibility     = Visibility.Collapsed;
                svdgReadOnly.Visibility = Visibility.Visible;
                Utility.InitFileLoad(FormTypes.Browse, uploadFile, BUSINESSTRIPID, false);
            }
            else
            {
                svdgEdit.Visibility     = Visibility.Visible;
                svdgReadOnly.Visibility = Visibility.Collapsed;
            }
            this.Loaded += new RoutedEventHandler(TravelapplicationPage_Loaded);
        }
Esempio n. 6
0
        private string GetXmlString(T_OA_BUSINESSTRIP Info, string StrSource)
        {
            string goouttomeet   = string.Empty;
            string privateaffair = string.Empty;
            string companycar    = string.Empty;
            string isagent       = string.Empty;
            string path          = string.Empty;

            SMT.SaaS.MobileXml.MobileXml      mx = new MobileXml.MobileXml();
            SMT.SaaS.MobileXml.AutoDictionary ad = new MobileXml.AutoDictionary();

            List <SMT.SaaS.MobileXml.AutoDictionary> AutoList = new List <SMT.SaaS.MobileXml.AutoDictionary>();

            AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CHECKSTATE", Master_Golbal.CHECKSTATE, GetCheckState(Master_Golbal.CHECKSTATE))); //审核状态
            if (Master_Golbal.OWNERID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERNAME))                                          //出差人
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CURRENTEMPLOYEENAME", Common.CurrentLoginUserInfo.EmployeeName, Common.CurrentLoginUserInfo.EmployeeName));
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERID", Master_Golbal.OWNERID, Master_Golbal.OWNERNAME + "-" + Master_Golbal.OWNERPOSTNAME + "-" + Master_Golbal.OWNERDEPARTMENTNAME + "-" + Master_Golbal.OWNERCOMPANYNAME));
            }
            if (Master_Golbal.OWNERCOMPANYID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERCOMPANYNAME))//所属公司
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERCOMPANYID", Master_Golbal.OWNERCOMPANYID, Master_Golbal.OWNERCOMPANYNAME));
            }
            if (Master_Golbal.OWNERDEPARTMENTID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERDEPARTMENTNAME))//所属部门
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERDEPARTMENTID", Master_Golbal.OWNERDEPARTMENTID, Master_Golbal.OWNERDEPARTMENTNAME));
            }
            if (Master_Golbal.OWNERPOSTID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERPOSTNAME))//所属岗位
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERPOSTID", Master_Golbal.OWNERPOSTID, Master_Golbal.OWNERPOSTNAME));
            }
            if (fbCtr.ExtensionalOrder.TOTALMONEY != null && fbCtr.ExtensionalOrder.TOTALMONEY > 0)//借款金额
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CHARGEMONEY", Master_Golbal.CHARGEMONEY.ToString(), fbCtr.ExtensionalOrder.TOTALMONEY.ToString()));
            }
            AutoList.Add(basedata("T_OA_BUSINESSTRIP", "POSTLEVEL", Master_Golbal.POSTLEVEL, string.Empty)); //出差人的岗位级别
            //AutoList.Add(basedata("T_OA_BUSINESSTRIP", "DEPARTMENTNAME", string.Empty, Master_Golbal.OWNERDEPARTMENTNAME));//出差人所在部门
            if (Master_Golbal.ISAGENT != null)                                                               //是否启用代理
            {
                if (Master_Golbal.ISAGENT == "0")
                {
                    isagent = "不启用";
                }
                else
                {
                    isagent = "启用";
                }
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "ISAGENT", Master_Golbal.ISAGENT, isagent));
            }
            AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CONTENT", Master_Golbal.CONTENT, Master_Golbal.CONTENT));//出差事由

            //添加出差行程修改相关逻辑
            if (string.IsNullOrEmpty(Info.ISALTERTRAVE))
            {
                string msg = "新提交的出差申请。";
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "AlterTraveDetailBefore", msg, msg));//出差事由
            }
            else
            {
                if (Info.ISALTERTRAVE == "1")
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIP", "AlterTraveDetailBefore", Master_Golbal.ALTERDETAILBEFORE, Master_Golbal.ALTERDETAILBEFORE));//出差事由
                }
            }

            foreach (T_OA_BUSINESSTRIPDETAIL objDetail in TraveDetailList_Golbal)//填充子表
            {
                if (objDetail.DEPCITY != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "DEPCITY", objDetail.DEPCITY, GetCityName(objDetail.DEPCITY), objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.DESTCITY != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "DESTCITY", objDetail.DESTCITY, GetCityName(objDetail.DESTCITY), objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.BUSINESSDAYS != null)//出差天数
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "BUSINESSDAYS", objDetail.BUSINESSDAYS, objDetail.BUSINESSDAYS, objDetail.BUSINESSTRIPDETAILID));
                }
                else
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "BUSINESSDAYS", string.Empty, string.Empty, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.PRIVATEAFFAIR != null)
                {
                    if (objDetail.PRIVATEAFFAIR == "0")//是否私事
                    {
                        privateaffair = "否";
                    }
                    else
                    {
                        privateaffair = "是";
                    }
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "PRIVATEAFFAIR", objDetail.PRIVATEAFFAIR, privateaffair, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.GOOUTTOMEET != null)
                {
                    if (objDetail.GOOUTTOMEET == "0")//内部会议\培训
                    {
                        goouttomeet = "否";
                    }
                    else
                    {
                        goouttomeet = "是";
                    }
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "GOOUTTOMEET", objDetail.GOOUTTOMEET, goouttomeet, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.COMPANYCAR != null)
                {
                    if (objDetail.COMPANYCAR == "0")//是否是公司派车
                    {
                        companycar = "否";
                    }
                    else
                    {
                        companycar = "是";
                    }
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "COMPANYCAR", objDetail.COMPANYCAR, companycar, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.TYPEOFTRAVELTOOLS != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "TYPEOFTRAVELTOOLS", objDetail.TYPEOFTRAVELTOOLS, GetTypeName(objDetail.TYPEOFTRAVELTOOLS), objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.TAKETHETOOLLEVEL != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "TAKETHETOOLLEVEL", objDetail.TAKETHETOOLLEVEL, GetLevelName(objDetail.TAKETHETOOLLEVEL, GetTypeId(objDetail.TYPEOFTRAVELTOOLS)), objDetail.BUSINESSTRIPDETAILID));
                }
            }
            string a = mx.TableToXml(Info, TraveDetailList_Golbal, StrSource, AutoList);

            return(a);
        }
Esempio n. 7
0
        public string TravelmanagementAdd(T_OA_BUSINESSTRIP Travelmanagement, List<T_OA_BUSINESSTRIPDETAIL> TraveDetail)
        {
            using (TravelmanagementBLL TL = new TravelmanagementBLL())
            {
                string returnStr = "";

                if (!TL.TravelmanagementAdd(Travelmanagement, TraveDetail,ref returnStr))
                {
                  
                }
                return returnStr;
            }
        }
Esempio n. 8
0
 public string UpdateTravelmanagement(T_OA_BUSINESSTRIP TravelmanagementInfo, List<T_OA_BUSINESSTRIPDETAIL> TraveDetail,string FormType)
 {
     using (TravelmanagementBLL TL = new TravelmanagementBLL())
     {
         string Travelmanagement = "";
         if (!TL.UpdateTravelmanagement(TravelmanagementInfo, TraveDetail, FormType, ref Travelmanagement))
         {
             //Travelmanagement = "更新数据失败!";
         }
         return Travelmanagement;
     }
 }
Esempio n. 9
0
        void btnDelete_Click(object sender, RoutedEventArgs e)
        {
            //Modified by luojie 2012/10/08
            //添加对出差申请的删除功能,当出差申请为通过出差报销为未提交的时候,可以删除该出差报销单,并取消相应待办
            businesstripId = new ObservableCollection<string>();
            if (DaGr.SelectedItems.Count > 0)
            {
                for (int i = 0; i < DaGr.SelectedItems.Count; i++)
                {
                    #region 删除出差申请

                    T_OA_BUSINESSTRIP Travelent = new T_OA_BUSINESSTRIP();
                    //T_OA_BUSINESSREPORT entReport = new T_OA_BUSINESSREPORT();
                    Travelent = (DaGr.SelectedItems[i] as V_Travelmanagement).Travelmanagement;
                    string trCheckS=(DaGr.SelectedItems[i] as V_Travelmanagement).TrCheckState;
                    //entReport = (DaGr.SelectedItems[i] as V_MissionReports).MissionReportsViews;
                    
                    //判断用户权限,以出差报销的控制权限为准
                    if (SMT.SaaS.FrameworkUI.Common.Utility.ToolBarButtonOperationPermission(Travelent, "T_OA_BUSINESSTRIP", OperationType.Delete, Common.CurrentLoginUserInfo.EmployeeID))
                    {
                        if (Travelent.CHECKSTATE == ((int)CheckStates.UnSubmit).ToString())// -luojie || Travelent.CHECKSTATE == ((int)CheckStates.UnApproved).ToString())
                        {
                            businesstripId.Add((DaGr.SelectedItems[i] as V_Travelmanagement).Travelmanagement.BUSINESSTRIPID);

                            string Result = "";
                            ComfirmWindow com = new ComfirmWindow();
                            com.OnSelectionBoxClosed += (obj, result) =>
                            {
                                bool FBControl = true;
                                Travelmanagement.DeleteTravelmanagementAsync(businesstripId, FBControl);
                                LoadData();
                            };
                            com.SelectionBox(Utility.GetResourceStr("DELETECONFIRM"), Utility.GetResourceStr("DELETEALTER"), ComfirmWindow.titlename, Result);
                        }
                        //删除出差申请已通过的未提交状态的出差报销
                        else if (Travelent.CHECKSTATE == ((int)CheckStates.Approved).ToString() && trCheckS==((int)CheckStates.UnSubmit).ToString())
                        {
                            //Travelreimbursement.deletetr
                            businesstripId.Add((DaGr.SelectedItems[i] as V_Travelmanagement).Travelmanagement.BUSINESSTRIPID);
                            string Result = "";
                            ComfirmWindow com = new ComfirmWindow();
                            com.OnSelectionBoxClosed += (obj, result) =>
                            {
                                bool FBControl = true;
                                Travelmanagement.DeleteTravelReimbursementByBusinesstripIdAsync(businesstripId, FBControl);
                                loadbar.Start();
                                //LoadData();
                            };
                            com.SelectionBox(Utility.GetResourceStr("DELETECONFIRM"), Utility.GetResourceStr("DELETEALTER"), ComfirmWindow.titlename, Result);
                            
                        }
                        else
                        {
                            Utility.ShowCustomMessage(MessageTypes.Caution, Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("NOTONLYDIDNOSUBMITANDREVIEWTHEDATACANBEDELETEDBY"));
                            return;
                        }
                    }                    
                    else
                    {
                        Utility.ShowCustomMessage(MessageTypes.Caution, Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("YOUDONOTHAVEPERMISSIONTOOPERATETHEDATA"));
                    }
                    #endregion

                    //#region 删除出差报告
                    //if (SMT.SaaS.FrameworkUI.Common.Utility.ToolBarButtonOperationPermission(entReport, "T_OA_BUSINESSREPORT", OperationType.Delete, Common.CurrentLoginUserInfo.EmployeeID))
                    //{
                    //    if (entReport.CHECKSTATE == ((int)CheckStates.UnSubmit).ToString() || entReport.CHECKSTATE == ((int)CheckStates.UnApproved).ToString())
                    //    {
                    //        MissionReportsId.Add((DaGr.SelectedItems[i] as V_MissionReports).MissionReportsViews.BUSINESSREPORTID);

                    //        string Result = "";
                    //        ComfirmWindow com = new ComfirmWindow();
                    //        com.OnSelectionBoxClosed += (obj, result) =>
                    //        {
                    //            bool FBControl = true;
                    //            Travelmanagement.DeleteMissionReportsAsync(MissionReportsId, FBControl);
                    //            LoadData();
                    //        };
                    //        com.SelectionBox(Utility.GetResourceStr("DELETECONFIRM"), Utility.GetResourceStr("DELETEALTER"), ComfirmWindow.titlename, Result);
                    //    }
                    //    else
                    //    {
                    //        ComfirmWindow.ConfirmationBoxs(Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("NOTONLYDIDNOSUBMITANDREVIEWTHEDATACANBEDELETEDBY"), Utility.GetResourceStr("CONFIRMBUTTON"), MessageIcon.Exclamation);
                    //        return;
                    //    }
                    //}
                    //else
                    //{
                    //    Utility.ShowCustomMessage(MessageTypes.Caution, Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("YOUDONOTHAVEPERMISSIONTOOPERATETHEDATA"));
                    //}
                    //#endregion
                }
            }
            else
            {
                ComfirmWindow.ConfirmationBox(Utility.GetResourceStr("CONFIRMINFO"), Utility.GetResourceStr("SELECTERROR", "DELETE"), Utility.GetResourceStr("CONFIRMBUTTON"));
            }
        }
Esempio n. 10
0
        void btnDelete_Click(object sender, RoutedEventArgs e)
        {
            //Modified by luojie 2012/10/08
            //添加对出差申请的删除功能,当出差申请为通过出差报销为未提交的时候,可以删除该出差报销单,并取消相应待办
            businesstripId = new ObservableCollection <string>();
            if (DaGr.SelectedItems.Count > 0)
            {
                for (int i = 0; i < DaGr.SelectedItems.Count; i++)
                {
                    #region  除出差申请

                    T_OA_BUSINESSTRIP Travelent = new T_OA_BUSINESSTRIP();
                    //T_OA_BUSINESSREPORT entReport = new T_OA_BUSINESSREPORT();
                    Travelent = (DaGr.SelectedItems[i] as V_Travelmanagement).Travelmanagement;
                    string trCheckS = (DaGr.SelectedItems[i] as V_Travelmanagement).TrCheckState;
                    //entReport = (DaGr.SelectedItems[i] as V_MissionReports).MissionReportsViews;

                    //判断用户权限,以出差报销的控制权限为准
                    if (SMT.SaaS.FrameworkUI.Common.Utility.ToolBarButtonOperationPermission(Travelent, "T_OA_BUSINESSTRIP", OperationType.Delete, Common.CurrentLoginUserInfo.EmployeeID))
                    {
                        if (Travelent.CHECKSTATE == ((int)CheckStates.UnSubmit).ToString())// -luojie || Travelent.CHECKSTATE == ((int)CheckStates.UnApproved).ToString())
                        {
                            businesstripId.Add((DaGr.SelectedItems[i] as V_Travelmanagement).Travelmanagement.BUSINESSTRIPID);

                            string        Result = "";
                            ComfirmWindow com    = new ComfirmWindow();
                            com.OnSelectionBoxClosed += (obj, result) =>
                            {
                                bool FBControl = true;
                                Travelmanagement.DeleteTravelmanagementAsync(businesstripId, FBControl);
                                LoadData();
                            };
                            com.SelectionBox(Utility.GetResourceStr("DELETECONFIRM"), Utility.GetResourceStr("DELETEALTER"), ComfirmWindow.titlename, Result);
                        }
                        //删除出差申请已通过的未提交状态的出差报销
                        else if (Travelent.CHECKSTATE == ((int)CheckStates.Approved).ToString() && trCheckS == ((int)CheckStates.UnSubmit).ToString())
                        {
                            //Travelreimbursement.deletetr
                            businesstripId.Add((DaGr.SelectedItems[i] as V_Travelmanagement).Travelmanagement.BUSINESSTRIPID);
                            string        Result = "";
                            ComfirmWindow com    = new ComfirmWindow();
                            com.OnSelectionBoxClosed += (obj, result) =>
                            {
                                bool FBControl = true;
                                Travelmanagement.DeleteTravelReimbursementByBusinesstripIdAsync(businesstripId, FBControl);
                                loadbar.Start();
                                //LoadData();
                            };
                            com.SelectionBox(Utility.GetResourceStr("DELETECONFIRM"), Utility.GetResourceStr("DELETEALTER"), ComfirmWindow.titlename, Result);
                        }
                        else
                        {
                            Utility.ShowCustomMessage(MessageTypes.Caution, Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("NOTONLYDIDNOSUBMITANDREVIEWTHEDATACANBEDELETEDBY"));
                            return;
                        }
                    }
                    else
                    {
                        Utility.ShowCustomMessage(MessageTypes.Caution, Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("YOUDONOTHAVEPERMISSIONTOOPERATETHEDATA"));
                    }
                    #endregion

                    //#region 删除出差报告
                    //if (SMT.SaaS.FrameworkUI.Common.Utility.ToolBarButtonOperationPermission(entReport, "T_OA_BUSINESSREPORT", OperationType.Delete, Common.CurrentLoginUserInfo.EmployeeID))
                    //{
                    //    if (entReport.CHECKSTATE == ((int)CheckStates.UnSubmit).ToString() || entReport.CHECKSTATE == ((int)CheckStates.UnApproved).ToString())
                    //    {
                    //        MissionReportsId.Add((DaGr.SelectedItems[i] as V_MissionReports).MissionReportsViews.BUSINESSREPORTID);

                    //        string Result = "";
                    //        ComfirmWindow com = new ComfirmWindow();
                    //        com.OnSelectionBoxClosed += (obj, result) =>
                    //        {
                    //            bool FBControl = true;
                    //            Travelmanagement.DeleteMissionReportsAsync(MissionReportsId, FBControl);
                    //            LoadData();
                    //        };
                    //        com.SelectionBox(Utility.GetResourceStr("DELETECONFIRM"), Utility.GetResourceStr("DELETEALTER"), ComfirmWindow.titlename, Result);
                    //    }
                    //    else
                    //    {
                    //        ComfirmWindow.ConfirmationBoxs(Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("NOTONLYDIDNOSUBMITANDREVIEWTHEDATACANBEDELETEDBY"), Utility.GetResourceStr("CONFIRMBUTTON"), MessageIcon.Exclamation);
                    //        return;
                    //    }
                    //}
                    //else
                    //{
                    //    Utility.ShowCustomMessage(MessageTypes.Caution, Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("YOUDONOTHAVEPERMISSIONTOOPERATETHEDATA"));
                    //}
                    //#endregion
                }
            }
            else
            {
                ComfirmWindow.ConfirmationBox(Utility.GetResourceStr("CONFIRMINFO"), Utility.GetResourceStr("SELECTERROR", "DELETE"), Utility.GetResourceStr("CONFIRMBUTTON"));
            }
        }
Esempio n. 11
0
        /// <summary>
        /// 根据传回的XML,添加出差申请信息
        /// </summary>
        /// <param name="xele"></param>
        public static string TravelmanagementAddFromEngine(string strXml, string newTravelreimbursementID)
        {
            try
            {
                string       strEmployeeID        = string.Empty;
                string       strOwnerID           = string.Empty;
                string       strOwnerPostID       = string.Empty;
                string       strOwnerDepartmentID = string.Empty;
                string       strOwnerCompanyID    = string.Empty;
                string       strClaimsWereName    = string.Empty;
                string       strCheckState        = string.Empty;
                string       strTEL                   = string.Empty;
                string       strBusinesStripId        = string.Empty;
                string       strTravelreimbursementId = string.Empty;
                StringReader strRdr                   = new StringReader(strXml);
                XmlReader    xr = XmlReader.Create(strRdr);
                while (xr.Read())
                {
                    if (xr.NodeType == XmlNodeType.Element)
                    {
                        string elementName = xr.Name;
                        if (elementName == "Paras" || elementName == "System")
                        {
                            while (xr.Read())
                            {
                                string type = xr.NodeType.ToString();
                                #region
                                if (xr["Name"] != null)
                                {
                                    if (xr["Name"].ToUpper() == "OWNERPOSTID")
                                    {
                                        strOwnerPostID = xr["Value"];
                                    }
                                    if (xr["Name"].ToUpper() == "OWNERID")
                                    {
                                        strOwnerID = xr["Value"];
                                    }
                                    if (xr["Name"].ToUpper() == "OWNERDEPARTMENTID")
                                    {
                                        strOwnerDepartmentID = xr["Value"];
                                    }
                                    if (xr["Name"].ToUpper() == "OWNERCOMPANYID")
                                    {
                                        strOwnerCompanyID = xr["Value"];
                                    }
                                    if (xr["Name"].ToUpper() == "BUSINESSTRIPID")
                                    {
                                        strBusinesStripId = xr["Value"];
                                    }
                                    if (xr["Name"].ToUpper() == "TRAVELREIMBURSEMENTID")
                                    {
                                        strTravelreimbursementId = xr["Value"];
                                    }
                                }

                                #endregion
                            }
                        }
                    }
                }

                doc = new SmtOAPersonOffice();
                //string employeeid = strEmployeeID.Replace("{", "").Replace("}", "");
                T_OA_BUSINESSTRIP        buip   = doc.GetTravelmanagementById(strBusinesStripId);
                T_OA_TRAVELREIMBURSEMENT entity = new T_OA_TRAVELREIMBURSEMENT();
                entity.TRAVELREIMBURSEMENTID            = newTravelreimbursementID;//Guid.NewGuid().ToString();
                entity.T_OA_BUSINESSTRIP                = buip;
                entity.T_OA_BUSINESSTRIP.BUSINESSTRIPID = buip.BUSINESSTRIPID;
                entity.CLAIMSWERE        = buip.OWNERID;
                entity.CLAIMSWERENAME    = buip.OWNERNAME;
                entity.REIMBURSEMENTTIME = DateTime.Now;
                entity.CHECKSTATE        = "0";
                entity.TEL                 = buip.TEL;
                entity.CREATEDATE          = buip.UPDATEDATE;
                entity.OWNERID             = buip.OWNERID;
                entity.OWNERNAME           = buip.OWNERNAME;
                entity.OWNERPOSTID         = buip.OWNERPOSTID;
                entity.OWNERDEPARTMENTID   = buip.OWNERDEPARTMENTID;
                entity.OWNERCOMPANYID      = buip.OWNERCOMPANYID;
                entity.CREATEUSERID        = buip.CREATEUSERID;
                entity.CREATEUSERNAME      = buip.CREATEUSERNAME;
                entity.CREATEPOSTID        = buip.CREATEPOSTID;
                entity.CREATEDEPARTMENTID  = buip.CREATEDEPARTMENTID;
                entity.CREATECOMPANYID     = buip.CREATECOMPANYID;
                entity.OWNERPOSTNAME       = buip.OWNERPOSTNAME;
                entity.OWNERDEPARTMENTNAME = buip.OWNERDEPARTMENTNAME;
                entity.OWNERCOMPANYNAME    = buip.OWNERCOMPANYNAME;
                entity.POSTLEVEL           = buip.POSTLEVEL;
                entity.STARTCITYNAME       = buip.STARTCITYNAME;
                entity.ENDCITYNAME         = buip.ENDCITYNAME;
                Tracer.Debug("出差终审自动生成出差报销:" + entity.OWNERNAME
                             + "-" + entity.OWNERPOSTNAME
                             + "-" + entity.OWNERDEPARTMENTNAME
                             + "-" + entity.OWNERCOMPANYNAME
                             + "-岗位级别:" + entity.POSTLEVEL
                             + "-开始城市:" + entity.STARTCITYNAME
                             + "-结束城市:" + entity.ENDCITYNAME);
                //添加子表数据
                EmployeeWS.V_EMPLOYEEDETAIL          emp         = new EmployeeWS.V_EMPLOYEEDETAIL();
                EmployeeWS.PersonnelServiceClient    cinet       = new EmployeeWS.PersonnelServiceClient();//人事服务(查询员工岗位级别用)
                List <T_OA_CANTAKETHEPLANELINE>      PlaneObj    = new List <T_OA_CANTAKETHEPLANELINE>();
                List <T_OA_TAKETHESTANDARDTRANSPORT> StandardObj = new List <T_OA_TAKETHESTANDARDTRANSPORT>();

                emp       = cinet.GetEmployeeDetailViewByID(entity.OWNERID);                                                                   //根据员工ID查询出岗位级别
                postLevel = emp.EMPLOYEEPOSTS.Where(s => s.POSTID == buip.OWNERPOSTID).FirstOrDefault().POSTLEVEL.ToString();                  //获取出差人的岗位级别
                var companyId = emp.EMPLOYEEPOSTS.Where(s => s.CompanyID == buip.OWNERCOMPANYID).FirstOrDefault().CompanyID.ToString();        //获取出差人的所属公司
                T_OA_TRAVELSOLUTIONS travelsolutions = doc.GetTravelSolutionByCompanyID(entity.OWNERCOMPANYID, ref PlaneObj, ref StandardObj); //出差方案
                if (travelsolutions != null)
                {
                    solutionID = travelsolutions.TRAVELSOLUTIONSID;//出差方案ID
                }
                List <T_OA_BUSINESSTRIPDETAIL>  TravelDetail = doc.GetBusinesstripDetail(strBusinesStripId);
                List <T_OA_REIMBURSEMENTDETAIL> TrDetail     = new List <T_OA_REIMBURSEMENTDETAIL>();//出差报销子表
                List <string> cityscode    = new List <string>();
                double        BusinessDays = 0;
                int           i            = 0;
                double        total        = 0;
                #region
                //foreach (var detail in TravelDetail)
                for (int j = 0; j < TravelDetail.Count(); j++)
                {
                    var detail = TravelDetail[i];
                    i++;
                    double toodays = 0;

                    //计算本次出差的时间
                    List <string> list = new List <string>
                    {
                        detail.BUSINESSDAYS
                    };
                    if (detail.BUSINESSDAYS != null)
                    {
                        double totalHours = System.Convert.ToDouble(list[0]);

                        BusinessDays += totalHours; //总天数
                        toodays       = totalHours; //单条数据的天数
                    }
                    double tresult = toodays;       //计算本次出差的总天数

                    T_OA_REIMBURSEMENTDETAIL TrListInfo = new T_OA_REIMBURSEMENTDETAIL();
                    TrListInfo.REIMBURSEMENTDETAILID = Guid.NewGuid().ToString();

                    TrListInfo.STARTDATE         = detail.STARTDATE;                    //开始时间
                    TrListInfo.ENDDATE           = detail.ENDDATE;                      //结束时间
                    TrListInfo.BUSINESSDAYS      = detail.BUSINESSDAYS;                 //出差天数
                    TrListInfo.DEPCITY           = detail.DEPCITY;                      //出发城市
                    TrListInfo.DESTCITY          = detail.DESTCITY;                     //目标城市
                    TrListInfo.PRIVATEAFFAIR     = detail.PRIVATEAFFAIR;                //是否私事
                    TrListInfo.GOOUTTOMEET       = detail.GOOUTTOMEET;                  //外出开会
                    TrListInfo.COMPANYCAR        = detail.COMPANYCAR;                   //公司派车
                    TrListInfo.TYPEOFTRAVELTOOLS = detail.TYPEOFTRAVELTOOLS;            //交通工具类型
                    TrListInfo.TAKETHETOOLLEVEL  = detail.TAKETHETOOLLEVEL;             //交通工具级别
                    TrListInfo.CREATEDATE        = Convert.ToDateTime(buip.UPDATEDATE); //创建时间
                    TrListInfo.CREATEUSERNAME    = buip.CREATEUSERNAME;                 //创建人
                    cityscode.Add(TrListInfo.DESTCITY);

                    T_OA_AREAALLOWANCE entareaallowance = new T_OA_AREAALLOWANCE();
                    string             cityValue        = cityscode[i - 1];//目标城市值
                    entareaallowance = GetAllowanceByCityValue(cityValue);

                    #region 根据本次出差的总天数,根据天数获取相应的补贴
                    if (travelsolutions != null)
                    {
                        if (tresult <= int.Parse(travelsolutions.MINIMUMINTERVALDAYS))//本次出差总时间小于等于设定天数的报销标准
                        {
                            if (entareaallowance != null)
                            {
                                if (detail.BUSINESSDAYS != null)
                                {
                                    if (detail.PRIVATEAFFAIR == "1")                                //如果是私事不予报销
                                    {
                                        TrListInfo.TRANSPORTATIONSUBSIDIES = 0;                     //交通补贴
                                    }
                                    else if (detail.GOOUTTOMEET == "1" || detail.COMPANYCAR == "1") //如果是开会或者是公司派车,交通费没有
                                    {
                                        TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                    }
                                    else
                                    {
                                        if (int.Parse(postLevel) > 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                                        {
                                            if (entareaallowance.TRANSPORTATIONSUBSIDIES != null)
                                            {
                                                TrListInfo.TRANSPORTATIONSUBSIDIES = decimal.Parse((Convert.ToDouble(entareaallowance.TRANSPORTATIONSUBSIDIES) * toodays).ToString());
                                            }
                                        }
                                        else
                                        {
                                            TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                        }
                                    }
                                }

                                if (detail.BUSINESSDAYS != null)
                                {
                                    if (detail.PRIVATEAFFAIR == "1")//餐费补贴
                                    {
                                        TrListInfo.MEALSUBSIDIES = 0;
                                    }
                                    else if (detail.GOOUTTOMEET == "1")//如果是开会
                                    {
                                        TrListInfo.MEALSUBSIDIES = 0;
                                    }
                                    else
                                    {
                                        if (int.Parse(postLevel) > 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                                        {
                                            TrListInfo.MEALSUBSIDIES = decimal.Parse((Convert.ToDouble(entareaallowance.MEALSUBSIDIES) * toodays).ToString());
                                        }
                                        else
                                        {
                                            TrListInfo.MEALSUBSIDIES = 0;
                                        }
                                    }
                                }
                            }
                        }
                        else
                        {
                            if (int.Parse(postLevel) <= 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                            {
                                TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                TrListInfo.MEALSUBSIDIES           = 0;
                            }
                        }
                    }
                    #endregion

                    #region 如果出差天数大于设定的最大天数,按驻外标准获取补贴
                    if (travelsolutions != null)
                    {
                        if (tresult > int.Parse(travelsolutions.MAXIMUMRANGEDAYS))
                        {
                            if (entareaallowance != null)
                            {
                                double DbTranceport  = Convert.ToDouble(entareaallowance.TRANSPORTATIONSUBSIDIES);
                                double DbMeal        = Convert.ToDouble(entareaallowance.MEALSUBSIDIES);
                                double tfSubsidies   = Convert.ToDouble(entareaallowance.TRANSPORTATIONSUBSIDIES) * (Convert.ToDouble(travelsolutions.INTERVALRATIO) / 100);
                                double mealSubsidies = Convert.ToDouble(entareaallowance.MEALSUBSIDIES) * (Convert.ToDouble(travelsolutions.INTERVALRATIO) / 100);

                                if (detail.BUSINESSDAYS != null)
                                {
                                    if (detail.PRIVATEAFFAIR == "1")//如果是私事不予报销
                                    {
                                        TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                    }
                                    else if (detail.GOOUTTOMEET == "1" || detail.COMPANYCAR == "1")//如果是开会或者是公司派车,交通费没有
                                    {
                                        TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                    }
                                    else
                                    {
                                        if (int.Parse(postLevel) > 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                                        {
                                            double minmoney    = Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS) * DbTranceport;
                                            double middlemoney = (Convert.ToDouble(travelsolutions.MAXIMUMRANGEDAYS) - Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS)) * tfSubsidies;
                                            double lastmoney   = (tresult - Convert.ToDouble(travelsolutions.MAXIMUMRANGEDAYS)) * Convert.ToDouble(entareaallowance.OVERSEASSUBSIDIES);
                                            TrListInfo.TRANSPORTATIONSUBSIDIES = decimal.Parse((minmoney + middlemoney + lastmoney).ToString());
                                        }
                                        else
                                        {
                                            TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                        }
                                    }
                                }

                                if (detail.BUSINESSDAYS != null)
                                {
                                    if (detail.PRIVATEAFFAIR == "1")//如果是私事不予报销
                                    {
                                        TrListInfo.MEALSUBSIDIES = 0;
                                    }
                                    else if (detail.GOOUTTOMEET == "1")//如果是开会
                                    {
                                        TrListInfo.MEALSUBSIDIES = 0;
                                    }
                                    else
                                    {
                                        if (int.Parse(postLevel) > 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                                        {
                                            double minmoney    = Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS) * DbMeal;
                                            double middlemoney = (Convert.ToDouble(travelsolutions.MAXIMUMRANGEDAYS) - Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS)) * mealSubsidies;
                                            double lastmoney   = (tresult - Convert.ToDouble(travelsolutions.MAXIMUMRANGEDAYS)) * Convert.ToDouble(entareaallowance.OVERSEASSUBSIDIES);
                                            TrListInfo.MEALSUBSIDIES = decimal.Parse((minmoney + middlemoney + lastmoney).ToString());
                                        }
                                        else
                                        {
                                            TrListInfo.MEALSUBSIDIES = 0;
                                        }
                                    }
                                }
                            }
                        }
                        else
                        {
                            if (int.Parse(postLevel) <= 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                            {
                                TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                TrListInfo.MEALSUBSIDIES           = 0;
                            }
                        }
                    }
                    #endregion



                    #region 如果出差时间大于设定的最小天数并且小于设定的最大天数的报销标准
                    if (travelsolutions != null)
                    {
                        if (tresult >= Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS) && tresult <= Convert.ToDouble(travelsolutions.MAXIMUMRANGEDAYS))
                        {
                            if (entareaallowance != null)
                            {
                                double DbTranceport  = Convert.ToDouble(entareaallowance.TRANSPORTATIONSUBSIDIES);
                                double DbMeal        = Convert.ToDouble(entareaallowance.MEALSUBSIDIES);
                                double tfSubsidies   = Convert.ToDouble(entareaallowance.TRANSPORTATIONSUBSIDIES) * (Convert.ToDouble(travelsolutions.INTERVALRATIO) / 100);
                                double mealSubsidies = Convert.ToDouble(entareaallowance.MEALSUBSIDIES) * (Convert.ToDouble(travelsolutions.INTERVALRATIO) / 100);

                                if (detail.BUSINESSDAYS != null)
                                {
                                    if (detail.PRIVATEAFFAIR == "1")//如果是私事不予报销
                                    {
                                        TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                    }
                                    else if (detail.GOOUTTOMEET == "1" || detail.COMPANYCAR == "1")//如果是开会或者是公司派车,交通费没有
                                    {
                                        TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                    }
                                    else
                                    {
                                        if (int.Parse(postLevel) > 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                                        {
                                            double minmoney    = Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS) * DbTranceport;
                                            double middlemoney = (tresult - Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS)) * tfSubsidies;
                                            TrListInfo.TRANSPORTATIONSUBSIDIES = decimal.Parse((minmoney + middlemoney).ToString());
                                        }
                                        else
                                        {
                                            TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                        }
                                    }
                                }

                                if (detail.BUSINESSDAYS != null)
                                {
                                    if (detail.PRIVATEAFFAIR == "1")//如果是私事不予报销
                                    {
                                        TrListInfo.MEALSUBSIDIES = 0;
                                    }
                                    else if (detail.GOOUTTOMEET == "1")//如果是开会
                                    {
                                        TrListInfo.MEALSUBSIDIES = 0;
                                    }
                                    else
                                    {
                                        if (int.Parse(postLevel) > 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                                        {
                                            //最小区间段金额
                                            double minmoney = Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS) * DbMeal;
                                            //中间区间段金额
                                            double middlemoney = (tresult - Convert.ToDouble(travelsolutions.MINIMUMINTERVALDAYS)) * mealSubsidies;
                                            TrListInfo.MEALSUBSIDIES = decimal.Parse((minmoney + middlemoney).ToString());
                                        }
                                        else
                                        {
                                            TrListInfo.MEALSUBSIDIES = 0;
                                        }
                                    }
                                }
                            }
                        }
                        else
                        {
                            if (int.Parse(postLevel) <= 8)//当前用户的岗位级别小于副部长及以上级别的补贴标准
                            {
                                TrListInfo.TRANSPORTATIONSUBSIDIES = 0;
                                TrListInfo.MEALSUBSIDIES           = 0;
                            }
                        }
                    }
                    total += Convert.ToDouble(TrListInfo.TRANSPORTATIONSUBSIDIES + TrListInfo.MEALSUBSIDIES);
                    entity.THETOTALCOST         = decimal.Parse(total.ToString()); //差旅费用总和
                    entity.REIMBURSEMENTOFCOSTS = decimal.Parse(total.ToString()); //报销费用总和

                    #endregion

                    TrDetail.Add(TrListInfo);
                }
                #endregion

                string result = BusinessDays.ToString(); //计算本次出差的总时间,超过24小时天数加1
                entity.COMPUTINGTIME = result;           //总时间

                //doc.TravelReimbursementAdd(entity, TrDetail);
                doc.TravelReimbursementAddSimple(entity, TrDetail, strBusinesStripId);


                return(null);//entity.TRAVELREIMBURSEMENTID;
            }
            catch (Exception e)
            {
                string abc = "<OA>Message=[" + e.Message + "]" + "<OA>Source=[" + e.Source + "]<OA>StackTrace=[" + e.StackTrace + "]<OA>TargetSite=[" + e.TargetSite + "]";
                Tracer.Debug(abc);
                return(abc);
            }
        }
Esempio n. 12
0
        //void Travelmanagement_GetBusinesstripDetailCompleted(object sender, GetBusinesstripDetailCompletedEventArgs e)//出差申请明细
        //{
        //    isloaded = true;
        //    if (IsSubmit)
        //    {
        //        RefreshUI(RefreshedTypes.HideProgressBar);
        //    }

        //    try
        //    {
        //        if (e.Result != null)
        //        {
        //            BindDataGrid(e.Result);
        //        }
        //        else
        //        {
        //            BindDataGrid(null);
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        isloaded = false;
        //        Logger.Current.Log(ex.Message, Category.Debug, Priority.Low);
        //        ComfirmWindow.ConfirmationBoxs(Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("ERRORINFO"), Utility.GetResourceStr("CONFIRM"), MessageIcon.Exclamation);
        //    }
        //}

        void Travelmanagement_GetTravelmanagementByIdCompleted(object sender, GetTravelmanagementByIdCompletedEventArgs e)
        {
            try
            {
                if (e.Error == null)
                {
                    if (e.Result != null)
                    {
                        #region 设置数据已加载属性,绑定数据
                        isPageloadCompleted = true;
                        Master_Golbal       = e.Result;
                        if (Master_Golbal.T_OA_BUSINESSTRIPDETAIL.Count > 0)
                        {
                            TraveDetailList_Golbal = Master_Golbal.T_OA_BUSINESSTRIPDETAIL;
                            //初始化上传控件
                            Utility.InitFileLoad("TravelRequest", Master_Golbal.BUSINESSTRIPID, formType, uploadFile);
                        }
                        #endregion

                        #region 设置显示数据的grid
                        if (formType == FormTypes.New ||
                            formType == FormTypes.Edit)
                        {
                            if (Master_Golbal.CHECKSTATE != (Convert.ToInt32(CheckStates.UnSubmit)).ToString())
                            {
                                formType                = FormTypes.Audit;
                                svdgEdit.Visibility     = Visibility.Collapsed;
                                svdgReadOnly.Visibility = Visibility.Visible;
                            }
                            else
                            {
                                svdgEdit.Visibility     = Visibility.Visible;
                                svdgReadOnly.Visibility = Visibility.Collapsed;
                            }
                        }
                        if (formType == FormTypes.Resubmit)
                        {
                            Master_Golbal.CHECKSTATE = (Convert.ToInt32(CheckStates.UnSubmit)).ToString();
                            svdgEdit.Visibility      = Visibility.Visible;
                            svdgReadOnly.Visibility  = Visibility.Collapsed;
                        }
                        if (Master_Golbal.CHECKSTATE == (Convert.ToInt32(CheckStates.UnSubmit)).ToString())
                        {
                            EntityBrowser entBrowser = this.FindParentByType <EntityBrowser>();
                            entBrowser.BtnDelete.Visibility = Visibility.Visible;
                            RefreshUI(RefreshedTypes.ToolBar);
                        }
                        #endregion

                        #region 获取出差人组织架构,岗位级别,联系电话

                        lookupTraveEmployee.DataContext = Master_Golbal;
                        txtTraveEmployee.Text           = Master_Golbal.OWNERNAME;//出差人
                        if (!string.IsNullOrEmpty(Master_Golbal.TEL))
                        {
                            txtTELL.Text = Master_Golbal.TEL;
                        }
                        //Master_Golbal.POSTLEVEL = Master_Golbal.POSTLEVEL;
                        //strTravelEmployeeName = Master_Golbal.OWNERNAME;
                        ToolTipService.SetToolTip(txtTraveEmployee, Master_Golbal.OWNERNAME);
                        //Master_Golbal.OWNERPOSTNAME = Master_Golbal.OWNERPOSTNAME;
                        //Master_Golbal.OWNERDEPARTMENTNAME = Master_Golbal.OWNERDEPARTMENTNAME;
                        //Master_Golbal.OWNERCOMPANYNAME = Master_Golbal.OWNERCOMPANYNAME;
                        string StrName = Master_Golbal.OWNERNAME + "-" + Master_Golbal.OWNERPOSTNAME + "-" + Master_Golbal.OWNERDEPARTMENTNAME + "-" + Master_Golbal.OWNERCOMPANYNAME;
                        txtTraveEmployee.Text = StrName;
                        this.txtSubject.Text  = Master_Golbal.CONTENT;//出差事由
                        //启用代理
                        if (Master_Golbal.ISAGENT == "1")
                        {
                            this.ckEnabled.IsChecked = true;
                            int i = TraveDetailList_Golbal.Count() - 1;
                            AddAgent(i);
                        }

                        #endregion

                        #region 刷新界面
                        RefreshUI(RefreshedTypes.ToolBar);
                        if (Master_Golbal.CHECKSTATE != ((int)CheckStates.UnSubmit).ToString())
                        {
                            RefreshUI(RefreshedTypes.AuditInfo);
                        }
                        #endregion

                        #region 获取出差方案,工具标准用来报销,及显示控件颜色
                        //重新提交获取出差方案
                        OaPersonOfficeClient.GetTravelSolutionByCompanyIDAsync(Master_Golbal.OWNERCOMPANYID, null, null);
                        #endregion
                    }
                    else
                    {
                        RefreshUI(RefreshedTypes.HideProgressBar);
                        BindDataGrid(null);
                        return;
                    }
                }
                else
                {
                    RefreshUI(RefreshedTypes.HideProgressBar);
                    ComfirmWindow.ConfirmationBoxs(Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("ERRORINFO"), Utility.GetResourceStr("CONFIRM"), MessageIcon.Exclamation);
                }
            }
            catch (Exception ex)
            {
                RefreshUI(RefreshedTypes.HideProgressBar);
                Logger.Current.Log(ex.Message, Category.Debug, Priority.Low);
                ComfirmWindow.ConfirmationBoxs(Utility.GetResourceStr("TIPS"), Utility.GetResourceStr("ERRORINFO"), Utility.GetResourceStr("CONFIRM"), MessageIcon.Exclamation);
            }
        }
Esempio n. 13
0
        void TravelapplicationPage_Loaded(object sender, RoutedEventArgs e)
        {
            if (isPageloadCompleted == true)
            {
                return;                             //如果已经加载过,再次切换时就不再加载
            }
            InitWCFSvClinetEvent();
            GetVechileLevelInfos();
            EntityBrowser entBrowser = this.FindParentByType <EntityBrowser>();

            entBrowser.BtnSaveSubmit.Click -= new RoutedEventHandler(entBrowser.btnSubmit_Click);
            entBrowser.BtnSaveSubmit.Click += new RoutedEventHandler(BtnSaveSubmit_Click);
            //entBrowser.BtnDelete.Click += btnDelete_Click;

            fbCtr.GetPayType.Visibility = Visibility.Visible;
            if (formType == FormTypes.Browse || formType == FormTypes.Audit)
            {
                FileLoadedCompleted();
                this.txtSubject.Foreground = new SolidColorBrush(Colors.Black);
                HideControl();
            }

            FormToolBar1.btnNew.Click += new RoutedEventHandler(btnNew_Click);

            FormToolBar1.btnEdit.Visibility = Visibility.Collapsed;   //修改

            FormToolBar1.btnDelete.Visibility = Visibility.Collapsed; //删除
            //FormToolBar1.btnDelete.Click += btnDelete_Click;

            FormToolBar1.BtnView.Visibility        = Visibility.Collapsed; //查看
            FormToolBar1.btnRefresh.Visibility     = Visibility.Collapsed; //刷新
            FormToolBar1.btnReSubmit.Visibility    = Visibility.Collapsed; //重新提交
            FormToolBar1.btnAudit.Visibility       = Visibility.Collapsed; //审核
            FormToolBar1.cbxCheckState.Visibility  = Visibility.Collapsed;
            FormToolBar1.btnPrint.Visibility       = Visibility.Collapsed; //打印
            FormToolBar1.btnOutPDF.Visibility      = Visibility.Collapsed; //导出pdf
            FormToolBar1.btnOutExcel.Visibility    = Visibility.Collapsed; //导出excel
            FormToolBar1.stpCheckState.Visibility  = Visibility.Collapsed; //检查审核状态
            FormToolBar1.retEdit.Visibility        = Visibility.Collapsed;
            FormToolBar1.retRead.Visibility        = Visibility.Collapsed;
            FormToolBar1.retRefresh.Visibility     = Visibility.Collapsed;
            FormToolBar1.retAudit.Visibility       = Visibility.Collapsed;
            FormToolBar1.retDelete.Visibility      = Visibility.Collapsed;
            FormToolBar1.retPDF.Visibility         = Visibility.Collapsed;
            FormToolBar1.retAuditNoPass.Visibility = Visibility.Collapsed;

            if (formType == FormTypes.New)
            {
                Master_Golbal = new T_OA_BUSINESSTRIP();
                Master_Golbal.BUSINESSTRIPID      = System.Guid.NewGuid().ToString();
                Master_Golbal.CHECKSTATE          = ((int)CheckStates.UnSubmit).ToString();
                Master_Golbal.OWNERCOMPANYID      = Common.CurrentLoginUserInfo.UserPosts[0].CompanyID;
                Master_Golbal.OWNERDEPARTMENTID   = Common.CurrentLoginUserInfo.UserPosts[0].DepartmentID;
                Master_Golbal.OWNERPOSTID         = Common.CurrentLoginUserInfo.UserPosts[0].PostID;
                Master_Golbal.OWNERID             = Common.CurrentLoginUserInfo.EmployeeID;
                Master_Golbal.OWNERNAME           = Common.CurrentLoginUserInfo.EmployeeName;
                Master_Golbal.OWNERPOSTNAME       = Common.CurrentLoginUserInfo.UserPosts[0].PostName;
                Master_Golbal.OWNERDEPARTMENTNAME = Common.CurrentLoginUserInfo.UserPosts[0].DepartmentName;
                Master_Golbal.OWNERCOMPANYNAME    = Common.CurrentLoginUserInfo.UserPosts[0].CompanyName;
                Master_Golbal.POSTLEVEL           = Common.CurrentLoginUserInfo.UserPosts[0].PostLevel.ToString();

                Master_Golbal.TEL = Utility.GetEmployeePhone();
                txtTELL.Text      = Utility.GetEmployeePhone();


                Master_Golbal.CREATEDATE         = DateTime.Now;                                          //创建时间
                Master_Golbal.UPDATEDATE         = DateTime.Now;                                          //更新时间
                Master_Golbal.CHECKSTATE         = Utility.GetCheckState(CheckStates.UnSubmit);           //未提交
                Master_Golbal.CREATECOMPANYID    = Common.CurrentLoginUserInfo.UserPosts[0].CompanyID;    //创建公司ID
                Master_Golbal.CREATEDEPARTMENTID = Common.CurrentLoginUserInfo.UserPosts[0].DepartmentID; //创建部门ID
                Master_Golbal.CREATEPOSTID       = Common.CurrentLoginUserInfo.UserPosts[0].PostID;       //创建岗位ID
                Master_Golbal.CREATEUSERID       = Common.CurrentLoginUserInfo.EmployeeID;                //创建人ID
                Master_Golbal.CREATEUSERNAME     = Common.CurrentLoginUserInfo.EmployeeName;              //创建人姓名
                Master_Golbal.UPDATEUSERID       = Common.CurrentLoginUserInfo.EmployeeID;                //修改人ID
                Master_Golbal.UPDATEUSERNAME     = Common.CurrentLoginUserInfo.EmployeeName;
                Master_Golbal.CHECKSTATE         = Utility.GetCheckState(CheckStates.UnSubmit);           //未提交

                string StrName = Master_Golbal.OWNERNAME + "-" + Master_Golbal.OWNERPOSTNAME + "-" + Master_Golbal.OWNERDEPARTMENTNAME + "-" + Master_Golbal.OWNERCOMPANYNAME;
                txtTraveEmployee.Text = StrName;
                //strTravelEmployeeName = Master_Golbal.OWNERNAME;//修改、查看、审核时获取已保存在本地的出差人
                ToolTipService.SetToolTip(txtTraveEmployee, StrName);
                Utility.InitFileLoad("TravelRequest", Master_Golbal.BUSINESSTRIPID, formType, uploadFile);
                OaPersonOfficeClient.GetTravelSolutionByCompanyIDAsync(Common.CurrentLoginUserInfo.UserPosts[0].CompanyID, null, null);
            }
            else
            {
                if (!string.IsNullOrEmpty(Master_Golbal.BUSINESSTRIPID))
                {
                    RefreshUI(RefreshedTypes.ShowProgressBar);
                    OaPersonOfficeClient.GetTravelmanagementByIdAsync(Master_Golbal.BUSINESSTRIPID);
                    Utility.InitFileLoad("TravelRequest", Master_Golbal.BUSINESSTRIPID, formType, uploadFile);
                }
            }
        }
Esempio n. 14
0
        private string GetXmlString(T_OA_BUSINESSTRIP Info, string StrSource)
        {
            string goouttomeet = string.Empty;
            string privateaffair = string.Empty;
            string companycar = string.Empty;
            string isagent = string.Empty;
            string path = string.Empty;

            SMT.SaaS.MobileXml.MobileXml mx = new MobileXml.MobileXml();
            SMT.SaaS.MobileXml.AutoDictionary ad = new MobileXml.AutoDictionary();

            List<SMT.SaaS.MobileXml.AutoDictionary> AutoList = new List<SMT.SaaS.MobileXml.AutoDictionary>();
            AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CHECKSTATE", Master_Golbal.CHECKSTATE, GetCheckState(Master_Golbal.CHECKSTATE)));//审核状态
            if (Master_Golbal.OWNERID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERNAME))//出差人
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CURRENTEMPLOYEENAME", Common.CurrentLoginUserInfo.EmployeeName, Common.CurrentLoginUserInfo.EmployeeName));
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERID", Master_Golbal.OWNERID, Master_Golbal.OWNERNAME + "-" + Master_Golbal.OWNERPOSTNAME + "-" + Master_Golbal.OWNERDEPARTMENTNAME + "-" + Master_Golbal.OWNERCOMPANYNAME));
            }
            if (Master_Golbal.OWNERCOMPANYID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERCOMPANYNAME))//所属公司
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERCOMPANYID", Master_Golbal.OWNERCOMPANYID, Master_Golbal.OWNERCOMPANYNAME));
            }
            if (Master_Golbal.OWNERDEPARTMENTID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERDEPARTMENTNAME))//所属部门
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERDEPARTMENTID", Master_Golbal.OWNERDEPARTMENTID, Master_Golbal.OWNERDEPARTMENTNAME));
            }
            if (Master_Golbal.OWNERPOSTID != null && !string.IsNullOrEmpty(Master_Golbal.OWNERPOSTNAME))//所属岗位
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "OWNERPOSTID", Master_Golbal.OWNERPOSTID, Master_Golbal.OWNERPOSTNAME));
            }
            if (fbCtr.ExtensionalOrder.TOTALMONEY != null && fbCtr.ExtensionalOrder.TOTALMONEY > 0)//借款金额
            {
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CHARGEMONEY", Master_Golbal.CHARGEMONEY.ToString(), fbCtr.ExtensionalOrder.TOTALMONEY.ToString()));
            }
            AutoList.Add(basedata("T_OA_BUSINESSTRIP", "POSTLEVEL", Master_Golbal.POSTLEVEL, string.Empty));//出差人的岗位级别
            //AutoList.Add(basedata("T_OA_BUSINESSTRIP", "DEPARTMENTNAME", string.Empty, Master_Golbal.OWNERDEPARTMENTNAME));//出差人所在部门
            if (Master_Golbal.ISAGENT != null)//是否启用代理
            {
                if (Master_Golbal.ISAGENT == "0")
                {
                    isagent = "不启用";
                }
                else
                {
                    isagent = "启用";
                }
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "ISAGENT", Master_Golbal.ISAGENT, isagent));
            }
            AutoList.Add(basedata("T_OA_BUSINESSTRIP", "CONTENT", Master_Golbal.CONTENT, Master_Golbal.CONTENT));//出差事由

            //添加出差行程修改相关逻辑
            if (string.IsNullOrEmpty(Info.ISALTERTRAVE))
            {
                string msg = "新提交的出差申请。";
                AutoList.Add(basedata("T_OA_BUSINESSTRIP", "AlterTraveDetailBefore", msg, msg));//出差事由
            }else
            {
                if(Info.ISALTERTRAVE=="1")
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIP", "AlterTraveDetailBefore", Master_Golbal.ALTERDETAILBEFORE, Master_Golbal.ALTERDETAILBEFORE));//出差事由
                }
            }

            foreach (T_OA_BUSINESSTRIPDETAIL objDetail in TraveDetailList_Golbal)//填充子表
            {
                if (objDetail.DEPCITY != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "DEPCITY", objDetail.DEPCITY, GetCityName(objDetail.DEPCITY), objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.DESTCITY != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "DESTCITY", objDetail.DESTCITY, GetCityName(objDetail.DESTCITY), objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.BUSINESSDAYS != null)//出差天数
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "BUSINESSDAYS", objDetail.BUSINESSDAYS, objDetail.BUSINESSDAYS, objDetail.BUSINESSTRIPDETAILID));
                }
                else
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "BUSINESSDAYS", string.Empty, string.Empty, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.PRIVATEAFFAIR != null)
                {
                    if (objDetail.PRIVATEAFFAIR == "0")//是否私事
                    {
                        privateaffair = "否";
                    }
                    else
                    {
                        privateaffair = "是";
                    }
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "PRIVATEAFFAIR", objDetail.PRIVATEAFFAIR, privateaffair, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.GOOUTTOMEET != null)
                {
                    if (objDetail.GOOUTTOMEET == "0")//内部会议\培训
                    {
                        goouttomeet = "否";
                    }
                    else
                    {
                        goouttomeet = "是";
                    }
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "GOOUTTOMEET", objDetail.GOOUTTOMEET, goouttomeet, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.COMPANYCAR != null)
                {
                    if (objDetail.COMPANYCAR == "0")//是否是公司派车
                    {
                        companycar = "否";
                    }
                    else
                    {
                        companycar = "是";
                    }
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "COMPANYCAR", objDetail.COMPANYCAR, companycar, objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.TYPEOFTRAVELTOOLS != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "TYPEOFTRAVELTOOLS", objDetail.TYPEOFTRAVELTOOLS, GetTypeName(objDetail.TYPEOFTRAVELTOOLS), objDetail.BUSINESSTRIPDETAILID));
                }
                if (objDetail.TAKETHETOOLLEVEL != null)
                {
                    AutoList.Add(basedata("T_OA_BUSINESSTRIPDETAIL", "TAKETHETOOLLEVEL", objDetail.TAKETHETOOLLEVEL, GetLevelName(objDetail.TAKETHETOOLLEVEL, GetTypeId(objDetail.TYPEOFTRAVELTOOLS)), objDetail.BUSINESSTRIPDETAILID));
                }
            }
            string a = mx.TableToXml(Info, TraveDetailList_Golbal, StrSource, AutoList);

            return a;
        }