using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using Common;
|
using Model;
|
using NLog;
|
|
namespace BLL.DAL
|
{
|
public class DALTaskManage
|
{
|
/// <summary>
|
/// 获取任务指令数据集
|
/// </summary>
|
/// <param name="taskManage">查询条件</param>
|
/// <param name="page">分页信息</param>
|
/// <returns>指令数据集合</returns>
|
public IList<TaskManageList> GetTaskManageList(TaskManage taskManage, ref PageInfo page)
|
{
|
try
|
{
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("select CmdId,(TaskID+ISNULL(NumberNo,'')) as OrdNo,Palno,isnull(Height,0) as Height, CmdType, ");
|
stringBuilder.Append("case CmdType when 'in' then '入库' when 'out' then '出库' when 'to' then '回库' when 'move' then '移库'end as CmdTypeStr ,");
|
stringBuilder.Append("(OldAddre + case ISNULL(NowAddre,'') when '' then '' else ' > '+NowAddre end) as Addre,");
|
stringBuilder.Append("CmdStatu,dbo.GetCmdStatuStr(CMDType,CMDStatu) as CmdStatuStr,");
|
stringBuilder.Append("CreateTime,Demo,case cast(IsDel as varchar) when '0' then '未完成' when '1' then '已完成' end as IsDel,guid ");
|
stringBuilder.Append("from WH_CMD where 1=1 ");
|
|
if (!string.IsNullOrEmpty(taskManage.OrdNo))
|
{
|
stringBuilder.Append("and (TaskID like '%" + taskManage.OrdNo + "%' or NumberNo like '%" + taskManage.OrdNo + "%')");
|
}
|
if (!string.IsNullOrEmpty(taskManage.Addre))
|
{
|
stringBuilder.Append("and (OldAddre like '%" + taskManage.Addre + "%' or NowAddre like '%" + taskManage + "%')");
|
}
|
if (!string.IsNullOrEmpty(taskManage.Palno))
|
{
|
stringBuilder.Append("and Palno like '%" + taskManage.Palno + "%' ");
|
}
|
if (taskManage.BeginTime != DateTime.MinValue && taskManage.BeginTime != null && taskManage.BeginTime != DateTime.MaxValue)
|
{
|
stringBuilder.Append("and CreateTime >= '" + Convert.ToDateTime(taskManage.BeginTime) + "' ");
|
}
|
if (taskManage.EndTime != DateTime.MinValue && taskManage.EndTime != null && taskManage.EndTime != DateTime.MaxValue)
|
{
|
stringBuilder.Append("and CreateTime <= '" + Convert.ToDateTime(taskManage.EndTime).ToShortDateString() + " 23:59:59.999" + "' ");
|
}
|
if (!string.IsNullOrEmpty(taskManage.IsDel))
|
{
|
stringBuilder.Append("and IsDel = '" + taskManage.IsDel + "'");
|
}
|
|
SqlParam[] para = null;
|
DataTable dt = DataFactory.SqlDataBase().GetPageList(stringBuilder.ToString(), para, "CMDID", "Desc", ref page);
|
|
return ModelConvertHelper<TaskManageList>.DataTableToModel(dt);;
|
}
|
catch (Exception ex)
|
{
|
Logger logger = LogManager.GetCurrentClassLogger();
|
logger.Error(ex.Message, "获取任务指令集错误 ");
|
throw new NotImplementedException();
|
}
|
}
|
|
public bool DelCmd(string cmdId,string statu)
|
{
|
bool bl = false;
|
try
|
{
|
StringBuilder sqlString = new StringBuilder();
|
sqlString.Append("select * from WH_CMD where CMDID = '"+cmdId+"' and cmdstatu = '"+ statu + "' and isdel = '0';");
|
DataTable dt = DataFactory.SqlDataBase().GetDataTableBySQL(sqlString);
|
if (dt.Rows.Count > 0)
|
{
|
sqlString.Clear();
|
|
string cmdType = dt.Rows[0]["CMDType"].ToString();
|
string cmdStatu = dt.Rows[0]["CMDStatu"].ToString();
|
switch (cmdType)
|
{
|
case "in":
|
if (cmdStatu == "2")
|
{
|
///
|
//string palno = dt.Rows[0]["palno"].ToString();
|
//string ordno = dt.Rows[0]["taskID"].ToString();
|
string addre = dt.Rows[0]["OldAddre"].ToString();
|
//sqlString.Append(" update IPalletBind set Statu = '3',IsDel = '1' ");
|
//sqlString.Append("where PalletNo = '" + palno + "' and OrdNo = '" + ordno + "' and Statu = '2' and IsDel = '0';");
|
sqlString.Append("update DepotsLocation set TurnoverDemand = '02' where LocationCode = '" + addre + "'; ");
|
}
|
break;
|
case "out":
|
; break;
|
case "to":
|
; break;
|
case "move":
|
; break;
|
default:return bl;
|
}
|
|
|
sqlString.Append(" Update WH_CMD set IsDel = '1',demo='手动完成指令' where CMDID = '"+cmdId+ "' and cmdstatu = '" + statu + "';");
|
int rowCount = DataFactory.SqlDataBase().ExecuteBySql(sqlString);
|
if (rowCount > 0)
|
{
|
bl = true;
|
}
|
else
|
{
|
bl = false;
|
}
|
}
|
|
return bl;
|
}
|
catch (Exception ex)
|
{
|
return bl;
|
}
|
}
|
}
|
}
|