Example #1
0
        public bool Save()
        {
            RefreshUI(RefreshedTypes.ProgressBar);
            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY postLevel = cbPostLevel.SelectedItem as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY;

            //if (validators.Count > 0)
            //{
            //    //could use the content of the list to show an invalid message summary somehow
            //    //MessageBox.Show(validators.Count.ToString() + " invalid validators");
            //}
            //else
            //{
            if (postLevel == null || postLevel.DICTIONARYNAME == "空")
            {
                Utility.ShowCustomMessage(MessageTypes.Error, Utility.GetResourceStr("ERROR"), Utility.GetResourceStr("STRINGNOTNULL", "POSTLEVEL"));
                RefreshUI(RefreshedTypes.ProgressBar);
                return(false);
            }
            allowance.T_HR_AREADIFFERENCE.AREADIFFERENCEID = (cbArea.SelectedItem as T_HR_AREADIFFERENCE).AREADIFFERENCEID;
            allowance.POSTLEVEL = (cbPostLevel.SelectedItem as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY).DICTIONARYVALUE.ToString();
            if (FormType == FormTypes.Edit)
            {
                allowance.UPDATEDATE   = System.DateTime.Now;
                allowance.UPDATEUSERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID;

                client.AreaAllowanceUpdateAsync(allowance);
            }
            else
            {
                client.AreaAllowanceADDAsync(allowance);
            }
            return(true);
            //}
        }
Example #2
0
        public bool Save()
        {
            RefreshUI(RefreshedTypes.ProgressBar);
            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY postLevel = cbPostLevel.SelectedItem as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY;

            if (postLevel == null || postLevel.DICTIONARYNAME == "空")
            {
                Utility.ShowCustomMessage(MessageTypes.Error, Utility.GetResourceStr("ERROR"), Utility.GetResourceStr("STRINGNOTNULL", "POSTLEVEL"));
                RefreshUI(RefreshedTypes.ProgressBar);
                return(false);
            }
            allowance.T_OA_AREADIFFERENCE  = cbArea.SelectedItem as T_OA_AREADIFFERENCE;
            allowance.T_OA_TRAVELSOLUTIONS = cmbSolution.SelectedItem as T_OA_TRAVELSOLUTIONS;
            allowance.T_OA_TRAVELSOLUTIONS.TRAVELSOLUTIONSID = travelSId;
            allowance.T_OA_AREADIFFERENCE.AREADIFFERENCEID   = (cbArea.SelectedItem as T_OA_AREADIFFERENCE).AREADIFFERENCEID;
            allowance.POSTLEVEL         = (cbPostLevel.SelectedItem as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY).DICTIONARYVALUE.ToString();
            allowance.OWNERCOMPANYID    = Common.CurrentLoginUserInfo.UserPosts[0].CompanyID;
            allowance.OWNERDEPARTMENTID = Common.CurrentLoginUserInfo.UserPosts[0].DepartmentID;
            allowance.OWNERPOSTID       = Common.CurrentLoginUserInfo.UserPosts[0].PostID;
            allowance.OWNERID           = Common.CurrentLoginUserInfo.EmployeeID;
            if (FormType == FormTypes.Edit)
            {
                allowance.UPDATEDATE   = System.DateTime.Now;
                allowance.UPDATEUSERID = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID;

                client.AreaAllowanceUpdateAsync(allowance);
            }
            else
            {
                client.AreaAllowanceADDAsync(allowance, travelSId);
            }
            return(true);
        }
        private string GetXmlString(string StrSource, T_HR_NOATTENDCARDEMPLOYEES Info)
        {
            //SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY LEFTOFFICECATEGORY = cbxEmployeeType.SelectedItem as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY;
            decimal?stateValue = Convert.ToDecimal("1");
            string  checkState = string.Empty;

            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY checkStateDict = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "CHECKSTATE" && s.DICTIONARYVALUE == stateValue).FirstOrDefault();
            checkState = checkStateDict == null ? "" : checkStateDict.DICTIONARYNAME;

            decimal?postlevelValue = Common.CurrentLoginUserInfo.UserPosts[0].PostLevel;
            string  postLevelName  = string.Empty;

            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY postLevelDict = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "POSTLEVEL" && s.DICTIONARYVALUE == postlevelValue).FirstOrDefault();
            postLevelName = postLevelDict == null ? "" : postLevelDict.DICTIONARYNAME;

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

            AutoList.Add(basedata("T_HR_NOATTENDCARDEMPLOYEES", "CHECKSTATE", "1", checkState));
            AutoList.Add(basedata("T_HR_NOATTENDCARDEMPLOYEES", "OWNERPOSTNAME", Common.CurrentLoginUserInfo.UserPosts[0].PostName, Common.CurrentLoginUserInfo.UserPosts[0].PostName));
            AutoList.Add(basedata("T_HR_NOATTENDCARDEMPLOYEES", "POSTLEVEL", postlevelValue.ToString(), postlevelValue.ToString()));
            AutoList.Add(basedata("T_HR_NOATTENDCARDEMPLOYEES", "EMPLOYEENAME", Info.EMPLOYEENAME, Info.EMPLOYEENAME));
            AutoList.Add(basedata("T_HR_NOATTENDCARDEMPLOYEES", "OWNERCOMPANYID", Info.OWNERCOMPANYID, SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyName));
            AutoList.Add(basedata("T_HR_NOATTENDCARDEMPLOYEES", "OWNERDEPARTMENTID", Info.OWNERDEPARTMENTID, SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].DepartmentName));
            AutoList.Add(basedata("T_HR_NOATTENDCARDEMPLOYEES", "OWNERPOSTID", Info.OWNERPOSTID, SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostName));
            string a = mx.TableToXml(Info, null, StrSource, AutoList);

            return(a);
        }
