using Newtonsoft.Json;
|
using Newtonsoft.Json.Linq;
|
using Pub_Class;
|
using RestSharp;
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Data.SqlClient;
|
using System.IO;
|
using System.Web;
|
using System.Web.Http;
|
using System.Windows.Forms;
|
using WebAPI.Models;
|
using WebAPI.Service;
|
using System.Text.RegularExpressions;
|
|
namespace WebAPI.Controllers
|
{
|
public class Gy_MaterialController : ApiController
|
{
|
//获取系统参数
|
Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
|
public DBUtility.ClsPub.Enum_BillStatus BillStatus;
|
|
private json objJsonResult = new json();
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
DataSet ds;
|
string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
|
|
|
////检测 当前选中行的 项目状态
|
//[Route("Gy_Material/CheckUseStatus")]
|
//[HttpGet]
|
//public void Sub_CheckUseStatus(int grd, int IDCol, string sProcName)
|
//{
|
// SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
// Int64 sItemID;
|
// try
|
// {
|
// //循环当前网格选中项目
|
// for (int i = 0; i < grd.SelectedRows.Count; i++)
|
// {
|
// //得到内码
|
// sItemID = DBUtility.ClsPub.isLong(grd.Rows[grd.SelectedRows[i].Index].Cells[IDCol].Value);
|
// //调用储存过程 h_p_Gy_CheckUseDept
|
// oCn.RunProc("exec " + sProcName + " " + sItemID.ToString(), ref ClsPub.sExeReturnInfo);
|
// }
|
// }
|
// catch (Exception e)
|
// {
|
// MessageBox.Show("检测错误!原因:" + ClsPub.sExeReturnInfo);
|
// //objJsonResult.code = "0";
|
// //objJsonResult.count = 0;
|
// //objJsonResult.Message = "检测错误!原因:" + ClsPub.sExeReturnInfo;
|
// //objJsonResult.data = null;
|
// //return objJsonResult;
|
// }
|
//}
|
|
/// <summary>
|
/// 返回物料列表
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_Material/list")]
|
[HttpGet]
|
public object list(string sWhere, string user, string Organization)
|
{
|
try
|
{
|
List<object> columnNameList = new List<object>();
|
//编辑权限
|
if (!DBUtility.ClsPub.Security_Log_second("Gy_Material", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无查看权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
string sql1 = string.Format(@"select * from h_v_Gy_MaterialList where 组织名称='" + Organization + "'");
|
if (sWhere == null || sWhere.Equals(""))
|
{
|
ds = oCN.RunProcReturn(sql1 + sWhere + " order by 物料代码 desc", "h_v_Gy_MaterialList");
|
}
|
else
|
{
|
string sql = sql1 + sWhere + " order by 物料代码 desc";
|
ds = oCN.RunProcReturn(sql, "h_v_Gy_MaterialList");
|
}
|
|
//添加列名
|
foreach (DataColumn col in ds.Tables[0].Columns)
|
{
|
Type dataType = col.DataType;
|
string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
|
columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.list = columnNameList;
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
#region 物料根据分类获取最大物料编码
|
[Route("Gy_Material/getMaxNum")]
|
[HttpGet]
|
public object getMaxNum(int HMaterTypeID, string user, string Organization)
|
{
|
try
|
{
|
List<object> columnNameList = new List<object>();
|
//编辑权限
|
if (!DBUtility.ClsPub.Security_Log_second("Gy_Material", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无查看权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (HMaterTypeID == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有选择具体分类!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
ds = oCN.RunProcReturn(@"select * from h_v_Gy_MaterialList where 组织名称='" + Organization + "'" + "and HMaterTypeID = '"+ HMaterTypeID + "'" + " order by 物料代码 desc", "h_v_Gy_MaterialList");
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "没有找到该分类的物料编码请使用普通新增";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
string HNumber = ds.Tables[0].Rows[0]["物料代码"].ToString();
|
// 使用正则表达式找到数字部分 (?<=\D)是一个零宽断言,表示前面的字符不是数字 (\d+)$表示后面跟着一连串字符串知道末尾
|
Match match = Regex.Match(HNumber, @"(?<=\D)(\d+)$");
|
if (match.Success)
|
{
|
string prefix = HNumber.Substring(0, HNumber.Length - match.Length); // 提取前缀
|
int number = int.Parse(match.Value); // 解析数字
|
// 数字+1
|
number++;
|
// 格式化数字,保持原长度
|
string formattedNumber = number.ToString().PadLeft(match.Length, '0');
|
// 重新组合字符串
|
string result = prefix + formattedNumber;
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "success";
|
objJsonResult.data = result;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "此分类物料编码格式有误";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 获取物料精度通过id
|
[Route("Gy_Material/getDecByID")]
|
[HttpGet]
|
public object getDecByID(int HMaterID)
|
{
|
try
|
{
|
if(HMaterID == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有选择物料";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
ds = oCN.RunProcReturn(@"select HQtyDec,HPriceDec,HMoneyDec from Gy_Material where HitemID=" + HMaterID , "Gy_Material");
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "没有找到该物料编码";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Success";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 获取项目号
|
[Route("Gy_Material/Get_HProject")]
|
[HttpGet]
|
public object Get_HProject(string HOrgID)
|
{
|
try
|
{
|
DataSet oDs = new DataSet();
|
//==========
|
oDs = oCN.RunProcReturn("select top(20) HInterID as HItemID,HProName HName from PM_ProjectBillMain", "PM_ProjectBillMain");
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "获取成功!";
|
objJsonResult.data = oDs.Tables[0];
|
return objJsonResult; ;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "删除失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 获取事业部
|
[Route("Gy_Material/Get_Gy_Division")]
|
[HttpGet]
|
public object Get_Gy_Division(string HOrgID)
|
{
|
try
|
{
|
DataSet oDs = new DataSet();
|
//==========
|
oDs = oCN.RunProcReturn(" select HItemID,HName from Gy_Division", "Gy_Division");
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "获取成功!";
|
objJsonResult.data = oDs.Tables[0];
|
return objJsonResult; ;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "删除失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
|
/// <summary>
|
/// 物料设置获取信息
|
/// </summary>
|
/// <returns></returns>
|
[Route("Gy_Material/GetGy_MaterialDetail")]
|
[HttpGet]
|
public ApiResult<DataSet> GetGy_MaterialDetail(string HID)
|
{
|
var model = LuBaoSevice.GetGy_MaterialBillDetail(HID);
|
return model;
|
}
|
/// <summary>
|
/// 保存物料
|
/// </summary>
|
/// <param name="msg"></param>
|
/// <returns></returns>
|
[Route("Gy_Material/SaveGy_MaterialList")]
|
[HttpPost]
|
public object SaveGy_MaterialList([FromBody] JObject msg)
|
{
|
DataSet ds;
|
var _value = msg["msg"].ToString();
|
string msg3 = _value.ToString();
|
string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
string msg1 = sArray[0].ToString();
|
string msg2 = sArray[1].ToString();
|
string msg_HUSEORGID = sArray[2].ToString();
|
Int64 HItemID = 0;
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
|
//编辑权限
|
if (!DBUtility.ClsPub.Security_Log_second("Gy_Material_Edit", 1, false, msg2))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无保存权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
//获取最大ID值赋值
|
DataSet Maxds = oCN.RunProcReturn("select MAX(HItemID) HItemID from Gy_Material ", "Gy_Material");
|
if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
|
{
|
//HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
|
var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
|
maxid += 1;
|
HItemID = maxid;
|
}
|
ListModels oListModels = new ListModels();
|
|
try
|
{
|
DLL.ClsGy_Material_Ctl oBill = new DLL.ClsGy_Material_Ctl();
|
List<Models.ClsGy_Material_Model> lsmain = new List<Models.ClsGy_Material_Model>();
|
msg1 = msg1.Replace("\\", "");
|
msg1 = msg1.Replace("\n", ""); //\n
|
lsmain = oListModels.getObjectByJson_Gy_Material(msg1);
|
foreach (ClsGy_Material_Model oItem in lsmain)
|
{
|
if (oItem.HNumber.Trim() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!代码不能为空!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
if (oItem.HName.Trim() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!名称不能为空!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
if (oItem.HMaterTypeID == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!物料分类不能为空!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
//if (!DBUtility.ClsPub.AllowNumber(oItem.HNumber.Trim()))
|
//{
|
// objJsonResult.code = "0";
|
// objJsonResult.count = 0;
|
// objJsonResult.Message = "保存失败!代码中不能出现连续‘.’并且首位末位不能为‘.’!";
|
// objJsonResult.data = 1;
|
// return objJsonResult;
|
//}
|
//查询数据中是否存在重复代码
|
ds = oCN.RunProcReturn("select * from Gy_Material where HStopflag=0 and HNumber='" + oItem.HNumber.Trim() + "'", "Gy_Material");
|
//新增时判断
|
#region 父级校验方法(api调用先注释掉,)
|
/*
|
if (oItem.HItemID == 0)
|
{
|
if (ds == null || ds.Tables[0].Rows.Count > 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!代码重复!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
//检查父级是否存在
|
string sParent;
|
sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
|
if (sParent.Trim() == "")
|
{
|
oBill.oModel.HParentID = 0;
|
}
|
else
|
{
|
if (oBill.HavParentCode(sParent.Trim(), HItemID))
|
{
|
oBill.oModel.HParentID = oBill.oModel.HItemID;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
}
|
else//编辑时判断
|
{
|
//检查父级是否存在
|
string sParent;
|
sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
|
if (sParent.Trim() == "")
|
{
|
oBill.oModel.HParentID = 0;
|
}
|
else
|
{
|
if (oBill.HavParentCode(sParent.Trim(), oItem.HItemID))
|
{
|
oBill.oModel.HParentID = oBill.oModel.HItemID;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
}
|
*/
|
#endregion
|
//得到短代码
|
string sShortNumber;
|
sShortNumber = DBUtility.ClsPub.GetShortNumber(oItem.HNumber.Trim());
|
if (sShortNumber.Trim() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!短代码为空!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
oItem.HUSEORGID = Convert.ToInt32(msg_HUSEORGID); //组织id
|
oItem.HShortNumber = sShortNumber;//短代码
|
oItem.HEndFlag = true;//末级标志
|
oItem.HLevel = DBUtility.ClsPub.GetLevel(oItem.HNumber.Trim()); //等级
|
oBill.oModel = oItem;
|
}
|
//保存
|
//保存完毕后处理
|
bool bResult;
|
if (oBill.oModel.HItemID == 0)
|
{
|
//bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
|
bResult = oBill.AddNew();
|
}
|
else
|
{
|
bResult = oBill.ModifyByID(oBill.oModel.HItemID);
|
}
|
if (bResult)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "保存成功!";
|
//WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!" + e.ToString();
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
|
[Route("Gy_Material/SaveGy_MaterialListApi")]
|
[HttpPost]
|
public object SaveGy_MaterialListApi([FromBody] JObject msg)
|
{
|
var _value = msg["model"].ToString();
|
string msg3 = _value.ToString();
|
string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
string msg1 = sArray[0].ToString();
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
ListModels oListModels = new ListModels();
|
try
|
{
|
DLL.ClsGy_Material_Ctl oBill = new DLL.ClsGy_Material_Ctl();
|
List<Models.ClsGy_Material_Model> lsmain = new List<Models.ClsGy_Material_Model>();
|
msg1 = msg1.Replace("\\", "");
|
msg1 = msg1.Replace("\n", ""); //\n
|
lsmain = oListModels.getObjectByJson_Gy_Material(msg1);
|
oBill.oModel = lsmain[0];
|
//保存
|
bool bResult = oBill.AddNewApi();
|
if (bResult)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "保存成功!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
LogService.Write("物料同步插件,保存方法执行完成异常:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff:ffffff")+ e.Message.ToString());
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!" + e.ToString();
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
|
/// <summary>
|
/// 物料设置删除功能
|
/// </summary>
|
/// <returns></returns>
|
[Route("Gy_Material/Delete")]
|
[HttpGet]
|
public object DeltetGy_Material(string HItemID, string user)
|
{
|
DataSet ds;
|
try
|
{
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
|
if (user == "10000")//api同步方式
|
{
|
oCN.RunProc("delete from Gy_Material where HERPItemID=" + HItemID);
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "* 数据删除成功!";
|
objJsonResult.data = null;
|
return objJsonResult; ;
|
}
|
|
//删除权限
|
if (!DBUtility.ClsPub.Security_Log("Gy_Material_Delete", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无删除权限";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (string.IsNullOrWhiteSpace(HItemID))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "HItemID为空!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
oCN.BeginTran();//开始事务
|
ds = oCN.RunProcReturn("select * from Gy_Material where HItemID=" + HItemID, "Gy_Material");
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
oCN.RollBack();//回滚事务
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有数据,无法删除!";
|
objJsonResult.data = null;
|
return objJsonResult; ;
|
}
|
var HStopflag = Convert.ToBoolean(ds.Tables[0].Rows[0]["HStopflag"]);
|
if (HStopflag)
|
{
|
oCN.RollBack();//回滚事务
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "数据已删除无法再次删除!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
oCN.RunProc("delete from Gy_Material where HItemID=" + HItemID);
|
oCN.Commit();//提交事务
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "* 数据删除成功!";
|
objJsonResult.data = null;
|
return objJsonResult; ;
|
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();//回滚事务
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "删除失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
|
|
#region 物料审核、反审核
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="HInterID">单据ID</param>
|
/// <param name="IsAudit">审核(0),反审核(1)</param>
|
/// <param name="CurUserName">审核人</param>
|
/// <returns></returns>
|
[Route("Gy_Material/AuditGy_Material")]
|
[HttpGet]
|
public object AuditGy_Material(int HInterID, int IsAudit, string CurUserName)
|
{
|
try
|
{
|
//审核权限
|
if (!DBUtility.ClsPub.Security_Log_second("Gy_Material_Check", 1, false, CurUserName))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "审核失败!无权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
var ds = oCN.RunProcReturn("select * from Gy_Material where HItemID=" + HInterID, "Gy_Material");
|
if (ds.Tables[0].Rows.Count > 0)
|
{
|
if (IsAudit == 0) //审核判断
|
{
|
if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已审核!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsAudit == 1) //反审核判断
|
{
|
if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据未审核!不需要反审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据不存在!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
oCN.BeginTran();
|
|
if (IsAudit == 0) //审核判断
|
{
|
oCN.RunProc("update Gy_Material set HCheckEmp='" + CurUserName + "',HCheckTime=getdate() where HItemID=" + HInterID);
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "审核成功";
|
objJsonResult.data = null;
|
}
|
if (IsAudit == 1) //反审核判断
|
{
|
oCN.RunProc("update Gy_Material set HCheckEmp='',HCheckTime=null where HItemID=" + HInterID);
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "反审核成功";
|
objJsonResult.data = null;
|
}
|
oCN.Commit();
|
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 物料禁用、反禁用
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="HInterID">单据ID</param>
|
/// <param name="IsStop">禁用(0),反禁用(1)</param>
|
/// <param name="CurUserName">审核人</param>
|
/// <returns></returns>
|
[Route("Gy_Material/StopGy_Material")]
|
[HttpGet]
|
public object StopGy_Material(int HInterID, int IsStop, string CurUserName)
|
{
|
try
|
{
|
//审核权限
|
if (!DBUtility.ClsPub.Security_Log_second("Gy_Material_Stop", 1, false, CurUserName))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "禁用失败!无权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
var ds = oCN.RunProcReturn("select * from Gy_Material where HItemID=" + HInterID, "Gy_Material");
|
if (ds.Tables[0].Rows.Count > 0)
|
{
|
if (IsStop == 0) //禁用判断
|
{
|
if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已禁用!不能再次禁用!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsStop == 1) //反禁用判断
|
{
|
if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据未禁用!不需要反禁用!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据不存在!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
oCN.BeginTran();
|
|
if (IsStop == 0) //禁用判断
|
{
|
oCN.RunProc("update Gy_Material set HStopEmp='" + CurUserName + "',HStopTime=getdate(),HStopflag=1 where HItemID=" + HInterID);
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "禁用成功";
|
objJsonResult.data = null;
|
}
|
if (IsStop == 1) //反禁用判断
|
{
|
oCN.RunProc("update Gy_Material set HStopEmp='',HStopTime=null,HStopflag=0 where HItemID=" + HInterID);
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "反禁用成功";
|
objJsonResult.data = null;
|
}
|
oCN.Commit();
|
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "禁用失败或者反禁用失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
|
|
|
/// <summary>
|
/// 返回模具列表
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_Mould/list1")]
|
[HttpGet]
|
public object list1(string sWhere, string ModRightNameSelect, string user)
|
{
|
try
|
{
|
if (!DBUtility.ClsPub.Security_Log(ModRightNameSelect, 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有查看权限";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (sWhere == null || sWhere.Equals(""))
|
{
|
ds = oCN.RunProcReturn("select * from h_v_Gy_MouldFileList " + sWhere + "order by 日期 desc", "h_v_Gy_MouldFileList");
|
}
|
else
|
{
|
string sql1 = "select * from h_v_Gy_MouldFileList where 1 = 1 ";
|
string sql = sql1 + sWhere + "order by 日期 desc";
|
ds = oCN.RunProcReturn(sql, "h_v_Gy_MouldFileList");
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
|
#region 器具档案列表 树状图 设备分类查询
|
public class TreeModel
|
{
|
public string id { get; set; }
|
public string title { get; set; }
|
public List<TreeModel> children = new List<TreeModel>();
|
}
|
[Route("Gy_Mould/TreeList")]
|
[HttpGet]
|
public object TreeList(string sWhere, string user)
|
{
|
try
|
{
|
|
ds = oCN.RunProcReturn("select HItemID,HNumber,HName from Gy_MouldType", "Gy_MouldType");
|
|
List<TreeModel> treeModels = new List<TreeModel>();
|
TreeModel first = new TreeModel();
|
first.id = "0";
|
first.title = "器具分类设置";
|
treeModels.Add(first);
|
|
foreach (DataRow row in ds.Tables[0].Rows)
|
{
|
var strLen = row["hitemid"].ToString().Split('.');
|
if (strLen.Length == 1)
|
{
|
TreeModel tree = new TreeModel();
|
tree.id = row["HItemID"].ToString();
|
tree.title = row["HName"].ToString();
|
treeModels[0].children.Add(tree);
|
}
|
}
|
digui(ds.Tables[0], treeModels[0].children, 2);
|
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(treeModels);
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
/// <summary>
|
/// 递归函数
|
/// </summary>
|
public void digui(DataTable dt, List<TreeModel> tree, int num)
|
{
|
for (int m = 0; m < tree.Count; m++)
|
{
|
tree[m].children = new List<TreeModel>();
|
for (int i = 0; i < dt.Rows.Count; i++)//第一次循环,得到所有根节点的子集
|
{
|
var strLen = dt.Rows[i]["HNumber"].ToString().Split('.');
|
if (strLen.Length == num && dt.Rows[i]["HNumber"].ToString().Contains(tree[m].id + "."))
|
{
|
TreeModel tbjson = new TreeModel();
|
tbjson.id = dt.Rows[i]["HItemID"].ToString();
|
tbjson.title = dt.Rows[i]["HName"].ToString();
|
tree[m].children.Add(tbjson);
|
}
|
}
|
var strLens = tree[m].id.Split('.');
|
for (int i = 0; i < tree[m].children.Count; i++)
|
{
|
digui(dt, tree[m].children, strLens.Length + 2);//再次用子集去循环,拿出子集的子集
|
}
|
}
|
|
}
|
#endregion
|
|
|
|
|
/// <summary>
|
/// 返回检具档案列表
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_CheckToolsFileMainList/list2")]
|
[HttpGet]
|
public object list2(string sWhere)
|
{
|
try
|
{
|
if (sWhere == null || sWhere.Equals(""))
|
{
|
ds = oCN.RunProcReturn("select * from h_v_Gy_CheckToolsFileMainList " + sWhere + "order by 日期 desc", "h_v_Gy_CheckToolsFileMainList");
|
}
|
else
|
{
|
string sql1 = "select * from h_v_Gy_CheckToolsFileMainList where 1 = 1 ";
|
string sql = sql1 + sWhere + "order by 日期 desc";
|
ds = oCN.RunProcReturn(sql, "h_v_Gy_CheckToolsFileMainList");
|
}
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "false!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
/// <summary>
|
/// 返回条码档案列表
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_BarCodeBillList/GetBarCodeBillList")]
|
[HttpGet]
|
public object GetBarCodeBillList(string sWhere, string user)
|
{
|
try
|
{
|
List<object> columnNameList = new List<object>();
|
//判断是否有查询权限
|
if (!DBUtility.ClsPub.Security_Log("Gy_BarCodeBill_Query", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无权限查询!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
string sql1 = "select top 5000 * from h_v_IF_BarCodeBillList where 1 = 1 ";
|
string sql = sql1 + sWhere + " order by hmainid desc";
|
ds = oCN.RunProcReturn(sql, "h_v_IF_BarCodeBillList");
|
|
//添加列名
|
foreach (DataColumn col in ds.Tables[0].Columns)
|
{
|
Type dataType = col.DataType;
|
string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
|
columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
objJsonResult.list = columnNameList;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
#region [返回条码档案删除功能]
|
/// <summary>
|
/// 返回条码档案删除功能
|
/// </summary>
|
/// <returns></returns>
|
[Route("Gy_MaterialController/DeltetBarCodeBill")]
|
[HttpPost]
|
public object DeltetBarCodeBill([FromBody] JObject oData)
|
{
|
var _value = oData["oData"].ToString();
|
string msg1 = _value.ToString();
|
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
string HInter = sArray[0].ToString();
|
string HInterID = HInter.Replace("\"", "");
|
string user = sArray[1].ToString();
|
string HBarCode = sArray[2].ToString().Replace("\"","");
|
string HComputerName = SystemInformation.ComputerName; //设备名称
|
|
try
|
{
|
DataSet Ds;
|
|
string[] NewBarCode;
|
NewBarCode = HBarCode.Split(Convert.ToChar(","));
|
|
//编辑权限
|
if (!DBUtility.ClsPub.Security_Log("Gy_BarCodeBill_Del", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无删除权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
//删除条码前进行判断
|
Ds = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_MulDelete_Before '" + HInterID + "','" + HBarCode + "'", "h_p_Gy_BarCodeBill_MulDelete_Before", ref DBUtility.ClsPub.sExeReturnInfo);
|
if (Ds == null || Ds.Tables[0].Rows.Count <= 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "删除条码前判断发生错误!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
if (DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][0]) == "1")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
//Int64 lngBillKey = 0;
|
//lngBillKey = DBUtility.ClsPub.isLong(HInterID);
|
if (HInterID == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据ID为空!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
//进行 会计期间 结账 的判断和控制
|
string s = "";
|
int sYear = 0;
|
int sPeriod = 0;
|
DateTime HDate = DateTime.Now;
|
if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
|
{
|
objJsonResult.Message = s;
|
return objJsonResult;
|
}
|
|
Ds = oCN.RunProcReturn("Select * from h_v_IF_BarCodeBillList Where HItemID in (" + HInterID + ")", "h_v_IF_BarCodeBillList");
|
if (Ds.Tables[0].Rows.Count != 0)
|
{
|
oCN.BeginTran();
|
|
//获取系统参数
|
string Ret = "";
|
if (oSystemParameter.ShowBill(ref Ret))
|
{
|
//判断是否只能删除自己生成的条码
|
if (oSystemParameter.omodel.BarCode_DeleterAndMakerMustSame == "Y") //系统参数
|
{
|
oCN.RunProc("Delete from Gy_BarCodeBill Where HItemID in (" + HInterID + ")" + " and HMaker = '" + user + "'");
|
}
|
else
|
{
|
oCN.RunProc("Delete from Gy_BarCodeBill Where HItemID in (" + HInterID + ")");
|
}
|
}
|
|
//写入系统日志
|
for (int i = 0; i <= NewBarCode.Length - 1; i++)
|
{
|
oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "网页版删除条码:" + NewBarCode[i] + "','WMS系统-条码档案列表模块','" + DBUtility.ClsPub.IPAddress + "','删除条码'", ref DBUtility.ClsPub.sExeReturnInfo);
|
}
|
|
oCN.Commit();
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据未找到";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = e.Message;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 条码主档维护 作废/反作废
|
/// <summary>
|
/// </summary>
|
/// <param name="HInterID">单据ID</param>
|
/// <param name="IsAudit">作废(0),反作废(1)</param>
|
/// <param name="CurUserName">作废人</param>
|
/// <returns></returns>
|
[Route("Gy_BarCodeBillList/DeleteGy_BarCodeBillList")]
|
[HttpGet]
|
public object DeleteGy_BarCodeBillList(int HInterID, int IsAudit, string CurUserName)
|
{
|
string ModRightNameCheck = "Gy_BarCodeBillList_Delete";
|
DBUtility.ClsPub.CurUserName = CurUserName;
|
try
|
{
|
//检查权限
|
if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "作废失败!无权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//HInterID数据判断
|
if (HInterID <= 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "HInterID小于0!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
|
Int64 lngBillKey = 0;
|
lngBillKey = DBUtility.ClsPub.isLong(HInterID); //对HInterID进行类型的转换
|
|
//进行需要进行的作废/反作废操作
|
if (IsAudit == 0) //作废提交
|
{
|
oCN.BeginTran();
|
|
//作废条码
|
oCN.RunProc("update Gy_BarCodeBill set HStopflag=1,HDeleteMan='" + CurUserName + "',HDeleteDate=getdate() where HItemID in (" + HInterID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
|
|
string sql = "select * from Gy_BarCodeBill where HItemID = " + HInterID;
|
ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill");
|
if(ds!=null && ds.Tables[0].Rows.Count > 0)
|
{
|
string HBarCode = ds.Tables[0].Rows[0]["HBarCode"].ToString();
|
|
//添加操作日志
|
oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','作废条码:" + HBarCode + "','WMS系统-条码档案列表模块','" + DBUtility.ClsPub.IPAddress + "','作废'", ref DBUtility.ClsPub.sExeReturnInfo);
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "作废成功";
|
objJsonResult.data = null;
|
|
oCN.Commit();
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "作废失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
|
oCN.RollBack();
|
}
|
|
|
return objJsonResult;
|
}
|
if (IsAudit == 1) //反关闭提交
|
{
|
oCN.BeginTran();
|
|
#region 反作废条码前进行判断
|
//反作废条码前进行判断------------------------------------------------------------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
DataSet DS = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_UnCancelltion '" + HInterID + "','N'", "h_p_Gy_BarCodeBill_UnCancelltion", ref DBUtility.ClsPub.sExeReturnInfo);
|
if (DS == null || DS.Tables[0].Rows.Count <= 0)
|
{
|
oCN.RollBack();
|
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "反作废失败,原因:反作废条码前判断发生错误!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]) == "1")
|
{
|
oCN.RollBack();
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "反作废失败,原因:" + DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]);
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
#endregion
|
|
//反作废条码
|
oCN.RunProc("update Gy_BarCodeBill set HStopflag=0,HDeleteMan='',HDeleteDate=null where HItemID in (" + HInterID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
|
|
//增加操作日志
|
string sql = "select * from Gy_BarCodeBill where HItemID = " + HInterID;
|
ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill");
|
if (ds != null && ds.Tables[0].Rows.Count > 0)
|
{
|
string HBarCode = ds.Tables[0].Rows[0]["HBarCode"].ToString();
|
oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','反作废条码:" + HBarCode + "','WMS系统-条码档案列表模块','" + DBUtility.ClsPub.IPAddress + "','反作废'", ref DBUtility.ClsPub.sExeReturnInfo);
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "反作废成功";
|
objJsonResult.data = null;
|
oCN.Commit();
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "反作废失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
oCN.RollBack();
|
return objJsonResult;
|
}
|
}
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "作废失败或者反作废失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region[器具档案编辑时获取子表数据]
|
[Route("Gy_MouldFileMain/Gy_MouldFileSubDetai")]
|
[HttpGet]
|
public object Gy_MouldFileSubDetai(long HInterID)
|
{
|
try
|
{
|
List<DataTable> tableList = new List<DataTable>();
|
ds = oCN.RunProcReturn("select a.*,b.HBillNo from Gy_MouldFileSub_MaintainRule AS a left join Sc_MouldMaintainRuleBillMain as b on b.HInterID = a.HMaintainRuleID where a.HInterID = " + HInterID, "Gy_MouldFileBill_MaintainRule");
|
tableList.Add(ds.Tables[0]);
|
ds = oCN.RunProcReturn("select a.*,b.HBillNo from Gy_MouldFileSub_DotCheckRule AS a left join Sc_MouldDotCheckRuleBillMain as b on b.HInterID = a.HDotCheckRuleID where a.HInterID = " + HInterID, "Gy_MouldFileBill_DotCheckRule");
|
tableList.Add(ds.Tables[0]);
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "";
|
objJsonResult.data = tableList;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
/// <summary>
|
/// 新增模具档案-保存按钮
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_Mould_Edit/AddBill")]
|
[HttpPost]
|
public object AddBill([FromBody] JObject oMain)
|
{
|
var _value = oMain["oMain"].ToString();
|
string msg1 = _value.ToString();
|
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
string msg2 = sArray[0].ToString();
|
string msg3 = sArray[1].ToString();//模块权限
|
string msg4 = sArray[2].ToString();//当前人
|
|
oCN.BeginTran();
|
if (!DBUtility.ClsPub.Security_Log(msg3, 1, false, msg4))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有查看权限";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//保存主表
|
objJsonResult = AddBillMain(msg1);
|
if (objJsonResult.code == "0")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = objJsonResult.Message;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
oCN.Commit();
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "新增单据成功!";
|
return objJsonResult;
|
}
|
|
public json AddBillMain(string msg1)
|
{
|
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
string msg2 = sArray[0].ToString();
|
string msg3 = sArray[1].ToString();//模块权限
|
string msg4 = sArray[2].ToString();//当前人
|
string msg5 = sArray[3].ToString();//子表数据
|
string msg6 = sArray[4].ToString();//子表1数据
|
string msg7 = sArray[5].ToString();//子表2数据
|
try
|
{
|
msg2 = "[" + msg2.ToString() + "]";
|
List<Gy_Mould> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_Mould>>(msg2);
|
string BillType = "3899";
|
//得到mainid
|
long HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
|
string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
|
DateTime HDate = mainList[0].HDate;//日期
|
int HYear = DBUtility.ClsPub.isInt(DateTime.Now.Year);
|
double HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
|
string HMouldNo = mainList[0].HMouldNo;
|
string HBarCode = mainList[0].HBarCode;
|
string HName = mainList[0].HName;
|
string HModel = mainList[0].HModel;
|
string HModel2 = mainList[0].HModel2;
|
string HDiameter = mainList[0].HDiameter;
|
string HSubjoin = mainList[0].HSubjoin;
|
string HSubjoin2 = mainList[0].HSubjoin2;
|
string HPICNo = mainList[0].HPICNo;
|
string HWorkMaterModel = mainList[0].HWorkMaterModel;
|
long HMaterID = mainList[0].HMaterID;
|
long HMouleTypeID = mainList[0].HMouleTypeID;
|
long HUnitID = mainList[0].HUnitID;
|
DateTime HOutComDate = mainList[0].HOutComDate;
|
string HOutComNo = mainList[0].HOutComNo;
|
long HDeptID = mainList[0].HDeptID;
|
long HSupID = mainList[0].HSupID;
|
string HMouldStatus = mainList[0].HMouldStatus;
|
long HWHID = mainList[0].HWHID;
|
long HRoutingID = mainList[0].HRoutingID;
|
long HBOMID = mainList[0].HBOMID;
|
string HVersion = mainList[0].HVersion;
|
long HSPGroupID = mainList[0].HSPGroupID;
|
long HSPID = mainList[0].HSPID;
|
Double HDesignLife = mainList[0].HDesignLife;
|
Double HUseLife = mainList[0].HUseLife;
|
Double HInitLife = mainList[0].HInitLife;//上线初始化寿命
|
Double HLeaveLife = mainList[0].HLeaveLife;
|
Double HProdQty = mainList[0].HProdQty;
|
Double HProdWeight = mainList[0].HProdWeight;
|
string HRemark = mainList[0].HRemark;
|
string HMaker = mainList[0].HMaker;
|
string HMaterNumber = mainList[0].HMaterNumber;
|
string HSupNumber = mainList[0].HSupNumber;
|
long HPrintQty = mainList[0].HPrintQty;
|
string HMouldOWNER = mainList[0].HMouldOWNER;
|
string HSaveLife = mainList[0].HSaveLife;
|
int HCaveQty = mainList[0].HCaveQty;
|
int HMouldDotCheckRuleInterID = mainList[0].HMouldDotCheckRuleInterID;
|
int HMouldMaintainRuleInterID = mainList[0].HMouldMaintainRuleInterID;
|
int HNowSupID = mainList[0].HNowSupID;
|
int HNowSupTypeID = mainList[0].HNowSupTypeID;
|
int HMadeSupID = mainList[0].HMadeSupID;
|
string HMouldClass = mainList[0].HMouldClass;
|
int HNowWHID = mainList[0].HNowWHID;
|
int HNowSPID = mainList[0].HNowSPID;
|
|
//主表
|
oCN.RunProc("Insert Into Gy_MouldFileMain " +
|
"(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
|
",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
|
",HMouldNo,HName,HModel,HModel2,HDiameter" +
|
",HSubjoin,HSubjoin2,HPICNo,HWorkMaterModel" +
|
",HMaterID,HMaterNumber,HMouldType,HUnitID" +
|
",HOutComDate,HOutComNo,HDeptID,HSupID,HSupNumber" +
|
",HPrintQty,HMouldStatus,HWhID,HRoutingID,HCaveQty" +
|
",HBomID,HVersion,HSPGroupID,HSPID,HDesignLife,HNowSupID,HNowSupTypeID" +
|
",HUseLife,HLeaveLife,HProdQty,HProdWeight,HMouldOWNER,HSaveLife,HMouldDotCheckRuleInterID,HMouldMaintainRuleInterID,HBarCode,HMadeSupID" +
|
",HMouldClass,HNowWHID,HNowSPID,HInitLife) " +
|
" values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "','" + HDate + "'" +
|
"," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HMaker + "',getdate()" +
|
",'" + HMouldNo + "','" + HName + "','" + HModel + "','" + HModel2 + "','" + HDiameter + "'" +
|
",'" + HSubjoin + "','" + HSubjoin2 + "','" + HPICNo + "','" + HWorkMaterModel + "'" +
|
"," + HMaterID + ",'" + HMaterNumber + "'," + HMouleTypeID + "," + HUnitID +
|
",'" + HOutComDate + "','" + HOutComNo + "'," + HDeptID + "," + HSupID + ",'" + HSupNumber + "'" +
|
"," + HPrintQty + ",'" + HMouldStatus + "'," + HWHID + "," + HRoutingID + "," + HCaveQty +
|
"," + HBOMID + ",'" + HVersion + "'," + HSPGroupID + "," + HSPID + ",'" + HDesignLife + "','" + HNowSupID + "','" + HNowSupTypeID + "'" +
|
",'" + HUseLife + "','" + HLeaveLife + "','" + HProdQty + "','" + HProdWeight + "','" + HMouldOWNER + "','" + HSaveLife + "','" + HMouldDotCheckRuleInterID + "','" + HMouldMaintainRuleInterID + "','" + HBarCode + "'," + HMadeSupID +
|
",'"+ HMouldClass + "'," + HNowWHID + "," + HNowSPID + ",'" + HInitLife + "') ");
|
|
//子表
|
oCN.RunProc("Insert into Gy_MouldFileSub " +
|
" (HInterID,HEntryID,HRemark" +
|
",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
|
") " +
|
" values('" + HInterID + "',0,''" +
|
",0,0,'','',0,0 " +
|
") ");
|
|
objJsonResult = AddBillSub(msg5,msg6,msg7,HInterID, HBillNo);
|
|
if (objJsonResult.code == "0")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = objJsonResult.Message;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = null;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
|
/// <summary>
|
/// 修改单据-保存按钮
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_Mould_Edit/AddBill1")]
|
[HttpPost]
|
public object AddBill1([FromBody] JObject oMain)
|
{
|
var _value = oMain["oMain"].ToString();
|
string msg1 = _value.ToString();
|
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
string msg2 = sArray[0].ToString();
|
string msg3 = sArray[1].ToString();//模块权限
|
string msg4 = sArray[2].ToString();//当前人
|
string msg5 = sArray[3].ToString();//子表数据
|
string msg6 = sArray[4].ToString();//子表2数据
|
string msg7 = sArray[5].ToString();//子表3数据
|
try
|
{
|
if (!DBUtility.ClsPub.Security_Log(msg3, 1, false, msg4))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有查看权限";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
DAL.ClsGy_MouldFile oMould = new DAL.ClsGy_MouldFile();
|
DAL.ClsGy_MouldFileMain_View oDeptHlp = new DAL.ClsGy_MouldFileMain_View();
|
|
|
//反序列化
|
msg2 = "[" + msg2.ToString() + "]";
|
List<Gy_Mould> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_Mould>>(msg2);
|
|
long HInterID = mainList[0].HInterID;//递入type得到的单据ID
|
string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
|
DateTime HDate = mainList[0].HDate;//日期
|
int HYear = DBUtility.ClsPub.isInt(DateTime.Now.Year);
|
double HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
|
string HMouldNo = mainList[0].HMouldNo;
|
string HBarCode = mainList[0].HBarCode;
|
string HName = mainList[0].HName;
|
string HModel = mainList[0].HModel;
|
string HModel2 = mainList[0].HModel2;
|
string HDiameter = mainList[0].HDiameter;
|
string HSubjoin = mainList[0].HSubjoin;
|
string HSubjoin2 = mainList[0].HSubjoin2;
|
string HPICNo = mainList[0].HPICNo;
|
string HWorkMaterModel = mainList[0].HWorkMaterModel;
|
long HMaterID = mainList[0].HMaterID;
|
long HMouleTypeID = mainList[0].HMouleTypeID;
|
long HUnitID = mainList[0].HUnitID;
|
DateTime HOutComDate = mainList[0].HOutComDate;
|
string HOutComNo = mainList[0].HOutComNo;
|
long HDeptID = mainList[0].HDeptID;
|
long HSupID = mainList[0].HSupID;
|
string HMouldStatus = mainList[0].HMouldStatus;
|
long HWHID = mainList[0].HWHID;
|
long HRoutingID = mainList[0].HRoutingID;
|
long HBOMID = mainList[0].HBOMID;
|
string HVersion = mainList[0].HVersion;
|
long HSPGroupID = mainList[0].HSPGroupID;
|
long HSPID = mainList[0].HSPID;
|
Double HDesignLife = mainList[0].HDesignLife;
|
Double HUseLife = mainList[0].HUseLife;
|
Double HInitLife = mainList[0].HInitLife;
|
Double HLeaveLife = mainList[0].HLeaveLife;
|
Double HProdQty = mainList[0].HProdQty;
|
Double HProdWeight = mainList[0].HProdWeight;
|
string HRemark = mainList[0].HRemark;
|
string HUpDater = mainList[0].HUpDater;
|
string HMaterNumber = mainList[0].HMaterNumber;
|
string HSupNumber = mainList[0].HSupNumber;
|
long HPrintQty = mainList[0].HPrintQty;
|
string HMouldOWNER = mainList[0].HMouldOWNER;
|
string HSaveLife = mainList[0].HSaveLife;
|
int HCaveQty = mainList[0].HCaveQty;
|
int HMouldDotCheckRuleInterID = mainList[0].HMouldDotCheckRuleInterID;
|
int HMouldMaintainRuleInterID = mainList[0].HMouldMaintainRuleInterID;
|
int HNowSupID = mainList[0].HNowSupID;
|
int HNowSupTypeID = mainList[0].HNowSupTypeID;
|
int HMadeSupID = mainList[0].HMadeSupID;
|
string HMouldClass = mainList[0].HMouldClass;
|
int HNowWHID = mainList[0].HNowWHID;
|
int HNowSPID = mainList[0].HNowSPID;
|
|
//若MAINDI重复则重新获取
|
oCN.BeginTran();
|
//主表
|
oCN.RunProc("UpDate Gy_MouldFileMain set " +
|
" HBillNo='" + HBillNo + "'" + //固定赋值===============
|
",HDate='" + HDate + "'" +
|
",HYear='" + HYear.ToString() + "'" +
|
",HPeriod='" + HPeriod.ToString() + "'" +
|
",HRemark='" + HRemark + "'" +
|
",HUpDater='" + HUpDater + "'" +
|
",HUpDateDate=getdate()" +
|
//========================================
|
",HMouldNo='" + HMouldNo + "'" +
|
",HName='" + HName + "'" +
|
",HModel='" + HModel + "'" +
|
",HModel2='" + HModel2 + "'" +
|
",HDiameter='" + HDiameter + "'" +
|
",HSubjoin='" + HSubjoin + "'" +
|
",HSubjoin2='" + HSubjoin2 + "'" +
|
",HPICNo='" + HPICNo + "'" +
|
",HWorkMaterModel='" + HWorkMaterModel + "'" +
|
",HMaterID=" + HMaterID.ToString() +
|
",HMaterNumber='" + HMaterNumber + "'" +
|
",HMouldClass='" + HMouldClass + "'" +
|
",HMouldType=" + HMouleTypeID.ToString() +
|
",HUnitID=" + HUnitID.ToString() +
|
",HOutComDate='" + HOutComDate + "'" +
|
",HOutComNo='" + HOutComNo + "'" +
|
",HDeptID=" + HDeptID.ToString() +
|
",HSupID=" + HSupID.ToString() +
|
",HSupNumber='" + HSupNumber + "'" +
|
",HPrintQty=" + HPrintQty.ToString() +
|
",HMouldStatus='" + HMouldStatus + "'" +
|
",HSaveLife='" + HSaveLife + "'" +
|
",HWhID=" + HWHID.ToString() +
|
",HRoutingID=" + HRoutingID.ToString() +
|
",HBomID=" + HBOMID.ToString() +
|
",HVersion='" + HVersion + "'" +
|
",HSPGroupID=" + HSPGroupID.ToString() +
|
",HSPID=" + HSPID.ToString() +
|
",HDesignLife=" + HDesignLife.ToString() +
|
",HCaveQty=" + HCaveQty.ToString() +
|
",HUseLife=" + HUseLife.ToString() +
|
",HLeaveLife=" + HLeaveLife.ToString() +
|
",HProdQty=" + HProdQty.ToString() +
|
",HMouldDotCheckRuleInterID=" + HMouldDotCheckRuleInterID.ToString() +
|
",HMouldMaintainRuleInterID=" + HMouldMaintainRuleInterID.ToString() +
|
",HMouldOWNER='" + HMouldOWNER + "'" +
|
",HNowSupID=" + HNowSupID.ToString() +
|
",HNowSupTypeID=" + HNowSupTypeID.ToString() +
|
",HProdWeight=" + HProdWeight.ToString() +
|
",HBarCode='" + HBarCode.ToString() + "'" +
|
",HMadeSupID=" + HMadeSupID +
|
",HNowWHID=" + HNowWHID +
|
",HNowSPID=" + HNowSPID +
|
",HInitLife='" + HInitLife +
|
"' where HInterID=" + HInterID.ToString());
|
|
//修改子项目代码
|
//oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Department,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
|
//将上级 为非末级
|
// oCN.RunProc("Update Gy_Department set HEndflag=0 where HItemID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
|
|
oCN.RunProc("delete from Gy_MouldFileSub_SubMater where HInterID='" + HInterID + "'");
|
oCN.RunProc("delete from Gy_MouldFileSub_MaintainRule where HInterID='" + HInterID + "'");
|
oCN.RunProc("delete from Gy_MouldFileSub_DotCheckRule where HInterID='" + HInterID + "'");
|
objJsonResult = AddBillSub(msg5, msg6, msg7, HInterID, HBillNo);
|
|
oCN.Commit();
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "修改单据成功!";
|
//objJsonResult.data = null;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.Message;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
public json AddBillSub(string msg5, string msg6, string msg7, long HInterID, string HBillNo)
|
{
|
List<Gy_MouldFileSub_SubMater> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_MouldFileSub_SubMater>>(msg5);
|
List<ClsGy_MouldFileBillSub_MaintainRule> MaintainRuleColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_MouldFileBillSub_MaintainRule>>(msg6);
|
|
List<ClsGy_MouldFileBillSub_DotCheckRule> DotCheckRuleColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_MouldFileBillSub_DotCheckRule>>(msg7);
|
int i = 0; //作为子表内码
|
foreach (Gy_MouldFileSub_SubMater oSub in DetailColl)
|
{
|
i++; //同一个主表下的子表的内码自增
|
|
int HEntryID = i;
|
string HRemark = oSub.HRemark;
|
int HMouldFileID = oSub.HMouldFileID;
|
DateTime HUnionDate = oSub.HUnionDate;
|
|
string sql = "insert into Gy_MouldFileSub_SubMater" +
|
"(HInterID,HBillNo_bak,HEntryID,HRemark,HMouldFileID,HUnionDate) " +
|
"values(" +
|
"" + HInterID +
|
",'" + HBillNo +
|
"'," + HEntryID +
|
",'" + HRemark +
|
"','" + HMouldFileID +
|
"','" + HUnionDate +
|
"')";
|
|
oCN.RunProc(sql);
|
}
|
i = 0;
|
//保存保养规格
|
foreach (ClsGy_MouldFileBillSub_MaintainRule oSub in MaintainRuleColl)
|
{
|
i++;
|
Int64 NewHEntryID = i;
|
Int64 newHFlag = 1;
|
if (oSub.HStdFlag == true)
|
{
|
newHFlag = 1;
|
}
|
else
|
{
|
newHFlag = 0;
|
}
|
oCN.RunProc($@"Insert into Gy_MouldFileSub_MaintainRule
|
(HInterID,HBillNo_bak,HEntryID,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,
|
HMaintainRuleID,HStdFlag
|
)
|
values({HInterID},'{HBillNo}',{NewHEntryID},'{oSub.HRemark}',{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HRelationQty},{oSub.HRelationMoney}
|
,{oSub.HMaintainRuleID},{newHFlag})");
|
}
|
i = 0;
|
//保存点检规程
|
foreach (ClsGy_MouldFileBillSub_DotCheckRule oSub in DotCheckRuleColl)
|
{
|
i++;
|
Int64 NewHEntryID = i;
|
Int64 newHFlag = 1;
|
if (oSub.HStdFlag == true)
|
{
|
newHFlag = 1;
|
}
|
else
|
{
|
newHFlag = 0;
|
}
|
oCN.RunProc($@"Insert into Gy_MouldFileSub_DotCheckRule
|
(HInterID,HBillNo_bak,HEntryID,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,
|
HDotCheckRuleID,HStdFlag
|
)
|
values({HInterID},'{HBillNo}',{NewHEntryID},'{oSub.HRemark}',{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HRelationQty},{oSub.HRelationMoney}
|
,{oSub.HDotCheckRuleID},{newHFlag})");
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = null;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
/// <summary>
|
/// 磨具档案修改按钮方法-计算下次保养/校正日期-获取档案最近一次的保养记录
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_Mould_Edit/calculateHNextMainDate")]
|
[HttpGet]
|
public object calculateHNextMainDate(long HInterID)
|
{
|
try
|
{
|
string sql = @"select top(1) a.HInterID, b.HEndDate 保养记录结束日期
|
from Gy_MouldFileMain AS a LEFT OUTER JOIN
|
Sc_MouldMaintainBillMain AS b on a.HInterID = b.HMouldID
|
where a.HInterID = " + HInterID +
|
" order by b.HEndDate desc";
|
|
ds = oCN.RunProcReturn(sql, "Sc_MouldMaintainBillMain");
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
/// <summary>
|
/// 磨具档案修改按钮方法
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_Mould_Edit/xg")]
|
[HttpGet]
|
public object xg(long HInterID)
|
{
|
try
|
{
|
ds = oCN.RunProcReturn("select * from h_v_Gy_MouldFile_Edit where hmainid=" + HInterID, "h_v_Gy_MouldFile_Edit");
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
/// <summary>
|
/// 模具档案删除按钮
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Gy_Mould_Edit/Delete_Json")]
|
[HttpGet]
|
public object Delete_Json(long hmainid, string ModRightNameDelete, string user)
|
{
|
DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
|
try
|
{
|
if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有删除权限";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (oBill.DeleteBill(hmainid, ref DBUtility.ClsPub.sExeReturnInfo))
|
{
|
oCN.RunProc("Delete From Gy_MouldFileSub_MaintainRule where HInterID=" + hmainid);
|
oCN.RunProc("Delete From Gy_MouldFileSub_DotCheckRule where HInterID=" + hmainid);
|
//写入日志
|
ClsPub.Add_Log("", "删除项目,代码:" + oBill.omodel.HMouldNo + ",名称:" + oBill.omodel.HName, ClsPub.CurUserName);
|
//更新上级为 末级
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "删除失败";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//ds = oCN.RunProcReturn("delete from Gy_Department where HItemID = " + HItemID, "Gy_Department");
|
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
}
|
return objJsonResult;
|
}
|
|
/// <summary>
|
/// 模具档案初始化按钮
|
/// </summary>
|
/// <param name="hmainid"></param>
|
/// <param name="user"></param>
|
/// <returns></returns>
|
[Route("Gy_Material/InitializeProdInBill")]
|
[HttpGet]
|
public object InitializeProdInBill(long hmainid, string user, string userID)
|
{
|
DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
|
try
|
{
|
string HBillNo = "";
|
Int64 HInterID = 0;//显示的字段
|
ds = oCN.RunProcReturn("select * from Gy_MouldFileMain where HInterID='" + hmainid + "'", "Gy_MouldFileMain");
|
DataRow dr = ds.Tables[0].Rows[0];
|
HInterID = DBUtility.ClsPub.CreateBillID("3801", ref DBUtility.ClsPub.sExeReturnInfo);
|
HBillNo = DBUtility.ClsPub.CreateBillCode("3801", ref DBUtility.ClsPub.sExeReturnInfo, true);
|
string sql = "Insert Into Sc_MouldStockBillMain " +
|
"(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
|
",HMaker,HMakeDate" + /*"HYear, HPeriod,"*/
|
",HSupID,HSupTypeID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" +
|
",HKeeperID,HDeptID,HInnerBillNo,HRedBlueFlag" +
|
") " +
|
" values('3801','3801'," + HInterID + ",'" + HBillNo + "',getdate()" +
|
", '" + user + "',getdate()" +
|
", " + dr["HSupID"].ToString() + ", 1," + dr["HWhID"].ToString() + ",0,0,0,0" +
|
", 0," + dr["HDeptID"].ToString() + ",' ',0" +
|
|
") ";
|
string sql1 = string.Format(@"Insert Into Sc_MouldStockBillSub (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark,HSourceInterID,
|
HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaterID,HPropertyID,HSecUnitRate,HSecUnitID,HUnitID,
|
HBatchNo,HQtyMust,HQty,HPrice,HMoney,HDesignLife,HLeaveLife,HUseLife,HWHID,HSCWHID,HSPID,HSCSPID,HSPGroupID,HCorrespondentTypeID,HCorrespondentID,
|
HStockOrgID,HOWNERID,HOtherOrgID,HOWNERTYPEID) values(" + HInterID + ",1,'',getdate(),0,'',0,0,'',''," +
|
"0,0," + dr["HInterID"].ToString() + ",0,0,0," + dr["HUnitID"].ToString() + ",0," + dr["HProdQty"].ToString() + "," + dr["HProdQty"].ToString() + ",0," +
|
"0," + dr["HDesignLife"].ToString() + "," + dr["HLeaveLife"].ToString() + "," + dr["HUseLife"].ToString() + "," + dr["HWHID"].ToString() + ",0," + dr["HSPID"].ToString() + ",0,0"
|
+ ",0,0," + userID + ",0,0,'')");
|
//主表
|
oCN.RunProc(sql);
|
oCN.RunProc(sql1);
|
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "初始化成功,单据号为" + HBillNo;
|
//WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
|
objJsonResult.data = 1;
|
return objJsonResult;
|
|
}
|
catch (Exception)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "初始化失败!";
|
objJsonResult.data = null;
|
}
|
return objJsonResult;
|
|
}
|
|
#region [同步基础资料]
|
[Route("Gy_Material/Gy_MaterialViewApi")]
|
[HttpGet]
|
public json Gy_MaterialViewApi(string Number, string Type)
|
{
|
string sql = string.Empty;
|
string sReturn = "";
|
if (oSystemParameter.ShowBill(ref sReturn) == true)
|
{
|
//系统参数是否为私有云模式,N为公有云模式,Y为私有云模式
|
if (oSystemParameter.omodel.WMS_CloudMode == "Y")
|
{
|
#region [私有云模式,直接调用数据库存储过程更新]
|
try
|
{
|
oCN.BeginTran();
|
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
DataSet DS = oCn.RunProcReturn("exec h_p_WMS_ERPBasicInfoToLocal '" + Number + "','" + Type + "'", "h_p_WMS_ERPBasicInfoToLocal");
|
if (DS == null)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "基础资料同步失败";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HBack"]) == "2")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "ERP中不存在该代码";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "基础资料同步成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
#endregion
|
}
|
else
|
{
|
#region [公有云模式,调用WEBAPI的方式进行更新]
|
var json = new
|
{
|
CreateOrgId = 0,
|
Number = Number,
|
Id = ""
|
};
|
#region [金蝶部分]
|
//登录金蝶
|
var loginRet = InvokeHelper.Login();
|
var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
|
//判断是否登录成功
|
if (isSuccess < 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = loginRet;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//查看 获取数据
|
var _result = InvokeHelper.View("BD_MATERIAL", JsonConvert.SerializeObject(json));
|
var _saveObj = JObject.Parse(_result);
|
//判断数据是否获取成功
|
if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "金蝶物料同步失败jsonRoot:" + _result;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
#endregion
|
//获取数据
|
DataSet Ds;
|
Ds = oCN.RunProcReturn("select * from Gy_Material where HNumber = '" + Number + "'", "Gy_Material");
|
if (Ds.Tables[0].Rows.Count != 0 && ClsPub.isLong(Ds.Tables[0].Rows[0]["HItemID"].ToString()) != 0)
|
{
|
|
}
|
|
#region [表数据赋值]
|
var jsonData = new
|
{
|
HItemID = _saveObj["Result"]["Result"]["Id"],
|
HERPItemID = _saveObj["Result"]["Result"]["Id"],
|
HNumber = _saveObj["Result"]["Result"]["Number"],
|
HName = _saveObj["Result"]["Result"]["Name"][1]["Value"],
|
HModel = _saveObj["Result"]["Result"]["Specification"][0]["Value"],
|
HShortNumber = _saveObj["Result"]["Result"]["Number"],
|
HParentID = 0,
|
HLevel = 1,
|
HEndFlag = 1,
|
HStopflag = _saveObj["Result"]["Result"]["ForbidStatus"].ToString() == "A" ? 0 : 1 ,
|
HRemark = "CLD-ERP导入",
|
HMaterClsID = _saveObj["Result"]["Result"]["MaterialBase"][0]["ErpClsID"],
|
HUnitID = _saveObj["Result"]["Result"]["MaterialBase"][0]["BaseUnitId_Id"],
|
HUnitGroupID = 0,
|
HLength = _saveObj["Result"]["Result"]["MaterialBase"][0]["LENGTH"],
|
HWidth = _saveObj["Result"]["Result"]["MaterialBase"][0]["WIDTH"],
|
HHeight = _saveObj["Result"]["Result"]["MaterialBase"][0]["HEIGHT"],
|
HJQty = _saveObj["Result"]["Result"]["MaterialBase"][0]["NETWEIGHT"],
|
HMQty = _saveObj["Result"]["Result"]["MaterialBase"][0]["GROSSWEIGHT"],
|
HOldMaterNumber = _saveObj["Result"]["Result"]["OldNumber"],
|
HWHID = 0,
|
HSPID = _saveObj["Result"]["Result"]["MaterialStock"][0]["StockPlaceId_Id"],
|
HPlanMode = _saveObj["Result"]["Result"]["MaterialPlan"][0]["PlanMode"],
|
HUseFlag = "未检验",
|
HMakeTime = _saveObj["Result"]["Result"]["CreateDate"],
|
HMinPickQty = 0,
|
HCREATEORGID = _saveObj["Result"]["Result"]["CreateOrgId_Id"],
|
HUSEORGID = _saveObj["Result"]["Result"]["UseOrgId_Id"],
|
HBatchManager = _saveObj["Result"]["Result"]["MaterialStock"][0]["IsBatchManage"].ToString() == "false" ? 0 : 1,
|
HCHECKINCOMING = _saveObj["Result"]["Result"]["MaterialQM"][0]["CheckIncoming"].ToString() == "false" ? 0 : 1,
|
HAuxPropFlag = _saveObj["Result"]["Result"]["MaterialAuxPty"][0]["IsEnable1"].ToString() == "false" ? 0 : 1,
|
HISKFPERIOD = _saveObj["Result"]["Result"]["MaterialStock"][0]["IsKFPeriod"].ToString() == "false" ? 0 : 1,
|
HAuxUnitID = _saveObj["Result"]["Result"]["MaterialStock"][0]["AuxUnitID_Id"],
|
HSNUnitID = _saveObj["Result"]["Result"]["MaterialStock"][0]["SNUnit_Id"],
|
HBASEUNITID = _saveObj["Result"]["Result"]["MaterialBase"][0]["BaseUnitId_Id"],
|
HSALEUNITID = _saveObj["Result"]["Result"]["MaterialSale"][0]["SaleUnitId_Id"],
|
HSALEPRICEUNITID = _saveObj["Result"]["Result"]["MaterialSale"][0]["SalePriceUnitId_Id"],
|
HPERUNITSTANDHOUR = _saveObj["Result"]["Result"]["MaterialProduce"][0]["PerUnitStandHour"],
|
HSTDLABORPREPARETIME = _saveObj["Result"]["Result"]["MaterialProduce"][0]["StdLaborPrePareTime"],
|
HSTDMACHINEPREPARETIME = _saveObj["Result"]["Result"]["MaterialProduce"][0]["StdMachinePrepareTime"]
|
};
|
#endregion
|
// 删除主表对应数据
|
sql = $"delete from Gy_Material where HItemID = " + jsonData.HItemID + " and HNumber = '" + Number + "'";
|
oCN.RunProc(sql);
|
|
sql = "set identity_insert Gy_Material on";
|
oCN.RunProc(sql);
|
|
//插入表
|
sql = $@"
|
insert into Gy_Material
|
(HItemID,HERPItemID,HNumber,HName,HModel,HShortNumber,HParentID
|
,HLevel,HEndFlag,HStopflag,HRemark,HMaterClsID,HUnitID,HUnitGroupID
|
,HLength,HWidth,HHeight,HJQty,HMQty,HOldMaterNumber
|
,HWHID,HSPID,HPlanMode,HUseFlag,HMakeTime,HMinPickQty
|
,HCREATEORGID,HUSEORGID,HBatchManager,HCHECKINCOMING
|
,HAuxPropFlag,HISKFPERIOD
|
,HAuxUnitID,HSNUnitID,HBASEUNITID,HSALEUNITID,HSALEPRICEUNITID
|
,HPERUNITSTANDHOUR,HSTDLABORPREPARETIME,HSTDMACHINEPREPARETIME
|
)
|
values
|
({jsonData.HItemID},{jsonData.HItemID},'{jsonData.HNumber}','{jsonData.HName}','{jsonData.HModel}',
|
'{jsonData.HShortNumber}',{jsonData.HParentID},{jsonData.HLevel},{jsonData.HEndFlag},{jsonData.HStopflag},'{jsonData.HRemark}',{jsonData.HMaterClsID},{jsonData.HUnitID},{jsonData.HUnitGroupID},{jsonData.HLength},{jsonData.HWidth},{jsonData.HHeight},{jsonData.HJQty},{jsonData.HMQty},'{jsonData.HOldMaterNumber}',{jsonData.HWHID},{jsonData.HSPID},'{jsonData.HPlanMode}','{jsonData.HUseFlag}','{jsonData.HMakeTime}',{jsonData.HMinPickQty},{jsonData.HCREATEORGID},{jsonData.HUSEORGID},'{jsonData.HBatchManager}',{jsonData.HCHECKINCOMING},{jsonData.HAuxPropFlag},{jsonData.HISKFPERIOD},{jsonData.HAuxUnitID},{jsonData.HSNUnitID},{jsonData.HBASEUNITID},{jsonData.HSALEUNITID},{jsonData.HSALEPRICEUNITID},{jsonData.HPERUNITSTANDHOUR},'{jsonData.HSTDLABORPREPARETIME}','{jsonData.HSTDMACHINEPREPARETIME}')";
|
|
oCN.RunProc(sql);
|
|
sql = "set identity_insert Gy_Material off";
|
oCN.RunProc(sql);
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "物料同步成功!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
|
#endregion
|
}
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "基础资料读取失败!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region [模具档案审核、反审核]
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="HInterID">单据ID</param>
|
/// <param name="IsAudit">审核(0),反审核(1)</param>
|
/// <param name="CurUserName">审核人</param>
|
/// <returns></returns>
|
[Route("Gy_Mould/AuditProcessReportList")]
|
[HttpGet]
|
public object AuditProcessReportList(int HInterID, int IsAudit, string CurUserName)
|
{
|
string ModRightNameCheck = "Gy_MouldFile_Check";
|
DBUtility.ClsPub.CurUserName = CurUserName;
|
try
|
{
|
//审核权限
|
if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "审核失败!无权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (HInterID <= 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "HInterID小于0!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
Int64 lngBillKey = 0;
|
lngBillKey = DBUtility.ClsPub.isLong(HInterID);
|
DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
|
//查看是否已审核,关闭,作废
|
if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
|
{
|
if (oBill.omodel.HCloseMan.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已关闭!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (oBill.omodel.HDeleteMan.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已作废!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (IsAudit == 0) //审核判断
|
{
|
if (oBill.omodel.HChecker.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已审核!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsAudit == 1) //反审核判断
|
{
|
if (oBill.omodel.HChecker.Trim() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据未审核!不需要反审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (IsAudit == 0) //审核提交
|
{
|
//审核提交
|
if (oBill.CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "审核成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsAudit == 1) //反审核提交
|
{
|
//反审核提交AbandonCheck
|
if (oBill.AbandonCheck(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "反审核成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region [模具档案批量生成]
|
[Route("Gy_Mould/SaveBatchGen_MouldFile")]
|
[HttpGet]
|
public object SaveBatchGen_MouldFile(long HInterID, string StarNum, string EndNum)
|
{
|
int StarNum1 = int.Parse(StarNum);
|
int EndNum1 = int.Parse(EndNum);
|
string j;
|
List<object> list = new List<object>();
|
try
|
{
|
DataSet ds = new DataSet();
|
ds = oCN.RunProcReturn("select * from Gy_MouldFileMain where HInterID=" + HInterID, "Gy_MouldFileMain");
|
DataRow dr = ds.Tables[0].Rows[0];
|
string Num = dr["HBarCode"].ToString();
|
string Num1 = Num.Substring(0, (Num.Length) - 5);
|
oCN.BeginTran();
|
for (int i = StarNum1; i <= EndNum1; i++)
|
{
|
if (i < 10)
|
{
|
j = "0000" + i;
|
}
|
else if (i < 100)
|
{
|
j = "000" + i;
|
}
|
else if (i < 1000)
|
{
|
j = "00" + i;
|
}
|
else if (i < 10000)
|
{
|
j = "0" + i;
|
}
|
else
|
{
|
j = "" + i;
|
}
|
DataSet ds1 = oCN.RunProcReturn("select * from Gy_MouldFileMain where hbillno='" + (Num1 + j) + "'", "Gy_MouldFileMain");
|
if (ds1.Tables[0].Rows.Count == 0 || ds1 == null)
|
{
|
long HItemID = DBUtility.ClsPub.CreateBillID("3899", ref DBUtility.ClsPub.sExeReturnInfo);
|
//string HBillNo = DBUtility.ClsPub.CreateBillCode("3899", ref DBUtility.ClsPub.sExeReturnInfo, true);
|
string sql = string.Format(@"Insert Into Gy_MouldFileMain " +
|
"(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
|
",HYear,HPeriod,HRemark,HMaker,HMakeDate,HBarCode" +
|
",HMouldNo,HName,HModel,HModel2,HDiameter" +
|
",HSubjoin,HSubjoin2,HPICNo,HWorkMaterModel" +
|
",HMaterID,HMaterNumber,HMouldType,HUnitID" +
|
",HOutComDate,HOutComNo,HDeptID,HSupID,HSupNumber" +
|
",HPrintQty,HMouldStatus,HWhID,HRoutingID,HCaveQty" +
|
",HBomID,HVersion,HSPGroupID,HSPID,HDesignLife,HNowSupID,HNowSupTypeID" +
|
",HUseLife,HLeaveLife,HProdQty,HProdWeight,HMouldOWNER,HSaveLife,HMouldDotCheckRuleInterID,HMouldMaintainRuleInterID" +
|
") " +
|
" values('3899','3899'," + HItemID + ",'" + Num1 + j + "',getdate()" +
|
"," + dr["HYear"] + "," + dr["HPeriod"] + ",'" + dr["HRemark"] + "','" + dr["HMaker"] + "',getdate(),'" + Num1 + j +
|
"','" + Num1 + j + "','" + dr["HName"] + "','" + dr["HModel"] + "','" + dr["HModel2"] + "','" + dr["HDiameter"] + "'" +
|
",'" + dr["HSubjoin"] + "','" + dr["HSubjoin2"] + "','" + dr["HPICNo"] + "','" + dr["HWorkMaterModel"] + "'" +
|
"," + dr["HMaterID"] + ",'" + dr["HMaterNumber"] + "',0," + dr["HUnitID"] +
|
",'" + dr["HOutComDate"] + "','" + dr["HOutComNo"] + "'," + dr["HDeptID"] + "," + dr["HSupID"] + ",'" + dr["HSupNumber"] + "'" +
|
"," + dr["HPrintQty"] + ",'" + dr["HMouldStatus"] + "'," + dr["HWHID"] + "," + dr["HRoutingID"] + ",'" + dr["HCaveQty"] +
|
"'," + dr["HBOMID"] + ",'" + dr["HVersion"] + "'," + dr["HSPGroupID"] + "," + dr["HSPID"] + ",'" + dr["HDesignLife"] + "','" + dr["HNowSupID"] + "','" + dr["HNowSupTypeID"] + "'" +
|
",'" + dr["HUseLife"] + "','" + dr["HLeaveLife"] + "','" + dr["HProdQty"] + "','" + dr["HProdWeight"] + "','" + dr["HMouldOWNER"] + "','" + dr["HSaveLife"] + "','" + dr["HMouldDotCheckRuleInterID"] + "','" + dr["HMouldMaintainRuleInterID"] + "'" +
|
") ");
|
oCN.RunProc(sql);
|
|
//子表
|
oCN.RunProc("Insert into Gy_MouldFileSub " +
|
" (HInterID,HEntryID,HRemark" +
|
",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
|
") " +
|
" values('" + HItemID + "',0,''" +
|
",0,0,'','',0,0 " +
|
") ");
|
}
|
else
|
{
|
list.Add(ds1.Tables[0].Rows[0]["HBillNo"].ToString());
|
}
|
}
|
oCN.Commit();
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "批量生成成功!";
|
objJsonResult.list = list;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "批量生成失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
public void cs(string msg)
|
{
|
var client = new RestSharp.RestClient("http://47.96.97.237/api/");
|
var requestPost = new RestRequest("Gy_Material/SaveGy_MaterialList", Method.POST);
|
Info info = new Info();
|
info.msg = msg;
|
var json = JsonConvert.SerializeObject(info);
|
requestPost.AddParameter("application/json", json, ParameterType.RequestBody);
|
IRestResponse responsePost = client.Execute(requestPost);
|
var contentPost = responsePost.Content;
|
Console.WriteLine("POST方式获取结果:" + contentPost);
|
Console.Read();
|
}
|
|
public class Info
|
{
|
public string msg { get; set; } //末级标志
|
|
}
|
#region 物料文件上传处理
|
[Route("Gy_Mater/UploadFile")]
|
[HttpPost]
|
public object UploadFile()
|
{
|
|
string HNumber = HttpContext.Current.Request.Params["HNumber"]; //物料代码
|
string HRemark = HttpContext.Current.Request.Params["HRemark"]; //备注
|
string HUserName = HttpContext.Current.Request.Params["HUserName"]; //创建人
|
HttpPostedFile files = HttpContext.Current.Request.Files["file"];
|
string path = HttpContext.Current.Server.MapPath("~/../Files/Material/" + HNumber);
|
//string path = @"D:\\Files\Material\\"+ HBillNo;
|
dynamic dyResult = UpLoadFile(files, path, HNumber, HRemark, HUserName);
|
if (dyResult != null && dyResult.result == 1)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "上传成功!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = dyResult.returnval;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
}
|
|
public dynamic UpLoadFile(HttpPostedFile files, string path, string HNumber, string HRemark, string HUserName)
|
{
|
dynamic Result_Ob = new { result = 1, returnval = "上传成功!" };
|
string filePath = Path.GetFullPath(files.FileName);//文件上传路径
|
string fileExtension = Path.GetExtension(files.FileName);// 文件扩展名
|
string filename = files.FileName;//文件名
|
string fileSavePath = path;// 上传保存路径
|
int filesize = files.ContentLength;//获取上传文件的大小单位为字节byte
|
int Maxsize = 40000 * 1024;//定义上传文件的最大空间大小为40M
|
try
|
{
|
if (files == null || files.ContentLength <= 0)
|
{
|
Result_Ob = new { result = 0, returnval = "文件不能为空!" };
|
return Result_Ob;
|
}
|
if (filesize >= Maxsize)
|
{
|
Result_Ob = new { result = 0, returnval = "上传文件超过40M,不能上传!" };
|
return Result_Ob;
|
}
|
|
string fileurl = Path.Combine(fileSavePath, filename);
|
if (Directory.Exists(fileurl) == true) //如果存在重名文件就提示
|
{
|
Result_Ob = new { result = 0, returnval = "存在同名文件!" };
|
return Result_Ob;
|
}
|
//删除数据表数据
|
ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo ='" + HNumber + "' and HFileName='" + filename + "'", "MES_AccessoriesList");
|
if (Directory.Exists(path))
|
{
|
File.Delete(fileurl); //删除指定文件
|
files.SaveAs(fileurl);
|
string StrPath = "/files/Material/" + HNumber + "/" + filename;
|
if (File.Exists(fileurl))
|
{
|
//这里可以执行一些其它的操作,比如更新数据库
|
//写入数据表
|
oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
|
",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
|
",HFileClsID,HSourceBillNo" +
|
") values('"
|
+ filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
|
",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
|
"','" + 0 + "','" + HNumber +
|
"') ");
|
}
|
else
|
{
|
Result_Ob = new { result = 0, returnval = "上传失败!此文件为恶意文件" };
|
}
|
}
|
else
|
{
|
Directory.CreateDirectory(fileSavePath); //添加文件夹
|
files.SaveAs(fileurl);
|
string StrPath = "/files/Material/" + HNumber + "/" + filename;
|
if (File.Exists(fileurl))
|
{
|
//这里可以执行一些其它的操作,比如更新数据库
|
//写入数据表
|
oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
|
",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
|
",HFileClsID,HSourceBillNo" +
|
") values('"
|
+ filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
|
",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
|
"','" + 0 + "','" + HNumber +
|
"') ");
|
}
|
else
|
{
|
Result_Ob = new { result = 0, returnval = "上传失败!此文件为恶意文件" };
|
}
|
}
|
|
}
|
catch (Exception e)
|
{
|
Result_Ob = new { result = 0, returnval = e.Message };
|
}
|
return Result_Ob;
|
}
|
|
/// <summary>
|
/// 根据单据号查找上传文件列表
|
/// </summary>
|
/// <param name="sWhere"></param>
|
/// <returns></returns>
|
[Route("Gy_Mater/Filelist")]
|
[HttpGet]
|
public object Filelist(string HNumber)
|
{
|
var url = fileip + "/files/Material/" + HNumber + "/";
|
//@"C:\\files\\"
|
try
|
{
|
ds = oCN.RunProcReturn("select *,'" + url + "'+CAST(HFileName as varchar(200))as url from MES_AccessoriesList where HSourceBillNo='" + HNumber + "'", "MES_AccessoriesList");
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
/// <summary>
|
/// 根据ID,单据号,文件名 删除文件
|
/// </summary>
|
/// <param name="sWhere"></param>
|
/// <returns></returns>
|
[Route("Gy_Mater/DeleteFilelist")]
|
[HttpGet]
|
public object DeleteFilelist(string HItemID, string HSourceBillNo, string HFileName)
|
{
|
try
|
{
|
|
oCN.RunProc("delete from MES_AccessoriesList where HItemID =" + HItemID);
|
string fileurl = Path.Combine(HttpContext.Current.Server.MapPath("~/../Files/Material/" + HSourceBillNo), HFileName);
|
File.Delete(fileurl); //删除指定文件
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除成功!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
}
|
}
|