Browse Source

釉料变更

chenxy 6 năm trước cách đây
mục cha
commit
4550647b5a

+ 4 - 2
DK.Service/BarcodePrintService/InvoiceLayoutPrinter.cs

@@ -8,6 +8,7 @@ using System.Drawing.Printing;
 using System.IO;
 using System.Runtime.Serialization.Formatters.Binary;
 using System.Security.Cryptography;
+using Curtain.Log;
 
 namespace Dongke.WinForm.Controls.InvoiceLayout
 {
@@ -62,13 +63,14 @@ namespace Dongke.WinForm.Controls.InvoiceLayout
 
         private void PrintDocument_PrintPage(object sender, PrintPageEventArgs e)
         {
-            //try
+            try
             {
                 e.Graphics.PageUnit = GraphicsUnit.Millimeter;
                 e.HasMorePages = DrawPage(e.Graphics);
             }
-            //catch (Exception ex)
+            catch (Exception ex)
             {
+                Logger.Error(ex);
             }
         }
 

+ 143 - 3
DK.Service/PMModuleLogic/PMModuleLogicDAL.cs

@@ -16533,9 +16533,8 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
             return returnRows;
         }
 
-
         /// <summary>
-        /// 设置条码商标 
+        /// 设置条码商标 釉料
         /// </summary>
         /// <returns></returns>
         public static int SaveBarCodeLogoAndGlazetypeid(string barcode, int logoid, int glazetypeid, SUserInfo sUserInfo)
@@ -16553,7 +16552,54 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                 //barcode = oracleTrConn.GetSqlResultToStr(sqlString, paras1);
 
                 OracleParameter[] Paras = null;
-                string sql = "";
+                string sql = "select g.groutingdailydetailid, g.logoid, g.glazetypeid, t.PROCEDUREID from tp_pm_groutingdailydetail g \n" +
+                    " left join tp_pm_inproduction t on t.barcode = g.barcode\n" +
+                    "where g.barcode = :barcode";
+                Paras = new OracleParameter[] {
+                    new OracleParameter(":barcode",OracleDbType.NVarchar2,
+                        barcode,ParameterDirection.Input), };
+
+                DataTable dt = oracleTrConn.GetSqlResultToDt(sql, Paras);
+                if (dt == null || dt.Rows.Count == 0)
+                {
+                    return -2;
+                }
+
+                // 釉料变更履历
+                sql = "insert into TP_PM_GlazetypeRecord\n" +
+                "values\n" +
+                "  (GROUTINGDAILYDETAILID\n" +
+                "  ,OldGlazetypeid\n" +
+                "  ,NewGlazetypeid\n" +
+                "  ,ProcedureID\n" +
+                "  ,Remarks\n" +
+                "  ,AccountID\n" +
+                "  ,CreateUserID)\n" +
+                "values\n" +
+                "  (:GROUTINGDAILYDETAILID\n" +
+                "  ,:OldGlazetypeid\n" +
+                "  ,:NewGlazetypeid\n" +
+                "  ,:ProcedureID\n" +
+                "  ,:Remarks\n" +
+                "  ,:AccountID\n" +
+                "  ,:CreateUserID)";
+                Paras = new OracleParameter[] {
+                    new OracleParameter(":GROUTINGDAILYDETAILID",OracleDbType.Int32,
+                        dt.Rows[0]["GROUTINGDAILYDETAILID"],ParameterDirection.Input),
+                    new OracleParameter(":OldGlazetypeid",OracleDbType.Int32,
+                        dt.Rows[0]["glazetypeid"],ParameterDirection.Input),
+                    new OracleParameter(":NewGlazetypeid",OracleDbType.Int32,
+                        glazetypeid,ParameterDirection.Input),
+                    new OracleParameter(":ProcedureID",OracleDbType.Int32,
+                        dt.Rows[0]["PROCEDUREID"],ParameterDirection.Input),
+                    new OracleParameter(":Remarks",OracleDbType.NVarchar2,
+                        null,ParameterDirection.Input),
+                    new OracleParameter(":AccountID",OracleDbType.Int32,
+                        sUserInfo.AccountID,ParameterDirection.Input),
+                    new OracleParameter(":CreateUserID",OracleDbType.Int32,
+                        sUserInfo.UserID,ParameterDirection.Input),
+                };
+                returnRows = oracleTrConn.ExecuteNonQuery(sql, Paras);
 
                 // 1.更新注浆明细
                 sql = "update tp_pm_groutingdailydetail set logoid=:logoid, glazetypeid =:glazetypeid, updateuserid=:updateuserid where barcode=:barcode";
