public static async Task <string> GetMergeTableAsync(string Destination, List <string> Mergings)
        {
            try
            {
                MergeTransfer mergeTransfer = new MergeTransfer()
                {
                    DestinationTableNo = Destination, MergingTables = Mergings
                };
                String url = GenerateMergeTableURL();

                var    JsonObject  = JsonConvert.SerializeObject(mergeTransfer);
                string ContentType = "application/json"; // or application/xml


                using (HttpClient client = new HttpClient())
                {
                    var response = await client.PostAsync(url, new StringContent(JsonObject.ToString(), Encoding.UTF8, ContentType));

                    var json = await response.Content.ReadAsStringAsync();

                    return(json);
                }
            }
            catch (Exception e)
            {
                return(e.Message);
            }
        }
        //private void ExecutemergeTableCommand(object obj)
        //{
        //    try
        //    {
        //        string InsertQueryForKotProd = "INSERT INTO RMD_KOTPROD(KOTID,TABLENO,TRNDATE,MCODE,UNIT,Quantity,RealQty,AltQty,RATE,AMOUNT,DISCOUNT,VAT,REALRATE,IDIS,ALTUNIT,WAREHOUSE,KOT,SNO,ItemDesc,DIVISION,SERVICETAX,NAMNT,KOTTIME,KitchenDispatch,DispatchTime,DispatchUser,Remarks,ISBOT,ComboItem,ComboItemQty, WaiterName, REFSNO,RECEIPES,TAKEAWAY) VALUES(@KOTID,@TABLENO,@TRNDATE,@MCODE,@UNIT,@Quantity,@RealQty,@AltQty,@RATE,@AMOUNT,@DISCOUNT,@VAT,@REALRATE,@IDIS,@ALTUNIT,@WAREHOUSE,@KOT,@SNO,@ItemDesc,@DIVISION,@SERVICETAX,@NAMNT,@KOTTIME,@KitchenDispatch,@DispatchTime,@DispatchUser,@Remarks,@ISBOT,@ComboItem,@ComboItemQty, @WaiterName, @REFSNO,@RECEIPES,@TAKEAWAY)";
        //        var list = (popup.DataContext as MergeTableViewModel).TableListForMerge;
        //                List<KOTProd> kpMergedListForSave = new List<KOTProd>();

        //                using (SqlConnection con = new SqlConnection(ConnectionDbInfo.ConnectionString))
        //                {
        //                    con.Open();
        //                    SqlTransaction tran = con.BeginTransaction();
        //                    try
        //                    {
        //                        foreach (var o in list.Where(x => x.IsTableChecked))
        //                        {
        //                            var kotprodLis = new List<KOTProd>(con.Query<KOTProd>("select kp.* from rmd_kotprod kp join rmd_kotmain_status kms on kp.kotid=kms.kotid where kms.status='ACTIVE' AND kp.TableNo='" + o.TableNo + "'", null, tran));

        //                            if (kotprodLis.Count() == 0) { tran.Rollback(); MessageBox.Show("Error on merging Table.Sorry could not find KOT Items"); return; }
        //                            kotprodLis.ForEach(x => x.Remarks = "MERGE FROM KOTID:" + x.KOTID);
        //                            kpMergedListForSave.AddRange(kotprodLis);

        //                            con.Execute("UPDATE RMD_KOTMAIN_STATUS SET STATUS='MERGE',REMARKS='MERGE TO: " + KotMainObj.KOTID + "'  WHERE KOTID=" + kotprodLis.FirstOrDefault().KOTID, transaction: tran);
        //                        }

        //                        foreach (var t in kpMergedListForSave)
        //                        {
        //                            t.TABLENO = TableId;
        //                            t.KOTID = KotMainObj.KOTID;
        //                        }
        //                        con.Execute(InsertQueryForKotProd, kpMergedListForSave, tran);

        //                        tran.Commit(); //MessageBox.Show("Table Merging Successfull...");
        //                       // DialogResult = true;


        //                    }
        //                    catch (Exception ex) {
        //                        //tran.Rollback(); MessageBox.Show("Error on merging table..." + ex);
        //                    }
        //                }

        //            }
        //        }
        //    }
        //    catch (Exception ex) { MessageBox.Show("Error Message..." + ex); }

        //}

        public string MergeTable(MergeTransfer mergeTransfer)
        {
            try
            {
                string DestinationTableNo = mergeTransfer.DestinationTableNo;

                var list = mergeTransfer.MergingTables;

                string InsertQueryForKotProd = "INSERT INTO RMD_KOTPROD(KOTID,TABLENO,TRNDATE,MCODE,UNIT,Quantity,RealQty,AltQty,RATE,AMOUNT,DISCOUNT,VAT,REALRATE,IDIS,ALTUNIT,WAREHOUSE,KOT,SNO,ItemDesc,DIVISION,SERVICETAX,NAMNT,KOTTIME,KitchenDispatch,DispatchTime,DispatchUser,Remarks,ISBOT,ComboItem,ComboItemQty, WaiterName, REFSNO,RECEIPES,TAKEAWAY) VALUES(@KOTID,@TABLENO,@TRNDATE,@MCODE,@UNIT,@Quantity,@RealQty,@AltQty,@RATE,@AMOUNT,@DISCOUNT,@VAT,@REALRATE,@IDIS,@ALTUNIT,@WAREHOUSE,@KOT,@SNO,@ItemDesc,@DIVISION,@SERVICETAX,@NAMNT,@KOTTIME,@KitchenDispatch,@DispatchTime,@DispatchUser,@Remarks,@ISBOT,@ComboItem,@ComboItemQty, @WaiterName, @REFSNO,@RECEIPES,@TAKEAWAY)";

                List <KOTProd> kpMergedListForSave = new List <KOTProd>();
                KotMain        KotMainObj          = new KotMain();
                using (SqlConnection con = new SqlConnection(ConnectionDbInfo.ConnectionString))
                {
                    con.Open();
                    SqlTransaction tran = con.BeginTransaction();
                    try
                    {
                        KotMainObj = con.Query <KotMain>("Select * from RMD_KOTMAIN kp JOIN RMD_KOTMAIN_STATUS KMS ON KP.KOTID=KMS.KOTID  where KMS.STATUS='ACTIVE' and kp.TableNo='" + DestinationTableNo + "'", transaction: tran).FirstOrDefault();
                        foreach (var o in list)
                        {
                            var kotprodLis = new List <KOTProd>(con.Query <KOTProd>("select kp.* from rmd_kotprod kp join rmd_kotmain_status kms on kp.kotid=kms.kotid where kms.status='ACTIVE' AND kp.TableNo='" + o + "'", transaction: tran));

                            if (kotprodLis.Count() == 0)
                            {
                                tran.Rollback(); return("Error on merging Table.Sorry could not find KOT Items");
                            }
                            kotprodLis.ForEach(x => x.Remarks = "MERGE FROM KOTID:" + x.KOTID);
                            kpMergedListForSave.AddRange(kotprodLis);

                            con.Execute("UPDATE RMD_KOTMAIN_STATUS SET STATUS='MERGE',REMARKS='MERGE TO: " + KotMainObj.KOTID + "'  WHERE KOTID=" + kotprodLis.FirstOrDefault().KOTID, transaction: tran);
                        }

                        foreach (var t in kpMergedListForSave)
                        {
                            t.TABLENO = DestinationTableNo;
                            t.KOTID   = KotMainObj.KOTID;
                        }
                        con.Execute(InsertQueryForKotProd, kpMergedListForSave, transaction: tran);

                        tran.Commit();
                        return("success");
                    }
                    catch (Exception ex)
                    {
                        return("Error on merging table..." + ex.Message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
Beispiel #3
0
 public string MergeTable([FromBody] MergeTransfer mergeTransfer)
 {
     return(new TableTransferMethods().MergeTable(mergeTransfer));
 }