zzr99
2022-02-10 919ffdcf960b886d99a1977767add03ba42e4cd1
WebAPI/Controllers/BaseSet/Gy_MaterialController.cs
@@ -7,6 +7,8 @@
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Models;
using WebAPI.Service;
namespace WebAPI.Controllers
{
    public class Gy_MaterialController : ApiController
@@ -25,34 +27,255 @@
        /// </summary>
        [Route("Gy_Material/list")]
        [HttpGet]
        public object list(string sWhere)
        public object list(string sWhere,string user, string Organization)
        {
            try
            {
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Gy_MaterialList " + sWhere, "h_v_Gy_MaterialList");
                }
                else
                {
                    string sql1 = "select * from h_v_Gy_MaterialList where 1 = 1 ";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "h_v_Gy_MaterialList");
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                //编辑权限
                if (!DBUtility.ClsPub.Security_Log_second("Gy_Material", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "false!";
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                string sql1 = string.Format(@"select * from h_v_Gy_MaterialList where 组织名称='" + Organization + "'");
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn(sql1 + sWhere + "order by HItemID desc", "h_v_Gy_MaterialList");
                }
                else
                {
                    string sql = sql1 + sWhere + "order by HItemID desc";
                    ds = oCN.RunProcReturn(sql, "h_v_Gy_MaterialList");
                }
                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>
        /// 物料设置获取信息
        /// </summary>
        /// <returns></returns>
        [Route("Gy_Material/GetGy_MaterialDetail")]
        [HttpGet]
        public ApiResult<DataSet> GetGy_MaterialDetail(string HID)
        {
            var model = LuBaoSevice.GetGy_MaterialBillDetail(HID);
            return model;
        }
        /// <summary>
        /// 保存物料
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        [Route("Gy_Material/SaveGy_MaterialList")]
        [HttpPost]
        public object SaveGy_MaterialList([FromBody] JObject msg)
        {
            DataSet ds;
            var _value = msg["msg"].ToString();
            string msg3 = _value.ToString();
            string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg1 = sArray[0].ToString();
            string msg2 = sArray[1].ToString();
            Int64 HItemID = 0;
            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
            //编辑权限
            if (!DBUtility.ClsPub.Security_Log_second("Gy_Material_Edit", 1, false, msg2))
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "无保存权限!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            //获取最大ID值赋值
            DataSet Maxds = oCN.RunProcReturn("select MAX(HItemID) HItemID from Gy_Material ", "Gy_Material");
            if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
            {
                //HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
                var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
                maxid += 1;
                HItemID = maxid;
            }
            ListModels oListModels = new ListModels();
            try
            {
                DLL.ClsGy_Material_Ctl oBill = new DLL.ClsGy_Material_Ctl();
                List<Models.ClsGy_Material_Model> lsmain = new List<Models.ClsGy_Material_Model>();
                msg1 = msg1.Replace("\\", "");
                msg1 = msg1.Replace("\n", "");  //\n
                lsmain = oListModels.getObjectByJson_Gy_Material(msg1);
                foreach (ClsGy_Material_Model oItem in lsmain)
                {
                    if (oItem.HNumber.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!代码不能为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    if (oItem.HName.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!名称不能为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    if (oItem.HMaterTypeID == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!物料属性不能为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    if (!DBUtility.ClsPub.AllowNumber(oItem.HNumber.Trim()))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!代码中不能出现连续‘.’并且首位末位不能为‘.’!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    //查询数据中是否存在重复代码
                    ds = oCN.RunProcReturn("select * from  Gy_Material where HStopflag=0 and HNumber='" + oItem.HNumber.Trim() + "'", "Gy_Material");
                    if (oItem.HNumber.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!代码为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    //新增时判断
                    if (oItem.HItemID == 0)
                    {
                        if (ds == null || ds.Tables[0].Rows.Count == 0)
                        {
                        }
                        else
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "保存失败!代码重复!";
                            objJsonResult.data = 1;
                            return objJsonResult;
                        }
                        //检查父级是否存在
                        string sParent;
                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
                        if (sParent.Trim() == "")
                        {
                            oBill.oModel.HParentID = 0;
                        }
                        else
                        {
                            if (oBill.HavParentCode(sParent.Trim(), HItemID))
                            {
                                oBill.oModel.HParentID = oBill.oModel.HItemID;
                            }
                            else
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
                                objJsonResult.data = 1;
                                return objJsonResult;
                            }
                        }
                    }
                    else//编辑时判断
                    {
                        //检查父级是否存在
                        string sParent;
                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
                        if (sParent.Trim() == "")
                        {
                            oBill.oModel.HParentID = 0;
                        }
                        else
                        {
                            if (oBill.HavParentCode(sParent.Trim(), oItem.HItemID))
                            {
                                oBill.oModel.HParentID = oBill.oModel.HItemID;
                            }
                            else
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
                                objJsonResult.data = 1;
                                return objJsonResult;
                            }
                        }
                    }
                    //得到短代码
                    string sShortNumber;
                    sShortNumber = DBUtility.ClsPub.GetShortNumber(oItem.HNumber.Trim());
                    if (sShortNumber.Trim() == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!短代码为空!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    oItem.HShortNumber = sShortNumber;//短代码
                    oItem.HEndFlag = true;//末级标志
                    oItem.HLevel = DBUtility.ClsPub.GetLevel(oItem.HNumber.Trim()); //等级
                    oBill.oModel = oItem;
                }
                //保存
                //保存完毕后处理
                bool bResult;
                if (oBill.oModel.HItemID == 0)
                {
                    // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                    bResult = oBill.AddNew();
                }
                else
                {
                    bResult = oBill.ModifyByID(oBill.oModel.HItemID);
                }
                if (bResult)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存成功!";
                    //WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
            }
@@ -60,7 +283,79 @@
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.Message = "保存失败!" + e.ToString();
                objJsonResult.data = 1;
                return objJsonResult;
            }
        }
        /// <summary>
        /// 物料设置删除功能
        /// </summary>
        /// <returns></returns>
        [Route("Gy_Material/Delete")]
        [HttpGet]
        public object DeltetGy_Material(string HItemID,string user)
        {
            DataSet ds;
            try
            {
                //删除权限
                if (!DBUtility.ClsPub.Security_Log("Gy_Material_Delete", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无删除权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (string.IsNullOrWhiteSpace(HItemID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HItemID为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.BeginTran();//开始事务
                ds = oCN.RunProcReturn("select * from Gy_Material where HItemID=" + HItemID, "Gy_Material");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有数据,无法删除!";
                    objJsonResult.data = null;
                    return objJsonResult; ;
                }
                var HStopflag = Convert.ToBoolean(ds.Tables[0].Rows[0]["HStopflag"]);
                if (HStopflag)
                {
                    oCN.RollBack();//回滚事务
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "数据已删除无法再次删除!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.RunProc("update Gy_Material set HStopflag=1 where HItemID=" + HItemID);
                oCN.Commit();//提交事务
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "* 数据删除成功!";
                objJsonResult.data = null;
                return objJsonResult; ;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
@@ -74,18 +369,26 @@
        /// </summary>
        [Route("Gy_Mould/list1")]
        [HttpGet]
        public object list1(string sWhere)
        public object list1(string sWhere, string ModRightNameSelect, string user)
        {
            try
            {
                if (!DBUtility.ClsPub.Security_Log(ModRightNameSelect, 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有查看权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Gy_MouldFileList " + sWhere, "h_v_Gy_MouldFileList");
                    ds = oCN.RunProcReturn("select * from h_v_Gy_MouldFileList " + sWhere + "order by 日期 desc", "h_v_Gy_MouldFileList");
                }
                else
                {
                    string sql1 = "select * from h_v_Gy_MouldFileList where 1 = 1 ";
                    string sql = sql1 + sWhere;
                    string sql = sql1 + sWhere + "order by 日期 desc";
                    ds = oCN.RunProcReturn(sql, "h_v_Gy_MouldFileList");
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
@@ -132,12 +435,12 @@
            {
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Gy_CheckToolsFileMainList " + sWhere, "h_v_Gy_CheckToolsFileMainList");
                    ds = oCN.RunProcReturn("select * from h_v_Gy_CheckToolsFileMainList " + sWhere + "order by 日期 desc", "h_v_Gy_CheckToolsFileMainList");
                }
                else
                {
                    string sql1 = "select * from h_v_Gy_CheckToolsFileMainList where 1 = 1 ";
                    string sql = sql1 + sWhere;
                    string sql = sql1 + sWhere + "order by 日期 desc";
                    ds = oCN.RunProcReturn(sql, "h_v_Gy_CheckToolsFileMainList");
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
@@ -180,12 +483,12 @@
            {
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_IF_BarCodeBillList " + sWhere, "h_v_IF_BarCodeBillList");
                    ds = oCN.RunProcReturn("select * from h_v_IF_BarCodeBillList " + sWhere + "order by 日期 desc", "h_v_IF_BarCodeBillList");
                }
                else
                {
                    string sql1 = "select * from h_v_IF_BarCodeBillList where 1 = 1 ";
                    string sql = sql1 + sWhere;
                    string sql = sql1 + sWhere + "order by 日期 desc";
                    ds = oCN.RunProcReturn(sql, "h_v_IF_BarCodeBillList");
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
@@ -224,13 +527,26 @@
        /// </summary>
        [Route("Gy_Mould_Edit/AddBill")]
        [HttpPost]
        public object AddBill([FromBody] JObject sMainSub)
        public object AddBill([FromBody] JObject oMain)
        {
            var _value = sMainSub["sMainSub"].ToString();
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string msg3 = sArray[1].ToString();//模块权限
            string msg4 = sArray[2].ToString();//当前人
            oCN.BeginTran();
            if (!DBUtility.ClsPub.Security_Log(msg3, 1, false, msg4))
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "没有查看权限";
                objJsonResult.data = null;
                return objJsonResult;
            }
            //保存主表
            objJsonResult = AddBillMain(msg1);
            objJsonResult = AddBillMain(msg2);
            if (objJsonResult.code == "0")
            {
                oCN.RollBack();
@@ -247,20 +563,19 @@
            return objJsonResult;
        }
        public json AddBillMain(string msg1)
        public json AddBillMain(string msg2)
        {
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            try
            {
                msg2 = "[" + msg2.ToString() + "]";
                List<Gy_Mould> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_Mould>>(msg2);
                string BillType = "7507";
                long HInterID = mainList[0].HInterID;//递入type得到的单据ID
                string BillType = "3899";
                //得到mainid
                long HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
                DateTime HDate = mainList[0].HDate;//日期
                int HYear = 2021;
                double HPeriod = 1;
                int HYear = DBUtility.ClsPub.isInt(DateTime.Now.Year);
                double HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
                string HMouldNo = mainList[0].HMouldNo;
                string HName = mainList[0].HName;
                string HModel = mainList[0].HModel;
@@ -271,7 +586,7 @@
                string HPICNo = mainList[0].HPICNo;
                string HWorkMaterModel = mainList[0].HWorkMaterModel;
                long HMaterID = mainList[0].HMaterID;
                long HMouleTypeID = mainList[0].HMouldTypeID;
                long HMouleTypeID = mainList[0].HMouleTypeID;
                long HUnitID = mainList[0].HUnitID;
                DateTime HOutComDate = mainList[0].HOutComDate;
                string HOutComNo = mainList[0].HOutComNo;
@@ -294,6 +609,15 @@
                string HMaterNumber = mainList[0].HMaterNumber;
                string HSupNumber = mainList[0].HSupNumber;
                long HPrintQty = mainList[0].HPrintQty;
                string HMouldOWNER = mainList[0].HMouldOWNER;
                string HSaveLife = mainList[0].HSaveLife;
                int HCaveQty = mainList[0].HCaveQty;
                int HMouldDotCheckRuleInterID= mainList[0].HMouldDotCheckRuleInterID;
                int HMouldMaintainRuleInterID= mainList[0].HMouldMaintainRuleInterID;
                int HNowSupID = mainList[0].HNowSupID;
                int HNowSupTypeID = mainList[0].HNowSupTypeID;
                //主表
                oCN.RunProc("Insert Into Gy_MouldFileMain   " +
@@ -303,19 +627,19 @@
                ",HSubjoin,HSubjoin2,HPICNo,HWorkMaterModel" +
                ",HMaterID,HMaterNumber,HMouldType,HUnitID" +
                ",HOutComDate,HOutComNo,HDeptID,HSupID,HSupNumber" +
                ",HPrintQty,HMouldStatus,HWhID,HRoutingID" +
                ",HBomID,HVersion,HSPGroupID,HSPID,HDesignLife" +
                ",HUseLife,HLeaveLife,HProdQty,HProdWeight" +
                ",HPrintQty,HMouldStatus,HWhID,HRoutingID,HCaveQty" +
                ",HBomID,HVersion,HSPGroupID,HSPID,HDesignLife,HNowSupID,HNowSupTypeID" +
                ",HUseLife,HLeaveLife,HProdQty,HProdWeight,HMouldOWNER,HSaveLife,HMouldDotCheckRuleInterID,HMouldMaintainRuleInterID" +
                ") " +
                " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "','" + HDate + "'" +
                "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HMaker + "',getdate()" +
                ",'" + HMouldNo + "','" + HName + "','" + HModel + "','" + HModel2 + "','" + HDiameter + "'" +
                "," + HSubjoin + ",'" + HSubjoin2 + "','" + HPICNo + "','" + HWorkMaterModel + "'" +
                "," + HMaterID + ",'" + HMaterNumber + "'," + HMouleTypeID + "," + HUnitID +
                ",'" + HSubjoin + "','" + HSubjoin2 + "','" + HPICNo + "','" + HWorkMaterModel + "'" +
                "," + HMaterID + ",'" + HMaterNumber + "'," + HMouleTypeID + "," + HUnitID +
                ",'" + HOutComDate + "','" + HOutComNo + "'," + HDeptID + "," + HSupID + ",'" + HSupNumber + "'" +
                "," + HPrintQty + ",'" + HMouldStatus + "'," + HWHID + "," + HRoutingID +
                "," + HBOMID + ",'" + HVersion + "'," + HSPGroupID + "," + HSPID + ",'" + HDesignLife + "'" +
                ",'" + HUseLife + "','" + HLeaveLife + "','" + HProdQty + "','" + HProdWeight + "'" +
                "," + HPrintQty + ",'" + HMouldStatus + "'," + HWHID + "," + HRoutingID +","+ HCaveQty+
                "," + HBOMID + ",'" + HVersion + "'," + HSPGroupID + "," + HSPID + ",'" + HDesignLife + "','" + HNowSupID+"','"+ HNowSupTypeID+"'"+
                ",'" + HUseLife + "','" + HLeaveLife + "','" + HProdQty + "','" + HProdWeight + "','" + HMouldOWNER + "','" + HSaveLife + "','" + HMouldDotCheckRuleInterID+"','"+ HMouldMaintainRuleInterID+"'"+
                ") ");
@@ -327,6 +651,7 @@
                " values('" + HInterID + "',0,''" +
                ",0,0,'','',0,0 " +
                ") ");
                if (objJsonResult.code == "0")
                {
                    objJsonResult.code = "0";
@@ -362,28 +687,35 @@
        [HttpPost]
        public object AddBill1([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string msg3 = sArray[1].ToString();//模块权限
            string msg4 = sArray[2].ToString();//当前人
            try
            {
                if (!DBUtility.ClsPub.Security_Log(msg3, 1, false, msg4))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有查看权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                DAL.ClsGy_MouldFile oMould = new DAL.ClsGy_MouldFile();
                DAL.ClsGy_MouldFileMain_View oDeptHlp = new DAL.ClsGy_MouldFileMain_View();
                var _value = oMain["oMain"].ToString();
                string msg1 = _value.ToString();
                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                string msg2 = sArray[0].ToString();
                string msg3 = sArray[1].ToString();
                string msg4 = sArray[2].ToString();
                string msg5 = sArray[3].ToString();
                //反序列化
                msg2 = "[" + msg2.ToString() + "]";
                List<Gy_Mould> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_Mould>>(msg2);
                string BillType = "7507";
                long HInterID = mainList[0].HInterID;//递入type得到的单据ID
                string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
                DateTime HDate = mainList[0].HDate;//日期
                int HYear = 2021;
                double HPeriod = 1;
                int HYear = DBUtility.ClsPub.isInt(DateTime.Now.Year);
                double HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
                string HMouldNo = mainList[0].HMouldNo;
                string HName = mainList[0].HName;
                string HModel = mainList[0].HModel;
@@ -394,7 +726,7 @@
                string HPICNo = mainList[0].HPICNo;
                string HWorkMaterModel = mainList[0].HWorkMaterModel;
                long HMaterID = mainList[0].HMaterID;
                long HMouleTypeID = mainList[0].HMouldTypeID;
                long HMouleTypeID = mainList[0].HMouleTypeID;
                long HUnitID = mainList[0].HUnitID;
                DateTime HOutComDate = mainList[0].HOutComDate;
                string HOutComNo = mainList[0].HOutComNo;
@@ -417,23 +749,70 @@
                string HMaterNumber = mainList[0].HMaterNumber;
                string HSupNumber = mainList[0].HSupNumber;
                long HPrintQty = mainList[0].HPrintQty;
                string HMouldOWNER = mainList[0].HMouldOWNER;
                string HSaveLife = mainList[0].HSaveLife;
                int HCaveQty = mainList[0].HCaveQty;
                int HMouldDotCheckRuleInterID = mainList[0].HMouldDotCheckRuleInterID;
                int HMouldMaintainRuleInterID = mainList[0].HMouldMaintainRuleInterID;
                int HNowSupID = mainList[0].HNowSupID;
                int HNowSupTypeID = mainList[0].HNowSupTypeID;
                //若MAINDI重复则重新获取
                oCN.BeginTran();
                //主表
                oCN.RunProc("Update Gy_MouldFileMain set " +
                    " HMouldNo='" + HMouldNo + "'" +
                    ",HName='" + HName + "'" +
                    ",HModel='" + HModel + "'" +
                    ",HModel2= '" + HModel2 + "' Where HInterID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
                oCN.RunProc("UpDate Gy_MouldFileMain set  " +
                " HBillNo='" + HBillNo + "'" +  //固定赋值===============
                ",HDate='" + HDate + "'" +
                ",HYear='" + HYear.ToString() + "'" +
                ",HPeriod='" + HPeriod.ToString() + "'" +
                ",HRemark='" + HRemark + "'" +
                ",HUpDater='" + HMaker + "'" +
                ",HUpDateDate=getdate()" +
                //========================================
                ",HMouldNo='" + HMouldNo + "'" +
                ",HName='" + HName + "'" +
                ",HModel='" + HModel + "'" +
                ",HModel2='" + HModel2 + "'" +
                ",HDiameter='" + HDiameter + "'" +
                ",HSubjoin='" + HSubjoin + "'" +
                ",HSubjoin2='" + HSubjoin2 + "'" +
                ",HPICNo='" + HPICNo + "'" +
                ",HWorkMaterModel='" + HWorkMaterModel + "'" +
                ",HMaterID=" + HMaterID.ToString() +
                ",HMaterNumber='" + HMaterNumber + "'" +
                ",HMouldType=" + HMouleTypeID.ToString() +
                ",HUnitID=" + HUnitID.ToString() +
                ",HOutComDate='" + HOutComDate + "'" +
                ",HOutComNo='" + HOutComNo + "'" +
                ",HDeptID=" + HDeptID.ToString() +
                ",HSupID=" + HSupID.ToString() +
                ",HSupNumber='" + HSupNumber + "'" +
                ",HPrintQty=" + HPrintQty.ToString() +
                ",HMouldStatus='" + HMouldStatus + "'" +
                ",HSaveLife='" + HSaveLife + "'" +
                ",HWhID=" + HWHID.ToString() +
                ",HRoutingID=" + HRoutingID.ToString() +
                ",HBomID=" + HBOMID.ToString() +
                ",HVersion='" + HVersion + "'" +
                ",HSPGroupID=" + HSPGroupID.ToString() +
                ",HSPID=" + HSPID.ToString() +
                ",HDesignLife=" + HDesignLife.ToString() +
                ",HCaveQty="+ HCaveQty.ToString()+
                ",HUseLife=" + HUseLife.ToString() +
                ",HLeaveLife=" + HLeaveLife.ToString() +
                ",HProdQty=" + HProdQty.ToString() +
                ",HMouldDotCheckRuleInterID="+ HMouldDotCheckRuleInterID.ToString()+
                ",HMouldMaintainRuleInterID=" + HMouldMaintainRuleInterID.ToString() +
                ",HMouldOWNER='" + HMouldOWNER + "'" +
                ",HNowSupID="+HNowSupID.ToString()+
                ",HNowSupTypeID="+HNowSupTypeID.ToString()+
                ",HProdWeight=" + HProdWeight.ToString() +
                " where HInterID=" + HInterID.ToString());
                //修改子项目代码
                //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Department,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
                //将上级 为非末级
               // oCN.RunProc("Update Gy_Department set HEndflag=0 where HItemID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
                // oCN.RunProc("Update Gy_Department set HEndflag=0 where HItemID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
                //
                oCN.Commit();
                objJsonResult.code = "1";
@@ -453,6 +832,8 @@
            }
        }
        /// <summary>
        /// 磨具档案修改按钮方法
        ///参数:string sql。
@@ -464,7 +845,7 @@
        {
            try
            {
                ds = oCN.RunProcReturn("select * from Gy_MouldFileMain where HInterID=" + HInterID, "Gy_MouldFileMain");
                ds = oCN.RunProcReturn("select * from h_v_Gy_MouldFileList where hmainid=" + HInterID, "h_v_Gy_MouldFileList");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
@@ -489,37 +870,40 @@
        /// </summary>
        [Route("Gy_Mould_Edit/Delete_Json")]
        [HttpGet]
        public object Delete_Json(long HItemID)
        public object Delete_Json(long hmainid, string ModRightNameDelete, string user)
        {
            DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
            try
            {
                    if (oBill.DeleteBill(HItemID, ref DBUtility.ClsPub.sExeReturnInfo))
                    {
                        //写入日志
                        ClsPub.Add_Log("", "删除项目,代码:" + oBill.omodel.HMouldNo + ",名称:" + oBill.omodel.HName, ClsPub.CurUserName);
                        //更新上级为 末级
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "删除成功";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "删除失败";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有删除权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (oBill.DeleteBill(hmainid, ref DBUtility.ClsPub.sExeReturnInfo))
                {
                    //写入日志
                    ClsPub.Add_Log("", "删除项目,代码:" + oBill.omodel.HMouldNo + ",名称:" + oBill.omodel.HName, ClsPub.CurUserName);
                    //更新上级为 末级
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "删除成功";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //ds = oCN.RunProcReturn("delete from Gy_Department where HItemID =  " + HItemID, "Gy_Department");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "删除成功";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
@@ -527,10 +911,207 @@
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
            }
            return objJsonResult;
        }
        /// <summary>
        /// 模具档案初始化按钮
        /// </summary>
        /// <param name="hmainid"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        [Route("Gy_Material/InitializeProdInBill")]
        [HttpGet]
        public object InitializeProdInBill(long hmainid, string user,string userID)
        {
            DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
            try
            {
                string HBillNo = "";
                Int64 HInterID = 0;//显示的字段
                ds = oCN.RunProcReturn("select * from Gy_MouldFileMain where HInterID='" + hmainid + "'", "Gy_MouldFileMain");
                DataRow dr = ds.Tables[0].Rows[0];
                HInterID = DBUtility.ClsPub.CreateBillID("3801", ref DBUtility.ClsPub.sExeReturnInfo);
                HBillNo = DBUtility.ClsPub.CreateBillCode("3801", ref DBUtility.ClsPub.sExeReturnInfo, true);
                string sql = "Insert Into Sc_MouldStockBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HMaker,HMakeDate" + /*"HYear, HPeriod,"*/
                ",HSupID,HSupTypeID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" +
                ",HKeeperID,HDeptID,HInnerBillNo,HRedBlueFlag" +
                ") " +
                " values('3801','3801'," + HInterID + ",'" + HBillNo + "',getdate()" +
                ", '" + user + "',getdate()" +
                ", " + dr["HSupID"].ToString() + ", 1," + dr["HWhID"].ToString() + ",0,0,0,0" +
                ", 0," + dr["HDeptID"].ToString() +  ",' ',0"  +
                ") ";
                string sql1 = string.Format(@"Insert Into Sc_MouldStockBillSub   (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark,HSourceInterID,
                HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaterID,HPropertyID,HSecUnitRate,HSecUnitID,HUnitID,
                HBatchNo,HQtyMust,HQty,HPrice,HMoney,HDesignLife,HLeaveLife,HUseLife,HWHID,HSCWHID,HSPID,HSCSPID,HSPGroupID,HCorrespondentTypeID,HCorrespondentID,
                HStockOrgID,HOWNERID,HOtherOrgID,HOWNERTYPEID) values(" + HInterID+ ",1,'',getdate(),0,'',0,0,'','',"+
                "0,0,"+dr["HInterID"].ToString()+",0,0,0,"+ dr["HUnitID"].ToString()+",0,"+ dr["HProdQty"].ToString() +","+ dr["HProdQty"].ToString()+",0,"+
                "0,"+ dr["HDesignLife"].ToString()+","+ dr["HLeaveLife"].ToString() + ","+dr["HUseLife"].ToString() + "," + dr["HWHID"].ToString() + ",0," + dr["HSPID"].ToString()+",0,0"
                + ",0,0,"+ userID + ",0,0,'')");
                //主表
                oCN.RunProc(sql);
                oCN.RunProc(sql1);
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "初始化成功!";
                //WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
                objJsonResult.data = 1;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "初始化失败!";
                objJsonResult.data = null;
            }
            return objJsonResult;
        }
        #region [模具档案审核、反审核]
        /// <summary>
        ///
        /// </summary>
        /// <param name="HInterID">单据ID</param>
        /// <param name="IsAudit">审核(0),反审核(1)</param>
        /// <param name="CurUserName">审核人</param>
        /// <returns></returns>
        [Route("Gy_Mould/AuditProcessReportList")]
        [HttpGet]
        public object AuditProcessReportList(int HInterID, int IsAudit, string CurUserName)
        {
            string ModRightNameCheck = "Gy_MouldFile_Check";
            DBUtility.ClsPub.CurUserName = CurUserName;
            try
            {
                //审核权限
                if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "审核失败!无权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (HInterID <= 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HInterID小于0!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                Int64 lngBillKey = 0;
                lngBillKey = DBUtility.ClsPub.isLong(HInterID);
                DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
                //查看是否已审核,关闭,作废
                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
                {
                    if (oBill.omodel.HCloseMan.Trim() != "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "单据已关闭!不能再次审核!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (oBill.omodel.HDeleteMan.Trim() != "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "单据已作废!不能再次审核!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (IsAudit == 0)  //审核判断
                    {
                        if (oBill.omodel.HChecker.Trim() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已审核!不能再次审核!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                    if (IsAudit == 1) //反审核判断
                    {
                        if (oBill.omodel.HChecker.Trim() == "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据未审核!不需要反审核!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (IsAudit == 0) //审核提交
                {
                    //审核提交
                    if (oBill.CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                    {
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核成功";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                if (IsAudit == 1) //反审核提交
                {
                    //反审核提交AbandonCheck
                    if (oBill.AbandonCheck(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                    {
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "反审核成功";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        //
        #endregion
    }
}