111 lines
3.3 KiB
C#
111 lines
3.3 KiB
C#
using MyCode.Project.Domain.Message;
|
|
using MyCode.Project.Domain.Message.Act.Common;
|
|
using MyCode.Project.Domain.Message.Response.LxmZHMDReport;
|
|
using MyCode.Project.Domain.Model;
|
|
using MyCode.Project.Domain.Repositories;
|
|
using MyCode.Project.Infrastructure.Common;
|
|
using MyCode.Project.Infrastructure.Search;
|
|
using MyCode.Project.Repositories.Common;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace MyCode.Project.Repositories
|
|
{
|
|
public class MOOrdersRepository : Repository<JackOrders>, IMOOrdersRepository
|
|
{
|
|
public MOOrdersRepository(MyCodeSqlSugarClient context) : base(context)
|
|
{ }
|
|
/// <summary>
|
|
/// 查询生产订单表体
|
|
/// </summary>
|
|
/// <param name="search"></param>
|
|
/// <returns></returns>
|
|
public PageResult<PrdMoOrderEntryResp> GetPrdMoEntryPageList(PagedSearch<IdAct> search)
|
|
{
|
|
SearchCondition where = new SearchCondition();
|
|
where.AddSqlCondition($"t1e.FID={search.Condition.Id} ", true);
|
|
string sql = $@"
|
|
SELECT
|
|
t1e.FSEQ Seq,
|
|
tm_l.FNAME MaterialName,
|
|
t2_l.FNAME DeptName,
|
|
t1e.FQTY Qty,
|
|
t1e_a.FSTOCKINFAILAUXQTY + t1e_a.FSTOCKINQUAAUXQTY InStockQty,
|
|
CASE
|
|
WHEN t1e_a.FSTATUS = 1 THEN '计划'
|
|
WHEN t1e_a.FSTATUS = 2 THEN '计划确认'
|
|
WHEN t1e_a.FSTATUS = 3 THEN '下达'
|
|
WHEN t1e_a.FSTATUS = 4 THEN '开工'
|
|
WHEN t1e_a.FSTATUS = 5 THEN '完工'
|
|
WHEN t1e_a.FSTATUS = 6 THEN '结案'
|
|
WHEN t1e_a.FSTATUS = 7 THEN '结算'
|
|
ELSE ''
|
|
END MoStatus
|
|
FROM
|
|
T_PRD_MOENTRY t1e
|
|
LEFT JOIN T_PRD_MOENTRY_A t1e_a ON t1e.FENTRYID = t1e_a.FENTRYID
|
|
LEFT JOIN T_BD_MATERIAL tm ON t1e.FMATERIALID = tm.FMATERIALID
|
|
LEFT JOIN T_BD_MATERIAL_L tm_l ON tm_l.FMATERIALID = tm.FMATERIALID
|
|
AND tm_l.FLOCALEID = 2052
|
|
LEFT JOIN T_BD_DEPARTMENT t2 ON t1e.FWORKSHOPID = t2.FDEPTID
|
|
LEFT JOIN T_BD_DEPARTMENT_L t2_l ON t2.FDEPTID = t2_l.FDEPTID
|
|
AND t2_l.FLOCALEID = 2052
|
|
|
|
";
|
|
|
|
|
|
var list = this.SelectListPage<PrdMoOrderEntryResp>(sql, where, search.Page, search.PageSize, $@"SEQ desc ");
|
|
return list;
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// 查询生产订单表头
|
|
/// </summary>
|
|
/// <param name="search"></param>
|
|
/// <returns></returns>
|
|
public PageResult<PrdMoOrderResp> GetPrdMoPageList(PagedSearch search)
|
|
{
|
|
SearchCondition where = new SearchCondition();
|
|
where.AddSqlCondition("1=1 ", true);
|
|
|
|
string sql = $@"
|
|
SELECT
|
|
*
|
|
FROM
|
|
(
|
|
SELECT
|
|
t1.FID Fid,
|
|
t1.FBILLNO FBillNo,
|
|
t1.FDATE FDate,
|
|
SUM(t1e.FQTY) Qty,
|
|
SUM(
|
|
t1e_a.FSTOCKINFAILAUXQTY + t1e_a.FSTOCKINQUAAUXQTY
|
|
) InStockQty
|
|
FROM
|
|
T_PRD_MO t1
|
|
LEFT JOIN T_PRD_MOENTRY t1e ON t1.FID = t1e.FID
|
|
LEFT JOIN T_PRD_MOENTRY_A t1e_a ON t1e.FENTRYID = t1e_a.FENTRYID
|
|
WHERE
|
|
1 = 1
|
|
AND t1.FDOCUMENTSTATUS = 'C'
|
|
GROUP BY
|
|
t1.FID,
|
|
t1.FBILLNO,
|
|
t1.FDATE
|
|
) t1Temp
|
|
|
|
";
|
|
|
|
|
|
var list = this.SelectListPage<PrdMoOrderResp>(sql, where, search.Page, search.PageSize, $@"FDATE desc ");
|
|
return list;
|
|
}
|
|
|
|
|
|
}
|
|
} |