Ejemplo n.º 1
0
def _addPayment(var):
    ROP = util.RESOP(var)
    r = util.newResAddPayment()
    quantity = var["quantity"]
    da = con.toDate(var["paymentdate"])
    descr = var["descr"]
    price = con.toB(var["price"])
    #     price = toB(1.00)
    pricelist = con.toB(var["pricefromlist"])
    total = con.toB(var["total"])
    #     total = toB(1.01)
    room = None
    guest = None
    rese = var["resename"]
    vat = var["vat"]
    serv = var["service"]
    if var[RLIST + "_lineset"]:
        room = var["roomid"]
        guest = var["guest_name"]
    if room == None:
        room = var["JDATELINE_LINE"]
    if guest == None:
        guest = util.RESFORM(var).findElem(rese).getCustomerName()
    r.setQuantity(quantity)
    r.setPrice(price)
    r.setPriceList(pricelist)
    r.setPriceTotal(total)
    r.setServDate(da)
    r.setDescription(descr)
    r.setService(serv)
    r.setGuestName(guest)
    r.setRoomName(room)
    if serv == None:
        r.setVat(vat)
    ROP.addResAddPayment(rese, r)
Ejemplo n.º 2
0
 def setAdvaData(self,reservation) :
     reservation.setAdvanceDeposit(con.toB(self.var[self.__advapay]))
     reservation.setTermOfAdvanceDeposit(con.toDate(self.var[self.__advadate]))
     if self.__resepay : reservation.setAdvancePayment(con.toB(self.var[self.__resepay]))
     if self.__resedate :
       pdate = self.var[self.__resedate]
       if pdate == None : pdate = con.today()      
       reservation.setDateofadvancePayment(con.toDate(pdate))
Ejemplo n.º 3
0
 def setAdvaData(self, reservation):
     reservation.setAdvanceDeposit(con.toB(self.var[self.__advapay]))
     reservation.setTermOfAdvanceDeposit(
         con.toDate(self.var[self.__advadate]))
     if self.__resepay:
         reservation.setAdvancePayment(con.toB(self.var[self.__resepay]))
     if self.__resedate:
         pdate = self.var[self.__resedate]
         if pdate == None: pdate = con.today()
         reservation.setDateofadvancePayment(con.toDate(pdate))
Ejemplo n.º 4
0
def dialogaction(action,var):
    cutil.printVar("testset",action,var)
    
    if action == "set" :
        var["glob1"] = "Hello"
        var["globint"] = None
        var["id"] = None
        
    if action == "setmap" :
        map = {}
        map['d1'] = datetime.date(2014,5,6)
        map['i1'] = 555
        map['null'] = None
        map['h1'] = 'Hello'
        map['b1'] = con.toB(5)
        R.saveMap(var,map)
        
    
    if action == "getmap" :
        map = R.getMap(var)
        print map
        d = map['d1']
        print d,type(d)
        assert datetime.date == type(d)
        l = map['i1']
        print l,type(l)
        assert long == type(l)
        bb = map['b1']
        print bb,type(bb)
        assert float == type(bb)
        var["OK"] = True
Ejemplo n.º 5
0
def dialogaction(action, var):
    cutil.printVar("testset", action, var)

    if action == "set":
        var["glob1"] = "Hello"
        var["globint"] = None
        var["id"] = None

    if action == "setmap":
        map = {}
        map['d1'] = datetime.date(2014, 5, 6)
        map['i1'] = 555
        map['null'] = None
        map['h1'] = 'Hello'
        map['b1'] = con.toB(5)
        R.saveMap(var, map)

    if action == "getmap":
        map = R.getMap(var)
        print map
        d = map['d1']
        print d, type(d)
        assert datetime.date == type(d)
        l = map['i1']
        print l, type(l)
        assert long == type(l)
        bb = map['b1']
        print bb, type(bb)
        assert float == type(bb)
        var["OK"] = True
Ejemplo n.º 6
0
def _constructPriceElemList(var):
    if var["JCHECK_MAP"].has_key(PRICEOTHERS) :
      values = cutil.concatDict(var["JCHECK_MAP"][_PRICES],var["JCHECK_MAP"][PRICEOTHERS])
    else : values = var["JCHECK_MAP"][_PRICES]  
    seq = util.SERVICES(var).getList() 
    a = cutil.createArrayList()
    for s in seq :
        id = s.getName()
        if values.has_key(id) :
            p = HotelPriceElem()
            p.setService(id)
            notnull = False
            for v in values[id] :
                if v["val"] == None : continue
                if v["id"] == _PRICE : p.setPrice(con.toB(v["val"]))
                if v["id"] == _PRICECHILDREN : p.setChildrenPrice(con.toB(v["val"]))
                if v["id"] == _PRICEEXTRABDEDS : p.setExtrabedsPrice(con.toB(v["val"]))
                notnull = True
            if notnull : a.add(p)
    return a        
Ejemplo n.º 7
0
def _constructPriceElemList(var):
    if var["JCHECK_MAP"].has_key(PRICEOTHERS):
        values = cutil.concatDict(var["JCHECK_MAP"][_PRICES],
                                  var["JCHECK_MAP"][PRICEOTHERS])
    else:
        values = var["JCHECK_MAP"][_PRICES]
    seq = util.SERVICES(var).getList()
    a = cutil.createArrayList()
    for s in seq:
        id = s.getName()
        if values.has_key(id):
            p = HotelPriceElem()
            p.setService(id)
            notnull = False
            for v in values[id]:
                if v["val"] == None: continue
                if v["id"] == _PRICE: p.setPrice(con.toB(v["val"]))
                if v["id"] == _PRICECHILDREN:
                    p.setChildrenPrice(con.toB(v["val"]))
                if v["id"] == _PRICEEXTRABDEDS:
                    p.setExtrabedsPrice(con.toB(v["val"]))
                notnull = True
            if notnull: a.add(p)
    return a
Ejemplo n.º 8
0
def _addPayment(var,billName,total,paymentmethod):
    r = util.RESFORM(var).findElem(rutil.getReseName(var))       
    RR = resstat.getResStatusR(var,r)
    li = []
    if RR.advancepaymentleft > 0 :
        payment = min(total,RR.advancepaymentleft) 
        li.append((payment,True))
        total = con.minusDecimal(total,payment)
    if total > 0 : li.append((total,False))
    
    for l in li :    
        p = util.newBillPayment()
        p.setBillName(billName)
        p.setPaymentMethod(paymentmethod)
        p.setDateOfPayment(cutil.toDate(cutil.today()))
        p.setPaymentTotal(con.toB(l[0]))         
        if (l[1]) : p.setAdvancepayment(True)
        util.PAYMENTOP(var).addPaymentForBill(billName,p)
Ejemplo n.º 9
0
def _addPayment(var, billName, total, paymentmethod):
    r = util.RESFORM(var).findElem(rutil.getReseName(var))
    RR = resstat.getResStatusR(var, r)
    li = []
    if RR.advancepaymentleft > 0:
        payment = min(total, RR.advancepaymentleft)
        li.append((payment, True))
        total = con.minusDecimal(total, payment)
    if total > 0: li.append((total, False))

    for l in li:
        p = util.newBillPayment()
        p.setBillName(billName)
        p.setPaymentMethod(paymentmethod)
        p.setDateOfPayment(cutil.toDate(cutil.today()))
        p.setPaymentTotal(con.toB(l[0]))
        if (l[1]): p.setAdvancepayment(True)
        util.PAYMENTOP(var).addPaymentForBill(billName, p)
Ejemplo n.º 10
0
def elempayment(action, var):
    cutil.printVar("elempayment", action, var)

    if action == "before" and var["JCRUD_DIALOG"] == "crud_add":
        var["paymentdate"] = cutil.today()
        b = BILLLIST(var).findElem(_getPayName(var))
        sumtotal = rutil.countTotal(var, b, rutil.getPayments(var))
        sumpay = rutil.countPayments(var, _getPayName(var))
        acc = con.minusDecimal(sumtotal, sumpay)
        if acc < 0: acc = None
        var["paymenttotal"] = acc
        cutil.setCopy(var, ["paymentdate", "paymenttotal"])

    if action == "crud_add" and not var["JCRUD_AFTERCONF"]:
        var["JYESNO_MESSAGE"] = "Do you want to add payment to this bill ?"
        var["JMESSAGE_TITLE"] = ""
        return

    if action == "crud_add" and var["JCRUD_AFTERCONF"]:
        p = util.newBillPayment()
        p.setBillName(_getPayName(var))
        p.setPaymentMethod(var["paymethod"])
        p.setDateOfPayment(con.toDate(con.today()))
        p.setPaymentTotal(con.toB(var["paymenttotal"]))
        PAYMENTOP(var).addPaymentForBill(_getPayName(var), p)
        var["JCLOSE_DIALOG"] = True
        _setChanged(var)
        return

    if action == "crud_remove" and not var["JCRUD_AFTERCONF"]:
        var["JYESNO_MESSAGE"] = "Are you sure to remove payment to this bill ?"
        var["JMESSAGE_TITLE"] = ""
        return

    if action == "crud_remove" and var["JCRUD_AFTERCONF"]:
        id = var["id"]
        PAYMENTOP(var).removePaymentForBill(_getPayName(var), id)
        _setChanged(var)
        var["JCLOSE_DIALOG"] = True