@@ -16584,6 +16630,100 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
         }
 
         /// <summary>
+        /// 设置条码商标 釉料
+        /// </summary>
+        /// <returns></returns>
+        public static int SaveBarCodesLogoAndGlazetypeid(string[] barcodes, int logoid, int glazetypeid, SUserInfo sUserInfo)
+        {
+            int returnRows = 0;
+            IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
+            try
+            {
+                OracleParameter[] Paras = null;
+                string sql = "select g.groutingdailydetailid, g.logoid, g.glazetypeid, t.PROCEDUREID from tp_pm_groutingdailydetail g \n" +
+                    " left join tp_pm_inproduction t on t.barcode = g.barcode\n" +
+                    "where g.barcode = :barcode";
+                // 釉料变更履历
+                string sql1 = "insert into TP_PM_GlazetypeRecord\n" +
+                "values\n" +
+                "  (GROUTINGDAILYDETAILID\n" +
+                "  ,OldGlazetypeid\n" +
+                "  ,NewGlazetypeid\n" +
+                "  ,ProcedureID\n" +
+                "  ,Remarks\n" +
+                "  ,AccountID\n" +
+                "  ,CreateUserID)\n" +
+                "values\n" +
+                "  (:GROUTINGDAILYDETAILID\n" +
+                "  ,:OldGlazetypeid\n" +
+                "  ,:NewGlazetypeid\n" +
+                "  ,:ProcedureID\n" +
+                "  ,:Remarks\n" +
+                "  ,:AccountID\n" +
+                "  ,:CreateUserID)";
+                string sql2 = "update tp_pm_groutingdailydetail set logoid=:logoid, glazetypeid =:glazetypeid, updateuserid=:updateuserid where barcode=:barcode";
+
+                foreach (string barcode in barcodes)
+                {
+                    Paras = new OracleParameter[] {
+                        new OracleParameter(":barcode",OracleDbType.NVarchar2,
+                            barcode,ParameterDirection.Input), };
+
+                    DataTable dt = oracleTrConn.GetSqlResultToDt(sql, Paras);
+                    if (dt == null || dt.Rows.Count == 0)
+                    {
+                        //continue;
+                        return -2;
+                    }
+
+                    Paras = new OracleParameter[] {
+                        new OracleParameter(":GROUTINGDAILYDETAILID",OracleDbType.Int32,
+                            dt.Rows[0]["GROUTINGDAILYDETAILID"],ParameterDirection.Input),
+                        new OracleParameter(":OldGlazetypeid",OracleDbType.Int32,
+                            dt.Rows[0]["glazetypeid"],ParameterDirection.Input),
+                        new OracleParameter(":NewGlazetypeid",OracleDbType.Int32,
+                            glazetypeid,ParameterDirection.Input),
+                        new OracleParameter(":ProcedureID",OracleDbType.Int32,
+                            dt.Rows[0]["PROCEDUREID"],ParameterDirection.Input),
+                        new OracleParameter(":Remarks",OracleDbType.NVarchar2,
+                            null,ParameterDirection.Input),
+                        new OracleParameter(":AccountID",OracleDbType.Int32,
+                            sUserInfo.AccountID,ParameterDirection.Input),
+                        new OracleParameter(":CreateUserID",OracleDbType.Int32,
+                            sUserInfo.UserID,ParameterDirection.Input),
+                    };
+
+                    oracleTrConn.ExecuteNonQuery(sql1, Paras);
+
+                    // 1.更新注浆明细
+                    Paras = new OracleParameter[] {
+                        new OracleParameter(":logoid",OracleDbType.Int32,
+                            logoid,ParameterDirection.Input),
+                        new OracleParameter(":glazetypeid",OracleDbType.Int32,
+                            glazetypeid,ParameterDirection.Input),
+                        new OracleParameter(":updateuserid",OracleDbType.Int32,
+                            sUserInfo.UserID,ParameterDirection.Input),
+                        new OracleParameter(":barcode",OracleDbType.Varchar2,
+                            barcode,ParameterDirection.Input)
+                    };
+                    returnRows += oracleTrConn.ExecuteNonQuery(sql2, Paras);
+                }
+
+                oracleTrConn.Commit();
+            }
+            catch (Exception ex)
+            {
+                if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
+                {
+                    oracleTrConn.Rollback();
+                }
+                throw ex;
+            }
+            finally { oracleTrConn.Disconnect(); }
+            return returnRows;
+        }
+
+        /// <summary>
         /// 设置产成品商标
         /// </summary>
         /// <param name="barcodes"></param>

