using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MainForm.DbHelper;
using MainForm.Models;
namespace MainForm.FaForm
{
public partial class Form_OrderAdd : Form
{
Form_Order _Form_Order;
SqlHelper _sqlHelper = new SqlHelper();
public Form_OrderAdd()
{
InitializeComponent();
}
public Form_OrderAdd(Form_Order form_Order)
{
_Form_Order = form_Order;
InitializeComponent();
}
private void Form_OrderAdd_Load(object sender, EventArgs e)
{
Cmb_Process.SelectedIndex = 0;
}
///
/// 获取订单信息
///
private void BtnGetOrderInfo_Click(object sender, EventArgs e)
{
try
{
WorkOrderInfo workOrderInfo = HttpUitls.GetWOData(txtSono.Text.Trim());
if (workOrderInfo != null)
{
txtSono.Text = workOrderInfo.sono; // 车间订单号
txtBatchNumber.Text = workOrderInfo.splcode; // 批次号
txtMtltmrk.Text = workOrderInfo.mtltmrk; // 产品型号
txtProductNo.Text = workOrderInfo.prtno; // 产品代号
txtProductName.Text = workOrderInfo.prtdesc; // 产品名称
txtSoreqdat.Text = workOrderInfo.soreqdat; // 需求日期
numPlannedQuantity.Text = workOrderInfo.soporqty; // 计划数量
txtPlnsign.Text = workOrderInfo.plnsign; // 计划标记
}
else
{
//txtSono.Text = string.Empty; // 车间订单号
txtBatchNumber.Text = string.Empty; // 批次号
txtSupplierCode.Text = string.Empty; // 供应商代码
txtMtltmrk.Text = string.Empty; // 产品型号
txtProductNo.Text = string.Empty; // 产品代号
txtProductName.Text = string.Empty; // 产品名称
txtSoreqdat.Text = string.Empty; // 需求日期
numPlannedQuantity.Text = string.Empty; // 计划数量
txtPlnsign.Text = string.Empty; // 计划标记
Cmb_Process.Text = string.Empty; // 所属流程
}
}
catch (Exception ex)
{
string str = ex.StackTrace;
_Form_Order.AddMessage(LogType.Error, "获取订单信息失败!异常位置:" + str.Substring(str.LastIndexOf("\\") + 1, str.Length - str.LastIndexOf("\\") - 1) + ";异常信息:" + ex.Message.ToString());
MessageBox.Show("获取订单信息失败!异常信息:" + ex.Message.ToString());
}
}
///
/// 新增订单
///
private void Btn_WorkOrderConfirm_Click(object sender, EventArgs e)
{
try
{
// 新增到表中
OrderTable orderTable = new OrderTable()
{
WorkOrderNum = txtSono.Text, // 车间订单号
WorkOrderStatus = "未处理订单", // 订单状态
BatchNumber = txtBatchNumber.Text, // 批次号
ProductMtltmrk = txtMtltmrk.Text, // 产品型号
ProductNo = txtProductNo.Text, // 产品代号
ProductName = txtProductName.Text, // 产品名称
SupplierCode = txtSupplierCode.Text, // 供应商代码
PlannedQuantity = string.IsNullOrEmpty(numPlannedQuantity.Text) ? 0 : Convert.ToInt32(numPlannedQuantity.Text), // 计划数量
CompletedQuantity = 0, // 已完成数量
Plnsign = txtPlnsign.Text, // 计划标记
Soreqdat = txtSoreqdat.Text, // 需求日期
Process = Cmb_Process.Text, // 所属流程
CreatedTime = DateTime.Now // 订单创建时间
};
if (_sqlHelper.Queryable(it => it.WorkOrderNum == orderTable.WorkOrderNum)?.Count() > 0)
{
MessageBox.Show("不可重复创建相同订单!");
return;
}
_sqlHelper.Insert(orderTable);
// 记录新增日志
List productSetVlaue = new List();
productSetVlaue.Add(txtSono.Text.Trim());
productSetVlaue.Add(txtBatchNumber.Text.Trim());
productSetVlaue.Add(txtSupplierCode.Text.Trim());
productSetVlaue.Add(txtMtltmrk.Text.Trim());
productSetVlaue.Add(txtProductNo.Text.Trim());
productSetVlaue.Add(txtProductName.Text.Trim());
productSetVlaue.Add(txtSoreqdat.Text.Trim());
productSetVlaue.Add(numPlannedQuantity.Text.Trim());
productSetVlaue.Add(txtPlnsign.Text.Trim());
productSetVlaue.Add(Cmb_Process.Text.Trim());
String.Join(";", productSetVlaue);
_Form_Order.AddMessage(LogType.Info, _Form_Order.currentRole + "添加了一个订单[" + String.Join(";", productSetVlaue) + "]");
MessageBox.Show("订单添加成功!");
}
catch (Exception ex)
{
string str = ex.StackTrace;
_Form_Order.AddMessage(LogType.Error, "订单添加失败!异常位置:" + str.Substring(str.LastIndexOf("\\") + 1, str.Length - str.LastIndexOf("\\") - 1) + ";异常信息:" + ex.Message.ToString());
MessageBox.Show("订单添加失败!异常信息:" + ex.Message.ToString());
}
}
}
}