示例#1
0
        /// <summary>
        /// 获取编辑Model
        /// </summary>
        /// <param name="AuthorID"></param>
        /// <returns></returns>
        private AuthorDetailEntity GetEditorModel(Int64 AuthorID)
        {
            AuthorDetailEntity model = null;

            if (AuthorID > 0)
            {
                AuthorDetailQuery query = new AuthorDetailQuery();
                query.JournalID = CurAuthor.JournalID;
                query.AuthorID  = AuthorID;
                IAuthorPlatformFacadeService service = ServiceContainer.Instance.Container.Resolve <IAuthorPlatformFacadeService>();
                model = service.GetAuthorDetailModel(query);
            }
            if (model == null)
            {
                model = new AuthorDetailEntity();
            }
            IAuthorFacadeService authorService = ServiceContainer.Instance.Container.Resolve <IAuthorFacadeService>();
            var list = authorService.GetEditorFieldsSet();

            if (list == null)
            {
                list = new List <FieldsSet>();
            }
            list.Insert(0, new FieldsSet {
                DisplayName = "中文姓名", FieldName = "中文姓名", DBField = "AuthorName", IsShow = true, IsRequire = true
            });
            model.FieldList = list.Where(p => p.IsShow).ToList();
            if (model.AuthorModel == null)
            {
                model.AuthorModel = new AuthorInfoEntity();
            }
            return(model);
        }
示例#2
0
 public ActionResult ExpertRenderToExcel(AuthorDetailQuery query, string strDict)
 {
     try
     {
         IAuthorPlatformFacadeService service = ServiceContainer.Instance.Container.Resolve <IAuthorPlatformFacadeService>();
         query.JournalID = CurAuthor.JournalID;
         query.GroupID   = 3;
         IList <AuthorDetailEntity> list = service.GetAuthorDetailList(query);
         if (list == null || list.Count <= 0)
         {
             return(Content("没有数据不能导出,请先进行查询!"));
         }
         strDict = Server.UrlDecode(strDict);
         JavaScriptSerializer         s        = new JavaScriptSerializer();
         Dictionary <string, object>  JsonData = (Dictionary <string, object>)s.DeserializeObject(strDict);
         IDictionary <string, string> dict     = ((object[])JsonData.First().Value).Select(p => (Dictionary <string, object>)p).ToDictionary(p => p["key"].ToString(), q => q["value"].ToString());
         //获取学历[Education]数据字典显示名-dict2[list[i].Education].ToString()
         ISiteConfigFacadeService service2 = ServiceContainer.Instance.Container.Resolve <ISiteConfigFacadeService>();
         DictValueQuery           query2   = new DictValueQuery();
         query2.JournalID = CurAuthor.JournalID;
         query2.DictKey   = "Education";
         IDictionary <int, string> dict2 = service2.GetDictValueDcit(query2);
         //获取职称[JobTitle]数据字典显示名-dict3[list[i].JobTitle].ToString()
         DictValueQuery query3 = new DictValueQuery();
         query3.JournalID = CurAuthor.JournalID;
         query3.DictKey   = "JobTitle";
         IDictionary <int, string> dict3 = service2.GetDictValueDcit(query3);
         //替换字段内容
         if (dict != null && dict.Count > 0)
         {
             for (int i = 0; i < list.Count; i++)
             {
                 if (list[i].AuthorModel.GroupID == 2)
                 {
                     list[i].ReserveField2 = "作者";
                 }
                 if (list[i].AuthorModel.Status == 1)
                 {
                     list[i].ReserveField3 = "正常";
                 }
                 else
                 {
                     list[i].ReserveField3 = "已停用";
                 }
                 list[i].ReserveField4 = dict2[list[i].Education].ToString();
                 list[i].ReserveField5 = dict3[list[i].JobTitle].ToString();
             }
         }
         //开始导出Excel
         RenderToExcel.ExportListToExcel <AuthorDetailEntity>(list, dict
                                                              , null
                                                              , "专家信息_导出" + DateTime.Now.ToString("yyyy-MM-dd"), false, "xls");
         return(Content("导出成功!"));
     }
     catch (Exception ex)
     {
         LogProvider.Instance.Error("导出专家信息出现异常:" + ex.Message);
         return(Content("导出专家信息异常!"));
     }
 }
示例#3
0
        /// <summary>
        /// 取消作者为专家
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ExecResult CancelAuthorExpert(AuthorDetailQuery query)
        {
            HttpClientHelper clientHelper = new HttpClientHelper();
            ExecResult       result       = clientHelper.Post <ExecResult, AuthorDetailQuery>(GetAPIUrl(APIConstant.AUTHOR_CANCELEXPERT), query);

            return(result);
        }
示例#4
0
        /// <summary>
        /// 删除作者详细信息
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ExecResult DelAuthorDetail(AuthorDetailQuery query)
        {
            HttpClientHelper clientHelper = new HttpClientHelper();
            ExecResult       result       = clientHelper.Post <ExecResult, AuthorDetailQuery>(GetAPIUrl(APIConstant.AUTHORDETAIL_DEL), query);

            return(result);
        }
