using HH.WMS.BLL;
|
using HH.WMS.Common;
|
using HH.WMS.Entitys;
|
using HH.WMS.Entitys.Basic;
|
using HH.WMS.Entitys.Common;
|
using HH.WMS.Entitys.Sys;
|
using HH.WMS.WebApi.Areas.Common.Controllers;
|
using Newtonsoft.Json;
|
using Newtonsoft.Json.Linq;
|
using System;
|
using System.Collections.Generic;
|
using System.IO;
|
using System.Linq;
|
using System.Net;
|
using System.Net.Http;
|
using System.Text;
|
using System.Threading;
|
using System.Web.Http;
|
|
namespace HH.WMS.WebApi.Controllers
|
{
|
/// <summary>
|
/// 登录
|
/// </summary>
|
public class LoginController : BaseController
|
{
|
//[HttpGet]
|
//public OperateResult InitConfig()
|
//{
|
// try
|
// {
|
// return OperateResult.Succeed("", Constants.config);
|
// }
|
// catch (Exception ex)
|
// {
|
// return OperateResult.Error(ex.Message);
|
// }
|
//}
|
|
#region 登录接口
|
/// <summary>
|
/// 登录调用人员模型
|
/// </summary>
|
/// <param name="userName">用户名</param>
|
/// <param name="userPwd">密码</param>
|
/// <param name="appCode"></param>
|
/// <param name="EncryText"></param>
|
/// <param name="ip"></param>
|
/// <returns></returns>
|
/// <History>[HANHE(XDL)] CREATED BY 2018-11-13</History>
|
[HttpPost]
|
public string Login(JObject json)
|
{
|
string jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(json);
|
string result = HH.WMS.Common.WebApiManager.HttpAutoBom_Post("api/Account/Login", jsonString);
|
return result;
|
}
|
#endregion
|
|
#region 版本更新代码
|
[HttpGet]
|
public string GetPDAUpdateInfo()
|
{
|
StringBuilder strJson = new StringBuilder();
|
try
|
{
|
UpdateInfoEntity updateEntity = new UpdateInfoEntity();
|
if (System.Configuration.ConfigurationManager.AppSettings["AppName"] != null)
|
{
|
updateEntity.appName = System.Configuration.ConfigurationManager.AppSettings["AppName"].ToString();
|
}
|
if (System.Configuration.ConfigurationManager.AppSettings["PdaServerVersion"] != null)
|
{
|
updateEntity.serverVersion = System.Configuration.ConfigurationManager.AppSettings["PdaServerVersion"].ToString();
|
}
|
updateEntity.serverFlag = "1";
|
if (System.Configuration.ConfigurationManager.AppSettings["PdalastForce"] != null)
|
{
|
updateEntity.lastForce = System.Configuration.ConfigurationManager.AppSettings["PdalastForce"].ToString();
|
}
|
if (System.Configuration.ConfigurationManager.AppSettings["PdaUpdateUrl"] != null)
|
{
|
updateEntity.updateUrl = System.Configuration.ConfigurationManager.AppSettings["PdaUpdateUrl"].ToString();
|
}
|
updateEntity.upGradeInfo = "WMS有新版本,是否需要更新?";
|
if (System.Configuration.ConfigurationManager.AppSettings["WmsPdaApiUrl"] != null)
|
{
|
updateEntity.wmsAPiUrl = System.Configuration.ConfigurationManager.AppSettings["WmsPdaApiUrl"].ToString();
|
}
|
if (System.Configuration.ConfigurationManager.AppSettings["AmsPdaApiUrl"] != null)
|
{
|
updateEntity.amsApiUrl = System.Configuration.ConfigurationManager.AppSettings["AmsPdaApiUrl"].ToString();
|
}
|
strJson.Append(JsonConvert.SerializeObject(OperateResult.Succeed("", updateEntity)));
|
}
|
catch (Exception ex)
|
{
|
strJson.Append(JsonConvert.SerializeObject(OperateResult.Error("请检查web.config中pda升级配置参数是否正确," + ex.Message.ToString())));
|
}
|
return strJson.ToString();
|
}
|
#endregion
|
|
#region 版本更新
|
[HttpGet]
|
public OperateResult GetApkUpdateInfo()
|
{
|
var PdaServerVersionName = string.Empty;
|
string path = System.Web.HttpContext.Current.Server.MapPath("/Program");
|
DirectoryInfo folder = new DirectoryInfo(path);
|
if (!Directory.Exists(path))
|
{
|
Directory.CreateDirectory(path);
|
}
|
foreach (FileInfo file in folder.GetFiles("*.apk").OrderByDescending(b => b.CreationTime))
|
{
|
PdaServerVersionName = file.Name;
|
break;
|
}
|
try
|
{
|
UpdateInfoEntity updateEntity = new UpdateInfoEntity();
|
if (string.IsNullOrEmpty(Constants.SysConfig.PdaUpdateUrl))
|
{
|
return OperateResult.Error("请检查web.config中是否配置pda下载更新地址");
|
}
|
if (Constants.SysConfig.APP_NAME != null)
|
{
|
updateEntity.appName = Constants.SysConfig.PdaTitle;
|
}
|
else
|
{
|
updateEntity.appName = "";
|
}
|
updateEntity.serverVersionName = PdaServerVersionName;
|
updateEntity.updateUrl = Constants.SysConfig.PdaUpdateUrl;
|
updateEntity.upGradeInfo = "系统有新版本,是否需要更新";
|
return OperateResult.Succeed("", updateEntity);
|
}
|
catch (Exception ex)
|
{
|
return OperateResult.Error("GetApkUpdateInfo方法异常" + ex.Message);
|
}
|
|
}
|
#endregion
|
|
#region 获得有权限的菜单
|
/// <summary>
|
/// 获得有权限的菜单
|
/// </summary>
|
/// <param name="UserCode"></param>
|
/// <param name="appCode"></param>
|
/// <returns></returns>
|
/// <History>[HANHE(XDL)] CREATED BY 2018-11-13</History>
|
[HttpPost]
|
public string GetUserMenu(JObject json)
|
{
|
string jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(json);
|
string ReturnJson = HH.WMS.Common.WebApiManager.HttpAutoBom_Post("api/Menu/GetMenuByUser", jsonString);
|
return ReturnJson;
|
}
|
#endregion
|
|
#region 获得当前用户有权限的按钮
|
/// <summary>
|
/// 获得当前用户有权限的按钮
|
/// </summary>
|
/// <param name="menuid">菜单ID</param>
|
/// <returns></returns>
|
public OperateResult GetPower(string menuid)
|
{
|
return ValidateToken(t =>
|
{
|
var entity = new
|
{
|
userName = t.CN_S_LOGIN,
|
appCode = Constants.appCode,
|
menuid = menuid
|
};
|
string jsonString = JsonConvert.SerializeObject(entity);
|
string result = WebApiManager.HttpAutoBom_Post("api/Account/GetBottonCode", jsonString);
|
PowerEntity power = JsonConvert.DeserializeObject<PowerEntity>(result);
|
if (power != null)
|
if (power.listButtonCode != null)
|
power.listButtonCode.ForEach(f => { f = f.Trim(); });
|
return OperateResult.Succeed(null, power);
|
});
|
}
|
#endregion
|
|
#region 测试登录接口
|
/// <summary>
|
/// 登录调用人员模型
|
/// </summary>
|
/// <param name="userName">用户名</param>
|
/// <param name="userPwd">密码</param>
|
/// <param name="appCode"></param>
|
/// <param name="EncryText"></param>
|
/// <param name="ip"></param>
|
/// <returns></returns>
|
/// <History>[HANHE(XDL)] CREATED BY 2018-11-13</History>
|
[HttpGet]
|
public OperateResult LoginPad(string userName, string password)
|
{
|
string maxauth = "";
|
byte[] bytes = Encoding.GetEncoding("utf-8").GetBytes(userName + ":" + password);
|
try
|
{
|
maxauth = Convert.ToBase64String(bytes);
|
}
|
catch
|
{
|
return OperateResult.Error("Base64加密失败");
|
}
|
string result = "";
|
try
|
{
|
result = HH.WMS.Common.WebApiManager.HttpK3_Get("maximo/oslc/login?MAXAUTH=" + maxauth);
|
AutobomResult autobomRes = JsonConvert.DeserializeObject<AutobomResult>(result);
|
}
|
catch(Exception ex)
|
{
|
return OperateResult.Error("调用ERP接口失败" + ex.Message);
|
}
|
return OperateResult.Succeed("", result);
|
}
|
|
|
#endregion
|
}
|
}
|