Example #4
0
        private void lkDictionaryType_FindClick(object sender, EventArgs e)
        {
            //Dictionary<string, string> cols = new Dictionary<string, string>();
            //cols.Add("DICTIONCATEGORY", "DICTIONCATEGORYNAME");
            ////string[] cols = { "DICTIONCATEGORY", "DICTIONCATEGORYNAME" };

            //LookupForm lookups = new LookupForm(EntityNames.SysDictionary,
            //    typeof(List<Permission.UI.PermissionService.T_SYS_DICTIONARY>), cols);
            Dictionary <string, string> para = new Dictionary <string, string>();

            para.Add("SysDictionary", "2");
            string[] cols = { "DICTIONCATEGORY", "DICTIONCATEGORYNAME" };

            LookupForm lookups = new LookupForm(EntityNames.SysDictionary,
                                                typeof(List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>), cols, para);

            lookups.SelectedClick += (o, ev) =>
            {
                SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY ent = lookups.SelectedObj as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY;

                if (ent != null)
                {
                    lkDictionaryType.DataContext = ent;

                    txtDictCatogry.Text = ent.DICTIONCATEGORY.Trim();
                    this.lkDictionaryType.TxtLookUp.IsReadOnly = true;
                    txtDictCatogry.IsReadOnly = true;
                }
            };
            lookups.Show();
        }
