富尔达的登陆接口存redis加企业区分,车间生产数字化看板接口开发
已修改7个文件
75 ■■■■■ 文件已修改
.vs/VueWebApi/v16/.suo 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/Controllers/KanBanManagerentController.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/Controllers/LoginController.cs 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/DLL/BLL/KanBanManagerentBLL.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/DLL/DAL/KanBanManagerentDAL.cs 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/DLL/DAL/LoginDAL.cs 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/Web.config 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.vs/VueWebApi/v16/.suo
Binary files differ
VueWebApi/Controllers/KanBanManagerentController.cs
@@ -226,5 +226,19 @@
            return TJson.toJson(mes);
        }
        #endregion
        #region[富尔达车间生产数字化看板,生产信息]
        /// <summary>
        /// 富尔达车间生产数字化看板,生产信息
        /// </summary>
        /// <returns></returns>
        [Route(template: "WkshpContentData")]
        [HttpGet]
        public HttpResponseMessage WkshpContentData()
        {
            mes = KanBanManagerentBLL.WkshpContentData();
            return TJson.toJson(mes);
        }
        #endregion
    }
}
VueWebApi/Controllers/LoginController.cs
@@ -1,6 +1,7 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Net;
@@ -20,6 +21,10 @@
        //定义全局信息返回变量
        ToMessage mes = new ToMessage();
        RedisHelper redis = new RedisHelper();
        //获取企业配置Enterprise
        private static readonly string Enterprise = ConfigurationManager.AppSettings["Enterprise"];
        #region[PC用户登录]
        /// <summary>
