问题列表 - 第22709页

信用卡系统实施?

我的网站将拥有一个基本上像信用卡一样工作的信用系统.每个用户都有无限制的信用额度,但在每周结束时,他们必须付清.例如,用户可能会在3月1日到7日之间进行多次购物,然后在3月7日结束时,他们会通过电子邮件发送一份发票,其中列出了本周所有购买的商品以及14日到期的总额.如果他们不付清,他们的帐户就会被取消,直到他们这样做.我只想试着解决如何实现这个问题.

我有他们所有购买的清单,这不是问题,但我只想弄清楚如何处理它.在第7天结束时,我可以设置一个cronjob来生成发票,基本上会有一个ID和到期日,然后我需要另一个多对多表来将所有购买链接到发票.然后,当用户将钱添加到他们的帐户时,我猜它是否适用于他们当前的未结帐单?如果他们在新发票到期时没有还清发票怎么办呢,那么现在他们有两个优秀的发票,我怎么知道哪个适用呢?或者,我是否对先前未完成的发票进行cronjob检查,取消它们,并将新项目添加到新发票中作为"余额转发(+兴趣)"?你如何将钱用在发票上?每笔付款是否必须与发票相关联,或者我可以将其存入他们的帐户信用,然后以某种方式弄清楚什么是已付款而哪些没有?如果他们在发票生成之前提前付款怎么办?我是否会在发票上从发票中扣除信用额,或在到期时的一周结束时扣除?有很多方法可以做到这一点......

任何人都可以描述他们会采取什么方法?


如果有人感兴趣,我的发票模型目前看起来如下(在Django中).InvoiceItems通过反向ID链接到实际的"产品"(FK在产品上,而不是发票项目以允许不同的项目类型(不同的表格)),但我想我会改变它.

class Invoice(models.Model):
    user = models.ForeignKey(User, related_name='invoices')
    created = models.DateTimeField(auto_now_add=True)
    updated = models.DateTimeField(auto_now=True)
    closed_date = models.DateTimeField(null=True, blank=True)
    due_date = models.DateTimeField(default=_next_weekday())
    payment_date = models.DateTimeField(null=True, blank=True) # date the invoice was fully paid
    total_payments = CurrencyField(default=0)
    interest_charges = CurrencyField(default=0)

    @property
    def days_overdue(self):
        dt = self.due_date - datetime.date.today()
        return dt.days if dt.days > 0 else 0

    @property
    def item_total(self):
        return self.items.filter(amount__gt=0).aggregate(t=Sum('amount'))['t'] or Decimal('0.00')

    @property
    def daily_interest(self):
        return _round((self.item_total - self.total_payments) * settings.INTEREST_RATE/Decimal('365.242199'))

    @property
    def subtotal(self):
        return self.item_total + self.interest_charges

    @property …
Run Code Online (Sandbox Code Playgroud)

credit-card design-decisions

5
推荐指数
1
解决办法
1263
查看次数

git适合没有服务器的一个开发人员

我是一个单独的开发人员,没有另一台计算机来备份我的项目.我正在寻找源控件,我遇到了git,但所有设置教程都是针对外部服务器的.我曾经使用SourceGear Vault,但是看到git受到了很多关注,我不妨熟悉它.我并不总是有互联网接入.

Git适合我吗?我可以指出正确的方向进行设置吗?

  1. Visual Studio 2008.
  2. Windows 7的.

git version-control visual-studio-2008 windows-7

7
推荐指数
1
解决办法
601
查看次数

在python中,len(list)做什么?

len(list)每次调用时是否计算列表的长度,还是返回内置计数器的值?
我有一个上下文,我需要每次通过循环检查列表的长度,如:

listData = []
for value in ioread():
    if len(listData)>=25:
        processlistdata()
        clearlistdata()
    listData.append(value)
Run Code Online (Sandbox Code Playgroud)

我应该检查len(listData)每次迭代,还是应该有一个列表长度的计数器?

python list

11
推荐指数
1
解决办法
2万
查看次数

使用核心情节在iPhone上实时绘图?

