1
This commit is contained in:
225
Gatedge.ScanCode/Controllers/ScanRecordsController.cs
Normal file
225
Gatedge.ScanCode/Controllers/ScanRecordsController.cs
Normal file
@@ -0,0 +1,225 @@
|
||||
using Gatedge.K3Cloud.Utils;
|
||||
using Gatedge.K3Cloud.Utils.Common;
|
||||
using Gatedge.K3Cloud.Utils.Model.K3Request;
|
||||
using Gatedge.ScanCode.Common;
|
||||
using Gatedge.ScanCode.Extension;
|
||||
using Gatedge.ScanCode.Models.Dto;
|
||||
using Gatedge.ScanCode.Models.Dto.ScanRecords;
|
||||
using Gatedge.ScanCode.Services;
|
||||
using Gatedge.ScanCode.Services.IServices;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace Gatedge.ScanCode.Controllers
|
||||
{
|
||||
/// <summary>
|
||||
/// 暂存扫描记录
|
||||
/// </summary>
|
||||
[Route("api/[controller]")]
|
||||
[Authorize]
|
||||
[ApiController]
|
||||
public class ScanRecordsController : ControllerBase
|
||||
{
|
||||
private readonly string _FormName = "扫描记录#";
|
||||
private readonly string _FormId = "k4b27f8773ecb443da113e1a5e64ccaf9";
|
||||
private readonly K3CloudApiUtils _utils;
|
||||
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
/// </summary>
|
||||
/// <param name="utils"></param>
|
||||
public ScanRecordsController(K3CloudApiUtils utils)
|
||||
{
|
||||
_utils = utils;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查看
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpGet("View")]
|
||||
public AjaxResult View([FromQuery] View Param)
|
||||
{
|
||||
var loginInfo = User.GetLoginInfoByClaimsPrincipal();
|
||||
_utils.InitCloudApi(loginInfo);
|
||||
IScanRecordsService service = new ScanRecordsService(_utils);
|
||||
var data = service.View(Param);
|
||||
return AjaxResult.Success(data).AddBillId(_FormId);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 单据列表
|
||||
/// </summary>
|
||||
/// <param name="param"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("List")]
|
||||
public AjaxResult List([FromQuery] ScanRecordsPageParam param)
|
||||
{
|
||||
if (param.PageSize <= 0)
|
||||
{
|
||||
var errMes = string.Format("传递的参数不合法,页大小需要大于0,当前 PageSize 为 {0}", param.PageSize);
|
||||
return AjaxResult.Error(500, errMes);
|
||||
}
|
||||
if (param.PageIndex <= 0)
|
||||
{
|
||||
var errMes = string.Format("传递的参数不合法,页索引需要大于0,当前 PageIndex 为 {0}", param.PageIndex);
|
||||
return AjaxResult.Error(500, errMes);
|
||||
}
|
||||
if (param.UserId == null)
|
||||
{
|
||||
var errMes = string.Format("传递的参数不合法,用户Id不能为空,当前 UserId 为 {0}", param.UserId);
|
||||
return AjaxResult.Error(500, errMes);
|
||||
}
|
||||
|
||||
|
||||
Query queryParam = new Query()
|
||||
{
|
||||
FormId = this._FormId,
|
||||
FieldKeys = @"FID,FStatus,FCreatorId,FCreateDate,
|
||||
FBillId.FID,FBillId.FName,FBillNo,FBarCode,FEntryId,FMaterialId,FMaterialId.FNumber,FMaterialId.FName,FQty,FStockId,FStockId.FNumber,FStockId.FName,Flot,FJSON,
|
||||
FErrorInfo,FSubmitLot,
|
||||
FResultBillId.FID,FResultBillId.FName,FResultBillNo,FResultId,FResultIsChecked,FIsPrinted",
|
||||
Limit = param.PageSize,
|
||||
StartRow = param.PageSize * (param.PageIndex - 1),
|
||||
FilterString = new List<FilterItem>(),
|
||||
OrderString = "FCreateDate DESC"
|
||||
};
|
||||
FilterItem userItem = new FilterItem("FCreatorId", "67", param.UserId, "0");
|
||||
queryParam.FilterString.Add(userItem);
|
||||
// 如果存在FormId,加到过滤条件中
|
||||
if (param.BillId != null)
|
||||
{
|
||||
queryParam.FilterString.Add(new FilterItem("FBillId.FID", "67", param.BillId, "0"));
|
||||
}
|
||||
// 如果存在FormId,加到过滤条件中
|
||||
if (param.BarCode != null)
|
||||
{
|
||||
queryParam.FilterString.Add(new FilterItem("FBarCode", "67", param.BarCode, "0"));
|
||||
}
|
||||
if (param.BillNo != null)
|
||||
{
|
||||
queryParam.FilterString.Add(new FilterItem("FBillNo", "67", param.BillNo, "0"));
|
||||
}
|
||||
if (param.Status != null)
|
||||
{
|
||||
queryParam.FilterString.Add(new FilterItem("FStatus", "29", param.Status, "0"));
|
||||
}
|
||||
if (param.SubmitLot != null)
|
||||
{
|
||||
queryParam.FilterString.Add(new FilterItem("FSubmitLot", "67", param.SubmitLot, "0"));
|
||||
}
|
||||
queryParam.FilterString.Add(userItem);
|
||||
var loginInfo = User.GetLoginInfoByClaimsPrincipal();
|
||||
_utils.InitCloudApi(loginInfo);
|
||||
IScanRecordsService service = new ScanRecordsService(_utils);
|
||||
var data = service.List(queryParam);
|
||||
return AjaxResult.Success(data);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 保存扫描记录
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("Save")]
|
||||
public AjaxResult Save([FromBody] ScanRecordsSaveDto param)
|
||||
{
|
||||
var loginInfo = User.GetLoginInfoByClaimsPrincipal();
|
||||
_utils.InitCloudApi(loginInfo);
|
||||
IScanRecordsService service = new ScanRecordsService(_utils);
|
||||
service.Save(param);
|
||||
return AjaxResult.Success("保存成功");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 批量扫描记录
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("PatchSave")]
|
||||
public AjaxResult PatchSave([FromBody] ArrayDto<ScanRecordsSaveDto> param)
|
||||
{
|
||||
var loginInfo = User.GetLoginInfoByClaimsPrincipal();
|
||||
_utils.InitCloudApi(loginInfo);
|
||||
IScanRecordsService service = new ScanRecordsService(_utils);
|
||||
service.PatchSave(param);
|
||||
return AjaxResult.Success("保存成功");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 删除扫描记录
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("Delete")]
|
||||
public AjaxResult Delete([FromBody] Delete Param)
|
||||
{
|
||||
var loginInfo = User.GetLoginInfoByClaimsPrincipal();
|
||||
_utils.InitCloudApi(loginInfo);
|
||||
IScanRecordsService service = new ScanRecordsService(_utils);
|
||||
service.Delete(Param);
|
||||
return AjaxResult.Success("删除成功");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 批量删除扫描记录
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("MultiDelete")]
|
||||
public AjaxResult MultiDelete([FromBody] ScanRecordsPageParam Param)
|
||||
{
|
||||
if (Param.UserId == null)
|
||||
{
|
||||
var errMes = string.Format("传递的参数不合法,用户Id不能为空,当前 UserId 为 {0}", Param.UserId);
|
||||
return AjaxResult.Error(500, errMes);
|
||||
}
|
||||
if (Param.BillId == null)
|
||||
{
|
||||
var errMes = string.Format("传递的参数不合法,表单Id不能为空,当前 FormId 为 {0}", Param.BillId);
|
||||
return AjaxResult.Error(500, errMes);
|
||||
}
|
||||
Query queryParam = new Query()
|
||||
{
|
||||
FormId = this._FormId,
|
||||
FieldKeys = "FID",
|
||||
};
|
||||
FilterList filterString = new FilterList();
|
||||
FilterItem userItem = new FilterItem("FCreatorId", "67", Param.UserId, "0");
|
||||
filterString.AddFilterItem(userItem);
|
||||
FilterItem formidItem = new FilterItem("FFromId", "67", Param.BillId, "0");
|
||||
filterString.AddFilterItem(formidItem);
|
||||
queryParam.FilterString = filterString.GetFilterString();
|
||||
var loginInfo = User.GetLoginInfoByClaimsPrincipal();
|
||||
_utils.InitCloudApi(loginInfo);
|
||||
IScanRecordsService service = new ScanRecordsService(_utils);
|
||||
|
||||
var data = service.List(queryParam);
|
||||
var mes = string.Format("删除成功。删除数量:{0}", data.List.Count);
|
||||
if (data.List.Count == 0)
|
||||
{
|
||||
return AjaxResult.Success(mes);
|
||||
}
|
||||
Delete delete = new Delete()
|
||||
{
|
||||
Ids = string.Join(",", data.List.Select(n => n["FID"].ToString()))
|
||||
};
|
||||
var result = service.Delete(delete);
|
||||
return AjaxResult.Success(mes, result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 打印成果单据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("PrintResultBillNo")]
|
||||
public AjaxResult PrintResultBillNo([FromBody] PrintRecord printRecord)
|
||||
{
|
||||
var loginInfo = User.GetLoginInfoByClaimsPrincipal();
|
||||
_utils.InitCloudApi(loginInfo);
|
||||
IScanRecordsService service = new ScanRecordsService(_utils);
|
||||
var reuslt = service.PrintResultBillNo(printRecord.Ids);
|
||||
return AjaxResult.Success("扫描记录更新成功.");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user