Browse Source

提交

master
songnan.zhang 3 years ago
parent
commit
06dcfb138d
  1. 12
      APP/QMAPP.Web/App_Data/Menu.xml
  2. 2
      APPQ5/QMAPP.FJC.BLL/QMAPP.FJC.BLL.csproj
  3. 256
      APPQ5/QMAPP.FJC.BLL/TianJin/StorageBLL.cs
  4. 218
      APPQ5/QMAPP.FJC.BLL/TianJin/StorageLogBLL.cs
  5. 208
      APPQ5/QMAPP.FJC.BLL/TianJin/TJDoorPlankPlanBLL.cs
  6. 2
      APPQ5/QMAPP.FJC.DAL/QMAPP.FJC.DAL.csproj
  7. 4
      APPQ5/QMAPP.FJC.DAL/SendManage/SendPlanRecordDAL.cs
  8. 324
      APPQ5/QMAPP.FJC.DAL/TianJin/StorageDAL.cs
  9. 332
      APPQ5/QMAPP.FJC.DAL/TianJin/StorageLogDAL.cs
  10. 16
      APPQ5/QMAPP.FJC.DAL/TianJin/TJDoorPlankPlanDAL.cs
  11. 22
      APPQ5/QMAPP.FJC.DAL/TianJin/TJFrmPlaceDAL.cs
  12. 2
      APPQ5/QMAPP.FJC.Entity/QMAPP.FJC.Entity.csproj
  13. 105
      APPQ5/QMAPP.FJC.Entity/TianJin/Storage.cs
  14. 97
      APPQ5/QMAPP.FJC.Entity/TianJin/StorageLog.cs
  15. BIN
      APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageExp.xlsx
  16. 32
      APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageExp.xml
  17. BIN
      APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageLogExp.xlsx
  18. 37
      APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageLogExp.xml
  19. 4
      APPQ5/QMAPP.FJC.Web/Content/Xml/Dictionary.xml
  20. 132
      APPQ5/QMAPP.FJC.Web/Controllers/StorageController.cs
  21. 130
      APPQ5/QMAPP.FJC.Web/Controllers/StorageLogController.cs
  22. 130
      APPQ5/QMAPP.FJC.Web/Models/TianJin/StorageLogModel.cs
  23. 119
      APPQ5/QMAPP.FJC.Web/Models/TianJin/StorageModel.cs
  24. 18
      APPQ5/QMAPP.FJC.Web/QMAPP.FJC.Web.csproj
  25. 97
      APPQ5/QMAPP.FJC.Web/Views/Storage/StorageList.aspx
  26. 103
      APPQ5/QMAPP.FJC.Web/Views/StorageLog/StorageLogList.aspx
  27. 10
      APPQ5/QMAPP.WinForm/App.config
  28. 7
      APPQ5/QMAPP.WinForm/Dictionary.xml
  29. 5
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJFrmPlace.cs
  30. 420
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJOutWarehouseForm.Designer.cs
  31. 298
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJOutWarehouseForm.cs
  32. 307
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJOutWarehouseForm.resx
  33. 11
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJPrintPlanLabel.cs
  34. 433
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInForm.Designer.cs
  35. 164
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInForm.cs
  36. 319
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInForm.resx
  37. 161
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInSendCodeForm.Designer.cs
  38. 112
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInSendCodeForm.cs
  39. 191
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInSendCodeForm.resx
  40. 154
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJSendCodeForm.Designer.cs
  41. 264
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJSendCodeForm.cs
  42. 120
      APPQ5/QMAPP.WinForm/Forms/TianJin/TJSendCodeForm.resx
  43. 4
      APPQ5/QMAPP.WinForm/Forms/WarehouseManage/SendFinalForm.cs
  44. 23
      APPQ5/QMAPP.WinForm/MainForm.Designer.cs
  45. 43
      APPQ5/QMAPP.WinForm/MainForm.cs
  46. 38
      APPQ5/QMAPP.WinForm/QMAPP.WinForm.csproj
  47. 16
      AppCommon/QMAPP.ServicesAgent/ServiceEnums.cs
  48. 14
      ServicesCenter/WCF/QMFrameWork.WebServiceHost/App_Data/FJCServiceList.xml

12
APP/QMAPP.Web/App_Data/Menu.xml

@ -428,6 +428,18 @@
<Action ContorllerName="TSWeighRecore" ActionName="List" PowerID="CD10030001">查询</Action>
</Actions>
</MenuItem>
<MenuItem MenuID="10060000" SystemID="FJC" MenuDes="库存信息" Action="/Storage/List" Target="url" PowerID="CD10060000" Visible="true" Ico="../../Content/Menu/images/ico/2.gif" SuperID="10000000" Seq="1">
<Actions>
<Action ContorllerName="Storage" ActionName="List" PowerID="CD10060001">查询</Action>
<Action ContorllerName="Storage" ActionName="ExportExcel" PowerID="CD10060002">导出</Action>
</Actions>
</MenuItem>
<MenuItem MenuID="10070000" SystemID="FJC" MenuDes="出入库记录" Action="/StorageLog/List" Target="url" PowerID="CD10070000" Visible="true" Ico="../../Content/Menu/images/ico/2.gif" SuperID="10000000" Seq="1">
<Actions>
<Action ContorllerName="StorageLog" ActionName="List" PowerID="CD10070001">查询</Action>
<Action ContorllerName="StorageLog" ActionName="ExportExcel" PowerID="CD10070002">导出</Action>
</Actions>
</MenuItem>
<!--<MenuItem MenuID="10040000" SystemID="FJC" MenuDes="生产进度查询" Action="" Target="url" PowerID="CD10040000" Visible="true" Ico="../../Content/Menu/images/ico/2.gif" SuperID="10000000" Seq="1">
<Actions>
</Actions>

2
APPQ5/QMAPP.FJC.BLL/QMAPP.FJC.BLL.csproj

@ -185,6 +185,8 @@
<Compile Include="QT\MaterialBindingBLL.cs" />
<Compile Include="SendManage\SendPlanRecordBLL.cs" />
<Compile Include="Stocktaking\StocktakingBLL.cs" />
<Compile Include="TianJin\StorageLogBLL.cs" />
<Compile Include="TianJin\StorageBLL.cs" />
<Compile Include="TianJin\TJDoorPlankPlanBLL.cs" />
<Compile Include="TianJin\TJFrmPlaceBLL.cs" />
<Compile Include="TianJin\TJOrderPlanBLL.cs" />

256
APPQ5/QMAPP.FJC.BLL/TianJin/StorageBLL.cs

@ -0,0 +1,256 @@
using System;
using System.Collections.Generic;
using QMAPP.BLL;
using QMAPP.Entity;
using QMAPP.FJC.BLL.Dict;
using QMAPP.FJC.DAL.ProduceManage;
using QMAPP.FJC.Entity.ProduceManage;
using QMFrameWork.Data;
using QMFrameWork.Log;
using QMAPP.FJC.Entity;
using QMAPP.MD.Entity.TianJin;
using QMAPP.FJC.DAL.TianJin;
using System.Data;
namespace QMAPP.FJC.BLL.TianJin
{
/// <summary>
/// 模块名称:天津--仓库信息
/// 作 者:张松男
/// 编写日期:2022年02月15日
/// </summary>
public class StorageBLL : BaseBLL
{
#region 获取信息
/// <summary>
/// 获取信息
/// </summary>
/// <param name="">条件</param>
/// <returns>信息</returns>
public DataResult<Storage> Get(Storage model)
{
DataResult<Storage> result = new DataResult<Storage>();
try
{
result.Result = new StorageDAL().Get(model);
result.IsSuccess = true;
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "获取异常!"
});
result.IsSuccess = false;
result.Ex = ex;
result.Msg = "获取异常";
}
return result;
}
#endregion
#region 获取列表
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <param name="page">数据页</param>
/// <returns>数据页</returns>
public DataResult<DataPage> GetList(Storage condition, DataPage page)
{
DataResult<DataPage> result = new DataResult<DataPage>();
try
{
DataPage dataPage = new StorageDAL().GetList(condition, page);
result.IsSuccess = true;
result.Result = dataPage;
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "获取列表异常!"
});
result.IsSuccess = false;
result.Ex = ex;
result.Msg = "获取列表异常!";
}
return result;
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <returns>全部集合</returns>
public List<Storage> GetAllList()
{
try
{
//获取信息列表
return new StorageDAL().GetALL();
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "获取列表异常!"
});
throw ex;
}
}
#endregion
public DataResult<int> SelectCount(string ProductCode)
{
DataResult<int> result = new DataResult<int>();
StorageDAL cmdDAL = new StorageDAL();
result.Result = cmdDAL.SelectCount(ProductCode);
return result;
}
#region 入库信息
/// <summary>
/// 入库信息
/// </summary>
/// <param name="">信息</param>
/// <returns>插入行数</returns>
public DataResult<int> Insert(Storage info)
{
DataResult<int> result = new DataResult<int>();
try
{
//基本信息
info.PID = Guid.NewGuid().ToString();
info.CREATEUSER = this.LoginUser.UserName;
info.CREATEDATE = DateTime.Now.ToString();
info.UPDATEUSER = info.CREATEUSER;
info.UPDATEDATE = info.CREATEDATE;
info.State = "1";
StorageDAL cmdDAL = new StorageDAL();
result.Result = cmdDAL.Insert(info);
var storageLog = new StorageLog();
storageLog.PID = Guid.NewGuid().ToString();
storageLog.CREATEUSER = this.LoginUser.UserName;
storageLog.CREATEDATE = DateTime.Now.ToString();
storageLog.UPDATEUSER = info.CREATEUSER;
storageLog.UPDATEDATE = info.CREATEDATE;
storageLog.State = "1";
storageLog.ProductCode = info.ProductCode;
storageLog.MATERIALCODE = info.MATERIALCODE;
storageLog.MATERIALNAME = info.MATERIALNAME;
storageLog.InStorageType = info.InStorageType;
//storageLog
//StorageLogDAL cmdDALlog = new StorageLogDAL();
//cmdDALlog.Insert(storageLog);
result.IsSuccess = true;
return result;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 出库信息
/// <summary>
/// 出库信息
/// </summary>
/// <param name=""></param>
/// <returns>更新行数</returns>
public DataResult Update(Storage model)
{
DataResult result = new DataResult();
result.IsSuccess = true;
try
{
Storage info = new StorageDAL().Get(model.ProductCode);
//基本信息
info.State = "2";
info.MATERIALNAME = model.MATERIALNAME;
info.MATERIALCODE = model.MATERIALCODE;
info.CREATEUSER = model.CREATEUSER;
info.CREATEDATE = model.CREATEDATE;
info.UPDATEDATE = DateTime.Now.ToString();
info.UPDATEUSER = this.LoginUser.UserName;
int temp = new StorageDAL().Update(info);
var storageLog = new StorageLog();
storageLog.PID = Guid.NewGuid().ToString();
storageLog.CREATEUSER = this.LoginUser.UserName;
storageLog.CREATEDATE = DateTime.Now.ToString();
storageLog.UPDATEUSER = info.CREATEUSER;
storageLog.UPDATEDATE = info.CREATEDATE;
storageLog.State = "2";
storageLog.ProductCode = info.ProductCode;
storageLog.MATERIALCODE = info.MATERIALCODE;
storageLog.MATERIALNAME = info.MATERIALNAME;
storageLog.InStorageType = info.InStorageType;
if (temp == 0)
{
result.IsSuccess = false;
result.Msg = "更新失败!";
return result;
}
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "更新异常!"
});
result.IsSuccess = false;
result.Ex = ex;
result.Msg = "更新异常";
}
return result;
}
#endregion
#region 导出数据
/// <summary>
/// 获取导出的数据
/// </summary>
/// <param name="user">查询条件</param>
/// <returns>数据</returns>
public DataTable GetExportData(Storage model)
{
try
{
return new StorageDAL().GetExportData(model);
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "导出库存信息"
});
throw ex;
}
}
#endregion
}
}

218
APPQ5/QMAPP.FJC.BLL/TianJin/StorageLogBLL.cs

@ -0,0 +1,218 @@
using System;
using System.Collections.Generic;
using QMAPP.BLL;
using QMAPP.Entity;
using QMAPP.FJC.BLL.Dict;
using QMAPP.FJC.DAL.ProduceManage;
using QMAPP.FJC.Entity.ProduceManage;
using QMFrameWork.Data;
using QMFrameWork.Log;
using QMAPP.FJC.Entity;
using QMAPP.MD.Entity.TianJin;
using QMAPP.FJC.DAL.TianJin;
using System.Data;
namespace QMAPP.FJC.BLL.TianJin
{
/// <summary>
/// 模块名称:库存日志信息
/// 作 者:张松男
/// 编写日期:2022年02月17日
/// </summary>
public class StorageLogBLL : BaseBLL
{
#region 获取信息
/// <summary>
/// 获取信息
/// </summary>
/// <param name="">条件</param>
/// <returns>信息</returns>
public DataResult<StorageLog> Get(StorageLog model)
{
DataResult<StorageLog> result = new DataResult<StorageLog>();
try
{
result.Result = new StorageLogDAL().Get(model);
result.IsSuccess = true;
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "获取异常!"
});
result.IsSuccess = false;
result.Ex = ex;
result.Msg = "获取异常";
}
return result;
}
#endregion
#region 获取列表
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <param name="page">数据页</param>
/// <returns>数据页</returns>
public DataResult<DataPage> GetList(StorageLog condition, DataPage page)
{
DataResult<DataPage> result = new DataResult<DataPage>();
try
{
DataPage dataPage = new StorageLogDAL().GetList(condition, page);
result.IsSuccess = true;
result.Result = dataPage;
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "获取列表异常!"
});
result.IsSuccess = false;
result.Ex = ex;
result.Msg = "获取列表异常!";
}
return result;
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <returns>全部集合</returns>
public List<StorageLog> GetAllList()
{
try
{
//获取信息列表
return new StorageLogDAL().GetALL();
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "获取列表异常!"
});
throw ex;
}
}
#endregion
#region 插入信息
/// <summary>
/// 插入信息(单表)
/// </summary>
/// <param name="">信息</param>
/// <returns>插入行数</returns>
public DataResult<int> Insert(StorageLog info)
{
DataResult<int> result = new DataResult<int>();
try
{
//基本信息
info.PID = Guid.NewGuid().ToString();
info.CREATEUSER = this.LoginUser.UserID;
info.CREATEDATE = DateTime.Now.ToString();
info.UPDATEUSER = info.CREATEUSER;
info.UPDATEDATE = info.CREATEDATE;
info.State = "1";
StorageLogDAL cmdDAL = new StorageLogDAL();
result.Result = cmdDAL.Insert(info);
result.IsSuccess = true;
return result;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 更新信息
/// <summary>
/// 更新信息
/// </summary>
/// <param name=""></param>
/// <returns>更新行数</returns>
public DataResult Update(StorageLog model)
{
DataResult result = new DataResult();
result.IsSuccess = true;
try
{
StorageLog info = new StorageLogDAL().Get(model.ProductCode);
//基本信息
info.State = "1";
info.MATERIALNAME = model.MATERIALNAME;
info.MATERIALCODE = model.MATERIALCODE;
info.CREATEUSER = model.CREATEUSER;
info.CREATEDATE = model.CREATEDATE;
info.UPDATEDATE = DateTime.Now.ToString();
info.UPDATEUSER = this.LoginUser.UserID;
int temp = new StorageLogDAL().Update(info);
if (temp == 0)
{
result.IsSuccess = false;
result.Msg = "更新失败!";
return result;
}
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "更新异常!"
});
result.IsSuccess = false;
result.Ex = ex;
result.Msg = "更新异常";
}
return result;
}
#endregion
#region 导出数据
/// <summary>
/// 获取导出的数据
/// </summary>
/// <param name="user">查询条件</param>
/// <returns>数据</returns>
public DataTable GetExportData(StorageLog model)
{
try
{
return new StorageLogDAL().GetExportData(model);
}
catch (Exception ex)
{
LogManager.LogHelper.Error(new LogInfo()
{
ErrorInfo = ex,
Tag = ex.StackTrace,
Info = "导出库存信息"
});
throw ex;
}
}
#endregion
}
}

208
APPQ5/QMAPP.FJC.BLL/TianJin/TJDoorPlankPlanBLL.cs

