包装管理修改
This commit is contained in:
+64
-29
@@ -1,4 +1,5 @@
|
||||
using FineUIPro;
|
||||
using Model;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
@@ -9,11 +10,8 @@ using System.Text;
|
||||
namespace BLL
|
||||
{
|
||||
|
||||
public static class PackagingmanagedetailService
|
||||
{
|
||||
|
||||
|
||||
|
||||
public static class HJGLPackagingmanagedetailService
|
||||
{
|
||||
#region 获取列表
|
||||
/// <summary>
|
||||
/// 记录数
|
||||
@@ -122,32 +120,71 @@ namespace BLL
|
||||
{
|
||||
return Funs.DB.HJGL_PackagingManageDetail.FirstOrDefault(x => x.Id == Id);
|
||||
}
|
||||
public static IEnumerable GetPackagingData(string PackagingManageId)
|
||||
public static IEnumerable<Model.PipelinePrefabricatedComponentsItem> GetPackagingData(string PackagingManageId)
|
||||
{
|
||||
var q = from detail in Funs.DB.HJGL_PackagingManageDetail
|
||||
join lib in Funs.DB.HJGL_MaterialCodeLib on detail.MaterialCode equals lib.MaterialCode into libJoin
|
||||
from libItem in libJoin.DefaultIfEmpty()
|
||||
join line in Funs.DB.HJGL_Pipeline on detail.PipelineId equals line.PipelineId into lineJoin
|
||||
from lineItem in lineJoin.DefaultIfEmpty()
|
||||
where detail.PackagingManageId == PackagingManageId
|
||||
select new
|
||||
{
|
||||
detail.Id,
|
||||
libItem.MaterialCode,
|
||||
libItem.MaterialName,
|
||||
libItem.MaterialUnit,
|
||||
libItem.MaterialSpec,
|
||||
libItem.MaterialMade,
|
||||
libItem.MaterialDef,
|
||||
detail.Number,
|
||||
lineItem.PipelineId,
|
||||
lineItem.PipelineCode,
|
||||
if (string.IsNullOrEmpty(PackagingManageId))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
var pack = HJGL_PackagingmanageService.GetHJGL_PackagingManageById(PackagingManageId);
|
||||
if (pack == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
var result = new List<Model.PipelinePrefabricatedComponentsItem>();
|
||||
if (pack.TypeInt == (int)HJGL_PackagingmanageService.TypeInt.预制散件)
|
||||
{
|
||||
var q = from detail in Funs.DB.HJGL_PackagingManageDetail
|
||||
join lib in Funs.DB.HJGL_MaterialCodeLib on detail.MaterialCode equals lib.MaterialCode into libJoin
|
||||
from libItem in libJoin.DefaultIfEmpty()
|
||||
join line in Funs.DB.HJGL_Pipeline on detail.PipelineId equals line.PipelineId into lineJoin
|
||||
from lineItem in lineJoin.DefaultIfEmpty()
|
||||
where detail.PackagingManageId == PackagingManageId /*&& (detail.PipelineId != null || detail.PipelineId != "") && (detail.PipelineComponentId == null || detail.PipelineComponentId == "")*/
|
||||
select new PipelinePrefabricatedComponentsItem
|
||||
{
|
||||
Id = detail.Id,
|
||||
MaterialCode = libItem.MaterialCode,
|
||||
MaterialName = libItem.MaterialName,
|
||||
MaterialUnit = libItem.MaterialUnit,
|
||||
MaterialSpec = libItem.MaterialSpec,
|
||||
MaterialMade = libItem.MaterialMade,
|
||||
MaterialDef = libItem.MaterialDef,
|
||||
Number = detail.Number,
|
||||
PipelineId = lineItem.PipelineId,
|
||||
PipelineCode = lineItem.PipelineCode,
|
||||
UnitWorkId=lineItem.UnitWorkId,
|
||||
|
||||
};
|
||||
return q;
|
||||
};
|
||||
result= q.ToList();
|
||||
}
|
||||
else if(pack.TypeInt == (int)HJGL_PackagingmanageService.TypeInt.其他材料)
|
||||
{
|
||||
var q = from detail in Funs.DB.HJGL_PackagingManageDetail
|
||||
join lib in Funs.DB.HJGL_MaterialCodeLib on detail.MaterialCode equals lib.MaterialCode into libJoin
|
||||
from libItem in libJoin.DefaultIfEmpty()
|
||||
join line in Funs.DB.HJGL_Pipeline on detail.PipelineId equals line.PipelineId into lineJoin
|
||||
from lineItem in lineJoin.DefaultIfEmpty()
|
||||
where detail.PackagingManageId == PackagingManageId /*&& (detail.PipelineId == null || detail.PipelineId == "")*/
|
||||
select new PipelinePrefabricatedComponentsItem
|
||||
{
|
||||
Id = detail.Id,
|
||||
MaterialCode = libItem.MaterialCode,
|
||||
MaterialName = libItem.MaterialName,
|
||||
MaterialUnit = libItem.MaterialUnit,
|
||||
MaterialSpec = libItem.MaterialSpec,
|
||||
MaterialMade = libItem.MaterialMade,
|
||||
MaterialDef = libItem.MaterialDef,
|
||||
Number = detail.Number,
|
||||
PipelineId = lineItem.PipelineId,
|
||||
PipelineCode = lineItem.PipelineCode,
|
||||
|
||||
};
|
||||
result = q.ToList();
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
public static void Add(Model.HJGL_PackagingManageDetail newtable)
|
||||
{
|
||||
|
||||
@@ -165,8 +202,6 @@ namespace BLL
|
||||
Funs.DB.HJGL_PackagingManageDetail.InsertOnSubmit(table);
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
|
||||
|
||||
public static void Update(Model.HJGL_PackagingManageDetail newtable)
|
||||
{
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user