YL
2022-03-08 fcd9ba477d9549cb726341541ca452d634c75090
WebAPI/Controllers/MJGL/Sc_MouldProdInBillController.cs
@@ -7,6 +7,7 @@
using System.Net;
using System.Net.Http;
using System.Web.Http;
using ViewAPI;
using WebAPI.Models;
namespace WebAPI.Controllers.MJGL
@@ -16,6 +17,7 @@
        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//单据状态(新增,修改,浏览,更新单价,变更)
        private json objJsonResult = new json();
        public DataSet ds = new DataSet();
        public SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
        public DLL.ClsSc_MouldProdInBill BillNew0 = new DLL.ClsSc_MouldProdInBill();   //模具报废入库对应单据类
        public DLL.ClsSc_MouldProdInBill BillOld0 = new DLL.ClsSc_MouldProdInBill();   //模具报废入库对应单据类
@@ -23,27 +25,39 @@
        [Route("Sc_MouldProdInBill/Get_MouldProdInBillList")]
        [HttpGet]
        public object Get_MouldProdInBillList(string sWhere)
        public object Get_MouldProdInBillList(string sWhere,string user, string Organization)
        {
            try
            {
                ds = Sc_GetMouldProdInHouseBill(sWhere);
                if (ds == null)
                Log.LogInfo("成功!"); //记录提交数据
                //编辑权限
                if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldProdInBillList", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "查询数据异常,请与管理员联系!";
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "返回记录成功!";
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
                Log.LogInfo("有权限");
                ds = Sc_GetMouldProdInHouseBill(sWhere,Organization);
                //if (ds.Tables[0].Rows.Count != 0 || ds != null)
                //{
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
                //}
                //else
                //{
                //objJsonResult.code = "0";
                //objJsonResult.count = 0;
                //objJsonResult.Message = "无数据";
                //objJsonResult.data = null;
                //return objJsonResult;
                //}
            }
            catch (Exception ex)
            {
@@ -55,19 +69,20 @@
            }
        }
        public static DataSet Sc_GetMouldProdInHouseBill(string sWhere)
        public static DataSet Sc_GetMouldProdInHouseBill(string sWhere, string Organization)
        {
            LogService.Write(sWhere+";"+ Organization);
            string sql1 = string.Format(@"select * from h_v_Sc_MouldProdInHouseBillList where 库存组织='" + Organization + "'");
            if (sWhere == null || sWhere.Equals(""))
            {
                return new SQLHelper.ClsCN().RunProcReturn("select * from h_v_Sc_MouldProdInHouseBillList order by 日期 desc " + sWhere, "h_v_Sc_MouldProdInHouseBillList");
                return new SQLHelper.ClsCN().RunProcReturn(sql1+ sWhere + "order by hmainid desc", "h_v_Sc_MouldProdInHouseBillList");
            }
            else
            {
                string sql1 = "select * from h_v_Sc_MouldProdInHouseBillList where 1 = 1 ";
                string sql = sql1 + sWhere+ "order by 日期 desc";
                string sql = sql1 + sWhere+ "order by hmainid desc";
                Log.LogInfo(sql);
                return new SQLHelper.ClsCN().RunProcReturn(sql, "h_v_Sc_MouldProdInHouseBillList");
            }
        }
        #endregion
