Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @{ ViewBag.Title = "Event Logs"; }
- @model IEnumerable
- <Application.Models.EventLogs>
- <table id="data-table" class="table display responsive" style="width:100%">
- <thead class="thead-colored thead-light">
- <tr>
- <th>Time</th>
- <th>Scheme</th>
- <th>Serial Number</th>
- <th>Batch</th>
- <th>Exp Date</th>
- <th>Product Code</th>
- <th>Http Code</th>
- <th>Is Confirmed?</th>
- <th>Confirmation Date</th>
- <th>Verify Pack</th>
- </tr>
- </thead>
- <tbody>
- @foreach (var item in Model)
- {
- <tr>
- <td>@item.Timestamp</td>
- <td>@item.ProductCodeScheme</td>
- <td>@item.SerialNumber</td>
- <td>@item.Batch</td>
- <td>@item.ExpirationDate</td>
- <td>@item.ProductCode</td>
- <td>@item.HttpResponseCode</td>
- <td>@item.ConfirmedParsed</td>
- <td>@item.ConfirmedDate</td>
- if (@item.HttpResponseCode == "202")
- {
- <td class="text-secondary">@Html.ActionLink("Verify Pack", "VerifyPack", "Home", new { ProductCodeScheme = @item.ProductCodeScheme, ProductCode = @item.ProductCode, SerialNumber = @item.SerialNumber, Batch = @item.Batch, ExpirationDate = @item.ExpirationDate, CommandStatusCode = 0 }, new { @class = "text-info" })</td>
- }
- else
- {
- <td class="text-secondary">Not Available</td>
- }
- </tr>
- }
- </tbody>
- </table>
- }
- [HttpPost]
- public ActionResult VerifyPack(string productCodeScheme, string productCode, string serialNumber, string batch, string expirationDate, int commandStatusCode, string orderTrackingNo = null) {
- string TextAreaResult = string.Empty;
- string TextAreaResultException = string.Empty;
- string TextAreaResultHttpOperationCode = string.Empty;
- string TextAreaResultHttpResponseCode = string.Empty;
- string TextAreaResultHttpInformation = string.Empty;
- string TextAreaResultHttpWarning = string.Empty;
- string TextAreaResultState = string.Empty;
- string RemoteIpAddress = string.Format("{0}", Request.UserHostAddress);
- try {
- using(SecureMediDatabase database = new SecureMediDatabase(this)) {
- DatabaseFactory.setDatabase(database);
- Request baseRequest = (Request) database.createRequest(Country);
- ServiceThread serviceThread = new ServiceThread(0, null, Country);
- serviceThread.attach(this);
- baseRequest.setId(0);
- baseRequest.setProductCodeScheme(productCodeScheme);
- baseRequest.setRequestType(1); //single pack
- baseRequest.setProductCode(productCode);
- baseRequest.setSerialNumber(serialNumber);
- baseRequest.setBatch(batch);
- baseRequest.setExpirationDate(expirationDate);
- baseRequest.setWorkstation(RemoteIpAddress);
- baseRequest.setManualEntry(string.IsNullOrEmpty(expirationDate) || string.IsNullOrEmpty(batch));
- if (baseRequest.isManualEntry()) {
- switch (commandStatusCode) {
- case 2:
- case 3:
- break;
- default:
- throw new NotSupportedException("This operation does not support manual entries!");
- }
- }
- switch (Country) {
- case "SE":
- SecureMediRequestSE requestSE = (SecureMediRequestSE) baseRequest;
- requestSE.setUserId(@User.Identity.Name);
- requestSE.setCommandStatusCode(commandStatusCode);
- requestSE.OrderTrackingNumber = orderTrackingNo;
- break;
- case "FI":
- SecureMediRequestFI requestFI = (SecureMediRequestFI) baseRequest;
- requestFI.setSubUserId(@User.Identity.Name);
- break;
- }
- serviceThread.RunRequest(control, baseRequest, apteekki);
- TextAreaResult = string.Format("{0} {1} {2} {3} {4}", baseRequest.getResponseOperationCode(), baseRequest.getHttpResponseCode(), baseRequest.getHttpInformation(), baseRequest.getHttpWarning(), baseRequest.getResponseStatusCode());
- TextAreaResultHttpOperationCode = string.Format("{0}", baseRequest.getResponseOperationCode());
- TextAreaResultHttpResponseCode = string.Format("{0}", baseRequest.getHttpResponseCode());
- TextAreaResultHttpInformation = string.Format("{0}", baseRequest.getHttpInformation());
- TextAreaResultHttpWarning = string.Format("{0}", baseRequest.getHttpWarning());
- TextAreaResultState = string.Format("{0}", baseRequest.getResponseStatusCode());
- }
- } catch (Exception exc) {
- TextAreaResultException = "Exception: " + exc.Message;
- }
- return Json(new {
- result = TextAreaResult,
- httpOperationCode = TextAreaResultHttpOperationCode,
- httpResponseCode = TextAreaResultHttpResponseCode,
- httpInformation = TextAreaResultHttpInformation,
- httpWarning = TextAreaResultHttpWarning,
- state = TextAreaResultState,
- exception = TextAreaResultException,
- isSuccess = TextAreaResultHttpResponseCode == "200" || TextAreaResultHttpResponseCode == "202"
- });
- }
Add Comment
Please, Sign In to add comment