/// <summary> /// 单条删除 /// </summary> /// <param name="bukrs"></param> /// <param name="ebeln"></param> /// <param name="ebelp"></param> public bool RemoveTdsAupo(string bukrs, string ebeln, string ebelp) { tdsAupo tdsAupo = new tdsAupo(); try { tdsAupo = GetTdsAupo(bukrs, ebeln, ebelp); _context.tdsAupos.Remove(tdsAupo); _context.SaveChanges(); return(true); } catch (SqlException e) { return(false); } }
/// <summary> /// 更新其他数据 /// </summary> /// <param name="tdsAupo"></param> /// <param name="retrc"></param> /// <param name="itemno"></param> /// <returns></returns> public int UpdateOtherDatas(tdsAupo tdsAupo, string retrc, string itemno) { string sql1 = $"delete tdspoitem where BUKRS = @bukrs and ebeln = @ebeln and ebelp = @ebelp and mandt = @mandt;"; string sql2 = $"insert into tdspoitem ([Mandt],bukrs,[Ebeln],[Ebelp],[Retrc],[Remark] ) values ( @mandt ,@bukrs,@ebeln,@ebelp,@retrc,'');"; string sql3 = $"update tdsPOBasicInfoAupo set ITMENO =@itemno where mandt = @mandt and bukrs = @bukrs and ebeln = @ebeln and ebelp = @ebelp ;"; string sql4 = $"update tdsuploadMsg set LOCK = 'Y' where bukrs = @bukrs and ebeln = @ebeln and ebelp = @ebelp ;"; return(_context.Database.ExecuteSqlRaw(sql1 + sql2 + sql3 + sql4, new[] { new SqlParameter("bukrs", tdsAupo.BUKRS), new SqlParameter("ebeln", tdsAupo.EBELN), new SqlParameter("ebelp", tdsAupo.EBELP), new SqlParameter("mandt", tdsAupo.MANDT), new SqlParameter("retrc", retrc), new SqlParameter("itemno", itemno), })); }
public ServerResponse <string> Save(JArray forms) { IList <tdsAupo> tdsAupos = new List <tdsAupo>(); string user = GetUser(); if (string.IsNullOrEmpty(user)) { return(ServerResponse <string> .CreateByErrorMessage("请求超时,请刷新主页重进!")); } foreach (var form in forms) { if (form["REMARK"].ToString().Equals("申请人确认抽单") && string.IsNullOrEmpty(form["DECLITEM"].ToString())) { } else { # region 境外po if (form["LIFNR"].ToString().Equals("QCI_MRO") || form["LIFNR"].ToString().Substring(form["LIFNR"].ToString().Length - 1, 1) == "F") //境外PO { if (_tdsYitemRepository.Is3C(form["BUKRS"].ToString(), form["DECLITEM"].ToString()) && form["MARK"].ToString().Equals("0")) { return(ServerResponse <string> .CreateByErrorMessage("此序号涉及3C认证!不能设置为不涉及!")); } if (_tdsYitemRepository.IsEnergy(form["BUKRS"].ToString(), form["DECLITEM"].ToString()) && form["CELFLAG"].ToString().Equals("0")) { return(ServerResponse <string> .CreateByErrorMessage("此序号涉及能源标识!不能设置为不涉及!")); } } #endregion #region 境内po else { string strFlag = _tdsYitemRepository.IsMonitorRule(form["BUKRS"].ToString(), form["DECLITEM"].ToString()); if (strFlag != "") { switch (strFlag) { case "3": return(ServerResponse <string> .CreateByErrorMessage("此序号涉及证件:3两用物项和技术出口许可证 ")); break; case "4": return(ServerResponse <string> .CreateByErrorMessage("此序号涉及证件:4出口许可证")); break; case "8": return(ServerResponse <string> .CreateByErrorMessage("此序号涉及证件:8禁止出口商品")); break; case "G": return(ServerResponse <string> .CreateByErrorMessage("此序号涉及证件:G两用物项和技术出口许可证(定向)")); break; default: break; } } } #endregion if (form["vendortype"].ToString() == "自主报关" || form["vendortype"].ToString() == "代理报关") { #region 料号的po:当有料号的po: 自主报关、代理报关、 在归类有料号的PO时,系统校验公司别+料号是否存在不一致的底账序号,如果有,系统提示;如果没有,系统保存成功 if (form["matnrE"].ToString() != "COASSET" && form["matnrE"].ToString() != "FOCCONSU" && form["matnrE"].ToString() != "") { if (!_tdsAupoRepository.IsExistZl11(form["BUKRS"].ToString(), form["matnrE"].ToString(), form["LIFNR"].ToString())) { return(ServerResponse <string> .CreateByErrorMessage("料号:" + form["matnrE"].ToString() + "在ZL11未备案!")); } if (!_tdsAupoRepository.SameDecMatnr(form["BUKRS"].ToString(), form["LIFNR"].ToString(), form["matnrE"].ToString(), form["DECLITEM"].ToString())) { return(ServerResponse <string> .CreateByErrorMessage("归并序号与ZL11序号不一致,请核实!")); } if (!_tdsAupoRepository.SameDecDiffEbeln(form["BUKRS"].ToString(), form["matnrE"].ToString(), form["DECLITEM"].ToString())) { if ((user != "03070472" && user != "06030239" && user != "A0070028" && user != "A0070116" && user != "A7100040" && user != "QSBN")) { return(ServerResponse <string> .CreateByErrorMessage("相同料号,不同PO中的底账序号不一致!")); } } } #endregion #region 无料号po:当没有料号的po:自主报关、代理报关、 同厂区(QSMC及QCMC公司别)、同VENDOR CODE、同Shorttext、归并底账序号不同时,无法保存 else { if (!"TFC_MRO,TFQ_MRO,TCC_MRO,TLC_MRO,TGC_MRO,TWW_MRO,TWQ_MRO,ZYS_MRO,ZYQ_MRO".Contains(form["LIFNR"].ToString())) { if (!_tdsAupoRepository.PoCheck(form["BUKRS"].ToString(), form["LIFNR"].ToString() , form["TXZ01"].ToString(), form["EBELN"].ToString() , form["vendortype"].ToString(), form["DECLITEM"].ToString()) && !"03070472,A0070028,A2132386,A0070116,06030239,QSBN,A7100040".Contains(user)) { return(ServerResponse <string> .CreateByErrorMessage("ITEM:" + form["EBELP"].ToString() + "相同Short text已归并过底账序号:" + form["DECLITEM"].ToString() + ",请确认")); } } } #endregion } #region 判断是否做过EC单1 if (_tdsAupoRepository.ECCheck(form["BUKRS"].ToString(), form["EBELN"].ToString(), form["EBELP"].ToString())) { return(ServerResponse <string> .CreateByErrorMessage("该PO已做过EC单!")); } #endregion } tdsAupo tdsAupo = new tdsAupo(); tdsAupo.MANDT = form["MANDT"].ToString(); tdsAupo.BUKRS = form["BUKRS"].ToString(); tdsAupo.EBELN = form["EBELN"].ToString(); //tdsAupo.EBELN = "111111111"; tdsAupo.EBELP = form["EBELP"].ToString(); tdsAupo.DECLITEM = form["DECLITEM"].ToString(); tdsAupo.MATNR = form["MATNR"].ToString(); tdsAupo.E_I = "I"; tdsAupo.TAX_CODE = form["TAX_CODE"].ToString(); tdsAupo.ZGEWEI = form["ZGEWEI"].ToString(); tdsAupo.SMAKTX = form["SMAKTX"].ToString(); tdsAupo.APPQTY = form["APPQTY"].ToObject <decimal>(); tdsAupo.DECLQTY = form["DECLQTY"].ToObject <decimal>(); tdsAupo.APFLAG = form["APFLAG"].ToString(); tdsAupo.STATUS = form["STATUS"].ToString(); tdsAupo.MARK = form["MARK"].ToString(); tdsAupo.REMARK = form["REMARK"].ToString(); tdsAupo.CHDATE = DateTime.Now; tdsAupo.CHNAME = user; tdsAupo.ZHENGSHUI = form["BRGEW"].ToString(); tdsAupo.HOMEORABROAD = string.Empty; tdsAupo.CELFLAG = form["CELFLAG"].ToString(); tdsAupo.ACCNO = form["BOITYP"].ToString(); tdsAupos.Add(tdsAupo); // 管制 string retrc = form["RETRC"].ToString(); // 新旧 string itemno = form["STATUS"].ToString(); _tdsAupoRepository.UpdateOtherDatas(tdsAupo, retrc, itemno); }
/// <summary> /// 单条添加 /// </summary> /// <param name="tdsAupo"></param> public void AddTdsAupo(tdsAupo tdsAupo) { RemoveTdsAupo(tdsAupo.BUKRS, tdsAupo.EBELN, new string[] { tdsAupo.EBELP }); _context.tdsAupos.Add(tdsAupo); _context.SaveChanges(); }