| | |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | [RequestMethod(RequestMethods.POST)] |
| | | /// <summary> |
| | | /// 分页查询缺陷代码列表数据 |
| | | /// </summary> |
| | | /// <param name="query">分页查询参数对象(包含页码、每页条数、排序、查询条件等)</param> |
| | | /// <returns>包含分页数据的返回结果(数据列表、总条数等)</returns> |
| | | public ReturnDto<PageList<MesDefectCode>> GetListPage(PageQuery query) |
| | | { |
| | | // 初始化分页结果对象(默认空列表,后续会填充数据) |
| | | var pageList = new PageList<MesDefectCode>(); |
| | | try |
| | | { |
| | | // 1. 构建查询条件(WHERE子句) |
| | | // "1=1" 是万能条件(避免后续拼接条件时需要判断是否加AND),拼接查询参数中的自定义条件(query.keyWhere) |
| | | var _sbWhere = new StringBuilder(" 1=1" + query.keyWhere); |
| | | |
| | | // 2. 构建排序条件(ORDER BY子句) |
| | | // 拼接排序字段(query.sortName)和排序方向(query.sortOrder,如"ASC"升序、"DESC"降序) |
| | | var _sbBy = new StringBuilder(query.sortName + " " + query.sortOrder); |
| | | |
| | | // 3. 声明总记录数变量(用于接收查询结果的总条数) |
| | | var _sbBy = |
| | | new StringBuilder(query.sortName + " " + query.sortOrder); |
| | | var totalCount = 0; |
| | | |
| | | // 4. 执行分页查询 |
| | | // 使用数据库访问工具(Db.Queryable)查询MesDefectCode表(别名"a") |
| | | var itemsList = Db.Queryable<MesDefectCode>("a") |
| | | .Where(_sbWhere.ToString()) // 应用WHERE条件 |
| | | .OrderBy(_sbBy.ToString()) // 应用排序条件 |
| | | // 分页查询:当前页码(query.currentPage)、每页条数(query.everyPageSize),总条数通过ref参数返回 |
| | | .ToPageList(query.currentPage, query.everyPageSize, ref totalCount); |
| | | .Where(_sbWhere.ToString()) |
| | | .OrderBy(_sbBy.ToString()) |
| | | .ToPageList(query.currentPage, query.everyPageSize, |
| | | ref totalCount); |
| | | |
| | | // 5. 组装分页结果对象 |
| | | // 包含当前页数据(itemsList)、总条数(totalCount)、每页条数(query.everyPageSize) |
| | | pageList = new PageList<MesDefectCode>(itemsList, totalCount, query.everyPageSize); |
| | | |
| | | // 6. 返回成功结果:包含分页数据、成功状态码、提示信息 |
| | | return ReturnDto<PageList<MesDefectCode>>.QuickReturn(pageList, ReturnCode.Success, "读取成功"); |
| | | pageList = new PageList<MesDefectCode>(itemsList, totalCount, |
| | | query.everyPageSize); |
| | | return ReturnDto<PageList<MesDefectCode>>.QuickReturn(pageList, |
| | | ReturnCode.Success, "读取成功"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | // 捕获异常时,返回空分页结果、默认错误码、异常信息 |
| | | return ReturnDto<PageList<MesDefectCode>>.QuickReturn(pageList, ReturnCode.Default, ex.Message); |
| | | return ReturnDto<PageList<MesDefectCode>>.QuickReturn(pageList, |
| | | ReturnCode.Default, ex.Message); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 读取 |
| | | /// </summary> |
| | |
| | | sbSql.Append(" left join [dbo].[SYS_ORGANIZATION] org on org.FID=f.FSubsidiary"); |
| | | sbSql.Append(" where 1=1 and bind.userGuid='" + guid + "' and bind.fType='员工分区'"); |
| | | sbSql.Append(" select bind.guid,bind.fType ,f.item_id,f.item_no,f.item_name,org.NAME as orgName,q.defect_name"); |
| | | sbSql.Append(" from [dbo].[SYS_USER_BIND] bind left join MES_ITEMS f on bind.aboutGuid=f.guid"); |
| | | sbSql.Append(" from [dbo].[SYS_USER_BIND] bind left join MES_ITEMS f on bind.aboutGuid=f.item_id"); |
| | | sbSql.Append(" left join [dbo].[MES_DEFECT_CODE] q on bind.userGuid=q.guid"); |
| | | sbSql.Append(" left join [dbo].[SYS_ORGANIZATION] org on org.FID=f.FSubsidiary"); |
| | | sbSql.Append(" where 1=1 and bind.userGuid='" + guid + "' and bind.fType='物料分区'"); |
| | | sbSql.Append(" select bind.guid,bind.fType ,u.depot_section_code,u.depot_section_name"); |
| | | sbSql.Append(" ,org.NAME as orgName ,q.defect_name from [dbo].[SYS_USER_BIND] bind "); |
| | | sbSql.Append(" left join MES_DEPOT_SECTIONS u on bind.aboutGuid=u.depot_section_code "); |
| | | sbSql.Append(" left join MES_DEPOTS f on u.depot_guid=f.depot_id"); |
| | | sbSql.Append(" left join [dbo].[MES_DEFECT_CODE] q on bind.userGuid=q.guid "); |
| | | sbSql.Append(" left join [dbo].[SYS_ORGANIZATION] org on org.FID=f.FSubsidiary "); |
| | | sbSql.Append(" where 1=1 and bind.userGuid='" + guid + "' and bind.fType='库位'"); |
| | | try |
| | | { |
| | | dset = DbHelperSQL.Query(sbSql.ToString()); |
| | |
| | | m.list = _tb; |
| | | var _tb2 = dset.Tables[2].TableToDynamicList(); |
| | | m.list2 = _tb2; |
| | | var _tb3 = dset.Tables[3].TableToDynamicList(); |
| | | m.list3 = _tb3; |
| | | } |
| | | } |
| | | catch (Exception ex) |