@ -434,7 +434,51 @@ namespace QMAPP.FJC.BLL.TianJin
public DataTable PutOutOrderPlan(TJOrderPlan info, DataTable workOrderDt)
{
WorkCellDAL workCelldal = new WorkCellDAL();
if (info.MATERIAL_CODE.Length > 8)
{
for (int i = 0; i < info.QTY; i++)
{
DataRow workOrder = workOrderDt.NewRow();
workOrder["PID"] = Guid.NewGuid().ToString();
workOrder["ORDERPLANID"] = info.PID;
workOrder["ORDERPLAN_NO"] = (info.PLAN_NO.ToString() + (i + 1).ToString().PadLeft(4, '0'));
workOrder["SEQ"] = info.PLAN_NO.Substring(info.PLAN_NO.Length - 2, 2) + (i + 1).ToString().PadLeft(4, '0');
workOrder["MATERIAL_CODE"] = info.MATERIAL_CODE;
workOrder["MATERIAL_NAME"] = info.MATERIAL_NAME;
workOrder["PLAN_DATE"] = info.PLAN_DATE;
workOrder["PRODUCTCODE"] = "";
if (info.MATERIAL_NAME.Contains("左前"))
{
workOrder["MOULD_CODE"] = "LF";
}
else if (info.MATERIAL_NAME.Contains("左后"))
{
workOrder["MOULD_CODE"] = "LR";
}
else if (info.MATERIAL_NAME.Contains("右前"))
{
workOrder["MOULD_CODE"] = "RF";
}
else if (info.MATERIAL_NAME.Contains("右后"))
{
workOrder["MOULD_CODE"] = "RR";
}
workOrder["LINENO"] = info.LINENO;
workOrder["STATE"] = EnumGeter.WORKPLANSTATE.INIT.GetHashCode().ToString();
workOrder["UPDATEDATE"] = DateTime.Now.ToString();
workOrderDt.Rows.Add(workOrder);
}
}
else
{
var list = "LF,LR,RF,RR".Split(',');
var dal = new TJDoorPlankPlanDAL();
var MachineList = dal.GetListMachine(info.MATERIAL_CODE);
//注入派工单信息
for (int i = 0; i < info.QTY; i++)
{
@ -444,9 +488,33 @@ namespace QMAPP.FJC.BLL.TianJin
workOrder["PID"] = Guid.NewGuid().ToString();
workOrder["ORDERPLANID"] = info.PID;
workOrder["ORDERPLAN_NO"] = (info.PLAN_NO.ToString()+ (i + 1).ToString().PadLeft(4, '0'));
workOrder["SEQ"] = info.PLAN_NO.Substring(info.PLAN_NO.Length-2,2)+(i + 1).ToString().PadLeft(4, '0');
workOrder["MATERIAL_CODE"] = info.MATERIAL_CODE;
workOrder["ORDERPLAN_NO"] = (info.PLAN_NO.ToString() + (i + 1).ToString().PadLeft(4, '0'));
workOrder["SEQ"] = info.PLAN_NO.Substring(info.PLAN_NO.Length - 2, 2) + (i + 1).ToString().PadLeft(4, '0');
var WEIZHI = "";
switch (seq)
{
case "LF":
WEIZHI = "左前";
break;
case "LR":
WEIZHI = "左后";
break;
case "RF":
WEIZHI = "右前";
break;
case "RR":
WEIZHI = "右后";
break;
}
var Machine = MachineList.Where(p => p.MATERIALNAME.Contains(WEIZHI)).ToList();
if (Machine != null && Machine.Count>0)
{
workOrder["MATERIAL_CODE"] = Machine[0].MATERIALNO;
}
else
workOrder["MATERIAL_CODE"] = "";
workOrder["MATERIAL_NAME"] = info.MATERIAL_NAME;
workOrder["PLAN_DATE"] = info.PLAN_DATE;
workOrder["PRODUCTCODE"] = "";
@ -458,10 +526,19 @@ namespace QMAPP.FJC.BLL.TianJin
workOrderDt.Rows.Add(workOrder);
}
}
}
return workOrderDt;
}
public static string GET_MATERIAL_CODE(string MOULD_CODE,string MATERIAL_CODE)
{
return "";
}
//public List<WorkOrder> PutOutOrderPlan(TJOrderPlan info, int number, int lastIndex)
//{
// List<WorkOrder> wolist = new List<WorkOrder>();
@ -677,131 +754,6 @@ namespace QMAPP.FJC.BLL.TianJin
}
#endregion
#region 整车插入信息
/// <summary>
/// 插入信息(单表)
/// </summary>
/// <param name="">信息</param>
/// <returns>插入行数</returns>
//public DataResult<int> InsertWholeDoor(TJOrderPlan model, List<Material> materiallist)
//{
// List<TJOrderPlan> List = new List<TJOrderPlan>();
// DataResult<int> result = new DataResult<int>();
// TJDoorPlankPlanDAL cmdDAL = new TJDoorPlankPlanDAL();
// cmdDAL.BaseSession = AppDataFactory.CreateMainSession();
// string plan_Seq = "";
// foreach (Material ma in materiallist)
// {
// TJOrderPlan planmodel = new TJOrderPlan();
// planmodel.MATERIAL_CODE = ma.MATERIAL_CODE;
// planmodel.PID = Guid.NewGuid().ToString();
// planmodel.QTY = model.QTY;
// planmodel.PLAN_DATE = model.PLAN_DATE;
// planmodel.SHIFT_CODE = model.SHIFT_CODE;
// planmodel.PRODUCEREQUIRE = "0";
// planmodel.PLANSOURCE = model.PLANSOURCE;
// planmodel.PLAN_STATE = "0";
// //计划来源
// planmodel.PLANSOURCE = model.PLANSOURCE;
// //顺序号
// OrderPlanSerial serial = new TJDoorPlankPlanDAL().GetNumSerial(model);
// if (serial != null)
// {
// //流水号加1,补位
// planmodel.PLAN_SEQ = (serial.SERIAL_NO + 1).ToString().PadLeft(3, '0');
// //更新流水号
// serial.SERIAL_NO = serial.SERIAL_NO + 1;
// if (string.IsNullOrEmpty(plan_Seq))
// {
// plan_Seq = planmodel.PLAN_SEQ;
// }
// int no = new TJDoorPlankPlanDAL().UpdateSerial(serial);
// }
// else
// {
// OrderPlanSerial serialinfo = new OrderPlanSerial();
// //若为空则插入流水号表信息
// serialinfo.PID = Guid.NewGuid().ToString();
// serialinfo.SERIAL_NO = 1;
// serialinfo.SERIAL_TYPE = model.ORDER_TYPE;
// serialinfo.SERIAL_DATE = model.PLAN_DATE.ToString("yyyyMMdd");
// int num = new TJDoorPlankPlanDAL().InsertSerial(serialinfo);
// //流水号补位
// planmodel.PLAN_SEQ = (serialinfo.SERIAL_NO).ToString().PadLeft(3, '0');
// if (string.IsNullOrEmpty(plan_Seq))
// {
// plan_Seq = planmodel.PLAN_SEQ;
// }
// }
// string matype = ma.MATERIAL_TYPE_CODE;
// string a = matype.Substring(matype.Length - 2, 1);
// string b = matype.Substring(matype.Length - 1, 1);
// string planSet = b + a;
// //计划单号
// planmodel.PLAN_NO = model.AsmSetCode+planSet + model.PLAN_DATE.ToString("yyMMdd") + planmodel.PLAN_SEQ + "SD";
// Pbom pbomcode = new PbomDAL().Get(new Pbom { MATERIAL_CODE = planmodel.MATERIAL_CODE });
// planmodel.PBOM_CODE = pbomcode.PBOM_CODE;
// string workcentercode = new WorkCellDAL().GetWorkcenter(model.ORDER_TYPE);
// planmodel.WORKCENTER_CODE = workcentercode;
// if (planmodel.WORKCENTER_CODE != "")
// {
// string factory = new FactoryDAL().GetFactoryWithWorkcenter(planmodel.WORKCENTER_CODE);
// planmodel.FACTORY_CODE = factory;
// }
// QMAPP.MD.Entity.ProcessRoute routecode = new QMAPP.MD.DAL.ProcessRouteDAL().RouteWithMaterial(planmodel.MATERIAL_CODE);
// //QMAPP.MD.Entity.ProcessRoute routecode = new QMAPP.MD.DAL.ProcessRouteDAL().RouteWithMaterial(model.MATERIAL_CODE);
// planmodel.ROUTE_CODE = routecode != null ? routecode.ROUTE_CODE : "";
// planmodel.CREATEUSER = this.LoginUser.UserID;
// planmodel.CREATEDATE = DateTime.Now;
// planmodel.UPDATEUSER = planmodel.CREATEUSER;
// planmodel.UPDATEDATE = planmodel.CREATEDATE;
// planmodel.PLAN_SEQ = plan_Seq;
// List.Add(planmodel);
// }
// try
// {
// if (ExistsOrderPlan(model) > 0)
// {
// result.IsSuccess = false;
// result.Msg = Resource.MaterielCodeIsHave;
// return result;
// }
// result.Result = cmdDAL.InsertDoorPlan(List);
// }
// catch (Exception ex)
// {
// LogManager.LogHelper.Error(new LogInfo()
// {
// ErrorInfo = ex,
// Tag = ex.StackTrace,
// Info = "信息逻辑层-插入信息!"
// });
// result.IsSuccess = false;
// result.Msg = Resource.SystemException;
// throw ex;
// }
// result.IsSuccess = true;
// return result;
//}
#endregion
#region 保存FIS插单
/// <summary>
/// 保存FIS插单

2
APPQ5/QMAPP.FJC.DAL/QMAPP.FJC.DAL.csproj

@ -174,6 +174,8 @@
<Compile Include="SA\WorkcellQtyCountDAL.cs" />
<Compile Include="SendManage\SendPlanRecordDAL.cs" />
<Compile Include="Stocktaking\StocktakingDAL.cs" />
<Compile Include="TianJin\StorageLogDAL.cs" />
<Compile Include="TianJin\StorageDAL.cs" />
<Compile Include="TianJin\TJDoorPlankPlanDAL.cs" />
<Compile Include="TianJin\TJFrmPlaceDAL.cs" />
<Compile Include="TianJin\TJOrderPlanDAL.cs" />

4
APPQ5/QMAPP.FJC.DAL/SendManage/SendPlanRecordDAL.cs

