包装管理修改

This commit is contained in:
2025-05-12 19:05:13 +08:00
parent 96139ddfb8
commit b1d732d1a9
21 changed files with 790 additions and 325 deletions
@@ -8,11 +8,11 @@ using System.Data.SqlClient;
using System.Linq;
using System.Text;
namespace BLL
{
/// <summary>
/// 包装管理服务类
/// </summary>
public static class HJGL_PackagingmanageService
{
public class PackagingManageItem
@@ -28,6 +28,8 @@ namespace BLL
public string ContactPhone { get; set; }
public string StackingPosition { get; set; }
public int? State { get; set; }
public int? TypeInt { get; set; }
public string TypeString { get; set; }
public string ReceiveMan { get; set; }
public string ReceiveDate { get; set; }
@@ -36,22 +38,23 @@ namespace BLL
public string Code { get; set; }
public string TrainNumber { get; set; }
public string TrainNumberOld { get; set; }
}
/// <summary>
/// 未到场
/// </summary>
public static int state_0 = 0;
/// <summary>
/// 已发货
/// </summary>
public static int state_1 = 1;
/// <summary>
/// 已到场
/// </summary>
public static int state_2 = 2;
public static ListItem[] GetState()
{
ListItem[] list = new ListItem[3];
@@ -67,12 +70,19 @@ namespace BLL
= 20,
= 30,
}
public static Dictionary<string, int> TypeIntMap = new Dictionary<string, int>
{
{ "预制组件" ,(int)TypeInt.},
{ "预制散件" ,(int)TypeInt.},
{ "其他材料" ,(int)TypeInt.},
};
public static string GetTypeString(int? TypeInt)
{
return TypeIntMap.FirstOrDefault(c => c.Value == TypeInt).Key;
}
public static Model.HJGL_PackagingManage GetHJGL_PackagingManageById(string PackagingManageId)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
@@ -80,6 +90,7 @@ namespace BLL
return db.HJGL_PackagingManage.FirstOrDefault(x => x.PackagingManageId == PackagingManageId);
}
}
public static string GetMinPlanStartDate(string PackagingManageId)
{
string PlanStartDate = "";
@@ -95,39 +106,40 @@ namespace BLL
}
return PlanStartDate;
}
public static (List<PackagingManageItem> Data, int Total) GetPackagingManageList(string projectId, string PackagingCode, int pageIndex = 0, int pageSize = 20)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var baseQuery = (from x in db.HJGL_PackagingManage
join n in db.Base_Project on x.ProjectId equals n.ProjectId
join m in db.Person_Persons on x.ReceiveMan equals m.PersonId into tt
from t in tt.DefaultIfEmpty()
join n in db.Base_Project on x.ProjectId equals n.ProjectId
join m in db.Person_Persons on x.ReceiveMan equals m.PersonId into tt
from t in tt.DefaultIfEmpty()
join train in db.HJGL_TrainNumberManage on x.TrainNumberId equals train.Id into trains
from train in trains.DefaultIfEmpty()
where x.ProjectId == projectId
&& (string.IsNullOrEmpty(PackagingCode) || x.PackagingCode.Contains(PackagingCode))
select new PackagingManageItem
{
PackagingManageId = x.PackagingManageId,
PackagingCode = x.PackagingCode,
ProjectName = n.ProjectName,
ContactName = train.ContactName,
ContactPhone = train.ContactPhone,
DriverName = train.DriverName,
DriverPhone = train.DriverPhone,
LicensePlateNumber = train.LicensePlateNumber,
StackingPosition = x.StackingPosition,
State = x.State,
ReceiveMan = t.PersonName,
ReceiveDate = x.ReceiveDate.HasValue ? string.Format("{0:g}", x.ReceiveDate) : "",
PlanStartDate = GetMinPlanStartDate(x.PackagingManageId),
TrainNumberOld = x.TrainNumber,
TrainNumber = train.TrainNumber,
Code = x.PackagingCode.Substring(0, x.PackagingCode.LastIndexOf("-")).Substring(x.PackagingCode.Substring(0, x.PackagingCode.LastIndexOf("-")).LastIndexOf("-") + 1),
}).Distinct();
select new PackagingManageItem
{
PackagingManageId = x.PackagingManageId,
PackagingCode = x.PackagingCode,
ProjectName = n.ProjectName,
ContactName = train.ContactName,
ContactPhone = train.ContactPhone,
DriverName = train.DriverName,
DriverPhone = train.DriverPhone,
LicensePlateNumber = train.LicensePlateNumber,
StackingPosition = x.StackingPosition,
State = x.State,
TypeInt = x.TypeInt,
TypeString = GetTypeString(x.TypeInt),
ReceiveMan = t.PersonName,
ReceiveDate = x.ReceiveDate.HasValue ? string.Format("{0:g}", x.ReceiveDate) : "",
PlanStartDate = GetMinPlanStartDate(x.PackagingManageId),
TrainNumberOld = x.TrainNumber,
TrainNumber = train.TrainNumber,
Code = x.PackagingCode.Substring(0, x.PackagingCode.LastIndexOf("-")).Substring(x.PackagingCode.Substring(0, x.PackagingCode.LastIndexOf("-")).LastIndexOf("-") + 1),
}).Distinct();
var pagedData = baseQuery
.OrderByDescending(x => x.Code)
@@ -136,11 +148,11 @@ namespace BLL
.ToList();
// 获取总记录数(延迟计数优化)
var totalCount = baseQuery.Count();
return (pagedData, totalCount);
var totalCount = baseQuery.Count();
return (pagedData, totalCount);
}
}
}
/// <summary>
/// 形成出库单
/// </summary>
@@ -153,8 +165,8 @@ namespace BLL
model.State = state_1;
UpdateHJGL_PackagingManage(model);
}
}
/// <summary>
/// 根据主键获取装箱明细
/// </summary>
@@ -168,7 +180,7 @@ namespace BLL
{
var PipelineComponentIds = model.PipelineComponentId.Split(',');
string strSql = @"select com.PipelineComponentId, com.PipelineComponentCode,isnull(pipe.PlanStartDate,getdate()) as PlanStartDate,unitwork.UnitWorkName,'1' as num ,'个' as CU
from HJGL_Pipeline_Component com
from HJGL_Pipeline_Component com
left join HJGL_Pipeline pipe on com.PipelineId=pipe.PipelineId
left join WBS_UnitWork unitwork on pipe.UnitWorkId=unitwork.UnitWorkId
";
@@ -179,7 +191,6 @@ namespace BLL
tb = SQLHelper.GetDataTableRunText(strSql, parameter);
}
return tb;
}
/// <summary>
@@ -195,13 +206,36 @@ namespace BLL
select x.PackagingCode).Distinct().ToList();
return q;
}
public static List<Model.HJGL_PackagingManage> GetPackagingManage(string trainNumberId)
{
Model.SGGLDB db = Funs.DB;
var q = (from x in db.HJGL_PackagingManage
where x.TrainNumberId==trainNumberId
select x).Distinct().ToList();
return q;
}
public static string GetNewPackagingCode(string projectid)
{
string code = ProjectService.GetProjectCodeByProjectId(projectid) + "-" + string.Format("{0:yyyyMMdd}", DateTime.Now) + "-";
var q = GetPackagingManageList(projectid, code);
if (q.Total > 0)
{
code = code + (q.Total + 1).ToString().PadLeft(3, '0');
}
else
{
code = code + "001";
}
return code;
}
/// <summary>
/// 新增实体
/// </summary>
/// <param name="newtable"></param>
public static void AddHJGL_PackagingManage(Model.HJGL_PackagingManage newtable)
{
Model.HJGL_PackagingManage table = new Model.HJGL_PackagingManage
{
PackagingManageId = newtable.PackagingManageId,
@@ -224,7 +258,6 @@ namespace BLL
db1.SubmitChanges();
}
public static void UpdateHJGL_PackagingManage(Model.HJGL_PackagingManage newtable)
{
var db1 = Funs.DB;
@@ -247,8 +280,8 @@ namespace BLL
table.TypeInt = newtable.TypeInt;
db1.SubmitChanges();
}
}
public static void DeleteHJGL_PackagingManageById(string PackagingManageId)
{
var db1 = Funs.DB;
@@ -258,10 +291,8 @@ namespace BLL
db1.HJGL_PackagingManage.DeleteOnSubmit(table);
db1.SubmitChanges();
}
}
/// <summary>
/// 管线下拉框
/// </summary>
@@ -278,6 +309,5 @@ namespace BLL
Funs.FineUIPleaseSelect(dropName);
}
}
}
}