Example #5
0
        private string GetXmlString(string StrSource, T_HR_EMPLOYEEADDSUMBATCH Info)
        {
            Dictionary <string, string> systype = new Dictionary <string, string>();

            systype.Add("0", "员工加扣款");
            systype.Add("1", "员工代扣款");
            //systype.Add("2", "绩效奖金");
            //systype.Add("3", "其他......");

            SMT.Saas.Tools.OrganizationWS.T_HR_COMPANY    ownerCompany    = (Application.Current.Resources["SYS_CompanyInfo"] as List <SMT.Saas.Tools.OrganizationWS.T_HR_COMPANY>).Where(s => s.COMPANYID == Info.OWNERCOMPANYID).FirstOrDefault();
            SMT.Saas.Tools.OrganizationWS.T_HR_DEPARTMENT ownerDepartment = (Application.Current.Resources["SYS_DepartmentInfo"] as List <SMT.Saas.Tools.OrganizationWS.T_HR_DEPARTMENT>).Where(s => s.DEPARTMENTID == Info.OWNERDEPARTMENTID).FirstOrDefault();
            SMT.Saas.Tools.OrganizationWS.T_HR_POST       ownerPost       = (Application.Current.Resources["SYS_PostInfo"] as List <SMT.Saas.Tools.OrganizationWS.T_HR_POST>).Where(s => s.POSTID == Info.OWNERPOSTID).FirstOrDefault();
            string ownerCompanyName    = string.Empty;
            string ownerDepartmentName = string.Empty;
            string ownerPostName       = string.Empty;

            if (ownerCompany != null)
            {
                ownerCompanyName = ownerCompany.CNAME;
            }
            if (ownerDepartment != null)
            {
                ownerDepartmentName = ownerDepartment.T_HR_DEPARTMENTDICTIONARY == null ? "" : ownerDepartment.T_HR_DEPARTMENTDICTIONARY.DEPARTMENTNAME;
            }
            if (ownerPost != null)
            {
                ownerPostName = ownerPost.T_HR_POSTDICTIONARY == null ? "" : ownerPost.T_HR_POSTDICTIONARY.POSTNAME;
            }

            decimal?stateValue = Convert.ToDecimal("1");
            string  checkState = string.Empty;

            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY checkStateDict = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "CHECKSTATE" && s.DICTIONARYVALUE == stateValue).FirstOrDefault();
            checkState = checkStateDict == null ? "" : checkStateDict.DICTIONARYNAME;

            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY AssignType = cbxkAssignedObjectType.SelectedItem as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY;
            SMT.SaaS.MobileXml.MobileXml             mx             = new SMT.SaaS.MobileXml.MobileXml();
            List <SMT.SaaS.MobileXml.AutoDictionary> AutoList       = new List <SMT.SaaS.MobileXml.AutoDictionary>();

            AutoList.Add(basedata("T_HR_EMPLOYEEADDSUMBATCH", "CHECKSTATE", "1", checkState));
            AutoList.Add(basedata("T_HR_EMPLOYEEADDSUMBATCH", "BALANCEOBJECTTYPE", Info.BALANCEOBJECTTYPE, AssignType != null ? AssignType.DICTIONARYNAME : ""));
            AutoList.Add(basedata("T_HR_EMPLOYEEADDSUMBATCH", "BALANCEOBJECTID", Info.BALANCEOBJECTID, lkAssignObject.TxtLookUp.Text));
            AutoList.Add(basedata("T_HR_EMPLOYEEADDSUMBATCH", "OWNERCOMPANYID", Info.OWNERCOMPANYID, ownerCompanyName));
            AutoList.Add(basedata("T_HR_EMPLOYEEADDSUMBATCH", "OWNERDEPARTMENTID", Info.OWNERDEPARTMENTID, ownerDepartmentName));
            AutoList.Add(basedata("T_HR_EMPLOYEEADDSUMBATCH", "OWNERPOSTID", Info.OWNERPOSTID, ownerPostName));
            AutoList.Add(basedata("T_HR_EMPLOYEEADDSUMBATCH", "BALANCESHORTDATE", Info.BALANCEYEAR + " - " + Info.BALANCEMONTH, Info.BALANCEYEAR + " - " + Info.BALANCEMONTH));//新加字段发薪年月
            foreach (var v in listDetail)
            {
                AutoList.Add(basedataForChild("T_HR_EMPLOYEEADDSUM", "SYSTEMTYPE", v.SYSTEMTYPE, systype[v.SYSTEMTYPE.ToString()], v.ADDSUMID));
                AutoList.Add(basedataForChild("T_HR_EMPLOYEEADDSUM", "CHECKSTATE", "1", checkState, v.ADDSUMID));
                AutoList.Add(basedataForChild("T_HR_EMPLOYEEADDSUM", "DEALDATE", v.DEALYEAR + " - " + v.DEALMONTH, v.DEALYEAR + " - " + v.DEALMONTH, v.ADDSUMID)); //新加字典加扣款年月
            }
            string a = mx.TableToXml(Info, listDetail, StrSource, AutoList);

            return(a);
        }
