UpdateVisitorBeenHerePreAction.cs changes

Tento commit je obsažen v:
2023-09-14 14:29:20 +05:30
rodič ef661554f8
revize 9a3081a40c
+33 -10
Zobrazit soubor
@@ -1,6 +1,7 @@
using Bizgaze.CRM; using Bizgaze.CRM;
using Bizgaze.CRM.Visitors.Infos; using Bizgaze.CRM.Visitors.Infos;
using Bizgaze.CRM.Visitors.Managers; using Bizgaze.CRM.Visitors.Managers;
using MongoDB.Bson;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Dynamic; using System.Dynamic;
@@ -17,6 +18,7 @@ using Unibase.Platform.Data;
using Unibase.Platform.Forms.Providers; using Unibase.Platform.Forms.Providers;
using Unibase.Platform.Keys; using Unibase.Platform.Keys;
using Unibase.Platform.Tenants.Localization; using Unibase.Platform.Tenants.Localization;
using System.Text.Json;
namespace Bizgaze.CRM.Visitors.ActionProviders namespace Bizgaze.CRM.Visitors.ActionProviders
{ {
@@ -68,6 +70,7 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
var stageManager = Unibase.Dependency.DependencyConfig.Resolve<IStageManager>(); var stageManager = Unibase.Dependency.DependencyConfig.Resolve<IStageManager>();
var visitorManager = Unibase.Dependency.DependencyConfig.Resolve<Bizgaze.CRM.Visitors.Managers.IVisitorManager>(); var visitorManager = Unibase.Dependency.DependencyConfig.Resolve<Bizgaze.CRM.Visitors.Managers.IVisitorManager>();
var dictObj = obj as IDictionary<string, dynamic>; var dictObj = obj as IDictionary<string, dynamic>;
var visitorItems = dictObj.ContainsKey("VisitorItems") ? dictObj["VisitorItems"] : null;
var MobileNumber = dictObj["mobilenumber"].ToString(); var MobileNumber = dictObj["mobilenumber"].ToString();
var employeeId = Convert.ChangeType(dictObj["employeeid"].ToString(), typeof(long)); var employeeId = Convert.ChangeType(dictObj["employeeid"].ToString(), typeof(long));
var cityId = Convert.ChangeType(dictObj["cityid"].ToString(), typeof(long)); var cityId = Convert.ChangeType(dictObj["cityid"].ToString(), typeof(long));
@@ -91,7 +94,6 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
stageStatusName = "CheckIn"; stageStatusName = "CheckIn";
} }
var code = visitorsinfo.Result.Code; var code = visitorsinfo.Result.Code;
var agreement = visitorsinfo.Result.Agreement; var agreement = visitorsinfo.Result.Agreement;
visitorsinfo.Result.Agreement = agreement; visitorsinfo.Result.Agreement = agreement;
dictObj["agreement"] = true; dictObj["agreement"] = true;
@@ -114,7 +116,6 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
IsExcludeFromAudit = false, IsExcludeFromAudit = false,
Id = 0, Id = 0,
}; };
dynamic visitor = new Dictionary<string, object>(); dynamic visitor = new Dictionary<string, object>();
visitor.Add("createdby", srequest.Identity.UserId); visitor.Add("createdby", srequest.Identity.UserId);
visitor.Add("createddate", DateTime.Now); visitor.Add("createddate", DateTime.Now);
@@ -125,24 +126,22 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
visitor.Add("contactid", contactid); visitor.Add("contactid", contactid);
visitor.Add("code", visitorsinfo.Result.Code); visitor.Add("code", visitorsinfo.Result.Code);
visitor.Add("agreement", true); visitor.Add("agreement", true);
visitor.Add("employeeid", employeeId);
visitor.Add("seriesid", visitorsinfo.Result.SeriesId); visitor.Add("seriesid", visitorsinfo.Result.SeriesId);
visitor.Add("stageid", visitorsinfo.Result.StageId); visitor.Add("stageid", visitorsinfo.Result.StageId);
visitor.Add("tenantid", visitorsinfo.Result.TenantId); visitor.Add("tenantid", visitorsinfo.Result.TenantId);
visitor.Add("installedappid", visitorsinfo.Result.Installedappid); visitor.Add("installedappid", visitorsinfo.Result.Installedappid);
visitor.Add("fullname", visitorsinfo.Result.FullName); visitor.Add("fullname", visitorsinfo.Result.FullName);
visitor.Add("futureinvitation", visitorsinfo.Result.FutureInvitation); visitor.Add("futureinvitation", visitorsinfo.Result.FutureInvitation);
visitor.Add("employeeid", employeeId);
visitor.Add("cityid", cityId); visitor.Add("cityid", cityId);
visitor.Add("purposeofvisit", purposeofvisit); visitor.Add("purposeofvisit", purposeofvisit);
visitor.Add("title", visitorsinfo.Result.Title); visitor.Add("title", visitorsinfo.Result.Title);
visitor.Add("visitortype", visitorsinfo.Result.VisitorType); visitor.Add("visitortype", visitorsinfo.Result.VisitorType);
var response = await _repository.SaveAsync(request, vistoroptions, visitor); var response = await _repository.SaveAsync(request, vistoroptions, visitor);
if (response.Status == ResponseStatus.Error) if (response.Status == ResponseStatus.Error)
{ {
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved"); return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved");
} }
var _visitorId = Convert.ToInt64(response.Result["_Id"].ToString()); var _visitorId = Convert.ToInt64(response.Result["_Id"].ToString());
var vistoroptions1 = new EntityOptions() var vistoroptions1 = new EntityOptions()
{ {
@@ -169,10 +168,37 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
var response1 = await _repository.SaveAsync(request, vistoroptions1, visitor1); var response1 = await _repository.SaveAsync(request, vistoroptions1, visitor1);
if (response1.Status == ResponseStatus.Error) if (response1.Status == ResponseStatus.Error)
{ {
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved"); return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved");
} }
if (dictObj.ContainsKey("VisitorItems"))
{
var Items = Convert.ChangeType(dictObj["VisitorItems"].ToString(), typeof(object)).ToString();
var deserializeObj = System.Text.Json.JsonSerializer.Deserialize<List<Dictionary<string, object>>>(Items);
var visitoritem = deserializeObj[0]["visitoritemname"].ToString();
var serial = deserializeObj[0]["serialnumber"].ToString();
var quantity = Convert.ToInt64(deserializeObj[0]["quantity"].ToString());
var brand = deserializeObj[0]["brand"].ToString();
var vistoroptions2 = new EntityOptions()
{
IsIdentity = true,
IsNewEntity = true,
TableName = "bizgazecrm_visitoritems",
PkColumn = "visitoritemid",
IsExcludeFromAudit = false,
Id = 0,
};
dynamic visitor2 = new Dictionary<string, object>();
visitor2.Add("visitorid", _visitorId);
visitor2.Add("visitoritemname", visitoritem);
visitor2.Add("quantity", quantity);
visitor2.Add("brand", brand);
visitor2.Add("serialnumber", serial);
var response2 = await _repository.SaveAsync(request, vistoroptions2, visitor2);
if (response2.Status == ResponseStatus.Error)
{
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved");
}
}
var lastdate = visitorsinfo.Result.LastUpdatedDate; var lastdate = visitorsinfo.Result.LastUpdatedDate;
visitorsinfo.Result.LastUpdatedDate = DateTime.Now; visitorsinfo.Result.LastUpdatedDate = DateTime.Now;
var installedAppId = visitorsinfo.Result.Installedappid; var installedAppId = visitorsinfo.Result.Installedappid;
@@ -186,8 +212,6 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
{ {
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "visitor Not Found"); return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "visitor Not Found");
} }
returnresponse = new FormActionResponse();
returnresponse.Obj = dictObj as ExpandoObject;
returnresponse.PkValue = defaultPKValue; returnresponse.PkValue = defaultPKValue;
return ActionResponse<FormActionResponse>.CreateSuccessResponse("success", returnresponse); return ActionResponse<FormActionResponse>.CreateSuccessResponse("success", returnresponse);
} }
@@ -200,7 +224,6 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
}; };
} }
} }
} }
} }