@ -287,8 +287,8 @@ namespace QMAPP.FJC.DAL.SendManage
List<DataParameter> parameters = new List<DataParameter>();
try
{
sql = "SELECT TOP 1 * FROM T_PP_PASTECARD WHERE PLANTNAME=@workcentercode ORDER BY CREATETIME DESC";
parameters.Add(new DataParameter("workcentercode", workcentercode));
sql = $"SELECT TOP 1 * FROM T_PP_PASTECARD WHERE PLANTNAME like '%{workcentercode}%' ORDER BY CREATETIME DESC";
using (IDataSession session = AppDataFactory.CreateMainSession())
{
return session.Get<PastCard>(sql, parameters.ToArray());

324
APPQ5/QMAPP.FJC.DAL/TianJin/StorageDAL.cs

@ -0,0 +1,324 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using QMAPP.FJC.Entity.MD;
using QMFrameWork.Data;
using System.Data;
using QMAPP.Entity;
using QMAPP.MD.Entity.Bucket;
using QMAPP.MD.Entity.TianJin;
namespace QMAPP.FJC.DAL.TianJin
{
/// <summary>
/// 模块名称:天津--仓库信息
/// 作 者:张松男
/// 编写日期:2022年02月15日
/// </summary>
public class StorageDAL
{
#region 获取信息
/// <summary>
/// 获取信息
/// </summary>
/// <param name="">条件</param>
/// <returns>*信息</returns>
public Storage Get(Storage info)
{
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//获取信息
info = session.Get<Storage>(info);
}
return info;
}
catch (Exception ex)
{
throw ex;
}
}
/// <summary>
/// 获取信息
/// </summary>
/// <param name="">条件</param>
/// <returns>*信息</returns>
public Storage Get(string materialcode)
{
try
{
string sql = "SELECT top1 * FROM [T_AW_Storage] WHERE [ProductCode]=@ProductCode";
List<DataParameter> parameters = new List<DataParameter>();
parameters.Add(new DataParameter("ProductCode", materialcode));
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//获取信息
var info = session.Get<Storage>(sql, parameters.ToArray());
return info;
}
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 获取列表
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <param name="page">数据页</param>
/// <returns>数据页</returns>
public DataPage GetList(Storage condition, DataPage page)
{
string sql = null;
List<DataParameter> parameters = new List<DataParameter>();
try
{
sql = this.GetQuerySql(condition, ref parameters);
//分页关键字段及排序
page.KeyName = "PID";
if (string.IsNullOrEmpty(page.SortExpression))
page.SortExpression = "UPDATEDATE DESC";
using (IDataSession session = AppDataFactory.CreateMainSession())
{
page = session.GetDataPage<Storage>(sql, parameters.ToArray(), page);
}
return page;
}
catch (Exception ex)
{
throw ex;
}
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <param name="page">数据页</param>
/// <returns>数据页</returns>
public List<Storage> GetALL()
{
string sql = null;
List<DataParameter> parameters = new List<DataParameter>();
try
{
sql = "SELECT * FROM T_AW_Storage WHERE IsCheck<> '1'";
//分页关键字段及排序
var LIST = new List<Storage>();
using (IDataSession session = AppDataFactory.CreateMainSession())
{
LIST = session.GetList<Storage>(sql, parameters.ToArray()).ToList();
}
return LIST;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 获取查询语句
/// <summary>
/// 获取查询语句
/// </summary>
/// <param name="user">查询条件</param>
/// <param name="parameters">参数</param>
/// <returns>查询语句</returns>
private string GetQuerySql(Storage condition, ref List<DataParameter> parameters)
{
StringBuilder sqlBuilder = new StringBuilder();
StringBuilder whereBuilder = new StringBuilder();
try
{
//构成查询语句
sqlBuilder.Append("SELECT PID,ProductCode,CASE State WHEN '1' THEN '入库' WHEN '2' THEN '出库' ELSE State END as 'StateName' ,OutStorageType,InStorageType,MATERIALCODE,MATERIALNAME,CREATEUSER,CREATEDATE,UPDATEUSER,UPDATEDATE ");
sqlBuilder.Append("FROM T_AW_Storage ");
if(!string.IsNullOrEmpty(condition.State))
{
whereBuilder.Append(" AND State = @State");
parameters.Add(new DataParameter { ParameterName = "State", DataType = DbType.String, Value = condition.State });
}
if (string.IsNullOrEmpty(condition.MATERIALCODE) == false)
{
whereBuilder.Append(" AND MATERIALCODE = @MATERIALCODE");
parameters.Add(new DataParameter { ParameterName = "MATERIALCODE", DataType = DbType.String, Value = condition.MATERIALCODE });
}
if (string.IsNullOrEmpty(condition.ProductCode) == false)
{
whereBuilder.Append(" AND ProductCode = @ProductCode");
parameters.Add(new DataParameter { ParameterName = "ProductCode", DataType = DbType.String, Value = condition.ProductCode });
}
if (condition.BeginTime != DateTime.MinValue)
sqlBuilder.Append($" and CREATEDATE >= '{condition.BeginTime}' ");
if (condition.EndTime != DateTime.MinValue)
sqlBuilder.Append($" and CREATEDATE <= '{condition.EndTime}' ");
//查询条件
if (whereBuilder.Length > 0)
{
sqlBuilder.Append(" WHERE " + whereBuilder.ToString().Substring(4));
}
return sqlBuilder.ToString();
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 信息是否重复
/// <summary>
/// 判断名称是否存在
/// </summary>
/// <param name="info"></param>
/// <returns>true:已存在;fasel:不存在。</returns>
public int SelectCount(string ProductCode)
{
StringBuilder sqlBuilder = new StringBuilder();
StringBuilder whereBuilder = new StringBuilder();
List<DataParameter> parameters = new List<DataParameter>();
int count = 0;
try
{
sqlBuilder.Append($"SELECT COUNT(0) FROM T_AW_Storage where ProductCode = '{ProductCode}' and State = '1'");
//添加进行无重复字段判断代码
using (IDataSession session = AppDataFactory.CreateMainSession())
{
count = Convert.ToInt32(session.ExecuteSqlScalar(sqlBuilder.ToString(), parameters.ToArray()));
}
return count;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 插入信息
/// <summary>
/// 插入信息(单表)
/// </summary>
/// <param name="">信息</param>
/// <returns>插入行数</returns>
public int Insert(Storage info)
{
int count = 0;
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//插入基本信息
count = session.Insert<Storage>(info);
}
return count;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 更新信息
/// <summary>
/// 更新信息
/// </summary>
/// <param name=""></param>
/// <returns>更新行数</returns>
public int Update(Storage info)
{
int count = 0;
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//更新基本信息
count = session.Update<Storage>(info);
}
return count;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 逻辑删除
/// <summary>
/// 逻辑删除信息
/// </summary>
/// <param name=""></param>
/// <returns>删除个数</returns>
public int Delete(string info)
{
StringBuilder sqlBuilder = new StringBuilder();
List<DataParameter> parameters = new List<DataParameter>();
int count = 0;
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//删除基本信息
sqlBuilder.Append("UPDATE T_AW_Storage ");
sqlBuilder.Append("SET IsCheck = '1' ");
sqlBuilder.Append("WHERE PID = @PID ");
parameters.Add(new DataParameter { ParameterName = "PID", DataType = DbType.String, Value = info });
count = session.ExecuteSql(sqlBuilder.ToString(), parameters.ToArray());
}
return count;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 获取导出的数据
/// <summary>
/// 获取导出的数据
/// </summary>
/// <param name="user">查询条件</param>
/// <returns>数据</returns>
public DataTable GetExportData(Storage model)
{
DataTable dt = null;
string sql = null;
List<DataParameter> parameters = new List<DataParameter>();
try
{
//构成查询语句
sql = this.GetQuerySql(model, ref parameters);
using (IDataSession session = AppDataFactory.CreateMainSession())
{
dt = session.GetTable(sql, parameters.ToArray());
dt.TableName = "T_AW_Storage";
}
return dt;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}
}

332
APPQ5/QMAPP.FJC.DAL/TianJin/StorageLogDAL.cs

@ -0,0 +1,332 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using QMAPP.FJC.Entity.MD;
using QMFrameWork.Data;
using System.Data;
using QMAPP.Entity;
using QMAPP.MD.Entity.Bucket;
using QMAPP.MD.Entity.TianJin;
namespace QMAPP.FJC.DAL.TianJin
{
/// <summary>
/// 模块名称:库存日志信息
/// 作 者:张松男
/// 编写日期:2022年02月17日
/// </summary>
public class StorageLogDAL
{
#region 获取信息
/// <summary>
/// 获取信息
/// </summary>
/// <param name="">条件</param>
/// <returns>*信息</returns>
public StorageLog Get(StorageLog info)
{
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//获取信息
info = session.Get<StorageLog>(info);
}
return info;
}
catch (Exception ex)
{
throw ex;
}
}
/// <summary>
/// 获取信息
/// </summary>
/// <param name="">条件</param>
/// <returns>*信息</returns>
public StorageLog Get(string materialcode)
{
try
{
string sql = "SELECT top1 * FROM [T_AW_StorageLog] WHERE [ProductCode]=@ProductCode";
List<DataParameter> parameters = new List<DataParameter>();
parameters.Add(new DataParameter("ProductCode", materialcode));
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//获取信息
var info = session.Get<StorageLog>(sql, parameters.ToArray());
return info;
}
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 获取列表
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <param name="page">数据页</param>
/// <returns>数据页</returns>
public DataPage GetList(StorageLog condition, DataPage page)
{
string sql = null;
List<DataParameter> parameters = new List<DataParameter>();
try
{
sql = this.GetQuerySql(condition, ref parameters);
//分页关键字段及排序
page.KeyName = "PID";
if (string.IsNullOrEmpty(page.SortExpression))
page.SortExpression = "UPDATEDATE DESC";
using (IDataSession session = AppDataFactory.CreateMainSession())
{
page = session.GetDataPage<StorageLog>(sql, parameters.ToArray(), page);
}
return page;
}
catch (Exception ex)
{
throw ex;
}
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="condition">条件</param>
/// <param name="page">数据页</param>
/// <returns>数据页</returns>
public List<StorageLog> GetALL()
{
string sql = null;
List<DataParameter> parameters = new List<DataParameter>();
try
{
sql = "SELECT * FROM T_AW_StorageLog ";
//分页关键字段及排序
var LIST = new List<StorageLog>();
using (IDataSession session = AppDataFactory.CreateMainSession())
{
LIST = session.GetList<StorageLog>(sql, parameters.ToArray()).ToList();
}
return LIST;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 获取查询语句
/// <summary>
/// 获取查询语句
/// </summary>
/// <param name="user">查询条件</param>
/// <param name="parameters">参数</param>
/// <returns>查询语句</returns>
private string GetQuerySql(StorageLog condition, ref List<DataParameter> parameters)
{
StringBuilder sqlBuilder = new StringBuilder();
StringBuilder whereBuilder = new StringBuilder();
try
{
//构成查询语句
sqlBuilder.Append("SELECT PID,ProductCode,CASE State WHEN '1' THEN '入库' WHEN '2' THEN '出库' ELSE State END as 'StateName' ,OutStorageType,State,InStorageType,MATERIALCODE,MATERIALNAME,CREATEUSER,CREATEDATE,UPDATEUSER,UPDATEDATE ");
sqlBuilder.Append("FROM T_AW_StorageLog ");
if (string.IsNullOrEmpty(condition.MATERIALCODE) == false)
{
whereBuilder.Append(" AND MATERIALCODE = @MATERIALCODE");
parameters.Add(new DataParameter { ParameterName = "MATERIALCODE", DataType = DbType.String, Value = condition.MATERIALCODE });
}
if (string.IsNullOrEmpty(condition.State) == false)
{
whereBuilder.Append(" AND State = @State");
parameters.Add(new DataParameter { ParameterName = "State", DataType = DbType.String, Value = condition.State });
}
if (string.IsNullOrEmpty(condition.ProductCode) == false)
{
whereBuilder.Append(" AND ProductCode = @ProductCode");
parameters.Add(new DataParameter { ParameterName = "ProductCode", DataType = DbType.String, Value = condition.ProductCode });
}
if (condition.BeginTime != DateTime.MinValue)
sqlBuilder.Append($" and CREATEDATE >= '{condition.BeginTime}' ");
if (condition.EndTime != DateTime.MinValue)
sqlBuilder.Append($" and CREATEDATE <= '{condition.EndTime}' ");
//查询条件
if (whereBuilder.Length > 0)
{
sqlBuilder.Append(" WHERE " + whereBuilder.ToString().Substring(4));
}
return sqlBuilder.ToString();
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 信息是否重复
/// <summary>
/// 判断名称是否存在
/// </summary>
/// <param name="info"></param>
/// <returns>true:已存在;fasel:不存在。</returns>
public bool Exists(StorageLog info)
{
StringBuilder sqlBuilder = new StringBuilder();
StringBuilder whereBuilder = new StringBuilder();
List<DataParameter> parameters = new List<DataParameter>();
int count = 0;
try
{
sqlBuilder.Append("SELECT COUNT(0) FROM T_AW_StorageLog");
if (info.PID == null)
{
info.PID = "";
}
whereBuilder.Append(" AND PID <> @PID ");
parameters.Add(new DataParameter { ParameterName = "PID", DataType = DbType.String, Value = info.PID });
//添加进行无重复字段判断代码
if (whereBuilder.Length > 0)
{
sqlBuilder.Append(" WHERE " + whereBuilder.ToString().Substring(4));
}
using (IDataSession session = AppDataFactory.CreateMainSession())
{
count = Convert.ToInt32(session.ExecuteSqlScalar(sqlBuilder.ToString(), parameters.ToArray()));
}
return count > 0;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 插入信息
/// <summary>
/// 插入信息(单表)
/// </summary>
/// <param name="">信息</param>
/// <returns>插入行数</returns>
public int Insert(StorageLog info)
{
int count = 0;
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//插入基本信息
count = session.Insert<StorageLog>(info);
}
return count;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 更新信息
/// <summary>
/// 更新信息
/// </summary>
/// <param name=""></param>
/// <returns>更新行数</returns>
public int Update(StorageLog info)
{
int count = 0;
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//更新基本信息
count = session.Update<StorageLog>(info);
}
return count;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 逻辑删除
/// <summary>
/// 逻辑删除信息
/// </summary>
/// <param name=""></param>
/// <returns>删除个数</returns>
public int Delete(string info)
{
StringBuilder sqlBuilder = new StringBuilder();
List<DataParameter> parameters = new List<DataParameter>();
int count = 0;
try
{
using (IDataSession session = AppDataFactory.CreateMainSession())
{
//删除基本信息
sqlBuilder.Append("UPDATE T_AW_StorageLog ");
sqlBuilder.Append("SET IsCheck = '1' ");
sqlBuilder.Append("WHERE PID = @PID ");
parameters.Add(new DataParameter { ParameterName = "PID", DataType = DbType.String, Value = info });
count = session.ExecuteSql(sqlBuilder.ToString(), parameters.ToArray());
}
return count;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 获取导出的数据
/// <summary>
/// 获取导出的数据
/// </summary>
/// <param name="user">查询条件</param>
/// <returns>数据</returns>
public DataTable GetExportData(StorageLog model)
{
DataTable dt = null;
string sql = null;
List<DataParameter> parameters = new List<DataParameter>();
try
{
//构成查询语句
sql = this.GetQuerySql(model, ref parameters);
using (IDataSession session = AppDataFactory.CreateMainSession())
{
dt = session.GetTable(sql, parameters.ToArray());
dt.TableName = "T_AW_StorageLog";
}
return dt;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}
}

16
APPQ5/QMAPP.FJC.DAL/TianJin/TJDoorPlankPlanDAL.cs

@ -1013,5 +1013,21 @@ namespace QMAPP.FJC.DAL.TianJin
}
#endregion
#region 查询同级别物料信息
public List<Materiel> GetListMachine(string MaterielCode)
{
string sql = null;
List<DataParameter> parameters = new List<DataParameter>();
sql = $"SELECT MATERIAL_NAME as 'MATERIALNAME',MATERIAL_CODE as 'MATERIALNO' FROM [dbo].[T_MD_MATERIAL] where MATERIAL_CODE != '{MaterielCode}' and MATERIAL_TYPE_CODE = (select MATERIAL_TYPE_CODE from [dbo].[T_MD_MATERIAL] where MATERIAL_CODE = '{MaterielCode}') ";
using (IDataSession session = AppDataFactory.CreateMainSession())
{
var datatable = session.GetList<Materiel>(sql, parameters.ToArray()).ToList();
return datatable;
}
}
#endregion
}
}

22
APPQ5/QMAPP.FJC.DAL/TianJin/TJFrmPlaceDAL.cs

@ -855,7 +855,7 @@ namespace QMAPP.FJC.DAL.TianJin
{
#region 获取贴车单序列号
string indexNumber = string.Format("select PASTECARDNO from T_DAS_PASTE_CARDINDEX where PLANTCODE='{0}'", ppastecard.PLANTNAME);
string indexNumber = string.Format("select PASTECARDNO from T_DAS_PASTE_CARDINDEX where PLANTCODE like '%{0}%'", ppastecard.PLANTNAME);
string pastCardNo = "";
@ -864,16 +864,16 @@ namespace QMAPP.FJC.DAL.TianJin
pastCardNo = Convert.ToString(session.ExecuteSqlScalar(indexNumber, new List<DataParameter>().ToArray()));
}
//if (pastCardNo.Substring(ppastecard.PLANTNAME.Length, 8)
// == System.DateTime.Now.ToString("yyyyMMdd"))
//{
// int numberIndex = Convert.ToInt32(pastCardNo.Substring(ppastecard.PLANTNAME.Length + 8, 4));
// pastCardNo = pastCardNo.Substring(0, ppastecard.PLANTNAME.Length + 8) + (numberIndex + 1).ToString().PadLeft(4, '0');
//}
//else
//{
// pastCardNo = pastCardNo.Substring(0, ppastecard.PLANTNAME.Length) + System.DateTime.Now.ToString("yyyyMMdd") + "0001";
//}
if (pastCardNo.Substring(ppastecard.PLANTNAME.Length, 8)
== System.DateTime.Now.ToString("yyyyMMdd"))
{
int numberIndex = Convert.ToInt32(pastCardNo.Substring(ppastecard.PLANTNAME.Length + 8, 4));
pastCardNo = pastCardNo.Substring(0, ppastecard.PLANTNAME.Length + 8) + (numberIndex + 1).ToString().PadLeft(4, '0');
}
else
{
pastCardNo = pastCardNo.Substring(0, ppastecard.PLANTNAME.Length) + System.DateTime.Now.ToString("yyyyMMdd") + "0001";
}
#endregion

2
APPQ5/QMAPP.FJC.Entity/QMAPP.FJC.Entity.csproj

@ -222,6 +222,8 @@
<Compile Include="Stocktaking\CountSheetInfo.cs" />
<Compile Include="Stocktaking\Material.cs" />
<Compile Include="Stocktaking\test.cs" />
<Compile Include="TianJin\StorageLog.cs" />
<Compile Include="TianJin\Storage.cs" />
<Compile Include="TianJin\TJEPasteCard.cs" />
<Compile Include="TianJin\TJEPasteDetailsCard.cs" />
<Compile Include="TianJin\TJFISORDER.cs" />

105
APPQ5/QMAPP.FJC.Entity/TianJin/Storage.cs

@ -0,0 +1,105 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using QMAPP.Entity;
using QMFrameWork.Data.Attributes;
using System.ComponentModel;
using System.Data;
namespace QMAPP.MD.Entity.TianJin
{
/// <summary>
/// 模块名称:天津--仓库信息
/// 作 者:张松男
/// 编写日期:2022年02月15日
/// </summary>
[DBTable(TableName = "T_AW_Storage")]
public class Storage : BaseEntity
{
/// <summary>
/// 主键
/// </summary>
[Description("主键")]
[DBColumn(ColumnName = "PID", DataType = DbType.String, IsKey = true)]
public string PID { get; set; }
/// <summary>
/// 产品条码
/// </summary>
[Description("产品条码")]
[DBColumn(ColumnName = "ProductCode", DataType = DbType.String)]
public string ProductCode { get; set; }
/// <summary>
/// 状态
/// 1:入库
/// 2:出库
/// 未出库的零件为库存
/// </summary>
[Description("状态")]
[DBColumn(ColumnName = "State", DataType = DbType.String)]
public string State { get; set; }
public string StateName { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Description("物料号")]
[DBColumn(ColumnName = "MATERIALCODE", DataType = DbType.String)]
public string MATERIALCODE { get; set; }
/// <summary>
/// 物料名称
/// </summary>
[Description("物料名称")]
[DBColumn(ColumnName = "MATERIALNAME", DataType = DbType.String)]
public string MATERIALNAME { get; set; }
/// <summary>
/// 入库类型
/// </summary>
[Description("入库类型")]
[DBColumn(ColumnName = "InStorageType", DataType = DbType.String)]
public string InStorageType { get; set; }
/// <summary>
/// 出库类型
/// </summary>
[Description("出库类型")]
[DBColumn(ColumnName = "OutStorageType", DataType = DbType.String)]
public string OutStorageType { get; set; }
/// <summary>
/// 创建用户
/// </summary>
[Description("创建用户")]
[DBColumn(ColumnName = "CREATEUSER", DataType = DbType.String)]
public string CREATEUSER { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[Description("创建时间")]
[DBColumn(ColumnName = "CREATEDATE", DataType = DbType.String)]
public string CREATEDATE { get; set; }
/// <summary>
/// 修改用户
/// </summary>
[Description("修改用户")]
[DBColumn(ColumnName = "UPDATEUSER", DataType = DbType.String)]
public string UPDATEUSER { get; set; }
/// <summary>
/// 修改时间
/// </summary>
[Description("修改时间")]
[DBColumn(ColumnName = "UPDATEDATE", DataType = DbType.String)]
public string UPDATEDATE { get; set; }
public DateTime EndTime { get; set; }
public DateTime BeginTime { get; set; }
}
}

97
APPQ5/QMAPP.FJC.Entity/TianJin/StorageLog.cs

@ -0,0 +1,97 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using QMAPP.Entity;
using QMFrameWork.Data.Attributes;
using System.ComponentModel;
using System.Data;
namespace QMAPP.MD.Entity.TianJin
{
/// <summary>
/// 模块名称:库存日志信息
/// 作 者:张松男
/// 编写日期:2022年02月17日
/// </summary>
[DBTable(TableName = "T_AW_StorageLog")]
public class StorageLog : BaseEntity
{
/// <summary>
/// 主键
/// </summary>
[Description("主键")]
[DBColumn(ColumnName = "PID", DataType = DbType.String, IsKey = true)]
public string PID { get; set; }
/// <summary>
/// 产品条码
/// </summary>
[Description("产品条码")]
[DBColumn(ColumnName = "ProductCode", DataType = DbType.String)]
public string ProductCode { get; set; }
/// <summary>
/// 状态
/// 1:入库
/// 2:出库
/// 未出库的零件为库存
/// </summary>
[Description("状态")]
[DBColumn(ColumnName = "State", DataType = DbType.String)]
public string State { get; set; }
public string StateName { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Description("物料号")]
[DBColumn(ColumnName = "MATERIALCODE", DataType = DbType.String)]
public string MATERIALCODE { get; set; }
/// <summary>
/// 物料名称
/// </summary>
[Description("物料名称")]
[DBColumn(ColumnName = "MATERIALNAME", DataType = DbType.String)]
public string MATERIALNAME { get; set; }
/// <summary>
/// 创建用户
/// </summary>
[Description("创建用户")]
[DBColumn(ColumnName = "CREATEUSER", DataType = DbType.String)]
public string CREATEUSER { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[Description("创建时间")]
[DBColumn(ColumnName = "CREATEDATE", DataType = DbType.String)]
public string CREATEDATE { get; set; }
/// <summary>
/// 修改用户
/// </summary>
[Description("修改用户")]
[DBColumn(ColumnName = "UPDATEUSER", DataType = DbType.String)]
public string UPDATEUSER { get; set; }
/// <summary>
/// 修改时间
/// </summary>
[Description("修改时间")]
[DBColumn(ColumnName = "UPDATEDATE", DataType = DbType.String)]
public string UPDATEDATE { get; set; }
public DateTime EndTime { get; set; }
public DateTime BeginTime { get; set; }
/// <summary>
/// 入库类型
/// </summary>
[Description("入库类型")]
[DBColumn(ColumnName = "InStorageType", DataType = DbType.String)]
public string InStorageType { get; set; }
}
}

BIN
APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageExp.xlsx

Binary file not shown.

32
APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageExp.xml

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8" ?>
<DataInfoMains>
<DataInfoMain InfoName="StorageExp" InfoTitle="库存记录查询" TemplateFile="StorageExp.xlsx" RecordCount="n">
<DataInfoItems>
<DataInfoItem ColumnName="ProductCode" ColumnTitle="产品条码" XPosition="A" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
<DataInfoItem ColumnName="MATERIALCODE" ColumnTitle="物料号" XPosition="B" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
<DataInfoItem ColumnName="MATERIALNAME" ColumnTitle="物料名称" XPosition="C" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
<DataInfoItem ColumnName="CREATEDATE" ColumnTitle="入库时间" XPosition="D" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
</DataInfoItems>
</DataInfoMain>
</DataInfoMains>

BIN
APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageLogExp.xlsx

Binary file not shown.

37
APPQ5/QMAPP.FJC.Web/App_Data/Excel/StorageLogExp.xml

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8" ?>
<DataInfoMains>
<DataInfoMain InfoName="StorageLogExp" InfoTitle="库存记录查询" TemplateFile="StorageLogExp.xlsx" RecordCount="n">
<DataInfoItems>
<DataInfoItem ColumnName="ProductCode" ColumnTitle="产品条码" XPosition="A" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
<DataInfoItem ColumnName="MATERIALCODE" ColumnTitle="物料号" XPosition="B" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
<DataInfoItem ColumnName="MATERIALNAME" ColumnTitle="物料名称" XPosition="C" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
<DataInfoItem ColumnName="StateName" ColumnTitle="类型" XPosition="D" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
<DataInfoItem ColumnName="CREATEDATE" ColumnTitle="时间" XPosition="E" YPosition="3" >
<Observers>
<Observer name="Required" ></Observer>
</Observers>
</DataInfoItem>
</DataInfoItems>
</DataInfoMain>
</DataInfoMains>

4
APPQ5/QMAPP.FJC.Web/Content/Xml/Dictionary.xml

@ -38,6 +38,10 @@
<items key="2" value="相等" />
<items key="3" value="区间" />
</Dictionary>
<Dictionary Name="StroageLogState">
<items key="1" value="入库" />
<items key="2" value="出库" />
</Dictionary>
<Dictionary Name="ISPARENT">
<items key="0" value="否" />

132
APPQ5/QMAPP.FJC.Web/Controllers/StorageController.cs

@ -0,0 +1,132 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using QMAPP.Common.Web.Controllers;
using QMFrameWork.WebUI.Attribute;
using QMAPP.FJC.Web.Models.Basic;
using QMFrameWork.Data;
using QMAPP.FJC.Entity.Basic;
using QMAPP.ServicesAgent;
using QMAPP.Entity;
using QMAPP.MD.Entity;
using QMAPP.MD.Web.Models;
using QMFrameWork.WebUI.DataSource;
using QMFrameWork.Common.Serialization;
using QMAPP.MD.Entity.TianJin;
using QMAPP.FJC.Web.Models.TianJin;
using System.Data;
using QMAPP.FJC.BLL.TianJin;
namespace QMAPP.FJC.Web.Controllers
{
public class StorageController : QController
{
#region 获取信息
/// <summary>
/// 加载列表
/// </summary>
/// <returns>结果</returns>
[HandleException]
public ActionResult List(bool? callback)
{
StorageModel seachModel = new StorageModel();
if (callback == true)
TryGetSelectBuffer<StorageModel>(out seachModel);
seachModel.rownumbers = false;
seachModel.url = "/Storage/GetList";
return View("StorageList", seachModel);
}
#endregion
#region 获取列表
/// <summary>
/// 获取列表
/// </summary>
/// <param name="callBack">是否回调</param>
/// <returns>列表</returns>
[HandleException]
public ActionResult GetList(bool? callBack)
{
StorageModel seachModel = null;
DataPage page = null;
ServiceAgent wcfAgent = this.GetServiceAgent();
Storage condition = null;
DataResult<DataPage> pageResult = new DataResult<DataPage>();
try
{
//获取查询对象
seachModel = GetModel<StorageModel>();
#region 获取缓存值
if (callBack != null)
{
TryGetSelectBuffer<StorageModel>(out seachModel);
}
else
{
//保存搜索条件
SetSelectBuffer<StorageModel>(seachModel);
}
#endregion
//获取前台分页设置信息
page = this.GetDataPage(seachModel);
condition = CopyToModel<Storage, StorageModel>(seachModel);
#region wcf服务统一接口
pageResult = wcfAgent.InvokeServiceFunction<DataResult<DataPage>>("StorageBLL_GetList", condition, page);
if (pageResult.IsSuccess == false)
{
SetMessage(pageResult.Msg);
return List(true);
}
DateGridResult<Storage> result = new DateGridResult<Storage>();
result.Total = pageResult.Result.RecordCount;
result.Rows = JsonConvertHelper.GetDeserialize<List<Storage>>(pageResult.Result.Result.ToString());
#endregion
return Content(result.GetJsonSource());
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 导出excel
/// <summary>
/// 导出excel
/// </summary>
/// <returns>结果</returns>
[HttpPost]
public ActionResult ExportExcel()
{
StorageModel seachModel = null;
Storage condition = null;
DataTable exportDt = new DataTable();
ServiceAgent wcfAgent = this.GetServiceAgent();
try
{
//获取查询对象
seachModel = GetModel<StorageModel>();
condition = CopyToModel<Storage, StorageModel>(seachModel);
//condition.PIDList = Request.Form["selectKey"];
//获取数据
StorageBLL op = new StorageBLL();
exportDt = op.GetExportData(condition);
//exportDt = wcfAgent.InvokeServiceFunction<DataTable>("StorageBLL_GetExportData", condition);
//导出
QMFrameWork.WebUI.Util.IEFileTool efTool = new QMFrameWork.WebUI.Util.IEFileTool();
return efTool.GetExcelFileResult("StorageExp", "库存信息.xlsx", exportDt);
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}
}

130
APPQ5/QMAPP.FJC.Web/Controllers/StorageLogController.cs

@ -0,0 +1,130 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using QMAPP.Common.Web.Controllers;
using QMFrameWork.WebUI.Attribute;
using QMAPP.FJC.Web.Models.Basic;
using QMFrameWork.Data;
using QMAPP.FJC.Entity.Basic;
using QMAPP.ServicesAgent;
using QMAPP.Entity;
using QMAPP.MD.Entity;
using QMAPP.MD.Web.Models;
using QMFrameWork.WebUI.DataSource;
using QMFrameWork.Common.Serialization;
using QMAPP.MD.Entity.TianJin;
using QMAPP.FJC.Web.Models.TianJin;
using System.Data;
using QMAPP.FJC.BLL.TianJin;
namespace QMAPP.FJC.Web.Controllers
{
public class StorageLogController : QController
{
#region 获取信息
/// <summary>
/// 加载列表
/// </summary>
/// <returns>结果</returns>
[HandleException]
public ActionResult List(bool? callback)
{
StorageLogModel seachModel = new StorageLogModel();
if (callback == true)
TryGetSelectBuffer<StorageLogModel>(out seachModel);
seachModel.rownumbers = false;
seachModel.url = "/StorageLog/GetList";
return View("StorageLogList", seachModel);
}
#endregion
#region 获取列表
/// <summary>
/// 获取列表
/// </summary>
/// <param name="callBack">是否回调</param>
/// <returns>列表</returns>
[HandleException]
public ActionResult GetList(bool? callBack)
{
StorageLogModel seachModel = null;
DataPage page = null;
ServiceAgent wcfAgent = this.GetServiceAgent();
StorageLog condition = null;
DataResult<DataPage> pageResult = new DataResult<DataPage>();
try
{
//获取查询对象
seachModel = GetModel<StorageLogModel>();
#region 获取缓存值
if (callBack != null)
{
TryGetSelectBuffer<StorageLogModel>(out seachModel);
}
else
{
//保存搜索条件
SetSelectBuffer<StorageLogModel>(seachModel);
}
#endregion
//获取前台分页设置信息
page = this.GetDataPage(seachModel);
condition = CopyToModel<StorageLog, StorageLogModel>(seachModel);
#region wcf服务统一接口
pageResult = wcfAgent.InvokeServiceFunction<DataResult<DataPage>>("StorageLogBLL_GetList", condition, page);
if (pageResult.IsSuccess == false)
{
SetMessage(pageResult.Msg);
return List(true);
}
DateGridResult<StorageLog> result = new DateGridResult<StorageLog>();
result.Total = pageResult.Result.RecordCount;
result.Rows = JsonConvertHelper.GetDeserialize<List<StorageLog>>(pageResult.Result.Result.ToString());
#endregion
return Content(result.GetJsonSource());
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 导出excel
/// <summary>
/// 导出excel
/// </summary>
/// <returns>结果</returns>
[HttpPost]
public ActionResult ExportExcel()
{
StorageLogModel seachModel = null;
StorageLog condition = null;
DataTable exportDt = new DataTable();
ServiceAgent wcfAgent = this.GetServiceAgent();
try
{
//获取查询对象
seachModel = GetModel<StorageLogModel>();
condition = CopyToModel<StorageLog, StorageLogModel>(seachModel);
//condition.PIDList = Request.Form["selectKey"];
//获取数据
StorageLogBLL op = new StorageLogBLL();
exportDt = op.GetExportData(condition);
//导出
QMFrameWork.WebUI.Util.IEFileTool efTool = new QMFrameWork.WebUI.Util.IEFileTool();
return efTool.GetExcelFileResult("StorageLogExp", "库存日志信息.xlsx", exportDt);
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}
}

130
APPQ5/QMAPP.FJC.Web/Models/TianJin/StorageLogModel.cs

@ -0,0 +1,130 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc.Html;
using QMFrameWork.WebUI.Attribute;
using QMFrameWork.WebUI;
namespace QMAPP.FJC.Web.Models.TianJin
{
/// <summary>
/// 模块名称:库存日志信息
/// 作 者:张松男
/// 编写日期:2022年02月17日
/// </summary>
public class StorageLogModel : QDGModel
{
/// <summary>
/// 主键
/// </summary>
[Description("主键")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 36)]
[DGColumn(Hidden = true, PrimaryKey = true)]
public string PID { get; set; }
/// <summary>
/// 产品编码
/// </summary>
[Description("产品编码")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string ProductCode { get; set; }
/// <summary>
/// 状态
/// </summary>
[Description("状态")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200, JsonUtl = "/Dict/GetFixedComboxSource?kind=StroageLogState")]
[InputType(inputType.combotree)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center,Hidden = true)]
public string State { get; set; }
// JsonUtl = "/Dict/GetFixedComboxSource?kind=HAndL"
/// <summary>
/// 状态
/// </summary>
[Description("状态")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string StateName { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Description("物料号")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string MATERIALCODE { get; set; }
/// <summary>
/// 物料名称
/// </summary>
[Description("物料名称")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string MATERIALNAME { get; set; }
/// <summary>
/// 入库类型
/// </summary>
[Description("入库类型")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string InStorageType { get; set; }
/// <summary>
/// 创建人
/// </summary>
[Description("创建用户")]
public string CREATEUSER { get; set; }
/// <summary>
/// 创建日期
/// </summary>
[Description("创建时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.hidden)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss")]
public DateTime CREATEDATE { get; set; }
/// <summary>
/// 更新人
/// </summary>
[Description("更新用户")]
public string UPDATEUSER { get; set; }
/// <summary>
/// 更新日期
/// </summary>
[Description("更新时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.hidden)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss")]
public DateTime UPDATEDATE { get; set; }
/// <summary>
/// 开始时间
/// </summary>
[Description("开始时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.dateTimeBox)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss", Hidden = true)]
public string BeginTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
[Description("结束时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.dateTimeBox)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss", Hidden = true)]
public string EndTime { get; set; }
}
}

119
APPQ5/QMAPP.FJC.Web/Models/TianJin/StorageModel.cs

@ -0,0 +1,119 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc.Html;
using QMFrameWork.WebUI.Attribute;
using QMFrameWork.WebUI;
namespace QMAPP.FJC.Web.Models.TianJin
{
/// <summary>
/// 模块名称:注塑料筒信息
/// 作 者:张松男
/// 编写日期:2021年07月13日
/// </summary>
public class StorageModel : QDGModel
{
/// <summary>
/// 主键
/// </summary>
[Description("主键")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 36)]
[DGColumn(Hidden = true, PrimaryKey = true)]
public string PID { get; set; }
/// <summary>
/// 产品编码
/// </summary>
[Description("产品编码")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string ProductCode { get; set; }
/// <summary>
/// 状态
/// </summary>
[Description("状态")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string StateName { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Description("物料号")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string MATERIALCODE { get; set; }
/// <summary>
/// 物料名称
/// </summary>
[Description("物料名称")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string MATERIALNAME { get; set; }
/// <summary>
/// 入库类型
/// </summary>
[Description("入库类型")]
[HTMLInput(UpdateRead = false, required = true, MaxLength = 200)]
[InputType(inputType.text)]
[DGColumn(frozenColumns = true, Sortable = true, Width = 100, DataAlign = DataAlign.center)]
public string InStorageType { get; set; }
/// <summary>
/// 创建人
/// </summary>
[Description("创建用户")]
public string CREATEUSER { get; set; }
/// <summary>
/// 创建日期
/// </summary>
[Description("创建时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.hidden)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss")]
public DateTime CREATEDATE { get; set; }
/// <summary>
/// 更新人
/// </summary>
[Description("更新用户")]
public string UPDATEUSER { get; set; }
/// <summary>
/// 更新日期
/// </summary>
[Description("更新时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.hidden)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss")]
public DateTime UPDATEDATE { get; set; }
/// <summary>
/// 开始时间
/// </summary>
[Description("开始时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.dateTimeBox)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss", Hidden = true)]
public string BeginTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
[Description("结束时间")]
[HTMLInput(UpdateRead = true, MaxLength = 20)]
[InputType(inputType.dateTimeBox)]
[DGColumn(Sortable = true, Width = 150, DataAlign = DataAlign.center, FormatDate = "yyyy-MM-dd hh:mm:ss", Hidden = true)]
public string EndTime { get; set; }
}
}

18
APPQ5/QMAPP.FJC.Web/QMAPP.FJC.Web.csproj

@ -163,6 +163,8 @@
<Compile Include="Controllers\BomHdrController.cs" />
<Compile Include="Controllers\BarCodeReplacementController.cs" />
<Compile Include="Controllers\APPConfigController.cs" />
<Compile Include="Controllers\StorageLogController.cs" />
<Compile Include="Controllers\StorageController.cs" />
<Compile Include="Controllers\BucketMaterialClassController.cs" />
<Compile Include="Controllers\BucketMaterialController.cs" />
<Compile Include="Controllers\CHECKTIMEController.cs" />
@ -362,6 +364,8 @@
<Compile Include="Models\Stocktaking\CountResultModel.cs" />
<Compile Include="Models\Stocktaking\CountSheetModel.cs" />
<Compile Include="Models\Stocktaking\StocktakingSearchModel.cs" />
<Compile Include="Models\TianJin\StorageLogModel.cs" />
<Compile Include="Models\TianJin\StorageModel.cs" />
<Compile Include="Models\TianJin\TJDoorPlankPlanModel.cs" />
<Compile Include="Models\WarnManage\EquipMentAlarmModel.cs" />
<Compile Include="Models\WarnManage\EquipMentMaintainModel.cs">
@ -401,6 +405,12 @@
</Compile>
</ItemGroup>
<ItemGroup>
<Content Include="App_Data\Excel\StorageLogExp.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="App_Data\Excel\StorageExp.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="App_Data\Excel\CastExp.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
@ -905,6 +915,8 @@
<Content Include="Views\AppConfig\AppConfigList.aspx" />
<Content Include="Views\BucketMaterialClass\BucketMaterialClassEdit.aspx" />
<Content Include="Views\BucketMaterialClass\BucketMaterialClassList.aspx" />
<Content Include="Views\StorageLog\StorageLogList.aspx" />
<Content Include="Views\Storage\StorageList.aspx" />
<Content Include="Views\TJDoorPlankPlan\DoorPlankPlanEdit.aspx" />
<Content Include="Views\TJDoorPlankPlan\DoorPlankPlanList.aspx" />
<Content Include="Views\TSWeighRecore\TSWeighRecoreList.aspx" />
@ -1284,6 +1296,9 @@
<None Include="App_Data\Excel\AndonCallLogExp.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<Content Include="App_Data\Excel\StorageExp.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<None Include="App_Data\Excel\CastExp.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
@ -1395,6 +1410,9 @@
<None Include="App_Data\Excel\SlushExp.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<Content Include="App_Data\Excel\StorageLogExp.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<None Include="App_Data\Excel\UltraExp.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>

97
APPQ5/QMAPP.FJC.Web/Views/Storage/StorageList.aspx

@ -0,0 +1,97 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/AppMaster.Master"
Inherits="System.Web.Mvc.ViewPage<QMAPP.FJC.Web.Models.TianJin.StorageModel>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
订单生产计划列表
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<%=Html.QPSeach(80, true)%>
<table id="condiTable">
<tr>
<th align="right">
<%=Html.QV(p => p.ProductCode)%>
</th>
<td>
<%=Html.QC(p => p.ProductCode)%>
</td>
<th align="right">
<%=Html.QV(p => p.MATERIALCODE)%>
</th>
<td>
<%=Html.QC(p => p.MATERIALCODE)%>
</td>
<th align="right">
<%=Html.QV(p => p.BeginTime)%>
</th>
<td>
<%=Html.QC(p => p.BeginTime)%>
</td>
<th align="right">
<%=Html.QV(p => p.EndTime)%>
</th>
<td>
<%=Html.QC(p => p.EndTime)%>
</td>
</tr>
</table>
<%=Html.QPEnd()%>
<%=Html.QPList() %>
<%=Html.QDateGrid<QMAPP.FJC.Web.Models.TianJin.StorageModel>(Model)%>
<%=Html.QPEnd() %>
<%=Html.Hidden("selectKey")%>
<%=Html.Hidden("fileName")%>
<%=Html.Hidden("ORDER_TYPE")%>
<script language="javascript" type="text/javascript">
$(function () {
var type = document.getElementById("ORDER_TYPE").value;
//获取物料下拉数据源
$('#MATERIAL_CODE').combotree({
url: "/Dict/GetFisMaterialTree?ordertype=" + type,
panelHeight: '250',
panelWidth: '500',
});
List(1);
});
//导出
function Export() {
document.getElementById("selectKey").value = getSelectKey();
submitByButton("ExportExcel");
}
//查询
function Search() {
//var endtime = document.getElementById("PLANTIMEEND").value;
//if (parseDate($("#PLANTIMESTART").val()) > parseDate($("#PLANTIMEEND").val()) && endtime != "") {
// alert("开始时间不能大于结束时间!");
// return;
//}
List(1)
}
$(function () {
$('#FACTORY_CODE').combobox({
panelWidth: '350'
});
});
</script>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ToolContent" runat="server">
<table cellpadding="0" cellspacing="0">
<tr>
<td align="center">
<%=Html.QTButtonSearch("Storage", "List", "Search()", QMAPP.Common.Web.SystemLimit.isLimt)%>
<%=Html.QTButton("export", "ExportExcel", QMFrameWork.WebUI.IconCls.redo, "Export()", QMAPP.Common.Web.SystemLimit.isLimt)%>
</td>
</tr>
</table>
</asp:Content>

103
APPQ5/QMAPP.FJC.Web/Views/StorageLog/StorageLogList.aspx

@ -0,0 +1,103 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/AppMaster.Master"
Inherits="System.Web.Mvc.ViewPage<QMAPP.FJC.Web.Models.TianJin.StorageLogModel>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
订单生产计划列表
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<%=Html.QPSeach(80, true)%>
<table id="condiTable">
<tr>
<th align="right">
<%=Html.QV(p => p.ProductCode)%>
</th>
<td>
<%=Html.QC(p => p.ProductCode)%>
</td>
<th align="right">
<%=Html.QV(p => p.State)%>
</th>
<td>
<%=Html.QC(p => p.State)%>
</td>
<th align="right">
<%=Html.QV(p => p.MATERIALCODE)%>
</th>
<td>
<%=Html.QC(p => p.MATERIALCODE)%>
</td>
<th align="right">
<%=Html.QV(p => p.BeginTime)%>
</th>
<td>
<%=Html.QC(p => p.BeginTime)%>
</td>
<th align="right">
<%=Html.QV(p => p.EndTime)%>
</th>
<td>
<%=Html.QC(p => p.EndTime)%>
</td>
</tr>
</table>
<%=Html.QPEnd()%>
<%=Html.QPList() %>
<%=Html.QDateGrid<QMAPP.FJC.Web.Models.TianJin.StorageLogModel>(Model)%>
<%=Html.QPEnd() %>
<%=Html.Hidden("selectKey")%>
<%=Html.Hidden("fileName")%>
<%=Html.Hidden("ORDER_TYPE")%>
<script language="javascript" type="text/javascript">
$(function () {
var type = document.getElementById("ORDER_TYPE").value;
//获取物料下拉数据源
$('#MATERIAL_CODE').combotree({
url: "/Dict/GetFisMaterialTree?ordertype=" + type,
panelHeight: '250',
panelWidth: '500',
});
List(1);
});
//导出
function Export() {
document.getElementById("selectKey").value = getSelectKey();
submitByButton("ExportExcel");
}
//查询
function Search() {
//var endtime = document.getElementById("PLANTIMEEND").value;
//if (parseDate($("#PLANTIMESTART").val()) > parseDate($("#PLANTIMEEND").val()) && endtime != "") {
// alert("开始时间不能大于结束时间!");
// return;
//}
List(1)
}
$(function () {
$('#FACTORY_CODE').combobox({
panelWidth: '350'
});
});
</script>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ToolContent" runat="server">
<table cellpadding="0" cellspacing="0">
<tr>
<td align="center">
<%=Html.QTButtonSearch("StorageLog", "List", "Search()", QMAPP.Common.Web.SystemLimit.isLimt)%>
<%=Html.QTButton("export", "ExportExcel", QMFrameWork.WebUI.IconCls.redo, "Export()", QMAPP.Common.Web.SystemLimit.isLimt)%>
</td>
</tr>
</table>
</asp:Content>

10
APPQ5/QMAPP.WinForm/App.config

@ -184,13 +184,13 @@
</bindings>
<client>
<endpoint address="http://localhost:8938/GeneralService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeneralService" contract="CenterGeneralService.IGeneralService" name="BasicHttpBinding_IGeneralService" />
<endpoint address="http://localhost:8938/LoginService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeneralService" contract="LoginService.ILoginService" name="BasicHttpBinding_ILoginService" />
<endpoint address="net.tcp://10.111.144.99:4444/OpcService" binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IOpcService" contract="ServiceOpc.IOpcService" name="NetTcpBinding_IOpcService" />
<!--<endpoint address="http://123.56.115.74:8989/GeneralService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeneralService" contract="CenterGeneralService.IGeneralService" name="BasicHttpBinding_IGeneralService" />
<endpoint address="http://123.56.115.74:8989/LoginService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeneralService" contract="LoginService.ILoginService" name="BasicHttpBinding_ILoginService" />
<endpoint address="net.tcp://10.111.144.99:4444/OpcService" binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IOpcService" contract="ServiceOpc.IOpcService" name="NetTcpBinding_IOpcService" />-->
<!--<endpoint address="net.tcp://localhost:4444/OpcService" binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IOpcService" contract="ServiceOpc.IOpcService" name="NetTcpBinding_IOpcService" />
<endpoint address="net.tcp://localhost:4444/OpcService" binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IOpcService" contract="ServiceOpc.IOpcService" name="NetTcpBinding_IOpcService" />
<endpoint address="http://localhost:8938/GeneralService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeneralService" contract="CenterGeneralService.IGeneralService" name="BasicHttpBinding_IGeneralService" />
<endpoint address="http://localhost:8938/LoginService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeneralService" contract="LoginService.ILoginService" name="BasicHttpBinding_ILoginService" />-->
<endpoint address="http://localhost:8938/LoginService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeneralService" contract="LoginService.ILoginService" name="BasicHttpBinding_ILoginService" />
</client>
</system.serviceModel>

7
APPQ5/QMAPP.WinForm/Dictionary.xml

@ -276,6 +276,13 @@
<items key="9" value="其它" />
</Dictionary>
<Dictionary Name="TJINTTYPE">
<items key="" value="" />
<items key="正常入库" value="正常入库" />
<items key="退返入库" value="退返入库" />
<items key="其它" value="其它" />
</Dictionary>
<Dictionary Name="PRODUCTCHECKTYPE">
<items key="0" value="首件" />

5
APPQ5/QMAPP.WinForm/Forms/TianJin/TJFrmPlace.cs

@ -1884,11 +1884,11 @@ namespace QMAPP.WinForm.Forms.TianJin
nfindex = 0;
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
DataTable tbl = agent.InvokeServiceFunction<DataTable>(QMAPP.ServicesAgent.FrmPlaceManage.FrmPlaceBLL_GetDaspssteCarIndexByPlanName.ToString(), nfpastecard.PLANTNAME.ToString());
DataTable tbl = agent.InvokeServiceFunction<DataTable>(QMAPP.ServicesAgent.FrmPlaceManage.TJFrmPlaceBLL_GetDaspssteCarIndexByPlanName.ToString(), nfpastecard.PLANTNAME.ToString());
if (tbl.Rows.Count == 0)
{
nfpastecard.PASTECARDNO = DateTime.Now.ToString("yyyyMMdd") + "0001";
int delResult = agent.InvokeServiceFunction<int>(QMAPP.ServicesAgent.FrmPlaceManage.FrmPlaceBLL_InsertDaspssteCarIndexByPlanName.ToString(), nfpastecard);
int delResult = agent.InvokeServiceFunction<int>(QMAPP.ServicesAgent.FrmPlaceManage.TJFrmPlaceBLL_InsertDaspssteCarIndexByPlanName.ToString(), nfpastecard);
}
else
{
@ -2203,6 +2203,7 @@ namespace QMAPP.WinForm.Forms.TianJin
WORKCENTER_CODE = "IPFY02";
}
GetInitData();
GetLastPastCard();
}
#endregion

420
APPQ5/QMAPP.WinForm/Forms/TianJin/TJOutWarehouseForm.Designer.cs

@ -0,0 +1,420 @@
namespace QMAPP.WinForm.Forms.TianJin
{
partial class TJOutWarehouseForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TJOutWarehouseForm));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
this.label1 = new System.Windows.Forms.Label();
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.tsbSearch = new System.Windows.Forms.ToolStripButton();
this.tsbOutWarehouse = new System.Windows.Forms.ToolStripButton();
this.DGMendRecorder = new System.Windows.Forms.DataGridView();
this.panelSearchTitle = new System.Windows.Forms.Panel();
this.lblSearchTitle = new System.Windows.Forms.Label();
this.panelSearch = new System.Windows.Forms.Panel();
this.txtPRODUCTCODE = new System.Windows.Forms.TextBox();
this.panel1 = new System.Windows.Forms.Panel();
this.dtpCREATEDATEEND = new DateTimePickerA();
this.dtpCREATEDATESTART = new DateTimePickerA();
this.label4 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.comINTTYPE = new System.Windows.Forms.ComboBox();
this.label5 = new System.Windows.Forms.Label();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.CreateUser = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.CREATEDATE = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Pid = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.toolStrip1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.DGMendRecorder)).BeginInit();
this.panelSearchTitle.SuspendLayout();
this.panelSearch.SuspendLayout();
this.panel1.SuspendLayout();
this.SuspendLayout();
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.Location = new System.Drawing.Point(32, 17);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(39, 20);
this.label1.TabIndex = 0;
this.label1.Text = "条码";
//
// toolStrip1
//
this.toolStrip1.AutoSize = false;
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsbSearch,
this.tsbOutWarehouse});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(984, 70);
this.toolStrip1.Stretch = true;
this.toolStrip1.TabIndex = 2;
this.toolStrip1.Text = "toolStrip1";
//
// tsbSearch
//
this.tsbSearch.AutoSize = false;
this.tsbSearch.Font = new System.Drawing.Font("微软雅黑", 12F);
this.tsbSearch.Image = ((System.Drawing.Image)(resources.GetObject("tsbSearch.Image")));
this.tsbSearch.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
this.tsbSearch.ImageTransparentColor = System.Drawing.Color.Magenta;
this.tsbSearch.Name = "tsbSearch";
this.tsbSearch.Size = new System.Drawing.Size(100, 60);
this.tsbSearch.Text = "查询";
this.tsbSearch.Click += new System.EventHandler(this.tsbSearch_Click);
//
// tsbOutWarehouse
//
this.tsbOutWarehouse.AutoSize = false;
this.tsbOutWarehouse.Font = new System.Drawing.Font("微软雅黑", 12F);
this.tsbOutWarehouse.Image = ((System.Drawing.Image)(resources.GetObject("tsbOutWarehouse.Image")));
this.tsbOutWarehouse.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
this.tsbOutWarehouse.ImageTransparentColor = System.Drawing.Color.Magenta;
this.tsbOutWarehouse.Name = "tsbOutWarehouse";
this.tsbOutWarehouse.Size = new System.Drawing.Size(100, 60);
this.tsbOutWarehouse.Text = "出库";
this.tsbOutWarehouse.Click += new System.EventHandler(this.tsbOutWarehouse_Click);
//
// DGMendRecorder
//
this.DGMendRecorder.AllowUserToAddRows = false;
this.DGMendRecorder.AllowUserToDeleteRows = false;
this.DGMendRecorder.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
this.DGMendRecorder.BackgroundColor = System.Drawing.SystemColors.ButtonFace;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.DGMendRecorder.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.DGMendRecorder.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.DGMendRecorder.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.,
this.,
this.,
this.,
this.CreateUser,
this.CREATEDATE,
this.Pid});
this.DGMendRecorder.Dock = System.Windows.Forms.DockStyle.Fill;
this.DGMendRecorder.Location = new System.Drawing.Point(0, 0);
this.DGMendRecorder.Name = "DGMendRecorder";
this.DGMendRecorder.ReadOnly = true;
dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle8.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.DGMendRecorder.RowHeadersDefaultCellStyle = dataGridViewCellStyle8;
this.DGMendRecorder.RowTemplate.Height = 23;
this.DGMendRecorder.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.DGMendRecorder.Size = new System.Drawing.Size(984, 477);
this.DGMendRecorder.TabIndex = 3;
this.DGMendRecorder.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.DG_RowPostPaint);
//
// panelSearchTitle
//
this.panelSearchTitle.BackColor = System.Drawing.SystemColors.ScrollBar;
this.panelSearchTitle.Controls.Add(this.lblSearchTitle);
this.panelSearchTitle.Dock = System.Windows.Forms.DockStyle.Top;
this.panelSearchTitle.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.panelSearchTitle.Location = new System.Drawing.Point(0, 70);
this.panelSearchTitle.Name = "panelSearchTitle";
this.panelSearchTitle.Size = new System.Drawing.Size(984, 35);
this.panelSearchTitle.TabIndex = 8;
//
// lblSearchTitle
//
this.lblSearchTitle.AutoSize = true;
this.lblSearchTitle.Font = new System.Drawing.Font("微软雅黑", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblSearchTitle.Location = new System.Drawing.Point(15, 7);
this.lblSearchTitle.Name = "lblSearchTitle";
this.lblSearchTitle.Size = new System.Drawing.Size(69, 20);
this.lblSearchTitle.TabIndex = 0;
this.lblSearchTitle.Text = "查询条件";
//
// panelSearch
//
this.panelSearch.BackColor = System.Drawing.SystemColors.InactiveBorder;
this.panelSearch.Controls.Add(this.dtpCREATEDATEEND);
this.panelSearch.Controls.Add(this.dtpCREATEDATESTART);
this.panelSearch.Controls.Add(this.label4);
this.panelSearch.Controls.Add(this.label7);
this.panelSearch.Controls.Add(this.comINTTYPE);
this.panelSearch.Controls.Add(this.label5);
this.panelSearch.Controls.Add(this.txtPRODUCTCODE);
this.panelSearch.Controls.Add(this.label1);
this.panelSearch.Dock = System.Windows.Forms.DockStyle.Top;
this.panelSearch.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.panelSearch.Location = new System.Drawing.Point(0, 105);
this.panelSearch.Name = "panelSearch";
this.panelSearch.Size = new System.Drawing.Size(984, 60);
this.panelSearch.TabIndex = 9;
//
// txtPRODUCTCODE
//
this.txtPRODUCTCODE.Font = new System.Drawing.Font("宋体", 11F);
this.txtPRODUCTCODE.Location = new System.Drawing.Point(78, 18);
this.txtPRODUCTCODE.Name = "txtPRODUCTCODE";
this.txtPRODUCTCODE.Size = new System.Drawing.Size(170, 24);
this.txtPRODUCTCODE.TabIndex = 10;
//
// panel1
//
this.panel1.Controls.Add(this.DGMendRecorder);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(0, 165);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(984, 477);
this.panel1.TabIndex = 10;
//
// dtpCREATEDATEEND
//
this.dtpCREATEDATEEND.CustomFormat = " ";
this.dtpCREATEDATEEND.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold);
this.dtpCREATEDATEEND.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATEEND.FormatString = "yyyy年MM月dd日";
this.dtpCREATEDATEEND.Location = new System.Drawing.Point(802, 17);
this.dtpCREATEDATEEND.Name = "dtpCREATEDATEEND";
this.dtpCREATEDATEEND.OriginalFormat = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATEEND.Size = new System.Drawing.Size(160, 26);
this.dtpCREATEDATEEND.TabIndex = 20;
this.dtpCREATEDATEEND.ValueX = null;
//
// dtpCREATEDATESTART
//
this.dtpCREATEDATESTART.CustomFormat = " ";
this.dtpCREATEDATESTART.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold);
this.dtpCREATEDATESTART.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATESTART.FormatString = "yyyy年MM月dd日";
this.dtpCREATEDATESTART.Location = new System.Drawing.Point(604, 17);
this.dtpCREATEDATESTART.Name = "dtpCREATEDATESTART";
this.dtpCREATEDATESTART.OriginalFormat = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATESTART.Size = new System.Drawing.Size(160, 26);
this.dtpCREATEDATESTART.TabIndex = 19;
this.dtpCREATEDATESTART.ValueX = null;
//
// label4
//
this.label4.AutoSize = true;
this.label4.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label4.Location = new System.Drawing.Point(528, 20);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(69, 20);
this.label4.TabIndex = 15;
this.label4.Text = "出库时间";
//
// label7
//
this.label7.AutoSize = true;
this.label7.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label7.Location = new System.Drawing.Point(276, 20);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(69, 20);
this.label7.TabIndex = 16;
this.label7.Text = "出库类型";
//
// comINTTYPE
//
this.comINTTYPE.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comINTTYPE.Font = new System.Drawing.Font("宋体", 11F);
this.comINTTYPE.FormattingEnabled = true;
this.comINTTYPE.Items.AddRange(new object[] {
"否",
"是"});
this.comINTTYPE.Location = new System.Drawing.Point(352, 19);
this.comINTTYPE.Name = "comINTTYPE";
this.comINTTYPE.Size = new System.Drawing.Size(169, 23);
this.comINTTYPE.TabIndex = 17;
//
// label5
//
this.label5.AutoSize = true;
this.label5.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label5.Location = new System.Drawing.Point(771, 20);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(24, 20);
this.label5.TabIndex = 18;
this.label5.Text = "至";
//
// 零件号
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "ProductCode";
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this..DefaultCellStyle = dataGridViewCellStyle2;
this..FillWeight = 90F;
this..HeaderText = "零件号";
this..Name = "零件号";
this..ReadOnly = true;
this..Width = 110;
//
// 物料号
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "MATERIALCODE";
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.Font = new System.Drawing.Font("宋体", 15.75F);
this..DefaultCellStyle = dataGridViewCellStyle3;
this..HeaderText = "物料号";
this..Name = "物料号";
this..ReadOnly = true;
this..Width = 120;
//
// 物料名称
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "MATERIALNAME";
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle4.Font = new System.Drawing.Font("宋体", 15.75F);
dataGridViewCellStyle4.Format = "f";
dataGridViewCellStyle4.NullValue = null;
this..DefaultCellStyle = dataGridViewCellStyle4;
this..HeaderText = "物料名称";
this..Name = "物料名称";
this..ReadOnly = true;
this..Width = 120;
//
// 出库类型
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "OutStorageType";
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.Font = new System.Drawing.Font("宋体", 15.75F);
this..DefaultCellStyle = dataGridViewCellStyle5;
this..HeaderText = "出库类型";
this..Name = "出库类型";
this..ReadOnly = true;
this..Width = 110;
//
// CreateUser
//
this.CreateUser.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this.CreateUser.DataPropertyName = "CREATEUSERNAME";
dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle6.Font = new System.Drawing.Font("宋体", 15.75F);
this.CreateUser.DefaultCellStyle = dataGridViewCellStyle6;
this.CreateUser.HeaderText = "操作人";
this.CreateUser.Name = "CreateUser";
this.CreateUser.ReadOnly = true;
this.CreateUser.Width = 110;
//
// CREATEDATE
//
this.CREATEDATE.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this.CREATEDATE.DataPropertyName = "CREATEDATE";
dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle7.Font = new System.Drawing.Font("宋体", 15.75F);
this.CREATEDATE.DefaultCellStyle = dataGridViewCellStyle7;
this.CREATEDATE.HeaderText = "操作时间";
this.CREATEDATE.Name = "CREATEDATE";
this.CREATEDATE.ReadOnly = true;
this.CREATEDATE.Width = 180;
//
// Pid
//
this.Pid.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.Pid.DataPropertyName = "PID";
this.Pid.HeaderText = "Pid";
this.Pid.Name = "Pid";
this.Pid.ReadOnly = true;
this.Pid.Visible = false;
this.Pid.Width = 60;
//
// TJOutWarehouseForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(984, 642);
this.Controls.Add(this.panel1);
this.Controls.Add(this.panelSearch);
this.Controls.Add(this.panelSearchTitle);
this.Controls.Add(this.toolStrip1);
this.Name = "TJOutWarehouseForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "出库";
this.Load += new System.EventHandler(this.Form_Load);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.DGMendRecorder)).EndInit();
this.panelSearchTitle.ResumeLayout(false);
this.panelSearchTitle.PerformLayout();
this.panelSearch.ResumeLayout(false);
this.panelSearch.PerformLayout();
this.panel1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.ToolStrip toolStrip1;
private System.Windows.Forms.ToolStripButton tsbSearch;
private System.Windows.Forms.ToolStripButton tsbOutWarehouse;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.DataGridView DGMendRecorder;
private System.Windows.Forms.Panel panelSearchTitle;
private System.Windows.Forms.Label lblSearchTitle;
private System.Windows.Forms.Panel panelSearch;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.TextBox txtPRODUCTCODE;
private DateTimePickerA dtpCREATEDATEEND;
private DateTimePickerA dtpCREATEDATESTART;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.ComboBox comINTTYPE;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn CreateUser;
private System.Windows.Forms.DataGridViewTextBoxColumn CREATEDATE;
private System.Windows.Forms.DataGridViewTextBoxColumn Pid;
}
}

298
APPQ5/QMAPP.WinForm/Forms/TianJin/TJOutWarehouseForm.cs

@ -0,0 +1,298 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Drawing;
using System.Windows.Forms;
using QMAPP.FJC.Entity;
using QMAPP.FJC.Entity.Injection;
using QMAPP.FJC.Entity.Operation;
using QMAPP.ServicesAgent;
using QMAPP.WinForm.Common;
using QMFrameWork.Common.Serialization;
using QMFrameWork.Data;
using QMAPP.Entity;
using QMAPP.FJC.Entity.ProduceManage;
using QMAPP.MD.Entity.TianJin;
namespace QMAPP.WinForm.Forms.TianJin
{
/// <summary>
/// 模块编号:M13-3
/// 作 用:出库操作
/// 作 者:王丹丹
/// 编写日期:2015年07月13日
///</summary>
public partial class TJOutWarehouseForm : Form
{
Storage searchModel = new Storage();//查询条件
Storage product = new Storage();
Main main = new Main();
int isValidate = 0;//0:未校验 1:已校验
public TJOutWarehouseForm()
{
InitializeComponent();
}
#region 窗体载入
private void Form_Load(object sender, EventArgs e)
{
//初始化控件属性
this.DGMendRecorder.AutoGenerateColumns = false;
//初始化分页
//this.pager1.Init();
//加载默认查询条件
SetSearchModel();
}
#endregion
#region 绑定数据
/// <summary>
/// 绑定数据列表
/// </summary>
/// <returns></returns>
private DataPage BindGirdData()
{
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
DataResult<Storage> resultProduct = new DataResult<Storage>();
DataResult<Main> resultMain = new DataResult<Main>();
List<Product> listProduct = new List<Product>();
List<Main> listMain = new List<Main>();
DataPage dataPage = new DataPage();
//获取前台分页设置信息
//dataPage = pager1.DataPage;
try
{
//获取零件信息
var result = agent.InvokeServiceFunction<DataResult<DataPage>>("StorageBLL_GetList", searchModel, dataPage);
//本体
//if (resultProduct.Result.PRODUCTTYPE == EnumGeter.ProductType.biaopi.GetHashCode().ToString() && resultProduct.Result.USINGSTATE == EnumGeter.USINGSTATE.USING.GetHashCode().ToString())
//{
// Main mainModel = new Main();
// mainModel.EPIDERMISCODE = resultProduct.Result.PRODUCTCODE;
// //获取本体信息
// resultMain = agent.InvokeServiceFunction<DataResult<Main>>(B9IPCService.OutWarehouseBLL_GetMainInfo.ToString(), mainModel);
// if (!resultMain.IsSuccess)
// {
// MessageBox.Show(resultMain.Msg, resultMain.Msg, MessageBoxButtons.OK, MessageBoxIcon.Warning);
// }
// else
// {
// mainModel = resultMain.Result;
// //绑定本体信息到列表中
// listMain.Add(resultMain.Result);
// this.DGMendRecorder.DataSource = listMain;
// }
//}
//else
//{
// //绑定零件信息到列表中
// listProduct.Add(resultProduct.Result);
// this.DGMendRecorder.DataSource = listProduct;
//}
}
catch (Exception ex)
{
throw ex;
}
return dataPage;
}
#endregion
#region 事件
/// <summary>
/// 分页事件
/// </summary>
/// <param name="e"></param>
/// <returns></returns>
private DataPage pager1_EventPaging(Controls.EventPagingArg e)
{
return BindGirdData();
}
/// <summary>
/// 查询事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tsbSearch_Click(object sender, EventArgs e)
{
isValidate = 0;
//设置查询条件
SetSearchModel();
//查询条件校验
bool issuccess = ExistSearchModel();
DataResult<Product> resultProduct = new DataResult<Product>();
DataResult<Main> resultMain = new DataResult<Main>();
//获取前台分页设置信息
//DataPage dataPage = pager1.DataPage;
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
List<Product> listProduct = new List<Product>();
List<Main> listMain = new List<Main>();
if (issuccess)
{
//this.pager1.Init();
//获取零件信息
resultProduct = agent.InvokeServiceFunction<DataResult<Product>>(B9IPCService.OutWarehouseBLL_GetProductInfo.ToString(), searchModel);
if (!resultProduct.IsSuccess)
{
MessageBox.Show(resultProduct.Msg, resultProduct.Msg, MessageBoxButtons.OK, MessageBoxIcon.Warning);
isValidate = 0;
}
else
{
//product = resultProduct.Result;
////本体
//if (product.PRODUCTTYPE == EnumGeter.ProductType.biaopi.GetHashCode().ToString() && product.USINGSTATE == EnumGeter.USINGSTATE.USING.GetHashCode().ToString())
//{
// main.EPIDERMISCODE = product.PRODUCTCODE;
// //获取本体信息
// resultMain = agent.InvokeServiceFunction<DataResult<Main>>(B9IPCService.OutWarehouseBLL_GetMainInfo.ToString(), main);
// if (!resultMain.IsSuccess)
// {
// MessageBox.Show(resultMain.Msg, resultMain.Msg, MessageBoxButtons.OK, MessageBoxIcon.Warning);
// isValidate = 0;
// }
// else
// {
// main = resultMain.Result;
// //绑定本体信息到列表中
// listMain.Add(resultMain.Result);
// this.DGMendRecorder.DataSource = listMain;
// isValidate = 1;
// }
//}
//else
//{
// //绑定零件信息到列表中
// listProduct.Add(resultProduct.Result);
// this.DGMendRecorder.DataSource = listProduct;
// isValidate = 1;
//}
}
}
}
/// <summary>
/// 出库
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tsbOutWarehouse_Click(object sender, EventArgs e)
{
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
//出库校验
bool issuccess = ExistOutWarehouse();
DataResult result = new DataResult();
if (issuccess)
{
//if (product.PRODUCTTYPE == EnumGeter.ProductType.biaopi.GetHashCode().ToString() && product.USINGSTATE == EnumGeter.USINGSTATE.USING.GetHashCode().ToString())
//{
// //本体
// result = agent.InvokeServiceFunction<DataResult>(B9IPCService.OutWarehouseBLL_MainOutWarehouse.ToString(), main);
//}
//else
//{
// //零件
// result = agent.InvokeServiceFunction<DataResult>(B9IPCService.OutWarehouseBLL_ProductOutWarehouse.ToString(), product);
//}
MessageBox.Show(result.Msg, result.Msg, MessageBoxButtons.OK, MessageBoxIcon.Warning);
BindGirdData();
isValidate = 0;
this.txtPRODUCTCODE.Text = "";
}
}
#endregion
#region 设置查询条件
/// <summary>
/// 设置查询条件
/// </summary>
private void SetSearchModel()
{
searchModel = new Storage();
//条码
if (string.IsNullOrEmpty(this.txtPRODUCTCODE.Text.Trim()) == false)
{
searchModel.ProductCode = this.txtPRODUCTCODE.Text.Trim();
}
//入库类型
if (this.comINTTYPE.SelectedValue != null && string.IsNullOrEmpty(this.comINTTYPE.SelectedValue.ToString().Trim()) == false)
{
searchModel.InStorageType = this.comINTTYPE.SelectedValue.ToString().Trim();
}
//操作开始时间
if (string.IsNullOrEmpty(this.dtpCREATEDATESTART.Text.Trim()) == false)
{
searchModel.BeginTime = Convert.ToDateTime((this.dtpCREATEDATESTART.Value).ToString("yyyy-MM-dd") + " 00:00:00");
}
//操作结束时间
if (string.IsNullOrEmpty(this.dtpCREATEDATEEND.Text.Trim()) == false)
{
searchModel.EndTime = Convert.ToDateTime((this.dtpCREATEDATEEND.Value).ToString("yyyy-MM-dd") + " 23:59:59");
}
}
#endregion
/// <summary>
/// 行序号
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void DG_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X, e.RowBounds.Location.Y, this.DGMendRecorder.RowHeadersWidth - 4, e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(), new Font("宋体", 12, FontStyle.Bold), rectangle, this.DGMendRecorder.RowHeadersDefaultCellStyle.ForeColor, TextFormatFlags.VerticalCenter | TextFormatFlags.Right);
}
#region 查询条件校验
/// <summary>
/// 查询条件校验
/// </summary>
private bool ExistSearchModel()
{
//条码
if (string.IsNullOrEmpty(this.txtPRODUCTCODE.Text.Trim()))
{
MessageBox.Show(Resource1.ProductCodeNullValidate, Resource1.ProductCodeNullValidate, MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
return true;
}
#endregion
#region 出库校验
/// <summary>
/// 出库校验
/// </summary>
private bool ExistOutWarehouse()
{
//条码
if (string.IsNullOrEmpty(this.txtPRODUCTCODE.Text.Trim()))
{
MessageBox.Show(Resource1.ProductCodeNullValidate, Resource1.ProductCodeNullValidate, MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
//条码是否已验证
if (isValidate==0)
{
MessageBox.Show(Resource1.ProductCodeValidate, Resource1.ProductCodeValidate, MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
return true;
}
#endregion
}
}

307
APPQ5/QMAPP.WinForm/Forms/TianJin/TJOutWarehouseForm.resx

@ -0,0 +1,307 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="tsbSearch.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
rkJggg==
</value>
</data>
<data name="tsbOutWarehouse.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<metadata name="零件号.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="物料号.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="物料名称.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="出库类型.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="CreateUser.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="CREATEDATE.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Pid.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>25</value>
</metadata>
</root>

11
APPQ5/QMAPP.WinForm/Forms/TianJin/TJPrintPlanLabel.cs

@ -40,7 +40,7 @@ namespace QMAPP.WinForm.Forms.TianJin
routes = routes.OrderBy(p => p.ROUTE_CODE).ToList();
cbsource = routes;
cbsource.Insert(0, new QMAPP.FJC.Entity.Basic.ProcessRoute { ROUTE_NAME = "", ROUTE_CODE = "" });
//cbsource.Insert(0, new QMAPP.FJC.Entity.Basic.ProcessRoute { ROUTE_NAME = "", ROUTE_CODE = "" });
cbRoutes.DisplayMember = "ROUTE_NAME";
cbRoutes.ValueMember = "ROUTE_CODE";
cbRoutes.DataSource = cbsource;
@ -169,7 +169,7 @@ namespace QMAPP.WinForm.Forms.TianJin
}
//OrderNo,OrderType,PlanDate,Name,Class,CarModel,Text1,Text2,Text3,Text4,Text5,Text6
dataline.AppendFormat("\"{0}\",\"{1}\",\"{2:yyyy-MM-dd HH:mm:ss}\",\"{3}\",\"{4}\",\"{5}\",\"{6}\",\"{7}\",\"{8}\",\"{9}\",\"{10}\",\"{11}\"\r\n",
dataline.AppendFormat("\"{0}\",\"{1}\",\"{2:yyyy-MM-dd HH:mm:ss}\",\"{3}\",\"{4}\",\"{5}\",\"{6}\",\"{7}\",\"{8}\",\"{9}\",\"{10}\",\"{11}\",\"{12}\"\r\n",
label.OrderNo,//计划号
label.OrderType,//计划类型(0:FIS,1:STOCK,2:INSERT)
label.PlanDate,//计划日期
@ -181,7 +181,8 @@ namespace QMAPP.WinForm.Forms.TianJin
texts[2],//装配详细信息
texts[3],//装配详细信息
texts[4],//装配详细信息
texts[5]//装配详细信息
texts[5],//装配详细信息
label.MATERIALCODE//
);
@ -448,6 +449,8 @@ namespace QMAPP.WinForm.Forms.TianJin
LabelData labeldata = new LabelData();
labeldata.MATERIALCODE = order.MATERIAL_CODE;
labeldata.PlanDate = order.PLAN_DATE;
if (book != null)
@ -498,6 +501,8 @@ namespace QMAPP.WinForm.Forms.TianJin
{
public string OrderNo { get; set; }
public string MATERIALCODE { get; set; }
public DateTime PlanDate { get; set; }
public string Class { get; set; }

433
APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInForm.Designer.cs

@ -0,0 +1,433 @@
namespace QMAPP.WinForm.Forms.TianJin
{
partial class TJProductInForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TJProductInForm));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
this.label3 = new System.Windows.Forms.Label();
this.txtProductCode = new System.Windows.Forms.TextBox();
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.tsbSearch = new System.Windows.Forms.ToolStripButton();
this.tsbAdd = new System.Windows.Forms.ToolStripButton();
this.panelSearchTitle = new System.Windows.Forms.Panel();
this.lblSearchTitle = new System.Windows.Forms.Label();
this.panelSearch = new System.Windows.Forms.Panel();
this.dtpCREATEDATEEND = new DateTimePickerA();
this.dtpCREATEDATESTART = new DateTimePickerA();
this.label4 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.comINTTYPE = new System.Windows.Forms.ComboBox();
this.label5 = new System.Windows.Forms.Label();
this.panel1 = new System.Windows.Forms.Panel();
this.DGView = new System.Windows.Forms.DataGridView();
this.pager1 = new QMAPP.WinForm.Controls.Pager();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this. = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Pid = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.toolStrip1.SuspendLayout();
this.panelSearchTitle.SuspendLayout();
this.panelSearch.SuspendLayout();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.DGView)).BeginInit();
this.SuspendLayout();
//
// label3
//
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label3.Location = new System.Drawing.Point(8, 21);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(39, 20);
this.label3.TabIndex = 4;
this.label3.Text = "条码";
//
// txtProductCode
//
this.txtProductCode.Font = new System.Drawing.Font("宋体", 11F);
this.txtProductCode.Location = new System.Drawing.Point(54, 19);
this.txtProductCode.Name = "txtProductCode";
this.txtProductCode.Size = new System.Drawing.Size(237, 24);
this.txtProductCode.TabIndex = 3;
//
// toolStrip1
//
this.toolStrip1.AutoSize = false;
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsbSearch,
this.tsbAdd});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(998, 70);
this.toolStrip1.Stretch = true;
this.toolStrip1.TabIndex = 2;
this.toolStrip1.Text = "toolStrip1";
//
// tsbSearch
//
this.tsbSearch.AutoSize = false;
this.tsbSearch.Font = new System.Drawing.Font("微软雅黑", 12F);
this.tsbSearch.Image = ((System.Drawing.Image)(resources.GetObject("tsbSearch.Image")));
this.tsbSearch.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
this.tsbSearch.ImageTransparentColor = System.Drawing.Color.Magenta;
this.tsbSearch.Name = "tsbSearch";
this.tsbSearch.Size = new System.Drawing.Size(100, 60);
this.tsbSearch.Text = "查询";
this.tsbSearch.Click += new System.EventHandler(this.tsbSearch_Click);
//
// tsbAdd
//
this.tsbAdd.AutoSize = false;
this.tsbAdd.Font = new System.Drawing.Font("微软雅黑", 12F);
this.tsbAdd.Image = ((System.Drawing.Image)(resources.GetObject("tsbAdd.Image")));
this.tsbAdd.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
this.tsbAdd.ImageTransparentColor = System.Drawing.Color.Magenta;
this.tsbAdd.Name = "tsbAdd";
this.tsbAdd.Size = new System.Drawing.Size(100, 60);
this.tsbAdd.Text = "入库";
this.tsbAdd.Click += new System.EventHandler(this.tsbAdd_Click);
//
// panelSearchTitle
//
this.panelSearchTitle.BackColor = System.Drawing.SystemColors.ScrollBar;
this.panelSearchTitle.Controls.Add(this.lblSearchTitle);
this.panelSearchTitle.Dock = System.Windows.Forms.DockStyle.Top;
this.panelSearchTitle.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.panelSearchTitle.Location = new System.Drawing.Point(0, 70);
this.panelSearchTitle.Name = "panelSearchTitle";
this.panelSearchTitle.Size = new System.Drawing.Size(998, 35);
this.panelSearchTitle.TabIndex = 8;
//
// lblSearchTitle
//
this.lblSearchTitle.AutoSize = true;
this.lblSearchTitle.Font = new System.Drawing.Font("微软雅黑", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblSearchTitle.Location = new System.Drawing.Point(15, 7);
this.lblSearchTitle.Name = "lblSearchTitle";
this.lblSearchTitle.Size = new System.Drawing.Size(69, 20);
this.lblSearchTitle.TabIndex = 0;
this.lblSearchTitle.Text = "查询条件";
//
// panelSearch
//
this.panelSearch.BackColor = System.Drawing.SystemColors.InactiveBorder;
this.panelSearch.Controls.Add(this.dtpCREATEDATEEND);
this.panelSearch.Controls.Add(this.dtpCREATEDATESTART);
this.panelSearch.Controls.Add(this.label4);
this.panelSearch.Controls.Add(this.label7);
this.panelSearch.Controls.Add(this.comINTTYPE);
this.panelSearch.Controls.Add(this.label5);
this.panelSearch.Controls.Add(this.txtProductCode);
this.panelSearch.Controls.Add(this.label3);
this.panelSearch.Dock = System.Windows.Forms.DockStyle.Top;
this.panelSearch.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.panelSearch.Location = new System.Drawing.Point(0, 105);
this.panelSearch.Name = "panelSearch";
this.panelSearch.Size = new System.Drawing.Size(998, 60);
this.panelSearch.TabIndex = 9;
//
// dtpCREATEDATEEND
//
this.dtpCREATEDATEEND.CustomFormat = " ";
this.dtpCREATEDATEEND.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold);
this.dtpCREATEDATEEND.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATEEND.FormatString = "yyyy年MM月dd日";
this.dtpCREATEDATEEND.Location = new System.Drawing.Point(824, 18);
this.dtpCREATEDATEEND.Name = "dtpCREATEDATEEND";
this.dtpCREATEDATEEND.OriginalFormat = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATEEND.Size = new System.Drawing.Size(160, 26);
this.dtpCREATEDATEEND.TabIndex = 14;
this.dtpCREATEDATEEND.ValueX = null;
//
// dtpCREATEDATESTART
//
this.dtpCREATEDATESTART.CustomFormat = " ";
this.dtpCREATEDATESTART.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold);
this.dtpCREATEDATESTART.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATESTART.FormatString = "yyyy年MM月dd日";
this.dtpCREATEDATESTART.Location = new System.Drawing.Point(626, 18);
this.dtpCREATEDATESTART.Name = "dtpCREATEDATESTART";
this.dtpCREATEDATESTART.OriginalFormat = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dtpCREATEDATESTART.Size = new System.Drawing.Size(160, 26);
this.dtpCREATEDATESTART.TabIndex = 13;
this.dtpCREATEDATESTART.ValueX = null;
//
// label4
//
this.label4.AutoSize = true;
this.label4.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label4.Location = new System.Drawing.Point(550, 21);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(69, 20);
this.label4.TabIndex = 9;
this.label4.Text = "入库时间";
//
// label7
//
this.label7.AutoSize = true;
this.label7.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label7.Location = new System.Drawing.Point(298, 21);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(69, 20);
this.label7.TabIndex = 10;
this.label7.Text = "入库类型";
//
// comINTTYPE
//
this.comINTTYPE.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comINTTYPE.Font = new System.Drawing.Font("宋体", 11F);
this.comINTTYPE.FormattingEnabled = true;
this.comINTTYPE.Items.AddRange(new object[] {
"否",
"是"});
this.comINTTYPE.Location = new System.Drawing.Point(374, 20);
this.comINTTYPE.Name = "comINTTYPE";
this.comINTTYPE.Size = new System.Drawing.Size(169, 23);
this.comINTTYPE.TabIndex = 11;
//
// label5
//
this.label5.AutoSize = true;
this.label5.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label5.Location = new System.Drawing.Point(793, 21);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(24, 20);
this.label5.TabIndex = 12;
this.label5.Text = "至";
//
// panel1
//
this.panel1.Controls.Add(this.DGView);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(0, 165);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(998, 442);
this.panel1.TabIndex = 10;
//
// DGView
//
this.DGView.AllowUserToAddRows = false;
this.DGView.AllowUserToDeleteRows = false;
this.DGView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
this.DGView.BackgroundColor = System.Drawing.SystemColors.ButtonFace;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.DGView.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.DGView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.DGView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.,
this.,
this.,
this.,
this.,
this.,
this.Pid});
this.DGView.Dock = System.Windows.Forms.DockStyle.Fill;
this.DGView.Location = new System.Drawing.Point(0, 0);
this.DGView.Name = "DGView";
this.DGView.ReadOnly = true;
dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle8.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.DGView.RowHeadersDefaultCellStyle = dataGridViewCellStyle8;
this.DGView.RowTemplate.Height = 23;
this.DGView.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.DGView.Size = new System.Drawing.Size(998, 442);
this.DGView.TabIndex = 4;
this.DGView.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.DGView_RowPostPaint);
//
// pager1
//
this.pager1.DataPage = ((QMFrameWork.Data.DataPage)(resources.GetObject("pager1.DataPage")));
this.pager1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.pager1.Location = new System.Drawing.Point(0, 607);
this.pager1.Name = "pager1";
this.pager1.OSearch = null;
this.pager1.Size = new System.Drawing.Size(998, 35);
this.pager1.TabIndex = 7;
this.pager1.EventPaging += new QMAPP.WinForm.Controls.EventPagingHandler(this.pager1_EventPaging);
//
// 条码
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "ProductCode";
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this..DefaultCellStyle = dataGridViewCellStyle2;
this..FillWeight = 90F;
this..HeaderText = "条码";
this..Name = "条码";
this..ReadOnly = true;
this..Width = 220;
//
// 物料号
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "MATERIALCODE";
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.Font = new System.Drawing.Font("宋体", 15.75F);
this..DefaultCellStyle = dataGridViewCellStyle3;
this..HeaderText = "物料号";
this..Name = "物料号";
this..ReadOnly = true;
this..Width = 220;
//
// 物料名称
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "MATERIALNAME";
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle4.Font = new System.Drawing.Font("宋体", 15.75F);
this..DefaultCellStyle = dataGridViewCellStyle4;
this..HeaderText = "物料名称";
this..Name = "物料名称";
this..ReadOnly = true;
this..Width = 350;
//
// 入库类型
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "InStorageType";
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.Font = new System.Drawing.Font("宋体", 15.75F);
dataGridViewCellStyle5.Format = "f";
dataGridViewCellStyle5.NullValue = null;
this..DefaultCellStyle = dataGridViewCellStyle5;
this..HeaderText = "入库类型";
this..Name = "入库类型";
this..ReadOnly = true;
//
// 操作人
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "CREATEUSER";
dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle6.Font = new System.Drawing.Font("宋体", 15.75F);
this..DefaultCellStyle = dataGridViewCellStyle6;
this..HeaderText = "操作人";
this..Name = "操作人";
this..ReadOnly = true;
this..Width = 90;
//
// 入库时间
//
this..AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
this..DataPropertyName = "CREATEDATE";
dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle7.Font = new System.Drawing.Font("宋体", 15.75F);
this..DefaultCellStyle = dataGridViewCellStyle7;
this..HeaderText = "入库时间";
this..Name = "入库时间";
this..ReadOnly = true;
this..Width = 240;
//
// Pid
//
this.Pid.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.Pid.DataPropertyName = "PID";
this.Pid.HeaderText = "Pid";
this.Pid.Name = "Pid";
this.Pid.ReadOnly = true;
this.Pid.Visible = false;
this.Pid.Width = 60;
//
// TJProductInForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(998, 642);
this.Controls.Add(this.panel1);
this.Controls.Add(this.panelSearch);
this.Controls.Add(this.panelSearchTitle);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.pager1);
this.Name = "TJProductInForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "入库";
this.Load += new System.EventHandler(this.Form_Load);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.panelSearchTitle.ResumeLayout(false);
this.panelSearchTitle.PerformLayout();
this.panelSearch.ResumeLayout(false);
this.panelSearch.PerformLayout();
this.panel1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.DGView)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.ToolStrip toolStrip1;
private System.Windows.Forms.ToolStripButton tsbSearch;
private System.Windows.Forms.TextBox txtProductCode;
private System.Windows.Forms.Label label3;
private Controls.Pager pager1;
private System.Windows.Forms.Panel panelSearchTitle;
private System.Windows.Forms.Label lblSearchTitle;
private System.Windows.Forms.Panel panelSearch;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.ToolStripButton tsbAdd;
private System.Windows.Forms.DataGridView DGView;
private DateTimePickerA dtpCREATEDATEEND;
private DateTimePickerA dtpCREATEDATESTART;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.ComboBox comINTTYPE;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn ;
private System.Windows.Forms.DataGridViewTextBoxColumn Pid;
}
}

164
APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInForm.cs

@ -0,0 +1,164 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using QMAPP.Entity;
using QMAPP.MD.Entity.TianJin;
using QMAPP.WinForm.Common;
using QMFrameWork.Common.Serialization;
using QMFrameWork.Data;
namespace QMAPP.WinForm.Forms.TianJin
{
/// <summary>
/// 作 用:入库
/// 作 者:周晓东
/// 编写日期:20180404
///</summary>
public partial class TJProductInForm : Form
{
Storage searchModel = new Storage();//查询条件
public TJProductInForm()
{
InitializeComponent();
}
#region 窗体载入
private void Form_Load(object sender, EventArgs e)
{
//初始化控件属性
this.DGView.AutoGenerateColumns = false;
//初始化分页
this.pager1.Init();
//加载下拉框
BasicData basicData = new BasicData();
//入库类型
this.comINTTYPE.DataSource = basicData.GetDictionaryList("TJINTTYPE");
this.comINTTYPE.DisplayMember = "value";
this.comINTTYPE.ValueMember = "key";
//加载默认查询条件
SetSearchModel();
BindGirdData();
}
#endregion
#region 绑定数据
private DataPage BindGirdData()
{
List<Storage> recorders = null;//查询结果列表
DataPage dataPage = new DataPage();
//获取前台分页设置信息
dataPage = pager1.DataPage;
try
{
//State = 1 为入库记录
searchModel.State = "1";
#region 服务查询
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
var result = agent.InvokeServiceFunction<DataResult<DataPage>>("StorageBLL_GetList", searchModel, dataPage);
recorders = JsonConvertHelper.GetDeserialize<List<Storage>>(result.Result.Result.ToString());
#endregion
this.DGView.DataSource = recorders;
this.pager1.DataPage = dataPage;
}
catch (Exception ex)
{
throw ex;
}
return dataPage;
}
#endregion
/// <summary>
/// 分页事件
/// </summary>
/// <param name="e"></param>
/// <returns></returns>
private DataPage pager1_EventPaging(Controls.EventPagingArg e)
{
return BindGirdData();
}
/// <summary>
/// 查询事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tsbSearch_Click(object sender, EventArgs e)
{
SetSearchModel();
//this.pager1.Init();
BindGirdData();
}
/// <summary>
/// 设置查询条件
/// </summary>
private void SetSearchModel()
{
searchModel = new Storage();
//条码
if (string.IsNullOrEmpty(this.txtProductCode.Text.Trim()) == false)
{
searchModel.ProductCode = this.txtProductCode.Text.Trim();
}
//入库类型
if (this.comINTTYPE.SelectedValue != null && string.IsNullOrEmpty(this.comINTTYPE.SelectedValue.ToString().Trim()) == false)
{
searchModel.InStorageType = this.comINTTYPE.SelectedValue.ToString().Trim();
}
//操作开始时间
if (string.IsNullOrEmpty(this.dtpCREATEDATESTART.Text.Trim()) == false)
{
searchModel.BeginTime = Convert.ToDateTime((this.dtpCREATEDATESTART.Value).ToString("yyyy-MM-dd") + " 00:00:00");
}
//操作结束时间
if (string.IsNullOrEmpty(this.dtpCREATEDATEEND.Text.Trim()) == false)
{
searchModel.EndTime = Convert.ToDateTime((this.dtpCREATEDATEEND.Value).ToString("yyyy-MM-dd") + " 23:59:59");
}
}
/// <summary>
/// 入库
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tsbAdd_Click(object sender, EventArgs e)
{
//ProductInSendCodeForm editForm = new ProductInSendCodeForm();
//DialogResult result = editForm.ShowDialog();
//if (result == System.Windows.Forms.DialogResult.OK)//判断是否投料窗口已做操作
//{
// this.pager1.Init();
// BindGirdData();
//}
var form = new TJProductInSendCodeForm();
form.StartPosition = FormStartPosition.CenterScreen;
form.ShowDialog();
this.pager1.Init();
BindGirdData();
}
// 行序号
private void DGView_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X, e.RowBounds.Location.Y, this.DGView.RowHeadersWidth - 4, e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(), new Font("宋体", 12, FontStyle.Bold), rectangle, this.DGView.RowHeadersDefaultCellStyle.ForeColor, TextFormatFlags.VerticalCenter | TextFormatFlags.Right);
}
}
}

319
APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInForm.resx

@ -0,0 +1,319 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="tsbSearch.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
suR/AIh+8Buz+f8AAAAAAElFTkSuQmCC
</value>
</data>
<data name="tsbAdd.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<metadata name="条码.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="物料号.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="物料名称.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="入库类型.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="操作人.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="入库时间.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Pid.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="pager1.DataPage" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFJRTUZyYW1lV29yay5EYXRhLkF0dHJpYnV0ZXMsIFZlcnNpb249
MS4zLjMuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1udWxsBQEAAAAZUU1GcmFtZVdv
cmsuRGF0YS5EYXRhUGFnZQoAAAAaPFBhZ2VJbmRleD5rX19CYWNraW5nRmllbGQZPFBhZ2VTaXplPmtf
X0JhY2tpbmdGaWVsZBo8UGFnZUNvdW50PmtfX0JhY2tpbmdGaWVsZBw8UmVjb3JkQ291bnQ+a19fQmFj
a2luZ0ZpZWxkGDxLZXlOYW1lPmtfX0JhY2tpbmdGaWVsZB88U29ydEV4cHJlc3Npb24+a19fQmFja2lu
Z0ZpZWxkFzxSZXN1bHQ+a19fQmFja2luZ0ZpZWxkGTxDb3VudFNxbD5rX19CYWNraW5nRmllbGQbPElz
UGFyYWxsZWw+a19fQmFja2luZ0ZpZWxkIjxBY2N1cmF0ZVBhcnRpdGlvbj5rX19CYWNraW5nRmllbGQA
AAAAAQECAQAACAgICAEBAgAAAAEAAAAyAAAAAAAAAAAAAAAKCgoKAAAL
</value>
</data>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>25</value>
</metadata>
</root>

161
APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInSendCodeForm.Designer.cs

@ -0,0 +1,161 @@
namespace QMAPP.WinForm.Forms.TianJin
{
partial class TJProductInSendCodeForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TJProductInSendCodeForm));
this.txtCode = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.lblError = new System.Windows.Forms.Label();
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.tsbClose = new System.Windows.Forms.ToolStripButton();
this.btnSubmit = new System.Windows.Forms.Button();
this.comINTTYPE = new System.Windows.Forms.ComboBox();
this.label2 = new System.Windows.Forms.Label();
this.toolStrip1.SuspendLayout();
this.SuspendLayout();
//
// txtCode
//
this.txtCode.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtCode.Location = new System.Drawing.Point(160, 129);
this.txtCode.Name = "txtCode";
this.txtCode.Size = new System.Drawing.Size(332, 35);
this.txtCode.TabIndex = 7;
this.txtCode.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtCode_KeyDown);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.Location = new System.Drawing.Point(100, 132);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(54, 28);
this.label1.TabIndex = 6;
this.label1.Text = "条码";
//
// lblError
//
this.lblError.AutoSize = true;
this.lblError.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblError.Location = new System.Drawing.Point(21, 190);
this.lblError.Name = "lblError";
this.lblError.Size = new System.Drawing.Size(54, 28);
this.lblError.TabIndex = 9;
this.lblError.Text = "提示";
//
// toolStrip1
//
this.toolStrip1.AutoSize = false;
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsbClose});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(719, 56);
this.toolStrip1.Stretch = true;
this.toolStrip1.TabIndex = 10;
this.toolStrip1.Text = "toolStrip1";
//
// tsbClose
//
this.tsbClose.AutoSize = false;
this.tsbClose.Font = new System.Drawing.Font("微软雅黑", 12F);
this.tsbClose.Image = ((System.Drawing.Image)(resources.GetObject("tsbClose.Image")));
this.tsbClose.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
this.tsbClose.ImageTransparentColor = System.Drawing.Color.Magenta;
this.tsbClose.Name = "tsbClose";
this.tsbClose.Size = new System.Drawing.Size(100, 50);
this.tsbClose.Text = "关闭";
this.tsbClose.Click += new System.EventHandler(this.tsbClose_Click);
//
// btnSubmit
//
this.btnSubmit.Font = new System.Drawing.Font("微软雅黑", 14F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSubmit.Location = new System.Drawing.Point(498, 129);
this.btnSubmit.Name = "btnSubmit";
this.btnSubmit.Size = new System.Drawing.Size(92, 35);
this.btnSubmit.TabIndex = 11;
this.btnSubmit.Text = "提交";
this.btnSubmit.UseVisualStyleBackColor = true;
this.btnSubmit.Click += new System.EventHandler(this.btnSubmit_Click);
//
// comINTTYPE
//
this.comINTTYPE.Font = new System.Drawing.Font("微软雅黑", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.comINTTYPE.FormattingEnabled = true;
this.comINTTYPE.Location = new System.Drawing.Point(160, 76);
this.comINTTYPE.Name = "comINTTYPE";
this.comINTTYPE.Size = new System.Drawing.Size(216, 35);
this.comINTTYPE.TabIndex = 16;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label2.Location = new System.Drawing.Point(58, 78);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(96, 28);
this.label2.TabIndex = 17;
this.label2.Text = "入库类型";
//
// ProductInSendCodeForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(719, 315);
this.Controls.Add(this.label2);
this.Controls.Add(this.comINTTYPE);
this.Controls.Add(this.btnSubmit);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.lblError);
this.Controls.Add(this.txtCode);
this.Controls.Add(this.label1);
this.Name = "ProductInSendCodeForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "入库";
this.Load += new System.EventHandler(this.ProductInSendCodeForm_Load_1);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TextBox txtCode;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label lblError;
private System.Windows.Forms.ToolStrip toolStrip1;
private System.Windows.Forms.ToolStripButton tsbClose;
private System.Windows.Forms.Button btnSubmit;
private System.Windows.Forms.ComboBox comINTTYPE;
private System.Windows.Forms.Label label2;
}
}

112
APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInSendCodeForm.cs

@ -0,0 +1,112 @@
using System;
using System.Drawing;
using System.Windows.Forms;
using QMAPP.Entity;
using QMAPP.MD.Entity.TianJin;
using QMAPP.WinForm.Common;
namespace QMAPP.WinForm.Forms.TianJin
{
public partial class TJProductInSendCodeForm : Form
{
public TJProductInSendCodeForm()
{
InitializeComponent();
}
#region 回车事件
/// <summary>
/// 回车事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void txtCode_KeyDown(object sender, KeyEventArgs e)
{
//if (e.KeyCode == Keys.Enter)
//{
// this.tsbSave_Click(sender, e);
//}
if (e.KeyCode == Keys.Enter)//如果输入的是回车键
{
SetProductIn();
}
}
private void SetProductIn()
{
if (string.IsNullOrEmpty(txtCode.Text))
{
txtCode.Focus();
txtCode.SelectAll();
return;
}
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
var scode = txtCode.Text.Trim().ToUpper();
var count = agent.InvokeServiceFunction<DataResult<int>>("StorageBLL_SelectCount", scode);
if (count.Result > 0)
{
txtCode.Text = "";
txtCode.Focus();
lblError.ForeColor = Color.Red;
lblError.Text = "库存中已存在此零件:"+ scode;
return;
}
try
{
Storage pi = new Storage();
pi.ProductCode = scode;
if (comINTTYPE.SelectedItem!=null)
{
pi.InStorageType = comINTTYPE.SelectedValue.ToString();//退返入库
}
var result =agent.InvokeServiceFunction<DataResult<int>>("StorageBLL_Insert", pi);
//保存成功
txtCode.Text = "";
txtCode.Focus();
if (result.IsSuccess)
{
lblError.ForeColor = Color.Black;
lblError.Text = scode + ":入库成功。";
}
else
{
lblError.ForeColor = Color.Red;
lblError.Text = scode + ":不存在或不是出库状态,无法入库。";
}
}
catch(Exception ex)
{
lblError.Text = "系统异常:" + ex.Message;
}
}
#endregion
private void ProductInSendCodeForm_Load_1(object sender, EventArgs e)
{
lblError.Text = "";
BasicData basicData = new BasicData();
//返修类别
var callTypeList =basicData.GetDictionaryList("TJINTTYPE");
comINTTYPE.DataSource = callTypeList;
comINTTYPE.DisplayMember = "value";
comINTTYPE.ValueMember = "key";
}
private void tsbClose_Click(object sender, EventArgs e)
{
this.Close();
}
private void btnSubmit_Click(object sender, EventArgs e)
{
SetProductIn();
}
}
}

191
APPQ5/QMAPP.WinForm/Forms/TianJin/TJProductInSendCodeForm.resx

@ -0,0 +1,191 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="tsbClose.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
YII=
</value>
</data>
</root>

154
APPQ5/QMAPP.WinForm/Forms/TianJin/TJSendCodeForm.Designer.cs

@ -0,0 +1,154 @@
namespace QMAPP.WinForm.Forms.TianJin
{
partial class TJSendCodeForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.txtCode = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.tsb_close = new System.Windows.Forms.Button();
this.labelError = new System.Windows.Forms.Label();
this.labelOutReason = new System.Windows.Forms.Label();
this.comboBoxOutReason = new System.Windows.Forms.ComboBox();
this.label2 = new System.Windows.Forms.Label();
this.tsb_submit = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// txtCode
//
this.txtCode.Font = new System.Drawing.Font("Arial", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.txtCode.Location = new System.Drawing.Point(119, 86);
this.txtCode.Name = "txtCode";
this.txtCode.Size = new System.Drawing.Size(226, 32);
this.txtCode.TabIndex = 7;
this.txtCode.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtCode_KeyDown);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("Arial", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.Location = new System.Drawing.Point(58, 93);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(37, 15);
this.label1.TabIndex = 6;
this.label1.Text = "条码";
//
// tsb_close
//
this.tsb_close.Location = new System.Drawing.Point(270, 133);
this.tsb_close.Name = "tsb_close";
this.tsb_close.Size = new System.Drawing.Size(75, 23);
this.tsb_close.TabIndex = 8;
this.tsb_close.Text = "关闭";
this.tsb_close.UseVisualStyleBackColor = true;
this.tsb_close.Click += new System.EventHandler(this.tsb_close_Click);
//
// labelError
//
this.labelError.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.labelError.ForeColor = System.Drawing.Color.Red;
this.labelError.Location = new System.Drawing.Point(73, 162);
this.labelError.Name = "labelError";
this.labelError.Size = new System.Drawing.Size(286, 65);
this.labelError.TabIndex = 9;
//
// labelOutReason
//
this.labelOutReason.AutoSize = true;
this.labelOutReason.Font = new System.Drawing.Font("Arial", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.labelOutReason.Location = new System.Drawing.Point(46, 33);
this.labelOutReason.Name = "labelOutReason";
this.labelOutReason.Size = new System.Drawing.Size(67, 15);
this.labelOutReason.TabIndex = 10;
this.labelOutReason.Text = "出库原因";
//
// comboBoxOutReason
//
this.comboBoxOutReason.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxOutReason.Font = new System.Drawing.Font("宋体", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.comboBoxOutReason.FormattingEnabled = true;
this.comboBoxOutReason.Location = new System.Drawing.Point(119, 30);
this.comboBoxOutReason.Name = "comboBoxOutReason";
this.comboBoxOutReason.Size = new System.Drawing.Size(226, 37);
this.comboBoxOutReason.TabIndex = 12;
this.comboBoxOutReason.SelectedIndexChanged += new System.EventHandler(this.comboBoxOutReason_SelectedIndexChanged);
//
// label2
//
this.label2.AutoSize = true;
this.label2.ForeColor = System.Drawing.Color.Red;
this.label2.Location = new System.Drawing.Point(29, 36);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(11, 12);
this.label2.TabIndex = 13;
this.label2.Text = "*";
//
// tsb_submit
//
this.tsb_submit.Location = new System.Drawing.Point(119, 133);
this.tsb_submit.Name = "tsb_submit";
this.tsb_submit.Size = new System.Drawing.Size(75, 23);
this.tsb_submit.TabIndex = 14;
this.tsb_submit.Text = "提交";
this.tsb_submit.UseVisualStyleBackColor = true;
this.tsb_submit.Click += new System.EventHandler(this.submit_Click);
//
// SendCodeForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(408, 234);
this.Controls.Add(this.tsb_submit);
this.Controls.Add(this.label2);
this.Controls.Add(this.comboBoxOutReason);
this.Controls.Add(this.labelOutReason);
this.Controls.Add(this.labelError);
this.Controls.Add(this.tsb_close);
this.Controls.Add(this.txtCode);
this.Controls.Add(this.label1);
this.Name = "SendCodeForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "出库";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.SendCodeForm_FormClosing);
this.Load += new System.EventHandler(this.Form_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TextBox txtCode;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button tsb_close;
private System.Windows.Forms.Label labelError;
private System.Windows.Forms.Label labelOutReason;
private System.Windows.Forms.ComboBox comboBoxOutReason;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Button tsb_submit;
}
}

264
APPQ5/QMAPP.WinForm/Forms/TianJin/TJSendCodeForm.cs

@ -0,0 +1,264 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using QMAPP.FJC.Entity.Operation;
using QMAPP.FJC.Entity;
using QMAPP.ServicesAgent;
using QMAPP.Entity;
using QMAPP.WinForm.Common;
using QM.Common;
using QMAPP.MD.Entity;
namespace QMAPP.WinForm.Forms.TianJin
{
/// <summary>
/// 日 期:2022年3月7日
/// 模 块:天津出库
/// 作 者:张松男
/// </summary>
public partial class TJSendCodeForm : Form
{
List<Product> productList = new List<Product>();
TJOutWarehouseForm sendmain = new TJOutWarehouseForm();
public TJSendCodeForm()
{
InitializeComponent();
}
#region 窗体载入
private void Form_Load(object sender, EventArgs e)
{
new KeyEvent().SetKeyToTxt(this);
//出库原因下拉
BasicData basicData = new BasicData();
//初始化控件属性
//this.comboBoxOutReason.DataSource = basicData.GetDictionaryList(EnumGeter.DictKind.OutReason.ToString());
//this.comboBoxOutReason.DisplayMember = "VALUE";
//this.comboBoxOutReason.ValueMember = "KEY";
//this.comboBoxOutReason.SelectedValue = "";
//加载物料类型分类
OutReason searchModelType = new OutReason();
this.comboBoxOutReason.DataSource = basicData.GetOutReasonList(true);
this.comboBoxOutReason.DisplayMember = "OUTREASON_NAME";
this.comboBoxOutReason.ValueMember = "OUTREASON_CODE";
}
#endregion
/// <summary>
/// 出库原因下拉改变
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void comboBoxOutReason_SelectedIndexChanged(object sender, EventArgs e)
{
this.ActiveControl = this.txtCode;
this.txtCode.Focus();//落入光标
}
#region 保存出库信息到ProductOut表
/// <summary>
/// 保存出库信息到ProductOut表
/// </summary>
public void SaveInfo(List<Product> productList)
{
ProductOut outInfo = new ProductOut();
outInfo.PID=Guid.NewGuid().ToString();//PID
outInfo.productList = productList;
if (ClientContext.produceShift != null)
{
outInfo.SHIFT_CODE = ClientContext.produceShift.PRODUCESHIFTTCODE;
}
outInfo.CREATEUSER = ClientContext.LoginInfo.UserID;
outInfo.CREATEDATE = DateTime.Now;
foreach (var model in productList)
{
outInfo.PRODUCT_CODE = model.PRODUCTCODE;
outInfo.MATERIAL_CODE = model.MATERIAL_CODE;
outInfo.WORKCENTER_CODE = model.WORKCENTER_CODE;
outInfo.WORKCELL_CODE = model.WORKCELL_CODE;
outInfo.OUTREASON = model.OUTREASON;
}
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
DataResult<int> result = agent.InvokeServiceFunction<DataResult<int>>("ProductOutBLL_InsertProductOut", outInfo);
//MessageBox.Show(result.Msg);
//this.DialogResult = DialogResult.OK;
productList.Clear();
this.comboBoxOutReason.SelectedItem = null;
this.txtCode.Text = "";
}
#endregion
# region 扫码枪
/// <summary>
/// 扫码枪
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private bool ValidateAndAddCode(string proCode)
{
if (!string.IsNullOrEmpty(proCode))
{
if (System.Text.RegularExpressions.Regex.IsMatch(proCode, "^DP\\w+(-\\w+)?-DF[LR][FR]\\w+$"))//扫描输入为门板计划标签
{
//从计划标签中截取产品码
proCode = proCode.Substring(proCode.LastIndexOf('-') + 1);
}
//出库原因
if (this.comboBoxOutReason.Text.ToString() == "")
{
this.labelError.Text ="出库原因不能为空!";
return false;
}
#region 获取零件信息
QMAPP.ServicesAgent.ServiceAgent agent = ClientContext.GetServiceAgent();
Product searchModel = new Product();
Main mainModel = new Main();
//去Main表查询数据
if (proCode.Substring(0, 3) == "052")
{
//从计划标签中截取产品码
mainModel.MAINCODE = proCode;
Main mainInfo = agent.InvokeServiceFunction<Main>("MainBLL_GetByCondition", mainModel);
if (mainInfo != null)
{
searchModel.PRODUCTCODE = mainInfo.EPIDERMISCODE;
}
}
else
{
searchModel.PRODUCTCODE = proCode;
}
this.labelError.ForeColor = System.Drawing.Color.Red;
List<Product> list = agent.InvokeServiceFunction<List<Product>>("ProductBLL_GetAllList", searchModel);
if (list.Count <= 0)//是否存在该零件
{
this.labelError.Text =this.txtCode.Text +"\r\n"+ Resource1.SendInfoNotFoundCode;
this.txtCode.Text = "";
return false;
}
list[0].OUTREASON = this.comboBoxOutReason.SelectedValue.ToString();
Product model = list[0];
#endregion
#region 判断零件状态
//合格返修报废
if (!model.STATUS.Equals(EnumGeter.PRODUCTSTAUTS.QUALIFIED.GetHashCode().ToString()))//合格
{
if (model.STATUS.Equals(EnumGeter.PRODUCTSTAUTS.REPAIR.GetHashCode().ToString()))//合格
{
this.labelError.Text = this.txtCode.Text + "\r\n" + Resource1.SendInfoRepaired;
this.txtCode.Text = "";
return false;
}
else
{
this.labelError.Text = this.txtCode.Text + "\r\n" + Resource1.SendInfoWadBad;
this.txtCode.Text = "";
return false;
}
}
//是否已出库
if (EnumGeter.OUTFLAG.INWAREHOUSE.GetHashCode().ToString().Equals(model.OUTFLAG) == false)
{
this.labelError.Text = this.txtCode.Text + "\r\n" + Resource1.SendInfoNotOk;
this.txtCode.Text = "";
return false;
}
//是否已经完成
if (EnumGeter.Finish.ENDOFLINE.GetHashCode().ToString().Equals(model.ENDOFLINE) == false)
{
this.labelError.Text = this.txtCode.Text + "\r\n" + "该本体正在加工中,未完成";
this.txtCode.Text = "";
return false;
}
#endregion
//添加到零件列表
productList.Add(model);
return true;
}
this.labelError.Text = "请选择相应信息!";
return false;
}
#endregion
#region 回车事件
/// <summary>
/// 回车事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void txtCode_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
if (ValidateAndAddCode(this.txtCode.Text.Trim()))
{
SaveInfo(productList);
this.txtCode.Text = "";
this.labelError.ForeColor = System.Drawing.Color.Green;
this.labelError.Text = "操作成功";
}
}
}
#endregion
#region 窗体关闭
/// <summary>
/// 点击关闭按钮关闭窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tsb_close_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
this.Close();
}
/// <summary>
/// 点击右上角X关闭窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void SendCodeForm_FormClosing(object sender, FormClosingEventArgs e)
{
this.DialogResult = DialogResult.OK;
e.Cancel = false;
}
#endregion
//提交按钮
private void submit_Click(object sender, EventArgs e)
{
if (ValidateAndAddCode(this.txtCode.Text.Trim().ToUpper()))
{
SaveInfo(productList);
this.txtCode.Text = "";
this.labelError.ForeColor = System.Drawing.Color.Green;
this.labelError.Text = "操作成功";
}
}
}
}

120
APPQ5/QMAPP.WinForm/Forms/TianJin/TJSendCodeForm.resx

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

4
APPQ5/QMAPP.WinForm/Forms/WarehouseManage/SendFinalForm.cs

@ -13,6 +13,8 @@ using QMFrameWork.Common.Serialization;
using QMFrameWork.Data;
using QMAPP.FJC.Entity;
using QMAPP.Entity;
using QMAPP.WinForm.Forms.TianJin;
namespace QMAPP.WinForm.Forms.WarehouseManage
{
/// <summary>
@ -179,7 +181,7 @@ namespace QMAPP.WinForm.Forms.WarehouseManage
/// <param name="e"></param>
private void stbAdd_Click(object sender, EventArgs e)
{
SendCodeForm form = new SendCodeForm();
TJSendCodeForm form = new TJSendCodeForm();
DialogResult result = form.ShowDialog();
if (result == System.Windows.Forms.DialogResult.OK)//判断是否操作成功
{

23
APPQ5/QMAPP.WinForm/MainForm.Designer.cs

@ -57,7 +57,9 @@
this.btnUserOut = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiWarehouse = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiPutIn = new System.Windows.Forms.ToolStripMenuItem();
this.TJtsmiPutIn = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTakeOut = new System.Windows.Forms.ToolStripMenuItem();
this.TJtsmiTakeOut = new System.Windows.Forms.ToolStripMenuItem();
this.tsiShipment = new System.Windows.Forms.ToolStripMenuItem();
this.FrmPlace = new System.Windows.Forms.ToolStripMenuItem();
this.TJFrmPlace = new System.Windows.Forms.ToolStripMenuItem();
@ -291,7 +293,9 @@
//
this.tsmiWarehouse.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsmiPutIn,
this.tsmiTakeOut});
this.tsmiTakeOut,
this.TJtsmiPutIn,
this.TJtsmiTakeOut,});
this.tsmiWarehouse.Name = "tsmiWarehouse";
this.tsmiWarehouse.Size = new System.Drawing.Size(112, 28);
this.tsmiWarehouse.Text = "出入库管理";
@ -309,6 +313,21 @@
this.tsmiTakeOut.Size = new System.Drawing.Size(170, 28);
this.tsmiTakeOut.Text = "计划外出库";
this.tsmiTakeOut.Click += new System.EventHandler(this.tsmiTakeOut_Click);
//
// TJtsmiPutIn
//
this.TJtsmiPutIn.Name = "TJtsmiPutIn";
this.TJtsmiPutIn.Size = new System.Drawing.Size(170, 28);
this.TJtsmiPutIn.Text = "TJ入库管理";
this.TJtsmiPutIn.Click += new System.EventHandler(this.TJtsmiPutIn_Click);
//
// tsmiTakeOut
//
this.TJtsmiTakeOut.Name = "TJtsmiTakeOut";
this.TJtsmiTakeOut.Size = new System.Drawing.Size(170, 28);
this.TJtsmiTakeOut.Text = "TJ出库管理";
this.TJtsmiTakeOut.Click += new System.EventHandler(this.TJtsmiTakeOut_Click);
//
// tsiShipment
//
@ -487,10 +506,12 @@
private System.Windows.Forms.ToolStripMenuItem tsmiSetStartUp;
private System.Windows.Forms.ToolStripMenuItem tsmiWarehouse;
private System.Windows.Forms.ToolStripMenuItem tsmiPutIn;
private System.Windows.Forms.ToolStripMenuItem TJtsmiPutIn;
private System.Windows.Forms.ToolStripStatusLabel tslServerHost;
private System.Windows.Forms.ToolStripMenuItem tsmiPrintPlanlabel;
private System.Windows.Forms.ToolStripMenuItem TJtsmiPrintPlanlabel;
private System.Windows.Forms.ToolStripMenuItem tsmiTakeOut;
private System.Windows.Forms.ToolStripMenuItem TJtsmiTakeOut;
private System.Windows.Forms.ToolStripMenuItem tsmiPartReplace;
private System.Windows.Forms.ToolStripMenuItem tsmiCheck;
private System.Windows.Forms.ToolStripMenuItem tsmiLabelRegeneration;

43
APPQ5/QMAPP.WinForm/MainForm.cs

@ -479,6 +479,27 @@ namespace QMAPP.WinForm
f.Focus(); //打开过就让其获得焦点
}
}
/// <summary>
/// 天津出库
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void TJtsmiTakeOut_Click(object sender, EventArgs e)
{
Form f = Application.OpenForms["TJOutWarehouseForm"]; //查找是否打开过Form1窗体
if (f == null) //没打开过
{
TJOutWarehouseForm form = new TJOutWarehouseForm();
new KeyEvent().SetKeyToTxt(form);
form.MdiParent = this;
form.Show(); //重新new一个Show出来
}
else
{
f.WindowState = FormWindowState.Normal;
f.Focus(); //打开过就让其获得焦点
}
}
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
@ -780,6 +801,28 @@ namespace QMAPP.WinForm
}
}
/// <summary>
/// 天津入库
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void TJtsmiPutIn_Click(object sender, EventArgs e)
{
Form f = Application.OpenForms["TJProductInForm"]; //查找是否打开过Form1窗体
if (f == null) //没打开过
{
TJProductInForm form = new TJProductInForm();
new KeyEvent().SetKeyToTxt(form);
form.MdiParent = this;
form.WindowState = FormWindowState.Maximized;
form.Show(); //重新new一个Show出来
}
else
{
f.WindowState = FormWindowState.Normal;
f.Focus(); //打开过就让其获得焦点
}
}
/// <summary>
/// 门板计划标签打印
/// </summary>
/// <param name="sender"></param>