Example #6
0
        private bool IsLevelAdded(SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY dict)
        {
            bool rslt = false;

            var ents = from p in postLevels
                       where p.POSTLEVEL == Convert.ToDecimal(dict.DICTIONARYVALUE)
                       select p;

            rslt = ents.Count() > 0;
            return(rslt);
        }
Example #7
0
        private string GetXmlString(string StrSource, T_HR_ATTENDMONTHLYBATCHBALANCE Info)
        {
            string ownerCompanyName    = string.Empty;
            string ownerDepartmentName = string.Empty;
            string ownerPostName       = string.Empty;

            if (Application.Current.Resources["SYS_CompanyInfo"] != null)
            {
                SMT.Saas.Tools.OrganizationWS.T_HR_COMPANY    ownerCompany    = (Application.Current.Resources["SYS_CompanyInfo"] as List <SMT.Saas.Tools.OrganizationWS.T_HR_COMPANY>).Where(s => s.COMPANYID == Info.OWNERCOMPANYID).FirstOrDefault();
                SMT.Saas.Tools.OrganizationWS.T_HR_DEPARTMENT ownerDepartment = (Application.Current.Resources["SYS_DepartmentInfo"] as List <SMT.Saas.Tools.OrganizationWS.T_HR_DEPARTMENT>).Where(s => s.DEPARTMENTID == Info.OWNERDEPARTMENTID).FirstOrDefault();
                SMT.Saas.Tools.OrganizationWS.T_HR_POST       ownerPost       = (Application.Current.Resources["SYS_PostInfo"] as List <SMT.Saas.Tools.OrganizationWS.T_HR_POST>).Where(s => s.POSTID == Info.OWNERPOSTID).FirstOrDefault();
                if (ownerCompany != null)
                {
                    ownerCompanyName = ownerCompany.CNAME;
                }
                if (ownerDepartment != null)
                {
                    ownerDepartmentName = ownerDepartment.T_HR_DEPARTMENTDICTIONARY == null ? "" : ownerDepartment.T_HR_DEPARTMENTDICTIONARY.DEPARTMENTNAME;
                }
                if (ownerPost != null)
                {
                    ownerPostName = ownerPost.T_HR_POSTDICTIONARY == null ? "" : ownerPost.T_HR_POSTDICTIONARY.POSTNAME;
                }
            }
            decimal?stateValue = Convert.ToDecimal("1");
            string  checkState = string.Empty;

            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY checkStateDict = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "CHECKSTATE" && s.DICTIONARYVALUE == stateValue).FirstOrDefault();
            checkState = checkStateDict == null ? "" : checkStateDict.DICTIONARYNAME;

            T_SYS_DICTIONARY objecttype = cbxkAssignedObjectType.SelectedItem as T_SYS_DICTIONARY;

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

            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "CHECKSTATE", "1", checkState));

            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "BALANCEOBJECTTYPE", Info.BALANCEOBJECTTYPE, objecttype == null ? "" : objecttype.DICTIONARYNAME.ToString()));
            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "BALANCEOBJECTID", Info.BALANCEOBJECTID, lkAssignObject.TxtLookUp.Text));
            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "BALANCEUNIT", Info.BALANCEOBJECTID, lkAssignObject.TxtLookUp.Text));

            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "OWNERCOMPANYID", Info.OWNERCOMPANYID, ownerCompanyName));
            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "OWNERDEPARTMENTID", Info.OWNERDEPARTMENTID, ownerDepartmentName));
            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "OWNERPOSTID", Info.OWNERPOSTID, ownerPostName));
            AutoList.Add(basedata("T_HR_ATTENDMONTHLYBATCHBALANCE", "CURRENTEMPLOYEENAME", Common.CurrentLoginUserInfo.EmployeeName, Common.CurrentLoginUserInfo.EmployeeName));

            string a = mx.TableToXml(Info, entAMBList, StrSource, AutoList);

            return(a);
        }
