|
|
|
|
|
using System.Collections;
|
|
|
using Aspose.Cells;
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
using Estsh.Core.Services.IServices;
|
|
|
using Estsh.Core.Model.Result;
|
|
|
using Estsh.Core.Models;
|
|
|
using System.Text.Json;
|
|
|
using Estsh.Core.Controllers;
|
|
|
using System.Data;
|
|
|
using NPOI.HSSF.UserModel;
|
|
|
using Microsoft.Extensions.Caching.Memory;
|
|
|
using Estsh.Core.Util;
|
|
|
using Estsh.Core.Model.Models;
|
|
|
|
|
|
/***************************************************************************************************
|
|
|
*
|
|
|
* 更新人:sitong.dong
|
|
|
* 描述:采购负收货模块Controller层
|
|
|
* 修改时间:2022.06.22
|
|
|
* 修改日志:系统迭代升级
|
|
|
*
|
|
|
**************************************************************************************************/
|
|
|
namespace Estsh.Web.Controllers
|
|
|
{
|
|
|
public class PurchaseSubtractiveController : BaseController
|
|
|
{
|
|
|
private IPurchaseSubtractiveService service;
|
|
|
public PurchaseSubtractiveController(IPurchaseSubtractiveService _service)
|
|
|
{
|
|
|
service = _service;
|
|
|
}
|
|
|
|
|
|
public ActionResult Index()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
public ActionResult getQueryByPage(String data, String data2, Pager pager, String direction, String sort)
|
|
|
{
|
|
|
string _where = "";
|
|
|
int totalCount = 0;
|
|
|
List<GPoCancelMaster> dataHt = service.getQueryByPage(pager.pageSize,pager.pageNo, _where, direction, sort);
|
|
|
Hashtable result = new Hashtable();
|
|
|
result.Add("rows", dataHt);
|
|
|
result.Add("pager.totalRows", totalCount);
|
|
|
return Json(result);
|
|
|
}
|
|
|
public ActionResult onadd()
|
|
|
{
|
|
|
return View("editPurchaseSubtractive");
|
|
|
}
|
|
|
public ActionResult onsave()
|
|
|
{
|
|
|
string message = "";
|
|
|
string orderNo = ""; //日程单号
|
|
|
string shipNo = ""; //送货单号
|
|
|
string buyNo = "";//采购单
|
|
|
string qty = "";//负收货数量
|
|
|
string partNo = "";//零件号
|
|
|
|
|
|
Hashtable resault = new Hashtable();
|
|
|
|
|
|
orderNo = service.GetOrderNo("SubtractivePo", "SPR");
|
|
|
if (string.IsNullOrEmpty(orderNo))
|
|
|
{
|
|
|
message = " 业务提交单号获取错误!";
|
|
|
resault.Add("message", message);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
|
|
|
shipNo = Request.Form["txtSendNo"].ToString();
|
|
|
buyNo = Request.Form["comProNo"].ToString();
|
|
|
bool isPass = service.IsExistShipAndBuyNo(shipNo, buyNo);
|
|
|
if (!isPass)
|
|
|
{
|
|
|
message = " [" + shipNo + "]:此送货单号数据与[" + buyNo + "]没有匹配的收货数据!";
|
|
|
resault.Add("message", message);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
DataTable data = new DataTable();
|
|
|
data.Columns.Add("ship_no", typeof(System.String));
|
|
|
data.Columns.Add("buy_no", typeof(System.String));
|
|
|
data.Columns.Add("part_no", typeof(System.String));
|
|
|
data.Columns.Add("qty", typeof(System.Int32));
|
|
|
data.Columns.Add("order_no", typeof(System.String));
|
|
|
|
|
|
|
|
|
|
|
|
orderNo = Request.Form["txtDay_No"].ToString(); //日程单号
|
|
|
shipNo = Request.Form["txtSendNo"].ToString(); //送货单号
|
|
|
buyNo = Request.Form["comProNo"].ToString();//采购单
|
|
|
qty = Request.Form["txtProCount"].ToString();//负收货数量
|
|
|
int iQty = 0;
|
|
|
try
|
|
|
{
|
|
|
iQty = Convert.ToInt32(qty);
|
|
|
}
|
|
|
catch
|
|
|
{
|
|
|
message = " [" + qty + "]:数量中有不规则字符! ";
|
|
|
resault.Add("message", message);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
if (iQty < 1)
|
|
|
{
|
|
|
message = " [" + qty + "]:请正确输入零件数量! ";
|
|
|
resault.Add("message", message);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
if (string.IsNullOrEmpty(Request.Form["comPartNo"]))
|
|
|
{
|
|
|
message = " 请正确选择零件号! ";
|
|
|
resault.Add("message", message);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
partNo = Request.Form["comPartNo"].ToString().ToUpper();
|
|
|
for (int i = 0; i < data.Rows.Count; i++)
|
|
|
{
|
|
|
if (data.Rows[i]["ship_no"].ToString() == shipNo
|
|
|
&& data.Rows[i]["buy_no"].ToString() == buyNo
|
|
|
&& data.Rows[i]["part_no"].ToString() == partNo)
|
|
|
{
|
|
|
message = " 请不要重复提交同一送货单内的相同采购单零件! ";
|
|
|
resault.Add("message", message);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
DataRow dr = data.NewRow();
|
|
|
dr[0] = shipNo;
|
|
|
dr[1] = buyNo;
|
|
|
dr[2] = partNo;
|
|
|
dr[3] = iQty;
|
|
|
dr[4] = orderNo;
|
|
|
data.Rows.Add(dr);
|
|
|
string msg = string.Empty;
|
|
|
if (data.Rows.Count < 1 || data == null)
|
|
|
{
|
|
|
msg = " 请正确输入采购负收货数据! ";
|
|
|
resault.Add("message", msg);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
|
|
|
string rMsg = service.DataSaveTransact(data, CurrentEmp.EmpId);
|
|
|
if (!string.IsNullOrEmpty(rMsg))
|
|
|
{
|
|
|
msg = rMsg;
|
|
|
resault.Add("message", msg);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
msg = "采购订单负收货数据保存成功";
|
|
|
|
|
|
resault.Add("message", msg);
|
|
|
return Json(resault);
|
|
|
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取采购单
|
|
|
/// </summary>
|
|
|
/// <returns></returns>
|
|
|
public ActionResult GetBuyNoInfo()
|
|
|
{
|
|
|
Hashtable resault = new Hashtable();
|
|
|
List<KeyValueResult> list = service.GetBuyNoInfo();
|
|
|
resault.Add("list", list);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 获取零件信息
|
|
|
/// </summary>
|
|
|
/// <returns></returns>
|
|
|
public ActionResult GetPart()
|
|
|
{
|
|
|
Hashtable resault = new Hashtable();
|
|
|
List<KeyValueResult> list = service.GetPart();
|
|
|
resault.Add("list", list);
|
|
|
return Json(resault);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|