t1.*,t2.warehouse_name,t3.sku_title_cn as 'sku_name',t4.create_time,
t1.*,t2.warehouse_name,t3.sku_title_cn as 'sku_name',t4.create_time,t3.buyer_name,
(t5.quantity_safe_inventory) as 'quantity_safe_inventory', -- 日均加权销量
(t5.quantity_out_stock) as 'quantity_out_stock', -- 缺货
(t5.quantity_transfer) as 'quantity_transfer', -- 调拨在途
...
...
@@ -293,6 +293,19 @@ where 1=1 ";
parameters.Add("buyer_name",m.purchase_user);
}
if(m.is_multiple_warehouse)
{
sql+=@"
and EXISTS (
select * from (
select t1.bailun_sku from dc_auto_purchase_advise_detailed as t1
left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code
GROUP BY t1.bailun_sku
HAVING count(DISTINCT t2.area_name)>1
) as t_temp where t_temp.bailun_sku=t1.bailun_sku
)";
}
if(m.isSum)
...
...
@@ -385,16 +398,27 @@ left join dc_auto_purchase_advise as t2 on t1.main_id = t2.id where t1.bailun_sk
if(oldData==null)thrownewException("数据异常");
dc_auto_purchase_adviseoldMainData=_connection.QueryFirstOrDefault<dc_auto_purchase_advise>(" select * from dc_auto_purchase_advise where id=@id ",new{id=oldData.main_id});
_connection.Execute(" update dc_auto_purchase_advise_detailed set quantity_actual=@quantity_actual where id=@id ",new{quantity_actual=quantity_actual,id=id});
@@ -408,5 +432,14 @@ left join dc_auto_purchase_advise as t2 on t1.main_id = t2.id
where t1.warehouse_code=@warehousecode and t1.bailun_sku=@sku and t2.create_time>=@b_create_time and t2.create_time<=@e_create_time order by t2.create_time desc limit 1 ";
conn.Execute(" update dc_auto_purchase_advise_detailed set quantity_actual=quantity_final_advise where quantity_actual<=0 and id in @ids ",new{ids=datas.Select(s=>s.id).ToList()},transaction);
conn.Execute(" update dc_auto_purchase_advise_detailed set quantity_actual=quantity_final_advise where quantity_actual<=0 and id in @ids ",new{ids=datas.Select(s=>s.id).ToList()},transaction);
varresult=ApiServices.PushBuyPlan(data);
if(result.IsSuccessed)
{
// 把相关的采购明细都标记成已推送
conn.Execute(" update dc_auto_purchase_advise_detailed set ispush=1 where id in @ids ",new{ids=item.Select(s=>s.id).ToArray()});
conn.Execute(" update dc_auto_purchase_advise_detailed set ispush=1,plan_nos=@plan_nos where id in @ids ",new{ids=item.Select(s=>s.id).ToArray(),plan_nos=result.planNo});
}
planNos.Add(result.planNo);
}
conn.Execute(" update dc_auto_purchase_advise set buy_sys_plan_no=@buy_sys_plan_no,push_time=@push_time ",new{buy_sys_plan_no=string.Join(",",planNos),push_time=now},transaction);
//conn.Execute(" update dc_auto_purchase_advise set buy_sys_plan_no=CONCAT(buy_sys_plan_no,@buy_sys_plan_no),push_time=@push_time where where @detailed_ids ", new { buy_sys_plan_no = string.Join(",", planNos), push_time = now, detailed_ids = item.Select(s => s.id).ToArray() }, transaction);