| | |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.Dynamic; |
| | | using System.Text; |
| | | using Gs.BaseInfo.Models; |
| | | using Gs.Entity.BaseInfo; |
| | | using Gs.Entity.Sys; |
| | | using Gs.Toolbox; |
| | |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using SqlSugar; |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.Dynamic; |
| | | using System.Text; |
| | | using SqlDataAdapter = System.Data.SqlClient.SqlDataAdapter; |
| | | |
| | | namespace Gs.BaseInfo.Services; |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 读取列表,支持分页 |
| | | /// 查询列表,支持分页 |
| | | /// </summary> |
| | | /// <param name="model"></param> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | [RequestMethod(RequestMethods.POST)] |
| | | public ReturnDto<PageList<dynamic>> GetListPage([FromBody] dynamic model) |
| | | public ReturnDto<PageList<MesItems>> GetListPage(PageQuery query) |
| | | { |
| | | int currentPage = model.currentPage; |
| | | int everyPageSize = model.everyPageSize; |
| | | string sortName = model.sortName; |
| | | string keyWhere = model.keyWhere; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@inCurrentPage", currentPage), |
| | | new("@inEveryPageSize", everyPageSize), |
| | | new("@inSortName", sortName), |
| | | new("@inSortOrder", ""), |
| | | new("@inQueryWhere", keyWhere), |
| | | new("@inFid", ""), |
| | | new("@inP1", ""), |
| | | new("@inP2", ""), |
| | | new("@inP3", ""), |
| | | new("@inP4", "") |
| | | }; |
| | | var dset = new DataSet(); |
| | | var _pglist = new PageList<dynamic> |
| | | { |
| | | total = 0, |
| | | everyPageSize = 0, |
| | | pages = 0, |
| | | list = new List<dynamic>() |
| | | }; |
| | | var pageList = new PageList<MesItems>(); |
| | | try |
| | | { |
| | | dset = DbHelperSQL.RunProcedure("prc_item_lst", parameters, "0"); |
| | | if (dset != null && dset.Tables.Count > 0 && |
| | | dset.Tables[0].Rows.Count > 0) //有数据 |
| | | var _sbWhere = new StringBuilder(" 1=1" + query.keyWhere); |
| | | var _sbBy = new StringBuilder(query.sortName + " " + query.sortOrder); |
| | | var totalCount = 0; |
| | | var itemsList = Db |
| | | .Queryable<MesItems, SysOrganization, MesUnit, MesUnit, MesUnit, |
| | | MesUnit, MesUnit, MesUnit, MesDepots, MesItemType>( |
| | | (a, org, c, d, e, f, g, h, m,n) => new object[] |
| | | { |
| | | 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; |
| | | } |
| | | } |
| | | JoinType.Left, a.FSubsidiary == org.Fid, |
| | | JoinType.Left, a.ItemUnit == c.Id.ToString(), |
| | | JoinType.Left, a.Fpurchaseunitid == d.Id.ToString(), |
| | | JoinType.Left, a.Saleunit == e.Id.ToString(), |
| | | JoinType.Left, a.Storeunit == f.Id.ToString(), |
| | | JoinType.Left, a.SubconUnit == g.Id.ToString(), |
| | | JoinType.Left, a.ProduceUnit == h.Id.ToString(), |
| | | JoinType.Left, a.DepotCode == m.DepotId.ToString(), |
| | | JoinType.Left, a.Fmaterialgroup == n.Id.ToString() |
| | | }) |
| | | .Select((a, org, c, d, e, f, g, h, m,n) => new MesItems |
| | | { |
| | | chkInt = false, |
| | | FSubsidiary = "(" + org.FNumber + ")" + org.Name, |
| | | ItemUnit = c.Fname, |
| | | Fpurchaseunitid = d.Fname, |
| | | Saleunit = e.Fname, |
| | | Storeunit = f.Fname, |
| | | SubconUnit = g.Fname, |
| | | ProduceUnit = h.Fname, |
| | | DepotCode = m.DepotName, |
| | | Fmaterialgroup=n.Tname, |
| | | Fforbidstatus = a.Fforbidstatus + ":" + (a.Fforbidstatus == "A" ? "正常" : "禁用"), |
| | | DataType = a.DataType + ":" |
| | | + SqlFunc.IF(a.DataType == "Z").Return("暂存") |
| | | .ElseIF(a.DataType == "A").Return("创建") |
| | | .ElseIF(a.DataType == "B").Return("审核中") |
| | | .ElseIF(a.DataType == "C").Return("已审核") |
| | | .ElseIF(a.DataType == "D").Return("重新审核") |
| | | .End(a.DataType) |
| | | }, true) |
| | | .Where(_sbWhere.ToString()) |
| | | .OrderBy(_sbBy.ToString()) |
| | | .ToPageList(query.currentPage, query.everyPageSize, |
| | | ref totalCount); |
| | | |
| | | pageList = new PageList<MesItems>(itemsList, totalCount, |
| | | query.everyPageSize); |
| | | return ReturnDto<PageList<MesItems>>.QuickReturn(pageList, |
| | | ReturnCode.Success, "读取成功"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Debug(ToString(), ex.Message); |
| | | return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist, |
| | | ReturnCode.Exception, ex.Message); |
| | | return ReturnDto<PageList<MesItems>>.QuickReturn(pageList, |
| | | ReturnCode.Default, ex.Message); |
| | | } |
| | | |
| | | return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist, |
| | | ReturnCode.Success, "读取成功"); |
| | | } |
| | | |
| | | |
| | |
| | | return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "读取失败!"); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="model"></param> |
| | | /// <returns></returns> |
| | | [RequestMethod(RequestMethods.POST)] |
| | | public ReturnDto<ExpandoObject> GetModelByOrg([FromBody] dynamic model) |
| | | { |
| | | string itemNo = model.itemNo; |
| | | string orgId = model.orgId; |
| | | dynamic m = new ExpandoObject(); |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@inItemNo", itemNo), |
| | | new("@inOrgId", orgId), |
| | | }; |
| | | var dset = new DataSet(); |
| | | try |
| | | { |
| | | dset = DbHelperSQL.RunProcedure("[prc_item_detailByOrg]", 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(); |
| | | return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "读取成功!"); |
| | | } |
| | | return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "读取失败,找不到该物料!"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Debug(ToString(), ex.Message); |
| | | return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "读取失败," + ex.Message.ToString()); |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 读取列表,支持分页 |
| | |
| | | string sortName = model.sortName; |
| | | string keyWhere = model.keyWhere; |
| | | string keyType = model.keyType; |
| | | string keyWord = model.keyWord; //这个pguid,作为方案的主键 |
| | | var dset = new DataSet(); |
| | | try |
| | | { |
| | |
| | | new("@inSortOrder", ""), |
| | | new("@inQueryWhere", keyWhere), |
| | | new("@inP1",keyType),//当为:检验项目,iqc,ipqc,fqc时,免检时 特别加上过滤条件 |
| | | new("@inP2", "") |
| | | new("@inP2", keyWord) //这个pguid,作为方案的主键 |
| | | }; |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | |
| | | System.Text.StringBuilder sbJoin = new StringBuilder(); |
| | | sbJoin.Append(" FROM MES_ITEMS [a]"); |
| | | sbJoin.Append(" Left JOIN [SYS_ORGANIZATION] [Org] ON ( [a].[FSubsidiary] = [Org].[FID] )"); |
| | | sbJoin.Append(" left join SYS_USER_BIND b on (b.userGuid='"+ keyType + "' and b.aboutGuid=a.guid)"); |
| | | sbJoin.Append(" left join SYS_USER_BIND b on (b.userGuid='" + keyType + "' and b.aboutGuid=a.item_id and b.fType='物料分区')"); |
| | | sbJoin.Append(" where 1=1 "); |
| | | sbJoin.Append(keyWhere); |
| | | var sbSql = new StringBuilder(); |
| | |
| | | ReturnCode.Success, "读取成功"); |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 批量设置提前到货日期 |
| | | /// </summary> |
| | | /// <param name="model"></param> |
| | | /// <returns></returns> |
| | | [RequestMethod(RequestMethods.POST)] |
| | | public ReturnDto<int?> SetDays([FromBody] dynamic model) |
| | | { |
| | | string guidList = model.guidList; |
| | | string bz10 = model.bz10; |
| | | string percent = model.percent; |
| | | int rtnInt = (int)ReturnCode.Default; |
| | | try |
| | | { |
| | | StringBuilder strSql = new StringBuilder(); |
| | | strSql.Append(" update MES_ITEMS set bz10=" + bz10.Trim() + " ," + "loss_percent = " + percent.Trim() + " "); |
| | | strSql.Append(" where guid in (select line from dbo.fn_split('" + guidList + "',','))"); |
| | | int rows = DbHelperSQL.ExecuteSql(strSql.ToString()); |
| | | rtnInt = rows; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Debug(this.ToString(), "SetDays error:" + ex.Message); |
| | | rtnInt = (int)ReturnCode.Exception; |
| | | return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "操作失败," + ex.Message); |
| | | } |
| | | if (rtnInt > 0) |
| | | return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Success, "操作成功!"); |
| | | else |
| | | return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "操作失败,请重试!"); |
| | | } |
| | | |
| | | } |