zjh
5 天以前 4d39683cc447512c105e00ed810bea306aa8ddf2
StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs
@@ -222,25 +222,40 @@
            try
            {
                // 1. 主表插入
                //    var sql1 = @"
                //INSERT INTO MES_SN_STATUS_DETAILS
                //   (ID, TICKET_NO, SN_NO, WORKSTATION_NO, SN_STATE, LOGIN_ID, TURNOVER_CODE,LINE_NO)
                //   VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,
                //           :ticketNo,
                //           :snNo,
                //           :workstationNo,
                //           :snState,
                //           :loginId,
                //           :turnoverCode,select nvl(DAA015,'') from WOMDAA where DAA001 = ':ticketNo' and ROWNUM=1)";
                // 1. 主表插入
                var sql1 = @"
            INSERT INTO MES_SN_STATUS_DETAILS
               (ID, TICKET_NO, SN_NO, WORKSTATION_NO, SN_STATE, LOGIN_ID, TURNOVER_CODE)
               VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,
                       :ticketNo,
                       :snNo,
                       :workstationNo,
                       :snState,
                       :loginId,
                       :turnoverCode)";
                   (ID, TICKET_NO, SN_NO, WORKSTATION_NO, SN_STATE, LOGIN_ID, TURNOVER_CODE, LINE_NO)
            SELECT SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,
                   :ticketNo,
                   :snNo,
                   :workstationNo,
                   :snState,
                   :loginId,
                   :turnoverCode,
                   NVL(DAA015, '')
              FROM WOMDAA
             WHERE DAA001 = :ticketNo
               AND ROWNUM = 1";
                var parameters1 = new[]
                {
            new OracleParameter(":ticketNo", asnInfo.tickeNo ?? (object)DBNull.Value),
            new OracleParameter(":snNo", asnInfo.snNo ?? (object)DBNull.Value),
            new OracleParameter(":workstationNo", asnInfo.workstationNo ?? (object)DBNull.Value),
            new OracleParameter(":snState", asnInfo.snState ?? (object)DBNull.Value),
            new OracleParameter(":loginId", asnInfo.loginId ?? (object)DBNull.Value),
            new OracleParameter(":turnoverCode", asnInfo.turnoverCode ?? (object)DBNull.Value)
            new OracleParameter("ticketNo", asnInfo.tickeNo ?? (object)DBNull.Value),
            new OracleParameter("snNo", asnInfo.snNo ?? (object)DBNull.Value),
            new OracleParameter("workstationNo", asnInfo.workstationNo ?? (object)DBNull.Value),
            new OracleParameter("snState", asnInfo.snState ?? (object)DBNull.Value),
            new OracleParameter("loginId", asnInfo.loginId ?? (object)DBNull.Value),
            new OracleParameter("turnoverCode", asnInfo.turnoverCode ?? (object)DBNull.Value)
        };
                int i = sqlHelper.ExecuteNonQueryWithTransaction(sql1, parameters1, connection, transaction);
@@ -264,11 +279,11 @@
                        var parameters2 = new[]
                        {
                    new OracleParameter(":defectIssue", item.DefectIssue ?? (object)DBNull.Value),
                    new OracleParameter(":rootCause", item.RootCause ?? (object)DBNull.Value),
                    new OracleParameter(":repairMethod", item.RepairMethod ?? (object)DBNull.Value),
                    new OracleParameter(":materialHandling", item.MaterialHandling ?? (object)DBNull.Value),
                    new OracleParameter(":loginId", asnInfo.loginId ?? (object)DBNull.Value)
                    new OracleParameter("defectIssue", item.DefectIssue ?? (object)DBNull.Value),
                    new OracleParameter("rootCause", item.RootCause ?? (object)DBNull.Value),
                    new OracleParameter("repairMethod", item.RepairMethod ?? (object)DBNull.Value),
                    new OracleParameter("materialHandling", item.MaterialHandling ?? (object)DBNull.Value),
                    new OracleParameter("loginId", asnInfo.loginId ?? (object)DBNull.Value)
                };
                        sqlHelper.ExecuteNonQueryWithTransaction(sql2, parameters2, connection, transaction);