@@ -79,17 +94,17 @@
        /// <returns></returns>
        [Route("Sc_MouldProdInBill/set_DeleteBill")]
        [HttpGet]
        public object set_DeleteBill(string HInterID)
        public object set_DeleteBill(string HInterID,string user)
        {
            ////编辑权限
            //if (!DBUtility.ClsPub.Security_Log("Sc_MouldProdInBill_Delete", 1, true, DBUtility.ClsPub.CurUserName))
            //{
            //    objJsonResult.code = "0";
            //    objJsonResult.count = 0;
            //    objJsonResult.Message = "无删除权限!";
            //    objJsonResult.data = null;
            //    return objJsonResult;
            //}
            //编辑权限
            if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldProdInBill_Delete", 1, false, user))
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "无删除权限!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            string s = "";
            Int64 lngBillKey = 0;
@@ -129,7 +144,7 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
                bool IsDete = oBill.DeleteBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo);
                if (IsDete)
                {
                    objJsonResult.code = "1";
@@ -176,7 +191,7 @@
            try
            {
                //审核权限
                if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, CurUserName))
                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -283,7 +298,7 @@
            try
            {
                //审核权限
                if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, CurUserName))
                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -399,6 +414,8 @@
        public object Sc_MouldScrapInProdBillListProjectDetai(string sqlWhere)
        {
            DataSet ds;
            DataSet ds1;
            List<object> list = new List<object>();
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
@@ -407,13 +424,9 @@
                    ds = oCN.RunProcReturn(string.Format(@"SELECT HMaterID,模具代码 HMaterCode,模具名称 HMaterName,规格型号 HMaterSpec,
                                          批次 HBatchNo,设计寿命 HDesignLife, 剩余寿命 HLeaveLife, 使用寿命 HUseLife,应收数量 HQtyMust,
                                          实收数量 HQty, 单价 HPrice, 金额 HMoney,hwhid1 HWHID, 收料仓库代码 HWHCode,收料仓库 HWHName,
                                          HSPID, 收料仓位代码 HSPCode,收料仓位 HSPName,表体备注 HRemark
                                          HSPID, 收料仓位代码 HSPCode,收料仓位 HSPName,表体备注 HRemark,HStockOrgID,HUnitID,计量单位代码,计量单位
                                          FROM h_v_Sc_MouldProdInHouseBillList"), "h_v_Sc_MouldProdInHouseBillList");
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取信息成功!";
                    objJsonResult.data = ds.Tables[0];
                }
                else
                {
@@ -422,16 +435,23 @@
                    string sql1 = string.Format(@"SELECT HMaterID,模具代码 HMaterCode,模具名称 HMaterName,规格型号 HMaterSpec,
                                          批次 HBatchNo,设计寿命 HDesignLife, 剩余寿命 HLeaveLife, 使用寿命 HUseLife,应收数量 HQtyMust,
                                          实收数量 HQty, 单价 HPrice, 金额 HMoney,hwhid1 HWHID, 收料仓库代码 HWHCode,收料仓库 HWHName,
                                          HSPID, 收料仓位代码 HSPCode,收料仓位 HSPName,表体备注 HRemark
                                          HSPID, 收料仓位代码 HSPCode,收料仓位 HSPName,表体备注 HRemark,HStockOrgID,HUnitID,计量单位代码,计量单位
                                          FROM h_v_Sc_MouldProdInHouseBillList where 1=1");
                    string sql = sql1 + sqlWhere;
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_MouldProdInHouseBillList");
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取信息成功!";
                    objJsonResult.data = ds.Tables[0];
                }
                //查汇总
                ds1 = oCN.RunProcReturn(string.Format(@"select  物料代码,max(物料名称)物料名称,规格型号,max(单据号)单据号,批次,sum(实收数量)实收数量,
                                            hwhid1,max(收料仓库代码)收料仓库代码,max(收料仓库)收料仓库,表体备注 from h_v_Sc_MouldProdInHouseBillList
                                            where 1=1 " + sqlWhere + " group by 物料代码,规格型号,hwhid1,批次,表体备注"), "h_v_Sc_MouldProdInHouseBillList");
                list.Add(ds.Tables[0]);
                list.Add(ds1.Tables[0]);
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "获取信息成功!";
                objJsonResult.list = list;
            }
            catch (Exception e)
            {
@@ -460,12 +480,24 @@
            string msg2 = sArray[0].ToString();
            string msg3 = sArray[1].ToString();
            string refSav = sArray[2].ToString();
            string msg4 = sArray[3].ToString();
            string UserName = "";
            string s = "";
            long mouldid;
            ListModels oListModels = new ListModels();
            try
            {
                //编辑权限
                if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldProdInBill_Edit", 1, false, msg4))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无保存权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                DLL.ClsSc_MouldProdInBill oBill = new DLL.ClsSc_MouldProdInBill();
                List<Models.ClsSc_MouldProdBillMain> lsmain = new List<Models.ClsSc_MouldProdBillMain>();
                msg2 = msg2.Replace("\\", "");
@@ -568,7 +600,7 @@
                    i++;
                    oItemSub.HEntryID = i;
                    mouldid = oItemSub.HMaterID;
                    //oItemSub.HRepairCheckID = 0;   //验收项目ID
                    //oItemSub.HRepairCheckContent = ""; //验收内容
                    //oItemSub.HManagerID = 0;   //负责人ID
@@ -602,6 +634,8 @@
                }
                if (bResult)
                {
                    string sql = $"exec h_p_Sc_MouldChangeFileStatus  'in','{oBill.omodel.HInterID.ToString()}' ";
                    oCn.RunProc(sql);
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存成功!";
@@ -628,5 +662,89 @@
            }
        }
        #endregion
        #region 器具采购入库单审核/反审核
        [Route("Sc_MouldProdInHouseBill/AuditMouldProdInHouseBill")]
        [HttpGet]
        public object AuditMouldProdInHouseBill(string HInterID, string user, int flag)
        {
            //flag=1 审核;  flag=2 反审核
            //编辑权限
            if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldProdInBill_Check", 1, false, user))
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "无审核权限!";
                objJsonResult.data = null;
                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;
            }
            DLL.ClsSc_MouldProdOutBill oBill = new DLL.ClsSc_MouldProdOutBill();
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
            {
                if (flag == 1)
                {
                    if (oBill.omodel.HBillStatus == 2)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "当前单据已审核,无需再次审核";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        string HCheckDate = DateTime.Now.Date.ToString();
                        oCn.RunProc(" Update Sc_MouldStockBillMain set HChecker='" + user + "',HCheckDate='" + HCheckDate + "',HBillStatus=2 Where HBillType='3801' and HInterID=" + HInterID);
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核成功!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                }
                else
                {
                    if (oBill.omodel.HBillStatus == 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "当前单据未审核,无需反审核";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        string HCheckDate = DateTime.Now.Date.ToString();
                        oCn.RunProc(" Update Sc_MouldStockBillMain set HChecker=' ',HCheckDate=' ',HBillStatus=1 Where HBillType='3801' and HInterID=" + HInterID);
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "反审核成功!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                }
            }
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "单据未找到";
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
    }
}