Ejemplo n.º 1
0
    def __loopFindideal(self, responseMessage, instanceVar):
        returnbtn = []
        i = 0
        k = -1
        while i < len(self.__containinsertlist):
            if self.__containinsertlist[i][0] == responseMessage:
                k = i
            else:
                returnbtn.append(self.__containinsertlist[i][0])
            i += 1
        del (self.__containinsertlist[k])

        returnlist = self.__DBinstance.getInfoIdeal(
            self.__containinsertlist, instanceVar.getUsergender())

        if returnlist == u"":
            return Create_ResponseMsg.create_btnmessage(
                u"조건에 맞는 이상형이 없습니다.\n 가장 중요하지 않은 조건을 선택해주세요", returnbtn)
        else:
            self.__isfinished = True
            imagesource = self.__createFinalimage(returnlist[2])
            return Create_ResponseMsg.create_imgbtnmessage(
                u"입력한 조건에 맞는 이상형은 " + returnlist[1] + u" 입니다.\n",
                u"http://13.125.39.205:5000/static/" + imagesource,
                [u"처음으로 돌아가기"])
Ejemplo n.º 2
0
    def __calcIdeal(self, responseMessage, instanceVar):
        self.__istwineye = responseMessage

        heightlist = self.__rangereturnlist(self.__height)
        agelist = self.__rangereturnlist(self.__age)

        dateobj = date.today()
        currentyear = int(dateobj.year) + 1
        tmpage = int(agelist[0])
        agelist[0] = unicode(currentyear - int(agelist[1]))
        agelist[1] = unicode(currentyear - tmpage)
        insertlist = []
        tmpinsertlist = [
            u"키", u"(P.height>=" + unicode(heightlist[0]) +
            u" AND P.height<=" + unicode(heightlist[1]) + u")"
        ]
        insertlist.append(tmpinsertlist)
        tmpinsertlist = [
            u"나이", u"(YEAR(P.age)>=" + unicode(agelist[0]) +
            u" AND YEAR(P.age)<=" + unicode(agelist[1]) + u")"
        ]
        insertlist.append(tmpinsertlist)
        tmpinsertlist = [
            u"얼굴상", u"(I1.Detail_category_name = '" + self.__facecolor + u"')"
        ]
        insertlist.append(tmpinsertlist)
        tmpinsertlist = [
            u"피부색", u"(I2.Detail_category_name = '" + self.__faceshape + u"')"
        ]
        insertlist.append(tmpinsertlist)
        tmpinsertlist = [
            u"쌍커풀 유무",
            u"(I3.Detail_category_name = '" + self.__istwineye + u"')"
        ]
        insertlist.append(tmpinsertlist)
        self.__containinsertlist = insertlist

        returnlist = self.__DBinstance.getInfoIdeal(
            insertlist, instanceVar.getUsergender())
        if returnlist == u"":
            return Create_ResponseMsg.create_btnmessage(
                u"조건에 맞는 이상형이 없습니다.\n 가장 중요하지 않은 조건을 선택해주세요",
                ["키", "나이", "얼굴상", "피부색", "쌍커풀 유무"])
        else:
            self.__isfinished = True
            imagesource = self.__createFinalimage(returnlist[2])
            return Create_ResponseMsg.create_imgbtnmessage(
                u"입력한 조건에 맞는 이상형은 " + returnlist[1] + u" 입니다.\n",
                u"http://13.125.39.205:5000/static/" + imagesource,
                [u"처음으로 돌아가기"])
Ejemplo n.º 3
0
 def __faceshapeMsg(self, responseMessage, instanceVar):
     self.__facecolor = responseMessage
     btns = []
     btns = self.__DBinstance.getDetaillist(u"얼굴상",
                                            instanceVar.getUsergender())
     return Create_ResponseMsg.create_btnmessage(
         "이상형으로 생각하는 상대의 얼굴상을 입력해주세요.", btns)
Ejemplo n.º 4
0
 def __istwineyeMsg(self, responseMessage, instanceVar):
     self.__faceshape = responseMessage
     btns = []
     btns = self.__DBinstance.getDetaillist(u"쌍커풀 유무",
                                            instanceVar.getUsergender())
     return Create_ResponseMsg.create_btnmessage(
         "이상형으로 생각하는 상대의 쌍커풀 유무를 입력해주세요.", btns)
Ejemplo n.º 5
0
	def __resultMsg(self,responseMessage):

		self.__idealname=responseMessage
		if self.__ismatchPossible()==False:
			return Create_ResponseMsg.create_btnmessage("궁합을 볼수 없는 조합입니다.",["처음으로 돌아가기","다른 조합 작성하기"])
		else:
			return self.__calcPercents() 