@@ -289,7 +304,7 @@
                        {
                            // 校验
                            var checkSql = "SELECT COUNT(1) FROM MES_SN_PART_BINDING WHERE PART_SN_NO = :partSn";
                            var checkParams = new[] { new OracleParameter(":partSn", partSn ?? (object)DBNull.Value) };
                            var checkParams = new[] { new OracleParameter("partSn", partSn ?? (object)DBNull.Value) };
                            var exists = Convert.ToInt32(sqlHelper.ExecuteScalarWithTransaction(connection, transaction, checkSql, checkParams));
                            if (exists > 0)
@@ -299,24 +314,25 @@
                            // 插入绑定
                            var sqlBind = @"
                        INSERT INTO MES_SN_PART_BINDING
                           (ID, SN_NO, PART_SN_NO, PART_NAME_CN, CREATE_DATE, CREATE_USER)
                           VALUES (SEQ_MES_SN_PART_BINDING.NEXTVAL,
                                   :snNo,
                                   :partSn,
                                   :partName,
                                   SYSDATE,
                                   :user)";
    INSERT INTO MES_SN_PART_BINDING
       (ID, SN_NO, PART_SN_NO, PART_NAME_CN, CREATE_DATE, CREATE_USER)
       VALUES (SEQ_MES_SN_PART_BINDING.NEXTVAL,
               :snNo,
               :partSn,
               :partName,
               SYSDATE,
               :createUser)";
                            var bindParams = new[]
                            {
                        new OracleParameter(":snNo", snNo ?? (object)DBNull.Value),
                        new OracleParameter(":partSn", partSn ?? (object)DBNull.Value),
                        new OracleParameter(":partName", partName ?? (object)DBNull.Value),
                        new OracleParameter(":user", user ?? (object)DBNull.Value)
                    };
    new OracleParameter("snNo", snNo ?? (object)DBNull.Value),
    new OracleParameter("partSn", partSn ?? (object)DBNull.Value),
    new OracleParameter("partName", partName ?? (object)DBNull.Value),
    new OracleParameter("createUser", user ?? (object)DBNull.Value)
};
                            sqlHelper.ExecuteNonQueryWithTransaction(sqlBind, bindParams, connection, transaction);
                            // 插入日志
                            var sqlLog = @"
@@ -327,7 +343,7 @@
                                   :partSn,
                                   :partName,
                                   SYSDATE,
                                   :user,
                                   :createUser,
                                   0)";
                            sqlHelper.ExecuteNonQueryWithTransaction(sqlLog, bindParams, connection, transaction);
@@ -342,8 +358,8 @@
                            var unbindParams = new[]
                            {
                        new OracleParameter(":snNo", snNo ?? (object)DBNull.Value),
                        new OracleParameter(":partSn", partSn ?? (object)DBNull.Value)
                        new OracleParameter("snNo", snNo ?? (object)DBNull.Value),
                        new OracleParameter("partSn", partSn ?? (object)DBNull.Value)
                    };
                            sqlHelper.ExecuteNonQueryWithTransaction(sqlUnbind, unbindParams, connection, transaction);
@@ -357,15 +373,15 @@
                                   :partSn,
                                   :partName,
                                   SYSDATE,
                                   :user,
                                   :Puser,
                                   1)";
                            var logParams = new[]
                            {
                        new OracleParameter(":snNo", snNo ?? (object)DBNull.Value),
                        new OracleParameter(":partSn", partSn ?? (object)DBNull.Value),
                        new OracleParameter(":partName", partName ?? (object)DBNull.Value),
                        new OracleParameter(":user", user ?? (object)DBNull.Value)
                        new OracleParameter("snNo", snNo ?? (object)DBNull.Value),
                        new OracleParameter("partSn", partSn ?? (object)DBNull.Value),
                        new OracleParameter("partName", partName ?? (object)DBNull.Value),
                        new OracleParameter("Puser", user ?? (object)DBNull.Value)
                    };
                            sqlHelper.ExecuteNonQueryWithTransaction(sqlLog, logParams, connection, transaction);
@@ -390,6 +406,7 @@
        }
        /// <summary>
        /// 设置中箱码(绑定/解绑 SN)
        /// </summary>