1.APP登录接口
2.模具维修、维修验证功能接口
3.模具上机、模具下机功能接口
4.模具外借、模具归还功能接口
已添加1个文件
已修改4个文件
1386 ■■■■■ 文件已修改
VueWebCoreApi/Controllers/LoginController.cs 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebCoreApi/Controllers/MouldManagerController.cs 236 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebCoreApi/DLL/BLL/MouldManagerBLL.cs 102 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebCoreApi/DLL/DAL/MouldManagerDAL.cs 947 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebCoreApi/wwwroot/AppMenuImage/app_5.png 补丁 | 查看 | 原始文档 | blame | 历史
VueWebCoreApi/Controllers/LoginController.cs
@@ -24,13 +24,13 @@
        private static readonly string Enterprise = AppSetting.GetAppSetting("Enterprise");
        #region[用户登录(PC/APP)]
        #region[用户登录(PC)]
        /// <summary>
        /// 用户登录(PC/APP)
        /// 用户登录(PC)
        /// </summary>
        /// <param name="username">用户编码</param>
        /// <param name="password">密码</param>
        /// <param name="usertype">操作端类型(PC APP)</param>
        /// <param name="usertype">操作端类型(PC)</param>
        /// <returns></returns>
        [Route(template: "LoginSave")]
        [HttpGet]