Ejemplo n.º 11
0
def elempayment(action,var) :  
    cutil.printVar("elempayment",action,var)
    
    if action == "before" and var["JCRUD_DIALOG"] == "crud_add" :
      var["paymentdate"] = cutil.today()
      b = BILLLIST(var).findElem(_getPayName(var))
      sumtotal = rutil.countTotal(var,b,rutil.getPayments(var))
      sumpay = rutil.countPayments(var,_getPayName(var))
      acc = con.minusDecimal(sumtotal,sumpay)
      if acc < 0 : acc = None
      var["paymenttotal"] = acc
      cutil.setCopy(var,["paymentdate","paymenttotal"])
      
    if action == "crud_add"  and not var["JCRUD_AFTERCONF"] :
      var["JYESNO_MESSAGE"] = "Do you want to add payment to this bill ?"
      var["JMESSAGE_TITLE"] = ""  
      return
      
    if action == "crud_add"  and var["JCRUD_AFTERCONF"] :
       p = util.newBillPayment()
       p.setBillName(_getPayName(var))
       p.setPaymentMethod(var["paymethod"])
       p.setDateOfPayment(con.toDate(con.today()))
       p.setPaymentTotal(con.toB(var["paymenttotal"]))
       PAYMENTOP(var).addPaymentForBill(_getPayName(var),p)       
       var["JCLOSE_DIALOG"] = True
       _setChanged(var)
       return
      
    if action == "crud_remove"  and not var["JCRUD_AFTERCONF"] :
      var["JYESNO_MESSAGE"] = "Are you sure to remove payment to this bill ?"
      var["JMESSAGE_TITLE"] = ""  
      return
  
    if action == "crud_remove"  and var["JCRUD_AFTERCONF"] :
      id = var["id"]
      PAYMENTOP(var).removePaymentForBill(_getPayName(var),id)
      _setChanged(var)
      var["JCLOSE_DIALOG"] = True                
Ejemplo n.º 12
0
def toB(value):
    return con.toB(value)
Ejemplo n.º 13
0
def toB(value):
    return con.toB(value)
Ejemplo n.º 14
0
def dialogaction(action, var):
    cutil.printVar("testresemail", action, var)

    if action == "createxml":
        R = util.ROOMLIST(var)
        C = util.CUSTOMERLIST(var)
        RES = util.RESFORM(var)

        E = util.newHotelRoom()
        E.setName("R01")
        R.addElem(E)
        CC = cust.newCustomer(var)
        CC.setDescription("I'm the customer")
        CC = C.addElem(CC)
        print CC.getName()
        dt = datetime.date(2014, 1, 2)
        dl = datetime.timedelta(1)
        #        dto = datetime.date(2010,1,5)
        #        q = rutil.createResQueryElem("R01",dfrom,dto)
        #        print q
        re = util.newResForm(var)
        re.setCustomerName(CC.getName())
        for i in range(10):
            r = util.newResAddPayment()
            r.setNoP(2)
            r.setPrice(con.toB(100.0))
            r.setPriceTotal(con.toB(100.0))
            r.setPriceList(con.toB(200.0))
            r.setRoomName("R01")
            r.setVat("7%")
            r.setResDate(con.toDate(dt))
            dt = dt + dl
            re.getResDetail().add(r)

        re = RES.addElem(re)
        print re.getName()
        s = rpdf.buildXMLReservation(var, re.getName())
        print s
        tt = pdfutil.xsltHtmlS("mailxslt/reseconfirmation.xslt", s)
        print tt
        H = hmail.HotelMail(var)
        #        H.    def sendMail(self,mtype,resname,custname,subject,content,to,froma,attachList=None,text=True):
        hh = H.sendMail(0, re.getName(), CC.getName(), "Reservation", tt,
                        "*****@*****.**", "hotel")
        assert hh != None
        var["OK"] = True

    if action == "listxml":
        H = hmail.HotelMail(var)
        li = H.getList()
        assert len(li) == 1
        for l in li:
            print l
            print l.getName()
            print l.getReseName()
        var["OK"] = True

    if action == "testfailed":
        H = hmail.HotelMail(var)
        li = H.getList()
        h = li[0]
        # should fail because to space in 'from' address
        hh = H.sendMail(0, h.getReseName(), h.getCustomerName(), "Reservation",
                        "Hi Hi - good joke", "*****@*****.**",
                        "Java hotel")
        assert hh != None
        mailName = hh.getName()
        print mailName
        M = H.getCMail(mailName)
        assert M != None
        res = M.getSendResult()
        print res
        assert res != None
        var["OK"] = True
