|
|
|
@ -35,12 +35,14 @@ namespace _24Hour.Controllers
|
|
|
|
|
private readonly SqlSugarClient _db;//数据库 |
|
|
|
|
private readonly WriteSysLog _logs;//操作日志 |
|
|
|
|
private readonly ILogger<LoginController> _logger;//日志 |
|
|
|
|
private readonly WechatMessagerClient wechatMessagerClient; |
|
|
|
|
Result ret = new Result(); |
|
|
|
|
public LoginController(ILogger<LoginController> logger, SqlSugarClient db, IConfiguration configuration) |
|
|
|
|
public LoginController(ILogger<LoginController> logger, SqlSugarClient db, IConfiguration configuration, WechatMessagerClient _wechatMessagerClient) |
|
|
|
|
{ |
|
|
|
|
_logger = logger; |
|
|
|
|
_db = db; |
|
|
|
|
_configuration = configuration; |
|
|
|
|
this.wechatMessagerClient = _wechatMessagerClient; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
[HttpPost] |
|
|
|
@ -315,7 +317,7 @@ namespace _24Hour.Controllers
|
|
|
|
|
var opendata = await GetOpenId(code); |
|
|
|
|
if (opendata.IsSucceed == true) |
|
|
|
|
{ |
|
|
|
|
return WeChatLogin(opendata.result); |
|
|
|
|
return await WeChatLogin(opendata.result); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
@ -349,6 +351,18 @@ namespace _24Hour.Controllers
|
|
|
|
|
// return ret; |
|
|
|
|
//} |
|
|
|
|
//else |
|
|
|
|
if (date.identity == "律师" && date.audit == 1) |
|
|
|
|
{ |
|
|
|
|
ret.IsSucceed = false; |
|
|
|
|
ret.Message = $"用户信息审核未通过,原因:{date.describe},请重新注册!"; |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
else if (date.identity == "律师" && date.audit == 2) |
|
|
|
|
{ |
|
|
|
|
ret.IsSucceed = false; |
|
|
|
|
ret.Message = "用户信息审核中!"; |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
if (date.usertype == 0 && date.becurrent == 1) |
|
|
|
|
{ |
|
|
|
|
ret.IsSucceed = false; |
|
|
|
@ -386,7 +400,8 @@ namespace _24Hour.Controllers
|
|
|
|
|
identity = date.identity, |
|
|
|
|
usertype = date.usertype, |
|
|
|
|
unitCode = date.unitCode, |
|
|
|
|
token = tokenString |
|
|
|
|
token = tokenString, |
|
|
|
|
openId = date.wechatId |
|
|
|
|
}; |
|
|
|
|
#endregion |
|
|
|
|
ret.IsSucceed = true; |
|
|
|
@ -394,7 +409,7 @@ namespace _24Hour.Controllers
|
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
ret.IsSucceed = false; |
|
|
|
|
ret.Message = "΢ÐÅδÊÚȨ£¡"; |
|
|
|
|
ret.Message = "微信未授权,请先注册账号!"; |
|
|
|
|
} |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
@ -410,6 +425,12 @@ namespace _24Hour.Controllers
|
|
|
|
|
{ |
|
|
|
|
try |
|
|
|
|
{ |
|
|
|
|
if (string.IsNullOrEmpty(UserModel.wechatId) && await _db.Queryable<App_Sys_UserModel>().AnyAsync(x => x.wechatId == UserModel.wechatId && x.IsDeleted == 0)) |
|
|
|
|
{ |
|
|
|
|
ret.IsSucceed = false; |
|
|
|
|
ret.Message = "当前微信已与其他账号绑定"; |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var data = await _db.Queryable<App_Sys_UserModel>().Where(q => q.phone == UserModel.phone && q.IsDeleted == 0).FirstAsync(); |
|
|
|
|
if (UserModel.identity == "律师") |
|
|
|
@ -618,29 +639,7 @@ namespace _24Hour.Controllers
|
|
|
|
|
/// <param name="code"></param> |
|
|
|
|
/// <returns></returns> |
|
|
|
|
[HttpGet("getOpenid")] |
|
|
|
|
public async Task<Result> GetOpenId(string code) |
|
|
|
|
{ |
|
|
|
|
var opendata = HttpHelper.Get($"https://api.weixin.qq.com/sns/jscode2session?appid={appid}&secret={secid}&js_code={code}&grant_type=authorization_code"); |
|
|
|
|
var data = JsonConvert.DeserializeAnonymousType(opendata, new |
|
|
|
|
{ |
|
|
|
|
openid=default(string), |
|
|
|
|
session_key = default(string), |
|
|
|
|
unionid = default(string), |
|
|
|
|
errcode = default(int), |
|
|
|
|
errmsg = default(string), |
|
|
|
|
}); |
|
|
|
|
if (data.errcode==0) |
|
|
|
|
{ |
|
|
|
|
ret.IsSucceed = true; |
|
|
|
|
ret.result = data.openid; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
ret.IsSucceed = false; |
|
|
|
|
ret.Message = data.errmsg; |
|
|
|
|
} |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
public Task<Result> GetOpenId(string code) => wechatMessagerClient.GetOpenId(code); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|