Ejemplo n.º 6
0
    def __ageMsg(self, responseMessage, instanceVar):
        tmpheight = self.__textparsing(responseMessage)
        if tmpheight == u"":
            instanceVar.setDetailOrder(instanceVar.getDetailOrder() - 1)
            return Create_ResponseMsg.create_message(
                "이상형으로 생각하는 키를 올바르게 입력해주세요.\n ex> 160~165, 160대 초반")

        iscorrectrange = self.__rangereturnlist(tmpheight)

        if int(str(iscorrectrange[0])) > int(str(iscorrectrange[1])):
            instanceVar.setDetailOrder(instanceVar.getDetailOrder() - 1)
            return Create_ResponseMsg.create_message(
                "이상형으로 생각하는 키를 올바르게 입력해주세요.\n ex> 160~165, 160대 초반")

        self.__height = tmpheight
        return Create_ResponseMsg.create_message(
            "이상형으로 생각하는 나이대를 입력해주세요.\n ex> 20~30, 20대 후반")
Ejemplo n.º 7
0
    def __showNameMatchRank(self):
        returnlist = []
        returnlist = self.__DBinstance.getNameMatchRank()
        returnMsg = u""
        for i in range(len(returnlist)):
            returnMsg += returnlist[i][0] + u" ♥ " + returnlist[i][
                1] + u" | " + unicode(returnlist[i][2]) + u"점\n"

        return Create_ResponseMsg.create_btnmessage(returnMsg, ["처음으로 돌아가기"])
Ejemplo n.º 8
0
    def __facecolorMsg(self, responseMessage, instanceVar):
        tmpage = self.__textparsing(responseMessage)
        if tmpage == u"":
            instanceVar.setDetailOrder(instanceVar.getDetailOrder() - 1)
            return Create_ResponseMsg.create_message(
                "이상형으로 생각하는 나이대를 올바르게 입력해주세요.\n ex> 20~30, 20대 후반")

        iscorrectrange = self.__rangereturnlist(tmpage)

        if int(str(iscorrectrange[0])) > int(str(iscorrectrange[1])):
            instanceVar.setDetailOrder(instanceVar.getDetailOrder() - 1)
            return Create_ResponseMsg.create_message(
                "이상형으로 생각하는 나이대를 올바르게 입력해주세요.\n ex> 20~30, 20대 후반")

        self.__age = tmpage
        btns = []
        btns = self.__DBinstance.getDetaillist(u"피부톤",
                                               instanceVar.getUsergender())
        return Create_ResponseMsg.create_btnmessage(
            "이상형으로 생각하는 상대의 피부톤을 입력해주세요.", btns)
Ejemplo n.º 9
0
    def __showIdealRank(self, gender):
        returnlist = []
        returnlist = self.__DBinstance.getIdealRank(gender)
        returnMsg = u""
        for i in range(len(returnlist)):
            returnMsg += returnlist[i][0] + u"  |  " + unicode(
                returnlist[i][2]) + u"점\n"

        imagesource = u""
        imagesource = self.__imageMerge(returnlist[0][1], returnlist[1][1])
        return Create_ResponseMsg.create_imgbtnmessage(
            returnMsg, u"http://13.125.39.205:5000/static/" + imagesource,
            ["처음으로 돌아가기"])
Ejemplo n.º 10
0
	def __usernameMsg(self):
		return Create_ResponseMsg.create_message("본인의 이름을 입력해주세요.")
Ejemplo n.º 11
0
 def __modeSelectMsg(self):
     return Create_ResponseMsg.create_btnmessage("보고싶은 통계 모드를 선택해주세요.",
                                                 ["이상형 순위", "이름 궁합점 순위"])
Ejemplo n.º 12
0
	def __calcPercents(self):
		string = ""
		if len(self.__username)>=len(self.__idealname):
			for i in range(0,len(self.__username)):
				self.__namelist.append(self.__username[i])
			j=0
			for i in range(0,len(self.__idealname)):
				self.__namelist.insert(2*j+1,self.__idealname[j])
				j+=1
		else:
			for i in range(0,len(self.__idealname)):
				self.__namelist.append(self.__idealname[i])
			j=0
			for i in range(0,len(self.__username)):
				self.__namelist.insert(2*j+1,self.__username[j])
				j+=1

		for i in range(0,len(self.__namelist)):
			tmplist = Hangulpy.decompose(self.__namelist[i])
			a = self.__chosung_count[self.__chosung_list.index(tmplist[0])]
			b = self.__jungsung_count[self.__jungsung_list.index(tmplist[1])]
			c = self.__jongsung_count[self.__jongsung_list.index(tmplist[2])]
			self.__countlist.append(a+b+c)
			string+=self.__namelist[i]+" "

		string+="\n"

		i=0
		loopcount = len(self.__countlist)-1
		while i<loopcount:
			ttmplist = []

			for j in range(0,i):
				string+="  "

			for j in range(0,len(self.__countlist)):
				string+=str(self.__countlist[j])+"  "

			for j in range(0,len(self.__countlist)-1):
				if len(self.__countlist)!=3:
					k = (self.__countlist[j]+self.__countlist[j+1])%10
				else:
					if j==0:
						k = self.__countlist[j]+self.__countlist[j+1]
						if k!=10:
							k%=10
					else:
						k = (self.__countlist[j]+self.__countlist[j+1])%10
				ttmplist.append(k)

			string+="\n"
			if i!=loopcount-1:
				self.__countlist=ttmplist
			i+=1

		string+=self.__username+u" 님과 "+self.__idealname+u" 님의 궁합은\n"
		string+=str(self.__countlist[0])+str(self.__countlist[1])+u"% 입니다!!!!"

		self.__DBinstance.insertNameMatchRank(self.__username,self.__idealname,str(self.__countlist[0])+str(self.__countlist[1]))

		return Create_ResponseMsg.create_btnmessage(string,["처음으로 돌아가기","다른 조합 작성하기"])