我想使用核心图来动态绘制线图.数据不会一次出现,我们将逐点接收动态.

是否可以使用核心绘图动态绘制图表,即在我们收到(x,y)点时逐点绘制?

请帮帮我,谢谢.

iphone core-plot ios

20
推荐指数
2
解决办法
2万
查看次数

.NET线程同步

我打算使用自动重置事件句柄进行线程间通信.

EventWaitHandle handle = new EventWaitHandle(false, EventResetMode.AutoReset); 
Run Code Online (Sandbox Code Playgroud)

我的生产者线程代码如下所示

produceSomething(); 
handle.Set();
Run Code Online (Sandbox Code Playgroud)

在消费者线程中,我必须每隔一分钟或当生产者被称为Set方法时下载数据

try 
{ 
    while(true) 
    { 
        handle.WaitOne(60000, false); 
        doSomething();  // Downloads data from Internet.
                        // Takes lot of time to complete it.
    } 
} 
catch(ThreadAbortException) 
{ 
    cleanup(); 
} 
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果消费者线程正在运行doSomething函数和生成器调用设置函数,那么自动重置事件对象的状态是什么?

我的要求是,一旦生成器调用设置方法,我必须从Internet下载新数据.如果doSomething函数正在运行,当Producer调用set方法时,我必须打断它并再次调用.

.net c#

6
推荐指数
1
解决办法
509
查看次数

如何在WPF应用程序中使用C#创建最近的文档历史记录

我在C#中制作一个WPF应用程序,我需要显示最近的文档历史记录(就像它发生在word,excel甚至visual studio中),显示列表中打开的最后5或10个文档.我完全不知道应该怎么做.请帮忙.请善良温和......我是一名资深人士,现在很难消化高科技会谈!:)

c# wpf recent-documents

10
推荐指数
2
解决办法
1万
查看次数

如何在F#中定义类型成员常量?

在C#中,可以像这样定义一个类型成员常量:

class Foo { public const int Bar = 600; }
Run Code Online (Sandbox Code Playgroud)

IL看起来像这样.

.field public static literal int32 Bar = int32(600)
Run Code Online (Sandbox Code Playgroud)

我如何在Visual F#/ FSharp中做同样的事情?

我试过这个无济于事:

[<Sealed>]
 type Foo() =

    [<Literal>]
    let Bar = 600
Run Code Online (Sandbox Code Playgroud)

.net f# const

19
推荐指数
2
解决办法
4813
查看次数

为什么要用分号?

除了主观视觉感知和在同一行上有多个语句的情况之外,还有任何理由在JavaScript语句结尾处使用分号吗?

看起来有大量证据表明使用分号是高度可选的,仅在少数特定情况下是必需的.

javascript coding-style

36
推荐指数
5
解决办法
1万
查看次数

如何从java扫描仪获取文件中的位置(字节位置)?

如何从java扫描仪获取文件中的位置(字节位置)?

Scanner scanner = new Scanner(new File("file"));
scanner.useDelimiter("abc");
scanner.hasNext();
String result = scanner.next();
Run Code Online (Sandbox Code Playgroud)

现在:如何获取文件中结果的位置(以字节为单位)?

使用scanner.match().start() 不是答案,因为它给出了内部缓冲区中的位置。

java position file java.util.scanner

5
推荐指数
2
解决办法
1万
查看次数

在哪里放置我的xUnit测试用于F#程序集?

我正在研究我的第一个"真正的"F#装配,并试图做正确的事情.

我设法让xUnit工作,但目前我的测试模块在同一个程序集中.这让我感到困扰,因为这意味着我将发布一个程序集,其中近一半的代码(和80%的API)是测试方法.

这样做的"正确"方法是什么?如果我把测试放在另一个组件中,我认为这意味着我必须暴露内部,我宁愿保密.

我知道在C#中有一个测试的朋友机制(如果这是正确的术语),F#中是否存在等价物?

或者,任何人都可以指出我正在"正确"完成这个项目的示例项目吗?

tdd f# projects-and-solutions xunit.net

3
推荐指数
1
解决办法
232
查看次数