+ 26 - 13
IBOSS.PRD/Program.cs

@@ -69,6 +69,8 @@ namespace Dongke.IBOSS.PRD.Client
         [STAThread]
         static void Main(string[] args)
         {
+            Curtain.Log.Logger.DefaultLogDirectory = LocalPath.LogRootPath;
+
             // 检查程序是否已经在运行中
             bool isCreatedNew = true;
             Mutex ibossMutex = null;
@@ -98,26 +100,37 @@ namespace Dongke.IBOSS.PRD.Client
                             string[] downFiles = Directory.GetFiles(LocalPath.InstallerDownloadPath);
                             if (downFiles.Length > 0)
                             {
-                                foreach (string name in downFiles)
+                                if (args != null)
+                                {
+                                    System.Threading.Thread.Sleep(3000);
+                                }
+                                try
                                 {
-                                    string filename = Path.GetFileName(name);
-                                    if (filename.StartsWith("AutoUpgrade")
-                                        || "SharpZipLib.dll".Equals(filename))
+                                    foreach (string name in downFiles)
                                     {
-                                        string localFile = System.Environment.CurrentDirectory + @"\" + filename;
+                                        string filename = Path.GetFileName(name);
+                                        if (filename.StartsWith("AutoUpgrade")
+                                            || "SharpZipLib.dll".Equals(filename))
+                                        {
+                                            string localFile = System.Environment.CurrentDirectory + @"\" + filename;
 
-                                        if (File.Exists(localFile))
+                                            if (File.Exists(localFile))
+                                            {
+                                                File.Delete(localFile);
+                                            }
+                                            File.Copy(name, localFile);
+                                            File.Delete(name);
+                                        }
+                                        else
                                         {
-                                            File.Delete(localFile);
+                                            File.Delete(name);
                                         }
-                                        File.Copy(name, localFile);
-                                        File.Delete(name);
-                                    }
-                                    else
-                                    {
-                                        File.Delete(name);
                                     }
                                 }
+                                catch (Exception ex)
+                                {
+                                    Curtain.Log.Logger.Error(ex);
+                                }
                             }
                         }
                     }

+ 7 - 1
WCF.Service/WCF.Contracts/IPDAModule.cs

@@ -1693,8 +1693,14 @@ namespace Dongke.IBOSS.PRD.WCF.Contracts
    , ResponseFormat = WebMessageFormat.Json
    , RequestFormat = WebMessageFormat.Json)]
         [OperationContract]
