Example #1
0
        /// <summary>
        /// 清除克隆数据
        /// </summary>
        /// <param name="para"></param>
        /// <returns></returns>
        public static IResultResponse ClearCloneData(SysParameter para)
        {
            IResultResponse resultResponse = OpsUtil.VerifyAccessToken(para);

            if (!resultResponse.Success)
            {
                return(resultResponse);
            }

            Sdk.AccessToken accessToken = resultResponse.Content as Sdk.AccessToken;
            string          key         = accessToken.Id + "_" + accessToken.UpConnectorId;

            try
            {
                DataTable dt = new CloneResultBusiness(para.dapperFactory).GetCloneData(accessToken);
                if (dt == null || dt.Rows.Count == 0)
                {
                    return(ResultResponse.ExceptionResult("没有数据可清理"));
                }
                //清缓存
                ClearCmd(key);
                string domain  = accessToken.Domain;
                string content = Utils.ToString(dt.Rows[0]["CloneResult"]);
                resultResponse = ApiRequest.GetResponse(domain, "mall.data.clone.clear", new Dictionary <string, string>()
                {
                    { "FKId", accessToken.SellerId.ToString() },
                    { "FKFlag", "2" },
                    { "Content", HttpUtility.UrlEncode(content) }
                });

                if (resultResponse.Success)
                {
                    //删除连接器中
                    new ProductRelationBusiness(para.dapperFactory).DeleteData(accessToken.Id, accessToken.UpConnectorId);

                    return(ResultResponse.GetSuccessResult("删除成功"));
                }
                return(ResultResponse.ExceptionResult("删除失败"));
            }
            catch (Exception ex)
            {
                new Exceptions(ex, "clone");
                return(ResultResponse.ExceptionResult(ex.Message));
            }
        }
Example #2
0
        /// <summary>
        /// 克隆权限
        /// </summary>
        /// <param name="para"></param>
        /// <returns></returns>
        public static IResultResponse CloneAuthority(SysParameter para)
        {
            IResultResponse resultResponse = OpsUtil.VerifyAccessToken(para);

            if (!resultResponse.Success)
            {
                return(resultResponse);
            }

            Sdk.AccessToken accessToken = resultResponse.Content as Sdk.AccessToken;

            try
            {
                var       cloneAuthority = new ProductRelationBusiness(para.dapperFactory).CloneAuthority(accessToken.Id, accessToken.UpConnectorId);
                DataTable dt             = new CloneResultBusiness(para.dapperFactory).GetCloneData(accessToken);
                if (dt == null || dt.Rows.Count == 0)
                {
                    return(ResultResponse.GetSuccessResult(1));
                }
                int status = Utils.ToInt(dt.Rows[0]["Status"]);
                if (cloneAuthority)
                {
                    return(ResultResponse.GetSuccessResult(1));
                }
                else
                {
                    if (status == -1)
                    {
                        return(ResultResponse.ExceptionResult("清除克隆失败数据"));
                    }
                    else
                    {
                        return(ResultResponse.ExceptionResult("清除克隆成功数据"));
                    }
                }
            }
            catch (Exception ex)
            {
                new Exceptions(ex, "clone");
                return(ResultResponse.ExceptionResult(ex.Message));
            }
        }