using System;
|
using System.Collections.Generic;
|
using System.Text;
|
using System.Data;
|
using Kingdee.BOS.WebApi.Client;
|
|
namespace BLL
|
{
|
public class ClsKf_POStockInBackBill
|
{
|
/// <summary>
|
/// 根据过滤条件,返回源单信息-外购入库单-蓝字列表 (红字外购入库)
|
/// </summary>
|
/// <param name="sWhere">过滤条件</param>
|
/// <param name="sErr">错误信息</param>
|
/// <returns></returns>
|
public DataSet GetKf_POStockInBillList(string sWhere, ref string sErr)
|
{
|
try
|
{
|
DAL.Cls_S_IF_POStockInBill_Lite dal = new DAL.Cls_S_IF_POStockInBill_Lite();
|
return dal.DisSourceBillList(sWhere);
|
}
|
catch (Exception e)
|
{
|
sErr = sErr + "," + e.Message;
|
return null;
|
}
|
}
|
|
/// <summary>
|
/// 根据过滤条件,返回源单信息-返回退料通知单列表(红字外购入库)
|
/// </summary>
|
/// <param name="sWhere">过滤条件</param>
|
/// <param name="sErr">错误信息</param>
|
/// <returns></returns>
|
public DataSet GetCg_POInStockBackBillList(string sWhere, ref string sErr)
|
{
|
try
|
{
|
DAL.Cls_S_IF_POInStockBackBill_Lite dal = new DAL.Cls_S_IF_POInStockBackBill_Lite();
|
return dal.DisSourceBillList(sWhere);
|
}
|
catch (Exception e)
|
{
|
sErr = sErr + "," + e.Message;
|
return null;
|
}
|
}
|
|
/// <summary>
|
/// 根据过滤条件,返回源单信息-返回采购订单-退料列表(红字外购入库)
|
/// </summary>
|
/// <param name="sWhere">过滤条件</param>
|
/// <param name="sErr">错误信息</param>
|
/// <returns></returns>
|
public DataSet GetCg_POOrderBackBillList(string sWhere, ref string sErr)
|
{
|
try
|
{
|
DAL.Cls_S_IF_POOrderBackBill_Lite dal = new DAL.Cls_S_IF_POOrderBackBill_Lite();
|
return dal.DisSourceBillList(sWhere);
|
}
|
catch (Exception e)
|
{
|
sErr = sErr + "," + e.Message;
|
return null;
|
}
|
}
|
|
|
|
//生成外购退料单
|
public bool set_SavePOStockInBackBill_New(Model.ClsKf_ICStockBillMain oMain, string sHSourceType, ref string sErrMsg)
|
{
|
//获取系统参数
|
Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
|
if (oSystemParameter.ShowBill(ref sErrMsg) == false)
|
{
|
sErrMsg = "获取系统参数失败! " + sErrMsg;
|
return false;
|
}
|
//
|
if (oSystemParameter.omodel.Kf_POStockInBackBill_ERPMode.ToUpper() == "WISE") //判断同步模式是金蝶WISE
|
{
|
if (SavePOStockInBackBill_K3(oMain, sHSourceType, oSystemParameter.omodel, ref sErrMsg))
|
{
|
//"保存成功!";
|
sErrMsg = "保存成功!" + oMain.HBillNo;
|
return true;
|
}
|
else
|
{
|
//"保存失败!";
|
sErrMsg = sErrMsg;
|
return false;
|
}
|
}
|
if (oSystemParameter.omodel.Kf_POStockInBackBill_ERPMode.ToUpper() == "CLOUD") //判断同步模式是金蝶CLOUD
|
{
|
if (set_SavePOStockInBackBill_CLD(oMain, sHSourceType, oSystemParameter.omodel, ref sErrMsg) == true)
|
{
|
//"保存成功!";
|
return true;
|
}
|
else
|
{
|
//"保存失败!";
|
return false;
|
}
|
}
|
|
sErrMsg = "保存外购退料单失败!" + sErrMsg;
|
return false;
|
}
|
|
|
#region 外购退料K3 外购入库(红字) *
|
|
/// <summary>
|
/// 生成外购退料单K3
|
/// </summary>
|
/// <param name="oMain"></param>
|
/// <param name="sErrMsg"></param>
|
/// <returns></returns>
|
public bool SavePOStockInBackBill_K3(Model.ClsKf_ICStockBillMain oMain, string sHSourceType, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
|
{
|
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
DAL.ClsKf_POStockInBackBill dal = new DAL.ClsKf_POStockInBackBill();
|
dal.omodel = oMain;
|
//上传前必填项判断
|
if (oMain.HDeptID == 0)
|
{
|
sErrMsg = "部门没有选择!";
|
return false;
|
}
|
if (oMain.HSupID == 0)
|
{
|
sErrMsg = "供应商没有选择!";
|
return false;
|
}
|
if (oMain.HSecManagerID == 0)
|
{
|
sErrMsg = "验收没有选择!";
|
return false;
|
}
|
if (oMain.HKeeperID == 0)
|
{
|
sErrMsg = "保管没有选择!";
|
return false;
|
}
|
|
try
|
{
|
//判断会计期是否合理
|
string s = "";
|
int sYear = 0;
|
int sPeriod = 0;
|
if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(oMain.HDate, ref sYear, ref sPeriod, ref s) == false)
|
{
|
sErrMsg = s;
|
return false;
|
}
|
oMain.HYear = sYear;
|
oMain.HPeriod = sPeriod;
|
|
DataSet Ds;
|
oCn.BeginTran();
|
//生成出入库单据
|
//插入子表
|
oCn.RunProc("EXEC h_p_Kf_POStockInBackBillSub_Insert_New " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + sHSourceType + "'");
|
//插入主表
|
oCn.RunProc("Insert Into Kf_ICStockBillMain " +
|
"(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMainSourceBillType" +
|
",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
|
",HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" +
|
",HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRedBlueFlag" +
|
") " +
|
" values('1239','1239'," + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "',convert(varchar(10),getdate(),120),'" + oMain.HMainSourceBillType + "'" +
|
", " + oMain.HYear.ToString() + "," + oMain.HPeriod.ToString() + ",'" + oMain.HRemark + "','" + oMain.HMaker + "',convert(varchar(10),getdate(),120)" +
|
", " + oMain.HSupID.ToString() + "," + oMain.HWHID.ToString() + "," + oMain.HSCWHID.ToString() + "," + oMain.HEmpID.ToString() + "," + oMain.HManagerID.ToString() + "," + oMain.HSecManagerID.ToString() +
|
", " + oMain.HKeeperID.ToString() + "," + oMain.HDeptID.ToString() + ",'" + oMain.HExplanation + "','" + oMain.HInnerBillNo + "'," + DBUtility.ClsPub.BoolToString(oMain.HRedBlueFlag) +
|
") ");
|
|
//新增K3子表、主表
|
oCn.RunProc("exec h_p_IFK3_ToERP_POStockInBackBill_Insert_New " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "'," + oMain.HBillerID.ToString() + ",'" + sHSourceType + "'");
|
|
//更新关联数量
|
if (sHSourceType == "1105") //退料通知单
|
{
|
oCn.RunProc("exec h_p_Cg_UpDateRelation_POInStockBackToPOStockInBack_Add " + oMain.HInterID.ToString());
|
//回填K3关联数量
|
oCn.RunProc("exec h_p_IFK3_ToERP_POStockInBackBill_UpdateBillRelateData_POInStockBack " + oMain.HInterID.ToString());
|
}
|
else if (sHSourceType == "1201") //外购入库单-蓝字
|
{
|
oCn.RunProc("exec h_p_Kf_UpDateRelation_POStockInToPOStockInBack_Add " + oMain.HInterID.ToString());
|
//回填K3关联数量
|
oCn.RunProc("exec h_p_IFK3_ToERP_POStockInBackBill_UpdateBillRelateData_Blue " + oMain.HInterID.ToString());
|
}
|
else //无源单
|
{
|
//回填K3关联数量
|
oCn.RunProc("exec h_p_IFK3_ToERP_POStockInBackBill_UpdateBillRelateData " + oMain.HInterID.ToString());
|
}
|
|
//审核单据
|
if (oSystemParameterMain.Kf_POStockInBackBill_AutoCheck == "Y") //系统参数 自动审核
|
{
|
//审核单据
|
oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120) where HInterID= " + oMain.HInterID.ToString());
|
|
//审核K3单据
|
oCn.RunProc("exec h_p_IFK3_ToERP_POStockInBackBill_Check " + oMain.HInterID.ToString() + "," + oMain.HBillerID.ToString());
|
//更新K3库存
|
oCn.RunProc("exec h_p_IFK3_ToERP_POStockInBackBill_UpdateStock " + oMain.HInterID.ToString());
|
oCn.RunProc("exec h_p_IFK3_ToERP_POStockInBackBill_UpdateOrderStock " + oMain.HInterID.ToString());
|
}
|
|
//K3负库存判断
|
if (oSystemParameterMain.WMS_ERPStockCtl == "Y") //系统参数 提交后ERP负库存控制
|
{
|
//判断条码库存是否异常(负库存、库存大于条码初始化)
|
Ds = oCn.RunProcReturn("EXEC h_p_KF_ICInventoryBarCodeQtyCtrl " + oMain.HInterID.ToString(), "h_p_KF_ICInventoryBarCodeQtyCtrl");
|
if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
|
{
|
|
}
|
else
|
{
|
sErrMsg = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][1]);
|
oCn.RollBack();
|
return false;
|
}
|
}
|
|
sErrMsg = "新增单据成功!";
|
oCn.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sErrMsg = "生成外购退料单失败!" + e.Message;
|
oCn.RollBack();
|
return false;
|
}
|
}
|
|
#endregion
|
|
#region 外购退料CLOUD 外购入库(红字) *
|
|
//生成外购退料单
|
public bool set_SavePOStockInBackBill_CLD(Model.ClsKf_ICStockBillMain oMain, string sHSourceType, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
|
{
|
if (sHSourceType == "1102") //采购订单
|
{
|
if (SavePOStockInBackBill_POOrder_CLD(oMain, sHSourceType, oSystemParameterMain, ref sErrMsg))
|
{
|
//"保存成功!";
|
sErrMsg = "保存成功!" + oMain.HBillNo;
|
return true;
|
}
|
else
|
{
|
//"保存失败!";
|
sErrMsg = sErrMsg;
|
return false;
|
}
|
}
|
else
|
{
|
sErrMsg = "错误的源单类型";
|
return false;
|
}
|
}
|
|
/// <summary>
|
/// 外购退料单 (源单:采购订单)
|
/// </summary>
|
/// <param name="oMain"></param>
|
/// <param name="sErrMsg"></param>
|
/// <returns></returns>
|
public bool SavePOStockInBackBill_POOrder_CLD(Model.ClsKf_ICStockBillMain oMain, string sHSourceType, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
|
{
|
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
try
|
{
|
DataSet Ds;
|
oCn.BeginTran();
|
//写入WMS外购退料单
|
|
//插入子表
|
oCn.RunProc("EXEC h_p_Kf_POStockInBackBillSub_Insert_New " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + sHSourceType + "'");
|
//插入主表
|
oCn.RunProc("Insert Into Kf_ICStockBillMain " +
|
"(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMainSourceBillType" +
|
",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
|
",HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" +
|
",HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRedBlueFlag" +
|
") " +
|
" values('1239','1239'," + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "',convert(varchar(10),getdate(),120),'" + oMain.HMainSourceBillType + "'" +
|
", " + oMain.HYear.ToString() + "," + oMain.HPeriod.ToString() + ",'" + oMain.HRemark + "','" + oMain.HMaker + "',convert(varchar(10),getdate(),120)" +
|
", " + oMain.HSupID.ToString() + "," + oMain.HWHID.ToString() + "," + oMain.HSCWHID.ToString() + "," + oMain.HEmpID.ToString() + "," + oMain.HManagerID.ToString() + "," + oMain.HSecManagerID.ToString() +
|
", " + oMain.HKeeperID.ToString() + "," + oMain.HDeptID.ToString() + ",'" + oMain.HExplanation + "','" + oMain.HInnerBillNo + "'," + DBUtility.ClsPub.BoolToString(oMain.HRedBlueFlag) +
|
") ");
|
//更新关联数量
|
oCn.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPOStockInBack_Add " + oMain.HInterID.ToString());
|
|
if (oSystemParameterMain.Kf_POStockInBackBill_AutoCheck == "Y") //系统参数 自动审核
|
{
|
//审核单据
|
oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120),HBillStatus=2 where HInterID= " + oMain.HInterID.ToString());
|
}
|
|
//根据TMP表 返回 子表信息
|
Ds = oCn.RunProcReturn("exec h_p_Kf_GetPOStockInBackPOOrderBill_CLD " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "'", "h_p_Kf_GetPOStockInBackPOOrderBill_CLD");
|
if (Ds == null || Ds.Tables[0].Rows.Count == 0 || Ds.Tables[1].Rows.Count == 0)
|
{
|
sErrMsg = "获取子表信息失败!";
|
oCn.RollBack();
|
return false;
|
}
|
else
|
{
|
string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\", " +
|
"\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{" +
|
//"\"FID\":\"" + oMain.HInterID.ToString() + "\"," +
|
"\"FBillTypeID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillTypeID"]) + "\"}," +
|
"\"FBillNo\":\"" + oMain.HBillNo + "\"," +
|
//"\"FDate\":\"" + oMain.HDate.ToShortDateString() + "\"," +
|
"\"FMRTYPE\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRTYPE"]) + "\", " +
|
"\"FMRMODE\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRMODE"]) + "\", " +
|
"\"FSTOCKORGID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSTOCKORGID"]) + "\"}," +
|
"\"FMRDEPTID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRDEPTID"]) + "\"}," +
|
//"\"FStockerGroupId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockerGroupId"]) + "\"}," +
|
"\"FCORRESPONDORGID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FCORRESPONDORGID"]) + "\"}," +
|
//"\"FStockerId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockerId"]) + "\"}, " +
|
//"\"FMRREASON\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRREASON"]) + "\"}, " +
|
"\"FREQUIREORGID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FREQUIREORGID"]) + "\"}," +
|
"\"FPURCHASEORGID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPURCHASEORGID"]) + "\"}," +
|
"\"FPURCHASEDEPTID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPURCHASEDEPTID"]) + "\"}, " +
|
"\"FPURCHASERGROUPID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPURCHASERGROUPID"]) + "\"}," +
|
"\"FPURCHASERID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPURCHASERID"]) + "\"}," +
|
"\"FSUPPLIERID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSUPPLIERID"]) + "\"}," +
|
//"\"FDESCRIPTION\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDESCRIPTION"]) + "\", " +
|
"\"FACCEPTORID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FACCEPTORID"]) + "\"}," +
|
//"\"FAcceptAddress\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FAcceptAddress"]) + "\", " +
|
"\"FSETTLEID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSETTLEID"]) + "\"}," +
|
"\"FCHARGEID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FCHARGEID"]) + "\"}," +
|
"\"FOwnerTypeIdHead\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOwnerTypeIdHead"]) + "\", " +
|
"\"FOWNERIDHead\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOWNERIDHead"]) + "\"}," +
|
//"\"FScanPoint\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FScanPoint"]) + "\"}," +
|
//"\"FConfirmerId\":{\"FUserID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FConfirmerId"]) + "\"}," +
|
//"\"FConfirmDate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FConfirmDate"]) + "\"," +
|
//"\"FScanBox\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FScanBox"]) + "\"," +
|
//"\"FCDateOffsetUnit\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FCDateOffsetUnit"]) + "\", " +
|
"\"FCDateOffsetValue\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FCDateOffsetValue"]) + "," +
|
"\"FACCEPTORCONTACTID\":{\"FCONTACTNUMBER\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FACCEPTORCONTACTID"]) + "\"}," +
|
//"F_QIMB_PrintTimes": 0,
|
//"F_QIMB_PrintDateTime": "1900-01-01",
|
"\"FStockDeptId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockDeptId"]) + "\"}," +
|
"\"FACCEPTORADDRESS\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FACCEPTORADDRESS"]) + "\", " +
|
//"\"FDemandOrgId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDemandOrgId"]) + "\"}, " +
|
"\"FSupplyId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSUPPLIERID"]) + "\"}, " +
|
//"\"FSupplyAddress\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSupplyAddress"]) + "\"," +
|
"\"FPURMRBFIN\":{\"FSETTLEORGID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSETTLEORGID"]) + "\"}," +
|
"\"FPAYORGID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPAYORGID"]) + "\"}," +
|
"\"FSETTLETYPEID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSETTLETYPEID"]) + "\"}, " +
|
"\"FSETTLECURRID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSETTLECURRID"]) + "\"}," +
|
"\"FPAYCONDITIONID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPAYCONDITIONID"]) + "\"}," +
|
"\"FISINCLUDEDTAX\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FISINCLUDEDTAX"]) + "," +
|
"\"FPriceTimePoint\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPriceTimePoint"]) + "\"," +
|
//"\"FPriceListId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPriceListId"]) + "\"}," +
|
//"\"FDiscountListId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDiscountListId"]) + "\"}," +
|
"\"FLOCALCURRID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FLOCALCURRID"]) + "\"}," +
|
"\"FEXCHANGETYPEID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FEXCHANGETYPEID"]) + "\"}," +
|
"\"FEXCHANGERATE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FEXCHANGERATE"]) + "," +
|
"\"FISPRICEEXCLUDETAX\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FISPRICEEXCLUDETAX"]) + "" +
|
" }, \"FPURMRBENTRY\": [ ";
|
string sJson_Entry = "";
|
for (int i = 0; i < Ds.Tables[1].Rows.Count; i++)
|
{
|
if (sJson_Entry != "")
|
{
|
sJson_Entry = sJson_Entry + " , ";
|
}
|
string sJson_BatchNo = "";
|
string sJson_StockPlace = "";
|
string sJson_FVAT = "";
|
string sJson_FSELLERWITHHOLDING = "";
|
string sJson_FBUYERWITHHOLDING = "";
|
if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["HISBATCHMANAGE"]) == "1") //是否启用批次管理
|
{
|
sJson_BatchNo = " \"FLOT\": {\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FLOT"]) + "\"}, \"FLOT_TEXT\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FLOT"]) + "\" , ";
|
}
|
else
|
{
|
sJson_BatchNo = "";
|
}
|
|
if (oSystemParameterMain.WMS_CampanyName == "卓力") //系统参数 客户定制化名称 空白为通用 仓位
|
{
|
sJson_StockPlace = "\"FStockLocId\":{\"FSTOCKLOCID__FF100002\":{\"FNUMBER\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockLocId"]) + "\"}},";
|
}
|
else
|
{
|
if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockLocId"]) == "")
|
{
|
sJson_StockPlace = "";
|
}
|
else
|
{
|
sJson_StockPlace = Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockLocId"]) + "\"}},";
|
}
|
}
|
|
if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FVAT"]) == "")//增值税
|
{
|
sJson_FVAT = "";
|
}
|
else
|
{
|
sJson_FVAT = ",\"FVAT\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FVAT"]) + "";
|
}
|
if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSELLERWITHHOLDING"]) == "")//卖方代扣代缴
|
{
|
sJson_FSELLERWITHHOLDING = "";
|
}
|
else
|
{
|
sJson_FSELLERWITHHOLDING = ",\"FSELLERWITHHOLDING\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSELLERWITHHOLDING"]) + "";
|
}
|
if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBUYERWITHHOLDING"]) == "")//买方代扣代缴
|
{
|
sJson_FBUYERWITHHOLDING = "";
|
}
|
else
|
{
|
sJson_FBUYERWITHHOLDING = ",\"FBUYERWITHHOLDING\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBUYERWITHHOLDING"]) + "";
|
}
|
|
sJson_Entry = sJson_Entry + "{\"FEntryID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntryID"]) + "," +
|
"\"FROWTYPE\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FROWTYPE"]) + "\"," +
|
"\"FMATERIALID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMATERIALID"]) + "\"}, " +
|
"\"FMATERIALDESC\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMATERIALDESC"]) + "\"," +
|
"\"FPARENTMATID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPARENTMATID"]) + "\"}," +
|
//"\"FProjectNo\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FProjectNo"]) + "\"," +
|
"\"FUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FUNITID"]) + "\"}," +
|
"\"FRMREALQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRMREALQTY"]) + "," +
|
"\"FREPLENISHQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FREPLENISHQTY"]) + "," +
|
"\"FKEAPAMTQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FKEAPAMTQTY"]) + "," +
|
"\"FPRICEUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPRICEUNITID"]) + "\"}," +
|
"\"FStockId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockId"]) + "\"}," +
|
sJson_StockPlace +
|
"\"FStockStatusId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockStatusId"]) + "\"}," +
|
"\"FNote\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FNote"]) + "\"," +
|
"\"FTAXCOMBINATION\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FTAXCOMBINATION"]) + "\"}," +
|
"\"FPRICE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPRICE"]) + ", " +
|
"\"FEXTAUXUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEXTAUXUNITID"]) + "\"}," +
|
"\"FExtAuxUnitQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FExtAuxUnitQty"]) + "," +
|
"\"FREQTRACENO\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FREQTRACENO"]) + "\"," +
|
"\"FIsReceiveUpdateStock\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FIsReceiveUpdateStock"]) + "," +
|
"\"FInvoicedJoinQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FInvoicedJoinQty"]) + "," +
|
"\"FGIVEAWAY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FGIVEAWAY"]) + "," +
|
"\"FPriceBaseQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPriceBaseQty"]) + "," +
|
//"\"FSetPriceUnitID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSetPriceUnitID"]) + "\"}," +
|
"\"FCARRYUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCARRYUNITID"]) + "\"}," +
|
"\"FCarryQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCarryQty"]) + "," +
|
"\"FCarryBaseQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCarryBaseQty"]) + "," +
|
"\"FPOORDERENTRYID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPOORDERENTRYID"]) + ", " +
|
"\"FBILLINGCLOSE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBILLINGCLOSE"]) + "," +
|
"\"FPRICELISTENTRY\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPRICELISTENTRY"]) + "\"}," +
|
//"FAuxPropID": {},
|
"\"FRMMUSTQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRMMUSTQTY"]) + "," +
|
"\"FBOMID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBOMID"]) + "\"}," +
|
"\"FSUPPLIERLOT\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSUPPLIERLOT"]) + "\"," +
|
sJson_BatchNo +
|
//"\"FProduceDate\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FProduceDate"]) + "\"," +
|
//"\"FExpiryDate\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FExpiryDate"]) + "\"," +
|
"\"FAuxUnitQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAuxUnitQty"]) + "," +
|
//"FOWNERTYPEID": "",
|
//"FOWNERID": {"FNumber": ""},
|
"\"FEntryTaxRate\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntryTaxRate"]) + ", " +
|
"\"FDISCOUNTRATE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FDISCOUNTRATE"]) + "," +
|
"\"FTAXPRICE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FTAXPRICE"]) + "," +
|
"\"FPRICEDISCOUNT\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPRICEDISCOUNT"]) + "," +
|
"\"FIsStock\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FIsStock"]) + "," +
|
//"\"FChargeProjectID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FChargeProjectID"]) + "\"}," +
|
"\"FMTONO\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMTONO"]) + "\"," +
|
"\"FPRILSTENTRYID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPRILSTENTRYID"]) + "," +
|
"\"FSRCBILLTYPEID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSRCBILLTYPEID"]) + "\"," +
|
"\"FSRCBILLNO\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSRCBILLNO"]) + "\"," +
|
"\"FORDERNO\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FORDERNO"]) + "\"," +
|
"\"FCOSTPRICE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCOSTPRICE"]) + "," +
|
"\"FPRICECOEFFICIENT\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPRICECOEFFICIENT"]) + "," +
|
"\"FKEEPERID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FKEEPERID"]) + "\"}," +
|
"\"FAUXUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAUXUNITID"]) + "\"}," +
|
"\"FBASEUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBASEUNITID"]) + "\"}," +
|
"\"FBFLOWID\":{\"FID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBFLOWID"]) + "\"} , " +
|
"\"FPOREQUIREORGID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPOREQUIREORGID"]) + "\"}," +
|
"\"FSNUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSNUNITID"]) + "\"}," +
|
"\"FPURBASENUM\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPURBASENUM"]) + "," +
|
"\"FSTOCKBASEDEN\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSTOCKBASEDEN"]) + "," +
|
"\"FSRCBIZUNITID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSRCBIZUNITID"]) + "\"}," +
|
"\"FBASEUNITQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBASEUNITQTY"]) + "," +
|
//"\"FEntryPruCost\": [ { " +
|
// //"FDetailID": 0
|
//" } ]," +
|
"\"FTaxDetailSubEntity\": [ { " +
|
//"FDetailID": 0,
|
"\"FTAXRATEID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FTAXRATEID"]) + "\"}," +
|
"\"FTAXRATE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FTAXRATE"]) + "," +
|
"\"FTAXAMOUNT\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FTAXAMOUNT"]) + "," +
|
"\"FCOSTPERCENT\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCOSTPERCENT"]) + "," +
|
"\"FCOSTAMOUNT\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCOSTAMOUNT"]) + "" +
|
sJson_FVAT +
|
sJson_FSELLERWITHHOLDING +
|
sJson_FBUYERWITHHOLDING +
|
" } ]," +
|
//"\"FSerialSubEntity\": [ { " +
|
// //"FDetailID": 0,
|
// //"FSerialNo": "",
|
// //"FSerialNote": ""
|
//" } ]," +
|
"\"FPURMRBENTRY_Link\": [ { " +
|
"\"FPURMRBENTRY_Link_FRuleId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPURMRBENTRY_Link_FRuleId"]) + "\"," +
|
"\"FPURMRBENTRY_Link_FSTableName\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPURMRBENTRY_Link_FSTableName"]) + "\"," +
|
"\"FPURMRBENTRY_Link_FSBillId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPURMRBENTRY_Link_FSBillId"]) + "\"," +
|
"\"FPURMRBENTRY_Link_FSId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPURMRBENTRY_Link_FSId"]) + "\"" +
|
" } ] } ";
|
}
|
string sJson_End = " ] }}";
|
string sJson = sJson_Main + sJson_Entry + sJson_End;
|
|
//从配置文件获取 CLOUD网址、账套信息、登录用户、登录密码
|
if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
|
{
|
sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
|
return false;
|
}
|
|
//生成外购退料单
|
string HReturn;
|
ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
|
string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117
|
bool bLogin = client.Login(dbId, Pub_Class.ClsPub.sCLOUDUseName, Pub_Class.ClsPub.sCLOUDPsd, 2052);
|
if (bLogin)
|
{
|
var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
|
new object[] { "PUR_MRB", sJson });
|
|
if (oSystemParameterMain.Kf_POStockInBackBill_AutoCheck == "Y") //系统参数 自动审核
|
{
|
string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
|
var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
|
new object[] { "PUR_MRB", sJson2 });
|
|
string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
|
var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
|
new object[] { "PUR_MRB", sJson3 });
|
|
HReturn = result.ToString() + "," + result2.ToString() + "," + result3.ToString();
|
}
|
else
|
{
|
HReturn = result.ToString();
|
}
|
if (HReturn.Contains("\"IsSuccess\":false") == true)
|
{
|
sErrMsg = "生成外购退料单失败!" + HReturn + sJson;
|
oCn.RollBack();
|
return false;
|
}
|
else
|
{
|
oCn.Commit();
|
return true;
|
}
|
}
|
else
|
{
|
sErrMsg = "生成外购退料单失败!登录失败!";
|
oCn.RollBack();
|
return false;
|
}
|
}
|
}
|
catch (Exception e)
|
{
|
sErrMsg = "生成外购退料单失败!" + e.Message;
|
oCn.RollBack();
|
return false;
|
}
|
}
|
|
|
//采购退料
|
private bool SavePOStockInBackBill_CLD(Model.ClsKf_POStockInBackBillMain_CLD oMain, ref string sErrMsg)
|
{
|
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
try
|
{
|
DataSet Ds;
|
//根据TMP表 返回 子表信息
|
Ds = oCn.RunProcReturn("exec h_p_Kf_GetPOStockInBackBill_CLD " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "'", "h_p_Kf_GetPOStockInBill_CLD");
|
if (Ds == null || Ds.Tables[0].Rows.Count == 0 || Ds.Tables[1].Rows.Count == 0)
|
{
|
sErrMsg = "获取子表信息失败!";
|
return false;
|
}
|
else
|
{
|
//string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"Model\": { \"FID\":\"0\", \"FBILLNO\":\"" + oMain.HBillNo + "\", \"FStockOrgId\":{\"FNumber\":\"201\"}, " +
|
// "\"FPRDORGID\":{\"FNumber\":\"201\"}, \"FBillType\": {\"FNumber\":\"SCLLD01_SYS\" " +
|
// " }, \"FEntity\": [ ";
|
string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\", " +
|
"\"IsEntryBatchFill\":\"True\",\"Model\":{\"FID\":\"" + oMain.HInterID.ToString() + "\"," +
|
"\"FBillTypeID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillTypeID"]) + "\"}," +
|
"\"FBillNo\":\"" + oMain.HBillNo + "\"," +
|
"\"FDate\":\"" + oMain.HDate.ToShortDateString() + "\", " +
|
"\"FMRTYPE\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRTYPE"]) + "\", " +
|
"\"FMRMODE\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRMODE"]) + "\", " +
|
"\"FMRDeptId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRDeptId"]) + "\"}," +
|
"\"FStockOrgId\":{\"FNumber\":\"" + oMain.HORGANIZATIONSNO.ToString() + "\"}," +
|
"\"FStockDeptId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockDeptId"]) + "\"}," +
|
"\"FRequireOrgId\":{\"FNumber\":\"" + oMain.HORGANIZATIONSNO.ToString() + "\"}," +
|
"\"FDESCRIPTION\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDESCRIPTION"]) + "\"}," +
|
"\"FACCEPTORID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FACCEPTORID"]) + "\"}," +
|
"\"FStockerGroupId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockerGroupId"]) + "\"}," +
|
"\"FStockerId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockerId"]) + "\"}, " +
|
"\"FMRREASON\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMRREASON"]) + "\"}, " +
|
"\"FAcceptAddress\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FAcceptAddress"]) + "\"}, " +
|
"\"FDemandOrgId\":{\"FNumber\":\"" + oMain.HORGANIZATIONSNO.ToString() + "\"}," +
|
"\"FCorrespondOrgId\":{\"FNumber\":\"" + oMain.HORGANIZATIONSNO.ToString() + "\"}," +
|
"\"FPurchaseOrgId\":{\"FNumber\":\"" + oMain.HORGANIZATIONSNO.ToString() + "\"}," +
|
"\"FPurchaseDeptId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPurchaseDeptId"]) + "\"}, " +
|
"\"FPurchaserGroupId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPurchaserGroupId"]) + "\"}," +
|
"\"FPurchaserId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPurchaserId"]) + "\"}," +
|
"\"FSupplierId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSupplierId"]) + "\"}," +
|
"\"FSupplyId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSupplyId"]) + "\"}, " +
|
"\"FSupplyAddress\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSupplyAddress"]) + "\"," +
|
"\"FSettleId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSettleId"]) + "\"}," +
|
"\"FChargeId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FChargeId"]) + "\"}," +
|
"\"FOwnerTypeIdHead\":\"" + oMain.HORGANIZATIONSNO.ToString() + "\", " +
|
"\"FOwnerIdHead\":{\"FNumber\":\"" + oMain.HORGANIZATIONSNO.ToString() + "\"}," +
|
"\"FScanPoint\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FScanPoint"]) + "\"}," +
|
"\"FConfirmerId\":{\"FUserID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FConfirmerId"]) + "\"}," +
|
"\"FConfirmDate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FConfirmDate"]) + "\"," +
|
"\"FScanBox\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FScanBox"]) + "\"," +
|
"\"FCDateOffsetUnit\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FCDateOffsetUnit"]) + "\", " +
|
"\"FCDateOffsetValue\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FCDateOffsetValue"]) + "," +
|
"\"FPURMRBFIN\":{\"FSettleOrgId\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0][" FPURMRBFIN"]) + "," +
|
"\"FAcceptorContactID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FAcceptorContactID"]) + "," +
|
"\"FProviderContactID\":{\"FCONTACTNUMBER\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProviderContactID"]) + "\"}," +
|
"\"FInStockFin\":{\"FSettleOrgId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSettleOrgId"]) + "\"}," +
|
"\"FSettleTypeId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSettleTypeId"]) + "\"}, " +
|
"\"FPayConditionId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPayConditionId"]) + "\"}," +
|
"\"FSettleCurrId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSettleCurrId"]) + "\"}," +
|
"\"FIsIncludedTax\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsIncludedTax"]) + "," +
|
"\"FPriceTimePoint\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPriceTimePoint"]) + "\"," +
|
"\"FPriceListId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPriceListId"]) + "\"}," +
|
"\"FDiscountListId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDiscountListId"]) + "\"}," +
|
"\"FLocalCurrId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FLocalCurrId"]) + "\"}," +
|
"\"FExchangeTypeId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FExchangeTypeId"]) + "\"}," +
|
"\"FExchangeRate\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FExchangeRate"]) + "," +
|
"\"FISPRICEEXCLUDETAX\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FISPRICEEXCLUDETAX"]) + "" +
|
" }, \"FPURMRBENTRY\": [ ";
|
string sJson_Entry = "";
|
for (int i = 0; i < Ds.Tables[1].Rows.Count; i++)
|
{
|
if (sJson_Entry != "")
|
{
|
sJson_Entry = sJson_Entry + " , ";
|
}
|
sJson_Entry = sJson_Entry + "{\"FEntryID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntryID"]) + "," +
|
"\"FRowType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRowType"]) + "\"," +
|
"\"FWWInType\":\" " + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FWWInType"]) + "\"," +
|
"\"FMaterialId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMaterialId"]) + "\"}, " +
|
"\"FMaterialDesc\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMaterialDesc"]) + "\"}, " +
|
"\"FUnitID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FUnitID"]) + "\"}," +
|
"\"FParentMatId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FParentMatId"]) + "\"}," +
|
"\"FRealQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRealQty"]) + "," +
|
"\"FPriceUnitID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPriceUnitID"]) + "\"}," +
|
"\"FPrice\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPrice"]) + ", " +
|
"\"FTaxCombination\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FTaxCombination"]) + "\"}," +
|
"\"FLot\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FLot"]) + "\"}," +
|
"\"FStockId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockId"]) + "\"}," +
|
"\"FDisPriceQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FDisPriceQty"]) + ", " +
|
"\"FSRCBILLTYPEID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSRCBILLTYPEID"]) + "\"," +
|
"\"FRECEIVESTOCKSTATUS\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRECEIVESTOCKSTATUS"]) + "\"}," +
|
"\"fpoorderentryid\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["fpoorderentryid"]) + ", " +
|
"\"FSRCBILLNO\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSRCBILLNO"]) + "\"," +
|
"\"FORDERNO\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FORDERNO"]) + "\"," +
|
"\"FPOORDERNO\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPOORDERNO"]) + "\", " +
|
"\"FStockStatusId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockStatusId"]) + "\"}," +
|
"\"FMtoNo\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMtoNo"]) + "," +
|
"\"FGiveAway\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FGiveAway"]) + "," +
|
"\"FNote\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FNote"]) + "," +
|
"\"FProduceDate\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FProduceDate"]) + ", " +
|
"\"FExtAuxUnitId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FExtAuxUnitId"]) + "\"}," +
|
"\"FExtAuxUnitQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FExtAuxUnitQty"]) + "," +
|
"\"FCheckInComing\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCheckInComing"]) + "," +
|
"\"FProjectNo\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FProjectNo"]) + "," +
|
"\"FSampleDamageQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSampleDamageQty"]) + "," +
|
"\"FSampleDamageBaseQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSampleDamageBaseQty"]) + ", " +
|
"\"FIsReceiveUpdateStock\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FIsReceiveUpdateStock"]) + "," +
|
"\"FInvoicedJoinQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FInvoicedJoinQty"]) + "," +
|
"\"FPriceBaseQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPriceBaseQty"]) + "," +
|
"\"FSetPriceUnitID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSetPriceUnitID"]) + "\"}," +
|
"\"FRemainInStockUnitId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRemainInStockUnitId"]) + "\"}, " +
|
"\"FBILLINGCLOSE\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBILLINGCLOSE"]) + "," +
|
"\"FRemainInStockQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRemainInStockQty"]) + "," +
|
"\"FAPNotJoinQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAPNotJoinQty"]) + "," +
|
"\"FRemainInStockBaseQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRemainInStockBaseQty"]) + "," +
|
"\"FBASEUNITQTYOLD\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBASEUNITQTYOLD"]) + "," +
|
"\"FREMAININSTOCKBASEQTYOLD\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FREMAININSTOCKBASEQTYOLD"]) + "," +
|
"\"FTaxPrice\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FTaxPrice"]) + "," +
|
"\"FEntryTaxRate\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntryTaxRate"]) + ", " +
|
"\"FDiscountRate\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FDiscountRate"]) + "," +
|
"\"FCostPrice\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCostPrice"]) + "," +
|
"\"FBOMId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBOMId"]) + "\"}," +
|
"\"FSupplierLot\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSupplierLot"]) + "," +
|
"\"FExpiryDate\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FExpiryDate"]) + "," +
|
"\"FAuxUnitQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAuxUnitQty"]) + "," +
|
"\"FBASEREPLAYQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBASEREPLAYQTY"]) + "," +
|
"\"FREPLENISHQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FREPLENISHQTY"]) + "," +
|
"\"FKEAPAMTQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FKEAPAMTQTY"]) + "," +
|
"\"FSTOCKID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSTOCKID"]) + "," +
|
"\"FStockStatusId\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockStatusId"]) + "," +
|
"\"FREQTRACENO\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FREQTRACENO"]) + "," +
|
"\"FChargeProjectID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FChargeProjectID"]) + "," +
|
"\"FCarryUnitId\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCarryUnitId"]) + "," +
|
"\"FCarryQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCarryQty"]) + "," +
|
"\"FCarryBaseQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FCarryBaseQty"]) + "," +
|
"\"FPriceListEntry\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPriceListEntry"]) + "," +
|
"\"FRMMUSTQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRMMUSTQTY"]) + "," +
|
"\"FRMREALQTY\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FRMREALQTY"]) + "," +
|
"\"FIsStock\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FIsStock"]) + "," +
|
"\"FBeforeDisPriceQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBeforeDisPriceQty"]) + ", " +
|
"\"FInStockEntry_Link\": [ { " +
|
"\"FInStockEntry_Link_FRuleId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FInStockEntry_Link_FRuleId"]) + "\" , " +
|
"\"FInStockEntry_Link_FRuleId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FInStockEntry_Link_FRuleId"]) + "\" , " +
|
"\"FInStockEntry_Link_FSBillId\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FInStockEntry_Link_FSBillId"]) + " , " +
|
"\"FInStockEntry_Link_FSId\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FInStockEntry_Link_FSId"]) + " " +
|
" } ] }, ";
|
}
|
string sJson_End = " ] }}";
|
string sJson = sJson_Main + sJson_Entry + sJson_End;
|
|
//从配置文件获取 CLOUD网址、账套信息、登录用户、登录密码
|
if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
|
{
|
sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
|
return false;
|
}
|
|
//生成 入库单 1个物料1单
|
ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
|
string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117
|
bool bLogin = client.Login(dbId, Pub_Class.ClsPub.sCLOUDUseName, Pub_Class.ClsPub.sCLOUDPsd, 2052);
|
if (bLogin)
|
{
|
var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
|
new object[] { "PUR_MRB", sJson });
|
|
string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
|
var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
|
new object[] { "PUR_MRB", sJson2 });
|
|
string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
|
var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
|
new object[] { "PUR_MRB", sJson3 });
|
|
string HReturn = result.ToString() + "," + result2.ToString() + "," + result3.ToString();
|
if (HReturn.Contains("\"IsSuccess\":false") == true)
|
{
|
sErrMsg = "生成采购退料单失败!" + HReturn;
|
return false;
|
}
|
else
|
{
|
return true;
|
}
|
}
|
else
|
{
|
sErrMsg = "生成采购退料失败!登录失败!";
|
return false;
|
}
|
}
|
}
|
catch (Exception e)
|
{
|
sErrMsg = "生成采购退料失败!" + e.Message;
|
return false;
|
}
|
}
|
|
#endregion
|
|
|
|
|
|
}
|
}
|