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.
175 lines
6.4 KiB
175 lines
6.4 KiB
using NFine.Data.Extensions;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using NFine.Code;
|
|
using NFine.Repository;
|
|
using System.Data.Common;
|
|
using NFine.Domain._03_Entity.SRM;
|
|
|
|
|
|
|
|
namespace NFine.Application
|
|
{
|
|
public class PrintApp : RepositoryFactory<ICSVendor>
|
|
{
|
|
|
|
public DataTable GetLableType()
|
|
{
|
|
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',');
|
|
string sql = @"
|
|
select '' as F_ItemCode,'' as F_ItemName
|
|
union all
|
|
SELECT DISTINCT a.F_ItemCode,isnull(a.F_ItemName,'') as F_ItemName FROM dbo.Sys_SRM_ItemsDetail a left join Sys_SRM_Items b on a.F_ItemId=b.F_Id where b.F_EnCode='BQ001'";
|
|
string role = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode;
|
|
|
|
DataTable dt = SqlHelper.GetDataTableBySql(sql);
|
|
return dt;
|
|
}
|
|
|
|
public DataTable GetLableSourceID()
|
|
{
|
|
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',');
|
|
string sql = @"
|
|
select '' as ID,'' as SourceName
|
|
union all
|
|
select distinct ID,SourceName from Sys_LableDataSource";
|
|
string role = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode;
|
|
|
|
DataTable dt = SqlHelper.GetDataTableBySql(sql);
|
|
return dt;
|
|
}
|
|
|
|
public DataTable GetSys_LablesID(string LableType)
|
|
{
|
|
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',');
|
|
string sql = @"select ID,LableName from Sys_Lables where LableType='{0}' ORDER BY CONVERT(int,LableCode)";
|
|
sql = string.Format(sql, LableType);
|
|
string role = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode;
|
|
|
|
DataTable dt = SqlHelper.GetDataTableBySql(sql);
|
|
var emptyRow = dt.NewRow();
|
|
foreach (DataColumn item in dt.Columns)
|
|
{
|
|
emptyRow[item] = string.Empty;
|
|
}
|
|
dt.Rows.InsertAt(emptyRow, 0);
|
|
return dt;
|
|
}
|
|
|
|
public DataTable SelectColumnName(string BeginTime, string EndTime)
|
|
{
|
|
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
|
|
string sql = @"select ColCode, ColName from ICSExtensionEnable
|
|
where Enable=1 and workPoint='{0}'
|
|
order by cast(EATTRIBUTE1 as int)";
|
|
sql = string.Format(sql, WorkPoint);
|
|
DataTable dt = SqlHelper.GetDataTableBySql(sql);
|
|
return dt;
|
|
}
|
|
|
|
public DataTable SelectTableColumnName(string BeginTime, string EndTime)
|
|
{
|
|
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
|
|
string sql = @"select TableCode, ColumnCode AS Code,Name from ICSColumnEnable
|
|
where Enable=1 and workPoint='{0}' order by MTIME";
|
|
sql = string.Format(sql, WorkPoint);
|
|
DataTable dt = SqlHelper.GetDataTableBySql(sql);
|
|
return dt;
|
|
}
|
|
|
|
public string GetCnValue(string Code)
|
|
{
|
|
try
|
|
{
|
|
object MultipleLanguageSetting = GetMultipleLanguageSetting();
|
|
string content = "";
|
|
string sql = string.Format(@"select {1} from Sys_Language where Code='{0}'", Code, MultipleLanguageSetting);
|
|
DataTable dt = SqlHelper.GetDataTableBySql(sql);
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
content = dt.Rows[0]["" + MultipleLanguageSetting + ""].ToString().ToUpper();
|
|
}
|
|
else
|
|
{
|
|
content = "";
|
|
}
|
|
return content;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message.ToString());
|
|
}
|
|
}
|
|
|
|
public object GetMultipleLanguageSetting()
|
|
{
|
|
try
|
|
{
|
|
string sql = string.Format(@"select top 1 b.F_Define1
|
|
from Sys_SRM_Items a left join Sys_SRM_ItemsDetail b on a.F_Id=b.F_ItemId
|
|
where a.F_EnCode='LGG0001' and b.F_EnabledMark='1' order by b.F_ItemCode");
|
|
object MultipleLanguageSetting = SqlHelper.ExecuteScalar(sql);
|
|
return MultipleLanguageSetting;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message.ToString());
|
|
}
|
|
}
|
|
|
|
public string updatePrintStatus(string LotNo)
|
|
{
|
|
try
|
|
{
|
|
string User = NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode;
|
|
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
|
|
string msg = "";
|
|
string sql = @"UPDATE ICSInventoryLot SET PrintTimes=(
|
|
CASE WHEN PrintTimes IS NULL THEN 1
|
|
ELSE PrintTimes+1
|
|
END),LastPrintUser='{0}',LastPrintTime=GETDATE() WHERE LotNo='{1}' AND WorkPoint='{2}'";
|
|
sql = string.Format(sql, User, LotNo, WorkPoint);
|
|
if (!(SqlHelper.ExecuteNonQuery(sql) > 0))
|
|
{
|
|
msg = "条码 " + LotNo + " 更新打印人、打印时间与打印次数失败!";
|
|
}
|
|
|
|
return msg;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return "更新打印人出错:" + ex.Message;
|
|
}
|
|
|
|
}
|
|
/// <summary>
|
|
/// 判断是否是双排标签
|
|
/// </summary>
|
|
/// <param name="keyValue"></param>
|
|
/// <returns></returns>
|
|
public object GetItemDetailsMoid(string moid)
|
|
{
|
|
|
|
string msg = "false";
|
|
string sql = @"select a.F_Description from Sys_SRM_ItemsDetail a
|
|
left join Sys_SRM_Items b on a.F_ItemId=b.F_Id where F_EnCode='BQ001' and a.F_ItemCode='"+ moid + "'";
|
|
DataTable dt =SqlHelper.GetDataTableBySql(sql);
|
|
if (dt != null)
|
|
{
|
|
if (dt.Rows[0]["F_Description"].ToString().Contains("DW"))
|
|
{
|
|
msg = "true";
|
|
}
|
|
}
|
|
var Header = new
|
|
{
|
|
msg = msg,
|
|
};
|
|
return Header;
|
|
}
|
|
}
|
|
}
|