Commit 12b8398f authored by solho's avatar solho

1.FLOW去除step_value依賴,動態設定步驟相關限制解除

2.關帳日期防呆
parent 63728d03
......@@ -315,7 +315,11 @@ namespace WebAPI.Controllers
result.Content = new StringContent(JsonConvert.SerializeObject(response), System.Text.Encoding.UTF8, "application/json");
return result;
}
/// <summary>
/// FLOW 保存
/// </summary>
/// <param name="param"></param>
/// <returns></returns>
[Route("SaveEsnTodosFlow")]
[CorsHandle]
[HttpPost]
......@@ -368,9 +372,9 @@ namespace WebAPI.Controllers
update_time = Convert.ToDateTime(dr["update_time"]),
Map_Class = dr["Map_Class"].ToString(),
Step_Text = dr["Step_Text"].ToString(),
Step_Value_Next = dr["Step_Value_Next"].ToString(),
Step_Id_Next = Convert.ToInt32(dr["Step_Id_Next"]),
Step_Value = dr["Step_Value"].ToString(),
Step_Value_previous = dr["Step_Value_previous"].ToString(),
Step_Id_previous = Convert.ToInt32(dr["Step_Id_previous"]),
update_user_id = dr["update_user_id"].ToString()
}
);
......@@ -433,12 +437,20 @@ namespace WebAPI.Controllers
StepType_id = dsr["StepType_id"] == DBNull.Value ? 0 : Convert.ToInt32(dsr["StepType_id"]);
Esn_Todos_Flow_StepTypeModel CStepTypeNext = new Esn_Todos_Flow_StepTypeModel(), CStepTypeCur = new Esn_Todos_Flow_StepTypeModel();
JtSn = obj_input.SelectToken("$.Sns[?(@.todos_sn == '" + dsr["Sn"] + "')]");
if (dsr["esn_todos_sn"] == DBNull.Value) //insert
{
CStepTypeCur = AllStepType.Where(p => p.Map_Class.Contains(JtSn["validclass"].ToString())).FirstOrDefault();
StepType_idHis = CStepTypeCur.id;
CStepTypeNext = AllStepType.Where(p => p.Step_Value== CStepTypeCur.Step_Value_Next).FirstOrDefault();
if (!string.IsNullOrEmpty(JtSn["targetclass"].ToString()))
{
CStepTypeNext = AllStepType.Where(p => p.id == AllStepType.Where(p2 => p2.Map_Class == JtSn["targetclass"].ToString()).FirstOrDefault().id).FirstOrDefault();
}
else
CStepTypeNext = AllStepType.Where(p => p.id == CStepTypeCur.Step_Id_Next).FirstOrDefault();
//CStepTypeCur = CStepTypeNext;
Tsql += @"insert into esn_todos_Flow(esn_todos_sn,[StepType_id],[" + CStepTypeCur.Map_Class
+ @"_IsConfirm],StepType_id_Previous,Description,[create_user_id],[Create_time],update_user_id,update_time) "
......@@ -457,41 +469,51 @@ namespace WebAPI.Controllers
//}
#endregion
CStepTypeCur = AllStepType.Where(p => p.id == StepType_id).FirstOrDefault();
CStepTypeNext = AllStepType.Where(p => p.Step_Value == CStepTypeCur.Step_Value_Next).FirstOrDefault();
String Step_Value_previous = dsr["Step_Value_previous"].ToString(), Step_Value_Next = dsr["Step_Value_Next"].ToString();
if (!string.IsNullOrEmpty(JtSn["targetclass"].ToString()))
{
CStepTypeNext = AllStepType.Where(p => p.id == AllStepType.Where(p2 => p2.Map_Class == JtSn["targetclass"].ToString()).FirstOrDefault().id).FirstOrDefault();
}
else
CStepTypeNext = AllStepType.Where(p => p.id == CStepTypeCur.Step_Id_Next).FirstOrDefault();
//String Step_Value_previous = dsr["Step_Value_previous"].ToString(), Step_Value_Next = dsr["Step_Value_Next"].ToString();
Tsql = Tsql + "update esn_todos_Flow set ";
//確認是否有審核資格
if (Confirm_Method == "CF" || Confirm_Method == "CFTLd")
{
//2021-08-20限制全取消
if (!Confirm_Class.Contains(Map_Class))
{
//return_msg_error.Add(dsr["esn_todos_sn"] + ":無可審核該筆身分");
}
if (int.Parse(CStepTypeCur.Step_Value) > 90)
{
return_msg_error.Add(dsr["esn_todos_sn"] + ":審核流程已結束,不可確認");
//return_msg_error.Add(dsr["esn_todos_sn"] + ":審核流程已結束,不可確認");
}
}
if (Confirm_Method == "RJ")
{
Tsql = Tsql + "PG_IsConfirm =" + IsConfirm + "," + "PE_IsConfirm =" + IsConfirm + "," + "Leader_IsConfirm =" + IsConfirm + ","; //退回後,改為更新所有Flow狀態確認
CStepTypeNext = AllStepType.Where(p => p.Step_Value == Step_Value_previous).FirstOrDefault();
//Tsql = Tsql + "PG_IsConfirm =" + IsConfirm + "," + "PE_IsConfirm =" + IsConfirm + "," + "Leader_IsConfirm =" + IsConfirm + ","; //退回後,改為更新所有Flow狀態確認
//CStepTypeNext = AllStepType.Where(p => p.Step_Value == Step_Value_previous).FirstOrDefault();
StepType_idHis = CStepTypeCur.id;
}
else if (Confirm_Method == "RV")
{
StepType_idHis = CStepTypeCur.id;
CStepTypeNext = AllStepType.Where(p => p.id == StepType_id_Previous).FirstOrDefault();
CStepTypeCur.id = CStepTypeNext.id; //回復與下一步 同ID
//CStepTypeCur.id = CStepTypeNext.id; //回復與下一步 同ID
Tsql = Tsql + CStepTypeNext.Map_Class + "_IsConfirm =" + IsConfirm + ",";
}
else if (Confirm_Method == "RJTOp")
{
Tsql = Tsql + "PG_IsConfirm =" + IsConfirm + "," + "PE_IsConfirm =" + IsConfirm + "," + "Leader_IsConfirm =" + IsConfirm + ","; //退回後,改為更新所有Flow狀態確認
CStepTypeNext = AllStepType.Where(p => p.Step_Value == Step_Value_previous).FirstOrDefault();
//Tsql = Tsql + "PG_IsConfirm =" + IsConfirm + "," + "PE_IsConfirm =" + IsConfirm + "," + "Leader_IsConfirm =" + IsConfirm + ","; //退回後,改為更新所有Flow狀態確認
//CStepTypeNext = AllStepType.Where(p => p.Step_Value == Step_Value_previous).FirstOrDefault();
StepType_idHis = CStepTypeCur.id;
RJTOp = String.Format(@"exec [dbo].esp_esn_Todos_V3_AssignStatus 'AS05' ," + dsr["sn"] + @",'',@todos_Reject_Desc_{0},@Wade_User_ID", i);
cmd.Parameters.AddWithValue(string.Format("@todos_Reject_Desc_{0}",i), "承辦人:" + JtSn["todos_Reject_Desc"].ToString() + "<br>主管:" + Reject_Description );
......
......@@ -122,7 +122,7 @@ namespace WebAPI.Controllers
where 1=1 ");
JObject objPermission_furtherSql = JObject.Parse(obj_input["Permission_furtherSql"].ToString());
if (obj_input["Settle_Date"]!=null)
if (obj_input["Settle_Date"]!=null && String.IsNullOrEmpty(obj_input["Settle_Date"].ToString()) )
{
strsql += " and Settle_Date between @Settle_Date and @Settle_Date ";
cmd.Parameters.Add("@Settle_Date", obj_input["Settle_Date"].ToString());
......
......@@ -30,10 +30,14 @@ namespace WebAPI.Models
public String Step_Value_previous { get; set; }
public String Step_Value_Next { get; set; }
public String Step_Value { get; set; }
public int Step_Id_Next { get; set; }
public int Step_Id_previous { get; set; }
public String Step_Text { get; set; }
public String Map_Class { get; set; }
public String update_user_id { get; set; }
public DateTime? update_time { get; set; }
}
public class GetFlowSnsModel
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment