zzr99
2021-12-07 56270ee3a189c0dbd42446fbd726341c9f4e8efd
WebAPI/Controllers/Pay_GroupBalBillController.cs
@@ -113,164 +113,7 @@
            return objJsonResult;
        }
        #endregion
        /// <summary>
        /// 新增单据-保存按钮
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("Pay_GroupBalBill/AddBill")]
        [HttpPost]
        public object AddBill([FromBody] JObject sMainSub)
        {
            var _value = sMainSub["sMainSub"].ToString();
            string msg1 = _value.ToString();
            oCN.BeginTran();
            //保存主表
            objJsonResult = AddBillMain(msg1);
            if (objJsonResult.code == "0")
            {
                oCN.RollBack();
                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 = "新增单据成功!";
            objJsonResult.data = null;
            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();
            try
            {
                msg2 = "[" + msg2.ToString() + "]";
                List<Pay_GroupBalBill> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Pay_GroupBalBill>>(msg2);
                string HBillType = "2202";
                long HInterID = mainList[0].HInterID;//递入type得到的单据ID
                string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
                DateTime HDate = mainList[0].HDate;//日期
                int HYear = 2021;
                double HPeriod = 1;
                string HRemark = mainList[0].HRemark;//备注
                string HBillSubType = "2202";
                string HMaker = mainList[0].HMaker;
                string HExplanation =  "0";
                string HInnerBillNo = "0";
                long HMaterID = mainList[0].HMaterID;//产品ID
                long HGroupID = mainList[0].HGroupID;
                long HDeptID = mainList[0].HDeptID;
                long HProcID = mainList[0].HProcID;
                decimal HOtherSubsidy = mainList[0].HOtherSubsidy;
                decimal HOtherDeduct = mainList[0].HOtherDeduct;
                decimal HSumMoney = mainList[0].HSumMoney;
                decimal HPayMoney = mainList[0].HPayMoney;
                long HEmpID = mainList[0].HEmpID;
                long HPayType = mainList[0].HPayType;
                //long HMaterTypeID = 0;
                int HPRDORGID = mainList[0].HPRDORGID;  //组织
                //主表
                oCN.RunProc("Insert Into Pay_GroupBalBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HGroupID,HDeptID,HPayType,HOtherSubsidy" +
                ",HOtherDeduct,HSumMoney,HPayMoney" +
                ",HExplanation,HInnerBillNo" +
                ") " +
                " values('" + HBillType + "','" + HBillSubType + "'," + HInterID.ToString() + ",'" + HBillNo + "','" + HDate + "'" +
                ", " + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "','" + HMaker + "',getdate()" +
                ", " + HGroupID.ToString() + "," + HDeptID.ToString() + "," + HPayType.ToString() + "," + HOtherSubsidy.ToString() +
                "," + HOtherDeduct.ToString() + "," + HSumMoney.ToString() + "," + HPayMoney.ToString() +
                ",'" + HExplanation + "','" + HInnerBillNo + "'" +
                ") ");
                //保存子表
                objJsonResult = AddBillSub(msg3, HInterID);
                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)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        public json AddBillSub(string msg3, long HInterID)
        {
            List<Pay_GroupBalBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Pay_GroupBalBillSub>>(msg3);
            for (int i = 0; i < subList.ToArray().Length; i++)
            {
                long HEntryID = subList[0].HEntryID;//工段ID
                string HRemark = subList[0].HRemark;
                long HSourceInterID = subList[0].HSourceInterID;
                long HSourceEntryID = subList[0].HSourceEntryID;
                string HSourceBillNo = subList[0].HSourceBillNo;
                string HSourceBillType = subList[0].HSourceBillType;
                decimal HRelationQty = subList[0].HRelationQty;
                decimal HRelationMoney = subList[0].HRelationMoney;
                long HSourceID = subList[0].HSourceID;
                long HSqty = subList[0].HSqty;
                long HMaterID = subList[0].HMaterID;
                long HProcID = subList[0].HProcID;
                long HUnitID = subList[0].HUnitID;
                decimal HTimes = subList[0].HTimes;
                decimal HQty = subList[0].HQty;
                decimal HPrice = subList[0].HPrice;
                decimal HMoney = subList[0].HMoney;
                long HICMOInterID = subList[0].HICMOInterID;
                string HICMOBillNo = subList[0].HICMOBillNo;
                long HProcReportInterID = subList[0].HProcReportInterID;
                long HProcReportEntryID = subList[0].HProcReportEntryID;
                long HProcPlanInterID = subList[0].HProcPlanInterID;
                long HProcPlanEntryID = subList[0].HProcPlanEntryID;
                string HProcReportBillNo = subList[0].HProcReportBillNo;
                string HProcPlanBillNo = subList[0].HProcPlanBillNo;
                string sql = "Insert into Pay_GroupBalBillSub " +
                      " (HInterID,HEntryID,HRemark" +
                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                      ",HMaterID,HUnitID,HProcID,HTimes,HQty,HPrice,HSourceID" +
                      ",HMoney,HICMOInterID,HICMOBillNo,HProcReportInterID,HProcReportEntryID,HProcReportBillNo" +
                      ",HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HSqty" +
                      ") values("
                      + HInterID.ToString() + "," + HEntryID.ToString() + ",'" + HRemark + "'" +
                      "," + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty.ToString() + "," + HRelationMoney.ToString() +
                      "," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HProcID.ToString() + "," + HTimes.ToString() + "," + HQty.ToString() + "," + HPrice.ToString() + "," + HSourceID.ToString() +
                      "," + HMoney.ToString() + "," + HICMOInterID.ToString() + ",'" + HICMOBillNo + "'," + HProcReportInterID.ToString() + "," + HProcReportEntryID.ToString() + ",'" + HProcReportBillNo + "'" +
                      "," + HProcPlanInterID.ToString() + "," + HProcPlanEntryID.ToString() + ",'" + HProcPlanBillNo + "'," + HSqty.ToString() +
                      ") ";
            oCN.RunProc(sql);
            }
            objJsonResult.code = "1";
            objJsonResult.count = 1;
            objJsonResult.Message = null;
            objJsonResult.data = null;
            return objJsonResult;
        }
        /// <summary>
        ///工资结算个人单删除功能
        /// </summary>