1
沈泽
2021-10-08 4b04a23545cae4fb23da7dfbdc7e7bcb2710b420
1
3个文件已修改
3个文件已添加
433 ■■■■■ 已修改文件
WebAPI/Controllers/Pay_SingleBalBillController.cs 256 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/ClsPay_SingleBalBill.cs 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/ListModels.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/Pay_SingleBalBill.cs 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/Pay_SingleBalBillSub.cs 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/Pay_SingleBalBillController.cs
New file
@@ -0,0 +1,256 @@
using Newtonsoft.Json.Linq;
using Pub_Class;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Models;
namespace WebAPI.Controllers
{
    public class Pay_SingleBalBillController : ApiController
    {
        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
        private json objJsonResult = new json();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        DataSet ds;
        /// <summary>
        /// 返回工资结算个人列表
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("Pay_SingleBalBill/list")]
        [HttpGet]
        public object list(string sWhere)
        {
            try
            {
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Pay_SingleBalBillList " + sWhere, "h_v_Pay_SingleBalBillList");
                }
                else
                {
                    string sql1 = "select * from h_v_Pay_SingleBalBillList where 1 = 1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "h_v_Pay_SingleBalBillList");
                }
                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("Pay_SingleBalBill/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 = ds.Tables[0];
            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_SingleBalBill> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Pay_SingleBalBill>>(msg2);
                string HBillType = "2205";
                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 = mainList[0].HBillSubType;
                string HMaker = mainList[0].HMaker;
                string HExplanation = mainList[0].HExplanation;
                string HInnerBillNo = mainList[0].HInnerBillNo;
                long HMaterID = mainList[0].HMaterID;//产品ID
                long HGroupID = mainList[0].HGroupID;
                long HDeptID = mainList[0].HDeptID;
                long HProcID = mainList[0].HProcID;
                long HEmpID = mainList[0].HEmpID;
                long HPayType = mainList[0].HPayType;
                //long HMaterTypeID = 0;
                int HPRDORGID = mainList[0].HPRDORGID;  //组织
                //主表
                oCN.RunProc("Insert Into Pay_SingleBalBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HGroupID,HDeptID,HEmpID,HPayType,HExplanation,HInnerBillNo" +
                ") " +
                " values('" + HBillType + "'," + HBillSubType + ",'" + HInterID + "','" + HBillNo + "','" + HDate + "'" +
                "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HMaker + "',getdate()," + HGroupID + "," + HDeptID + "," + HEmpID + ","+
                "," + HPayType + "," + 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;
                }
                else
                {
                    if (ClsPub.isStrNull(ds.Tables[0].Rows[0][0]) == "2")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = ClsPub.isStrNull(ds.Tables[0].Rows[0][1]);
                        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_SingleBalBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Pay_SingleBalBillSub>>(msg3);
            for (int i = 0; i < subList.ToArray().Length; i++)
            {
                //if (subList[i].HWorkQty <= 0)
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "第" + i + "行,加工数量不能为0或者小于0";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                string HCloseMan = "";//关闭人
                bool HCloseType = false;//
                string HEntryCloseDate = "";//时间单位
                long HSourceInterID = 0;//源单主内码
                long HSourceEntryID = 0;//源单子内码
                string HSourceBillNo = "";//源单单号
                string HSourceBillType = "";//源单类型
                double HRelationQty = 0;//关联数量
                double HRelationMoney = 0;//关联金额
                decimal HTimes = 0;
                decimal HQty = 0;
                decimal HPrice = 0;
                decimal HMoney = 0;
                long HICMOInterID = 0;
                string HICMOBillNo = "";
                long HProcID_S = 0;//工段ID
                long HMaterID_S = 0;
                long HEmpID_S = 0;
                long HSourceID_S = 0;
                long HProcReportInterID = 0;
                long HProcReportEntryID = 0;
                long HProcPlanInterID = 0;
                long HProcPlanEntryID = 0;
                string HProcReportBillNo = "";
                string HProcPlanBillNo = "";
                decimal HPriceRate = 0;
                decimal HSubsidyTotal = 0;
                decimal HDeuctTotal = 0;
                decimal HPackQty = 0;
                decimal HPackPrice = 0;
                decimal HPackMoney = 0;
                long HPackMaterID = 0;
                decimal HSubsidyQty = 0;
                decimal HSubsidyMoney = 0;
                oCN.RunProc("Insert into Pay_SingleBalBillSub " +
                      " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                      ",HMaterID_S,HProcID_S,HEmpID_S,HSourceID_S,HTimes,HQty,HPrice," +
                      ",HMoney,HICMOInterID,HICMOBillNo,HProcReportInterID,HProcReportEntryID,HProcReportBillNo" +
                      ",HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo" +
                      ",HPriceRate,HSubsidyTotal,HDeuctTotal" +
                      ",HPackQty,HPackPrice,HPackMoney,HPackMaterID,HSubsidyQty,HSubsidyMoney" +
                      ") values("
                      + HInterID + "," + i + "," + subList[i].HEntryID + ",'" + HCloseMan + "'" +
                     "," + HEntryCloseDate + "," + Convert.ToString(HCloseType ? 1 : 0) +
                      ",'" + subList[i].HRemark + "'," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty + "," + HRelationMoney + "," +
                     "," + HProcID_S + "," + HMaterID_S + "," + HEmpID_S + ", " + HSourceID_S + ",'" + HTimes + "','" + HQty + "'" +
                     ",'" + HPrice + "','" + HMoney + "','" + HICMOInterID + "'," + HICMOBillNo + "," + HProcReportInterID + "," + HProcReportEntryID + "," +
                     "," + HProcReportBillNo + "," + HProcPlanInterID + ",'" + HProcPlanEntryID + "','" + HProcPlanBillNo + "'," + HPriceRate + "," + HSubsidyTotal + "," +
                     "," + HDeuctTotal + ",'" + HPackQty + "'," + HPackPrice + "," + HPackMoney + "," + HPackMaterID + "," + HSubsidyQty + "," + HSubsidyMoney + "," +
                      ") ");
            }
            objJsonResult.code = "1";
            objJsonResult.count = 1;
            objJsonResult.Message = null;
            objJsonResult.data = null;
            return objJsonResult;
        }
        //
    }
}
WebAPI/DLL/ClsPay_SingleBalBill.cs
@@ -5,7 +5,7 @@
namespace DAL
{
    public  class ClsPay_SingleBalBill:DBUtility.ClsXt_BaseBill
    public class ClsPay_SingleBalBill : DBUtility.ClsXt_BaseBill
    {
        public Model.ClsPay_SingleBalBillMain omodel = new Model.ClsPay_SingleBalBillMain();
        public List<Model.ClsPay_SingleBalBillSub> DetailColl = new List<Model.ClsPay_SingleBalBillSub>();
@@ -16,9 +16,9 @@
            base.MvarItemKeySub2 = "Pay_SingleBalBillKS_HeaderText";
            base.MvarItemKeySub3 = "";
            base.MvarItemKeySub4 = "";
            base.MvarItemKey="Pay_SingleBalBillMain";
            base.MvarReportTitle="工资结算单(单人)";
            base.BillType="2205";
            base.MvarItemKey = "Pay_SingleBalBillMain";
            base.MvarReportTitle = "工资结算单(单人)";
            base.BillType = "2205";
            base.HBillSubType = "2205";
        }
@@ -29,7 +29,7 @@
        {
            DetailColl = null;
        }
        #endregion   自定义方法
        //修改单据
        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
@@ -120,8 +120,8 @@
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate,HSaveFlag" +
                ",HGroupID,HDeptID,HEmpID,HPayType,HExplanation,HInnerBillNo" +
                ") " +
                " values('" + this.BillType + "','"  + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()," + Convert.ToString(omodel.HSaveFlag ? 1 : 0) +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()," + Convert.ToString(omodel.HSaveFlag ? 1 : 0) +
                ", " + omodel.HGroupID.ToString() + "," + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HPayType.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'" +
                ") ");
                //插入子表
@@ -176,9 +176,9 @@
            try
            {
                //查询主表
                DataSet Ds ;
                DataSet Ds;
                Ds = oCn.RunProcReturn("Select * from Pay_SingleBalBillMain Where HInterID=" + lngBillKey.ToString(), "Pay_SingleBalBillMain");
                if(Ds.Tables[0].Rows.Count==0)
                if (Ds.Tables[0].Rows.Count == 0)
                {
                    sReturn = "单据未找到!";
                    return false;
@@ -217,9 +217,9 @@
                omodel.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HExplanation"]);
                omodel.HInnerBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HInnerBillNo"]);
                //
                //循环
                DataSet DsSub ;
                DataSet DsSub;
                DsSub = oCn.RunProcReturn("Select * from Pay_SingleBalBillSub Where HInterID=" + lngBillKey.ToString() + "order by HEntryID", "Pay_SingleBalBillSub");
                DetailColl.Clear();//清空
                for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
@@ -233,8 +233,8 @@
                    oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
                    oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]);
                    oSub.HCloseMan =  DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]);
                    oSub.HCloseMan = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
                    oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
@@ -282,8 +282,8 @@
                throw (e);
            }
        }
    }
}
WebAPI/ListModels.cs
@@ -1202,7 +1202,30 @@
            List<Model.ClsSc_MouldMoveStockStepOutBillSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_MouldMoveStockStepOutBillSub>>(jsonString);
            return list;
        }
        /// <summary>
        /// 处理工资个人结算单主表的json
        /// </summary>
        /// <param name="jsonString"></param>
        /// <returns></returns>
        public List<Model.ClsPay_SingleBalBillMain> getObjectByJson_Pay_SingleBalBillMain(string jsonString)
        {
            jsonString = "[" + jsonString.ToString() + "]";
            List<Model.ClsPay_SingleBalBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPay_SingleBalBillMain>>(jsonString);
            return list;
        }
        /// <summary>
        /// 处理工资个人结算单子表的json
        /// </summary>
        /// <param name="jsonString"></param>
        /// <returns></returns>
        public List<Model.ClsPay_SingleBalBillSub> getObjectByJson_Pay_SingleBalBillSub(string jsonString)
        {
            jsonString = "[" + jsonString.ToString() + "]";
            List<Model.ClsPay_SingleBalBillSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPay_SingleBalBillSub>>(jsonString);
            return list;
        }
        /// <summary>
        /// 处理新增模具寿命调整单主表的json
        /// </summary>