Ejemplo n.º 13
0
def __welcomeMsg():
    return Create_ResponseMsg.create_btnmessage(
        "환영합니다. FCDB 입니다.\n 이상형을 찾아드려요.\n 먼저 자신의 성별을 입력해주세요.", ["남", "여"])
Ejemplo n.º 14
0
def __modeselectMsg(responseMessage, instanceVar):
    instanceVar.setUsergender(responseMessage)
    return Create_ResponseMsg.create_btnmessage(
        "시작할 컨텐츠를 선택해주세요.", ["정보입력으로 이상형 찾기", "이상형 월드컵", "이름 궁합 점", "이상형 통계"])
Ejemplo n.º 15
0
 def __heightMsg(self):
     return Create_ResponseMsg.create_message(
         "이상형으로 생각하는 키를 입력해주세요.\n ex> 160~165, 160대 초반")
Ejemplo n.º 16
0
	def __idealnameMsg(self,responseMessage):
		self.__username=responseMessage
		return Create_ResponseMsg.create_message("이상형의 이름을 입력해주세요.")
Ejemplo n.º 17
0
	def __howmanyMsg(self):
		return Create_ResponseMsg.create_btnmessage(u"모드를 선택해주세요.",[u"16강",u"32강"])
Ejemplo n.º 18
0
	def __IdealMsg(self,responseMessage):

		if not responseMessage == u"16강" and not responseMessage == u"32강":
			person_id = -1
			if responseMessage == self.__ideallist[self.__indexnum-1][1]:
				person_id = self.__ideallist[self.__indexnum-1][0]
				del(self.__ideallist[self.__indexnum])
			else:
				person_id = self.__ideallist[self.__indexnum][0]
				del(self.__ideallist[self.__indexnum-1])

			self.__DBinstance.updateCount(person_id)
			
			if self.__indexnum == self.__limitnum/2:
				self.__limitnum = self.__indexnum
				self.__indexnum = 0

		
		if len(self.__ideallist)!=1:
			imagesource = u""
			imagesource = self.__imageMerge(self.__ideallist[self.__indexnum][2],self.__ideallist[self.__indexnum+1][2])
			btn_text=[]
			btn_text.append(self.__ideallist[self.__indexnum][1])
			btn_text.append(self.__ideallist[self.__indexnum+1][1])
			self.__indexnum+=1
			return Create_ResponseMsg.create_imgbtnmessage(self.__ideallist[self.__indexnum-1][1]+u" VS "+self.__ideallist[self.__indexnum][1],u"http://13.125.39.205:5000/static/"+imagesource,btn_text)
		else:
			person_id = self.__ideallist[0][0]
			name = self.__ideallist[0][1]
			age = self.__ideallist[0][3]
			height = self.__ideallist[0][4]

			dateobj = date.today()
			currentyear = int(dateobj.year)+1
			year = int(age.year)
			realage = currentyear-year
			agetext = unicode(str((realage/10)*10))
			if realage%10<4:
				agetext += u"대 초반"
			elif realage%10<7:
				agetext += u"대 중반"
			else:
				agetext += u"대 후반"

			heighttext=unicode(str((height/10)*10))
			if height%10<4:
				heighttext += u"cm 초반"
			elif height%10<7:
				heighttext += u"cm 중반"
			else:
				heighttext += u"cm 후반"

			returntext = u""
			returntext+=u"당신의 이상형은 "+name+u" 입니다!!\n"
			returntext+=u"당신의 취향은\n"
			returntext+=u"나이 : "+agetext+u"\n"
			returntext+=u"키 : "+heighttext+u"\n"

			infolist=[]
			infolist = self.__DBinstance.selectinfo(person_id)
			for i in range(len(infolist)):
				returntext+=infolist[i][0]+u" : "+infolist[i][1]+u"\n"
			returntext+=u"위의 조건을 만족하는 사람입니다.\n"
			returnbtn=[u"처음으로 돌아가기"]
			imagesource = self.__createFinalimage(self.__ideallist[0][2])

			return Create_ResponseMsg.create_imgbtnmessage(returntext,u"http://13.125.39.205:5000/static/"+imagesource,returnbtn)