12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- using Ropin.Inspection.Model;
- using Ropin.Inspection.Model.Entities;
- using Ropin.Inspection.Model.ViewModel.DEV;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Ropin.Inspection.Repository
- {
- public class TdevDevStoreDocRepository : RepositoryBase<TDEV_DevStoreDoc, string>, ITdevDevStoreDocRepository
- {
- public TdevDevStoreDocRepository(InspectionDbContext DbContext) : base(DbContext)
- {
- }
- /// <summary>
- /// 获取设备文档(包括关联的模板文档)
- /// </summary>
- /// <param name="searchModel"></param>
- /// <returns></returns>
- public Task<IEnumerable<TdevDevStoreDocViewModel>> GetDevFile(TdevDevStoreDocSearchModel searchModel)
- {
- MySqlConnector.MySqlParameter[] parameters = new[] {
- new MySqlConnector.MySqlParameter("Status", searchModel.C_Status),
- new MySqlConnector.MySqlParameter("name", "%"+searchModel.C_Name+"%"),
- new MySqlConnector.MySqlParameter("devStoreCode", searchModel.C_DevStoreCode),
- new MySqlConnector.MySqlParameter("Id ", searchModel.C_ID)
- };
- StringBuilder sql = new StringBuilder();
- sql.Append(@"select * from (
- select C_ID,C_Name,C_DevStoreCode,C_Type,C_Url,C_Remark,C_CreateBy,D_CreateOn,C_Status from TDEV_DevStoreDoc
- union
- select * from (
- select C_ID,C_Name,@devStoreCode as C_DevStoreCode,C_Type,C_Url,C_Remark,C_CreateBy,D_CreateOn,C_Status from TDEV_DeviceTempArchives
- where C_DevTempCode in (
- select C_DevTempCode as id from TDEV_DevStore where C_ID =@devStoreCode
- union
- select C_OpsTempCode as id from TDEV_DevStore where C_ID =@devStoreCode
- union
- select C_RepairTempCode as id from TDEV_DevStore where C_ID =@devStoreCode
- union
- select C_RunTempCode as id from TDEV_DevStore where C_ID =@devStoreCode
- )) tab)tabs
- where C_DevStoreCode=@devStoreCode");
- if (!string.IsNullOrEmpty(searchModel.C_Status))
- {
- sql.Append(" and C_Status=@Status ");
- }
- else
- {
- sql.Append(" and C_Status!='0' ");
- }
- if (!string.IsNullOrEmpty(searchModel.C_Name))
- {
- sql.Append(" and C_Name like @name");
- }
- if (searchModel.IdList!=null&& searchModel.IdList.Count>0)
- {
- string idJoin=string.Join("','", searchModel.IdList);
- sql.Append($" and C_ID in ('{idJoin}') ");
- }
- if (!string.IsNullOrEmpty(searchModel.C_ID))
- {
- sql.Append(" and C_ID=@Id ");
- }
- sql.Append(" order by C_Name asc,D_CreateOn desc ");
- IEnumerable<TdevDevStoreDocViewModel> recordItemlist = EntityFrameworkCoreExtensions.GetList<TdevDevStoreDocViewModel>(DbContext.Database, sql.ToString(), parameters);
- searchModel.TotalCount = recordItemlist.First() != null ? recordItemlist.ToList().Count : 0;
- return Task.FromResult(searchModel.IsPagination ? recordItemlist.Skip((searchModel.PageIndex - 1) * searchModel.PageSize).Take(searchModel.PageSize) : recordItemlist);
- }
- }
- }
|