WebAPI/Models/Pay_SingleBalBill.cs
New file
@@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace WebAPI.Models
{
    public class Pay_SingleBalBill
    {
        public long HInterID { get; set; }
        public long HEntryID { get; set; }
        public long HPeriod { get; set; }
        public string HBillType { get; set; }
        public string HBillSubType { get; set; }
        public DateTime HDate { get; set; }
        public string HBillNo { get; set; }
        public long HBillStatus { get; set; }
        public long HCheckItemNowID { get; set; }
        public long HCheckItemNextID { get; set; }
        public long HCheckFlowID { get; set; }
        public string HRemark { get; set; }
        public string HExplanation { get; set; }
        public string HInnerBillNo { get; set; }
        public string HBacker { get; set; }
        public DateTime HBackDate { get; set; }
        public string HChecker { get; set; }
        public DateTime HCheckDate { get; set; }
        public string HMaker { get; set; }
        public DateTime HMakeDate { get; set; }
        public string HUpDater { get; set; }
        public DateTime HUpDateDate { get; set; }
        public string HCloseMan { get; set; }
        public DateTime HCloseDate { get; set; }
        public string HDeleteMan { get; set; }
        public DateTime HDeleteDate { get; set; }
        public string HCloseType { get; set; }
        public long HGroupID { get; set; }
        public long HDeptID { get; set; }
        public long HMaterID { get; set; }
        public long HProcID { get; set; }
        public long HSourceInterID { get; set; }
        public long HSourceEntryID { get; set; }
        public long HEmpID { get; set; }
        public long HPayType { get; set; }
        public string HSourceBillNo { get; set; }
        public string HSourceBillType { get; set; }
        public decimal HTimes { get; set; }
        public decimal HRelationQty { get; set; }
        public decimal HRelationMoney { get; set; }
        public decimal HQty { get; set; }
        public decimal HPrice { get; set; }
        public decimal HPackQty { get; set; }
        public decimal HPackPrice { get; set; }
        public decimal HPackMoney { get; set; }
        public long HPackMaterID { get; set; }
        public decimal HPriceRate { get; set; }
        public decimal HSubsidyTotal { get; set; }
        public decimal HDeuctTotal { get; set; }
        public decimal HSubsidyQty { get; set; }
        public decimal HSubsidyMoney { get; set; }
        public decimal HMoney { get; set; }
        public long HICMOInterID { get; set; }
        public string HICMOBillNo { get; set; }
        public long HProcReportInterID { get; set; }
        public long HProcReportEntryID { get; set; }
        public long HProcPlanInterID { get; set; }
        public long HProcPlanEntryID { get; set; }
        public string HProcReportBillNo { get; set; }
        public string HProcPlanBillNo { get; set; }
        public int HPRDORGID { get; set; }
    }
}
WebAPI/Models/Pay_SingleBalBillSub.cs
New file
@@ -0,0 +1,45 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace WebAPI.Models
{
    public class Pay_SingleBalBillSub
    {
        public long HEntryID { get; set; }
        public long HMaterID { get; set; }
        public string HRemark { get; set; }
        public long HProcID { get; set; }
        public long HSourceInterID { get; set; }
        public long HSourceEntryID { get; set; }
        public long HEmpID { get; set; }
        public long HPayType { get; set; }
        public string HSourceBillNo { get; set; }
        public string HSourceBillType { get; set; }
        public decimal HTimes { get; set; }
        public decimal HRelationQty { get; set; }
        public decimal HRelationMoney { get; set; }
        public decimal HQty { get; set; }
        public decimal HPrice { get; set; }
        public decimal HPackQty { get; set; }
        public decimal HPackPrice { get; set; }
        public decimal HPackMoney { get; set; }
        public long HPackMaterID { get; set; }
        public decimal HPriceRate { get; set; }
        public decimal HSubsidyTotal { get; set; }
        public decimal HDeuctTotal { get; set; }
        public decimal HSubsidyQty { get; set; }
        public decimal HSubsidyMoney { get; set; }
        public decimal HMoney { get; set; }
        public long HICMOInterID { get; set; }
        public string HICMOBillNo { get; set; }
        public long HProcReportInterID { get; set; }
        public long HProcReportEntryID { get; set; }
        public long HProcPlanInterID { get; set; }
        public long HProcPlanEntryID { get; set; }
        public string HProcReportBillNo { get; set; }
        public string HProcPlanBillNo { get; set; }
    }
}
WebAPI/WebAPI.csproj
@@ -397,6 +397,7 @@
    <Compile Include="DLL\ClsSc_MouldOtherOutBill.cs" />
    <Compile Include="DLL\ClsSc_MouldOtherInBill.cs" />
    <Compile Include="DLL\ClsSc_MouldMoveStockStepOutBill.cs" />
    <Compile Include="DLL\ClsPay_SingleBalBill.cs" />
    <Compile Include="DLL\ClsSc_MouldProdBackBill.cs" />
    <Compile Include="DLL\ClsSc_MouldProdInBill.cs" />
    <Compile Include="DLL\ClsSc_MouldMoveStockStepInBill.cs" />
@@ -431,6 +432,8 @@
    <Compile Include="Models\ClsSc_MouldRepairInBillSub.cs" />
    <Compile Include="Models\ClsSc_MouldRepairOutBillMain.cs" />
    <Compile Include="Models\ClsSc_MouldRepairOutBillSub.cs" />
    <Compile Include="Models\Pay_SingleBalBillSub.cs" />
    <Compile Include="Models\Pay_SingleBalBill.cs" />
    <Compile Include="Models\Xt_ORGANIZATIONS.cs" />
    <Compile Include="Models\ClsSb_EquipRepairWorkBillSub.cs" />
    <Compile Include="Models\ClsSc_ICMOBillWorkQtyStatus_Tmp.cs" />