示例#5
0
        /// <summary>
        /// 获取作者详细信息实体
        /// </summary>
        /// <param name="loginAuthor"></param>
        /// <returns></returns>
        public AuthorDetailEntity GetAuthorDetailModel(AuthorDetailQuery query)
        {
            HttpClientHelper   clientHelper = new HttpClientHelper();
            AuthorDetailEntity model        = clientHelper.PostAuth <AuthorDetailEntity, AuthorDetailQuery>(GetAPIUrl(APIConstant.AUTHORDETAIL_GETMODEL), query);

            return(model);
        }
示例#6
0
        /// <summary>
        /// 获取作者详细信息数据
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public IList <AuthorDetailEntity> GetAuthorDetailList(AuthorDetailQuery query)
        {
            HttpClientHelper           clientHelper = new HttpClientHelper();
            IList <AuthorDetailEntity> list         = clientHelper.Post <IList <AuthorDetailEntity>, AuthorDetailQuery>(GetAPIUrl(APIConstant.AUTHORDETAIL_GETLIST), query);

            return(list);
        }
示例#7
0
        /// <summary>
        /// 获取作者详细信息分页数据
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public Pager <AuthorDetailEntity> GetAuthorDetailPageList(AuthorDetailQuery query)
        {
            HttpClientHelper           clientHelper = new HttpClientHelper();
            Pager <AuthorDetailEntity> pager        = clientHelper.Post <Pager <AuthorDetailEntity>, AuthorDetailQuery>(GetAPIUrl(APIConstant.AUTHORDETAIL_GETPAGELIST), query);

            return(pager);
        }
示例#8
0
        public ActionResult CancelExpert(Int64[] AuthorIDs)
        {
            IAuthorPlatformFacadeService service = ServiceContainer.Instance.Container.Resolve <IAuthorPlatformFacadeService>();
            AuthorDetailQuery            query   = new AuthorDetailQuery();

            query.JournalID = CurAuthor.JournalID;
            query.AuthorIDs = AuthorIDs;
            ExecResult result = service.CancelAuthorExpert(query);

            return(Json(new { result = result.result, msg = result.msg }));
        }
示例#9
0
        public ActionResult GetExpertPageList(AuthorDetailQuery query)
        {
            IAuthorPlatformFacadeService service = ServiceContainer.Instance.Container.Resolve <IAuthorPlatformFacadeService>();

            query.JournalID   = CurAuthor.JournalID;
            query.CurrentPage = Convert.ToInt32(Request.Params["page"]);
            query.PageSize    = Convert.ToInt32(Request.Params["pagesize"]);
            Pager <AuthorDetailEntity> pager = service.GetAuthorDetailPageList(query);

            return(Json(new { Rows = pager.ItemList, Total = pager.TotalRecords }));
        }
示例#10
0
        public ActionResult SendIssueListSelectAuthor(string RecEmail, string Content)
        {
            ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve <ISiteConfigFacadeService>();
            MessageRecodeEntity      model   = new MessageRecodeEntity();

            model.ReciveAddress = RecEmail;
            model.JournalID     = CurAuthor.JournalID;
            model.MsgType       = 1;
            model.MsgTitle      = "《" + SiteConfig.SiteName + "》期刊目录推送";
            model.MsgContent    = Content;

            ExecResult result  = new ExecResult();
            var        strList = RecEmail.Split(',').Where(p => !string.IsNullOrWhiteSpace(p)).ToList();

            IAuthorPlatformFacadeService AuthorService = ServiceContainer.Instance.Container.Resolve <IAuthorPlatformFacadeService>();
            AuthorDetailQuery            query         = new AuthorDetailQuery();

            query.JournalID   = CurAuthor.JournalID;
            query.CurrentPage = 1;
            query.PageSize    = 1;


            for (int i = 0; i < strList.Count; i++)
            {
                query.LoginName = strList[i];
                Pager <AuthorDetailEntity> pager = AuthorService.GetAuthorDetailPageList(query);
                if (i == 0)
                {
                    Content = Content.Replace("%Name%", pager.ItemList[0].AuthorName);
                }
                else
                {
                    query.LoginName = strList[i - 1];
                    Pager <AuthorDetailEntity> pagerTemp = AuthorService.GetAuthorDetailPageList(query);
                    Content = Content.Replace(pagerTemp.ItemList[0].AuthorName, pager.ItemList[0].AuthorName);
                }
                service.SendEmail("《" + SiteConfig.SiteName + "》期刊目录推送", Content, strList[i], SiteConfig.SiteName, CurAuthor.JournalID);
            }


            return(Json(new { flag = 1 }));
        }
