| | |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using SqlSugar; |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.Dynamic; |
| | | using System.Text; |
| | | using static Microsoft.EntityFrameworkCore.DbLoggerCategory; |
| | | |
| | | namespace Gs.Warehouse.Services; |
| | | |
| | |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | [RequestMethod(RequestMethods.POST)] |
| | | public ReturnDto<PageList<MesItems>> GetListPage(PageQuery query) |
| | | public ReturnDto<PageList<dynamic>> GetListPage(PageQuery query) |
| | | { |
| | | var _sbWhere = new StringBuilder(" 1=1" + query.keyWhere); |
| | | var _sbBy =new StringBuilder(query.sortName + " " + query.sortOrder); |
| | | var pageList = new PageList<MesItems>(); |
| | | |
| | | int currentPage = query.currentPage; |
| | | int everyPageSize = query.everyPageSize; |
| | | string sortName = query.sortName; |
| | | string keyWhere = query.keyWhere; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@inCurrentPage", currentPage), |
| | | new("@inEveryPageSize", everyPageSize), |
| | | new("@inSortName", sortName), |
| | | new("@inSortOrder", query.sortOrder), |
| | | new("@inQueryWhere", keyWhere), |
| | | new("@inFid", ""), |
| | | new("@inP1", ""), |
| | | new("@inP2", ""), |
| | | new("@inP3", ""), |
| | | new("@inP4", _userGuid)//当前登录用户guid,将根据他读取仓管员 |
| | | }; |
| | | var dset = new DataSet(); |
| | | var _pglist = new PageList<dynamic> |
| | | { |
| | | total = 0, |
| | | everyPageSize = 0, |
| | | pages = 0, |
| | | list = new List<dynamic>() |
| | | }; |
| | | try |
| | | { |
| | | var totalCount = GetPageTotalCount(null, query, out var itemsList, _sbWhere, _sbBy); |
| | | pageList = new PageList<MesItems>(itemsList, totalCount, |
| | | query.everyPageSize); |
| | | return ReturnDto<PageList<MesItems>>.QuickReturn(pageList, |
| | | ReturnCode.Success, "读取成功"); |
| | | dset = DbHelperSQL.RunProcedure("prc_qcdy_lst", parameters, "0"); |
| | | if (dset != null && dset.Tables.Count > 0 && |
| | | dset.Tables[0].Rows.Count > 0) //有数据 |
| | | { |
| | | var intTotal = int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString()); |
| | | var pages = intTotal % everyPageSize != 0 |
| | | ? intTotal / everyPageSize + 1 |
| | | : intTotal / everyPageSize; |
| | | _pglist.total = intTotal; |
| | | _pglist.everyPageSize = everyPageSize; |
| | | _pglist.pages = pages; |
| | | var _dy = dset.Tables[0].TableToDynamicList(); |
| | | _pglist.list = _dy; |
| | | //currentId = dset.Tables[1].Rows[0]["mrCgy"].ToString(); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ReturnDto<PageList<MesItems>>.QuickReturn(pageList, |
| | | ReturnCode.Default, ex.Message); |
| | | LogHelper.Debug(ToString(), ex.Message); |
| | | return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist, |
| | | ReturnCode.Exception, "读取失败!"); |
| | | } |
| | | |
| | | return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist, |
| | | ReturnCode.Success, "读取成功"); |
| | | |
| | | //var pageList = new PageList<MesItems>(); |
| | | //try |
| | | //{ |
| | | // var totalCount = GetPageTotalCount(null, query, out var itemsList, _sbWhere, _sbBy); |
| | | // pageList = new PageList<MesItems>(itemsList, totalCount, |
| | | // query.everyPageSize); |
| | | // return ReturnDto<PageList<MesItems>>.QuickReturn(pageList, |
| | | // ReturnCode.Success, "读取成功"); |
| | | //} |
| | | //catch (Exception ex) |
| | | //{ |
| | | // return ReturnDto<PageList<MesItems>>.QuickReturn(pageList, |
| | | // ReturnCode.Default, ex.Message); |
| | | //} |
| | | } |
| | | |
| | | private int GetPageTotalCount(Guid? guid, PageQuery query, |
| | |
| | | /// <param name="model"></param> |
| | | /// <returns></returns> |
| | | [RequestMethod(RequestMethods.POST)] |
| | | public ReturnDto<InitialBarcode> GetModel( |
| | | [FromBody] MesItems model) |
| | | public ReturnDto<ExpandoObject> GetModel( |
| | | [FromBody] dynamic model) |
| | | { |
| | | // var m = base.GetById(model.Guid); |
| | | var query = new PageQuery |
| | | |
| | | string guid = model.guid.ToString(); |
| | | dynamic m = new ExpandoObject(); |
| | | m.list = new List<dynamic>(); |
| | | m.list2 = new List<dynamic>(); |
| | | SqlParameter[] parameters = |
| | | { |
| | | currentPage = 1, |
| | | everyPageSize = 1 |
| | | new("@inMainGuid", guid), |
| | | new("@inP1", ""), |
| | | new("@inP2", ""), |
| | | new("@inP3", ""), |
| | | new("@inP4", ""), |
| | | new("@userGuid", _userGuid) |
| | | }; |
| | | System.Text.StringBuilder sb = new StringBuilder(); |
| | | System.Text.StringBuilder order = new StringBuilder(); |
| | | order.Append(" org.FNumber asc ,a.item_no asc"); |
| | | var pageTotalCount = GetPageTotalCount(model.Guid, query, out var itemsList, sb, order); |
| | | var dset = new DataSet(); |
| | | try |
| | | { |
| | | dset = DbHelperSQL.RunProcedure("[prc_qcdy_mx]", parameters, |
| | | "0"); |
| | | if (dset != null && dset.Tables.Count > 0 && |
| | | dset.Tables[0].Rows.Count > 0) |
| | | { |
| | | var dr = dset.Tables[0].Rows[0]; |
| | | m = dr.RowToDynamic(); |
| | | var _tb = dset.Tables[1].TableToDynamicList(); |
| | | m.list = _tb; |
| | | //var _tb2 = dset.Tables[2].TableToDynamicList(); |
| | | //m.list2 = _tb2; |
| | | |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Debug(ToString(), ex.Message); |
| | | } |
| | | |
| | | var barcode = new InitialBarcode(); |
| | | if (m != null) |
| | | return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, |
| | | "读取成功!"); |
| | | return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "读取失败!"); |
| | | |
| | | if (pageTotalCount == 0) |
| | | return ReturnDto<InitialBarcode>.QuickReturn(barcode, |
| | | ReturnCode.Default, |
| | | "读取失败!"); |
| | | //// var m = base.GetById(model.Guid); |
| | | //var query = new PageQuery |
| | | //{ |
| | | // currentPage = 1, |
| | | // everyPageSize = 1 |
| | | //}; |
| | | //System.Text.StringBuilder sb = new StringBuilder(); |
| | | //System.Text.StringBuilder order = new StringBuilder(); |
| | | //order.Append(" org.FNumber asc ,a.item_no asc"); |
| | | //var pageTotalCount = GetPageTotalCount(model.Guid, query, out var itemsList, sb, order); |
| | | |
| | | var mesItems = itemsList.FirstOrDefault(); |
| | | //var barcode = new InitialBarcode(); |
| | | |
| | | //if (pageTotalCount == 0) |
| | | // return ReturnDto<InitialBarcode>.QuickReturn(barcode, |
| | | // ReturnCode.Default, |
| | | // "读取失败!"); |
| | | |
| | | //var mesItems = itemsList.FirstOrDefault(); |
| | | |
| | | |
| | | if (mesItems == null) |
| | | return ReturnDto<InitialBarcode>.QuickReturn(barcode, |
| | | ReturnCode.Default, |
| | | "读取失败!"); |
| | | //if (mesItems == null) |
| | | // return ReturnDto<InitialBarcode>.QuickReturn(barcode, |
| | | // ReturnCode.Default, |
| | | // "读取失败!"); |
| | | |
| | | barcode.from = mesItems; |
| | | //barcode.from = mesItems; |
| | | |
| | | barcode.barcodes = GetMesInvItemBarcodes(mesItems.Id); |
| | | //barcode.barcodes = GetMesInvItemBarcodes(mesItems.Id); |
| | | |
| | | return ReturnDto<InitialBarcode>.QuickReturn(barcode, |
| | | ReturnCode.Success, "读取成功!"); |
| | | //return ReturnDto<InitialBarcode>.QuickReturn(barcode, |
| | | // ReturnCode.Success, "读取成功!"); |
| | | } |
| | | |
| | | private List<MesInvItemBarcodes> GetMesInvItemBarcodes(long? ItemId) |