def sendSMSForAPupil(s,user): #print s strings=s.split(':') idMark=int(strings[0]) setOfNumber =strings[1].split('*') setOfValue =strings[2].split('*') length = len(setOfNumber) m = Mark.objects.get(id=idMark) termNumber = m.term_id.number markStr1="" markStr2="" markStr3="" markStr4="" markStr5="" markStr6="" markStr7="" tbNam = None tbhk1 = None arrSent=['']*(3*MAX_COL+3) sents=m.sent.split('|') print "sent",m.sent for (i,s) in enumerate(sents): ss=s.split('*') for (j,a) in enumerate(ss): if i<3: arrSent[i*MAX_COL+j+1]=a else: arrSent[3*MAX_COL+i-2]=a for i in range(length-1): number= int(setOfNumber[i]) value = setOfValue[i] if number <= MAX_COL : markStr1+=value+" " elif number <= 2*MAX_COL : markStr2+=value+" " elif number <= 3*MAX_COL : markStr3+=value+" " elif number == 3*MAX_COL+1 : markStr4+=value+" " elif number == 3*MAX_COL+2 : markStr5+=value+" " tbhk1 =Mark.objects.get(subject_id=m.subject_id,student_id=m.student_id,term_id__number=1) tempSent = tbhk1.sent tempSent=tempSent.split('|') tempSent[4]="1" tbhk1.sent = '|'.join(tempSent) continue elif number == 3*MAX_COL+3 : markStr6+=value+" " elif number == 3*MAX_COL+4 : markStr7+=value+" " tbNam = TKMon.objects.get(subject_id=m.subject_id,student_id=m.student_id) tbNam.sent=True continue if number==3*MAX_COL+3: number = 3*MAX_COL+2 arrSent[number]='1' print to_en1(markStr1) smsString=u'Diem mon '+to_en1(m.subject_id.name)+ u' cua hs ' smsString+=to_en1(m.student_id.last_name)+" "+to_en1(m.student_id.first_name)+" nhu sau: " termNumber = m.term_id.number print smsString if markStr1 !="": smsString+="\nmieng:" + markStr1 if markStr2 !="": smsString+="\ndiem 15 phut:" + markStr2 if markStr3 !="": smsString+="\ndiem 45 phut:" + markStr3 if markStr4 !="": smsString+="\nthi cuoi ky:" + markStr4 if markStr5 !="": smsString+="\nTBHK I:" + markStr5 if markStr6 !="" : smsString+="\nTBHK II:" + markStr6 if markStr7 !="" : smsString+="\nTB ca nam:" + markStr7 print markStr1 print markStr2 print markStr3 print markStr4 print markStr5 print markStr6 print markStr7 sent='' for i in range(3): tempSent='' pre=1 for j in range(1,MAX_COL+1): if arrSent[i*MAX_COL+j]!='': tempSent+=(j-pre)*'*'+arrSent[i*MAX_COL+j] pre=j sent+=tempSent+'|' sent+=arrSent[3*MAX_COL+1]+'|'+arrSent[3*MAX_COL+2] m.sent=sent print smsString print m.sent if m.student_id.sms_phone: try: """ m.save() if tbNam!=None: tbNam.save() if tbhk1 != None: tbhk1.save() """ sent1=sendSMS(m.student_id.sms_phone,smsString,user) if sent1=='1': m.save() if tbNam != None: tbNam.save() if tbhk1 != None: tbhk1.save() return str(idMark) except Exception as e: pass #print e return ''
def sendSMSForAPupil(s,user): #print s strings=s.split(':') idMark=int(strings[0]) setOfNumber =strings[1].split('*') setOfValue =strings[2].split('*') length = len(setOfNumber) m = Mark.objects.get(id=idMark) termNumber = m.term_id.number markStr1="" markStr2="" markStr3="" markStr4="" markStr5="" markStr6="" markStr7="" print m.sent_mark for i in range(length-1): number= int(setOfNumber[i]) value = setOfValue[i] m.sent_mark=m.sent_mark[:number-1]+'1'+m.sent_mark[number:] if (termNumber==2) & (number==17) : number=18 elif (termNumber==2) & (number==18): number=17 if number <6 : markStr1+=value+" " elif number <11 : markStr2+=value+" " elif number <16 : markStr3+=value+" " elif number ==16: markStr4+=value+" " elif number ==17: markStr5+=value+" " elif number ==18: markStr6+=value+" " elif number ==19: markStr7+=value+" " smsString=u'Diem mon '+to_en1(m.subject_id.name)+ u' cua hs ' smsString+=to_en1(m.student_id.last_name)+" "+to_en1(m.student_id.first_name)+" nhu sau: " termNumber = m.term_id.number if markStr1 !="": smsString+="\nmieng:" + markStr1 if markStr2 !="": smsString+="\ndiem 15 phut:" + markStr2 if markStr3 !="": smsString+="\ndiem 45 phut:" + markStr3 if markStr4 !="": smsString+="\nthi cuoi ky:" + markStr4 if markStr5 !="": if termNumber==2: smsString+="\nTBHK II:" + markStr5 else: smsString+="\nTBHK I:" + markStr5 if markStr6 !="": smsString+="\nTBHK I:" + markStr6 if markStr7 !="": smsString+="\nTB ca nam:" + markStr7 print m.student_id.sms_phone if m.student_id.sms_phone: try: sent=sendSMS(m.student_id.sms_phone,smsString,user) if sent=='1': m.save() return str(idMark) except Exception as e: pass #print e print smsString print len(smsString) print user return ''