Merge branch 'develop' of sika:vtmk/web2.0 into develop
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.9 on 2016-10-04 12:40
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('members', '0004_auto_20160915_1606'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='member',
|
||||
name='paid',
|
||||
field=models.DateTimeField(blank=True, default=None, null=True),
|
||||
),
|
||||
]
|
||||
+27
-8
@@ -1,5 +1,6 @@
|
||||
from django.db import models
|
||||
from django.utils import timezone
|
||||
from datetime import datetime
|
||||
from io import StringIO
|
||||
import csv
|
||||
|
||||
@@ -15,6 +16,7 @@ class Member(models.Model):
|
||||
AYY = models.BooleanField(default=False)
|
||||
jas = models.BooleanField(default=False)
|
||||
created = models.DateTimeField(default=timezone.now)
|
||||
paid = models.DateTimeField(default=None,null=True,blank=True)
|
||||
|
||||
def get_dict(self):
|
||||
return {
|
||||
@@ -25,7 +27,8 @@ class Member(models.Model):
|
||||
'POR':self.POR,
|
||||
'AYY':self.AYY,
|
||||
'jas':self.jas,
|
||||
'created':self.created.isoformat(' '),
|
||||
'created':date2str(self.created),
|
||||
'paid':date2str(self.paid),
|
||||
}
|
||||
|
||||
@classmethod
|
||||
@@ -36,16 +39,17 @@ class Member(models.Model):
|
||||
|
||||
def update_from_dict(self,d):
|
||||
dmap = {
|
||||
'first_name': 'first_name',
|
||||
'last_name': 'last_name',
|
||||
'email': 'email',
|
||||
'POR': 'POR',
|
||||
'AYY': 'AYY',
|
||||
'jas': 'jas',
|
||||
'first_name': reverseMap('first_name'),
|
||||
'last_name': reverseMap('last_name'),
|
||||
'email': reverseMap('email'),
|
||||
'POR': reverseMap('POR'),
|
||||
'AYY': reverseMap('AYY'),
|
||||
'jas': reverseMap('jas'),
|
||||
'paid': reverseMap('paid',str2date),
|
||||
}
|
||||
for k,v in d.items():
|
||||
try:
|
||||
self.__setattr__(dmap[k],v)
|
||||
self.__setattr__(dmap[k].key,dmap[k].parser(v))
|
||||
except KeyError:
|
||||
pass
|
||||
self.save()
|
||||
@@ -66,6 +70,7 @@ class Member(models.Model):
|
||||
POR=row[3],
|
||||
AYY=row[4].lower() in ['yes','y','1','true',"kyllä", "khyl"],
|
||||
jas=row[5].lower() in ['yes','y','1','true',"kyllä", "khyl"],
|
||||
paid = timezone.now()
|
||||
)
|
||||
print("added obj {}".format(obj))
|
||||
except:
|
||||
@@ -85,3 +90,17 @@ class MemberRequest(models.Model):
|
||||
'id': self.id,
|
||||
'member': self.member.get_dict(),
|
||||
}
|
||||
|
||||
def date2str(date):
|
||||
if not date:
|
||||
return 'Ei koskaan'
|
||||
return date.strftime("%Y-%m-%d %H:%M:%S")
|
||||
|
||||
def str2date(s):
|
||||
return datetime.strptime(s,"%Y-%m-%d %H:%M:%S")
|
||||
|
||||
class reverseMap:
|
||||
def __init__(self, key, parser=lambda x:x):
|
||||
self.key = key
|
||||
self.parser = parser
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
<th>JAS-listalla</th>
|
||||
<th>Asuinpaikka</th>
|
||||
<th>Lisätty</th>
|
||||
<th>Maksanut</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -21,6 +22,10 @@
|
||||
<td>{{ x.jas }}</td>
|
||||
<td>{{ x.POR }}</td>
|
||||
<td>{{ x.created }}</td>
|
||||
<td>{{ x.paid }}</td>
|
||||
<td>
|
||||
<input type="button" value="Päivitä maksu" class="btn btn-success" ng-click="updatePayment(x.id)" />
|
||||
</td>
|
||||
<td>
|
||||
<a href="#/edit/{{x.id}}"<input type="button" value="Edit" class="btn btn-info">Muokkaa</input></a>
|
||||
<input type="button" value="Poista" class="btn btn-danger" confirmed-click="delete_member(x.id)" ng-confirm-click="Are you sure?"/>
|
||||
|
||||
@@ -78,6 +78,11 @@ app.controller("getController", function($scope, $http, $window, $location){
|
||||
});
|
||||
};
|
||||
$scope.getFunction();
|
||||
$scope.updatePayment= function(id){
|
||||
$http.put("/members/api/member/"+id,{paid:moment().format("YYYY-MM-DD kk:mm:ss") }).then(function(resp){
|
||||
$scope.getFunction();
|
||||
});
|
||||
}
|
||||
$scope.delete_member = function(id) {
|
||||
$http.delete("/members/api/member/" + id).then(
|
||||
function(response) {
|
||||
@@ -155,4 +160,4 @@ app.controller("addManyController", function($scope, $http, $window) {
|
||||
}
|
||||
);
|
||||
};
|
||||
});
|
||||
});
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -20,6 +20,7 @@
|
||||
<script src="/static/js/appconfig.js"></script>
|
||||
<script src="/static/js/members_routers.js"></script>
|
||||
<script src="/static/js/members_controllers.js"></script>
|
||||
<script src="/static/js/moment.js"></script>
|
||||
<link href="/static/css/simple-sidebar.css" rel="stylesheet">
|
||||
|
||||
</head>
|
||||
|
||||
Reference in New Issue
Block a user