Advertisement
Guest User

SaveBooking

a guest
Dec 30th, 2016
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 52.75 KB | None | 0 0
  1. Public Shared Function doSaveUnitBooking(ByVal dbMasterRef As String, ByVal projectRef As String, ByVal psRef As String, ByVal memberRef As String, ByVal agentMemberRef As String, _
  2.                                                  ByVal clusterRef As String, ByVal productRef As String, ByVal unitRef As String, _
  3.                                                  ByVal itemTypeList As String, ByVal termRef As String, ByVal termNo As String, ByVal dtPrice As DataTable, ByVal inputUN As String, _
  4.                                                  ByVal customerName As String, ByVal customerNIK As String, ByVal customerHP As String, _
  5.                                                  ByVal customerPHONE As String, ByVal customerEMAIL As String, ByVal customerADDRESS As String, ByRef projectBookingRef As String) As String
  6.             Dim result As String = ""
  7.             Dim dt As New DataTable
  8.             Dim sqlCmd As New SqlCommand
  9.             Dim sqlCon As New SqlConnection(_conStr)
  10.             Dim sqlTrans As SqlTransaction
  11.             Dim sqlDr As SqlDataReader
  12.  
  13.             '----ambil koneksi ke database PS
  14.             '----ambil koneksi ke database PS
  15.             Dim projectConnectionString As String = GetProjectConnectionString(dbMasterRef, projectRef)
  16.             Dim projectSqlCmd As New SqlCommand
  17.             Dim projectSqlCon As New SqlConnection(projectConnectionString)
  18.             Dim projectSqlTrans As SqlTransaction
  19.             Dim projectSqlDr As SqlDataReader
  20.  
  21.  
  22.             sqlCon.Open()
  23.             sqlTrans = sqlCon.BeginTransaction
  24.  
  25.             sqlCmd.Transaction = sqlTrans
  26.             sqlCmd.Connection = sqlCon
  27.  
  28.             projectSqlCon.Open()
  29.             projectSqlTrans = projectSqlCon.BeginTransaction
  30.  
  31.             projectSqlCmd.Transaction = projectSqlTrans
  32.             projectSqlCmd.Connection = projectSqlCon
  33.  
  34.             Try
  35.  
  36.                 If Trim(projectConnectionString) = "" Then
  37.                     Throw New Exception("Project Connection String not created or not defined")
  38.                 End If
  39.  
  40.                 Dim projectPsRef As Integer = 0
  41.                 Dim bookingRef As Integer = 0
  42.  
  43.                 '-----update data customer
  44.                 '-----update data customer
  45.                 If Trim(memberRef) <> String.Empty And Not IsNothing(memberRef) Then
  46.                     sqlCmd.Parameters.Clear()
  47.                     sqlCmd.Prepare()
  48.                     sqlCmd.CommandType = CommandType.Text
  49.                     sqlCmd.CommandText = "Update     " + _NSMainDB + "..ms_personal " + _
  50.                                              "Set name = @name,  ktpid = @ktpid, hp1 = @hp1, phone1 = @phone1, email1 = @email1, idaddr = @idaddr " + _
  51.                                              "where     psRef = @psRef "
  52.  
  53.                     sqlCmd.Parameters.AddWithValue("@psRef", psRef)
  54.                     sqlCmd.Parameters.AddWithValue("@name", customerName)
  55.                     sqlCmd.Parameters.AddWithValue("@KTPID", customerNIK)
  56.                     sqlCmd.Parameters.AddWithValue("@IDAddr", customerADDRESS)
  57.                     sqlCmd.Parameters.AddWithValue("@HP1", customerHP)
  58.                     sqlCmd.Parameters.AddWithValue("@phone1", customerPHONE)
  59.                     sqlCmd.Parameters.AddWithValue("@email1", customerEMAIL)
  60.                     sqlCmd.ExecuteNonQuery()
  61.                 End If
  62.  
  63.  
  64.                 '-----ambil data projectPsRef di mapping
  65.                 '-----ambil data projectPsRef di mapping
  66.                 sqlCmd.Parameters.Clear()
  67.                 sqlCmd.Prepare()
  68.                 sqlCmd.CommandType = CommandType.Text
  69.                 sqlCmd.CommandText = "select projectPsRef " + _
  70.                                      "from " + _NSMainDB + "..MS_mappingPersonalProject " + _
  71.                                      "where dbMasterRef = @dbMasterRef and projectRef = @projectRef and psRef = @psRef "
  72.  
  73.                 sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  74.                 sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  75.                 sqlCmd.Parameters.AddWithValue("@psRef", psRef)
  76.  
  77.                 sqlDr = sqlCmd.ExecuteReader
  78.                 If sqlDr.Read Then
  79.                     projectPsRef = sqlDr("projectPsRef")
  80.                 End If
  81.                 sqlDr.Close()
  82.  
  83.                 If projectPsRef = 0 Then
  84.                     '-----Belum teregister di project/mapping project
  85.                     '-----Belum teregister di project/mapping project
  86.                     Try
  87.                         projectSqlCmd.Parameters.Clear()
  88.                         projectSqlCmd.Prepare()
  89.                         projectSqlCmd.CommandType = CommandType.Text
  90.                         projectSqlCmd.CommandText = "select isnull(max(psRef),0) + 1 as ref " + _
  91.                                              "from ps_ms_personal "
  92.  
  93.                         projectSqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  94.                         projectSqlCmd.Parameters.AddWithValue("@unitRef", unitRef)
  95.  
  96.                         projectSqlDr = projectSqlCmd.ExecuteReader
  97.                         If projectSqlDr.Read Then
  98.                             projectPsRef = projectSqlDr("ref")
  99.                         End If
  100.                         projectSqlDr.Close()
  101.  
  102.                         '-----Ambil data personal dari database
  103.                         '-----Ambil data personal dari database
  104.                         Dim dtPersonal As New DataTable
  105.                         dtPersonal = GetPersonalInfoBooking(psRef, sqlCmd, sqlCon)
  106.                         If dtPersonal.Rows.Count <= 0 Then
  107.                             Throw New ArgumentException("Your Personal Information not found.")
  108.                         End If
  109.  
  110.                         '-----Create PS Code
  111.                         '-----Create PS Code
  112.                         Dim newPsCode As String = ""
  113.                         projectSqlCmd.Parameters.Clear()
  114.                         projectSqlCmd.Prepare()
  115.                         projectSqlCmd.CommandType = CommandType.Text
  116.                         projectSqlCmd.CommandText = "select right(cast(year(getdate()) as varchar(4)),2) + right('00' + cast(month(getdate()) as varchar(2)),2) +  right('0000' + cast(isnull(max(cast(right(psCode,4) as integer)),0) + 1 as varchar(4)),4) as newPsCode " + _
  117.                                                     "from ps_ms_personal " + _
  118.                                                     "where      cast('20' + left(psCode,2) as integer) = year(getdate()) " + _
  119.                                                     "           and cast(substring(psCode,3,2) as integer) = month(getdate()) "
  120.  
  121.                         projectSqlDr = projectSqlCmd.ExecuteReader
  122.                         If projectSqlDr.Read Then
  123.                             newPsCode = projectSqlDr("newPsCode")
  124.                         End If
  125.                         projectSqlDr.Close()
  126.  
  127.  
  128.                         '-----Insert personal di PS
  129.                         '-----Insert personal di PS
  130.                         projectSqlCmd.Parameters.Clear()
  131.                         projectSqlCmd.Prepare()
  132.  
  133.                         projectSqlCmd.CommandType = CommandType.Text
  134.                         projectSqlCmd.CommandType = CommandType.Text
  135.                         projectSqlCmd.CommandText = "insert into ps_ms_personal " + _
  136.                                             "           (psRef, psCode, typeRef, name, sexRef " + _
  137.                                             "           , birthDate, birthPlace, religionRef, occupationRef " + _
  138.                                             "           , maritalStatus, jobTitleRef, gradeRef, nationRef, bloodType " + _
  139.                                             "           , IDCountryCode, IDProvinceCode, IDCityCode, IDAddr, IDPostCode " + _
  140.                                             "           , corresCountryCode, corresProvinceCode, corresCityCode, corresAddr, corresPostCode,taxAddr " + _
  141.                                             "           , KTPID, SIMID, passportID, HP1, HP2, phone1, phone2, fax, email1, email2 " + _
  142.                                             "           , NPWP, CPName, CPHP, CPPhone, CPEmail, noted " + _
  143.                                             "           , field1, field2, field3, inputUN, isActive) " + _
  144.                                             "select     @psRef,@newPsCode  " + _
  145.                                             "           , @typeRef, @name, @sexRef " + _
  146.                                             "           , @birthDate, @birthPlace, @religionRef, @occupationRef " + _
  147.                                             "           , @maritalStatus, @jobTitleRef, @gradeRef, @nationRef, @bloodType " + _
  148.                                             "           , @IDCountryCode, @IDProvinceCode, @IDCityCode, @IDAddr, @IDPostCode " + _
  149.                                             "           , @corresCountryCode, @corresProvinceCode, @corresCityCode, @corresAddr, @corresPostCode,@taxAddr " + _
  150.                                             "           , @KTPID, @SIMID, @passportID, @HP1, @HP2, @phone1, @phone2, @fax, @email1, @email2 " + _
  151.                                             "           , @NPWP, @CPName, @CPHP, @CPPhone, @CPEmail, @noted " + _
  152.                                             "           , @field1, @field2, @field3, @inputUN, 1 "
  153.  
  154.                         projectSqlCmd.Parameters.AddWithValue("@psRef", projectPsRef)
  155.                         projectSqlCmd.Parameters.AddWithValue("@newPsCode", newPsCode)
  156.                         projectSqlCmd.Parameters.AddWithValue("@typeRef", dtPersonal.Rows(0).Item("typeRef"))
  157.                         projectSqlCmd.Parameters.AddWithValue("@name", dtPersonal.Rows(0).Item("name"))
  158.                         projectSqlCmd.Parameters.AddWithValue("@sexRef", dtPersonal.Rows(0).Item("sexRef"))
  159.                         projectSqlCmd.Parameters.AddWithValue("@birthDate", dtPersonal.Rows(0).Item("birthdate"))
  160.                         projectSqlCmd.Parameters.AddWithValue("@birthPlace", dtPersonal.Rows(0).Item("birthPlace"))
  161.                         projectSqlCmd.Parameters.AddWithValue("@religionRef", dtPersonal.Rows(0).Item("religionRef"))
  162.                         projectSqlCmd.Parameters.AddWithValue("@occupationRef", dtPersonal.Rows(0).Item("occupationRef"))
  163.                         projectSqlCmd.Parameters.AddWithValue("@maritalStatus", dtPersonal.Rows(0).Item("maritalStatus"))
  164.                         projectSqlCmd.Parameters.AddWithValue("@jobTitleRef", dtPersonal.Rows(0).Item("jobTitleRef"))
  165.                         projectSqlCmd.Parameters.AddWithValue("@gradeRef", dtPersonal.Rows(0).Item("gradeRef"))
  166.                         projectSqlCmd.Parameters.AddWithValue("@nationRef", dtPersonal.Rows(0).Item("nationRef"))
  167.                         projectSqlCmd.Parameters.AddWithValue("@bloodType", dtPersonal.Rows(0).Item("bloodType"))
  168.                         projectSqlCmd.Parameters.AddWithValue("@IDCountryCode", dtPersonal.Rows(0).Item("IDCountryCode"))
  169.                         projectSqlCmd.Parameters.AddWithValue("@IDProvinceCode", dtPersonal.Rows(0).Item("IDProvinceCode"))
  170.                         projectSqlCmd.Parameters.AddWithValue("@IDCityCode", dtPersonal.Rows(0).Item("IDCityCode"))
  171.                         projectSqlCmd.Parameters.AddWithValue("@IDAddr", dtPersonal.Rows(0).Item("IDAddr"))
  172.                         projectSqlCmd.Parameters.AddWithValue("@IDPostCode", dtPersonal.Rows(0).Item("IDPostCode"))
  173.                         projectSqlCmd.Parameters.AddWithValue("@corresCountryCode", dtPersonal.Rows(0).Item("corresCountryCode"))
  174.                         projectSqlCmd.Parameters.AddWithValue("@corresProvinceCode", dtPersonal.Rows(0).Item("corresProvinceCode"))
  175.                         projectSqlCmd.Parameters.AddWithValue("@corresCityCode", dtPersonal.Rows(0).Item("corresCityCode"))
  176.                         projectSqlCmd.Parameters.AddWithValue("@corresAddr", dtPersonal.Rows(0).Item("corresAddr"))
  177.                         projectSqlCmd.Parameters.AddWithValue("@corresPostCode", dtPersonal.Rows(0).Item("corresPostCode"))
  178.                         projectSqlCmd.Parameters.AddWithValue("@taxAddr", dtPersonal.Rows(0).Item("taxAddr"))
  179.                         projectSqlCmd.Parameters.AddWithValue("@KTPID", dtPersonal.Rows(0).Item("KTPID"))
  180.                         projectSqlCmd.Parameters.AddWithValue("@SIMID", dtPersonal.Rows(0).Item("SIMID"))
  181.                         projectSqlCmd.Parameters.AddWithValue("@passportID", dtPersonal.Rows(0).Item("passportID"))
  182.                         projectSqlCmd.Parameters.AddWithValue("@HP1", dtPersonal.Rows(0).Item("HP1"))
  183.                         projectSqlCmd.Parameters.AddWithValue("@HP2", dtPersonal.Rows(0).Item("HP2"))
  184.                         projectSqlCmd.Parameters.AddWithValue("@phone1", dtPersonal.Rows(0).Item("phone1"))
  185.                         projectSqlCmd.Parameters.AddWithValue("@phone2", dtPersonal.Rows(0).Item("phone2"))
  186.                         projectSqlCmd.Parameters.AddWithValue("@fax", dtPersonal.Rows(0).Item("fax"))
  187.                         projectSqlCmd.Parameters.AddWithValue("@email1", dtPersonal.Rows(0).Item("email1"))
  188.                         projectSqlCmd.Parameters.AddWithValue("@email2", dtPersonal.Rows(0).Item("email2"))
  189.                         projectSqlCmd.Parameters.AddWithValue("@NPWP", dtPersonal.Rows(0).Item("NPWP"))
  190.                         projectSqlCmd.Parameters.AddWithValue("@CPName", dtPersonal.Rows(0).Item("CPName"))
  191.                         projectSqlCmd.Parameters.AddWithValue("@CPHP", dtPersonal.Rows(0).Item("CPHP"))
  192.                         projectSqlCmd.Parameters.AddWithValue("@CPPhone", dtPersonal.Rows(0).Item("CPPhone"))
  193.                         projectSqlCmd.Parameters.AddWithValue("@CPEmail", dtPersonal.Rows(0).Item("CPEmail"))
  194.                         projectSqlCmd.Parameters.AddWithValue("@noted", dtPersonal.Rows(0).Item("noted"))
  195.                         projectSqlCmd.Parameters.AddWithValue("@field1", dtPersonal.Rows(0).Item("field1"))
  196.                         projectSqlCmd.Parameters.AddWithValue("@field2", dtPersonal.Rows(0).Item("field2"))
  197.                         projectSqlCmd.Parameters.AddWithValue("@field3", dtPersonal.Rows(0).Item("field3"))
  198.                         projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  199.                         projectSqlCmd.ExecuteNonQuery()
  200.  
  201.                     Catch ex As Exception
  202.                         Throw ex
  203.                     End Try
  204.  
  205.  
  206.                     '*Setelah berhasil insert personal di PS
  207.                     '  -lanjut insert mapping personal di NATA
  208.                     sqlCmd.Parameters.Clear()
  209.                     sqlCmd.Prepare()
  210.                     sqlCmd.CommandType = CommandType.Text
  211.                     sqlCmd.CommandText = "insert    into  " + _NSMainDB + "..MS_mappingPersonalProject(dbMasterRef,projectRef,psRef,projectPsRef) " + _
  212.                                          "values(@dbMasterRef,@projectRef,@psRef,@projectPsRef) "
  213.  
  214.                     sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  215.                     sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  216.                     sqlCmd.Parameters.AddWithValue("@psRef", psRef)
  217.                     sqlCmd.Parameters.AddWithValue("@projectPsRef", projectPsRef)
  218.                     sqlCmd.ExecuteNonQuery()
  219.                 End If
  220.  
  221.  
  222.                 '' CREATE DC
  223.                 '' CREATE DC
  224.  
  225.  
  226.                 Dim isCheckDC As Boolean = True
  227.                 Dim memberPsRef As Integer = GetMemberPsRef(agentMemberRef)
  228.                 Dim projectMemberPsRef As Integer = 0
  229.                 Dim projectSchemeMemberRef As Integer = 0
  230.                 If memberPsRef = 0 Then
  231.                     isCheckDC = False
  232.                     projectMemberPsRef = GetSettingValue(dbMasterRef, projectRef, _settingNoDealCloserPsRef)
  233.                     projectSchemeMemberRef = GetSettingValue(dbMasterRef, projectRef, _settingSchemeRef)
  234.                 End If
  235.  
  236.                 If isCheckDC Then
  237.                     'STEP Check DC
  238.                     'Check Mapping personal dulu
  239.                     '   - Kalau ada berarti personalnya udah di create
  240.                     '       - Check mapping sales dengan psRef yang uda tercreate di mapping personal
  241.                     '            - Kalau ada gak usah create lagi
  242.                     '            - kalau gak ada
  243.                     '                - Create deal closer baru di ps
  244.                     '                - Create mapping deal closer
  245.                     '  - Kalau gak ada di mapping personal
  246.                     '    - Create Personalnya dulu di ps
  247.                     '    - Create mapping personal
  248.                     '    - Create deal closer
  249.                     '    - Create mapping deal closer
  250.  
  251.  
  252.                     '------cek mapping antara PS -> NATA
  253.                     '------cek mapping antara PS -> NATA
  254.                     sqlCmd.Parameters.Clear()
  255.                     sqlCmd.Prepare()
  256.                     sqlCmd.CommandType = CommandType.Text
  257.                     sqlCmd.CommandText = "select projectPsRef " + _
  258.                                          "from " + _NSMainDB + "..MS_mappingPersonalProject " + _
  259.                                          "where dbMasterRef = @dbMasterRef and projectRef = @projectRef and psRef = @psRef "
  260.  
  261.                     sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  262.                     sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  263.                     sqlCmd.Parameters.AddWithValue("@psRef", memberPsRef)
  264.  
  265.                     sqlDr = sqlCmd.ExecuteReader
  266.                     If sqlDr.Read Then
  267.                         projectMemberPsRef = sqlDr("projectPsRef")
  268.                     End If
  269.                     sqlDr.Close()
  270.  
  271.                     If projectMemberPsRef > 0 Then
  272.                         '----Personalnya sudah tercreate and udah di mapping dengan data NATA
  273.                         '----Personalnya sudah tercreate and udah di mapping dengan data NATA
  274.  
  275.  
  276.                         '-----Ambil SchemeRef dari mapping member project NATA
  277.                         '-----Ambil SchemeRef dari mapping member project NATA
  278.                         sqlCmd.Parameters.Clear()
  279.                         sqlCmd.Prepare()
  280.                         sqlCmd.CommandType = CommandType.Text
  281.                         sqlCmd.CommandText = "select schemeRef,projectPsRef " + _
  282.                                              "from " + _NSMainDB + "..MS_mappingMemberProject " + _
  283.                                              "where dbMasterRef = @dbMasterRef and projectRef = @projectRef and psRef = @psRef and projectPsRef = @projectPsRef "
  284.  
  285.                         sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  286.                         sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  287.                         sqlCmd.Parameters.AddWithValue("@projectPsRef", projectMemberPsRef)
  288.                         sqlCmd.Parameters.AddWithValue("@psRef", memberPsRef)
  289.  
  290.                         sqlDr = sqlCmd.ExecuteReader
  291.                         If sqlDr.Read Then
  292.                             projectSchemeMemberRef = sqlDr("schemeRef")
  293.                         End If
  294.                         sqlDr.Close()
  295.  
  296.  
  297.                         If projectSchemeMemberRef = 0 Then
  298.                             '-----Berarti deal closer belum tercreate
  299.                             '-----Berarti deal closer belum tercreate
  300.  
  301.                             Dim memberPsCode As String = ""
  302.                             projectSqlCmd.Parameters.Clear()
  303.                             projectSqlCmd.Prepare()
  304.                             projectSqlCmd.CommandType = CommandType.Text
  305.                             projectSqlCmd.CommandText = "select psCode " + _
  306.                                                        "from        ps_ms_personal " + _
  307.                                                        "where      psRef = @psRef "
  308.  
  309.                             projectSqlCmd.Parameters.AddWithValue("@psRef", psRef)
  310.                             projectSqlDr = projectSqlCmd.ExecuteReader
  311.                             If projectSqlDr.Read Then
  312.                                 memberPsCode = projectSqlDr("psCode")
  313.                             End If
  314.                             projectSqlDr.Close()
  315.  
  316.                             'Dim schemeRef As Integer = GetSettingValue(dtNUPOrder.Rows(0).Item("dbMasterRef"), dtNUPOrder.Rows(0).Item("projectRef"), _settingSchemeRef)
  317.                             Dim schemeRef As Integer = getSchemeRef(dbMasterRef, projectRef, getMemberTypeString(memberRef))
  318.                             If schemeRef = 0 Then
  319.                                 schemeRef = GetSettingValue(dbMasterRef, projectRef, _settingSchemeRef)
  320.                             End If
  321.                             projectSchemeMemberRef = schemeRef
  322.                             Dim memberCode = getProjectSchemeDigit(dbMasterRef, projectRef, schemeRef) + memberPsCode
  323.  
  324.                             projectSqlCmd.Parameters.Clear()
  325.                             projectSqlCmd.Prepare()
  326.                             projectSqlCmd.CommandType = CommandType.Text
  327.                             projectSqlCmd.CommandText = "insert into com_ms_member " + _
  328.                                                         "(schemeRef, psRef, memberCode, [password], memberLevel " + _
  329.                                                         ", joinDate, bankRef, bankAccNo, bankAccName, bankBranchName " + _
  330.                                                         ", isActive, isManager, inputUN) " + _
  331.                                                         "select @schemeRef, @psRef, @memberCode, @password, @memberLevel " + _
  332.                                                         ", @joinDate, @bankRef, @bankAccNo, @bankAccName, @bankBranchName " + _
  333.                                                         ", @isActive, @isManager, @inputUN"
  334.  
  335.                             projectSqlCmd.Parameters.AddWithValue("@schemeRef", schemeRef)
  336.                             projectSqlCmd.Parameters.AddWithValue("@psRef", projectMemberPsRef)
  337.                             projectSqlCmd.Parameters.AddWithValue("@memberCode", memberCode)
  338.                             projectSqlCmd.Parameters.AddWithValue("@password", "")
  339.                             projectSqlCmd.Parameters.AddWithValue("@memberLevel", "")
  340.                             projectSqlCmd.Parameters.AddWithValue("@joinDate", DateTime.Now)
  341.                             projectSqlCmd.Parameters.AddWithValue("@bankRef", "0")
  342.                             projectSqlCmd.Parameters.AddWithValue("@bankAccNo", "")
  343.                             projectSqlCmd.Parameters.AddWithValue("@bankAccName", "")
  344.                             projectSqlCmd.Parameters.AddWithValue("@bankBranchName", "")
  345.                             projectSqlCmd.Parameters.AddWithValue("@isActive", "1")
  346.                             projectSqlCmd.Parameters.AddWithValue("@isManager", "0")
  347.                             projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  348.                             projectSqlCmd.ExecuteNonQuery()
  349.  
  350.  
  351.                             '-----kalo udah insert member di PS lanjut insert mappingMember di NATA
  352.                             '-----kalo udah insert member di PS lanjut insert mappingMember di NATA
  353.                             sqlCmd.Parameters.Clear()
  354.                             sqlCmd.Prepare()
  355.                             sqlCmd.CommandType = CommandType.Text
  356.                             sqlCmd.CommandText = "insert    into  " + _NSMainDB + "..MS_mappingMemberProject(dbMasterRef,projectRef,psRef,schemeRef,projectPsRef) " + _
  357.                                                  "values(@dbMasterRef,@projectRef,@psRef,@schemeRef,@projectPsRef) "
  358.  
  359.                             sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  360.                             sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  361.                             sqlCmd.Parameters.AddWithValue("@psRef", memberPsRef)
  362.                             sqlCmd.Parameters.AddWithValue("@schemeRef", projectSchemeMemberRef)
  363.                             sqlCmd.Parameters.AddWithValue("@projectPsRef", projectMemberPsRef)
  364.                             sqlCmd.ExecuteNonQuery()
  365.                         End If
  366.  
  367.  
  368.                     Else
  369.                         'Personalnya belum tercreate
  370.                         'Create Personal Dulu
  371.  
  372.                         projectSqlCmd.Parameters.Clear()
  373.                         projectSqlCmd.Prepare()
  374.                         projectSqlCmd.CommandType = CommandType.Text
  375.                         projectSqlCmd.CommandText = "select isnull(max(psRef),0) + 1 as ref " + _
  376.                                              "from ps_ms_personal "
  377.  
  378.  
  379.                         projectSqlDr = projectSqlCmd.ExecuteReader
  380.                         If projectSqlDr.Read Then
  381.                             projectMemberPsRef = projectSqlDr("ref")
  382.                         End If
  383.                         projectSqlDr.Close()
  384.  
  385.                         '-----Ambil data personal NATA
  386.                         '-----Ambil data personal NATA
  387.                         Dim dtPersonal As New DataTable
  388.  
  389.                         dtPersonal = GetPersonalInfoBooking(memberPsRef, sqlCmd, sqlCon)
  390.                         If dtPersonal.Rows.Count <= 0 Then
  391.                             Throw New ArgumentException("Your Personal Information not found.")
  392.                         End If
  393.  
  394.                         '-----Create PS Code
  395.                         '-----Create PS Code
  396.                         Dim newPsCode As String = ""
  397.                         projectSqlCmd.Parameters.Clear()
  398.                         projectSqlCmd.Prepare()
  399.                         projectSqlCmd.CommandType = CommandType.Text
  400.                         projectSqlCmd.CommandText = "select right(cast(year(getdate()) as varchar(4)),2) + right('00' + cast(month(getdate()) as varchar(2)),2) +  right('0000' + cast(isnull(max(cast(right(psCode,4) as integer)),0) + 1 as varchar(4)),4) as newPsCode " + _
  401.                                                     "from ps_ms_personal " + _
  402.                                                     "where      cast('20' + left(psCode,2) as integer) = year(getdate()) " + _
  403.                                                     "           and cast(substring(psCode,3,2) as integer) = month(getdate()) "
  404.  
  405.                         projectSqlDr = projectSqlCmd.ExecuteReader
  406.                         If projectSqlDr.Read Then
  407.                             newPsCode = projectSqlDr("newPsCode")
  408.                         End If
  409.                         projectSqlDr.Close()
  410.  
  411.  
  412.                         projectSqlCmd.Parameters.Clear()
  413.                         projectSqlCmd.Prepare()
  414.  
  415.                         projectSqlCmd.CommandType = CommandType.Text
  416.                         projectSqlCmd.CommandText = "insert into ps_ms_personal " + _
  417.                                             "           (psRef, psCode, typeRef, name, sexRef " + _
  418.                                             "           , birthDate, birthPlace, religionRef, occupationRef " + _
  419.                                             "           , maritalStatus, jobTitleRef, gradeRef, nationRef, bloodType " + _
  420.                                             "           , IDCountryCode, IDProvinceCode, IDCityCode, IDAddr, IDPostCode " + _
  421.                                             "           , corresCountryCode, corresProvinceCode, corresCityCode, corresAddr, corresPostCode,taxAddr " + _
  422.                                             "           , KTPID, SIMID, passportID, HP1, HP2, phone1, phone2, fax, email1, email2 " + _
  423.                                             "           , NPWP, CPName, CPHP, CPPhone, CPEmail, noted " + _
  424.                                             "           , field1, field2, field3, inputUN, isActive) " + _
  425.                                             "select     @psRef,@newPsCode  " + _
  426.                                             "           , @typeRef, @name, @sexRef " + _
  427.                                             "           , @birthDate, @birthPlace, @religionRef, @occupationRef " + _
  428.                                             "           , @maritalStatus, @jobTitleRef, @gradeRef, @nationRef, @bloodType " + _
  429.                                             "           , @IDCountryCode, @IDProvinceCode, @IDCityCode, @IDAddr, @IDPostCode " + _
  430.                                             "           , @corresCountryCode, @corresProvinceCode, @corresCityCode, @corresAddr, @corresPostCode,@taxAddr " + _
  431.                                             "           , @KTPID, @SIMID, @passportID, @HP1, @HP2, @phone1, @phone2, @fax, @email1, @email2 " + _
  432.                                             "           , @NPWP, @CPName, @CPHP, @CPPhone, @CPEmail, @noted " + _
  433.                                             "           , @field1, @field2, @field3, @inputUN, 1 "
  434.  
  435.                         projectSqlCmd.Parameters.AddWithValue("@psRef", projectMemberPsRef)
  436.                         projectSqlCmd.Parameters.AddWithValue("@newPsCode", newPsCode)
  437.                         projectSqlCmd.Parameters.AddWithValue("@typeRef", dtPersonal.Rows(0).Item("typeRef"))
  438.                         projectSqlCmd.Parameters.AddWithValue("@name", dtPersonal.Rows(0).Item("name"))
  439.                         projectSqlCmd.Parameters.AddWithValue("@sexRef", dtPersonal.Rows(0).Item("sexRef"))
  440.                         projectSqlCmd.Parameters.AddWithValue("@birthDate", dtPersonal.Rows(0).Item("birthdate"))
  441.                         projectSqlCmd.Parameters.AddWithValue("@birthPlace", dtPersonal.Rows(0).Item("birthPlace"))
  442.                         projectSqlCmd.Parameters.AddWithValue("@religionRef", dtPersonal.Rows(0).Item("religionRef"))
  443.                         projectSqlCmd.Parameters.AddWithValue("@occupationRef", dtPersonal.Rows(0).Item("occupationRef"))
  444.                         projectSqlCmd.Parameters.AddWithValue("@maritalStatus", dtPersonal.Rows(0).Item("maritalStatus"))
  445.                         projectSqlCmd.Parameters.AddWithValue("@jobTitleRef", dtPersonal.Rows(0).Item("jobTitleRef"))
  446.                         projectSqlCmd.Parameters.AddWithValue("@gradeRef", dtPersonal.Rows(0).Item("gradeRef"))
  447.                         projectSqlCmd.Parameters.AddWithValue("@nationRef", dtPersonal.Rows(0).Item("nationRef"))
  448.                         projectSqlCmd.Parameters.AddWithValue("@bloodType", dtPersonal.Rows(0).Item("bloodType"))
  449.                         projectSqlCmd.Parameters.AddWithValue("@IDCountryCode", dtPersonal.Rows(0).Item("IDCountryCode"))
  450.                         projectSqlCmd.Parameters.AddWithValue("@IDProvinceCode", dtPersonal.Rows(0).Item("IDProvinceCode"))
  451.                         projectSqlCmd.Parameters.AddWithValue("@IDCityCode", dtPersonal.Rows(0).Item("IDCityCode"))
  452.                         projectSqlCmd.Parameters.AddWithValue("@IDAddr", dtPersonal.Rows(0).Item("IDAddr"))
  453.                         projectSqlCmd.Parameters.AddWithValue("@IDPostCode", dtPersonal.Rows(0).Item("IDPostCode"))
  454.                         projectSqlCmd.Parameters.AddWithValue("@corresCountryCode", dtPersonal.Rows(0).Item("corresCountryCode"))
  455.                         projectSqlCmd.Parameters.AddWithValue("@corresProvinceCode", dtPersonal.Rows(0).Item("corresProvinceCode"))
  456.                         projectSqlCmd.Parameters.AddWithValue("@corresCityCode", dtPersonal.Rows(0).Item("corresCityCode"))
  457.                         projectSqlCmd.Parameters.AddWithValue("@corresAddr", dtPersonal.Rows(0).Item("corresAddr"))
  458.                         projectSqlCmd.Parameters.AddWithValue("@corresPostCode", dtPersonal.Rows(0).Item("corresPostCode"))
  459.                         projectSqlCmd.Parameters.AddWithValue("@taxAddr", dtPersonal.Rows(0).Item("taxAddr"))
  460.                         projectSqlCmd.Parameters.AddWithValue("@KTPID", dtPersonal.Rows(0).Item("KTPID"))
  461.                         projectSqlCmd.Parameters.AddWithValue("@SIMID", dtPersonal.Rows(0).Item("SIMID"))
  462.                         projectSqlCmd.Parameters.AddWithValue("@passportID", dtPersonal.Rows(0).Item("passportID"))
  463.                         projectSqlCmd.Parameters.AddWithValue("@HP1", dtPersonal.Rows(0).Item("HP1"))
  464.                         projectSqlCmd.Parameters.AddWithValue("@HP2", dtPersonal.Rows(0).Item("HP2"))
  465.                         projectSqlCmd.Parameters.AddWithValue("@phone1", dtPersonal.Rows(0).Item("phone1"))
  466.                         projectSqlCmd.Parameters.AddWithValue("@phone2", dtPersonal.Rows(0).Item("phone2"))
  467.                         projectSqlCmd.Parameters.AddWithValue("@fax", dtPersonal.Rows(0).Item("fax"))
  468.                         projectSqlCmd.Parameters.AddWithValue("@email1", dtPersonal.Rows(0).Item("email1"))
  469.                         projectSqlCmd.Parameters.AddWithValue("@email2", dtPersonal.Rows(0).Item("email2"))
  470.                         projectSqlCmd.Parameters.AddWithValue("@NPWP", dtPersonal.Rows(0).Item("NPWP"))
  471.                         projectSqlCmd.Parameters.AddWithValue("@CPName", dtPersonal.Rows(0).Item("CPName"))
  472.                         projectSqlCmd.Parameters.AddWithValue("@CPHP", dtPersonal.Rows(0).Item("CPHP"))
  473.                         projectSqlCmd.Parameters.AddWithValue("@CPPhone", dtPersonal.Rows(0).Item("CPPhone"))
  474.                         projectSqlCmd.Parameters.AddWithValue("@CPEmail", dtPersonal.Rows(0).Item("CPEmail"))
  475.                         projectSqlCmd.Parameters.AddWithValue("@noted", dtPersonal.Rows(0).Item("noted"))
  476.                         projectSqlCmd.Parameters.AddWithValue("@field1", dtPersonal.Rows(0).Item("field1"))
  477.                         projectSqlCmd.Parameters.AddWithValue("@field2", dtPersonal.Rows(0).Item("field2"))
  478.                         projectSqlCmd.Parameters.AddWithValue("@field3", dtPersonal.Rows(0).Item("field3"))
  479.                         projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  480.                         projectSqlCmd.ExecuteNonQuery()
  481.  
  482.  
  483.                         sqlCmd.Parameters.Clear()
  484.                         sqlCmd.Prepare()
  485.                         sqlCmd.CommandType = CommandType.Text
  486.                         sqlCmd.CommandText = "insert    into  " + _NSMainDB + "..MS_mappingPersonalProject(dbMasterRef,projectRef,psRef,projectPsRef) " + _
  487.                                              "values(@dbMasterRef,@projectRef,@psRef,@projectPsRef) "
  488.  
  489.                         sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  490.                         sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  491.                         sqlCmd.Parameters.AddWithValue("@psRef", memberPsRef)
  492.                         sqlCmd.Parameters.AddWithValue("@projectPsRef", projectMemberPsRef)
  493.                         sqlCmd.ExecuteNonQuery()
  494.  
  495.  
  496.                         'iki error seng gawe aku kezeelllll
  497.                         'Create Deal Closer
  498.                         'Dim schemeRef As Integer = GetSettingValue(dtNUPOrder.Rows(0).Item("dbMasterRef"), dtNUPOrder.Rows(0).Item("projectRef"), _settingSchemeRef)
  499.                         'Dim schemeRef As Integer = GetSettingValue(dbMasterRef, projectRef, memberRef)
  500.                         Dim schemeRef As Integer = getSchemeRef(dbMasterRef, projectRef, getMemberTypeString(memberRef))
  501.                         If schemeRef = 0 Then
  502.                             schemeRef = GetSettingValue(dbMasterRef, projectRef, _settingSchemeRef)
  503.                         End If
  504.                         projectSchemeMemberRef = schemeRef
  505.                         Dim projectSchemeDigit As String = getProjectSchemeDigit(dbMasterRef, projectRef, schemeRef)
  506.                         'Dim projectPersonalCode as string = getProjectPersonalCode(dtNUPOrder.Rows(0).Item("dbMasterRef"), dtNUPOrder.Rows(0).Item("projectRef"), projectMemberPsRef)
  507.                         Dim memberCode = projectSchemeDigit + newPsCode
  508.  
  509.                         projectSqlCmd.Parameters.Clear()
  510.                         projectSqlCmd.Prepare()
  511.                         projectSqlCmd.CommandType = CommandType.Text
  512.                         projectSqlCmd.CommandText = "insert into com_ms_member " + _
  513.                                                     "(schemeRef, psRef, memberCode, [password], memberLevel " + _
  514.                                                     ", joinDate, bankRef, bankAccNo, bankAccName, bankBranchName " + _
  515.                                                     ", isActive, isManager, inputUN) " + _
  516.                                                     "select @schemeRef, @psRef, @memberCode, @password, @memberLevel " + _
  517.                                                     ", @joinDate, @bankRef, @bankAccNo, @bankAccName, @bankBranchName " + _
  518.                                                     ", @isActive, @isManager, @inputUN"
  519.  
  520.                         projectSqlCmd.Parameters.AddWithValue("@schemeRef", schemeRef)
  521.                         projectSqlCmd.Parameters.AddWithValue("@psRef", projectMemberPsRef)
  522.                         projectSqlCmd.Parameters.AddWithValue("@memberCode", memberCode)
  523.                         projectSqlCmd.Parameters.AddWithValue("@password", "")
  524.                         projectSqlCmd.Parameters.AddWithValue("@memberLevel", "")
  525.                         projectSqlCmd.Parameters.AddWithValue("@joinDate", DateTime.Now)
  526.                         projectSqlCmd.Parameters.AddWithValue("@bankRef", "0")
  527.                         projectSqlCmd.Parameters.AddWithValue("@bankAccNo", "")
  528.                         projectSqlCmd.Parameters.AddWithValue("@bankAccName", "")
  529.                         projectSqlCmd.Parameters.AddWithValue("@bankBranchName", "")
  530.                         projectSqlCmd.Parameters.AddWithValue("@isActive", "1")
  531.                         projectSqlCmd.Parameters.AddWithValue("@isManager", "0")
  532.                         projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  533.                         projectSqlCmd.ExecuteNonQuery()
  534.  
  535.  
  536.                         sqlCmd.Parameters.Clear()
  537.                         sqlCmd.Prepare()
  538.                         sqlCmd.CommandType = CommandType.Text
  539.                         sqlCmd.CommandText = "insert    into  " + _NSMainDB + "..MS_mappingMemberProject(dbMasterRef,projectRef,psRef,schemeRef,projectPsRef) " + _
  540.                                              "values(@dbMasterRef,@projectRef,@psRef,@schemeRef,@projectPsRef) "
  541.  
  542.                         sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  543.                         sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  544.                         sqlCmd.Parameters.AddWithValue("@psRef", memberPsRef)
  545.                         sqlCmd.Parameters.AddWithValue("@schemeRef", projectSchemeMemberRef)
  546.                         sqlCmd.Parameters.AddWithValue("@projectPsRef", projectMemberPsRef)
  547.                         sqlCmd.ExecuteNonQuery()
  548.                     End If
  549.                 End If
  550.  
  551.  
  552.  
  553.                 '' INSERT BOOKING
  554.                 '' INSERT BOOKING
  555.  
  556.                 Try
  557.  
  558.                     projectSqlCmd.Parameters.Clear()
  559.                     projectSqlCmd.Prepare()
  560.                     projectSqlCmd.CommandType = CommandType.Text
  561.                     projectSqlCmd.CommandText = "select isnull(max(bookingRef),0) + 1 as ref " + _
  562.                                             "from tr_booking "
  563.                     projectSqlDr = projectSqlCmd.ExecuteReader
  564.                     If projectSqlDr.Read Then
  565.                         bookingRef = projectSqlDr("ref")
  566.                     End If
  567.                     projectSqlDr.Close()
  568.  
  569.                     Dim projectPsCode As String = ""
  570.                     projectSqlCmd.Parameters.Clear()
  571.                     projectSqlCmd.Prepare()
  572.                     projectSqlCmd.CommandType = CommandType.Text
  573.                     projectSqlCmd.CommandText = "select psCode " + _
  574.                                                     "from PS_MS_personal where psRef = @psRef "
  575.                     projectSqlCmd.Parameters.AddWithValue("@psRef", projectPsRef)
  576.                     projectSqlDr = projectSqlCmd.ExecuteReader
  577.                     If projectSqlDr.Read Then
  578.                         projectPsCode = projectSqlDr("psCode")
  579.                     End If
  580.                     projectSqlDr.Close()
  581.  
  582.  
  583.                     projectSqlCmd.Parameters.Clear()
  584.                     projectSqlCmd.Prepare()
  585.                     projectSqlCmd.CommandType = CommandType.Text
  586.                     projectSqlCmd.CommandText = "insert into TR_booking " + _
  587.                                             "           (bookingRef, bookingCode, salesEvent, salesLocation " + _
  588.                                             "           , salesReferral, salesPurpose, psRefCustomer, comSchemeRef " + _
  589.                                             "           , psRefDealCloser, unitRef, bookDate, noted, notedSP " + _
  590.                                             "           , bookStatus, inputUN,bookingSourceRef) " + _
  591.                                             "values     (@bookingRef, @bookingCode, @salesEvent, @salesLocation " + _
  592.                                             "           , @salesReferral, @salesPurpose, @psRefCustomer, @comSchemeRef " + _
  593.                                             "           , @psRefDealCloser, @unitRef, @bookDate, @noted, @notedSP " + _
  594.                                             "           , @bookStatus, @inputUN,@bookingSourceRef)"
  595.  
  596.                     projectSqlCmd.Parameters.AddWithValue("@bookingRef", bookingRef)
  597.                     projectSqlCmd.Parameters.AddWithValue("@bookingCode", projectPsCode.ToString() + bookingRef.ToString())
  598.                     projectSqlCmd.Parameters.AddWithValue("@salesEvent", GetSettingValue(dbMasterRef, projectRef, _settingSalesEventRef))
  599.                     projectSqlCmd.Parameters.AddWithValue("@salesLocation", GetSettingValue(dbMasterRef, projectRef, _settingSalesLocationRef))
  600.                     projectSqlCmd.Parameters.AddWithValue("@salesReferral", GetSettingValue(dbMasterRef, projectRef, _settingSalesReferralRef))
  601.                     projectSqlCmd.Parameters.AddWithValue("@salesPurpose", GetSettingValue(dbMasterRef, projectRef, _settingSalesPurposeRef))
  602.                     projectSqlCmd.Parameters.AddWithValue("@psRefCustomer", projectPsRef)
  603.                     projectSqlCmd.Parameters.AddWithValue("@comSchemeRef", projectSchemeMemberRef)
  604.                     projectSqlCmd.Parameters.AddWithValue("@psRefDealCloser", projectMemberPsRef)
  605.                     projectSqlCmd.Parameters.AddWithValue("@unitRef", unitRef)
  606.                     projectSqlCmd.Parameters.AddWithValue("@bookDate", DateTime.Now)
  607.                     projectSqlCmd.Parameters.AddWithValue("@noted", "")
  608.                     projectSqlCmd.Parameters.AddWithValue("@notedSP", "")
  609.                     projectSqlCmd.Parameters.AddWithValue("@bookStatus", _bookStatusOnline)
  610.                     projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  611.                     projectSqlCmd.Parameters.AddWithValue("@bookingSourceRef", _bookingSourceAndroid)
  612.                     projectSqlCmd.ExecuteNonQuery()
  613.  
  614.                     projectSqlCmd.Parameters.Clear()
  615.                     projectSqlCmd.Prepare()
  616.                     projectSqlCmd.CommandType = CommandType.Text
  617.                     projectSqlCmd.CommandText = "insert into TR_bookingTerm " + _
  618.                                             "           (bookingRef, BFAmt, finSchemeRef, discCalc, dPCalc, addDiscCalc " + _
  619.                                             "           , finStartDueDay, inputUN, logTermRef, logTermName, logTermDesc, logTermNo " + _
  620.                                             "           , logTermNoName, logTermNoDesc, projectRef) " + _
  621.                                             "select     @bookingRef, t.BFAmt, tn.finSchemeRef, tn.discCalc, tn.DPCalc, tn.addDiscCalc " + _
  622.                                             "           , tn.finStartDueDay, @inputUN, t.termRef, t.termName, t.termDesc, tn.termNo " + _
  623.                                             "           , tn.termNoName, tn.termNoDesc, @projectRef " + _
  624.                                             "from       ms_Term t, ms_termNo tn " + _
  625.                                             "where     t.projectRef = tn.projectRef and t.termRef = tn.termRef " + _
  626.                                             "           and t.termRef = @termRef and tn.termNo = @termNo and t.projectRef = @projectRef"
  627.                     projectSqlCmd.Parameters.AddWithValue("@bookingRef", bookingRef)
  628.                     projectSqlCmd.Parameters.AddWithValue("@termRef", termRef)
  629.                     projectSqlCmd.Parameters.AddWithValue("@termNo", termNo)
  630.                     projectSqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  631.                     projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  632.                     projectSqlCmd.ExecuteNonQuery()
  633.  
  634.                     projectSqlCmd.Parameters.Clear()
  635.                     projectSqlCmd.Prepare()
  636.                     projectSqlCmd.CommandType = CommandType.Text
  637.                     projectSqlCmd.CommandText = "insert into TR_bookingTermAddDisc " + _
  638.                                             "           (bookingRef, addDiscNo, addDiscPct, inputUN) " + _
  639.                                             "   select      @bookingRef, addDiscNo, addDiscPct, @inputUN " + _
  640.                                             "   from       ms_termNoAddDisc " + _
  641.                                             "   where      termRef = @termRef And termNo = @termNo and projectRef = @projectRef " + _
  642.                                             "   order       by addDiscNo "
  643.                     projectSqlCmd.Parameters.AddWithValue("@bookingRef", bookingRef)
  644.                     projectSqlCmd.Parameters.AddWithValue("@termRef", termRef)
  645.                     projectSqlCmd.Parameters.AddWithValue("@termNo", termNo)
  646.                     projectSqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  647.                     projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  648.                     projectSqlCmd.ExecuteNonQuery()
  649.  
  650.                     projectSqlCmd.Parameters.Clear()
  651.                     projectSqlCmd.Prepare()
  652.                     projectSqlCmd.CommandType = CommandType.Text
  653.                     projectSqlCmd.CommandText = "insert into TR_bookingTermDP " + _
  654.                                             "           (bookingRef, DPNo, dueDays,dueMonths, DPPct, DPAmt, inputUN, markAsIns) " + _
  655.                                             "select     @bookingRef, DPNo, dueDays,dueMonths, DPPct, DPAmt, @inputUN, markAsIns " + _
  656.                                             "from       ms_termNoDP " + _
  657.                                             "where      termRef = @termRef And termNo = @termNo and projectRef = @projectRef " + _
  658.                                             "order      by DPNo "
  659.                     projectSqlCmd.Parameters.AddWithValue("@bookingRef", bookingRef)
  660.                     projectSqlCmd.Parameters.AddWithValue("@termRef", termRef)
  661.                     projectSqlCmd.Parameters.AddWithValue("@termNo", termNo)
  662.                     projectSqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  663.                     projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  664.                     projectSqlCmd.ExecuteNonQuery()
  665.  
  666.                     Dim strQueryPrice As New StringBuilder
  667.                     For i = 0 To dtPrice.Rows.Count - 1
  668.                         strQueryPrice.Append("insert into tr_bookingPrice(bookingRef, priceRef, priceType, priceIncVATAmt, taxPct, inputUN) values (@bookingRef, " + dtPrice.Rows(i).Item("priceRef").ToString + ", " + dtPrice.Rows(i).Item("priceType").ToString + ", " + dtPrice.Rows(i).Item("priceIncVATAmt").ToString.Replace(",", ".") + ", " + dtPrice.Rows(i).Item("taxPct").ToString.Replace(",", ".") + ", @inputUN) ")
  669.                     Next
  670.                     projectSqlCmd.Parameters.Clear()
  671.                     projectSqlCmd.Prepare()
  672.                     projectSqlCmd.CommandType = CommandType.Text
  673.                     projectSqlCmd.CommandText = strQueryPrice.ToString
  674.                     projectSqlCmd.Parameters.AddWithValue("@bookingRef", bookingRef)
  675.                     projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  676.                     projectSqlCmd.ExecuteNonQuery()
  677.  
  678.                     projectSqlCmd.Parameters.Clear()
  679.                     projectSqlCmd.Prepare()
  680.                     projectSqlCmd.CommandType = CommandType.Text
  681.                     projectSqlCmd.CommandText = "insert into lg_unitStatus (unitRef, unitStatusFr, unitStatusTo, inputUN) " + _
  682.                                             "select unitRef, unitStatus, @unitStatusTo, @inputUN " + _
  683.                                             "from   ms_unit where unitRef = @unitRef "
  684.                     projectSqlCmd.Parameters.AddWithValue("@unitStatusTo", _unitStatusSold)
  685.                     projectSqlCmd.Parameters.AddWithValue("@inputUN", _nataPropertyInputUN)
  686.                     projectSqlCmd.Parameters.AddWithValue("@unitRef", unitRef)
  687.                     projectSqlCmd.ExecuteNonQuery()
  688.  
  689.                     projectSqlCmd.Parameters.Clear()
  690.                     projectSqlCmd.Prepare()
  691.                     projectSqlCmd.CommandType = CommandType.Text
  692.                     projectSqlCmd.CommandText = "update ms_unit set unitStatus = @unitStatus where unitRef = @unitRef"
  693.                     projectSqlCmd.Parameters.AddWithValue("@unitStatus", _unitStatusSold)
  694.                     projectSqlCmd.Parameters.AddWithValue("@unitRef", unitRef)
  695.                     projectSqlCmd.ExecuteNonQuery()
  696.  
  697.                     projectSqlCmd.Parameters.Clear()
  698.                     projectSqlCmd.Prepare()
  699.                     projectSqlCmd.CommandType = CommandType.Text
  700.                     If Trim(itemTypeList) = "-" Then
  701.                         projectSqlCmd.CommandText = "update ms_unitItem set isBook = '1' where unitRef = @unitRef "
  702.                     Else
  703.                         projectSqlCmd.CommandText = "update ms_unitItem set isBook = '1' where unitRef = @unitRef and itemType in (" + itemTypeList + ") "
  704.                     End If
  705.                     projectSqlCmd.Parameters.AddWithValue("@unitRef", unitRef)
  706.                     projectSqlCmd.ExecuteNonQuery()
  707.  
  708.                 Catch ex As Exception
  709.                     Throw ex
  710.                 End Try
  711.  
  712.  
  713.  
  714.                 ' MAPPING BOOKING
  715.  
  716.                 sqlCmd.Parameters.Clear()
  717.                 sqlCmd.Prepare()
  718.                 sqlCmd.CommandType = CommandType.Text
  719.                 sqlCmd.CommandText = "select    isnull(max(bookingRef),0) + 1 as ref " + _
  720.                                     "from " + _NSMainDB + "..TR_memberBooking "
  721.                 sqlDr = sqlCmd.ExecuteReader
  722.                 If sqlDr.Read Then
  723.                     result = sqlDr("ref")
  724.                 End If
  725.                 sqlDr.Close()
  726.  
  727.  
  728.                 sqlCmd.Parameters.Clear()
  729.                 sqlCmd.Prepare()
  730.                 sqlCmd.CommandType = CommandType.Text
  731.                 sqlCmd.CommandText = "insert    into " + _NSMainDB + "..TR_memberBooking(bookingRef,dbMasterRef,projectRef,memberRef,projectBookingRef,bookingOrderCode,agentMemberRef, inputUN, buySource) " + _
  732.                                      "select @bookingRef,@dbMasterRef,@projectRef,@memberRef,@projectBookingRef, 'B' + right(cast(year(getdate()) As varchar(4)),2) + right('00' + cast(month(getdate()) as varchar(2)),2) +  " + _
  733.                                      "       right('0000' + cast(isnull(max(cast(right(bookingOrderCode,4) as integer)),0) + 1 as varchar(4)),4), @agentMemberRef, @inputUN, 2  " + _
  734.                                      "from  " + _NSMainDB + "..TR_memberBooking " + _
  735.                                      "where  cast('20' + substring(bookingOrderCode,2,2) as integer) = year(getdate())  " + _
  736.                                      "       and cast(substring(bookingOrderCode,4,2) as integer) = month(getdate()) "
  737.  
  738.                 projectBookingRef = bookingRef
  739.  
  740.                 sqlCmd.Parameters.AddWithValue("@dbMasterRef", dbMasterRef)
  741.                 sqlCmd.Parameters.AddWithValue("@projectRef", projectRef)
  742.                 sqlCmd.Parameters.AddWithValue("@bookingRef", result)
  743.                 sqlCmd.Parameters.AddWithValue("@memberRef", memberRef)
  744.                 sqlCmd.Parameters.AddWithValue("@projectBookingRef", bookingRef)
  745.                 sqlCmd.Parameters.AddWithValue("@agentMemberRef", agentMemberRef)
  746.                 sqlCmd.Parameters.AddWithValue("@inputUN", inputUN)
  747.                 sqlCmd.ExecuteNonQuery()
  748.  
  749.  
  750.                 sqlTrans.Commit()
  751.                 projectSqlTrans.Commit()
  752.             Catch ex As Exception
  753.                 sqlTrans.Rollback()
  754.                 projectSqlTrans.Rollback()
  755.                 result = ex.Message
  756.             End Try
  757.  
  758.             sqlCmd = Nothing
  759.             projectSqlCmd = Nothing
  760.  
  761.             sqlCon.Close()
  762.             projectSqlCon.Close()
  763.  
  764.             Return result
  765.         End Function
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement