|
@@ -66,47 +66,38 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
|
66
|
66
|
var IdValue = providerObject.IdValue;
|
67
|
67
|
var srequest = SelectRequest.FromRequest(request);
|
68
|
68
|
var obj = providerObject.RequestObject;
|
69
|
|
- var returnresponse = new FormActionResponse();
|
70
|
|
- // var docParametersList = providerObject.DocParametersList;
|
|
69
|
+ var returnresponse = new FormActionResponse();
|
71
|
70
|
var defaultPKValue = providerObject.DefaultPKValue;
|
72
|
71
|
var stageManager = Unibase.Dependency.DependencyConfig.Resolve<IStageManager>();
|
|
72
|
+ var visitorManager = Unibase.Dependency.DependencyConfig.Resolve<Bizgaze.CRM.Visitors.Managers.IVisitorManager>();
|
73
|
73
|
var dictObj = obj as IDictionary<string, dynamic>;
|
74
|
74
|
var MobileNumber = dictObj["mobilenumber"].ToString();
|
75
|
|
- //var select = new Unibase.Data.Sql.Select().Columns("bizgazecrm_visitors.visitorid").From("bizgazecrm_visitors").Where("mobilenumber", MobileNumber);
|
76
|
|
- //List<Parameter> param = new List<Parameter>();
|
77
|
|
- //param.Add(new Parameter("@mobilenumber", MobileNumber));
|
78
|
|
- //var Visitor = await GetDataTableAsync(srequest, select, param);
|
79
|
75
|
long visitorid = 0;
|
80
|
|
- var sql = new Unibase.Data.Sql.Select("bizgazecrm_visitors").Columns("bizgazecrm_visitors.installedappid", "bizgazecrm_visitors.visitorid", "bizgazecrm_visitors.fullname", "bizgazecrm_visitors.mobilenumber", "bizgazecrm_visitors.emailid", "bizgazecrm_visitors.photourl", "unibase_stagestatus.stageStatusName", "unibase_stagestatus.RefStatusId").InnerJoin("unibase_stages", Exp.EqColumns("unibase_stages.stageid", "bizgazecrm_visitors.stageid")).InnerJoin("unibase_stagestatus", Exp.EqColumns("unibase_stagestatus.stagestatusid", "unibase_stages.stagestatusid")).Where("bizgazecrm_visitors.mobilenumber", MobileNumber);
|
81
|
|
- List<Parameter> paramsql = new List<Parameter>();
|
82
|
|
- paramsql.Add(new Parameter("@bizgazecrm_visitors.mobilenumber", MobileNumber));
|
83
|
|
- var dt = await GetDataTableAsync(srequest, sql, paramsql);
|
|
76
|
+ var visitorsinfo = await visitorManager.VisitorsbyMobileNumberAsync(srequest, MobileNumber);
|
84
|
77
|
var stageStatusName = "";
|
85
|
|
- if (dt.Rows.Count > 0)
|
|
78
|
+ if (visitorsinfo.Result != null)
|
86
|
79
|
{
|
87
|
|
- stageStatusName = "CheckIn";
|
88
|
|
- for (int i = 0; i < dt.Rows.Count; i++)
|
89
|
|
- {
|
90
|
|
- visitorid = dt.Rows[i]["visitorid"];
|
91
|
|
- var installedAppId = Convert.ToInt64(dt.Rows[i]["installedAppId"]);
|
92
|
|
- var stage = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
93
|
|
- var NewStageId = stage.Result.StageId;
|
94
|
|
- var UpdateStage = new Update("bizgazecrm_visitors").Value("stageid", NewStageId).Where(Exp.Eq("visitorId", visitorid));
|
95
|
|
- await _repository.ExecuteAsync(request, UpdateStage);
|
96
|
|
- }
|
97
|
|
- var updateValues = new Dictionary<string, object>();
|
98
|
|
- updateValues.Add("agreement", true);
|
99
|
|
- updateValues.Add("checkindate", DateTime.Now);
|
100
|
|
- var updateQry = new Update("bizgazecrm_visitors").Values(updateValues).Where(Exp.Eq("visitorid", visitorid));
|
101
|
|
- var ds = await _repository.ExecuteAsync(request, updateQry);
|
102
|
|
- returnresponse.Obj = null;
|
103
|
|
- returnresponse.PkValue = defaultPKValue;
|
104
|
|
-
|
|
80
|
+ stageStatusName = "CheckIn";
|
|
81
|
+ visitorid = visitorsinfo.Result.VisitorId;
|
|
82
|
+ var installedAppId = visitorsinfo.Result.Installedappid;
|
|
83
|
+ var stage = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
|
84
|
+ var NewStageId = stage.Result.StageId;
|
|
85
|
+ var UpdateStage = new Update("bizgazecrm_visitors").Value("stageid", NewStageId).Where(Exp.Eq("visitorId", visitorid));
|
|
86
|
+ await _repository.ExecuteAsync(request, UpdateStage);
|
|
87
|
+ }
|
|
88
|
+ else
|
|
89
|
+ {
|
|
90
|
+ return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "visitor Not Found");
|
105
|
91
|
}
|
|
92
|
+ var updateValues = new Dictionary<string, object>();
|
|
93
|
+ updateValues.Add("agreement", true);
|
|
94
|
+ updateValues.Add("checkindate", DateTime.Now);
|
|
95
|
+ var updateQry = new Update("bizgazecrm_visitors").Values(updateValues).Where(Exp.Eq("visitorid", visitorid));
|
|
96
|
+ var ds = await _repository.ExecuteAsync(request, updateQry);
|
|
97
|
+ returnresponse.Obj = null;
|
|
98
|
+ returnresponse.PkValue = defaultPKValue;
|
106
|
99
|
return ActionResponse<FormActionResponse>.CreateSuccessResponse("success", returnresponse);
|
107
|
100
|
}
|
108
|
|
-
|
109
|
|
-
|
110
|
101
|
public List<UniqueKey> AppliedApps
|
111
|
102
|
{
|
112
|
103
|
get
|