38
APPQ5/QMAPP.WinForm/QMAPP.WinForm.csproj

@ -801,6 +801,30 @@
<Compile Include="Forms\RePrint\ReprintForm.Designer.cs">
<DependentUpon>ReprintForm.cs</DependentUpon>
</Compile>
<Compile Include="Forms\TianJin\TJOutWarehouseForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\TianJin\TJOutWarehouseForm.Designer.cs">
<DependentUpon>TJOutWarehouseForm.cs</DependentUpon>
</Compile>
<Compile Include="Forms\TianJin\TJSendCodeForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\TianJin\TJSendCodeForm.Designer.cs">
<DependentUpon>TJSendCodeForm.cs</DependentUpon>
</Compile>
<Compile Include="Forms\TianJin\TJProductInForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\TianJin\TJProductInForm.Designer.cs">
<DependentUpon>TJProductInForm.cs</DependentUpon>
</Compile>
<Compile Include="Forms\TianJin\TJProductInSendCodeForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\TianJin\TJProductInSendCodeForm.Designer.cs">
<DependentUpon>TJProductInSendCodeForm.cs</DependentUpon>
</Compile>
<Compile Include="Forms\TianJin\TJPrintPlanLabel.cs">
<SubType>Form</SubType>
</Compile>
@ -1290,6 +1314,20 @@
<EmbeddedResource Include="Forms\RePrint\ReprintForm.resx">
<DependentUpon>ReprintForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\TianJin\TJOutWarehouseForm.resx">
<DependentUpon>TJOutWarehouseForm.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Forms\TianJin\TJSendCodeForm.resx">
<DependentUpon>TJSendCodeForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\TianJin\TJProductInForm.resx">
<DependentUpon>TJProductInForm.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Forms\TianJin\TJProductInSendCodeForm.resx">
<DependentUpon>TJProductInSendCodeForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\TianJin\TJPrintPlanLabel.resx">
<DependentUpon>TJPrintPlanLabel.cs</DependentUpon>
</EmbeddedResource>