Ejemplo n.º 15
0
def dialogaction(action, var):

    cutil.printVar("test48", action, var)

    if action == "test1":
        resename = var["resename"]
        R = util.RESFORM(var)
        ROP = util.RESOP(var)
        RR = R.findElem(resename)
        print RR
        lg = ROP.getResGuestList(resename)
        for g in lg:
            print g.getGuestName()
        gName = lg[0].getGuestName()
        print gName
        dli = RR.getResDetail()
        for l in dli:
            print g.getRoomName()
        roomName = dli[0].getRoomName()
        print roomName
        S = util.SERVICES(var)
        se = util.newOtherService(var)
        se.setName("addse")
        se.setVat("free")
        ase = S.addElem(se)
        rpa = util.newResAddPayment()
        rpa.setGuestName(gName)
        rpa.setRoomName(roomName)
        rpa.setResDate(con.javaDate(2015, 12, 23))
        rpa.setPriceList(con.toB(100.56))
        rpa.setPrice(con.toB(50))
        rpa.setPriceTotal(con.toB(200))
        rpa.setService(ase.getName())
        arpa = ROP.addResAddPayment(resename, rpa)
        print arpa.getName(), arpa.getId(), " ", arpa.getResDate()
        assert arpa.getId() != None
        li = cutil.JOURNAL(var).getList()
        for l in li:
            print l.getId()
        J = li[0]
        print J.getName(), J.getJournalType(), J.getJournalTypeSpec(
        ), J.getJournalElem1(), J.getJournalElem2()
        assert "ADDPAYMENT" == J.getJournalType()
        assert resename == J.getJournalElem1()
        assert arpa.getId() == int(J.getJournalElem2())
        var["OK"] = True

    if action == "test2":
        bname = var["bname"]
        p = util.newBillPayment()
        p.setBillName(bname)
        p.setPaymentMethod("Cache")
        p.setDateOfPayment(cutil.toDate(cutil.today()))
        p.setPaymentTotal(con.toB(1000))
        addP = util.PAYMENTOP(var).addPaymentForBill(bname, p)
        li = cutil.JOURNAL(var).getList()
        for l in li:
            print l.getId(), l.getJournalType(), l.getJournalElem1(
            ), l.getJournalElem2(), l.getCreationDate()
        J = li[0]
        print J.getName(), J.getJournalType(), J.getJournalTypeSpec(
        ), J.getJournalElem1(), J.getJournalElem2(),
        assert "ADDBILLPAYMENT" == J.getJournalType()
        assert addP.getId() == int(J.getJournalElem1())
        assert bname == J.getJournalElem2()
        # now remove
        util.PAYMENTOP(var).removePaymentForBill(bname, addP.getId())
        li = cutil.JOURNAL(var).getList()
        for l in li:
            print l.getId(), l.getJournalType(), l.getJournalElem1(
            ), l.getJournalElem2(), l.getCreationDate()
        J = li[0]
        print J.getName(), J.getJournalType(), J.getJournalTypeSpec(
        ), J.getJournalElem1(), J.getJournalElem2()
        assert "REMOVEBILLPAYMENT" == J.getJournalType()
        assert addP.getId() == int(J.getJournalElem1())
        assert bname == J.getJournalElem2()
        var["OK"] = True

    if action == "test3":
        li = cutil.JOURNAL(var).getList()
        JM = journalmess.JournalMess(var)
        for l in li:
            print l.getId(), l.getJournalType(), l.getJournalElem1(
            ), l.getJournalElem2(), l.getCreationDate()
            print "mess=", JM.getJournalDescr(l)
            assert None != JM.getJournalDescr(l)
        J = li[1]
        print J.getName(), J.getJournalType(), J.getJournalTypeSpec(
        ), J.getJournalElem1(), J.getJournalElem2()
        billname = J.getJournalElem2()
        print billname
        # remove bill and test message with removed bill
        util.BILLLIST(var).deleteElemByName(billname)
        li = cutil.JOURNAL(var).getList()
        JM = journalmess.JournalMess(var)
        for l in li:
            print l.getId(), l.getJournalType(), l.getJournalElem1(
            ), l.getJournalElem2(), l.getCreationDate()
            print "mess=", JM.getJournalDescr(l)
            assert None != JM.getJournalDescr(l)
        var["OK"] = True

    if action == "test4":
        li = cutil.JOURNAL(var).getList()
        JM = journalmess.JournalMess(var)
        for l in li:
            print l.getId(), l.getJournalType(), l.getJournalElem1(
            ), l.getJournalElem2(), l.getCreationDate()
            print "mess=", JM.getJournalDescr(l)
            assert None != JM.getJournalDescr(l)
        var["OK"] = True