Example #8
0
 void cbxCheckState_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY dict = ToolBar.cbxCheckState.SelectedItem as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY;
     if (dict != null)
     {
         Checkstate = dict.DICTIONARYVALUE.ToString();
         Utility.SetToolBarButtonByCheckState(dict.DICTIONARYVALUE.Value.ToInt32(), ToolBar, "T_HR_DEPARTMENTDICTIONARY");
         //if (dict.DICTIONARYVALUE.Value.ToInt32() == Convert.ToInt32(CheckStates.Approved))
         //{
         //    ToolBar.btnReSubmit.Visibility = Visibility.Visible;
         //}
         dataPager.PageIndex = 1;
         LoadData();
     }
 }
Example #9
0
        private void lkFather_FindClick(object sender, EventArgs e)
        {
            //Dictionary<string, string> cols = new Dictionary<string, string>();
            //cols.Add("DICTIONCATEGORY", "DICTIONCATEGORYNAME");
            ////cols.Add("DICTIONCATEGORY", "DICTIONCATEGORY");
            ////cols.Add("DICTIONARYNAME", "DICTIONARYNAME");
            ////cols.Add("DICTIONARYVALUE", "DICTIONARYVALUE");
            ////cols.Add("DICTIONCATEGORYNAME", "DICTIONCATEGORYNAME");
            ////string[] cols = { "DICTIONCATEGORY", "DICTIONCATEGORYNAME" };

            //LookupForm lookup = new LookupForm(EntityNames.SysDictionary,
            //    typeof(List<Permission.UI.PermissionService.T_SYS_DICTIONARY>), cols);
            Dictionary <string, string> para = new Dictionary <string, string>();

            para.Add("SysDictionary", "1");
            //cols.Add("DICTIONCATEGORY", "DICTIONCATEGORY");
            //cols.Add("DICTIONARYNAME", "DICTIONARYNAME");
            //cols.Add("DICTIONARYVALUE", "DICTIONARYVALUE");
            //cols.Add("DICTIONCATEGORYNAME", "DICTIONCATEGORYNAME");
            string[] cols = { "DICTIONCATEGORY", "DICTIONCATEGORYNAME", "DICTIONARYNAME" };

            LookupForm lookup = new LookupForm(EntityNames.SysDictionary,
                                               typeof(List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>), cols, para);

            lookup.SelectedClick += (o, ev) =>
            {
                SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY ent = lookup.SelectedObj as SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY;

                if (ent != null)
                {
                    lkFather.DataContext         = ent;
                    dictionary.T_SYS_DICTIONARY2 = new T_SYS_DICTIONARY();
                    dictionary.T_SYS_DICTIONARY2.DICTIONARYID = ent.DICTIONARYID;
                }
            };

            lookup.Show();
        }