@@ -191,7 +191,7 @@
        {
            try
            {
                var token = HttpContext.Request.Headers["Token"].ToString();
                var token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyY29kZSI6Ijk5OSIsInVzZXJuYW1lIjoi5rWL6K-V6LSm5Y-3Iiwic3RvcmdfY29kZSI6IlNDQjAxXzEiLCJzdG9yZ19uYW1lIjoi55Sf5Lqn5LiA6YOoIiwiaXNfc3lzdGVtX2FkbWluIjoiTiIsInJvbGVfY29kZSI6IlIyMzA4MjMwMiw5OTk5Iiwicm9sZV9kYXRhcGVybWlzc2lvbnMiOiIiLCJ1c2VydHlwZSI6IkFQUCIsInJlZGlza2V5IjoiTmV3TUVTTG9naW5Vc2VySURBUFA5OTkiLCJ0aW1lb3V0IjoiMjAyMy0xMC0xN1QxMjozMjozOC40NTYzMTE0KzA4OjAwIn0.BX_axVR1-IT3L5SP6D5o7EhPbdW9SbZcp55C3PYy5eE"; //HttpContext.Request.Headers["Token"].ToString();
                User us = JwtTools.Denocode(token.ToString());
                mes = LoginBLL.LoginMenu(usercode, usertype,us);
            }
@@ -239,6 +239,99 @@
        }
        #endregion
        #region[APP用户登录]
        /// <summary>
        /// APP用户登录
        /// </summary>
        /// <param name="username">用户编码</param>
        /// <param name="password">密码</param>
        /// <param name="usertype">操作端类型(APP)</param>
        /// <returns></returns>
        [Route(template: "LoginAppSave")]
        [HttpGet]
        public JsonResult LoginAppSave(string username, string password, string usertype)
        {
            try
            {
                Dictionary<string, object> payLoad = new Dictionary<string, object>();
                mes = LoginBLL.LoginSearch(username, password);
                if (mes.code == "200")
                {
                    DataTable dt = (DataTable)mes.data;
                    //jwt生成Token前的用户信息
                    payLoad.Add("usercode", dt.Rows[0]["usercode"].ToString());
                    payLoad.Add("username", dt.Rows[0]["username"].ToString());
                    payLoad.Add("storg_code", dt.Rows[0]["storg_code"].ToString());
                    payLoad.Add("storg_name", dt.Rows[0]["storg_name"].ToString());
                    payLoad.Add("is_system_admin", dt.Rows[0]["is_system_admin"].ToString());
                    payLoad.Add("role_code", dt.Rows[0]["role_code"].ToString());
                    payLoad.Add("role_datapermissions", dt.Rows[0]["role_datapermissions"].ToString());
                    payLoad.Add("usertype", usertype);
                    payLoad.Add("rediskey", Enterprise + "LoginUserID" + usertype + JwtTools.FindFirstKeyByValue(payLoad, "usercode"));
                    //获取jwt生成token
                    mes = JwtTools.Encode(payLoad);
                    List<User> mss = new List<User>();
                    User ms = new User();
                    ms.usercode = dt.Rows[0]["usercode"].ToString();
                    ms.username = dt.Rows[0]["username"].ToString();
                    ms.storg_code = dt.Rows[0]["storg_code"].ToString();
                    ms.storg_name = dt.Rows[0]["storg_name"].ToString();
                    ms.is_system_admin = dt.Rows[0]["is_system_admin"].ToString();
                    ms.role_code = dt.Rows[0]["role_code"].ToString();
                    ms.role_datapermissions = dt.Rows[0]["role_datapermissions"].ToString();
                    ms.usertype = usertype;
                    ms.rediskey = Enterprise + "LoginUserID" + ms.usertype + ms.usercode;
                    ms.token = mes.data.ToString();
                    mss.Add(ms);
                    User loginUser = JsonConvert.DeserializeObject<User>(JsonConvert.SerializeObject(ms));
                    //如果redis登录用户中不存在当前用户
                    if (redis.Get<User>(ms.rediskey, 0) == null)
                    {
                        //写入redis(注意:redis类里面的失效时间必须在key创建完成之后才生效)
                        redis.Set<User>(ms.rediskey, ms, redis.secondsTimeOut, 0);
                        //写入登录操作记录
                        LogHelper.DbOperateLog(ms.usercode, "登录", "登录了系统", ms.usertype);
                        mes.code = "200";
                        mes.Message = "登录成功!";
                        mes.data = ms.token.ToString();
                    }
                    else //如果存在
                    {
                        //获取redis中当前用户信息
                        User r_loginUser = redis.Get<User>(ms.rediskey, 0);
                        //如果session中的用户usercode和redis中的用户usercode匹配
                        if ((r_loginUser.rediskey).Equals(loginUser.rediskey))
                        {
                            redis.Remove(loginUser.rediskey, 0);//删除redis
                            redis.Set<User>(loginUser.rediskey, ms, redis.secondsTimeOut, 0);//写入redis
                        }
                        else
                        {
                            //重置过期时间(注意:redis类里面的失效时间必须在key创建完成之后才生效)
                            redis.Set<User>(loginUser.rediskey, loginUser, redis.secondsTimeOut, 0);
                            //写入登录操作记录
                            LogHelper.DbOperateLog(ms.usercode, "登录", "登录了系统", ms.usertype);
                            mes.data = ms;
                            mes.code = "200";
                            mes.Message = "登录成功!";
                        }
                    }
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.Message = e.Message;
                mes.data = null;
            }
            return Json(mes);
        }
        #endregion
        #region[APP密码重置]
        /// <summary>
        /// APP密码重置
VueWebCoreApi/Controllers/MouldManagerController.cs
@@ -504,7 +504,6 @@
        #endregion
        #region[模具保养,扫描模具二维码]
        /// <summary>
        /// 模具保养,扫描模具二维码
@@ -570,7 +569,6 @@
        #endregion
        #region[模具维修申请,扫描模具二维码]
        /// <summary>
        /// 模具维修申请,扫描模具二维码
@@ -605,5 +603,239 @@
            return Json(mes);
        }
        #endregion
        #region[模具待维修信息列表]
        /// <summary>
        /// 模具待维修信息列表
        /// </summary>
        /// <param name="mouldcode">模具编码</param>
        /// <returns></returns>
        [Route(template: "RepairScanMouldQrCodeDataList")]
        [HttpGet]
        public JsonResult RepairScanMouldQrCodeDataList(string mouldcode)
        {
            mes = MouldManagerBLL.RepairScanMouldQrCodeDataList(mouldcode);
            return Json(mes);
        }
        #endregion
        #region[模具维修提交]
        /// <summary>
        /// 模具维修提交
        /// </summary>
        /// <returns></returns>
        [Route(template: "RepairScanMouldSave")]
        [HttpPost]
        public JsonResult RepairScanMouldSave([FromBody] JObject obj, List<IFormFile> files)
        {
            var token = HttpContext.Request.Headers["Token"].ToString();
            User us = JwtTools.Denocode(token.ToString());
            string menucode = obj["menucode"].ToString(); //功能编号
            string docu_code = obj["docu_code"].ToString(); //维修申请单号
            string mouldcode = obj["mouldcode"].ToString(); //模具编码
            string faultdescr = obj["faultdescr"].ToString(); //故障描述
            string is_stoprepair = obj["is_stoprepair"].ToString(); //下机维修
            string repaircontent = obj["repaircontent"].ToString(); //维修内容
            mes = MouldManagerBLL.RepairScanMouldSave(menucode,docu_code, mouldcode, faultdescr, is_stoprepair, repaircontent,us, files);
            return Json(mes);
        }
        #endregion
        #region[模具维修待验证列表]
        /// <summary>
        /// 模具维修待验证列表
        /// </summary>
        /// <param name="mouldcode">模具编码</param>
        /// <returns></returns>
        [Route(template: "RepairVerificationScanMouldData")]
        [HttpGet]
        public JsonResult RepairVerificationScanMouldData(string mouldcode)
        {
            mes = MouldManagerBLL.RepairVerificationScanMouldData(mouldcode);
            return Json(mes);
        }
        #endregion
        #region[模具维修待验证详情信息]
        /// <summary>
        /// 模具维修待验证详情信息
        /// </summary>
        /// <param name="repair_code">维修单号</param>
        /// <param name="mouldcode">模具编码</param>
        /// <returns></returns>
        [Route(template: "RepairVerificationScanMouldDataSub")]
        [HttpGet]
        public JsonResult RepairVerificationScanMouldDataSub(string repair_code, string mouldcode)
        {
            mes = MouldManagerBLL.RepairVerificationScanMouldDataSub(repair_code, mouldcode);
            return Json(mes);
        }
        #endregion
        #region[模具维修验证提交]
        /// <summary>
        /// 模具维修验证提交
        /// </summary>
        /// <param name="obj">提交数据</param>
        /// <returns></returns>
        [Route(template: "RepairVerificationScanMouldSave")]
        [HttpPost]
        public JsonResult RepairVerificationScanMouldSave([FromBody] JObject obj)
        {
            var token = HttpContext.Request.Headers["Token"].ToString();
            User us = JwtTools.Denocode(token.ToString());
            string repairwo = obj["repairwo"].ToString(); //维修单号
            string mouldcode = obj["mouldcode"].ToString(); //模具编码
            string result = obj["result"].ToString(); //验证结果
            string surp_life = obj["surp_life"].ToString(); //维修后剩余寿命
            mes = MouldManagerBLL.RepairVerificationScanMouldSave(repairwo, mouldcode,result, surp_life,us);
            return Json(mes);
        }
        #endregion
        #region[模具上机,扫描模具编码]
        /// <summary>
        /// 模具上机,扫描模具编码
        /// </summary>
        /// <param name="mouldcode"></param>
        /// <returns></returns>
        [Route(template: "MouldUpQrCodeData")]
        [HttpGet]
        public JsonResult MouldUpQrCodeData(string mouldcode)
        {
            mes = MouldManagerBLL.MouldUpQrCodeData(mouldcode);
            return Json(mes);
        }
        #endregion
        #region[模具上机提交]
        /// <summary>
        /// 模具上机提交
        /// </summary>
        /// <param name="obj">提交数据</param>
        /// <returns></returns>
        [Route(template: "MouldUpSave")]
        [HttpPost]
        public JsonResult MouldUpSave([FromBody] JObject obj)
        {
            var token = HttpContext.Request.Headers["Token"].ToString();
            User us = JwtTools.Denocode(token.ToString());
            string mouldcode = obj["mouldcode"].ToString(); //模具编码
            string eqp_code = obj["eqp_code"].ToString(); //设备编码
            string description = obj["description"].ToString(); //上机描述
            mes = MouldManagerBLL.MouldUpSave(mouldcode, eqp_code, description, us);
            return Json(mes);
        }
        #endregion
        #region[模具下机,扫描模具编码]
        /// <summary>
        /// 模具下机,扫描模具编码
        /// </summary>
        /// <param name="mouldcode"></param>
        /// <returns></returns>
        [Route(template: "MouldDownQrCodeData")]
        [HttpGet]
        public JsonResult MouldDownQrCodeData(string mouldcode)
        {
            mes = MouldManagerBLL.MouldDownQrCodeData(mouldcode);
            return Json(mes);
        }
        #endregion
        #region[模具下机提交]
        /// <summary>
        /// 模具下机提交
        /// </summary>
        /// <param name="obj">提交数据</param>
        /// <returns></returns>
        [Route(template: "MouldDownSave")]
        [HttpPost]
        public JsonResult MouldDownSave([FromBody] JObject obj)
        {
            var token = HttpContext.Request.Headers["Token"].ToString();
            User us = JwtTools.Denocode(token.ToString());
            string mouldcode = obj["mouldcode"].ToString(); //模具编码
            string eqp_code = obj["eqp_code"].ToString(); //设备编码
            string usecount_life = obj["usecount_life"].ToString(); //本次使用寿命(次)
            string description = obj["description"].ToString(); //下机描述
            mes = MouldManagerBLL.MouldDownSave(mouldcode, eqp_code, usecount_life, description, us);
            return Json(mes);
        }
        #endregion
        #region[模具外借,扫描模具编码]
        /// <summary>
        /// 模具外借,扫描模具编码
        /// </summary>
        /// <param name="mouldcode"></param>
        /// <returns></returns>
        [Route(template: "MouldLendOutQrCodeData")]
        [HttpGet]
        public JsonResult MouldLendOutQrCodeData(string mouldcode)
        {
            mes = MouldManagerBLL.MouldLendOutQrCodeData(mouldcode);
            return Json(mes);
        }
        #endregion
        #region[模具外借提交]
        /// <summary>
        /// 模具外借提交
        /// </summary>
        /// <param name="obj">提交数据</param>
        /// <returns></returns>
        [Route(template: "MouldLendOutSave")]
        [HttpPost]
        public JsonResult MouldLendOutSave([FromBody] JObject obj)
        {
            var token = HttpContext.Request.Headers["Token"].ToString();
            User us = JwtTools.Denocode(token.ToString());
            string mouldcode = obj["mouldcode"].ToString(); //模具编码
            string description = obj["description"].ToString(); //外借描述
            mes = MouldManagerBLL.MouldLendOutSave(mouldcode, description, us);
            return Json(mes);
        }
        #endregion
        #region[模具归还,扫描模具编码]
        /// <summary>
        /// 模具归还,扫描模具编码
        /// </summary>
        /// <param name="mouldcode"></param>
        /// <returns></returns>
        [Route(template: "MouldReturnQrCodeData")]
        [HttpGet]
        public JsonResult MouldReturnQrCodeData(string mouldcode)
        {
            mes = MouldManagerBLL.MouldReturnQrCodeData(mouldcode);
            return Json(mes);
        }
        #endregion
        #region[模具归还提交]
        /// <summary>
        /// 模具归还提交
        /// </summary>
        /// <param name="obj">提交数据</param>
        /// <returns></returns>
        [Route(template: "MouldReturnSave")]
        [HttpPost]
        public JsonResult MouldReturnSave([FromBody] JObject obj)
        {
            var token = HttpContext.Request.Headers["Token"].ToString();
            User us = JwtTools.Denocode(token.ToString());
            string mouldcode = obj["mouldcode"].ToString(); //模具编码
            string description = obj["description"].ToString(); //归还描述
            mes = MouldManagerBLL.MouldReturnSave(mouldcode, description, us);
            return Json(mes);
        }
        #endregion
    }
}
VueWebCoreApi/DLL/BLL/MouldManagerBLL.cs
@@ -163,7 +163,6 @@
        #endregion
        #region[模具点检,扫描模具二维码]
        public static ToMessage CheckScanMouldQrCodeData(string mouldcode)
        {
@@ -222,7 +221,6 @@
        #endregion
        #region[模具维修申请,扫描模具二维码]
        public static ToMessage MaintainScanMouldApplyQrCodeData(string mouldcode)
        {
@@ -236,5 +234,105 @@
            return MouldManagerDAL.MaintainScanMouldApplySave(menucode,mouldcode, faultsourcecode,faultdescr,us,files);
        }
        #endregion
        #region[模具待维修信息列表]
        public static ToMessage RepairScanMouldQrCodeDataList(string mouldcode)
        {
            return MouldManagerDAL.RepairScanMouldQrCodeDataList(mouldcode);
        }
        #endregion
        #region[模具维修提交]
        public static ToMessage RepairScanMouldSave(string menucode, string docu_code, string mouldcode, string faultdescr, string is_stoprepair, string repaircontent, User us, List<IFormFile> files)
        {
            return MouldManagerDAL.RepairScanMouldSave(menucode,docu_code, mouldcode,faultdescr,is_stoprepair,repaircontent,us,files);
        }
        #endregion
        #region[模具维修待验证列表]
        public static ToMessage RepairVerificationScanMouldData(string mouldcode)
        {
            return MouldManagerDAL.RepairVerificationScanMouldData(mouldcode);
        }
        #endregion
        #region[模具维修待验证详情信息]
        public static ToMessage RepairVerificationScanMouldDataSub(string repair_code, string mouldcode)
        {
            return MouldManagerDAL.RepairVerificationScanMouldDataSub(repair_code,mouldcode);
        }
        #endregion
        #region[模具维修验证提交]
        public static ToMessage RepairVerificationScanMouldSave(string repairwo, string mouldcode, string result,string surp_life, User us)
        {
            return MouldManagerDAL.RepairVerificationScanMouldSave(repairwo, mouldcode,result, surp_life, us);
        }
        #endregion
        #region[模具上机,扫描模具编码]
        public static ToMessage MouldUpQrCodeData(string mouldcode)
        {
            return MouldManagerDAL.MouldUpQrCodeData(mouldcode);
        }
        #endregion
        #region[模具上机提交]
        public static ToMessage MouldUpSave(string mouldcode, string eqp_code, string description, User us)
        {
            return MouldManagerDAL.MouldUpSave(mouldcode,eqp_code,description,us);
        }
        #endregion
        #region[模具下机,扫描模具编码]
        public static ToMessage MouldDownQrCodeData(string mouldcode)
        {
            return MouldManagerDAL.MouldDownQrCodeData(mouldcode);
        }
        #endregion
        #region[模具下机提交]
        public static ToMessage MouldDownSave(string mouldcode, string eqp_code, string usecount_life, string description, User us)
        {
            return MouldManagerDAL.MouldDownSave(mouldcode, eqp_code, usecount_life, description, us);
        }
        #endregion
        #region[模具外借,扫描模具编码]
        public static ToMessage MouldLendOutQrCodeData(string mouldcode)
        {
            return MouldManagerDAL.MouldLendOutQrCodeData(mouldcode);
        }
        #endregion
        #region[模具外借提交]
        public static ToMessage MouldLendOutSave(string mouldcode, string description, User us)
        {
            return MouldManagerDAL.MouldLendOutSave(mouldcode, description,us);
        }
        #endregion
        #region[模具归还,扫描模具编码]
        public static ToMessage MouldReturnQrCodeData(string mouldcode)
        {
            return MouldManagerDAL.MouldReturnQrCodeData(mouldcode);
        }
        #endregion
        #region[模具归还提交]
        public static ToMessage MouldReturnSave(string mouldcode, string description, User us)
        {
            return MouldManagerDAL.MouldReturnSave(mouldcode, description,us);
        }
        #endregion
    }
}
VueWebCoreApi/DLL/DAL/MouldManagerDAL.cs
@@ -256,12 +256,18 @@
            try
            {
                list.Clear();
                //判断模具是否存在点检记录、保养、维修、上下机、出入库记录,不允许删除
                //判断模具是否存在点检记录、保养、维修、上下机、外借归还、出入库记录,不允许删除
                sql = @"select mould_code   from TMouldchk_Proc_Main where mould_code=@devicecode
                        union all
                        select mould_code   from TMouldmaint_Proc_Main where mould_code=@devicecode
                        union all
                        select mould_code   from TMould_RepairRequest where mould_code=@devicecode";
                        select mould_code   from TMould_RepairRequest where mould_code=@devicecode
                        union all
                        select mould_code   from TMould_UpDownReord where mould_code=@devicecode
                        union all
                        select mould_code   from TMould_LendOutReord where mould_code=@devicecode
                        union all
                        select mould_code   from TMould_InOutReord where mould_code=@devicecode";
                dynamicParams.Add("@devicecode", mouldcode);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
@@ -1450,7 +1456,6 @@
        #endregion
        #region[模具点检,扫描模具二维码]
        public static ToMessage CheckScanMouldQrCodeData(string mouldcode)
        {
@@ -1875,7 +1880,6 @@
        #endregion
        #region[模具维修申请,扫描模具二维码]
        public static ToMessage MaintainScanMouldApplyQrCodeData(string mouldcode)
        {
@@ -1883,6 +1887,41 @@
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断当前模具当前使用状态
                sql = @"select *   from TMouldInfo where code=@mouldcode";
                dynamicParams.Add("@mouldcode", mouldcode);
                var dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    switch (dt.Rows[0]["usestatus"].ToString())
                    {
                        case "0": //在库
                            mes.code = "300";
                            mes.Message = "当前模具在库状态,请先出库操作!";
                            mes.data = null;
                            return mes;
                        case "2": //上机
                            mes.code = "300";
                            mes.Message = "当前模具上机状态,请先下机操作!";
                            mes.data = null;
                            return mes;
                        case "7": //外借
                            mes.code = "300";
                            mes.Message = "当前模具外借状态,请先归还操作!";
                            mes.data = null;
                            return mes;
                        default:
                            break;
                    }
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "无效的模具二维码信息!";
                    mes.data = null;
                    return mes;
                }
                //获取当前扫码模具是否存在已申请或已维修状态数据
                sql = @"select *  from TMould_RepairRequest where mould_code=@mouldcode and status<>'CONFIR'";
                dynamicParams.Add("@mouldcode", mouldcode);
@@ -1907,7 +1946,7 @@
                else
                {
                    //获取对应模具信息
                    sql = @"select A.code,A.name,A.spec
                    sql = @"select A.code,A.name,A.spec,A.surp_life,A.resi_life
                            from TMouldInfo A
                            where A.code=@mouldcode and A.status='Y' ";
                    dynamicParams.Add("@mouldcode", mouldcode);
@@ -1941,12 +1980,159 @@
        public static ToMessage MaintainScanMouldApplySave(string menucode, string mouldcode, string faultsourcecode, string faultdescr, User us, List<IFormFile> files)
        {
            var sql = "";
            string wxwo = "", numvalue = "";
            string sqwo = "", numvalue = "";
            List<object> list = new List<object>();
            try
            {
                list.Clear();
                mes = SeachEncodeJob.EncodingSeach(menucode);  //APP端模具维修申请生成单号
                if (mes.code == "300")
                {
                    return mes;
                }
                else
                {
                    List<string> wo = (List<string>)mes.data;
                    sqwo = wo[0].ToString(); //获取申请维修单号
                    numvalue = wo[1].ToString(); //获取流水号
                }
                //维修申请上传图片
                if (files != null && files.Count > 0)
                {
                    for (int i = 0; i < files.Count; i++)
                    {
                        // 生成文件名
                        var fileName = "SQ" + DateTime.Now.ToString("yyyyMMddhhmmss") + i.ToString() + Path.GetExtension(files[i].FileName);
                        // 拼接文件保存路径
                        var filePath = Path.Combine("wwwroot/MouldRecordImage", fileName);
                        // 保存文件
                        using (var stream = new FileStream(filePath, FileMode.Create))
                        {
                            files[i].CopyToAsync(stream);
                        }
                        //循环写维修记录对应图片表
                        sql = @"insert into  TMould_RepairImage(source_wo,wo_type,img1url)
                                values(@source_wo,@wo_type,@img1url)";
                        list.Add(new
                        {
                            str = sql,
                            parm = new
                            {
                                source_wo = sqwo,
                                wo_type = "REPA",
                                img1url = filePath
                            }
                        });
                    }
                }
                //写入维修申请记录表
                sql = @"insert into  TMould_RepairRequest(docu_code,docu_date,status,mould_code,request_person,request_date,failure_descript,source)
                                values(@docu_code,@docu_date,@status,@mould_code,@request_person,@request_date,@failure_descript,@source)";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        docu_code = sqwo,
                        docu_date = DateTime.Now.ToString(),
                        status = "REPA",
                        mould_code = mouldcode,
                        request_person = us.usercode,
                        request_date = DateTime.Now.ToString(),
                        failure_descript = faultdescr,
                        source = faultsourcecode
                    }
                });
                //回写模具清单,模具状态(故障)、使用状态(待维修)
                sql = @"update TMouldInfo set status='N',usestatus='4'  where code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "模具维修申请", "模具:" + mouldcode, us.usertype);
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "维修申请成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "维修申请失败!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具待维修信息列表]
        public static ToMessage RepairScanMouldQrCodeDataList(string mouldcode)
        {
            string sql = "", search = "";
            var dynamicParams = new DynamicParameters();
            try
            {
                if (mouldcode == "" || mouldcode == null)
                {
                    search += "and B.code=@mouldcode ";
                    dynamicParams.Add("@mouldcode", mouldcode);
                }
                //获取模具维修列表已申请未维修的数据
                sql = @"select A.docu_code,B.code as mouldcode,B.name as mouldname,B.spec as mouldspec,B.surp_life,B.resi_life,
                        A.request_person,A.request_date,
                        (case when A.source='A' then '点检' when A.source='B' then '保养' when A.source='D' then '手工' end) as source,
                        A.failure_descript
                        from TMould_RepairRequest A
                        inner  join TMouldInfo B on A.mould_code=B.code
                        where  A.status='REPA' " + search;
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
                {
                    mes.code = "200";
                    mes.Message = "查询成功!";
                    mes.data = data;
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "暂无维修申请记录!";
                    mes.data = data;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具维修提交]
        public static ToMessage RepairScanMouldSave(string menucode, string docu_code, string mouldcode, string faultdescr, string is_stoprepair, string repaircontent, User us, List<IFormFile> files)
        {
            var sql = "";
            string wxwo = "", numvalue = "";
            List<object> list = new List<object>();
            try
            {
                list.Clear();
                mes = SeachEncodeJob.EncodingSeach(menucode);  //APP端模具维修生成单号
                if (mes.code == "300")
                {
                    return mes;
@@ -1963,7 +2149,7 @@
                    for (int i = 0; i < files.Count; i++)
                    {
                        // 生成文件名
                        var fileName = DateTime.Now.ToString("yyyyMMddhhmmss") + i.ToString() + Path.GetExtension(files[i].FileName);
                        var fileName = "WX" + DateTime.Now.ToString("yyyyMMddhhmmss") + i.ToString() + Path.GetExtension(files[i].FileName);
                        // 拼接文件保存路径
                        var filePath = Path.Combine("wwwroot/MouldRecordImage", fileName);
@@ -1982,44 +2168,767 @@
                            parm = new
                            {
                                source_wo = wxwo,
                                wo_type = "REPA",
                                wo_type = "COMP",
                                img1url = filePath
                            }
                        });
                    }
                }
                //写入维修申请记录表
                sql = @"insert into  TMould_RepairRequest(docu_code,docu_date,status,mould_code,request_person,request_date,failure_descript,source)
                                values(@docu_code,@docu_date,@status,@mould_code,@request_person,@request_date,@failure_descript,@source)";
                //写入维修记录表
                sql = @"insert into  TMould_Repair(repair_code,docu_date,status,mould_code,repair_person,repair_date,repair_content,failure_descript,is_shutdown,source_wo)
                        values(@repair_code,@docu_date,@status,@mould_code,@repair_person,@repair_date,@repair_content,@failure_descript,@is_shutdown,@source_wo)";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        docu_code = wxwo,
                        repair_code = wxwo,
                        docu_date = DateTime.Now.ToString(),
                        status = "REPA",
                        status = "COMP",
                        mould_code = mouldcode,
                        request_person = us.usercode,
                        request_date = DateTime.Now.ToString(),
                        repair_person = us.usercode,
                        repair_date = DateTime.Now.ToString(),
                        repair_content = repaircontent,
                        failure_descript = faultdescr,
                        source = faultsourcecode
                        is_shutdown = is_stoprepair,
                        source_wo = docu_code
                    }
                });
                //更新维修申请单状态
                sql = @"update TMould_RepairRequest set status=@status  where docu_code=@docu_code  and mould_code=@mouldcode";
                list.Add(new { str = sql, parm = new { docu_code = docu_code, mouldcode = mouldcode, status = "COMP" } });
                //回写模具清单,使用状态(已维修)
                sql = @"update TMouldInfo set usestatus='5'  where code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "模具维修", "模具:" + mouldcode, us.usertype);
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "维修申请成功!";
                    mes.Message = "维修成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "维修申请失败!";
                    mes.Message = "维修失败!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具维修待验证列表]
        public static ToMessage RepairVerificationScanMouldData(string mouldcode)
        {
            string sql = "", search = "";
            var dynamicParams = new DynamicParameters();
            try
            {
                if (mouldcode == "" || mouldcode == null)
                {
                    search += "and B.code=@mouldcode ";
                    dynamicParams.Add("@mouldcode", mouldcode);
                }
                //获取模具维修列表已维修的数据
                sql = @"select A.repair_code,B.code as mouldcode,B.name as mouldname,B.spec as mouldspec,B.surp_life,B.resi_life,
                        A.repair_person,A.repair_date,A.is_shutdown,
                        A.failure_descript
                        from TMould_Repair A
                        inner  join TMouldInfo B on A.mould_code=B.code
                        where A.status='COMP' " + search;
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
                {
                    mes.code = "200";
                    mes.Message = "查询成功!";
                    mes.data = data;
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "暂无维修记录!";
                    mes.data = data;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具维修待验证详情信息]
        public static ToMessage RepairVerificationScanMouldDataSub(string repair_code, string mouldcode)
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            Dictionary<string, object> dict = new Dictionary<string, object>();
            try
            {
                //根据设模具编码获取维修详情
                sql = @"select repair_code,failure_descript,is_shutdown,repair_content,repair_part
                        from TMould_Repair
                        where repair_code=@repair_code  and mould_code=mouldcode";
                dynamicParams.Add("@repair_code", repair_code);
                dynamicParams.Add("@mouldcode", mouldcode);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
                {
                    dict.Add("failure_descript", data.Rows[0]["failure_descript"].ToString()); //故障描述
                    //获取故障上传图片
                    sql = @"select img1url  from TMould_RepairImage where source_wo=@source_wo and wo_type='COMP'";
                    dynamicParams.Add("@source_wo", data.Rows[0]["repair_code"].ToString());
                    var data0 = DapperHelper.selectdata(sql, dynamicParams);
                    if (data0.Rows.Count > 0)
                    {
                        dict.Add("failure_descriptimg", data0); //故障上传图片
                    }
                    dict.Add("repair_content", data.Rows[0]["repair_content"].ToString()); //维修内容
                    mes.code = "200";
                    mes.Message = "查询成功!";
                    mes.data = dict;
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "暂无维修记录!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具维修验证提交]
        public static ToMessage RepairVerificationScanMouldSave(string repairwo, string mouldcode, string result, string surp_life, User us)
        {
            var sql = ""; decimal surplife = 0;
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //验证结果为OK且验证后的剩余寿命>0
                if (result == "OK" && decimal.Parse(surp_life) > 0)
                {
                    surplife = decimal.Parse(surp_life);
                }
                //根据模具维修单查找源单(维修申请单)
                sql = @"select source_wo   from TMould_Repair where repair_code=@repairwo";
                dynamicParams.Add("@repairwo", repairwo);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                //更新设备维修记录验证人员、验证时间、验证结果、验证状态
                sql = @"update TMould_Repair set status=@status,is_verifi=@is_verifi,verify_result=@verify_result,verify_person=@verify_person,verify_date=@verify_date,verify_surplife=@verify_surplife
                        where repair_code=@repair_code  and mould_code=@mould_code";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        status = "CONFIR",
                        is_verifi = "Y",
                        verify_result = result,
                        verify_person = us.usercode,
                        verify_date = DateTime.Now.ToString(),
                        repair_code = repairwo,
                        mould_code = mouldcode,
                        verify_surplife = surplife
                    }
                });
                //更新维修申请单状态
                sql = @"update TMould_RepairRequest set status=@status  where docu_code=@docu_code  and mould_code=@mouldcode";
                list.Add(new { str = sql, parm = new { docu_code = data.Rows[0]["source_wo"].ToString(), mouldcode = mouldcode, status = "CONFIR" } });
                if (result == "OK")
                {
                    if (surplife > 0)
                    {
                        //回写模具清单,模具状态(正常),使用状态(已维修),剩余寿命(次)
                        sql = @"update TMouldInfo set status='Y',usestatus='6',resi_life=@resi_life  where code=@mouldcode";
                        list.Add(new { str = sql, parm = new { mouldcode = mouldcode, resi_life = surp_life } });
                    }
                    else
                    {
                        //回写模具清单,模具状态(正常),使用状态(已维修)
                        sql = @"update TMouldInfo set status='Y',usestatus='6'  where code=@mouldcode";
                        list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                    }
                }
                else
                {
                    //回写模具清单,模具状态(故障),使用状态(已维修)
                    sql = @"update TMouldInfo set status='N',usestatus='6'  where code=@mouldcode";
                    list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "模具维修验证", "模具:" + mouldcode, us.usertype);
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "维修验证成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "维修验证失败!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具上机,扫描模具编码]
        public static ToMessage MouldUpQrCodeData(string mouldcode)
        {
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断当前模具当前使用状态
                sql = @"select code,name,spec,status,usestatus,surp_life,resi_life
                        from TMouldInfo where code=@mouldcode";
                dynamicParams.Add("@mouldcode", mouldcode);
                var dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    if (dt.Rows[0]["status"].ToString() == "Y")
                    {
                        switch (dt.Rows[0]["usestatus"].ToString())
                        {
                            case "0": //在库
                                mes.code = "300";
                                mes.Message = "当前模具在库状态,不符合上机操作!";
                                mes.data = null;
                                return mes;
                            case "2": //上机
                                mes.code = "300";
                                mes.Message = "当前模具上机状态,不符合上机操作!";
                                mes.data = null;
                                return mes;
                            case "7": //外借
                                mes.code = "300";
                                mes.Message = "当前模具外借状态,不符合上机操作!";
                                mes.data = null;
                                return mes;
                            default:
                                mes.code = "200";
                                mes.Message = "查询成功!";
                                mes.data = dt;
                                break;
                        }
                    }
                    else
                    {
                        mes.code = "300";
                        mes.Message = "模具故障或维修中,不允许上机!";
                        mes.data = null;
                        return mes;
                    }
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "无效的模具二维码信息!";
                    mes.data = null;
                    return mes;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具上机提交]
        public static ToMessage MouldUpSave(string mouldcode, string eqp_code, string description, User us)
        {
            var sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //写入上下机机记录表(上机操作)
                sql = @"insert into  TMould_UpDownReord(mould_code,type,eqp_code,description,is_up,lm_user,lm_date)
                        values(@mould_code,@type,@eqp_code,@description,@is_up,@lm_user,@lm_date)";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        mould_code = mouldcode,
                        type = "UP",
                        eqp_code = eqp_code,
                        description = description,
                        is_up = "Y",
                        lm_user = us.usercode,
                        lm_date = DateTime.Now.ToString()
                    }
                });
                //回写模具清单,使用状态(上机)
                sql = @"update TMouldInfo set usestatus='2'  where code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "模具上机", "模具:" + mouldcode, us.usertype);
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "模具上机成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "模具上机失败!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具下机,扫描模具编码]
        public static ToMessage MouldDownQrCodeData(string mouldcode)
        {
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断当前模具当前使用状态
                sql = @"select *   from TMouldInfo where code=@mouldcode ";
                dynamicParams.Add("@mouldcode", mouldcode);
                var dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    if (dt.Rows[0]["status"].ToString() == "Y")
                    {
                        //判断当前模具是否在上机状态
                        sql = @"select A.mould_code,M.name as mould_name,M.spec as mould_spec,
                                M.surp_life,M.resi_life,A.eqp_code,E.name as eqp_name
                                from TMould_UpDownReord A
                                left join TMouldInfo M on A.mould_code=M.code
                                left join TEqpInfo E on A.eqp_code=E.code
                                where A.mould_code=@mouldcode and A.is_up='Y'";
                        dynamicParams.Add("@mouldcode", mouldcode);
                        var data = DapperHelper.selectdata(sql, dynamicParams);
                        if (data.Rows.Count > 0)
                        {
                            mes.code = "200";
                            mes.Message = "查询成功!";
                            mes.data = data;
                            return mes;
                        }
                        else
                        {
                            mes.code = "300";
                            mes.Message = "当前模具未上机,不符合下机操作!";
                            mes.data = null;
                            return mes;
                        }
                    }
                    else
                    {
                        mes.code = "300";
                        mes.Message = "模具故障或维修中,不符合下机操作!";
                        mes.data = null;
                        return mes;
                    }
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "无效的模具二维码信息!";
                    mes.data = null;
                    return mes;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具下机提交]
        public static ToMessage MouldDownSave(string mouldcode, string eqp_code, string usecount_life, string description, User us)
        {
            var sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //写入上下机机记录表(下机操作)
                sql = @"insert into  TMould_UpDownReord(mould_code,type,usecount_life,eqp_code,description,is_up,lm_user,lm_date)
                        values(@mould_code,@type,@eqp_code,@description,@is_up,@lm_user,@lm_date)";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        mould_code = mouldcode,
                        type = "DOWN",
                        usecount_life = decimal.Parse(usecount_life),
                        eqp_code = eqp_code,
                        description = description,
                        is_up = "N",
                        lm_user = us.usercode,
                        lm_date = DateTime.Now.ToString()
                    }
                });
                //回写上机记录上机标识(清除)
                sql = @"update TMould_UpDownReord set is_up='N'  where mould_code=@mouldcode and eqp_code=@eqp_code";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode, eqp_code = eqp_code } });
                //回写模具清单
                if (decimal.Parse(usecount_life) > 0)
                {
                    //回写模具清单,使用状态(下机),剩余寿命
                    sql = @"update TMouldInfo set usestatus='3',resi_life=resi_life-@resi_life  where code=@mouldcode";
                    list.Add(new { str = sql, parm = new { mouldcode = mouldcode, resi_life = decimal.Parse(usecount_life) } });
                }
                else
                {
                    //回写模具清单,使用状态(下机)
                    sql = @"update TMouldInfo set usestatus='3'  where code=@mouldcode";
                    list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "模具下机", "模具:" + mouldcode, us.usertype);
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "模具下机成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "模具下机失败!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具外借,扫描模具编码]
        public static ToMessage MouldLendOutQrCodeData(string mouldcode)
        {
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断当前模具当前使用状态
                sql = @"select code,name,spec,status,usestatus,surp_life,resi_life
                        from TMouldInfo where code=@mouldcode";
                dynamicParams.Add("@mouldcode", mouldcode);
                var dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    if (dt.Rows[0]["status"].ToString() == "Y")
                    {
                        switch (dt.Rows[0]["usestatus"].ToString())
                        {
                            case "0": //在库
                                mes.code = "300";
                                mes.Message = "当前模具在库状态,不符合外借操作!";
                                mes.data = null;
                                return mes;
                            case "2": //上机
                                mes.code = "300";
                                mes.Message = "当前模具上机状态,不符合外借操作!";
                                mes.data = null;
                                return mes;
                            case "7": //外借
                                mes.code = "300";
                                mes.Message = "当前模具外借状态,不符合外借操作!";
                                mes.data = null;
                                return mes;
                            default:
                                mes.code = "200";
                                mes.Message = "查询成功!";
                                mes.data = dt;
                                break;
                        }
                    }
                    else
                    {
                        mes.code = "300";
                        mes.Message = "模具故障或维修中,不允许外借!";
                        mes.data = null;
                        return mes;
                    }
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "无效的模具二维码信息!";
                    mes.data = null;
                    return mes;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具外借提交]
        public static ToMessage MouldLendOutSave(string mouldcode, string description, User us)
        {
            var sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //写入外借归还记录表(外借操作)
                sql = @"insert into  TMould_LendOutReord(mould_code,type,description,is_ledout,lm_user,lm_date)
                        values(@mould_code,@type,@description,@is_ledout,@lm_user,@lm_date)";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        mould_code = mouldcode,
                        type = "OUT",
                        description = description,
                        is_ledout = "Y",
                        lm_user = us.usercode,
                        lm_date = DateTime.Now.ToString()
                    }
                });
                //回写模具清单,使用状态(外借)
                sql = @"update TMouldInfo set usestatus='7'  where code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "模具外借", "模具:" + mouldcode, us.usertype);
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "模具外借成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "模具外借失败!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具归还,扫描模具编码]
        public static ToMessage MouldReturnQrCodeData(string mouldcode)
        {
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断当前模具当前使用状态
                sql = @"select *   from TMouldInfo where code=@mouldcode ";
                dynamicParams.Add("@mouldcode", mouldcode);
                var dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    if (dt.Rows[0]["status"].ToString() == "Y")
                    {
                        //判断当前模具是否在外借状态
                        sql = @"select A.mould_code,M.name as mould_name,M.spec as mould_spec,
                                M.surp_life,M.resi_life
                                from TMould_LendOutReord A
                                left join TMouldInfo M on A.mould_code=M.code
                                where A.mould_code=@mouldcode and A.is_ledout='Y'";
                        dynamicParams.Add("@mouldcode", mouldcode);
                        var data = DapperHelper.selectdata(sql, dynamicParams);
                        if (data.Rows.Count > 0)
                        {
                            mes.code = "200";
                            mes.Message = "查询成功!";
                            mes.data = data;
                            return mes;
                        }
                        else
                        {
                            mes.code = "300";
                            mes.Message = "当前模具未外借,不符合归还操作!";
                            mes.data = null;
                            return mes;
                        }
                    }
                    else
                    {
                        mes.code = "300";
                        mes.Message = "模具故障或维修中,不符合归还操作!";
                        mes.data = null;
                        return mes;
                    }
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "无效的模具二维码信息!";
                    mes.data = null;
                    return mes;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[模具归还提交]
        public static ToMessage MouldReturnSave(string mouldcode, string description, User us)
        {
            var sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //写入模具外借记录表(下机操作)
                sql = @"insert into  TMould_LendOutReord(mould_code,type,description,is_ledout,lm_user,lm_date)
                        values(@mould_code,@type,@description,@is_ledout,@lm_user,@lm_date)";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        mould_code = mouldcode,
                        type = "IN",
                        description = description,
                        is_ledout = "N",
                        lm_user = us.usercode,
                        lm_date = DateTime.Now.ToString()
                    }
                });
                //回写模具外借记录表外借标识(清除)
                sql = @"update TMould_LendOutReord set is_ledout='N'  where mould_code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                //回写模具清单,使用状态(归还)
                sql = @"update TMouldInfo set usestatus='8'  where code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "模具归还", "模具:" + mouldcode, us.usertype);
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "模具归还成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "模具归还失败!";
                    mes.data = null;
                }
            }
VueWebCoreApi/wwwroot/AppMenuImage/app_5.png