62,046
社区成员
发帖
与我相关
我的任务
分享
[
{
'warehouse': u'仓库03 - IL',
'ac_qty': 12.0
},
{
'warehouse': u'仓库01 - IL',
'ac_qty': 14.0
},
{
'warehouse': u'仓库02 - IL',
'ac_qty': 18.0
}
]
public static void Main()
{
//测试数据
List<Stock> sl = new List<Stock>(){
new Stock(){id=1,total=1.3},
new Stock(){id=2,total=1.7},
new Stock(){id=3,total=13},
};
//出货量
double r = double.Parse(Console.ReadLine());
//计数器
double currentTotal=0;
List<Stock> rl = new List<Stock>();
for (int i = 0; i < sl.Count; i++)
{
if (r <= 0)
break;
r = r - sl[i].total;
currentTotal=r>=0?sl[i].total:(sl[i].total+r);
rl.Add(new Stock() { id = sl[i].id, total = currentTotal });
}
//打印结果
foreach (var item in rl)
{
Console.WriteLine("仓库编号:"+item.id+"-----仓库出货量:"+item.total);
}
Console.ReadLine();
}
public class Stock
{
public int id { get; set; }
public double total { get; set; }
}
function getQty_ByBetchNo(batch_no,qty){
//到数据库查找仓库剩余量
qty_list = [{'warehouse':u'仓库03 - IL','ac_qty':12.0},{'warehouse':u'仓库01 - IL','ac_qty':14.0},{'warehouse':u'仓库02 - IL','ac_qty':18.0}];
qty_two = [];
sum_qty = 0.000;
for (var x = 0; x < qty_list.length;x++) {
warehouse_qty = {}
if (sum_qty == qty){
break;
}
else if (sum_qty == 0.000){
if (qty <= qty_list[x]['ac_qty']){//库1可以满足出库量
warehouse_qty['warehouse'] = qty_list[x]['warehouse'];
warehouse_qty['actual_qty'] = qty;
sum_qty = qty;
qty_two.append(warehouse_qty);
}else{//库1不满足出库量
warehouse_qty['warehouse'] = qty_list[x]['warehouse'];
warehouse_qty['actual_qty'] = qty_list[x]['ac_qty'];
sum_qty = sum_qty + qty_list[x]['ac_qty'];
qty_two.append(warehouse_qty);
}
}
else if (sum_qty > 0.000){
sy_qty = qty - sum_qty;
if (qty_list[x]['ac_qty'] >= sy_qty){//本库满足剩余的发货量
warehouse_qty['warehouse'] = qty_list[x]['warehouse'];
warehouse_qty['actual_qty'] = sy_qty;
sum_qty = sum_qty + sy_qty;
qty_two.append(warehouse_qty);
}
else{//本库不满足剩余的发货量
warehouse_qty['warehouse'] = qty_list[x]['warehouse'];
warehouse_qty['actual_qty'] = qty_list[x]['ac_qty'];
sum_qty = sum_qty + qty_list[x]['ac_qty'];
qty_two.append(warehouse_qty);
}
}
}
return qty_two;
}