VueWebCoreApi/DLL/DAL/MouldManagerDAL.cs
@@ -9,6 +9,7 @@
using System.Linq;
using System.Threading.Tasks;
using VueWebCoreApi.Models;
using VueWebCoreApi.Models.MouldSearch;
using VueWebCoreApi.Tools;
namespace VueWebCoreApi.DLL.DAL
@@ -1878,6 +1879,136 @@
        #endregion
        #region[模具信息查询,扫描模具二维码]
        public static ToMessage ScanMouldQrCodeMessageData(string mouldcode)
        {
            string sql = "", search = "";
            var dynamicParams = new DynamicParameters();
            try
            {
                if (mouldcode != "" && mouldcode != null)
                {
                    search += " where code=@mouldcode ";
                    dynamicParams.Add("@mouldcode", mouldcode);
                }
                //查找模具信息
                sql = @"select code,name,spec
                        from TMouldInfo"+search;
                dynamicParams.Add("@mouldcode", mouldcode);
                var dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    mes.code = "200";
                    mes.Message = "查询成功!";
                    mes.data = dt;
                    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 ScanMouldQrCodeMessageSubData(string mouldcode)
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            List<MouldMessage> list = new List<MouldMessage>();
            try
            {
                //查找模具信息
                MouldMessage moud = new MouldMessage();
                sql = @"select code,name,spec,surp_life,resi_life,status,usestatus
                        from TMouldInfo where code=@mouldcode";
                dynamicParams.Add("@mouldcode", mouldcode);
                var dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    moud.mouldcode = dt.Rows[0]["code"].ToString();
                    moud.mouldname = dt.Rows[0]["name"].ToString();
                    moud.mouldspec = dt.Rows[0]["spec"].ToString();
                    moud.surp_life = dt.Rows[0]["surp_life"].ToString();
                    moud.resi_life = dt.Rows[0]["resi_life"].ToString();
                    moud.status = dt.Rows[0]["status"].ToString();
                    moud.usestatus = dt.Rows[0]["usestatus"].ToString();
                    //查询最近一次点检记录
                    sql = @"select top 1 chk_date  from TMouldchk_Proc_Main where mould_code=@mouldcode order by chk_date desc";
                    dynamicParams.Add("@mouldcode", mouldcode);
                    var dt0 = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt0.Rows.Count > 0)
                    {
                        moud.checkdate = dt0.Rows[0]["chk_date"].ToString();
                    }
                    //查询最近一次保养记录
                    sql = @"select top 1 maint_date  from TMouldmaint_Proc_Main where mould_code=@mouldcode order by maint_date desc";
                    dynamicParams.Add("@mouldcode", mouldcode);
                    var dt1 = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt1.Rows.Count > 0)
                    {
                        moud.maintdate = dt1.Rows[0]["maint_date"].ToString();
                    }
                    //查询关联产品
                    moud.children = new List<RelatedProduct>();
                    sql = @"select P.partcode,M.partname,M.partspec
                        from TMouldInfoPart P
                        left join TMateriel_Info M on P.partcode=M.partcode
                        where P.mouldcode=@mouldcode";
                    dynamicParams.Add("@mouldcode", mouldcode);
                    var dt2 = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt2.Rows.Count > 0)
                    {
                        for (int i = 0; i < dt2.Rows.Count; i++)
                        {
                            RelatedProduct mousb = new RelatedProduct();
                            mousb.partcode = dt2.Rows[i]["partcode"].ToString();
                            mousb.partname = dt2.Rows[i]["partname"].ToString();
                            mousb.partspec = dt2.Rows[i]["partspec"].ToString();
                            moud.children.Add(mousb);
                        }
                    }
                    list.Add(moud);
                    mes.code = "200";
                    mes.Message = "查询成功!";
                    mes.data = list;
                    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 MaintainScanMouldApplyQrCodeData(string mouldcode)
        {
@@ -2050,6 +2181,9 @@
                //回写模具清单,模具状态(故障)、使用状态(待维修)
                sql = @"update TMouldInfo set status='N',usestatus='4'  where code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                //更新单据流水号
                List<object> list1 = SeachEncodeJob.StrEncodingUpdate(menucode, numvalue);
                list.Add(list1[0]);
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
@@ -2087,18 +2221,19 @@
            var dynamicParams = new DynamicParameters();
            try
            {
                if (mouldcode == "" || mouldcode == null)
                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,
                        A.request_person,U.username as request_name,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
                        left   join TUser U on A.request_person=U.usercode
                        where  A.status='REPA' " + search;
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
@@ -2206,6 +2341,9 @@
                //回写模具清单,使用状态(已维修)
                sql = @"update TMouldInfo set usestatus='5'  where code=@mouldcode";
                list.Add(new { str = sql, parm = new { mouldcode = mouldcode } });
                //更新单据流水号
                List<object> list1 = SeachEncodeJob.StrEncodingUpdate(menucode, numvalue);
                list.Add(list1[0]);
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
@@ -2250,10 +2388,11 @@
                }
                //获取模具维修列表已维修的数据
                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.repair_person,U.username as repair_name,A.repair_date,A.is_shutdown,
                        A.failure_descript   
                        from TMould_Repair A
                        inner  join TMouldInfo B on A.mould_code=B.code
                        left   join TUser U on A.repair_person=U.usercode
                        where A.status='COMP' " + search;
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)