Example #10
0
        private string GetXmlString(string StrSource, T_HR_EMPLOYEESIGNINRECORD Info)
        {
            //异常类型
            var abnormcategoryDicts = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "ABNORMCATEGORY");
            Dictionary <string, string> abnormcategory = new Dictionary <string, string>();

            foreach (var abnorm in abnormcategoryDicts)
            {
                abnormcategory.Add(abnorm.DICTIONARYVALUE.ToString(), abnorm.DICTIONARYNAME);
            }

            //异常原因
            var reasoncategoryDicts           = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "REASONCATEGORY");
            Dictionary <string, string> reson = new Dictionary <string, string>();

            foreach (var reason in reasoncategoryDicts)
            {
                reson.Add(reason.DICTIONARYVALUE.ToString(), reason.DICTIONARYNAME);
            }

            //异常时间段
            var dperiodDicts = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "ATTENDPERIOD");
            Dictionary <string, string> dperiod = new Dictionary <string, string>();

            foreach (var item in dperiodDicts)
            {
                dperiod.Add(item.DICTIONARYVALUE.ToString(), item.DICTIONARYNAME);
            }

            //审核状态
            decimal?stateValue = Convert.ToDecimal("1");
            string  checkState = string.Empty;

            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY checkStateDict = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "CHECKSTATE" && s.DICTIONARYVALUE == stateValue).FirstOrDefault();
            checkState = checkStateDict == null ? "" : checkStateDict.DICTIONARYNAME;

            //岗位级别
            decimal?postlevelValue = Convert.ToDecimal(tbPostLevel.Text.Trim());
            string  postLevelName  = string.Empty;

            SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY postLevelDict = (Application.Current.Resources["SYS_DICTIONARY"] as List <SMT.Saas.Tools.PermissionWS.T_SYS_DICTIONARY>).Where(s => s.DICTIONCATEGORY == "POSTLEVEL" && s.DICTIONARYVALUE == postlevelValue).FirstOrDefault();
            postLevelName = postLevelDict == null ? "" : postLevelDict.DICTIONARYNAME;

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

            AutoList.Add(basedata("T_HR_EMPLOYEESIGNINRECORD", "CHECKSTATE", "1", checkState));
            AutoList.Add(basedata("T_HR_EMPLOYEESIGNINRECORD", "POSTLEVEL", tbPostLevel.Text, postLevelName));
            AutoList.Add(basedata("T_HR_EMPLOYEESIGNINRECORD", "OWNERCOMPANYID", Info.OWNERCOMPANYID, SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyName));
            AutoList.Add(basedata("T_HR_EMPLOYEESIGNINRECORD", "OWNERDEPARTMENTID", Info.OWNERDEPARTMENTID, SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].DepartmentName));
            AutoList.Add(basedata("T_HR_EMPLOYEESIGNINRECORD", "OWNERPOSTID", Info.OWNERPOSTID, SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].PostName));


            AutoList.Add(basedata("T_HR_EMPLOYEESIGNINRECORD", "EMPLOYEEFULLNAME", Info.EMPLOYEENAME, lkEmployeeName.TxtLookUp.Text));
            if (SignInDetailList.Count > 0)
            {
                //签卡类型
                AutoList.Add(basedata("T_HR_EMPLOYEESIGNINRECORD", "SIGNINCATEGORY", SignInDetailList[0].REASONCATEGORY, reson[SignInDetailList[0].REASONCATEGORY.ToString()]));
            }
            foreach (var v in SignInDetailList)
            {
                AutoList.Add(basedataForChild("T_HR_EMPLOYEESIGNINDETAIL", "ABNORMCATEGORY", v.ABNORMCATEGORY, abnormcategory[v.ABNORMCATEGORY.ToString()], v.SIGNINDETAILID));
                AutoList.Add(basedataForChild("T_HR_EMPLOYEESIGNINDETAIL", "REASONCATEGORY", v.REASONCATEGORY, reson[v.REASONCATEGORY.ToString()], v.SIGNINDETAILID));
                AutoList.Add(basedataForChild("T_HR_EMPLOYEESIGNINDETAIL", "ATTENDPERIOD", v.ATTENDPERIOD, dperiod[v.ATTENDPERIOD.ToString()], v.SIGNINDETAILID));
                AutoList.Add(basedataForChild("T_HR_EMPLOYEESIGNINDETAIL", "SIGNINID", Info.SIGNINID, "", v.SIGNINDETAILID));
                if (v.ABNORMALDATE != null)
                {
                    //日期格式tostring的时候程序会根据本机电脑设置的事情格式去生成,所以这里要加和格式设置(很奇怪吧,很多情况都会这样,例如我把我电脑日期设置后面加上中文"哈哈",那么日期格式tostring的时候就会变成"2013-8-1 哈哈")
                    AutoList.Add(basedataForChild("T_HR_EMPLOYEESIGNINDETAIL", "ABNORMALDATE", v.ABNORMALDATE.Value.ToString("yyyy-MM-dd"), v.ABNORMALDATE.Value.ToString("yyyy-MM-dd"), v.SIGNINDETAILID));
                }
            }
            string a = mx.TableToXml(Info, SignInDetailList, StrSource, AutoList);

            return(a);
        }