private void HandleModify(BOL_CUSTOMER_MASTER oCUSTOMER_MASTER, BOL_BANK_ACCOUNT_MASTER oBANK_ACCOUNT_MASTER, string OPERATION, DataRow row)
        {
            string          strMsg = "";
            CUSTOMER_MASTER DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);

            using (TransactionScope dbTxn = new TransactionScope())
            {
                //check condition
                if (!DAL_CUSTOMER_MASTER.IsAlreadyUpdate(oCUSTOMER_MASTER, out strMsg))     // IF updated_at is not already modified
                {
                    DAL_CUSTOMER_MASTER.CustomerMasterUpdate(oCUSTOMER_MASTER, CURRENT_DATETIME, CURRENT_USER, out strMsg);

                    if (!string.IsNullOrEmpty(strMsg))
                    {
                        dbTxn.Dispose();
                        ResponseUtility.ReturnFailMessage(row);
                        return;
                    }
                }
                else
                {
                    //already use in another process
                    dbTxn.Dispose();
                    ResponseUtility.ReturnFailMessage(row);
                    return;
                }

                #region UPDATE BANK_ACCOUNT_MASTER
                BANK_ACCOUNT_MASTER DAL_BANK_ACCOUNT_MASTER = new BANK_ACCOUNT_MASTER(con);
                if (!DAL_BANK_ACCOUNT_MASTER.IsAlreadyUpdated(oBANK_ACCOUNT_MASTER, out strMsg))     // If updated_at is not already modified
                {
                    //insert the record
                    DAL_BANK_ACCOUNT_MASTER.BankAccountMasterUpdate(oBANK_ACCOUNT_MASTER, CURRENT_DATETIME, CURRENT_USER, out strMsg);
                }
                else
                {
                    dbTxn.Dispose();
                    ResponseUtility.ReturnFailMessage(row);
                    return;
                }

                //return message and MK value
                if (String.IsNullOrEmpty(strMsg))     //success
                {
                    dbTxn.Complete();
                    string S = Convert.ToDateTime(oCUSTOMER_MASTER.ORG_EFFECTIVE_DATE).ToString("yyyy/MM/dd");
                    row["EFFECTIVE_DATE"]     = Convert.ToDateTime(oCUSTOMER_MASTER.EFFECTIVE_DATE).ToString("yyyy/MM/dd");
                    row["ORG_EFFECTIVE_DATE"] = Convert.ToDateTime(oCUSTOMER_MASTER.EFFECTIVE_DATE).ToString("yyyy/MM/dd");
                    ResponseUtility.ReturnSuccessMessage(row, UPDATED_AT_DATETIME, CURRENT_DATETIME, CURRENT_USER);
                }
                else     //failed
                {
                    dbTxn.Dispose();
                    ResponseUtility.ReturnFailMessage(row);
                }
                #endregion
            }
        }
Пример #2
0
        public Response UpdateCustomer(string Customers)
        {
            try
            {
                string    strMessage = "";
                DataTable dgvList    = Utility.Utility_Component.JsonToDt(Customers);
                if (dgvList.Rows.Count > 0)
                {
                    for (int i = 0; i < dgvList.Rows.Count; i++)
                    {
                        BOL_CUSTOMER_MASTER B_Customer = new BOL_CUSTOMER_MASTER();
                        B_Customer.BILL_BANK_ACCOUNT_NAME_1 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-1"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-1"].ToString() : "");
                        B_Customer.BILL_BANK_ACCOUNT_NAME_2 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-2"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-2"].ToString() : "");
                        B_Customer.BILL_BANK_ACCOUNT_NAME_3 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-3"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-3"].ToString() : "");
                        B_Customer.BILL_BANK_ACCOUNT_NAME_4 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-4"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-4"].ToString() : "");
                        B_Customer.COMPANY_NO_BOX           = (dgvList.Rows[i]["COMPANY_NO_BOX"] != null ? dgvList.Rows[i]["COMPANY_NO_BOX"].ToString() : "");
                        B_Customer.TRANSACTION_TYPE         = Utility.Utility_Component.dtColumnToInt((dgvList.Rows[i]["TRANSACTION_TYPE"] != null ? dgvList.Rows[i]["TRANSACTION_TYPE"].ToString() : ""));
                        B_Customer.NCS_CUSTOMER_CODE        = (dgvList.Rows[i]["NCS_CUSTOMER_CODE"] != null ? dgvList.Rows[i]["NCS_CUSTOMER_CODE"].ToString() : "");
                        B_Customer.EFFECTIVE_DATE           = DateTime.Parse(dgvList.Rows[i]["EFFECTIVE_DATE"] != null ? dgvList.Rows[i]["EFFECTIVE_DATE"].ToString() : "");
                        B_Customer.BILL_BILLING_INTERVAL    = Utility.Utility_Component.dtColumnToInt((dgvList.Rows[i]["BILL_BILLING_INTERVAL"] != null ? dgvList.Rows[i]["BILL_BILLING_INTERVAL"].ToString() : ""));
                        B_Customer.BILL_DEPOSIT_RULES       = Utility.Utility_Component.dtColumnToInt((dgvList.Rows[i]["BILL_DEPOSIT_RULES"] != null ? dgvList.Rows[i]["BILL_DEPOSIT_RULES"].ToString() : ""));
                        B_Customer.BILL_TRANSFER_FEE        = Utility.Utility_Component.dtColumnToDecimal((dgvList.Rows[i]["BILL_TRANSFER_FEE"] != null ? dgvList.Rows[i]["BILL_TRANSFER_FEE"].ToString() : ""));
                        B_Customer.BILL_EXPENSES            = Utility.Utility_Component.dtColumnToDecimal(dgvList.Rows[i]["BILL_EXPENSES"] != null ? dgvList.Rows[i]["BILL_EXPENSES"].ToString() : "");
                        B_Customer.UPDATE_DATE  = DateTime.Now;
                        B_Customer.UPDATER_CODE = dgvList.Rows[i]["UPDATER_CODE"].ToString();
                        CUSTOMER_MASTER DAL_Customer = new CUSTOMER_MASTER(Properties.Settings.Default.MyConnection);
                        DAL_Customer.update(B_Customer, out strMessage);
                    }
                }

                if (strMessage == "")
                {
                    response.Status  = 1;
                    response.Message = "Customer updated";
                }
                else
                {
                    response.Status  = 0;
                    response.Message = strMessage;
                }
                return(response);
            }
            catch (Exception ex)
            {
                response.Status  = 0;
                response.Message = ex.Message + "\n" + ex.StackTrace;
                return(response);
            }
        }