Ejemplo n.º 16
0
   def run(self,var) :     
      # validate (under transaction !)
      if not _checkAvailibity(var) : return
      A = advarese.createAdvaRese(var)
      if not A.validate() : return
      # customer firstly
      service = var["roomservice"]
      pricelist = var["roompricelist"]
      D.putDataH(30,service)
      D.putDataH(31,pricelist)
      
      custo = cust.customerFromVar(var,CUST)
      R = util.CUSTOMERLIST(var)
      name = var["cust_name"]
      if not cutil.emptyS(name) :
          custo.setName(name)
          R.changeElem(custo)
      else :
#          custo.setGensymbol(True);
          name = R.addElem(custo).getName()
      cust.saveDefaCustomer(var,CUST)               
      # --- customer added
      
      resename = rutil.getReseName(var) 
      reservation = util.newResForm(var)
      if resename : reservation.setName(resename)
#      else : reservation.setGensymbol(True);
      reservation.setCustomerName(name)
      # advance      
      A = advarese.createAdvaRese(var)
      A.setAdvaData(reservation)
      # --
      service = var["roomservice"]
      nop = var["nop"]
      reselist = reservation.getResDetail()
      rlist = var["JLIST_MAP"][RESLIST]
      for re in rlist :
        
          (listprice,listpricechild,listpriceextra) = rutil.getPriceList(var,re["rlist_roompricelist"],re["rlist_roomservice"])

          r = util.newResAddPayment()
          r.setRoomName(re["resroomname"])
          r.setService(re["rlist_roomservice"])
          r.setResDate(con.toDate(re["resday"]))
          r.setPerperson(re["rlist_serviceperperson"])
          r.setPriceListName(re["rlist_roompricelist"])
          
          r.setNoP(re["rline_nop"])
          r.setPrice(con.toB(re["rlist_priceperson"]))
          r.setPriceList(listprice)
          
          util.setIntField(re,"rlist_noc",lambda v : r.setNoChildren(v))
          r.setPriceChildren(con.toB(re["rlist_pricechildren"]))
          r.setPriceListChildren(listpricechild)
          
          util.setIntField(re,"rlist_noe",lambda v : r.setNoExtraBeds(v))
          r.setPriceExtraBeds(con.toB(re["rlist_priceextra"]))
          r.setPriceListExtraBeds(listpriceextra)
          
          r.setPriceTotal(con.toB(re["rlist_pricetotal"]))
          
          reselist.add(r)
          
      RFORM = util.RESFORM(var)
      if resename : RFORM.changeElem(reservation)
      else : resename = RFORM.addElem(reservation).getName()
      
      reseparam.RESPARAM(resename).saveParam(var)
      
      # confirmed/not confirmed
      confirm.createC(var).changeReservation(resename)
      var["JCLOSE_DIALOG"] = True
      var["JREFRESH_DATELINE_reservation"] = ""
      
      var["JUPDIALOG_START"] = resename
      var["JUP_DIALOG"]="?sentconfirmationquestion.xml"