using Dapper; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using VueWebApi.Models; using VueWebApi.Tools; namespace VueWebApi.DLL.DAL { public class AppDeviceManageDAL { public static DataTable dt; //定义全局变量dt public static bool res; //定义全局变量dt public static ToMessage mes = new ToMessage(); //定义全局返回信息对象 public static string strProcName = ""; //定义全局sql变量 public static List listStr = new List(); //定义全局参数集合 public static SqlParameter[] parameters; //定义全局SqlParameter参数数组 #region[日常点检,扫描工位/设备二维码] public static ToMessage ScanDeviceQrCodeData(string eqpcode) { string sql = ""; var dynamicParams = new DynamicParameters(); try { //获取对应设备及所属车间 sql = @"select A.code,A.name,T.org_code as wksp_code,T.org_name as wksp_name,E.eqpchkmain_code from TEqpInfo A left join TOrganization T on A.wksp_code=T.org_code left join TEqpchk_Eqp E on A.code=E.eqp_code where A.code=@eqpcode and A.enable='Y' and T.description='W'"; dynamicParams.Add("@eqpcode", eqpcode); 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 SelectScanDeviceQrCodeItem(string eqpcode) { string sql = ""; var dynamicParams = new DynamicParameters(); try { //获取对应设备关联的点检项目 sql = @"select S.seq,S.code,S.name,chkdesc,isscan,cycle from TEqpchk_Eqp A inner join TEqpchk_Main B on A.eqpchkmain_code=B.code inner join TEqpchk_Deta S on B.code=S.eqpchk_main_code where A.eqp_code=@eqpcode order by S.seq asc"; dynamicParams.Add("@eqpcode", eqpcode); 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 AppDeviceCheckSave(string username, AppDevicecCheck json) { var sql = ""; string djwo = ""; List list = new List(); try { list.Clear(); mes = SeachEncode.EncodingSeach("1036"); //生成单号 if (mes.code == "300") { return mes; } else { djwo = mes.data.GetType().GetProperty("Encode").GetValue(mes.data, null).ToString(); //获取单号 } if (json == null || json.children.Count <= 0) { mes.code = "300"; mes.count = 0; mes.Message = "点检项信息不能为空!"; mes.data = null; return mes; } //写入点检记录主表 sql = @"insert into TEqpchk_Proc_Main(djwo,eqp_code,eqpchkmain_code,chk_user,chk_date,chk_result) values(@djwo,@eqp_code,@eqpchkmain_code,@lm_user,@lm_date,@chk_result)"; list.Add(new { str = sql, parm = new { djwo = djwo, eqp_code = json.code, eqpchkmain_code=json.standcode, lm_user = username, lm_date = DateTime.Now.ToString(), chk_result=json.result } }); //循环写入点检记录子表 for (int i = 0; i < json.children.Count; i++) { sql = @"insert into TEqpchk_Proc_Deta(seq,djwo,eqpchkdeta_code,chk_cyc,result,chk_value) values(@seq,@djwo,@eqpchkdeta_code,@chk_cyc,@result,@chk_value)"; list.Add(new { str = sql, parm = new { seq = json.children[i].seq, djwo = djwo, eqpchkdeta_code =json.children[i].itemcode, chk_cyc = json.children[i].cycle, result = json.children[i].result, chk_value = json.children[i].value } }); ; } bool aa = DapperHelper.DoTransaction(list); if (aa) { 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 } }