|
|
using Dapper;
|
|
|
using Estsh.Core.Base;
|
|
|
using Estsh.Core.Dapper;
|
|
|
using Estsh.Core.IRepositories;
|
|
|
using Estsh.Core.Model.Result;
|
|
|
using Estsh.Core.Models;
|
|
|
using Estsh.Core.Repository.IRepositories;
|
|
|
using System.Collections;
|
|
|
using System.Data;
|
|
|
using System.Text;
|
|
|
|
|
|
/***************************************************************************************************
|
|
|
*
|
|
|
* 更新人:sitong.dong
|
|
|
* 描述:零星出入库
|
|
|
* 修改时间:2022.06.22
|
|
|
* 修改日志:系统迭代升级
|
|
|
*
|
|
|
**************************************************************************************************/
|
|
|
namespace Estsh.Core.Repositories
|
|
|
{
|
|
|
|
|
|
public class SingleWarePrintDefineRepository : BaseRepository<BaseEntity>, ISingleWarePrintDefineRepository
|
|
|
{
|
|
|
public SingleWarePrintDefineRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext)
|
|
|
{
|
|
|
}
|
|
|
#region 成员方法SS
|
|
|
/// <summary>
|
|
|
/// 获得菜单列表数据
|
|
|
/// </summary>
|
|
|
public List<GDps> getList(string strWhere, string filedOrder)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
strSql.Append("SELECT a.*,c.part_no as sys_part_no ,c.part_spec from dbo.g_dps a left join sys_part c on a.part_id=c.part_id ");
|
|
|
if (!strWhere.Trim().Equals(""))
|
|
|
{
|
|
|
strSql.Append(" where " + strWhere);
|
|
|
}
|
|
|
try
|
|
|
{
|
|
|
if (filedOrder != null && !filedOrder.Trim().Equals(""))
|
|
|
{
|
|
|
strSql.Append(" order by " + filedOrder);
|
|
|
}
|
|
|
}
|
|
|
catch { }
|
|
|
|
|
|
List<GDps> result = dbConn.Query<GDps>(strSql.ToString()).ToList();
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取分页数据列表
|
|
|
/// </summary>
|
|
|
public List<SapMisco> GetOrderDetail(int PageSize, int PageIndex, string strWhere, string OrderBy)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
|
|
|
DynamicParameters Params = new DynamicParameters();
|
|
|
Params.Add("@TotalCount", 100);
|
|
|
Params.Add("@TotalPage", 100);
|
|
|
Params.Add("@Table", " SAP_MISCO AS A INNER JOIN dbo.sys_part AS B ON a.MATNR = b.part_no LEFT JOIN dbo.sys_factory c ON a.WERKS = c.factory_code LEFT JOIN dbo.sys_enum e ON e.enum_value = a.ZACTION AND e.enum_type = 'sys_misco_type' ");
|
|
|
Params.Add("@Column", " CEILING(( A.ERFMG / ISNULL(NULLIF(B.default_box_qty, 0), A.ERFMG) )) AS CTCNT, c.factory_name AS NAMES, *, e.enum_desc ");
|
|
|
Params.Add("@PageSize", PageSize);
|
|
|
Params.Add("@CurrentPage", PageIndex);
|
|
|
Params.Add("@OrderColumn", " MATNR ");
|
|
|
Params.Add("@Condition", strWhere);
|
|
|
Params.Add("@GroupColumn", " ");
|
|
|
Params.Add("@Group", 0);
|
|
|
|
|
|
List<SapMisco> result = dbConn.Query<SapMisco>("Com_Pagination", Params, commandType: CommandType.StoredProcedure).ToList();
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取分页记录总数
|
|
|
/// </summary>
|
|
|
public int GetOrderCount(string strWhere)
|
|
|
{
|
|
|
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
SqlStringBuilder.Append("SELECT CEILING(( A.ERFMG / ISNULL(NULLIF(B.default_box_qty, 0), A.ERFMG) )) ");
|
|
|
SqlStringBuilder.Append(" AS CTCNT, c.factory_name AS NAMES, *, e.enum_desc ");
|
|
|
SqlStringBuilder.Append("FROM SAP_MISCO AS A ");
|
|
|
SqlStringBuilder.Append(" INNER JOIN dbo.sys_part AS B ON a.MATNR = b.part_no ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_factory c ON a.WERKS = c.factory_code ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_enum e ON e.enum_value = a.ZACTION ");
|
|
|
SqlStringBuilder.Append(" AND e.enum_type = 'sys_misco_type' ");
|
|
|
SqlStringBuilder.Append("WHERE a.ZINSTNO = '" + strWhere + "' ");
|
|
|
SqlStringBuilder.Append(" AND a.ACTFLG = 'N' ");
|
|
|
SqlStringBuilder.Append("ORDER BY MATNR ");
|
|
|
|
|
|
int i = 0;
|
|
|
List<SapMisco> result = dbConn.Query<SapMisco>(SqlStringBuilder.ToString()).ToList();
|
|
|
if (result.Count > 0)
|
|
|
{
|
|
|
i = result.Count;
|
|
|
|
|
|
}
|
|
|
return i;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 插入菜单数据
|
|
|
/// </summary>
|
|
|
/// <param name="htParams"></param>
|
|
|
/// <returns></returns>
|
|
|
public int saveDPS(GDps htParams)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
SqlStringBuilder.Append("insert into dbo.g_dps(mt_group,enabled,mt_area,control_id,addr_id,part_id,part_no,part_name,is_finish, create_userid,create_time,is_light,is_running )");
|
|
|
SqlStringBuilder.Append("values(@mtGroup,'Y',@mtArea,@controlId,@addrId,@partId,@partNo,@partName,@isFinish, @createUserid ,CONVERT(varchar(50), GETDATE(), 21),@isLight,@isRunning )");
|
|
|
int result = dbConn.Execute(SqlStringBuilder.ToString(), htParams);
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
#endregion 成员方法
|
|
|
|
|
|
public String isExsitPart_no(String part_no)
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
string part_id = null;
|
|
|
string SqlString = "select top 1 part_id from sys_part where enabled='Y' and part_no=@partNo";
|
|
|
DynamicParameters Params = new DynamicParameters();
|
|
|
Params.Add("@partNo", part_no);
|
|
|
List<SysPart> dt = dbConn.Query<SysPart>(SqlString, Params).ToList();
|
|
|
if (dt.Count < 1)
|
|
|
{
|
|
|
return part_id;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
part_id = dt[0].PartId.ToString();
|
|
|
return part_id;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取枚举值
|
|
|
/// </summary>
|
|
|
/// <param name="enumtype">枚举类型</param>
|
|
|
/// <returns></returns>
|
|
|
public List<KeyValueResult> GetTaskList()
|
|
|
{
|
|
|
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
|
|
|
{
|
|
|
dbConn.Open();
|
|
|
//string Sqlstring = "SELECT ZINSTNO as [value] , '单号:'+ZINSTNO+',零件号:'+WERKS+',目标库存地:'+LGORT+',类型:'+case when ZACTION='C03' then 'NC拆解退料' when ZACTION='C01' then '零星入库' end as [value] FROM SAP_MISCO WHERE ACTFLG='N' and ZACTION in ('C01','C03') AND ZZLZT NOT IN (4 , 5) GROUP BY ZINSTNO,WERKS,LGORT,ZACTION ";
|
|
|
string Sqlstring = "SELECT ZINSTNO as [value] , '单号:'+ZINSTNO+',零件号:'+WERKS+',目标库存地:'+LGORT+',类型:'+case when ZACTION='C03' then 'NC拆解退料' when ZACTION='C01' then '零星入库' end as [key] FROM SAP_MISCO WHERE ACTFLG='N' and ZACTION in ('C01','C03') AND ZZLZT NOT IN (4 , 5) GROUP BY ZINSTNO,WERKS,LGORT,ZACTION ";
|
|
|
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(Sqlstring).ToList();
|
|
|
return result;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|