16
AppCommon/QMAPP.ServicesAgent/ServiceEnums.cs

@ -228,6 +228,22 @@ namespace QMAPP.ServicesAgent
[Description("基础数据方法枚举")]
public enum DictService
{
#region 天津库存
/// <summary>
/// 插入
/// </summary>
[Description("插入")]
StorageBLL_Insert,
/// <summary>
/// 更新
/// </summary>
[Description("更新")]
StorageBLL_Update,
#endregion
#region 生产配置
/// <summary>

14
ServicesCenter/WCF/QMFrameWork.WebServiceHost/App_Data/FJCServiceList.xml

@ -960,4 +960,18 @@
<AssemblyFile>QMAPP.FJC.BLL.DLL</AssemblyFile>
</ServiceDefinition>
<ServiceDefinition>
<ServiceName>StorageBLL</ServiceName>
<ServiceDes>天津库存模块</ServiceDes>
<FullLogicClassName>QMAPP.FJC.BLL.TianJin.StorageBLL</FullLogicClassName>
<AssemblyFile>QMAPP.FJC.BLL.DLL</AssemblyFile>
</ServiceDefinition>
<ServiceDefinition>
<ServiceName>StorageLogBLL</ServiceName>
<ServiceDes>天津库存日志模块</ServiceDes>
<FullLogicClassName>QMAPP.FJC.BLL.TianJin.StorageLogBLL</FullLogicClassName>
<AssemblyFile>QMAPP.FJC.BLL.DLL</AssemblyFile>
</ServiceDefinition>
</BusinessDllList>
Loading…
Cancel
Save