VisitorPreInvitePreAction.cs changes
This commit is contained in:
@@ -69,113 +69,114 @@ 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 MobileNumber = dictObj["mobilenumber"].ToString();
|
//ExpandoObject obj1 = dictObj["RequestObj"];
|
||||||
var employeeId = Convert.ChangeType(dictObj["employeeid"].ToString(), typeof(long));
|
//var req = obj1 as IDictionary<string, object>;
|
||||||
var cityId = Convert.ChangeType(dictObj["cityid"].ToString(), typeof(long));
|
var CaptureImageObj = Convert.ChangeType(dictObj["Captureimage"].ToString(), typeof(object)).ToString();
|
||||||
var visitornumberId = Convert.ChangeType(dictObj["visitornumberid"].ToString(), typeof(long));
|
var deserializeimagesObj = JsonSerializer.Deserialize<List<ExpandoObject>>(CaptureImageObj);
|
||||||
var purposeofvisit=Convert.ChangeType(dictObj["purposeofvisit"].ToString(), typeof(long));
|
for (var k = 0; k < deserializeimagesObj.Count; k++)
|
||||||
long visitorid = 0;
|
|
||||||
var visitorsinfo = await visitorManager.VisitorsbyMobileNumberAsync(srequest, MobileNumber);
|
|
||||||
Int32 refstatusid = 0;
|
|
||||||
var stageStatusName = "";
|
|
||||||
if (visitorsinfo.Result != null)
|
|
||||||
{
|
{
|
||||||
refstatusid = visitorsinfo.Result.RefStatusId;
|
var data1 = deserializeimagesObj[k];
|
||||||
visitorid = visitorsinfo.Result.VisitorId;
|
var CaptureImageData = data1 as IDictionary<string, dynamic>;
|
||||||
if (refstatusid == 1 || refstatusid == 2)
|
var image = Convert.ChangeType(CaptureImageData["image"].ToString(), typeof(string)).ToString();
|
||||||
|
var MobileNumber = dictObj["mobilenumber"].ToString();
|
||||||
|
var employeeId = Convert.ChangeType(dictObj["employeeid"].ToString(), typeof(long));
|
||||||
|
var cityId = Convert.ChangeType(dictObj["cityid"].ToString(), typeof(long));
|
||||||
|
var visitornumberId = Convert.ChangeType(dictObj["visitornumberid"].ToString(), typeof(long));
|
||||||
|
var purposeofvisit = Convert.ChangeType(dictObj["purposeofvisit"].ToString(), typeof(long));
|
||||||
|
long visitorid = 0;
|
||||||
|
var visitorsinfo = await visitorManager.VisitorsbyMobileNumberAsync(srequest, MobileNumber);
|
||||||
|
Int32 refstatusid = 0;
|
||||||
|
var stageStatusName = "";
|
||||||
|
if (visitorsinfo.Result != null)
|
||||||
{
|
{
|
||||||
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Already Exists");
|
refstatusid = visitorsinfo.Result.RefStatusId;
|
||||||
}
|
visitorid = visitorsinfo.Result.VisitorId;
|
||||||
if (refstatusid == 3)
|
if (refstatusid == 1 || refstatusid == 2)
|
||||||
{
|
|
||||||
var agreement = visitorsinfo.Result.Agreement;
|
|
||||||
visitorsinfo.Result.Agreement = agreement;
|
|
||||||
dictObj["agreement"] = true;
|
|
||||||
dictObj["visitorid"] = visitorid;
|
|
||||||
dictObj["visitoremailid"] = visitorsinfo.Result.VisitorEmailId;
|
|
||||||
dictObj["visitornumberid"] = visitorsinfo.Result.VisitorNumberId;
|
|
||||||
var fullname = visitorsinfo.Result.FullName;
|
|
||||||
var sql = "select userid from unibasecmn_users where username='" + fullname + "";
|
|
||||||
var select = new Unibase.Data.Sql.Select("unibasecmn_users").AllColumns().Where("username", fullname);
|
|
||||||
var parameters = new List<Unibase.Data.Parameter>();
|
|
||||||
parameters.Add(new Unibase.Data.Parameter("@username", fullname));
|
|
||||||
var dt = await GetDataTableAsync(srequest, select, parameters);
|
|
||||||
var contactid = dt.Rows[0]["userid"];
|
|
||||||
var vistoroptions = new EntityOptions()
|
|
||||||
{
|
{
|
||||||
IsIdentity = true,
|
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Already Exists");
|
||||||
IsNewEntity = true,
|
}
|
||||||
TableName = "bizgazecrm_visitors",
|
if (refstatusid == 3)
|
||||||
PkColumn = "visitorid",
|
{
|
||||||
IsExcludeFromAudit = false,
|
var agreement = visitorsinfo.Result.Agreement;
|
||||||
Id = 0,
|
visitorsinfo.Result.Agreement = agreement;
|
||||||
};
|
dictObj["agreement"] = true;
|
||||||
|
dictObj["visitorid"] = visitorid;
|
||||||
|
dictObj["visitoremailid"] = visitorsinfo.Result.VisitorEmailId;
|
||||||
|
dictObj["visitornumberid"] = visitorsinfo.Result.VisitorNumberId;
|
||||||
|
var fullname = visitorsinfo.Result.FullName;
|
||||||
|
var sql = "select userid from unibasecmn_users where username='" + fullname + "";
|
||||||
|
var select = new Unibase.Data.Sql.Select("unibasecmn_users").AllColumns().Where("username", fullname);
|
||||||
|
var parameters = new List<Unibase.Data.Parameter>();
|
||||||
|
parameters.Add(new Unibase.Data.Parameter("@username", fullname));
|
||||||
|
var dt = await GetDataTableAsync(srequest, select, parameters);
|
||||||
|
var contactid = dt.Rows[0]["userid"];
|
||||||
|
var vistoroptions = new EntityOptions()
|
||||||
|
{
|
||||||
|
IsIdentity = true,
|
||||||
|
IsNewEntity = true,
|
||||||
|
TableName = "bizgazecrm_visitors",
|
||||||
|
PkColumn = "visitorid",
|
||||||
|
IsExcludeFromAudit = false,
|
||||||
|
Id = 0,
|
||||||
|
};
|
||||||
|
|
||||||
var visitor = new Dictionary<string, object>();
|
var 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);
|
||||||
visitor.Add("statusid", visitorsinfo.Result.StatusId);
|
visitor.Add("statusid", visitorsinfo.Result.StatusId);
|
||||||
visitor.Add("visitorid", visitorsinfo.Result.VisitorId);
|
visitor.Add("visitorid", visitorsinfo.Result.VisitorId);
|
||||||
visitor.Add("organizationname", visitorsinfo.Result.OrganizationName);
|
visitor.Add("organizationname", visitorsinfo.Result.OrganizationName);
|
||||||
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("visitornumberid", visitorsinfo.Result.VisitorNumberId);
|
visitor.Add("visitornumberid", visitorsinfo.Result.VisitorNumberId);
|
||||||
visitor.Add("employeeid", employeeId);
|
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("cityid", cityId);
|
visitor.Add("cityid", cityId);
|
||||||
visitor.Add("purposeofvisit", visitorsinfo.Result.PurposeOfVisit);
|
visitor.Add("purposeofvisit", visitorsinfo.Result.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);
|
||||||
|
stageStatusName = "CheckIn";
|
||||||
|
dictObj["visitorid"] = visitorid;
|
||||||
|
DateTime dates = DateTime.Now;
|
||||||
|
var installedAppId = visitorsinfo.Result.Installedappid;
|
||||||
|
var stage = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
||||||
|
var NewStageId = stage.Result.StageId;
|
||||||
|
//var Updatecheckindate = new Update("bizgazecrm_visitors").Value("typeofvisitor", 1).Value("employeeid",employeeId).Value("cityid",cityId).Value("stageid", NewStageId).Value("checkindate", dates).Value("lastupdateddate", dates).Where(Exp.Eq("visitorid", visitorid));
|
||||||
|
//await _repository.ExecuteAsync(request, Updatecheckindate);
|
||||||
|
// var response = await _repository.SaveAsync(request, vistoroptions, visitor);
|
||||||
|
//visitor.Add("mobilenumber", visitorsinfo.Result.MobileNumber);
|
||||||
|
|
||||||
stageStatusName = "CheckIn";
|
var updateDate = new Dictionary<string, object>();
|
||||||
dictObj["visitorid"] = visitorid;
|
updateDate.Add("employeeid", employeeId);
|
||||||
DateTime dates = DateTime.Now;
|
updateDate.Add("photourl", image);
|
||||||
var installedAppId = visitorsinfo.Result.Installedappid;
|
updateDate.Add("cityid", cityId);
|
||||||
var stage = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
updateDate.Add("typeofvisitor", 1);
|
||||||
var NewStageId = stage.Result.StageId;
|
updateDate.Add("stageid", NewStageId);
|
||||||
//var Updatecheckindate = new Update("bizgazecrm_visitors").Value("typeofvisitor", 1).Value("employeeid",employeeId).Value("cityid",cityId).Value("stageid", NewStageId).Value("checkindate", dates).Value("lastupdateddate", dates).Where(Exp.Eq("visitorid", visitorid));
|
updateDate.Add("agreement", agreement);
|
||||||
//await _repository.ExecuteAsync(request, Updatecheckindate);
|
updateDate.Add("lastupdateddate", dates);
|
||||||
// var response = await _repository.SaveAsync(request, vistoroptions, visitor);
|
updateDate.Add("purposeofvisit", purposeofvisit);
|
||||||
//visitor.Add("mobilenumber", visitorsinfo.Result.MobileNumber);
|
var updateQry = new Update("bizgazecrm_visitors").Values(updateDate).Where(Exp.Eq("visitorid", visitorid));
|
||||||
|
var ds = await _repository.ExecuteAsync(request, updateQry);
|
||||||
|
var agree = await visitorManager.VisitorAgreementAsync(request, visitorid);
|
||||||
|
|
||||||
var updateDate = new Dictionary<string, object>();
|
}
|
||||||
updateDate.Add("employeeid", employeeId);
|
|
||||||
updateDate.Add("cityid", cityId);
|
|
||||||
updateDate.Add("typeofvisitor",1);
|
|
||||||
updateDate.Add("stageid", NewStageId);
|
|
||||||
updateDate.Add("agreement",agreement );
|
|
||||||
updateDate.Add("lastupdateddate", dates);
|
|
||||||
updateDate.Add("purposeofvisit", purposeofvisit);
|
|
||||||
var updateQry = new Update("bizgazecrm_visitors").Values(updateDate).Where(Exp.Eq("visitorid", visitorid));
|
|
||||||
var ds = await _repository.ExecuteAsync(request, updateQry);
|
|
||||||
|
|
||||||
|
|
||||||
//returnresponse.Obj = visitor.ToExpandoObject();
|
|
||||||
|
|
||||||
//if (response.Status == ResponseStatus.Error)
|
|
||||||
//{
|
|
||||||
// return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved");
|
|
||||||
//}
|
|
||||||
var agree = await visitorManager.VisitorAgreementAsync(request, visitorid);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "visitor Not Found");
|
||||||
|
}
|
||||||
|
//returnresponse = new FormActionResponse();
|
||||||
|
//returnresponse.Obj = null;
|
||||||
|
//returnresponse.PkValue = 0;
|
||||||
|
//return ActionResponse<FormActionResponse>.CreateSuccessResponse("success", returnresponse);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "visitor Not Found");
|
|
||||||
}
|
|
||||||
//returnresponse = new FormActionResponse();
|
|
||||||
//returnresponse.Obj = null;
|
|
||||||
//returnresponse.PkValue = 0;
|
|
||||||
//return ActionResponse<FormActionResponse>.CreateSuccessResponse("success", returnresponse);
|
|
||||||
|
|
||||||
returnresponse.PkValue = defaultPKValue;
|
returnresponse.PkValue = defaultPKValue;
|
||||||
return ActionResponse<FormActionResponse>.CreateSuccessResponse("success", returnresponse);
|
return ActionResponse<FormActionResponse>.CreateSuccessResponse("success", returnresponse);
|
||||||
|
|
||||||
|
|||||||
Verwijs in nieuw issue
Block a user