-        ActionResult SaveBarCodeLogoAndGlazetypeid(string accountCode, string userCode, string userPassword, string sessionKey,
+        ActionResult SaveBarCodeLogoAndGlazetype(string accountCode, string userCode, string userPassword, string sessionKey,
             string barcode, int logoid, int glazetypeid);
+        [WebInvoke(BodyStyle = WebMessageBodyStyle.WrappedRequest
+   , ResponseFormat = WebMessageFormat.Json
+   , RequestFormat = WebMessageFormat.Json)]
+        [OperationContract]
+        ActionResult SaveBarCodesLogoAndGlazetype(string accountCode, string userCode, string userPassword, string sessionKey,
+            string[] barcodes, int logoid, int glazetypeid);
 
         [WebInvoke(BodyStyle = WebMessageBodyStyle.WrappedRequest
 , ResponseFormat = WebMessageFormat.Json

+ 51 - 2
WCF.Service/WCF.Services/PDAModuleService.cs

@@ -6166,7 +6166,7 @@ namespace Dongke.IBOSS.PRD.WCF.Services
 		}
 
 
-        public ActionResult SaveBarCodeLogoAndGlazetypeid(string accountCode, string userCode, string userPassword, string sessionKey,
+        public ActionResult SaveBarCodeLogoAndGlazetype(string accountCode, string userCode, string userPassword, string sessionKey,
             string barcode, int logoid, int glazetypeid)
         {
             ActionResult actionResult = new ActionResult();
@@ -6184,7 +6184,15 @@ namespace Dongke.IBOSS.PRD.WCF.Services
                 int returnValue = ServiceInvoker.Invoke<int>(this,
                    () => PMModuleLogicDAL.SaveBarCodeLogoAndGlazetypeid(barcode, logoid, glazetypeid, sUserInfo));
                 actionResult.Result = JsonHelper.ToJson(returnValue);
-                actionResult.Status = (int)Constant.PDAResult.Success;
+                if (returnValue > 0)
+                {
+                    actionResult.Status = (int)Constant.PDAResult.Success;
+                }
+                else
+                {
+                    actionResult.Status = (int)Constant.PDAResult.Fail;
+                    actionResult.Message = "条码不存在";
+                }
             }
             catch (Exception ex)
             {
@@ -6200,6 +6208,47 @@ namespace Dongke.IBOSS.PRD.WCF.Services
             return actionResult;
         }
 
+        public ActionResult SaveBarCodesLogoAndGlazetype(string accountCode, string userCode, string userPassword, string sessionKey,
+            string[] barcodes, int logoid, int glazetypeid)
+        {
+            ActionResult actionResult = new ActionResult();
+            try
+            {
+                // 验证请求头信息
+                actionResult = this.DoPDACheck(accountCode, userCode, userPassword, sessionKey);
+
+                // 验证失败
+                if (actionResult.Status != (int)Constant.PDAResult.Success)
+                {
+                    return actionResult;
+                }
+
+                int returnValue = ServiceInvoker.Invoke<int>(this,
+                   () => PMModuleLogicDAL.SaveBarCodesLogoAndGlazetypeid(barcodes, logoid, glazetypeid, sUserInfo));
+                actionResult.Result = JsonHelper.ToJson(returnValue);
+                if (returnValue > 0)
+                {
+                    actionResult.Status = (int)Constant.PDAResult.Success;
+                }
+                else
+                {
+                    actionResult.Status = (int)Constant.PDAResult.Fail;
+                    actionResult.Message = "条码不存在";
+                }
+            }
+            catch (Exception ex)
+            {
+                //LogFileOperation.Error(DataManager.LogFileName, ex.Message);
+                OutputLog.TraceLog(LogPriority.Error,
+                                this.ToString(),
+                                System.Reflection.MethodBase.GetCurrentMethod().Name,
+                                ex.ToString(),
+                                LocalPath.LogExePath);
+                actionResult.Status = (int)Constant.PDAResult.Exception;
+                actionResult.Message = Constant.PDA_RESULT_EXCEPTION;
+            }
+            return actionResult;
+        }
 
 
         public ActionResult GetBarCodeLogoID(string accountCode, string userCode, string userPassword, string sessionKey, string barcode)

+ 2 - 2
WCF.Service/WCF.Services/Properties/AssemblyInfo.cs

@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
 // 可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
 // 方法是按如下所示使用“*”: 
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.1.131")]
-[assembly: AssemblyFileVersion("1.0.1.131")]
+[assembly: AssemblyVersion("1.0.1.130")]
+[assembly: AssemblyFileVersion("1.0.1.130")]

+ 7 - 1
WCF.Service/WCF.WebHosting/Global.asax.cs

@@ -317,7 +317,13 @@ namespace Dongke.IBOSS.PRD.WCF.WebHosting
 
 		protected void Application_Error(object sender, EventArgs e)
 		{
-
+            //try
+            //{
+            //    Logger.Error(
+            //}
+            //catch
+            //{
+            //}
 		}
 
 		protected void Session_End(object sender, EventArgs e)