| | |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.Web.Http; |
| | | using System.Windows.Forms; |
| | | using WebAPI.Models; |
| | | |
| | | namespace WebAPI.Controllers |
| | |
| | | private json objJsonResult = new json(); |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | | Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); |
| | | |
| | | |
| | | #region[新增单据-保存按钮] |
| | | /// <summary> |
| | |
| | | string msg3 = sArray[1].ToString(); |
| | | string msg4 = sArray[2].ToString(); |
| | | string msg5 = sArray[3].ToString(); |
| | | string HComputerName = SystemInformation.ComputerName; //设备名称 |
| | | |
| | | string UserName = ""; |
| | | ListModels oListModels = new ListModels(); |
| | |
| | | bool bResult; |
| | | if (msg5 == "xz") |
| | | { |
| | | LogService.Write("用户:" + msg4 + ",日期:" + DateTime.Now + ",新增工序流转卡单据:" + oBill.omodel.HBillNo); |
| | | // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); |
| | | bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "新增工序流转卡单据:" + oBill.omodel.HBillNo + "','LMES-工序流转卡模块','" + DBUtility.ClsPub.IPAddress + "','新增单据'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | } |
| | | else |
| | | { |
| | | LogService.Write("用户:" + msg4 + ",日期:" + DateTime.Now + ",修改工序流转卡单据:" + oBill.omodel.HBillNo); |
| | | bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "修改工序流转卡单据:" + oBill.omodel.HBillNo + "','LMES-工序流转卡模块','" + DBUtility.ClsPub.IPAddress + "','修改单据'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | } |
| | | if (bResult) |
| | | { |
| | |
| | | //} |
| | | #endregion |
| | | |
| | | #region[新增单据-保存按钮-批量复制] |
| | | /// <summary> |
| | | /// 新增单据-保存按钮 |
| | | ///参数:string sql。 |
| | | ///返回值:object。 |
| | | /// </summary> |
| | | [Route("Sc_ProcessExchangeBill/AddBill_Copy_pl")] |
| | | [HttpPost] |
| | | public object AddBill_Copy_pl([FromBody] JObject sMainSub) |
| | | { |
| | | var _value = sMainSub["sMainSub"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | int msg2 = int.Parse(sArray[0].ToString()); |
| | | string msg3 = sArray[1].ToString(); |
| | | string msg4 = sArray[2].ToString(); |
| | | string msg5 = sArray[3].ToString(); |
| | | string HComputerName = SystemInformation.ComputerName; //设备名称 |
| | | |
| | | string UserName = ""; |
| | | ListModels oListModels = new ListModels(); |
| | | string sReturn = ""; |
| | | try |
| | | { |
| | | if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Edit", 1, false, msg4)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无保存权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); |
| | | DBUtility.ClsPub.HOrgID = long.Parse(msg5); |
| | | DBUtility.ClsPub.CurUserName = msg4; |
| | | oBill.ShowBill(long.Parse(msg3), ref sReturn); |
| | | |
| | | ds = oCN.RunProcReturn("select isnull(sum(HQty),0) from Sc_ProcessExchangeBillMain where HICMOBillNo='" + oBill.omodel.HICMOBillNo + "' and HInterID <>"+ oBill.omodel.HInterID, "Sc_ProcessExchangeBillMain"); |
| | | var HQty = double.Parse(ds.Tables[0].Rows[0][0].ToString()); |
| | | int num = 0; |
| | | //单据数量 * 张数 + 已生成不包括本单据的数量 >生产订单数量 |
| | | if ((oBill.omodel.HQty * msg2) + HQty > oBill.omodel.HPlanQty) |
| | | { |
| | | if (((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) % oBill.omodel.HQty) == 0) |
| | | { |
| | | num = (int)((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) / oBill.omodel.HQty); |
| | | } else |
| | | { |
| | | num = (int)((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) / oBill.omodel.HQty); |
| | | num += 1; |
| | | } |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "最多可以复制" + num + "张!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (num == 0) { |
| | | double HPlanQty = oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty; |
| | | for (int i = 0; i < msg2; i++) |
| | | { |
| | | oBill.omodel.HBillNo = DBUtility.ClsPub.CreateBillCode("3772", ref DBUtility.ClsPub.sExeReturnInfo, true); |
| | | oBill.omodel.HDate =DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd")); |
| | | oBill.omodel.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); |
| | | oBill.omodel.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month); |
| | | oBill.omodel.HChecker = ""; |
| | | oBill.omodel.HCheckDate = ""; |
| | | oBill.omodel.HMaker = msg4; |
| | | |
| | | if (HPlanQty < oBill.omodel.HQty) |
| | | { |
| | | oBill.omodel.HQty = HPlanQty; |
| | | } |
| | | |
| | | for (int j = 0; j < oBill.DetailColl.Count; j++) |
| | | { |
| | | oBill.DetailColl[j].HRelationQty_In = 0; |
| | | oBill.DetailColl[j].HRelationQty_Out = 0; |
| | | oBill.DetailColl[j].HRelationQty_Bad = 0; |
| | | } |
| | | |
| | | //保存完毕后处理 |
| | | bool bResult; |
| | | LogService.Write("用户:" + msg4 + ",日期:" + DateTime.Now + ",新增工序流转卡单据:" + oBill.omodel.HBillNo); |
| | | oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "新增工序流转卡单据:" + oBill.omodel.HBillNo + "','LMES-工序流转卡模块','" + DBUtility.ClsPub.IPAddress + "','新增单据'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | bResult = oBill.AddBill(ref sReturn); |
| | | if (bResult) |
| | | { |
| | | num++; |
| | | HPlanQty -= oBill.omodel.HQty; |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "复制了" + num + "张单据!"; |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!" + e.ToString(); |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region[批量新增单据-保存按钮] |
| | | /// <summary> |
| | | /// 新增单据-保存按钮 |
| | |
| | | string msg4 = sArray[2].ToString();//工艺路线 |
| | | string msg5 = sArray[3].ToString();//类型 |
| | | string msg6 = sArray[4].ToString();//用户 |
| | | string HComputerName = SystemInformation.ComputerName; //设备名称 |
| | | |
| | | ListModels oListModels = new ListModels(); |
| | | |
| | |
| | | bool bResult=false; |
| | | if (msg5 == "2") |
| | | { |
| | | LogService.Write("用户:" + msg6 + ",日期:" + DateTime.Now + ",新增工序流转卡单据:" + oBill.omodel.HBillNo); |
| | | oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg6 + "','" + HComputerName + "','" + "新增工序流转卡单据:" + oBill.omodel.HBillNo + "','LMES-工序流转卡模块','" + DBUtility.ClsPub.IPAddress + "','新增单据'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); |
| | | } |
| | | oBill.DetailColl.Clear(); |
| | |
| | | /// <returns></returns> |
| | | [Route("Sc_ProcessExchangeBill/DeltetProcessExchangeBillByID")] |
| | | [HttpGet] |
| | | public object DeltetProcessExchangeBillByID(string HInterID,int HPRDORGID, string user) |
| | | public object DeltetProcessExchangeBillByID(string HInterID, int HPRDORGID, string user) |
| | | { |
| | | //编辑权限 |
| | | if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Drop", 1, false, user)) |
| | |
| | | return objJsonResult; |
| | | } |
| | | |
| | | |
| | | Int64 lngBillKey = 0; |
| | | lngBillKey = DBUtility.ClsPub.isLong(HInterID); |
| | | if (lngBillKey == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据ID为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | |
| | | //删除前判断关联数量 |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | | ds = oCn.RunProcReturn("select ct from ( " + |
| | | " select 1 ct from Sc_StationInBillMain Where HProcExchInterID=" + lngBillKey + " " + |
| | | " union all " + |
| | | " select 1 from Sc_StationOutBillMain Where HProcExchInterID=" + lngBillKey + " ) as a ", "Sc_ProcExchReportSub"); |
| | | if (ds.Tables[0].Rows.Count != 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "流转卡已经有下游进出站单后,不允许删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | string HComputerName = SystemInformation.ComputerName; //设备名称 |
| | | |
| | | DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); |
| | | DBUtility.ClsPub.HOrgID = HPRDORGID; |
| | | if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | { |
| | | if (oBill.omodel.HBillStatus > 1) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据当前处于不能删除状态,不能删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | if (oBill.omodel.HChecker != "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已经审核,不能删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (IsDete) |
| | | string[] HBillNo = HInterID.Split(','); |
| | | |
| | | string HBillNo_S = ""; |
| | | |
| | | foreach (var item in HBillNo) |
| | | { |
| | | Int64 lngBillKey = 0; |
| | | lngBillKey = DBUtility.ClsPub.isLong(item); |
| | | |
| | | DBUtility.ClsPub.HOrgID = HPRDORGID; |
| | | if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | if (lngBillKey == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:"+ oBill .omodel.HBillNo+ "单据ID为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //删除前判断关联数量 |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | | ds = oCn.RunProcReturn("select ct from ( " + |
| | | " select 1 ct from Sc_StationInBillMain Where HProcExchInterID=" + lngBillKey + " " + |
| | | " union all " + |
| | | " select 1 from Sc_StationOutBillMain Where HProcExchInterID=" + lngBillKey + " ) as a ", "Sc_ProcExchReportSub"); |
| | | if (ds.Tables[0].Rows.Count != 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:" + oBill.omodel.HBillNo + "流转卡已经有下游进出站单后,不允许删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | string sReturn = ""; |
| | | if (oSystemParameter.ShowBill(ref sReturn)) |
| | | { |
| | | if (oSystemParameter.omodel.Sc_ProcessExchangeBill_DeleterAndMakerMustSame == "Y") |
| | | { |
| | | if (oBill.omodel.HMaker != user && (user != "admin" && user != "Admin")) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:" + oBill.omodel.HBillNo + "只能删除本人的单据!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | if (oBill.omodel.HBillStatus > 1) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:" + oBill.omodel.HBillNo + "单据当前处于不能删除状态,不能删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (oBill.omodel.HChecker != "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号:" + oBill.omodel.HBillNo + "单据已经审核,不能删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | HBillNo_S += oBill.omodel.HBillNo + ","; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据未找到"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | HBillNo_S = HBillNo_S.Substring(0, HBillNo_S.Length - 1); |
| | | LogService.Write("用户:" + user + ",日期:" + DateTime.Now + ",删除工序流转卡单据:" + HBillNo_S); |
| | | |
| | | oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "删除工序流转卡单据:" + HBillNo_S + "','LMES-工序流转卡模块','" + DBUtility.ClsPub.IPAddress + "','删除单据'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | foreach (var item in HBillNo) |
| | | { |
| | | bool IsDete = oBill.DeleteBill(long.Parse(item), ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (!IsDete) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; |
| | |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | else |
| | | |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "瑞与祺") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据未找到"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | ds = oCN.RunProcReturn("select * from Sc_ProcessExchangeBillMain where HICMOInterID='" + oBill.omodel.HICMOInterID + "' and HICMOEntryID='" + oBill.omodel.HICMOEntryID + "'", "Sc_ProcessExchangeBillMain"); |
| | | |
| | | if (ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | oCN.RunProc("update AIS20220308151944..T_PRD_MOENTRY set F_BSV_TEXT2 = '否' where FID='" + oBill.omodel.HICMOInterID + "' and FENTRYID='" + oBill.omodel.HICMOEntryID + "'"); |
| | | } |
| | | } |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | #endregion |
| | | |
| | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region 单据变更 页面初始化 |
| | | [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_init")] |
| | | [HttpGet] |
| | | public object GetProcessExchangeBillMain_Change_init(string HInterID) |
| | | { |
| | | try |
| | | { |
| | | if (string.IsNullOrEmpty(HInterID)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!HInterID不能为空"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | |
| | | ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillQuery where hmainid = " + HInterID + " ", "h_v_Sc_ProcessExchangeBillQuery"); |
| | | |
| | | if (ds==null||ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!不存在工序流转卡"; |
| | | 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; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 单据变更 保存 |
| | | [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_save")] |
| | | [HttpGet] |
| | | public object GetProcessExchangeBillMain_Change_save(string HInterID,string HMaterModel2) |
| | | { |
| | | try |
| | | { |
| | | if (string.IsNullOrEmpty(HInterID)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!HInterID不能为空"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | |
| | | oCN.BeginTran(); |
| | | oCN.RunProc("update Sc_ProcessExchangeBillMain set HMaterModel2 = '" + HMaterModel2 + "' where HInterID = " + HInterID + ""); |
| | | oCN.Commit(); |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | 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 |
| | | |
| | | } |
| | | } |