一厂MES,含注塑,喷涂,冲孔
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

258 lines
11 KiB

3 months ago
using MESClassLibrary.BLL.Log;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
namespace MESClassLibrary.DAL.Check
{
public class InspectResultDAL
{
public DataTable SearchByPage(int pageIndex, int pageSize, string StartTime, string EndTime, string position, string inspectResult,string barCode)
{
try
{
//string sql = @"select top " + pageSize + " * from (select row_number() over(order by createTime desc) as rownumber,* from tb_InspectResult) temp_row ";
//sql += " where createTime>='"+ StartTime + "' and createTime<='" + EndTime + "'";
//if (!string.IsNullOrEmpty(position))
//{
// sql += " and position = '" + position+"'";
//}
//if (!string.IsNullOrEmpty(inspectResult))
//{
// sql += " and inspectResult like '%" + inspectResult + "%'";
//}
//sql += " and rownumber > " + ((pageIndex - 1) * pageSize);
string sql = "select * FROM[dbo].[tb_InspectResult] where barcode in ";
sql += "(select barcode from(select distinct barcode, createTime from [dbo].[tb_InspectResult] ";
sql += " where barcode is not null and createTime>='" + StartTime + "' and createTime<='" + EndTime + "' ";
if (!string.IsNullOrEmpty(position))
{
sql += " and position = '" + position + "' ";
}
if (!string.IsNullOrEmpty(inspectResult))
{
sql += " and inspectResult like '%" + inspectResult + "%' ";
}
if (!string.IsNullOrEmpty(barCode))
{
sql += " and barcode like '%" + barCode + @"%' ";
}
sql += " order by createTime ";
sql += " offset " + ((pageIndex - 1) * pageSize) + " rows ";
sql += " fetch next " + pageSize + " rows only) temp_row) ";
return SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0];
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return null;
}
}
public DataTable SearchRepairByPage(int pageIndex, int pageSize, string StartTime, string EndTime, string inspectResult)
{
try
{
string sql = @" SELECT * FROM dbo.tb_InspectResult ";
//sql += "(select barcode from(select distinct barcode, createTime from [dbo].[tb_InspectResult] ";
sql += " where barcode is not null and createTime>='" + StartTime + "' and createTime<='" + EndTime + "' and REPLACE(position, ' ', '')='下线二检点修补'";
if (!string.IsNullOrEmpty(inspectResult))
{
sql += " and inspectResult like '%" + inspectResult + "%' ";
}
sql += " order by createTime ";
sql += " offset " + ((pageIndex - 1) * pageSize) + " rows ";
sql += " fetch next " + pageSize + " rows only ";
return SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0];
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return null;
}
}
public int SearchCount(string StartTime, string EndTime, string position, string inspectResult)
{
try
{
string sql = "select count(1) as num from (select barcode as num FROM[dbo].[tb_InspectResult] where barcode in ";
sql += "(select distinct barcode from [dbo].[tb_InspectResult] ";
sql += " where barcode is not null and createTime>='" + StartTime + "' and createTime<='" + EndTime + "' ";
if (!string.IsNullOrEmpty(position))
{
sql += " and position = '" + position + "' ";
}
if (!string.IsNullOrEmpty(inspectResult))
{
sql += " and inspectResult like '%" + inspectResult + "%' ";
}
sql += " ) GROUP BY barcode) tem";
//string sql = "select count(1) as num FROM[dbo].[tb_InspectResult] ";
//sql += " where barcode is not null and createTime>='" + StartTime + "' and createTime<='" + EndTime + "' ";
//if (!string.IsNullOrEmpty(position))
//{
// sql += " and position = '" + position + "' ";
//}
//if (!string.IsNullOrEmpty(inspectResult))
//{
// sql += " and inspectResult like '%" + inspectResult + "%' ";
//}
return Convert.ToInt32(SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0].Rows[0]["num"].ToString());
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return 0;
}
}
public int SearchCountByRepair(string StartTime, string EndTime, string inspectResult)
{
string sql = @" SELECT COUNT(DISTINCT barcode) as num FROM dbo.tb_InspectResult WHERE barcode IS NOT NULL AND createTime BETWEEN '"+ StartTime + "' AND '"+ EndTime + ".999' AND REPLACE(position, ' ', '')='下线二检点修补'";
if (!string.IsNullOrEmpty(inspectResult))
{
sql += " and inspectResult like '%" + inspectResult + "%' ";
}
return Convert.ToInt32(SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0].Rows[0]["num"].ToString());
}
public DataTable Search(string StartTime, string EndTime, string position, string inspectResult,string barCode)
{
try
{
string sql = "select * FROM[dbo].[tb_InspectResult] where barcode in ";
sql += "(select distinct barcode from [dbo].[tb_InspectResult] ";
sql += " where barcode is not null and createTime<='" + EndTime + "' and createTime>='" + StartTime + "' ";
if (!string.IsNullOrEmpty(position))
{
sql += " and position = '" + position + "' ";
}
if (!string.IsNullOrEmpty(inspectResult))
{
sql += " and inspectResult like '%" + inspectResult + "%' ";
}
if (!string.IsNullOrEmpty(barCode))
{
sql += " and barcode like '%" + barCode + @"%'";
}
sql += " ) order by createTime";
return SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0];
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return null;
}
}
public DataTable SearchByRepair(string StartTime, string EndTime, string inspectResult)
{
try
{
string sql = "select * FROM dbo.tb_InspectResult ";
sql += " where barcode is not null and createTime<='" + EndTime + "' and createTime>='" + StartTime + "' AND position='下线二检 点修补'";
if (!string.IsNullOrEmpty(inspectResult))
{
sql += " and inspectResult like '%" + inspectResult + "%' ";
}
sql += " order by createTime";
return SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0];
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return null;
}
}
public DataTable SearchByPosition(string StartTime, string EndTime, string side, string product)
{
try
{
string sql = "select * FROM[dbo].[tb_InspectResult] ";
sql += " where barcode is not null and productInfo!='' and productInfo is not null and createTime>='" + StartTime + "' and createTime<='" + EndTime + "' and inspectResult in ('[合格]','[抛光]','[报废]') and substring(productInfo,1,1) != ',' ";
if (!string.IsNullOrEmpty(side))
{
if ("A侧".Equals(side))
{
sql += " and (side = '" + side + "' or side ='' or side is null) ";
}
if ("B侧".Equals(side))
{
sql += " and side = '" + side + "' ";
}
}
if (!string.IsNullOrEmpty(product))
{
if ("保险杠".Equals(product))
{
sql += " and (product like '%前保%' or product like '%后保%')";
}
}
return SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0];
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return null;
}
}
public DataTable SearchByResult(string StartTime, string EndTime, string side)
{
try
{
string sql = "select * FROM[dbo].[tb_InspectResult] ";
sql += " where barcode is not null and createTime>='" + StartTime + "' and createTime<='" + EndTime + "' ";
sql += " and remark1 is not null and remark2 is not null";
if (!string.IsNullOrEmpty(side))
{
if ("A侧".Equals(side))
{
sql += " and (side = '" + side + "' or side ='' or side is null) ";
}
if ("B侧".Equals(side))
{
sql += " and side = '" + side + "' ";
}
}
return SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0];
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return null;
}
}
}
}