Пример #3
0
 public Response GetCustomerList(string COMPANY_NAME, string COMPANY_NAME_READING, string BILL_COMPANY_NAME, string COMPANY_NO_BOX, string ACCOUNT_NAME)
 {
     try
     {
         CUSTOMER_MASTER oCustomer = new CUSTOMER_MASTER(con);
         DataTable       dt        = oCustomer.getGridViewData(COMPANY_NAME, COMPANY_NAME_READING, BILL_COMPANY_NAME, COMPANY_NO_BOX, ACCOUNT_NAME);
         response.Data   = Utility.Utility_Component.DtToJSon(dt, "CUSTOMER");
         response.Status = 1;
         return(response);
     }
     catch (Exception ex)
     {
         response.Status  = 0;
         response.Message = ex.Message + "\n" + ex.StackTrace;
         return(response);
     }
 }
 public MetaResponse getMaintenanceList(string COMPANY_NO_BOX, string COMPANY_NAME, string COMPANY_NAME_READING, string EDI_ACCOUNT, string MAIL_ADDRESS, string CONTRACTOR, string INVOICE, string SERVICE_DESK, string NOTIFICATION_DESTINATION, int OFFSET, int LIMIT)
 {
     try
     {
         string          strMessage          = "";
         int             TOTAL               = 0;
         CUSTOMER_MASTER DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);
         DataTable       dt = DAL_CUSTOMER_MASTER.getMaintenanceList(COMPANY_NO_BOX, COMPANY_NAME, COMPANY_NAME_READING, EDI_ACCOUNT, MAIL_ADDRESS, CONTRACTOR, INVOICE, SERVICE_DESK, NOTIFICATION_DESTINATION, OFFSET, LIMIT, out strMessage, out TOTAL);
         response.Data = Utility.Utility_Component.DtToJSon(dt, "Maintenance List");
         if (dt.Rows.Count > 0)
         {
             response.Status = 1;
         }
         else
         {
             if (strMessage == "")
             {
                 response.Status  = 1;
                 response.Message = "There is no data to display.";
             }
             else
             {
                 response.Status  = 0;
                 response.Message = strMessage;
             }
         }
         response.Meta.Offset = OFFSET;
         response.Meta.Limit  = LIMIT;
         response.Meta.Total  = TOTAL;
         timer.Stop();
         response.Meta.Duration = timer.Elapsed.TotalSeconds;
         return(response);
     }
     catch (Exception ex)
     {
         response.Status = 0;
         timer.Stop();
         response.Meta.Duration = timer.Elapsed.TotalSeconds;
         response.Message       = ex.Message + "/n" + ex.StackTrace;
         return(response);
     }
 }
        public MetaResponse getMonthlySaleComparisonList(string strYYYMM1, string strYYMM2, int OFFSET, int LIMIT)
        {
            try
            {
                string          strMessage          = "";
                int             TOTAL               = 0;
                CUSTOMER_MASTER DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);
                DataTable       dt = DAL_CUSTOMER_MASTER.getMonthlySaleComparisonList(strYYYMM1, strYYMM2, OFFSET, LIMIT, out strMessage, out TOTAL);

                response.Data = Utility.Utility_Component.DtToJSon(dt, "MonthlySaleComparisonList");
                if (dt.Rows.Count > 0)
                {
                    response.Status = 1;
                }
                else
                {
                    if (strMessage == "")
                    {
                        response.Status  = 1;
                        response.Message = "There is no data to display.";
                    }
                    else
                    {
                        response.Status  = 0;
                        response.Message = strMessage;
                    }
                }
                response.Meta.Offset = OFFSET;
                response.Meta.Limit  = LIMIT;
                response.Meta.Total  = TOTAL;
                timer.Stop();
                response.Meta.Duration = timer.Elapsed.TotalMilliseconds;
                return(response);
            }
            catch (Exception)
            {
                response.Status  = 0;
                response.Message = " Unexpected error occour.";
                return(response);
            }
        }
        public MetaResponse SubmitOrderRegister(string list, System.Web.HttpPostedFile file)
        {
            using (TransactionScope dbTxn = new TransactionScope())
            {
                try
                {
                    string msg = "";
                    //set global PARAMETERS
                    PARAMETERS = Utility.Utility_Component.JsonToDt(list);

                    #region Update REQUEST_DETAIL
                    //cast to REQUEST DETAIL OBJECT
                    BOL_REQUEST_DETAIL oREQUEST_DETAIL = new BOL_REQUEST_DETAIL();
                    oREQUEST_DETAIL = Cast_REQUEST_DETAIL();
                    oREQUEST_DETAIL.SYSTEM_SETTING_STATUS = 1;

                    REQUEST_DETAIL DAL_REQUEST_DETAIL = new REQUEST_DETAIL(con);
                    DAL_REQUEST_DETAIL.Update(oREQUEST_DETAIL, CURRENT_DATETIME, CURRENT_USER, out msg);

                    //rollback if not success
                    if (!String.IsNullOrEmpty(msg))
                    {
                        dbTxn.Dispose();
                        return(ResponseUtility.ReturnFailMessage(response, timer, BodyMessage));
                    }
                    #endregion

                    #region Insert CUSTOMER MASTER
                    //COUNT IN CUSTOMER MASTER
                    string   COMPANY_NAME     = GetParameterByKey("COMPANY_NAME");
                    string   COMPANY_NO_BOX   = GetParameterByKey("COMPANY_NO_BOX");
                    string   CONTRACT_PLAN    = GetParameterByKey("CONTRACT_PLAN");
                    int      TRANSACTION_TYPE = int.Parse(GetParameterByKey("TRANSACTION_TYPE"));
                    int      REQ_SEQ          = int.Parse(GetParameterByKey("REQ_SEQ"));
                    int      REQ_TYPE         = int.Parse(GetParameterByKey("REQ_TYPE"));
                    DateTime START_USE_DATE   = DateTime.Parse(GetParameterByKey("START_USE_DATE"));

                    CUSTOMER_MASTER DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);
                    int             customer_count      = DAL_CUSTOMER_MASTER.getCustomerCountByKeys(COMPANY_NO_BOX, TRANSACTION_TYPE, START_USE_DATE, REQ_SEQ, out msg);

                    if (customer_count == 0) //if customer not found
                    {
                        DataTable           LatestCustomer   = new DataTable();
                        BOL_CUSTOMER_MASTER oCUSTOMER_MASTER = new BOL_CUSTOMER_MASTER();

                        if (REQ_TYPE == 2)
                        {
                            LatestCustomer = DAL_CUSTOMER_MASTER.GetTopCustomerByKeys(COMPANY_NO_BOX, TRANSACTION_TYPE, START_USE_DATE, out msg);

                            if (LatestCustomer.Rows.Count > 0)
                            {
                                oCUSTOMER_MASTER = Cast_CUSTOMER_MASTER(LatestCustomer.Rows[0]);
                                oCUSTOMER_MASTER.UPDATE_CONTENT = 3;
                            }
                            else //Need another message?
                            {
                                dbTxn.Dispose();
                                return(ResponseUtility.ReturnFailMessage(response, timer, BodyMessage));
                            }
                        }
                        if (REQ_TYPE == 1)
                        {
                            oCUSTOMER_MASTER.UPDATE_CONTENT = 1;
                        }
                        //insert info form screen
                        oCUSTOMER_MASTER.COMPANY_NO_BOX   = COMPANY_NO_BOX;
                        oCUSTOMER_MASTER.TRANSACTION_TYPE = TRANSACTION_TYPE;
                        oCUSTOMER_MASTER.EFFECTIVE_DATE   = START_USE_DATE;
                        oCUSTOMER_MASTER.REQ_SEQ          = REQ_SEQ;

                        DAL_CUSTOMER_MASTER.Insert(oCUSTOMER_MASTER, CURRENT_DATETIME, CURRENT_USER, out msg);

                        //rollback if not success
                        if (!String.IsNullOrEmpty(msg))
                        {
                            dbTxn.Dispose();
                            return(ResponseUtility.ReturnFailMessage(response, timer, BodyMessage));
                        }

                        #region Insert Browsing supplier CUSTOMER MASTER
                        BOL_CUSTOMER_MASTER oBROWSING_SUPPLIER = new BOL_CUSTOMER_MASTER();


                        if (CONTRACT_PLAN == "PRODUCT" && REQ_TYPE == 2)
                        {
                            DateTime NEW_EFFECTIVE_DATE = Convert.ToDateTime(DAL_CUSTOMER_MASTER.GetEffectiveDateForNewApplyingTime(oREQUEST_DETAIL.COMPANY_NO_BOX, TRANSACTION_TYPE, START_USE_DATE, out msg));
                            if ((NEW_EFFECTIVE_DATE.Month + NEW_EFFECTIVE_DATE.Day) != (START_USE_DATE.Month + START_USE_DATE.Day))
                            {
                                oBROWSING_SUPPLIER = Cast_CUSTOMER_MASTER(LatestCustomer.Rows[0]);
                                oBROWSING_SUPPLIER.COMPANY_NO_BOX   = COMPANY_NO_BOX;
                                oBROWSING_SUPPLIER.TRANSACTION_TYPE = TRANSACTION_TYPE;
                                oBROWSING_SUPPLIER.EFFECTIVE_DATE   = Convert.ToDateTime(START_USE_DATE.Year + "/" + NEW_EFFECTIVE_DATE.Month + "/" + NEW_EFFECTIVE_DATE.Day);
                                oBROWSING_SUPPLIER.UPDATE_CONTENT   = 3;
                                oBROWSING_SUPPLIER.REQ_SEQ          = REQ_SEQ;
                                DAL_CUSTOMER_MASTER.Insert(oBROWSING_SUPPLIER, CURRENT_DATETIME, CURRENT_USER, out msg);
                            }

                            //rollback if not success
                            if (!String.IsNullOrEmpty(msg))
                            {
                                dbTxn.Dispose();
                                return(ResponseUtility.ReturnFailMessage(response, timer, BodyMessage));
                            }
                        }
                        #endregion
                    }
                    #endregion

                    #region Insert REPORT_HISTORY
                    //Insert Report_History
                    BOL_REPORT_HISTORY oREPORT_HISTORY = new BOL_REPORT_HISTORY();
                    oREPORT_HISTORY.COMPANY_NO_BOX = COMPANY_NO_BOX;
                    oREPORT_HISTORY.REQ_SEQ        = REQ_SEQ;
                    oREPORT_HISTORY.REPORT_TYPE    = 4;

                    REPORT_HISTORY DAL_REPORT_HISTORY = new REPORT_HISTORY(con);
                    int            HISTORY_SEQ        = DAL_REPORT_HISTORY.GetReportHistorySEQ(COMPANY_NO_BOX, oREPORT_HISTORY.REPORT_TYPE, oREPORT_HISTORY.REQ_SEQ, out msg);

                    //rollback if not success
                    if (!String.IsNullOrEmpty(msg))
                    {
                        dbTxn.Dispose();
                        return(ResponseUtility.ReturnFailMessage(response, timer, BodyMessage));
                    }

                    oREPORT_HISTORY.REPORT_HISTORY_SEQ = HISTORY_SEQ;
                    oREPORT_HISTORY.OUTPUT_AT          = Utility_Component.dtColumnToDateTime(DateTime.Now.ToString());
                    oREPORT_HISTORY.OUTPUT_FILE        = COMPANY_NO_BOX + "-1-" + REQ_SEQ + "_注文書_" + COMPANY_NAME + "様.pdf";
                    oREPORT_HISTORY.EMAIL_ADDRESS      = null;

                    DAL_REPORT_HISTORY.Insert(oREPORT_HISTORY, CURRENT_DATETIME, CURRENT_USER, out msg);

                    //rollback if not success
                    if (!String.IsNullOrEmpty(msg))
                    {
                        dbTxn.Dispose();
                        return(ResponseUtility.MailSendingFail(response, timer, BodyMessage));
                    }
                    #endregion

                    #region Save File
                    //get destination path form config table
                    BOL_CONFIG config      = new BOL_CONFIG("CTS050", con);
                    string     destination = config.getStringValue("fileSavePath.purchaseOrder");
                    SaveFile(file, destination, oREPORT_HISTORY.OUTPUT_FILE, out msg);

                    if (!string.IsNullOrEmpty(msg))
                    {
                        dbTxn.Dispose();
                        response.Status = 0;
                        timer.Stop();
                        response.Meta.Duration = timer.Elapsed.TotalSeconds;
                        response.Message       = "File Path Not Found";
                        //add in body message
                        DataRow row = BodyMessage.NewRow();
                        row["Error Message"] = "File Path Not Found";
                        BodyMessage.Rows.Add(row);
                        response.Data = Utility_Component.DtToJSon(BodyMessage, "Message");
                        return(response);
                    }
                    #endregion

                    #region SendMail
                    bool mailSuccess = PrepareAndSendMail();

                    if (!mailSuccess)
                    {
                        dbTxn.Dispose();
                        return(ResponseUtility.MailSendingFail(response, timer, BodyMessage));
                    }
                    #endregion

                    //all process success
                    dbTxn.Complete();
                    response.Status  = 1;
                    response.Message = string.Format(Utility.Messages.Jimugo.I000ZZ016, "注文登録");
                    DataRow dr = BodyMessage.NewRow();
                    dr["Message"]        = response.Message;
                    dr["UPDATED_AT"]     = UPDATED_AT_DATETIME;
                    dr["UPDATED_AT_RAW"] = CURRENT_DATETIME;
                    BodyMessage.Rows.Add(dr);
                    response.Data = Utility_Component.DtToJSon(BodyMessage, "Message");
                    timer.Stop();
                    response.Meta.Duration = timer.Elapsed.TotalSeconds;
                    return(response);
                }
                catch (Exception ex)
                {
                    dbTxn.Dispose();
                    ResponseUtility.GetUnexpectedResponse(response, timer, ex);
                    //add in body message
                    DataRow dr = BodyMessage.NewRow();
                    dr["Error Message"] = "something went wrong.";
                    BodyMessage.Rows.Add(dr);
                    response.Data = Utility_Component.DtToJSon(BodyMessage, "Message");
                    return(response);
                }
            }
        }
        public MetaResponse Disapprove(string COMPANY_NO_BOX, int REQ_TYPE, string CHANGED_ITEMS, string SYSTEM_EFFECTIVE_DATE, string SYSTEM_REGIST_DEADLINE, string List)
        {
            try
            {
                DataSet   ds      = new DataSet();
                DataTable Listing = Utility_Component.JsonToDt(List);
                DataRow   row;

                if (Listing.Rows.Count > 1)
                {
                    row = Listing.Rows[1];
                }
                else
                {
                    row = Listing.Rows[0];
                }

                string             msg             = "";
                BOL_REQUEST_DETAIL oREQUEST_DETAIL = new BOL_REQUEST_DETAIL();
                oREQUEST_DETAIL.REQ_STATUS = 3;
                if (REQ_TYPE == 1 || REQ_TYPE == 9 || (REQ_TYPE == 2 && !string.IsNullOrEmpty(CHANGED_ITEMS.Trim())))
                {
                    oREQUEST_DETAIL.AMIGO_COOPERATION = 1;
                }
                else
                {
                    oREQUEST_DETAIL.AMIGO_COOPERATION = 2;
                }

                oREQUEST_DETAIL.AMIGO_COOPERATION_CHENGED_ITEMS = CHANGED_ITEMS.Trim();
                try
                {
                    oREQUEST_DETAIL.SYSTEM_EFFECTIVE_DATE = Convert.ToDateTime(SYSTEM_EFFECTIVE_DATE);
                }
                catch (Exception)
                {
                }
                try
                {
                    oREQUEST_DETAIL.SYSTEM_REGIST_DEADLINE = Convert.ToDateTime(SYSTEM_REGIST_DEADLINE);
                }
                catch (Exception)
                {
                }

                oREQUEST_DETAIL.REQ_SEQ        = int.Parse(row["REQ_SEQ"].ToString());
                oREQUEST_DETAIL.UPDATED_AT     = row["UPDATED_AT_RAW"].ToString();
                oREQUEST_DETAIL.COMPANY_NO_BOX = COMPANY_NO_BOX;

                REQUEST_DETAIL DAL_REQUEST_DETAIL = new REQUEST_DETAIL(con);
                DAL_REQUEST_DETAIL.Disapprove(oREQUEST_DETAIL, CURRENT_USER, CURRENT_DATETIME, out msg);
                if (!string.IsNullOrEmpty(msg))
                {
                    return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                }

                CUSTOMER_MASTER     DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);
                BOL_CUSTOMER_MASTER oCUSTOMER_MASTER    = new BOL_CUSTOMER_MASTER();
                oCUSTOMER_MASTER.COMPANY_NO_BOX = COMPANY_NO_BOX;
                oCUSTOMER_MASTER.REQ_SEQ        = oREQUEST_DETAIL.REQ_SEQ;
                DAL_CUSTOMER_MASTER.Delete(oCUSTOMER_MASTER, out msg);

                if (string.IsNullOrEmpty(msg))
                {
                    DataTable dtMail  = new DataTable();
                    bool      success = DisapproveSendMail(row["COMPANY_NAME"].ToString(), row["INPUT_PERSON"].ToString(), row["INPUT_PERSON_EMAIL_ADDRESS"].ToString(), out dtMail);

                    if (success)
                    {
                        response.Status       = 1;
                        row["UPDATED_AT"]     = UPDATED_AT_DATETIME;
                        row["UPDATED_AT_RAW"] = CURRENT_DATETIME;
                        row["UPDATED_BY"]     = CURRENT_USER;
                        row["UPDATE_MESSAGE"] = string.Format(Messages.Jimugo.I000ZZ016, "否認");
                        Listing.TableName     = "LISTING";
                        ds.Tables.Add(Listing.Copy());
                        dtMail.TableName = "MAIL";
                        ds.Tables.Add(dtMail.Copy());
                    }
                    else
                    {
                        return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                    }
                }
                else
                {
                    return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                }

                response.Data = Utility.Utility_Component.DsToJSon(ds, "Approval");
                timer.Stop();
                response.Meta.Duration = timer.Elapsed.TotalSeconds;
                return(response);
            }
            catch (Exception ex)
            {
                return(ResponseUtility.GetUnexpectedResponse(response, timer, ex));
            }
        }
        public MetaResponse Approve(string COMPANY_NO_BOX, int REQ_TYPE, string REQ_TYPE_RAW, string CHANGED_ITEMS, string SYSTEM_EFFECTIVE_DATE, string SYSTEM_REGIST_DEADLINE, string List)
        {
            try
            {
                DataSet   ds      = new DataSet();
                DataTable Listing = Utility_Component.JsonToDt(List);
                DataRow   row;
                if (Listing.Rows.Count > 1)
                {
                    row = Listing.Rows[1];
                }
                else
                {
                    row = Listing.Rows[0];
                }

                string   EMIAL_SENDING_TARGET_FLG = row["MAIL_SENDING_TARGET_FLG"].ToString().Trim();
                string   MAIL_DESTINATION         = row["MAIL_DESTINATION"].ToString().Trim();
                int      TRANSACTION_TYPE         = getTRANSACTION_TYPE(row["TRANSACTION_TYPE"].ToString().Trim());
                DateTime START_USE_DATE           = Convert.ToDateTime(row["START_USE_DATE"].ToString().Trim());

                using (TransactionScope dbTxn = new TransactionScope())
                {
                    #region Approve
                    BOL_REQUEST_DETAIL oREQUEST_DETAIL = new BOL_REQUEST_DETAIL();
                    oREQUEST_DETAIL.COMPANY_NO_BOX = COMPANY_NO_BOX;
                    oREQUEST_DETAIL.REQ_STATUS     = 2;
                    if (REQ_TYPE == 1 || REQ_TYPE == 9 || (REQ_TYPE == 2 && !string.IsNullOrEmpty(CHANGED_ITEMS.Trim())))
                    {
                        oREQUEST_DETAIL.AMIGO_COOPERATION = 1;
                    }
                    else
                    {
                        oREQUEST_DETAIL.AMIGO_COOPERATION = 2;
                    }
                    oREQUEST_DETAIL.AMIGO_COOPERATION_CHENGED_ITEMS = CHANGED_ITEMS.Trim();
                    try
                    {
                        oREQUEST_DETAIL.SYSTEM_EFFECTIVE_DATE = Convert.ToDateTime(SYSTEM_EFFECTIVE_DATE);
                    }
                    catch (Exception)
                    {
                    }
                    try
                    {
                        oREQUEST_DETAIL.SYSTEM_REGIST_DEADLINE = Convert.ToDateTime(SYSTEM_REGIST_DEADLINE);
                    }
                    catch (Exception)
                    {
                    }
                    oREQUEST_DETAIL.REQ_SEQ = int.Parse(row["REQ_SEQ"].ToString());

                    if (MAIL_DESTINATION == "1")
                    {
                        oREQUEST_DETAIL.SYSTEM_SETTING_STATUS = 1;
                    }
                    else
                    {
                        oREQUEST_DETAIL.SYSTEM_SETTING_STATUS = 0;
                    }
                    oREQUEST_DETAIL.UPDATED_AT = row["UPDATED_AT_RAW"].ToString();

                    string         msg = "";
                    REQUEST_DETAIL DAL_REQUEST_DETAIL = new REQUEST_DETAIL(con);

                    DAL_REQUEST_DETAIL.Approve(oREQUEST_DETAIL, CURRENT_USER, CURRENT_DATETIME, out msg);

                    if (!string.IsNullOrEmpty(msg))
                    {
                        return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                    }
                    #endregion

                    if (EMIAL_SENDING_TARGET_FLG == "*" && TRANSACTION_TYPE == 3)
                    {
                        DataTable       LatestCustomer      = new DataTable();
                        CUSTOMER_MASTER DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);
                        if (REQ_TYPE == 2 || REQ_TYPE == 9)
                        {
                            LatestCustomer = DAL_CUSTOMER_MASTER.GetTopCustomerByKeys(oREQUEST_DETAIL.COMPANY_NO_BOX, TRANSACTION_TYPE, START_USE_DATE, out msg);
                        }

                        #region CONDUCT NEW CUSTOMER MASTER
                        BOL_CUSTOMER_MASTER oCUSTOMER_MASTER = new BOL_CUSTOMER_MASTER();

                        if (LatestCustomer.Rows.Count > 0 && REQ_TYPE != 1)
                        {
                            oCUSTOMER_MASTER = Cast_CUSTOMER_MASTER(LatestCustomer.Rows[0]);
                        }
                        oCUSTOMER_MASTER.COMPANY_NO_BOX   = COMPANY_NO_BOX;
                        oCUSTOMER_MASTER.TRANSACTION_TYPE = TRANSACTION_TYPE;
                        oCUSTOMER_MASTER.EFFECTIVE_DATE   = START_USE_DATE;
                        oCUSTOMER_MASTER.REQ_SEQ          = oREQUEST_DETAIL.REQ_SEQ;
                        oCUSTOMER_MASTER.UPDATE_CONTENT   = REQ_TYPE;
                        DAL_CUSTOMER_MASTER.Delete(oCUSTOMER_MASTER, out msg);
                        if (!string.IsNullOrEmpty(msg))
                        {
                            return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                        }
                        DAL_CUSTOMER_MASTER.Insert(oCUSTOMER_MASTER, CURRENT_DATETIME, CURRENT_USER, out msg);

                        if (!string.IsNullOrEmpty(msg))
                        {
                            return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                        }

                        #endregion

                        string CONTRACT_PLAN = row["CONTRACT_PLAN_RAW"].ToString().ToString();
                        if (CONTRACT_PLAN == "PRODUCT" && REQ_TYPE == 9)
                        {
                            //get latest customer for new applying time
                            DateTime NEW_EFFECTIVE_DATE = Convert.ToDateTime(DAL_CUSTOMER_MASTER.GetEffectiveDateForNewApplyingTime(oREQUEST_DETAIL.COMPANY_NO_BOX, TRANSACTION_TYPE, START_USE_DATE, out msg));

                            if ((NEW_EFFECTIVE_DATE.Month + NEW_EFFECTIVE_DATE.Day) != (START_USE_DATE.Month + START_USE_DATE.Day))
                            {
                                #region Insert Browsing CUSTOMER MASTER
                                BOL_CUSTOMER_MASTER oCUSTOMER_MASTER_BROWSING = new BOL_CUSTOMER_MASTER();
                                oCUSTOMER_MASTER_BROWSING = Cast_CUSTOMER_MASTER(LatestCustomer.Rows[0]);
                                oCUSTOMER_MASTER_BROWSING.COMPANY_NO_BOX   = COMPANY_NO_BOX;
                                oCUSTOMER_MASTER_BROWSING.TRANSACTION_TYPE = TRANSACTION_TYPE;
                                oCUSTOMER_MASTER_BROWSING.EFFECTIVE_DATE   = Convert.ToDateTime(START_USE_DATE.Year + "/" + NEW_EFFECTIVE_DATE.Month + "/" + NEW_EFFECTIVE_DATE.Day);
                                oCUSTOMER_MASTER_BROWSING.REQ_SEQ          = oREQUEST_DETAIL.REQ_SEQ;
                                oCUSTOMER_MASTER_BROWSING.UPDATE_CONTENT   = REQ_TYPE;

                                DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);
                                DAL_CUSTOMER_MASTER.Insert(oCUSTOMER_MASTER_BROWSING, CURRENT_DATETIME, CURRENT_USER, out msg);

                                if (!string.IsNullOrEmpty(msg))
                                {
                                    return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                                }
                                #endregion
                            }
                        }
                    }
                    DataTable dtMail      = new DataTable();
                    bool      mailSuccess = false;
                    if (EMIAL_SENDING_TARGET_FLG == "*" && MAIL_DESTINATION == "1")
                    {
                        mailSuccess = SendMailToMaintenance(COMPANY_NO_BOX, REQ_TYPE_RAW, row["COMPANY_NAME"].ToString(), CHANGED_ITEMS, SYSTEM_REGIST_DEADLINE, out dtMail);
                        if (mailSuccess)
                        {
                            dbTxn.Complete();
                            return(SetSuccessMessage(row, Listing, dtMail, ds));
                        }
                        else
                        {
                            return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                        }
                    }
                    else if (EMIAL_SENDING_TARGET_FLG == "*" && MAIL_DESTINATION == "2")
                    {
                        mailSuccess = SendMailToSupplier(row["COMPANY_NAME"].ToString(), row["INPUT_PERSON"].ToString(), row["INPUT_PERSON_EMAIL_ADDRESS"].ToString(), out dtMail);

                        if (mailSuccess)
                        {
                            dbTxn.Complete();
                            return(SetSuccessMessage(row, Listing, dtMail, ds));
                        }
                        else
                        {
                            return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                        }
                    }
                    dbTxn.Complete();
                    return(SetSuccessMessage(row, Listing, dtMail, ds));
                }
            }
            catch (Exception ex)
            {
                return(ResponseUtility.GetUnexpectedResponse(response, timer, ex));
            }
        }
        public MetaResponse ApproveCancel(string COMPANY_NO_BOX, string REQ_SEQ, string List)
        {
            try
            {
                string    msg     = "";
                DataSet   ds      = new DataSet();
                DataTable Listing = Utility_Component.JsonToDt(List);
                DataRow   row;
                if (Listing.Rows.Count > 1)
                {
                    row = Listing.Rows[1];
                }
                else
                {
                    row = Listing.Rows[0];
                }

                REQUEST_DETAIL DAL_REQUEST_DETAIL = new REQUEST_DETAIL(con);
                //serch with COMPANY_NO_BOX AND REQ_SEQ
                DataTable APPROVAL_CHECK = DAL_REQUEST_DETAIL.GetDataToCheckApproveCancel(COMPANY_NO_BOX, REQ_SEQ, out msg);


                //IF QUOTATION DATE NOT NULL THEN ERROR
                if (!string.IsNullOrEmpty(APPROVAL_CHECK.Rows[0]["QUOTATION_DATE"].ToString()))
                {
                    return(ResponseError(response, Utility.Messages.Jimugo.E000ZZ037, Listing, ds, row));
                }
                //IF SYSTEM_SETTING_STATUS NOT NULL THEN ERROR
                if (APPROVAL_CHECK.Rows[0]["SYSTEM_SETTING_STATUS"].ToString() != "0")
                {
                    return(ResponseError(response, Utility.Messages.Jimugo.E000WB015, Listing, ds, row));
                }

                DAL_REQUEST_DETAIL.ApproveCancel(COMPANY_NO_BOX, row["REQ_SEQ"].ToString(), CURRENT_USER, CURRENT_DATETIME, out msg);
                if (!string.IsNullOrEmpty(msg))
                {
                    return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                }

                CUSTOMER_MASTER     DAL_CUSTOMER_MASTER = new CUSTOMER_MASTER(con);
                BOL_CUSTOMER_MASTER oCUSTOMER_MASTER    = new BOL_CUSTOMER_MASTER();
                oCUSTOMER_MASTER.COMPANY_NO_BOX = COMPANY_NO_BOX;
                oCUSTOMER_MASTER.REQ_SEQ        = Convert.ToInt32(row["REQ_SEQ"]);
                DAL_CUSTOMER_MASTER.Delete(oCUSTOMER_MASTER, out msg);

                if (!string.IsNullOrEmpty(msg))
                {
                    return(ResponseError(response, Utility.Messages.Jimugo.I000ZZ005, Listing, ds, row));
                }
                else
                {
                    response.Status       = 1;
                    row["UPDATE_MESSAGE"] = string.Format(Messages.Jimugo.I000ZZ016, "承認解除");
                    Listing.TableName     = "LISTING";
                    ds.Tables.Add(Listing.Copy());
                }
                response.Data = Utility.Utility_Component.DsToJSon(ds, "Approval");
                timer.Stop();
                response.Meta.Duration = timer.Elapsed.TotalSeconds;
                return(response);
            }
            catch (Exception ex)
            {
                return(ResponseUtility.GetUnexpectedResponse(response, timer, ex));
            }
        }