@@ -46,18 +51,18 @@
                    ms.username = dt.Rows[0]["USERNAME"].ToString();
                    ms.password = dt.Rows[0]["PASSWORD"].ToString();
                    ms.usertype = usertype;
                    ms.rediskey = "LoginUserID" + ms.usertype + ms.userid;
                    ms.rediskey = Enterprise+"LoginUserID" + ms.usertype + ms.userid;
                    mss.Add(ms);
                    HttpContext.Current.Session.Clear(); //从会话状态集合中删除所有的键值
                    //HttpContext.Current.Session["User"] = JsonConvert.SerializeObject(ms);
                    //User loginUser = JsonConvert.DeserializeObject<User>(HttpContext.Current.Session["User"].ToString());
                    User loginUser = JsonConvert.DeserializeObject<User>(JsonConvert.SerializeObject(ms));
                    //如果redis登录用户中不存在当前用户
                    if (redis.Get<User>("LoginUserID" + ms.usertype + ms.userid, 0) == null)
                    if (redis.Get<User>(Enterprise+"LoginUserID" + ms.usertype + ms.userid, 0) == null)
                    {
                        //redis.Remove("LoginUserID" + ms.userid, 0);
                        //写入redis(注意:redis类里面的失效时间必须在key创建完成之后才生效)
                        redis.Set<User>("LoginUserID" + ms.usertype + ms.userid, ms, redis.secondsTimeOut, 0);
                        redis.Set<User>(Enterprise+"LoginUserID" + ms.usertype + ms.userid, ms, redis.secondsTimeOut, 0);
                        //登录信息写入session
                        HttpContext.Current.Session["User"] = JsonConvert.SerializeObject(ms);
                        //写入登录操作记录
@@ -69,7 +74,7 @@
                    else //如果存在
                    {
                        //获取redis中当前用户信息
                        User r_loginUser = redis.Get<User>("LoginUserID" + ms.usertype + ms.userid, 0);
                        User r_loginUser = redis.Get<User>(Enterprise+"LoginUserID" + ms.usertype + ms.userid, 0);
                        //如果session中的用户usercode和redis中的用户usercode匹配
                        if ((r_loginUser.usercode + r_loginUser.usertype).Equals(loginUser.usercode + loginUser.usertype))
                        {
@@ -80,7 +85,7 @@
                        else
                        {
                            //重置过期时间(注意:redis类里面的失效时间必须在key创建完成之后才生效)
                            redis.Set<User>("LoginUserID" + ms.usertype + loginUser.userid, loginUser, redis.secondsTimeOut, 0);
                            redis.Set<User>(Enterprise+"LoginUserID" + ms.usertype + loginUser.userid, loginUser, redis.secondsTimeOut, 0);
                            //登录信息写入session
                            HttpContext.Current.Session["User"] = JsonConvert.SerializeObject(ms);
                            //写入登录操作记录
@@ -129,7 +134,7 @@
        {
            try
            {
                redis.Remove("LoginUserID" + usertype + userid, 0); //删除redis
                redis.Remove(Enterprise+"LoginUserID" + usertype + userid, 0); //删除redis
                mes.code = "200";
                mes.count = 0;
                mes.Message = "强制下线成功!";
VueWebApi/DLL/BLL/KanBanManagerentBLL.cs
@@ -113,5 +113,12 @@
            return KanBanManagerentDAL.WkshpLineData(lineCode);
        }
        #endregion
        #region[富尔达车间生产数字化看板,生产信息]
        public static ToMessage WkshpContentData()
        {
            return KanBanManagerentDAL.WkshpContentData();
        }
        #endregion
    }
}
VueWebApi/DLL/DAL/KanBanManagerentDAL.cs
@@ -487,6 +487,36 @@
            return mes;
        }
        #endregion
        #region[富尔达车间生产数字化看板,生产信息]
        public static ToMessage WkshpContentData()
        {
            string sql = "";
            try
            {
                //获取工单报工信息,报工数量>0  且工单状态为非关闭状态
                sql = @"select A.wo_code,M.partname,B.seq,T.stepname,B.plan_qty,B.good_qty,B.ng_qty,B.bad_qty  from TK_Wrk_Man A
                        inner join TK_Wrk_Step B on A.wo_code=B.wo_code
                        left join TMateriel_Info M on A.materiel_code=M.partcode
                        left join TStep T on B.step_code=T.stepcode
                        where   A.status<>'CLOSED'
                        order by A.wo_code,B.seq";
                var data = DapperHelper.selecttable(sql);
                mes.code = "200";
                mes.Message = "查询成功!";
                mes.data = data;
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
    }
}
VueWebApi/DLL/DAL/LoginDAL.cs
@@ -1,6 +1,7 @@
using Dapper;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
@@ -19,6 +20,8 @@
        public static List<SqlParameter> listStr = new List<SqlParameter>(); //定义全局参数集合
        public static SqlParameter[] parameters; //定义全局SqlParameter参数数组
        public static string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
        //获取企业配置Enterprise
        private static readonly string Enterprise = ConfigurationManager.AppSettings["Enterprise"];
        #region [登录查询]
        public static DataTable LoginSearch(string username, string password)
@@ -239,7 +242,7 @@
                cont = DapperHelper.SQL(sql, dynamicParams);
                if (cont > 0)
                {
                    redis.Remove("LoginUserID" + usertype + userid, 0); //删除redis
                    redis.Remove(Enterprise+"LoginUserID" + usertype + userid, 0); //删除redis
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "登出成功!";
VueWebApi/Web.config
@@ -18,6 +18,8 @@
        <add key="DBServer" value="Data Source=121.196.36.24,1533;Initial Catalog=vmes_dd;User ID=sa;Password=xkd@20220602;pooling=false" />
        <!--大岛服务器环境-->
        <!--<add key="DBServer" value="Data Source=192.168.2.138;Initial Catalog=vmes;User ID=sa;Password=Dd@20220727;pooling=false" />-->
        <!--redis企业配置-->
        <add key="Enterprise" value="FED" />
        <!--redis数据库链接配置ip-->
        <add key="RedisConnIp" value="127.0.0.1" />
        <!--redis数据库链接配置端口号-->