lock (thisLock)
{
if (AcceptTaskBll.Exists(task.TaskID) == true)
{
ScriptManager.RegisterStartupScript(rptTaskList, GetType(), "key", "alert('接手失败,该任务已被人接受,请接手其他任务'); window.location.href='TaskList.aspx';", true);
return;
}
if (AcceptTaskBll.AcceptTask(acceptTask, task) == CRUDResult.Success)
{
if (AcceptTaskBll.GetAcceptNumByTaskID(task.TaskID) > 1)
{
AcceptTaskBll.DeleteTaskID(task.TaskID);
ScriptManager.RegisterStartupScript(rptTaskList, GetType(), "key", "alert('接手失败,该任务已被人接受,请接手其他任务'); window.location.href='TaskList.aspx';", true);
return;
}
if (!string.IsNullOrEmpty(task.GetTaskImge))
{
Page.ClientScript.RegisterStartupScript(typeof(TaskList), "alert", "<script language='javascript'>ShowTaskImge('" + task.TaskID + "');</script>");
return;
}
else
{
Response.Redirect("AcceptTaskManage.aspx");
}
}
}
//删除多条任务
public CRUDResult DeleteTaskID(string taskID)
{
try
{
string sql = @"delete from AcceptTask where CreateTime!=(
select MIN(CreateTime) from AcceptTask where TaskID=@TaskID)
and taskID=@TaskID";
SqlParameter[] prams = { new SqlParameter("@TaskID", taskID) };
return DbHelperSQL.ExecuteSql(sql, prams) > 0 ? CRUDResult.Success : CRUDResult.Fail;
}
catch (SqlException sql)
{
log.Error(sql.Message + sql.StackTrace);
throw sql;
}
catch (Exception e)
{
log.Error(e.Message + e.StackTrace);
throw e;
}
}
//通过任务数得到接手的数量
public int GetAcceptNumByTaskID(string taskID)
{
try
{
string sql = "select COUNT(*) from AcceptTask where TaskID=@TaskID";
SqlParameter[] prams = { new SqlParameter("@TaskID",taskID)};
return Convert.ToInt32(DbHelperSQL.GetSingle(sql, prams));
}
catch (SqlException sql)
{
log.Error(sql.Message + sql.StackTrace);
throw sql;
}
catch (Exception e)
{
log.Error(e.Message + e.StackTrace);
throw e;
}
}