123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- using System;
- using SqlSugar;
- using Infrastructure.Attribute;
- using ZR.Model;
- using ZR.Model.Dto;
- using ZR.Model.Models;
- using ZR.Repository;
- using ZR.Service.Business.IBusinessService;
- using System.Linq;
- using Infrastructure;
- using System.Collections.Generic;
- namespace ZR.Service.Business
- {
- /// <summary>
- /// 接口管理/SAP交验单记录表Service业务层处理
- ///
- /// @author admin
- /// @date 2023-05-05
- /// </summary>
- [AppService(ServiceType = typeof(ISapDeliverRecordService), ServiceLifetime = LifeTime.Transient)]
- public class SapDeliverRecordService : BaseService<SapDeliverRecord>, ISapDeliverRecordService
- {
- #region 业务逻辑代码
- /// <summary>
- /// 查询接口管理/SAP交验单记录表列表
- /// </summary>
- /// <param name="parm"></param>
- /// <returns></returns>
- public PagedInfo<SapDeliverRecordDto> GetList(SapDeliverRecordQueryDto parm)
- {
- //开始拼装查询条件
- var predicate = Expressionable.Create<SapDeliverRecord>();
- if (parm.BeginTime != null && parm.EndTime != null)
- {
- parm.BeginTime = DateTimeHelper.GetBeginTime(parm.BeginTime, -1);
- parm.EndTime = DateTimeHelper.GetBeginTime(parm.EndTime, 1);
- predicate.And(d => d.CreateTime >= parm.BeginTime && d.CreateTime <= parm.EndTime);
- }
- predicate.AndIF(!string.IsNullOrEmpty(parm.DeliverNo), d => d.DeliverNo.Contains(parm.DeliverNo));
- predicate.AndIF(!string.IsNullOrEmpty(parm.BomNo), d => d.BomNo.Contains(parm.BomNo));
- predicate.AndIF(!string.IsNullOrEmpty(parm.MaterialCode), d => d.MaterialCode.Contains(parm.MaterialCode));
- predicate.AndIF(!string.IsNullOrEmpty(parm.MaterialName), d => d.MaterialName.Contains(parm.MaterialName));
- predicate.AndIF(!string.IsNullOrEmpty(parm.MaterialSpec), d => d.MaterialSpec.Contains(parm.MaterialSpec));
- predicate.AndIF(!string.IsNullOrEmpty(parm.Category), d => d.Category == parm.Category);
- predicate.AndIF(parm.KeyFlag != null, d => d.KeyFlag == parm.KeyFlag);
- //搜索条件查询语法参考Sqlsugar
- var response = Queryable()
- .Where(predicate.ToExpression())
- .ToPage<SapDeliverRecord, SapDeliverRecordDto>(parm);
- return response;
- }
- /// <summary>
- /// 添加接口管理/SAP交验单记录表
- /// </summary>
- /// <param name="model"></param>
- /// <returns></returns>
- public int AddSapDeliverRecord(SapDeliverRecord model)
- {
- return Add(model, true);
- }
- /// <summary>
- /// 修改接口管理/SAP交验单记录表
- /// </summary>
- /// <param name="model"></param>
- /// <returns></returns>
- public int UpdateSapDeliverRecord(SapDeliverRecord model)
- {
- //var response = Update(w => w.Id == model.Id, it => new SapDeliverRecord()
- //{
- // DeliverNo = model.DeliverNo,
- // CheckName = model.CheckName,
- // BomNo = model.BomNo,
- // RowNo = model.RowNo,
- // Category = model.Category,
- // MaterialCode = model.MaterialCode,
- // MaterialName = model.MaterialName,
- // MaterialSpec = model.MaterialSpec,
- // KeyFlag = model.KeyFlag,
- // Qty = model.Qty,
- // SpotCheckQty = model.SpotCheckQty,
- // CheckQty = model.CheckQty,
- // CheckResult = model.CheckResult,
- // InstoreQty = model.InstoreQty,
- // InstoreResult = model.InstoreResult,
- // UpdateBy = model.UpdateBy,
- // UpdateTime = model.UpdateTime,
- // Remark = model.Remark,
- //});
- //return response;
- return Update(model, true);
- }
- /// <summary>
- /// 清空接口管理/SAP交验单记录表
- /// </summary>
- /// <returns></returns>
- public void TruncateSapDeliverRecord()
- {
- Truncate();
- }
- /// <summary>
- /// 导入数据
- /// </summary>
- /// <param name="list"></param>
- /// <returns></returns>
- public string ImportDatas(List<SapDeliverRecord> list)
- {
- var x = Context.Storageable(list)
- .SplitInsert(it => !it.Any())
- .ToStorage();
- var result = x.AsInsertable.ExecuteCommand();//插入可插入部分;
- string msg = string.Format(" 插入{0} 更新{1} 错误数据{2} 不计算数据{3} 删除数据{4},总共{5}",
- x.InsertList.Count,
- x.UpdateList.Count,
- x.ErrorList.Count,
- x.IgnoreList.Count,
- x.DeleteList.Count,
- x.TotalList.Count);
- //输出统计
- Console.WriteLine(msg);
- //输出错误信息
- foreach (var item in x.ErrorList)
- {
- Console.WriteLine("交验单号为:" + item.Item.DeliverNo + " : " + item.StorageMessage);
- }
- return msg;
- }
- #endregion
- }
- }
|