示例#11
0
        /// <summary>
        /// 取消作者为专家信息
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ExecResult CancelAuthorExpert(AuthorDetailQuery query)
        {
            ExecResult result = new ExecResult();

            if (query.AuthorIDs == null)
            {
                result.result = EnumJsonResult.failure.ToString();
                result.msg    = "没有选择设置的作者数据!";
                return(result);
            }
            bool flag = AuthorDetailBusProvider.CancelAuthorExpert(query);

            if (flag)
            {
                result.result = EnumJsonResult.success.ToString();
                result.msg    = "取消设置成功!";
            }
            else
            {
                result.result = EnumJsonResult.success.ToString();
                result.msg    = "取消设置失败!";
            }
            return(result);
        }
示例#12
0
 /// <summary>
 /// 分页获取符合查询条件的数据
 /// </summary>
 /// <param name="authorDetailQuery">AuthorDetailQuery查询实体对象</param>
 /// <returns>Pager<AuthorDetailEntity></returns>
 public Pager <AuthorDetailEntity> GetAuthorDetailPageList(AuthorDetailQuery authorDetailQuery)
 {
     return(AuthorDetailDataAccess.Instance.GetAuthorDetailPageList(authorDetailQuery));
 }
示例#13
0
 /// <summary>
 /// 取消作者为专家
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public bool CancelAuthorExpert(AuthorDetailQuery query)
 {
     return(AuthorDetailDataAccess.Instance.CancelAuthorExpert(query));
 }
示例#14
0
        /// <summary>
        /// 投稿主页
        /// </summary>
        /// <param name="CID"></param>
        /// <returns></returns>
        public ActionResult Index(Int64 CID = 0)
        {
            var model          = GetModelForModify(CID);
            var IsModifyFormat = Request["IsModifyFormat"];

            if ((model.Status > 0) && (model.Status != 100))
            {
                return(base.Content("当前稿件状态下不允许编辑!"));
            }
            if (model.Status <= 0 || model.Status == 100)
            {
                if (model.AuthorList == null || model.AuthorList.Count < 1)
                {
                    if (CID == 0)
                    {
                        var authorModel = GetAuthorDetailModel();
                        if (authorModel.PKID == 0)/// TODO:因为提取用户详情信息时是左联,所以这里用详细信息中的必填项来判断是否设置了详情信息
                        {
                            return(Content("为了方便编辑与您联系,请先完善您的个人信息!<a href=\"" + SiteConfig.RootPath + "/AuthorDetail/UpdateSelf/\">设置个人信息</a>"));
                        }
                        model.AuthorList = new List <ContributionAuthorEntity>()
                        {
                            new ContributionAuthorEntity()
                            {
                                AuthorName    = authorModel.AuthorName,
                                Gender        = authorModel.Gender,
                                Birthday      = authorModel.Birthday,
                                Nation        = authorModel.Nation,
                                NativePlace   = authorModel.NativePlace,
                                WorkUnit      = authorModel.WorkUnit,
                                Tel           = authorModel.Tel,
                                Email         = authorModel.Emial,
                                SectionOffice = authorModel.SectionOffice,
                                ZipCode       = authorModel.ZipCode,
                                Address       = authorModel.Address
                            }
                        };
                    }
                    else
                    {
                        model.AuthorList = new List <ContributionAuthorEntity>()
                        {
                            new ContributionAuthorEntity()
                            {
                                AuthorName = CurAuthor.RealName
                            }
                        };
                    }
                }
                if (model.ReferenceList == null || model.ReferenceList.Count < 1)
                {
                    model.ReferenceList = new List <ContributionReferenceEntity>()
                    {
                        new ContributionReferenceEntity()
                    }
                }
                ;
                if (model.FundList == null || model.FundList.Count < 1)
                {
                    model.FundList = new List <ContributionFundEntity>()
                    {
                        new ContributionFundEntity()
                    }
                }
                ;
                if (model.AttModel == null)
                {
                    model.AttModel = new ContributionInfoAttEntity();
                }
                ViewBag.QQ             = SiteConfig.QQ;
                ViewBag.IsModifyFormat = IsModifyFormat;
                if (CurAuthor.JournalID == 20130107001)
                {
                    AuthorDetailQuery authorDetailQuery = new AuthorDetailQuery();
                    authorDetailQuery.JournalID = CurAuthor.JournalID;
                    authorDetailQuery.AuthorID  = CurAuthor.AuthorID;
                    IAuthorPlatformFacadeService AuthorService = ServiceContainer.Instance.Container.Resolve <IAuthorPlatformFacadeService>();
                    ViewBag.Province = AuthorService.GetAuthorDetailModel(authorDetailQuery).Province;//获取作者地址以用于学科分类
                }
                return(View(model));
            }
            else
            {
                return(Content("当前稿件状态下不允许编辑!"));
            }
        }
示例#15
0
 /// <summary>
 /// 获取所有符合查询条件的数据
 /// </summary>
 /// <param name="authorDetailQuery">AuthorDetailQuery查询实体对象</param>
 /// <returns>List<AuthorDetailEntity></returns>
 public List <AuthorDetailEntity> GetAuthorDetailList(AuthorDetailQuery authorDetailQuery)
 {
     return(AuthorDetailBusProvider.GetAuthorDetailList(authorDetailQuery));
 }