using System; using System.Collections.Generic; using System.Data; using System.Runtime.CompilerServices; using Mesnac.Action.ChemicalWeighing.LjMaterial; namespace Mesnac.Action.ChemicalWeighing.LjMixFormula { public class MixDb:DBHelp { public static IList GetActionByDeviceUnit(int unitId) { IList myNameValues = new List(); string sql = $"select Id,ActionName from ActionCode where DeviceUnitId={unitId}"; var dataTable = GetTable(sql); foreach (DataRow dataTableRow in dataTable.Rows) { myNameValues.Add(new MyNameValue() { Id = Convert.ToInt32(dataTableRow[0]), Name = dataTableRow[1].ToString() }); } return myNameValues; } public static DataTable GetDetailByMId(string id) { string sql = $"select Id, MixId, ActionId, ActionName, SecondTime, Temperature, Speed, Weight, Difference, Remark from lj_mix_detail where MixId='{id}'"; return GetTable(sql); } // public static IList GetDeviceUnit() { IList myNameValues = new List(); string sql = $"select Id,Name from DeviceUnit"; var dataTable = GetTable(sql); foreach (DataRow dataTableRow in dataTable.Rows) { myNameValues.Add(new MyNameValue() { Id = Convert.ToInt32(dataTableRow[0]), Name = dataTableRow[1].ToString() }); } return myNameValues; } public static void SoftDel(string id) { string sql = $"update lj_mix Set IsEnable=0 where id='{id}'"; ExecuteNonQuery(sql); } public static LjMixView GetById(string id) { string sql = $"select Id, Name, CreateTime, UpdateTime, Remark, DeviceUnitId, DeviceUnitName from lj_mix where Id='{id}'"; var dataTable = GetTable(sql); LjMixView view = new LjMixView(); view.Data = new List() ; if (dataTable.Rows.Count == 1) { var datarow = dataTable.Rows[0]; view.Id = id; view.DeviceUnitId = Convert.ToInt32(datarow["DeviceUnitId"]); view.DeviceUnitName = datarow["DeviceUnitName"].ToString(); view.CreateTime = Convert.ToDateTime(datarow["CreateTime"]); view.UpdateTime = Convert.ToDateTime(datarow["UpdateTime"]); view.Name = datarow["Name"].ToString(); } sql = $"select Id, MixId, ActionId, ActionName, SecondTime, Temperature, Speed, Weight, Difference, Remark from lj_mix_detail where MixId='{id}'"; dataTable = GetTable(sql); foreach (DataRow dataTableRow in dataTable.Rows) { LjMixDetailView v = new LjMixDetailView() { Id = Convert.ToInt32(dataTableRow["Id"]), MixId = id, ActionId = Convert.ToInt32(dataTableRow["ActionId"]), ActionName = dataTableRow["ActionName"].ToString(), SecondTime = Convert.ToInt32(dataTableRow["SecondTime"]), Temperature = Convert.ToSingle(dataTableRow["Temperature"]), Speed = Convert.ToSingle(dataTableRow["Speed"]), Weight = Convert.ToSingle(dataTableRow["Weight"]), Difference = Convert.ToSingle(dataTableRow["Difference"]), Remark = dataTableRow["Remark"].ToString() }; view.Data.Add(v); } return view; } /// /// 获取返回混合配方的下拉框 /// /// /// public static List GetMyNameValueStrs(int deviceUnitId) { List myNameValues = new List(); string sql = $"select Id,Name,DeviceUnitName from lj_mix where DeviceUnitId={deviceUnitId} and IsEnable=1"; var dataTable = GetTable(sql); foreach (DataRow dataTableRow in dataTable.Rows) { myNameValues.Add(new MyNameValueStr() { Id = dataTableRow[0].ToString(), Name = dataTableRow[1].ToString() }); } return myNameValues; } public static void Save(LjMixView view) { string mixId = view.Id; string sql = $"select count(id) as a from lj_mix where Id='{mixId}'"; var dataTable = GetTable(sql); var count = Convert.ToInt32(dataTable.Rows[0][0]); if (count == 0) { //添加 sql = "insert into lj_mix (Id, Name, CreateTime, UpdateTime, Remark, DeviceUnitId, DeviceUnitName,IsEnable) " + $" values ('{mixId}','{view.Name}',getdate(),getdate(),'',{view.DeviceUnitId},'{view.DeviceUnitName}',1);"; ExecuteNonQuery(sql); } else { sql = $"update lj_mix set Name='{view.Name}',UpdateTime=getdate(),DeviceUnitId={view.DeviceUnitId},DeviceUnitName='{view.DeviceUnitName}' where id='{view.Id}'"; ExecuteNonQuery(sql); } sql = $"delete from lj_mix_detail where MixId='{mixId}'"; ExecuteNonQuery(sql); foreach (var ljMixDetailView in view.Data) { sql = "insert into lj_mix_detail (MixId, ActionId, ActionName, SecondTime, Temperature, Speed, Weight, Difference, Remark)" + $" values ('{mixId}',{ljMixDetailView.ActionId},'{ljMixDetailView.ActionName}',{ljMixDetailView.SecondTime},{ljMixDetailView.Temperature},{ljMixDetailView.Speed},{ljMixDetailView.Weight},{ljMixDetailView.Difference},'');"; ExecuteNonQuery(sql); } } } }