using HanHe.Utility.Data;
using HH.MData;
using HH.WMS.Common;
using HH.WMS.Entitys.Autobom;
using HH.WMS.Entitys.Common;
using HH.WMS.Entitys.External;
using MongoDB.Driver;
using MongoDB.Driver.Builders;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Data.OracleClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HH.WMS.DAL.External
{
public class TN_WM_TRANSPORT_TASKDAL : BaseDAL
{
#region 获取流转任务
///
/// 获取流转任务
///
/// 对象
/// 对象编码
/// 任务编码
/// 任务状态
///
///
///
/// [HanHe(xdl)] CREATED 2018/04/28
public List GetSearchList(string strWhere, string strOrder, int pageSize, int pageIndex, out int totalPages, out int totalRows)
{
string sql = @"(SELECT CN_S_TASK_NO,CN_S_CIR_OBJ,CN_S_CIR_OBJ_CODE,CN_S_START_BIT,CN_S_END_BIT,CN_S_PRO_CODE,CN_S_STATE,CN_T_START,
CN_T_END,CN_S_BF_TASK_NO,CN_S_AF_TASK_NO,CN_S_STOCK_CODE,
CN_S_START_AREA,CN_S_END_AREA,CN_N_PRIORITY,CN_S_CREATOR,
CN_S_CREATOR_BY,CN_T_CREATE,CN_S_MODIFY,CN_S_MODIFY_BY,
CN_T_MODIFY,CN_S_REMARK,CN_S_TASK_TYPE FROM TN_WM_TRANSPORT_TASK) t";
DbCommand cmd = DataAccess.GetStoredProcCommand("prc_query");
this.DataAccess.AddInParameter(cmd, "TableName", ComDbType.STRING, sql);
this.DataAccess.AddInParameter(cmd, "WhereStr", ComDbType.STRING, strWhere);
this.DataAccess.AddInParameter(cmd, "OrderByStr", ComDbType.STRING, strOrder);
this.DataAccess.AddInParameter(cmd, "PageSize", ComDbType.INT, pageSize);
this.DataAccess.AddInParameter(cmd, "PageIndex", ComDbType.INT, pageIndex);
this.DataAccess.AddOutParameter(cmd, "TotalPage", ComDbType.INT, 4);
this.DataAccess.AddOutParameter(cmd, "TotalRecord", ComDbType.INT, 4);
//如果是oracle 增加特性
if (!string.IsNullOrEmpty(Now_dbType) && Now_dbType.Equals("ORACLE"))
{
//处理游标类型 因DbType无游标类型,游标类型单独处理
ComDbType.AddOrcOutParameter(cmd, "v_cur", OracleType.Cursor);
}
try
{
//获得列表
List list = DataAccessExtensive.ExecuteListEntity(this.DataAccess, cmd, SetEntity);
totalPages = Convert.ToInt32(this.DataAccess.GetParameterValue(cmd, "TotalPage"));
totalRows = Convert.ToInt32(this.DataAccess.GetParameterValue(cmd, "TotalRecord"));
return list;
}
catch (Exception)
{
throw;
}
}
///
/// 设置实体的各列
///
private void SetEntity(TN_WM_TRANSPORT_TASKEntity entity, IDataReader reader)
{
SetEntityUti(entity, "CN_S_TASK_NO", "CN_S_TASK_NO", reader);
SetEntityUti(entity, "CN_S_CIR_OBJ", "CN_S_CIR_OBJ", reader);
SetEntityUti(entity, "CN_S_CIR_OBJ_CODE", "CN_S_CIR_OBJ_CODE", reader);
SetEntityUti(entity, "CN_S_START_BIT", "CN_S_START_BIT", reader);
SetEntityUti(entity, "CN_S_END_BIT", "CN_S_END_BIT", reader);
SetEntityUti(entity, "CN_S_PRO_CODE", "CN_S_PRO_CODE", reader);
SetEntityUti(entity, "CN_S_STATE", "CN_S_STATE", reader);
SetEntityUti(entity, "CN_T_START", "CN_T_START", reader);
SetEntityUti(entity, "CN_T_END", "CN_T_END", reader);
SetEntityUti(entity, "CN_S_BF_TASK_NO", "CN_S_BF_TASK_NO", reader);
SetEntityUti(entity, "CN_S_AF_TASK_NO", "CN_S_AF_TASK_NO", reader);
SetEntityUti(entity, "CN_S_STOCK_CODE", "CN_S_STOCK_CODE", reader);
SetEntityUti(entity, "CN_S_START_AREA", "CN_S_START_AREA", reader);
SetEntityUti(entity, "CN_S_END_AREA", "CN_S_END_AREA", reader);
SetEntityUti(entity, "CN_S_TASK_TYPE", "CN_S_TASK_TYPE", reader);
SetEntityUti(entity, "CN_N_PRIORITY", "CN_N_PRIORITY", reader);
SetEntityUti(entity, "CN_S_CREATOR", "CN_S_CREATOR", reader);
SetEntityUti(entity, "CN_S_CREATOR_BY", "CN_S_CREATOR_BY", reader);
SetEntityUti(entity, "CN_T_CREATE", "CN_T_CREATE", reader);
SetEntityUti(entity, "CN_S_MODIFY", "CN_S_MODIFY", reader);
SetEntityUti(entity, "CN_S_MODIFY_BY", "CN_S_MODIFY_BY", reader);
SetEntityUti(entity, "CN_T_MODIFY", "CN_T_MODIFY", reader);
SetEntityUti(entity, "CN_S_REMARK", "CN_S_REMARK", reader);
}
#endregion
///
/// 获取流转任务对象
///
///
///
/// [HanHe(xdl)] CREATED 2018/04/28
public TN_WM_TRANSPORT_TASKEntity GetTransportTask(string taskNo)
{
string strSql = "SELECT * FROM TN_WM_TRANSPORT_TASK WHERE 1=1 AND CN_S_TASK_NO='" + taskNo + "'";
TN_WM_TRANSPORT_TASKEntity transportTask;
try
{
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql);
transportTask = DataAccessExtensive.ExecuteSingleEntity(this.DataAccess, cmd, SetEntity);
}
catch (Exception ex)
{
Log.Info("HH.BWMS.DAL.TaskMgr.TN_WM_TRANSPORT_TASKDAL.GetTransportTask", JsonConvert.SerializeObject(ex));
return null;
}
return transportTask;
}
///
/// 获取流转任务对象列表
///
///
///
/// [HanHe(xdl)] CREATED 2018/04/28
public List GetTransportTaskList(string strWhere)
{
string strSql = "SELECT * FROM TN_WM_TRANSPORT_TASK WHERE 1=1 " + strWhere + "";
List lstTransportTask;
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql);
lstTransportTask = DataAccessExtensive.ExecuteListEntity(this.DataAccess, cmd, SetEntity);
return lstTransportTask;
}
///
/// 根据任务号获取任务实体
///
///
///
public DataTable GetTaskEntity(string CN_S_TASK_NO)
{
string strSql = "SELECT * FROM TN_WM_TRANSPORT_TASK WHERE 1=1 AND CN_S_TASK_NO='" + CN_S_TASK_NO + "'";
DataTable dt = new DataTable();
try
{
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql);
dt = DataAccessExtensive.ExecuteDataTable(this.DataAccess, cmd);
}
catch (Exception ex)
{
return dt;
throw ex;
}
return dt;
}
#region 新增
///
/// 增加一条数据
///
/// [HanHe(DBS)] CREATED 2018/4/12
public SqlExecuteResult Add(List entitys, DbTransaction trans)
{
string sql = @"INSERT INTO TN_WM_TRANSPORT_TASK
(CN_S_TASK_NO
,CN_S_CIR_OBJ
,CN_S_CIR_OBJ_CODE
,CN_S_START_BIT
,CN_S_END_BIT
,CN_S_PRO_CODE
,CN_S_STATE
,CN_S_TASK_TYPE
,CN_S_BF_TASK_NO
,CN_S_AF_TASK_NO
,CN_S_STOCK_CODE
,CN_S_START_AREA
,CN_S_END_AREA
,CN_S_START_AREA_TYPE
,CN_S_END_AREA_TYPE
,CN_C_START_IS_CONTROL_QTY
,CN_C_END_IS_CONTROL_QTY
,CN_S_START_CONTROL_INV
,CN_S_END_CONTROL_INV
,CN_N_PRIORITY
,CN_S_CREATOR
,CN_S_CREATOR_BY
,CN_T_CREATE
,CN_T_MODIFY,CN_S_REMARK,CN_C_IS_AUTO,CN_S_PROJECT_CODE)
VALUES
(:CN_S_TASK_NO,:CN_S_CIR_OBJ,:CN_S_CIR_OBJ_CODE,:CN_S_START_BIT,:CN_S_END_BIT
,:CN_S_PRO_CODE,:CN_S_STATE,:CN_S_TASK_TYPE,
:CN_S_BF_TASK_NO,:CN_S_AF_TASK_NO,:CN_S_STOCK_CODE,:CN_S_START_AREA,:CN_S_END_AREA,:CN_S_START_AREA_TYPE,:CN_S_END_AREA_TYPE,:CN_C_START_IS_CONTROL_QTY,:CN_C_END_IS_CONTROL_QTY,:CN_S_START_CONTROL_INV,:CN_S_END_CONTROL_INV,:CN_N_PRIORITY,:CN_S_CREATOR
,:CN_S_CREATOR_BY,:CN_T_CREATE,:CN_T_MODIFY,:CN_S_REMARK,:CN_C_IS_AUTO,:CN_S_PROJECT_CODE)";
List cmds = new List();
foreach (TN_WM_TRANSPORT_TASKEntity entity in entitys)
{
DbCommand cmd = DataAccess.GetSqlStringCommand(sql);
DataAccess.AddInParameter(cmd, "@CN_S_TASK_NO", DbType.String, entity.CN_S_TASK_NO);
DataAccess.AddInParameter(cmd, "@CN_S_CIR_OBJ", DbType.String, entity.CN_S_CIR_OBJ);
DataAccess.AddInParameter(cmd, "@CN_S_CIR_OBJ_CODE", DbType.String, entity.CN_S_CIR_OBJ_CODE);
DataAccess.AddInParameter(cmd, "@CN_S_START_BIT", DbType.String, entity.CN_S_START_BIT);
DataAccess.AddInParameter(cmd, "@CN_S_END_BIT", DbType.String, entity.CN_S_END_BIT);
DataAccess.AddInParameter(cmd, "@CN_S_PRO_CODE", DbType.String, entity.CN_S_PRO_CODE);
DataAccess.AddInParameter(cmd, "@CN_S_STATE", DbType.String, entity.CN_S_STATE);
DataAccess.AddInParameter(cmd, "@CN_S_TASK_TYPE", DbType.String, entity.CN_S_TASK_TYPE);
DataAccess.AddInParameter(cmd, "@CN_S_BF_TASK_NO", DbType.String, entity.CN_S_BF_TASK_NO);
DataAccess.AddInParameter(cmd, "@CN_S_AF_TASK_NO", DbType.String, entity.CN_S_AF_TASK_NO);
DataAccess.AddInParameter(cmd, "@CN_S_STOCK_CODE", DbType.String, entity.CN_S_STOCK_CODE);
DataAccess.AddInParameter(cmd, "@CN_S_START_AREA", DbType.String, entity.CN_S_START_AREA);
DataAccess.AddInParameter(cmd, "@CN_S_END_AREA", DbType.String, entity.CN_S_END_AREA);
DataAccess.AddInParameter(cmd, "@CN_S_START_AREA_TYPE", DbType.String, entity.CN_S_START_AREA_TYPE);
DataAccess.AddInParameter(cmd, "@CN_S_END_AREA_TYPE", DbType.String, entity.CN_S_END_AREA_TYPE);
DataAccess.AddInParameter(cmd, "@CN_C_START_IS_CONTROL_QTY", DbType.String, entity.CN_C_START_IS_CONTROL_QTY);
DataAccess.AddInParameter(cmd, "@CN_C_END_IS_CONTROL_QTY", DbType.String, entity.CN_C_END_IS_CONTROL_QTY);
DataAccess.AddInParameter(cmd, "@CN_S_START_CONTROL_INV", DbType.String, entity.CN_S_START_CONTROL_INV);
DataAccess.AddInParameter(cmd, "@CN_S_END_CONTROL_INV", DbType.String, entity.CN_S_END_CONTROL_INV);
DataAccess.AddInParameter(cmd, "@CN_N_PRIORITY", DbType.Int16, entity.CN_N_PRIORITY);
DataAccess.AddInParameter(cmd, "@CN_S_CREATOR", DbType.String, entity.CN_S_CREATOR);
DataAccess.AddInParameter(cmd, "@CN_S_CREATOR_BY", DbType.String, entity.CN_S_CREATOR_BY);
DataAccess.AddInParameter(cmd, "@CN_T_CREATE", DbType.DateTime, entity.CN_T_CREATE);
DataAccess.AddInParameter(cmd, "@CN_T_MODIFY", DbType.DateTime, entity.CN_T_MODIFY);
DataAccess.AddInParameter(cmd, "@CN_S_REMARK", DbType.String, entity.CN_S_REMARK);
DataAccess.AddInParameter(cmd, "@CN_C_IS_AUTO", DbType.String, entity.CN_C_IS_AUTO);
DataAccess.AddInParameter(cmd, "@CN_S_PROJECT_CODE", DbType.String, entity.CN_S_PROJECT_CODE);
cmds.Add(cmd);
}
return ExecuteCommands(cmds, trans);
}
public SqlExecuteResult Add(TN_WM_TRANSPORT_TASKEntity entity, DbTransaction trans)
{
string sql = @"INSERT INTO TN_WM_TRANSPORT_TASK
(CN_S_TASK_NO
,CN_S_CIR_OBJ
,CN_S_CIR_OBJ_CODE
,CN_S_START_BIT
,CN_S_END_BIT
,CN_S_PRO_CODE
,CN_S_STATE
,CN_S_TASK_TYPE
,CN_S_BF_TASK_NO
,CN_S_AF_TASK_NO
,CN_S_STOCK_CODE
,CN_S_START_AREA
,CN_S_END_AREA
,CN_S_START_AREA_TYPE
,CN_S_END_AREA_TYPE
,CN_C_START_IS_CONTROL_QTY
,CN_C_END_IS_CONTROL_QTY
,CN_S_START_CONTROL_INV
,CN_S_END_CONTROL_INV
,CN_N_PRIORITY
,CN_S_CREATOR
,CN_S_CREATOR_BY
,CN_T_CREATE
,CN_T_MODIFY,CN_S_REMARK,CN_C_IS_AUTO,CN_S_PROJECT_CODE)
VALUES
(:CN_S_TASK_NO,:CN_S_CIR_OBJ,:CN_S_CIR_OBJ_CODE,:CN_S_START_BIT,:CN_S_END_BIT
,:CN_S_PRO_CODE,:CN_S_STATE,:CN_S_TASK_TYPE,
:CN_S_BF_TASK_NO,:CN_S_AF_TASK_NO,:CN_S_STOCK_CODE,:CN_S_START_AREA,:CN_S_END_AREA,:CN_S_START_AREA_TYPE,:CN_S_END_AREA_TYPE,:CN_C_START_IS_CONTROL_QTY,:CN_C_END_IS_CONTROL_QTY,:CN_S_START_CONTROL_INV,:CN_S_END_CONTROL_INV,:CN_N_PRIORITY,:CN_S_CREATOR
,:CN_S_CREATOR_BY,:CN_T_CREATE,:CN_T_MODIFY,:CN_S_REMARK,:CN_C_IS_AUTO,:CN_S_PROJECT_CODE)";
DbCommand cmd = DataAccess.GetSqlStringCommand(sql);
DataAccess.AddInParameter(cmd, "@CN_S_TASK_NO", DbType.String, entity.CN_S_TASK_NO);
DataAccess.AddInParameter(cmd, "@CN_S_CIR_OBJ", DbType.String, entity.CN_S_CIR_OBJ);
DataAccess.AddInParameter(cmd, "@CN_S_CIR_OBJ_CODE", DbType.String, entity.CN_S_CIR_OBJ_CODE);
DataAccess.AddInParameter(cmd, "@CN_S_START_BIT", DbType.String, entity.CN_S_START_BIT);
DataAccess.AddInParameter(cmd, "@CN_S_END_BIT", DbType.String, entity.CN_S_END_BIT);
DataAccess.AddInParameter(cmd, "@CN_S_PRO_CODE", DbType.String, entity.CN_S_PRO_CODE);
DataAccess.AddInParameter(cmd, "@CN_S_STATE", DbType.String, entity.CN_S_STATE);
DataAccess.AddInParameter(cmd, "@CN_S_TASK_TYPE", DbType.String, entity.CN_S_TASK_TYPE);
DataAccess.AddInParameter(cmd, "@CN_S_BF_TASK_NO", DbType.String, entity.CN_S_BF_TASK_NO);
DataAccess.AddInParameter(cmd, "@CN_S_AF_TASK_NO", DbType.String, entity.CN_S_AF_TASK_NO);
DataAccess.AddInParameter(cmd, "@CN_S_STOCK_CODE", DbType.String, entity.CN_S_STOCK_CODE);
DataAccess.AddInParameter(cmd, "@CN_S_START_AREA", DbType.String, entity.CN_S_START_AREA);
DataAccess.AddInParameter(cmd, "@CN_S_END_AREA", DbType.String, entity.CN_S_END_AREA);
DataAccess.AddInParameter(cmd, "@CN_S_START_AREA_TYPE", DbType.String, entity.CN_S_START_AREA_TYPE);
DataAccess.AddInParameter(cmd, "@CN_S_END_AREA_TYPE", DbType.String, entity.CN_S_END_AREA_TYPE);
DataAccess.AddInParameter(cmd, "@CN_C_START_IS_CONTROL_QTY", DbType.String, entity.CN_C_START_IS_CONTROL_QTY);
DataAccess.AddInParameter(cmd, "@CN_C_END_IS_CONTROL_QTY", DbType.String, entity.CN_C_END_IS_CONTROL_QTY);
DataAccess.AddInParameter(cmd, "@CN_S_START_CONTROL_INV", DbType.String, entity.CN_S_START_CONTROL_INV);
DataAccess.AddInParameter(cmd, "@CN_S_END_CONTROL_INV", DbType.String, entity.CN_S_END_CONTROL_INV);
DataAccess.AddInParameter(cmd, "@CN_N_PRIORITY", DbType.Int16, entity.CN_N_PRIORITY);
DataAccess.AddInParameter(cmd, "@CN_S_CREATOR", DbType.String, entity.CN_S_CREATOR);
DataAccess.AddInParameter(cmd, "@CN_S_CREATOR_BY", DbType.String, entity.CN_S_CREATOR_BY);
DataAccess.AddInParameter(cmd, "@CN_T_CREATE", DbType.DateTime, entity.CN_T_CREATE);
DataAccess.AddInParameter(cmd, "@CN_T_MODIFY", DbType.DateTime, entity.CN_T_MODIFY);
DataAccess.AddInParameter(cmd, "@CN_S_REMARK", DbType.String, entity.CN_S_REMARK);
DataAccess.AddInParameter(cmd, "@CN_C_IS_AUTO", DbType.String, entity.CN_C_IS_AUTO);
DataAccess.AddInParameter(cmd, "@CN_S_PROJECT_CODE", DbType.String, entity.CN_S_PROJECT_CODE);
return ExecuteCommand(cmd, trans);
}
#endregion
#region 更改任务状态为执行中
///
/// 更改任务执行状态
///
///
///
///
///
public SqlExecuteResult UpdateState(string taskNo, string taskState, DbTransaction trans)
{
string strSql = "UPDATE TN_WM_TRANSPORT_TASK SET CN_S_STATE=:CN_S_STATE where CN_S_TASK_NO=:CN_S_TASK_NO";
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql.ToString());
DataAccess.AddInParameter(cmd, "CN_S_STATE", DbType.String, taskState);
DataAccess.AddInParameter(cmd, "CN_T_END", DbType.Date, DateTime.Now);
DataAccess.AddInParameter(cmd, "CN_S_TASK_NO", DbType.String, taskNo);
return ExecuteCommand(cmd, trans);
}
///
/// 更新任务执行开始时间
///
///
///
///
public SqlExecuteResult UpdateStartTime(string taskNo, DbTransaction trans)
{
string strSql = "UPDATE TN_WM_TRANSPORT_TASK SET CN_T_START=:CN_T_START where CN_S_TASK_NO=:CN_S_TASK_NO";
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql.ToString());
DataAccess.AddInParameter(cmd, "CN_T_START", DbType.Date, DateTime.Now);
DataAccess.AddInParameter(cmd, "CN_S_TASK_NO", DbType.String, taskNo);
return ExecuteCommand(cmd, trans);
}
#endregion
#region 根据任务编号获取任务实体
///
/// 根据任务编号获取任务实体
///
/// 任务编号
///
///
public TN_WM_TRANSPORT_TASKEntity GetTaskByNo(string taskNo)
{
TN_WM_TRANSPORT_TASKEntity taskEntity = new TN_WM_TRANSPORT_TASKEntity();
string sql = @" select * from TN_WM_TRANSPORT_TASK WHERE CN_S_TASK_NO ='" + taskNo + "'";
DbCommand cmd = DataAccess.GetSqlStringCommand(sql);
try
{
//获得 实体
taskEntity = DataAccessExtensive.ExecuteSingleEntity(this.DataAccess, cmd, SetEntity);
return taskEntity;
}
catch (Exception)
{
throw;
}
}
#endregion
#region 根据流程编号获取实体
///
/// 根据流程编号获取实体
///
///
///
public List GetEntityByProCode(string proCode)
{
IMongoQuery query = Query.EQ("CN_S_PRO_CODE", proCode);
return MongoDBSingleton.Instance.Find(query, "TN_AB_B_PRO_EVENT_DEF");
}
#endregion
public List GetNotEndTask(string startBit)
{
string strSql = @"select CN_S_TASK_NO from TN_WM_TRANSPORT_TASK
where (CN_S_START_BIT=:CN_S_START_BIT or CN_S_END_BIT=:CN_S_END_BIT)
and CN_S_STATE in('未执行','执行中','取货完成')";
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql.ToString());
DataAccess.AddInParameter(cmd, "CN_S_START_BIT", DbType.String, startBit);
DataAccess.AddInParameter(cmd, "CN_S_END_BIT", DbType.String, startBit);
return DataAccessExtensive.ExecuteListEntity(this.DataAccess, cmd, (entity, reader) =>
{
entity.CN_S_TASK_NO = reader["CN_S_TASK_NO"].ToString().Trim();
});
}
#region 改变任务状态
///
/// 改变任务状态
///
/// 主键
/// 状态
///
public SqlExecuteResult CheckState(string taskNo, string State, DbTransaction trans)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(" UPDATE TN_WM_TRANSPORT_TASK SET CN_S_STATE=@CN_S_STATE ");
if (State == "执行中")
{
strSql.Append(",CN_T_START=@CN_T_START ");
}
if (State == "完成")
{
strSql.Append(",CN_T_END=@CN_T_END ");
}
strSql.Append(" where CN_S_TASK_NO=@CN_S_TASK_NO ");
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql.ToString());
DataAccess.AddInParameter(cmd, "CN_S_STATE", ComDbType.STRING, State);
DataAccess.AddInParameter(cmd, "CN_S_TASK_NO", ComDbType.STRING, taskNo);
DataAccess.AddInParameter(cmd, "CN_T_START", ComDbType.DATE, DateTime.Now);
DataAccess.AddInParameter(cmd, "CN_T_END", ComDbType.DATE, DateTime.Now);
return ExecuteCommand(cmd, trans);
}
#endregion
///
/// 判断指定托盘是否存在未执行结束的任务
///
///
///
public bool GetNotExecutedTaskByObj(string objCode)
{
string strSql = @"select CN_S_CIR_OBJ_CODE from TN_WM_TRANSPORT_TASK where
CN_S_CIR_OBJ_CODE=:CN_S_CIR_OBJ_CODE and CN_S_STATE in('未执行','执行中','取货完成')";
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql.ToString());
DataAccess.AddInParameter(cmd, "CN_S_CIR_OBJ_CODE", DbType.String, objCode);
DataTable dt = DataAccessExtensive.ExecuteDataTable(this.DataAccess, cmd);
return dt.Rows.Count > 0;
}
public SqlExecuteResult UpdateTaskPostion(string taskNo, string position, string area, string type, DbTransaction trans)
{
string sql = string.Empty;
if (type == "start")
{
sql = "UPDATE TN_WM_TRANSPORT_TASK SET CN_S_START_BIT ='" + position + "',CN_S_START_AREA='" + area + "' WHERE CN_S_TASK_NO=:CN_S_TASK_NO";
}
else
{
sql = "UPDATE TN_WM_TRANSPORT_TASK SET CN_S_END_BIT ='" + position + "',CN_S_END_AREA='" + area + "' WHERE CN_S_TASK_NO=:CN_S_TASK_NO";
}
DbCommand cmd = DataAccess.GetSqlStringCommand(sql);
DataAccess.AddInParameter(cmd, "CN_S_TASK_NO", DbType.String, taskNo);
return ExecuteCommand(cmd, trans);
}
public SqlExecuteResult UpdateTaskAuto(string taskNo, string taskState, DbTransaction trans)
{
string strSql = "UPDATE TN_WM_TRANSPORT_TASK SET CN_C_IS_AUTO=:CN_C_IS_AUTO where CN_S_TASK_NO=:CN_S_TASK_NO";
DbCommand cmd = DataAccess.GetSqlStringCommand(strSql.ToString());
DataAccess.AddInParameter(cmd, "CN_C_IS_AUTO", ComDbType.CHAR, taskState);
DataAccess.AddInParameter(cmd, "CN_S_TASK_NO", DbType.String, taskNo);
return ExecuteCommand(cmd, trans);
}
}
}