using Dapper;
using Estsh.Core.Dapper;
using Estsh.Core.Model.EnumUtil;
using Estsh.Core.Model.ExcelModel;
using Estsh.Core.Model.Result;
using Estsh.Core.Models;
using Estsh.Core.Repository.IRepositories;
using System.Collections;
using System.Data;
using System.Text;
namespace Estsh.Core.Repositories
{
///
/// 数据访问类
///
public class PullGroupMESRepository : BaseRepository, IPullGroupMESRepository
{
public PullGroupMESRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext)
{
}
#region 成员方法
///
/// 获得菜单列表数据
///
public List getList(string ruid)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from wms_pulling_group_mes (nolock) ");
if (!ruid.Trim().Equals(""))
{
strSql.Append(" where ruid=" + ruid);
}
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
///
/// 获取分页数据列表
///
public Hashtable getPullGroupListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("select * from wms_pulling_group_mes " + strWhere);
List dataList = dbConn.Query(SqlStringBuilder.ToString()).ToList();
result.Add("dataList", dataList);
result.Add("totalCount", dataList.Count());
return result;
}
}
///
/// 获取分页数据列表
///
public Hashtable getPullGroupDetailListByPage(string strWhere)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("select a.* from wms_pulling_group_part a (nolock) ");
SqlStringBuilder.Append("where " + strWhere);
List dataList = dbConn.Query(SqlStringBuilder.ToString()).ToList();
result.Add("dataList", dataList);
result.Add("totalCount", dataList.Count());
return result;
}
}
public List getPullGroupDetailList(string strWhere)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("select a.* from wms_pulling_group_part a (nolock) ");
SqlStringBuilder.Append("where " + strWhere);
List dataList = dbConn.Query(SqlStringBuilder.ToString()).ToList();
return dataList;
}
}
public List GetPartInfo(string part_no)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT part_id,part_no,part_spec,default_box_qty FROM sys_part (NOLOCK) WHERE enabled='Y' AND part_no LIKE '" + part_no + "%' ORDER BY part_no";
List result = dbConn.Query(sql).ToList();
return result;
}
}
public List GetErpwarehouse()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
String strSql = "select distinct erp_warehouse as [key] , erp_warehouse as value from sys_zone where enabled='Y' ";
List result = dbConn.Query(strSql).ToList();
return result;
}
}
///
/// 获取下拉框菜单数据 这里显示的是待添加的厂区信息,厂区名称
///
///
public List getSelectFactory()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select factory_id as [value],factory_name as [key] from sys_factory where Enabled = 'Y'");
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
public List getSelectWarehouse()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select warehouse_id as [value],warehouse_desc as [key] from sys_warehouse where Enabled = 'Y'");
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
public List getSelectWarehouse(string warehouseid)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_warehouse where Enabled = 'Y' and warehouse_id='" + warehouseid + "'");
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
public List getSelectZone(string zoneid)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_zone where Enabled = 'Y' and zone_id='" + zoneid + "'");
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
public List getSelectZone()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select zone_id as [value],zone_name as [key] from sys_zone where Enabled = 'Y'");
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
public List getSelectVendor()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select vendor_id as [value],vendor_name as [key] from sys_Vendor where Enabled = 'Y'");
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
public List getSelectVendor(string vendorId)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_Vendor where Enabled = 'Y' and vendor_id='" + vendorId + "'");
List result = dbConn.Query(strSql.ToString()).ToList();
return result;
}
}
public List GetPart(int type)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT part_id as [value],part_no as [key] FROM sys_part (NOLOCK) WHERE enabled='Y' ORDER BY part_no";
DynamicParameters param = new DynamicParameters();
param.Add("@part_type", type);
List result = dbConn.Query(sql, param).ToList();
return result;
}
}
public List GetOrderType()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT [enum_value] as [value],[enum_desc] as [key] FROM sys_enum where enum_type='wms_PullGroup_order_type' and enabled='Y'";
List result = dbConn.Query(sql).ToList();
return result;
}
}
public List GetPart(int type, string PartNo)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT * FROM sys_part (NOLOCK) WHERE enabled='Y' and part_no='" + PartNo + "' ORDER BY part_no";
DynamicParameters param = new DynamicParameters();
param.Add("@part_type", type);
List result = dbConn.Query(sql, param).ToList();
return result;
}
}
public List GetPdlineByPdlineId(int pdlineId)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT * FROM sys_pdline (NOLOCK) WHERE enabled='Y' and pdline_id='" + pdlineId + "'";
List result = dbConn.Query(sql).ToList();
return result;
}
}
public SysPdline GetPdlineByPdlineCode(string pdlineCode)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT * FROM sys_pdline (NOLOCK) WHERE pdline_code='" + pdlineCode + "'";
SysPdline result = dbConn.Query(sql).FirstOrDefault();
return result;
}
}
public List GetPdlineByKey()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT distinct pdline_code as [value],pdline_code as [key] FROM sys_pdline (NOLOCK) WHERE enabled='Y' ORDER BY pdline_code";
DynamicParameters param = new DynamicParameters();
List result = dbConn.Query(sql, param).ToList();
return result;
}
}
///
/// 获取订单编号
///
///
public string GetOrderNo(string stockOrder, string p)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
DynamicParameters list = new DynamicParameters();
list.Add("@order_type", stockOrder);
list.Add("@order_prefix", p);
list.Add("@order_no", null, DbType.String, ParameterDirection.Output, 50);
var hashtable = dbConn.Execute("sys_create_orderno", list, commandType: CommandType.StoredProcedure);
string result = list.Get("@order_no");
return result;
}
}
public bool saveHandPullGroup(string pdline_id, string PullValue)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
List sqlList = new List();
List parametersList = new List();
#region
StringBuilder stringBuilderSQL = new StringBuilder(1024);
stringBuilderSQL.Append("insert into WMS_MES_PULL_ORDER(pdline_id,src_move_qty,syn_fig,create_time) values(@pdline_id,@src_move_qty,@syn_fig,@create_time) ");
sqlList.Add(stringBuilderSQL.ToString());
DynamicParameters parameters = new DynamicParameters();
parameters.Add("@pdline_id", pdline_id);//产线 100001
parameters.Add("@src_move_qty", PullValue);// 需求数量
parameters.Add("@syn_fig", "0");// WMS生成为 0
parameters.Add("@create_time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));// 创建时间
parametersList.Add(parameters);
return InsertData(sqlList, parametersList);
#endregion
}
}
///
/// 插入菜单数据
///
///
///
public int savePullGroup(WmsPullingGroupMes htParams)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
List SqlStrings = new List();
List