Пример #10
0
        protected void seperateAmigo_NonAmigo()
        {
            CUSTOMER_MASTER oCust      = new CUSTOMER_MASTER(Properties.Settings.Default.MyConnection);
            string          run_date   = DateTime.Now.ToString();
            DataTable       dtCustomer = oCust.getBillBankAccounts();

            for (int i = 0; i < dtUploadData.Rows.Count; i++)
            {
                string strCustomerName = (dtUploadData.Rows[i]["CUSTOMER_NAME"] != null ? dtUploadData.Rows[i]["CUSTOMER_NAME"].ToString().Trim() : "");
                var    query           = dtCustomer.AsEnumerable().Where
                                             (r => (r.Field <string>("BILL_BANK_ACCOUNT_NAME-1") == null ? "" : r.Field <string>("BILL_BANK_ACCOUNT_NAME-1").Trim()) == strCustomerName ||
                                             (r.Field <string>("BILL_BANK_ACCOUNT_NAME-2") == null ? "" : r.Field <string>("BILL_BANK_ACCOUNT_NAME-2").Trim()) == strCustomerName ||
                                             (r.Field <string>("BILL_BANK_ACCOUNT_NAME-3") == null ? "" : r.Field <string>("BILL_BANK_ACCOUNT_NAME-3").Trim()) == strCustomerName ||
                                             (r.Field <string>("BILL_BANK_ACCOUNT_NAME-4") == null ? "" : r.Field <string>("BILL_BANK_ACCOUNT_NAME-4").Trim()) == strCustomerName
                                             );
                if (query.Any()) //Amigo
                {
                    BOL_RECEIPT_DETAILS oReceipt = new BOL_RECEIPT_DETAILS();

                    oReceipt.DATA_CLASS                   = 1;
                    oReceipt.RECORD_CLASS                 = (dtUploadData.Rows[i]["RECORD_CLASS"] != null ? dtUploadData.Rows[i]["RECORD_CLASS"].ToString() : "");
                    oReceipt.TRANSACTION_DATE             = Utility_Component.dtColumnToDateTime(dtUploadData.Rows[i]["TRANSACTION_DATE"] != null ? dtUploadData.Rows[i]["TRANSACTION_DATE"].ToString() : "");
                    oReceipt.TRANSACTION_CONTACT_NAME     = (dtUploadData.Rows[i]["TRANSACTION_CONTACT_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_CONTACT_NAME"].ToString() : "");
                    oReceipt.TRANSACTION_BANKS_NAME       = (dtUploadData.Rows[i]["TRANSACTION_BANKS_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_BANKS_NAME"].ToString() : "");
                    oReceipt.TRANSACTION_BRANCH_NAME      = (dtUploadData.Rows[i]["TRANSACTION_BRANCH_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_BRANCH_NAME"].ToString() : "");
                    oReceipt.TRANSACTION_ACCOUNT_NO_CLASS = (dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO_CLASS"] != null ? dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO_CLASS"].ToString() : "");
                    oReceipt.TRANSACTION_ACCOUNT_TYPE     = (dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_TYPE"] != null ? dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_TYPE"].ToString() : "");
                    oReceipt.TRANSACTION_ACCOUNT_NO       = (dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO"] != null ? dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO"].ToString() : "");
                    oReceipt.RESEND_INDICATION            = (dtUploadData.Rows[i]["RESEND_INDICATION"] != null ? dtUploadData.Rows[i]["RESEND_INDICATION"].ToString() : "");
                    oReceipt.TRANSACTION_NAME             = (dtUploadData.Rows[i]["TRANSACTION_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_NAME"].ToString() : "");
                    oReceipt.TRANSACTION_NO               = (dtUploadData.Rows[i]["TRANSACTION_NO"] != null ? dtUploadData.Rows[i]["TRANSACTION_NO"].ToString() : "");
                    oReceipt.TRANSACTION_DETAIL_CLASS     = (dtUploadData.Rows[i]["TRANSACTION_DETAIL_CLASS"] != null ? dtUploadData.Rows[i]["TRANSACTION_DETAIL_CLASS"].ToString() : "");
                    oReceipt.HANDLING_DATE                = Utility_Component.dtColumnToDateTime(dtUploadData.Rows[i]["HANDLING_DATE"] != null ? dtUploadData.Rows[i]["HANDLING_DATE"].ToString() : "");
                    oReceipt.DEPOSIT_DATE                 = Utility_Component.dtColumnToDateTime(dtUploadData.Rows[i]["DEPOSIT_DATE"] != null ? dtUploadData.Rows[i]["DEPOSIT_DATE"].ToString() : "");
                    oReceipt.DEPOSIT_AMOUNT               = Utility_Component.dtColumnToDecimal(dtUploadData.Rows[i]["DEPOSIT_AMOUNT"] != null ? dtUploadData.Rows[i]["DEPOSIT_AMOUNT"].ToString() : "");
                    oReceipt.CHECK_CLASS                  = (dtUploadData.Rows[i]["CHECK_CLASS"] != null ? dtUploadData.Rows[i]["CHECK_CLASS"].ToString() : "");
                    oReceipt.CUSTOMER_NAME                = (dtUploadData.Rows[i]["CUSTOMER_NAME"] != null ? dtUploadData.Rows[i]["CUSTOMER_NAME"].ToString() : "");
                    oReceipt.COLLECTION_NO_SHEETS         = Utility_Component.dtColumnToInt(dtUploadData.Rows[i]["COLLECTION_NO_SHEETS"] != null ? dtUploadData.Rows[i]["COLLECTION_NO_SHEETS"].ToString() : "");
                    oReceipt.COLLECTION_NO                = (dtUploadData.Rows[i]["COLLECTION_NO"] != null ? dtUploadData.Rows[i]["COLLECTION_NO"].ToString() : "");
                    oReceipt.CUSTOMER_NO                  = (dtUploadData.Rows[i]["CUSTOMER_NO"] != null ? dtUploadData.Rows[i]["CUSTOMER_NO"].ToString() : "");
                    oReceipt.BANK_NAME             = (dtUploadData.Rows[i]["BANK_NAME"] != null ? dtUploadData.Rows[i]["BANK_NAME"].ToString() : "");
                    oReceipt.BRANCH_NAME           = (dtUploadData.Rows[i]["BRANCH_NAME"] != null ? dtUploadData.Rows[i]["BRANCH_NAME"].ToString() : "");
                    oReceipt.TRANSACTION_FILE_NAME = (dtUploadData.Rows[i]["TRANSACTION_FILE_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_FILE_NAME"].ToString() : "");
                    oReceipt.TRANSFER_MESSAGE      = (dtUploadData.Rows[i]["TRANSFER_MESSAGE"] != null ? dtUploadData.Rows[i]["TRANSFER_MESSAGE"].ToString() : "");
                    oReceipt.NOTE                      = (dtUploadData.Rows[i]["NOTE"] != null ? dtUploadData.Rows[i]["NOTE"].ToString() : "");
                    oReceipt.NUMBER                    = (!String.IsNullOrEmpty(dtUploadData.Rows[i]["NUMBER"].ToString()) ? int.Parse(dtUploadData.Rows[i]["NUMBER"].ToString()) : 0);
                    oReceipt.RUN_DATE_TIME             = run_date;
                    oReceipt.RUN_RESULT                = 1;
                    oReceipt.DATA_MOVEMENT_INFORMATION = "";
                    oReceipt.PAYMENT_DAY               = null;
                    oReceipt.TYPE_OF_ALLOCATION        = 0;
                    oReceipt.ALLOCATED_QUANTITY        = 0;
                    oReceipt.ALLOCATED_MONEY           = 0;
                    oReceipt.ALLOCATED_COMPLETION_DATE = null;

                    lstAmigo.Add(oReceipt);
                }
                else //Non Amigo
                {
                    BOL_RECEIPT_DETAILS_NON_AMIGO oReceipt_NonAmigo = new BOL_RECEIPT_DETAILS_NON_AMIGO();
                    oReceipt_NonAmigo.DATA_CLASS                   = 1;
                    oReceipt_NonAmigo.RECORD_CLASS                 = (dtUploadData.Rows[i]["RECORD_CLASS"] != null ? dtUploadData.Rows[i]["RECORD_CLASS"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_DATE             = Utility_Component.dtColumnToDateTime(dtUploadData.Rows[i]["TRANSACTION_DATE"] != null ? dtUploadData.Rows[i]["TRANSACTION_DATE"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_CONTACT_NAME     = (dtUploadData.Rows[i]["TRANSACTION_CONTACT_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_CONTACT_NAME"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_BANKS_NAME       = (dtUploadData.Rows[i]["TRANSACTION_BANKS_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_BANKS_NAME"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_BRANCH_NAME      = (dtUploadData.Rows[i]["TRANSACTION_BRANCH_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_BRANCH_NAME"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_ACCOUNT_NO_CLASS = (dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO_CLASS"] != null ? dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO_CLASS"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_ACCOUNT_TYPE     = (dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_TYPE"] != null ? dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_TYPE"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_ACCOUNT_NO       = (dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO"] != null ? dtUploadData.Rows[i]["TRANSACTION_ACCOUNT_NO"].ToString() : "");
                    oReceipt_NonAmigo.RESEND_INDICATION            = (dtUploadData.Rows[i]["RESEND_INDICATION"] != null ? dtUploadData.Rows[i]["RESEND_INDICATION"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_NAME             = (dtUploadData.Rows[i]["TRANSACTION_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_NAME"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_NO               = (dtUploadData.Rows[i]["TRANSACTION_NO"] != null ? dtUploadData.Rows[i]["TRANSACTION_NO"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_DETAIL_CLASS     = (dtUploadData.Rows[i]["TRANSACTION_DETAIL_CLASS"] != null ? dtUploadData.Rows[i]["TRANSACTION_DETAIL_CLASS"].ToString() : "");
                    oReceipt_NonAmigo.HANDLING_DATE                = Utility_Component.dtColumnToDateTime(dtUploadData.Rows[i]["HANDLING_DATE"] != null ? dtUploadData.Rows[i]["HANDLING_DATE"].ToString() : "");
                    oReceipt_NonAmigo.DEPOSIT_DATE                 = Utility_Component.dtColumnToDateTime(dtUploadData.Rows[i]["DEPOSIT_DATE"] != null ? dtUploadData.Rows[i]["DEPOSIT_DATE"].ToString() : "");
                    oReceipt_NonAmigo.DEPOSIT_AMOUNT               = Utility_Component.dtColumnToDecimal(dtUploadData.Rows[i]["DEPOSIT_AMOUNT"] != null ? dtUploadData.Rows[i]["DEPOSIT_AMOUNT"].ToString() : "");
                    oReceipt_NonAmigo.CHECK_CLASS                  = (dtUploadData.Rows[i]["CHECK_CLASS"] != null ? dtUploadData.Rows[i]["CHECK_CLASS"].ToString() : "");
                    oReceipt_NonAmigo.CUSTOMER_NAME                = (dtUploadData.Rows[i]["CUSTOMER_NAME"] != null ? dtUploadData.Rows[i]["CUSTOMER_NAME"].ToString() : "");
                    oReceipt_NonAmigo.COLLECTION_NO_SHEETS         = Utility_Component.dtColumnToInt(dtUploadData.Rows[i]["COLLECTION_NO_SHEETS"] != null ? dtUploadData.Rows[i]["COLLECTION_NO_SHEETS"].ToString() : "");
                    oReceipt_NonAmigo.COLLECTION_NO                = (dtUploadData.Rows[i]["COLLECTION_NO"] != null ? dtUploadData.Rows[i]["COLLECTION_NO"].ToString() : "");
                    oReceipt_NonAmigo.CUSTOMER_NO                  = (dtUploadData.Rows[i]["CUSTOMER_NO"] != null ? dtUploadData.Rows[i]["CUSTOMER_NO"].ToString() : "");
                    oReceipt_NonAmigo.BANK_NAME             = (dtUploadData.Rows[i]["BANK_NAME"] != null ? dtUploadData.Rows[i]["BANK_NAME"].ToString() : "");
                    oReceipt_NonAmigo.BRANCH_NAME           = (dtUploadData.Rows[i]["BRANCH_NAME"] != null ? dtUploadData.Rows[i]["BRANCH_NAME"].ToString() : "");
                    oReceipt_NonAmigo.TRANSACTION_FILE_NAME = (dtUploadData.Rows[i]["TRANSACTION_FILE_NAME"] != null ? dtUploadData.Rows[i]["TRANSACTION_FILE_NAME"].ToString() : "");
                    oReceipt_NonAmigo.TRANSFER_MESSAGE      = (dtUploadData.Rows[i]["TRANSFER_MESSAGE"] != null ? dtUploadData.Rows[i]["TRANSFER_MESSAGE"].ToString() : "");
                    oReceipt_NonAmigo.NOTE   = (dtUploadData.Rows[i]["NOTE"] != null ? dtUploadData.Rows[i]["NOTE"].ToString() : "");
                    oReceipt_NonAmigo.NUMBER = (!String.IsNullOrEmpty(dtUploadData.Rows[i]["NUMBER"].ToString()) ? int.Parse(dtUploadData.Rows[i]["NUMBER"].ToString()) : 0);

                    oReceipt_NonAmigo.RUN_DATE_TIME             = run_date;
                    oReceipt_NonAmigo.RUN_RESULT                = 99;
                    oReceipt_NonAmigo.DATA_MOVEMENT_INFORMATION = "";
                    oReceipt_NonAmigo.PAYMENT_DAY               = null;
                    oReceipt_NonAmigo.TYPE_OF_ALLOCATION        = 0;
                    oReceipt_NonAmigo.ALLOCATED_QUANTITY        = 0;
                    oReceipt_NonAmigo.ALLOCATED_MONEY           = 0;
                    oReceipt_NonAmigo.ALLOCATED_COMPLETION_DATE = null;
                    lstNonAmigo.Add(oReceipt_NonAmigo);
                }
            }
        }
Пример #11
0
        public Response GetAmigoDetailByRunDate(string dtmID)
        {
            try
            {
                RECEIPT_DETAILS oRecpt     = new RECEIPT_DETAILS(Properties.Settings.Default.MyConnection);
                string          strMessage = "";
                DataTable       dt         = oRecpt.GetAmigoDetailByRunDate(dtmID, out strMessage);
                if (dt.Rows.Count > 0)
                {
                    response.Status = 1;

                    //add column for BILL_COMPANY_NAME
                    dt.Columns.Add("BILL_COMPANY_NAME", typeof(System.String));

                    CUSTOMER_MASTER oCustomer  = new CUSTOMER_MASTER(Properties.Settings.Default.MyConnection);
                    DataTable       dtCustomer = oCustomer.getBillBankAccounts();

                    for (int i = 0; i < dt.Rows.Count; i++)//loop through Amigo Detail
                    {
                        //Customer Name from Receipt Detail
                        string CustomerName = dt.Rows[i]["CUSTOMER_NAME"] == null ? "" : dt.Rows[i]["CUSTOMER_NAME"].ToString();

                        //Bill Company Name from Customer Master
                        //Search with Customer Name
                        DataRow result = dtCustomer
                                         .AsEnumerable()
                                         .Where(myRow => (
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-1") == null ? null :myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-1").Trim()) == CustomerName ||
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-2") == null ? null : myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-2").Trim()) == CustomerName ||
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-3") == null ? null : myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-3").Trim()) == CustomerName ||
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-4") == null ? null : myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-4").Trim()) == CustomerName) &&
                                                myRow.Field <DateTime>("EFFECTIVE_DATE") < DateTime.Now)
                                         .OrderByDescending(s => s.Field <DateTime>("EFFECTIVE_DATE")).ThenByDescending(s => s.Field <int>("REQ_SEQ"))
                                         .FirstOrDefault();

                        if (result != null)
                        {
                            //append BILL COMPANY NAME
                            dt.Rows[i]["BILL_COMPANY_NAME"] = result["BILL_COMPANY_NAME"].ToString();
                        }
                    }
                }
                else
                {
                    if (strMessage == "")
                    {
                        response.Status  = 1;
                        response.Message = "There is no data to display.";
                    }
                    else
                    {
                        response.Status  = 0;
                        response.Message = strMessage;
                    }
                }
                response.Data = Utility.Utility_Component.DtToJSon(dt, "32Result");
                return(response);
            }
            catch (Exception ex)
            {
                response.Status  = 0;
                response.Message = ex.Message + "\n" + ex.StackTrace;
                return(response);
            }
        }
Пример #12
0
        public Response UpdateCustomer(string Customers)
        {
            using (TransactionScope dbTxn = new TransactionScope())
            {
                try
                {
                    string    strMessage = "";
                    DataTable dgvList    = Utility.Utility_Component.JsonToDt(Customers);
                    if (dgvList.Rows.Count > 0)
                    {
                        for (int i = 0; i < dgvList.Rows.Count; i++)
                        {
                            BOL_CUSTOMER_MASTER B_Customer = new BOL_CUSTOMER_MASTER();
                            B_Customer.COMPANY_NO_BOX        = (dgvList.Rows[i]["COMPANY_NO_BOX"] != null ? dgvList.Rows[i]["COMPANY_NO_BOX"].ToString() : "");
                            B_Customer.TRANSACTION_TYPE      = Utility.Utility_Component.dtColumnToInt((dgvList.Rows[i]["TRANSACTION_TYPE"] != null ? dgvList.Rows[i]["TRANSACTION_TYPE"].ToString() : ""));
                            B_Customer.NCS_CUSTOMER_CODE     = (dgvList.Rows[i]["NCS_CUSTOMER_CODE"] != null ? dgvList.Rows[i]["NCS_CUSTOMER_CODE"].ToString() : "");
                            B_Customer.EFFECTIVE_DATE        = DateTime.Parse(dgvList.Rows[i]["EFFECTIVE_DATE"] != null ? dgvList.Rows[i]["EFFECTIVE_DATE"].ToString() : "");
                            B_Customer.BILL_BILLING_INTERVAL = Utility.Utility_Component.dtColumnToInt((dgvList.Rows[i]["BILL_BILLING_INTERVAL"] != null ? dgvList.Rows[i]["BILL_BILLING_INTERVAL"].ToString() : ""));
                            B_Customer.BILL_DEPOSIT_RULES    = Utility.Utility_Component.dtColumnToInt((dgvList.Rows[i]["BILL_DEPOSIT_RULES"] != null ? dgvList.Rows[i]["BILL_DEPOSIT_RULES"].ToString() : ""));
                            B_Customer.BILL_TRANSFER_FEE     = Utility.Utility_Component.dtColumnToDecimal((dgvList.Rows[i]["BILL_TRANSFER_FEE"] != null ? dgvList.Rows[i]["BILL_TRANSFER_FEE"].ToString() : ""));
                            B_Customer.BILL_EXPENSES         = Utility.Utility_Component.dtColumnToDecimal(dgvList.Rows[i]["BILL_EXPENSES"] != null ? dgvList.Rows[i]["BILL_EXPENSES"].ToString() : "");
                            B_Customer.REQ_SEQ    = Utility.Utility_Component.dtColumnToInt((dgvList.Rows[i]["REQ_SEQ"] != null ? dgvList.Rows[i]["REQ_SEQ"].ToString() : ""));
                            B_Customer.UPDATED_AT = CURRENT_DATETIME;
                            B_Customer.UPDATED_BY = CURRENT_USER;
                            CUSTOMER_MASTER DAL_Customer = new CUSTOMER_MASTER(con);
                            DAL_Customer.Update(B_Customer, out strMessage);

                            if (!string.IsNullOrEmpty(strMessage))
                            {
                                break;
                            }

                            BOL_BANK_ACCOUNT_MASTER B_BankAccounts = new BOL_BANK_ACCOUNT_MASTER();
                            B_BankAccounts.COMPANY_NO_BOX           = B_Customer.COMPANY_NO_BOX;
                            B_BankAccounts.REQ_SEQ                  = B_Customer.REQ_SEQ;
                            B_BankAccounts.BILL_BANK_ACCOUNT_NAME_1 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-1"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-1"].ToString() : "");
                            B_BankAccounts.BILL_BANK_ACCOUNT_NAME_2 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-2"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-2"].ToString() : "");
                            B_BankAccounts.BILL_BANK_ACCOUNT_NAME_3 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-3"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-3"].ToString() : "");
                            B_BankAccounts.BILL_BANK_ACCOUNT_NAME_4 = (dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-4"] != null ? dgvList.Rows[i]["BILL_BANK_ACCOUNT_NAME-4"].ToString() : "");
                            B_BankAccounts.UPDATED_AT               = CURRENT_DATETIME;
                            B_BankAccounts.UPDATED_BY               = CURRENT_USER;

                            BANK_ACCOUNT_MASTER DAL_BankAccount = new BANK_ACCOUNT_MASTER(con);
                            DAL_BankAccount.Update(B_BankAccounts, out strMessage);

                            if (!string.IsNullOrEmpty(strMessage))
                            {
                                break;
                            }
                        }
                    }

                    if (string.IsNullOrEmpty(strMessage))
                    {
                        dbTxn.Complete();
                        response.Status  = 1;
                        response.Message = "Customer updated";
                    }
                    else
                    {
                        response.Status  = 0;
                        response.Message = strMessage;
                    }

                    return(response);
                }
                catch (Exception ex)
                {
                    dbTxn.Dispose();
                    response.Status  = 0;
                    response.Message = ex.Message + "\n" + ex.StackTrace;
                    return(response);
                }
            }
        }
Пример #13
0
        public Response GetDataGridfor36(string strFrom, string stringTo)
        {
            try
            {
                RECEIPT_DETAILS oRecpt     = new RECEIPT_DETAILS(Properties.Settings.Default.MyConnection);
                string          strMessage = "";
                DateTime        dtmFrom    = DateTime.ParseExact(strFrom, "yyyyMMdd", CultureInfo.InvariantCulture);
                DateTime        dtmTo      = DateTime.ParseExact(stringTo, "yyyyMMdd", CultureInfo.InvariantCulture);
                DataTable       dt         = oRecpt.GetDateFor36_Grid(dtmFrom, dtmTo, out strMessage);

                if (dt.Rows.Count > 0)
                {
                    response.Status = 1;

                    //append columns to RECEIPT DETAIL Results
                    dt.Columns.Add("BILL_COMPANY_NAME", typeof(System.String));
                    dt.Columns.Add("BILL_CONTACT_NAME", typeof(System.String));
                    dt.Columns.Add("BILL_PHONE_NUMBER", typeof(System.String));
                    dt.Columns.Add("BILL_MAIL_ADDRESS", typeof(System.String));

                    //Get Data from CUSTOMER MASTER
                    CUSTOMER_MASTER oCustomer  = new CUSTOMER_MASTER(Properties.Settings.Default.MyConnection);
                    DataTable       dtCustomer = oCustomer.getDataByAll();

                    for (int i = 0; i < dt.Rows.Count; i++)                           //loop through Amigo Detail
                    {
                        string CustomerName = dt.Rows[i]["CUSTOMER_NAME"].ToString(); //Customer Name from Receipt Detail

                        //Search with Customer Name
                        DataRow result = dtCustomer
                                         .AsEnumerable()
                                         .Where(myRow => (
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-1") == null ? null : myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-1").Trim()) == CustomerName ||
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-2") == null ? null : myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-2").Trim()) == CustomerName ||
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-3") == null ? null : myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-3").Trim()) == CustomerName ||
                                                    (myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-4") == null ? null : myRow.Field <string>("BILL_BANK_ACCOUNT_NAME-4").Trim()) == CustomerName) &&
                                                myRow.Field <DateTime>("EFFECTIVE_DATE") < DateTime.Now)
                                         .OrderByDescending(s => s.Field <DateTime>("EFFECTIVE_DATE"))
                                         .FirstOrDefault();

                        if (result != null)
                        {
                            //insert columns values from CUSTOMER MASTER to RECEIPT DETAIL Result
                            dt.Rows[i]["BILL_COMPANY_NAME"] = result["BILL_COMPANY_NAME"].ToString();
                            dt.Rows[i]["BILL_CONTACT_NAME"] = result["BILL_CONTACT_NAME"].ToString();
                            dt.Rows[i]["BILL_PHONE_NUMBER"] = result["BILL_PHONE_NUMBER"].ToString();
                            dt.Rows[i]["BILL_MAIL_ADDRESS"] = result["BILL_MAIL_ADDRESS"].ToString();
                        }
                    }
                    response.Data = Utility.Utility_Component.DtToJSon(dt, "36Result");
                }
                else
                {
                    if (strMessage == "")
                    {
                        response.Status  = 1;
                        response.Message = "There has no data to display.";
                    }
                    else
                    {
                        response.Status  = 0;
                        response.Message = strMessage;
                    }
                }
                response.Data = Utility.Utility_Component.DtToJSon(dt, "36Result");
                return(response);
            }
            catch (Exception ex)
            {
                response.Status  = 0;
                response.Message = ex.Message + "\n" + ex.StackTrace;
                return(response);
            }
        }