|
|
@@ -133,6 +133,23 @@ namespace Business.ResourceExamineManagement
|
|
|
private readonly IMongoDB<srm_pr_main> _srm_pr_main;
|
|
|
private IRepository<srm_pr_main, long> _mysql_srm_pr_main;
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 采购订单表
|
|
|
+ /// </summary>
|
|
|
+ private readonly IMongoDB<srm_po_main> _srm_po_main;
|
|
|
+ private IRepository<srm_po_main, long> _mysql_srm_po_main;
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 采购订单明细表
|
|
|
+ /// </summary>
|
|
|
+ private readonly IMongoDB<srm_po_list> _srm_po_list;
|
|
|
+ private IRepository<srm_po_list, long> _mysql_srm_po_list;
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 采购订单占用详情
|
|
|
+ /// </summary>
|
|
|
+ private readonly IMongoDB<srm_po_occupy> _srm_po_occupy;
|
|
|
+ private IRepository<srm_po_occupy, long> _mysql_srm_po_occupy;
|
|
|
|
|
|
/// <summary>
|
|
|
/// 委外工单
|
|
|
@@ -175,13 +192,15 @@ namespace Business.ResourceExamineManagement
|
|
|
/// </summary>
|
|
|
private readonly IRepository<mes_mooccupy, long> _mysql_mes_mooccupy;
|
|
|
/// <summary>
|
|
|
- /// 销售工单
|
|
|
+ /// 销售订单
|
|
|
/// </summary>
|
|
|
private readonly IRepository<crm_seorder, long> _mysql_crm_seorder;
|
|
|
+ private readonly IMongoDB<crm_seorder> _crm_seorder;
|
|
|
/// <summary>
|
|
|
- /// 销售工单
|
|
|
+ /// 销售订单明细
|
|
|
/// </summary>
|
|
|
private readonly IRepository<crm_seorderentry, long> _mysql_crm_seorderentry;
|
|
|
+ private readonly IMongoDB<crm_seorderentry> _crm_seorderentry;
|
|
|
|
|
|
/// <summary>
|
|
|
/// 生产工单主表
|
|
|
@@ -211,6 +230,11 @@ namespace Business.ResourceExamineManagement
|
|
|
IMongoDB<ic_factory_details> ic_factory_details,
|
|
|
IMongoDB<mes_oorder> mes_oorder,
|
|
|
IMongoDB<srm_pr_main> srm_pr_main,
|
|
|
+ IMongoDB<srm_po_main> srm_po_main,
|
|
|
+ IMongoDB<srm_po_list> srm_po_list,
|
|
|
+ IMongoDB<crm_seorder> crm_seorder,
|
|
|
+ IMongoDB<crm_seorderentry> crm_seorderentry,
|
|
|
+ IMongoDB<srm_po_occupy> srm_po_occupy,
|
|
|
//IMongoDB<ic_substitute> ic_substitute,
|
|
|
//IMongoDB<ic_substitute_all> ic_substitute_all,
|
|
|
//IMongoDB<ic_substitute_all_dtl> ic_substitute_all_dtl,
|
|
|
@@ -232,7 +256,10 @@ namespace Business.ResourceExamineManagement
|
|
|
IRepository<mes_morder, long> mysql_mes_morder,
|
|
|
IRepository<mes_moentry, long> mysql_mes_moentry,
|
|
|
IRepository<mes_process, long> mysql_mes_process,
|
|
|
- IRepository<mes_tech_process, long> mysql_mes_tech_process
|
|
|
+ IRepository<mes_tech_process, long> mysql_mes_tech_process,
|
|
|
+ IRepository<srm_po_main, long> mysql_srm_po_main,
|
|
|
+ IRepository<srm_po_list, long> mysql_srm_po_list,
|
|
|
+ IRepository<srm_po_occupy, long> mysql_srm_po_occupy
|
|
|
)
|
|
|
{
|
|
|
_mes_technique = mes_technique;
|
|
|
@@ -247,6 +274,11 @@ namespace Business.ResourceExamineManagement
|
|
|
_ic_factory_details = ic_factory_details;
|
|
|
_mes_oorder = mes_oorder;
|
|
|
_srm_pr_main = srm_pr_main;
|
|
|
+ _srm_po_main = srm_po_main;
|
|
|
+ _srm_po_list = srm_po_list;
|
|
|
+ _crm_seorder = crm_seorder;
|
|
|
+ _crm_seorderentry = crm_seorderentry;
|
|
|
+ _srm_po_occupy= srm_po_occupy;
|
|
|
//_ic_substitute = ic_substitute;
|
|
|
//_ic_substitute_all = ic_substitute_all;
|
|
|
//_ic_substitute_all_dtl = ic_substitute_all_dtl;
|
|
|
@@ -269,6 +301,9 @@ namespace Business.ResourceExamineManagement
|
|
|
_mysql_mes_moentry = mysql_mes_moentry;
|
|
|
_mysql_mes_process = mysql_mes_process;
|
|
|
_mysql_mes_tech_process = mysql_mes_tech_process;
|
|
|
+ _mysql_srm_po_main = mysql_srm_po_main;
|
|
|
+ _mysql_srm_po_list = mysql_srm_po_list;
|
|
|
+ _mysql_srm_po_occupy= mysql_srm_po_occupy;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
@@ -390,6 +425,47 @@ namespace Business.ResourceExamineManagement
|
|
|
mes_moentry.ForEach(item => { item.bang_id = bangid; });
|
|
|
await _mes_moentry.InsertMany(mes_moentry);
|
|
|
}
|
|
|
+
|
|
|
+ //TODO:要不要根据某些条件只同步有效的数据
|
|
|
+ //销售订单
|
|
|
+ var crm_seorder = _mysql_crm_seorder.GetListAsync(x => x.factory_id == factoryId).Result;
|
|
|
+ if (crm_seorder.Count > 0)
|
|
|
+ {
|
|
|
+ crm_seorder.ForEach(item => { item.bang_id = bangid; });
|
|
|
+ await _crm_seorder.InsertMany(crm_seorder);
|
|
|
+ }
|
|
|
+
|
|
|
+ //销售订单明细
|
|
|
+ var crm_seorderentry = _mysql_crm_seorderentry.GetListAsync(x => x.factory_id == factoryId).Result;
|
|
|
+ if (crm_seorderentry.Count > 0)
|
|
|
+ {
|
|
|
+ crm_seorderentry.ForEach(item => { item.bang_id = bangid; });
|
|
|
+ await _crm_seorderentry.InsertMany(crm_seorderentry);
|
|
|
+ }
|
|
|
+
|
|
|
+ //采购订单
|
|
|
+ var srm_po_main = _mysql_srm_po_main.GetListAsync(x => x.factory_id == factoryId).Result;
|
|
|
+ if (crm_seorderentry.Count > 0)
|
|
|
+ {
|
|
|
+ srm_po_main.ForEach(item => { item.bang_id = bangid; });
|
|
|
+ await _srm_po_main.InsertMany(srm_po_main);
|
|
|
+ }
|
|
|
+
|
|
|
+ //采购订单明细
|
|
|
+ var srm_po_list = _mysql_srm_po_list.GetListAsync(x => x.factory_id == factoryId).Result;
|
|
|
+ if (srm_po_list.Count > 0)
|
|
|
+ {
|
|
|
+ srm_po_list.ForEach(item => { item.bang_id = bangid; });
|
|
|
+ await _srm_po_list.InsertMany(srm_po_list);
|
|
|
+ }
|
|
|
+
|
|
|
+ //采购订单占用详情
|
|
|
+ var srm_po_occupy = _mysql_srm_po_occupy.GetListAsync(x => x.factory_id == factoryId).Result;
|
|
|
+ if (srm_po_occupy.Count > 0)
|
|
|
+ {
|
|
|
+ srm_po_occupy.ForEach(item => { item.bang_id = bangid; });
|
|
|
+ await _srm_po_occupy.InsertMany(srm_po_occupy);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
@@ -1374,112 +1450,190 @@ namespace Business.ResourceExamineManagement
|
|
|
Select(x => new ICItemLeadTimeDto { item_id = x.icitem_id, transportation_leadtime = x.transportation_leadtime, stock_leadtime = x.stock_leadtime, production_leadtime = x.production_leadtime }).AsQueryable<ICItemLeadTimeDto>().ToListAsync();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
/// <summary>
|
|
|
- /// 生成委外工单
|
|
|
+ /// 检查在途量
|
|
|
/// </summary>
|
|
|
- /// <param name="returnlist"></param>
|
|
|
- /// <param name="factoryid"></param>
|
|
|
- private void CreateMesOOder(List<BomChildExamineDto> returnlist, long factoryid)
|
|
|
+ /// <param name="returnlist">物料列表</param>
|
|
|
+ /// <param name="factoryid">工厂id</param>
|
|
|
+ /// <param name="deliveryDate">销售订单交付日期</param>
|
|
|
+ /// <returns></returns>
|
|
|
+ private async Task<List<ICItemDateDto>> CheckOnOrder(List<BomChildExamineDto> returnlist, long factoryid,DateTime deliveryDate)
|
|
|
{
|
|
|
- List<mes_oorder> oOderList = new List<mes_oorder>();
|
|
|
+ //ToDo:企业Id,数据状态过滤以及isdeleted
|
|
|
+ var po_list=_srm_po_list.Find(p => returnlist.Select(x => x.item_id).Contains(p.icitem_id) && p.factory_id == factoryid && p.rarrdate>=DateTime.Now && p.rarrdate<deliveryDate).Result;
|
|
|
+ var wwlist=new List<BomChildExamineDto>();//需要生成委外工单的物料信息
|
|
|
+ var prlist = new List<BomChildExamineDto>();//需要生成采购申请单的物料信息
|
|
|
+ var itemlist = new List<ICItemDateDto>();//需要生成采购申请单的物料信息
|
|
|
foreach (var item in returnlist)
|
|
|
{
|
|
|
- mes_oorder oOrder = new mes_oorder();
|
|
|
- oOrder.GenerateNewId();
|
|
|
- oOrder.oorder_no = getOrderNum("WW");//生产工单编号
|
|
|
- oOrder.oorder_type = "委外工单";//生产工单类型
|
|
|
- oOrder.oorder_date = DateTime.Now;//委外订单日期
|
|
|
- oOrder.oorder_state = "已提交";//订单状态
|
|
|
- oOrder.ooentry_prd = 10000;//生产组织
|
|
|
- oOrder.ooentry_prdname = "1000";//生产组织名称
|
|
|
- oOrder.ooentry_wrkc = 10000;//工作中心id
|
|
|
- oOrder.ooentry_wrkcname = "10001";//工作中心名称
|
|
|
- oOrder.planner_num = "wwww";//计划员工号
|
|
|
- oOrder.planner_name = "qqq";//计划员名称
|
|
|
- oOrder.ooentry_stime = DateTime.Now;//计划开工日期
|
|
|
- oOrder.ooentry_etime = DateTime.Now;//计划完工日期
|
|
|
- oOrder.product_code = "产品代码";//产品代码
|
|
|
- oOrder.ffms_number = "1000";//fms旧料号
|
|
|
- oOrder.product_name = "test";//产品名称
|
|
|
- oOrder.specification_model = "";//规格型号
|
|
|
- oOrder.bom_number = "";//bom编码
|
|
|
- oOrder.unit = "";//单位
|
|
|
- oOrder.morder_progress = "";//工单进度
|
|
|
- oOrder.morder_production_number = 120;//工单生产数量(计划数量)
|
|
|
- oOrder.need_number = 11;//需求数量
|
|
|
- oOrder.remaining_number = 11;//剩余可用数量
|
|
|
- oOrder.work_number = 11;//报工数量
|
|
|
- oOrder.inspection_number = 11;//报检数量
|
|
|
- oOrder.qualified_number = 22;//合格数量
|
|
|
- oOrder.inventory_number = 22;//入库数量
|
|
|
- oOrder.notice_qty = 22;//已开通知单数量
|
|
|
- oOrder.moentry_on = 22;//启动状态
|
|
|
- oOrder.start_time = DateTime.Now;//开始时间
|
|
|
- oOrder.pause_time = DateTime.Now;//最近暂停时间
|
|
|
- oOrder.restart_time = DateTime.Now;//最近重启时间
|
|
|
- oOrder.project_name = "22";//项目名称
|
|
|
- oOrder.sent_status = 22;//发料状态 1-待发料 2-已发料
|
|
|
- oOrder.production_unit = "ge";//加工单位
|
|
|
- oOrder.production_unit_code = "元";//加工单位编码
|
|
|
- oOrder.need_icitem_status = 1;//所需物料是否充足 1-充足 0-缺料
|
|
|
- oOderList.Add(oOrder);
|
|
|
+ //缺料
|
|
|
+ if(item.lack_qty>0)
|
|
|
+ {
|
|
|
+ var itemPO =po_list.FindAll(x => x.icitem_id == item.item_id).OrderBy(v=>v.rarrdate).ToList();
|
|
|
+ if(itemPO.Count<=0 || itemPO.Sum(p => (p.qty - p.esqty))<item.lack_qty)
|
|
|
+ {
|
|
|
+
|
|
|
+ //外购生成采购申请单
|
|
|
+ if (item.erp_cls == 3)
|
|
|
+ {
|
|
|
+ CreateSRMPR(item, factoryid, 2);
|
|
|
+ }
|
|
|
+ else if (item.erp_cls == 2)
|
|
|
+ {
|
|
|
+ //委外生成委外采购申请单和委外工单
|
|
|
+ CreateSRMPR(item, factoryid, 1);
|
|
|
+ CreateMesOOder(item, factoryid);
|
|
|
+ }
|
|
|
+ }else
|
|
|
+ {
|
|
|
+ decimal? itemPOQty = 0;//当前物料已抵扣数量
|
|
|
+ for (int i = 0; i < itemPO.Count; i++)
|
|
|
+ {
|
|
|
+ if (itemPOQty + itemPO[i].qty - itemPO[i].esqty >= item.lack_qty)
|
|
|
+ {
|
|
|
+ //在途满足,写占用表
|
|
|
+ itemlist.Add(new ICItemDateDto { item_id = itemPO[i].icitem_id, production_leadtime = itemPO[i].rarrdate, stock_leadtime = itemPO[i].rarrdate, transportation_leadtime = itemPO[i].rarrdate });
|
|
|
+ srm_po_occupy po_Occupy = new srm_po_occupy();
|
|
|
+ po_Occupy.GenerateNewId();
|
|
|
+ po_Occupy.polist_id = 111;//采购订单id
|
|
|
+ po_Occupy.polist_row = 111;//采购订单行号
|
|
|
+ po_Occupy.eid = 111;//客户订单行id
|
|
|
+ po_Occupy.bill_no = 111;//客户订单id
|
|
|
+ po_Occupy.type = "";//类型
|
|
|
+ po_Occupy.entry_id = 1;//行号
|
|
|
+ po_Occupy.qty = 1;//占用量
|
|
|
+ po_Occupy.stime = DateTime.Now;//开始时间
|
|
|
+ po_Occupy.etime = DateTime.Now;//结束时间
|
|
|
+ po_Occupy.state = 1;//占用状态
|
|
|
+ po_Occupy.cby = "";//变更人
|
|
|
+ po_Occupy.creason = "";//变更原因
|
|
|
+ po_Occupy.ctime = DateTime.Now;//变更时间
|
|
|
+ _srm_po_occupy.InsertOne(po_Occupy);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ //不满足逐步扣减
|
|
|
+ itemPOQty = itemPOQty + itemPO[i].qty - itemPO[i].esqty;
|
|
|
+ srm_po_occupy po_Occupy = new srm_po_occupy();
|
|
|
+ po_Occupy.GenerateNewId();
|
|
|
+ po_Occupy.polist_id = 111;//采购订单id
|
|
|
+ po_Occupy.polist_row = 111;//采购订单行号
|
|
|
+ po_Occupy.eid = 111;//客户订单行id
|
|
|
+ po_Occupy.bill_no = 111;//客户订单id
|
|
|
+ po_Occupy.type = "";//类型
|
|
|
+ po_Occupy.entry_id = 1;//行号
|
|
|
+ po_Occupy.qty = 1;//占用量
|
|
|
+ po_Occupy.stime = DateTime.Now;//开始时间
|
|
|
+ po_Occupy.etime = DateTime.Now;//结束时间
|
|
|
+ po_Occupy.state = 1;//占用状态
|
|
|
+ po_Occupy.cby = "";//变更人
|
|
|
+ po_Occupy.creason = "";//变更原因
|
|
|
+ po_Occupy.ctime = DateTime.Now;//变更时间
|
|
|
+ _srm_po_occupy.InsertOne(po_Occupy);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- _mes_oorder.InsertMany(oOderList);
|
|
|
+ return itemlist;
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 生成委外工单
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="returnlist"></param>
|
|
|
+ /// <param name="factoryid"></param>
|
|
|
+ private void CreateMesOOder(BomChildExamineDto returnlist, long factoryid)
|
|
|
+ {
|
|
|
+ mes_oorder oOrder = new mes_oorder();
|
|
|
+ oOrder.GenerateNewId();
|
|
|
+ oOrder.oorder_no = getOrderNum("WW");//生产工单编号
|
|
|
+ oOrder.oorder_type = "委外工单";//生产工单类型
|
|
|
+ oOrder.oorder_date = DateTime.Now;//委外订单日期
|
|
|
+ oOrder.oorder_state = "已提交";//订单状态
|
|
|
+ oOrder.ooentry_prd = 10000;//生产组织
|
|
|
+ oOrder.ooentry_prdname = "1000";//生产组织名称
|
|
|
+ oOrder.ooentry_wrkc = 10000;//工作中心id
|
|
|
+ oOrder.ooentry_wrkcname = "10001";//工作中心名称
|
|
|
+ oOrder.planner_num = "wwww";//计划员工号
|
|
|
+ oOrder.planner_name = "qqq";//计划员名称
|
|
|
+ oOrder.ooentry_stime = DateTime.Now;//计划开工日期
|
|
|
+ oOrder.ooentry_etime = DateTime.Now;//计划完工日期
|
|
|
+ oOrder.product_code = "产品代码";//产品代码
|
|
|
+ oOrder.ffms_number = "1000";//fms旧料号
|
|
|
+ oOrder.product_name = "test";//产品名称
|
|
|
+ oOrder.specification_model = returnlist.model;//规格型号
|
|
|
+ oOrder.bom_number ="";//bom编码
|
|
|
+ oOrder.unit = returnlist.unit;//单位
|
|
|
+ oOrder.morder_progress = "";//工单进度
|
|
|
+ oOrder.morder_production_number = 120;//工单生产数量(计划数量)
|
|
|
+ oOrder.need_number =returnlist.lack_qty;//需求数量
|
|
|
+ oOrder.remaining_number = returnlist.lack_qty;//剩余可用数量
|
|
|
+ oOrder.work_number = 0;//报工数量
|
|
|
+ oOrder.inspection_number = 0;//报检数量
|
|
|
+ oOrder.qualified_number = 0;//合格数量
|
|
|
+ oOrder.inventory_number = 0;//入库数量
|
|
|
+ oOrder.notice_qty =0;//已开通知单数量
|
|
|
+ oOrder.moentry_on = 1;//启动状态
|
|
|
+ //oOrder.start_time = DateTime.Now;//开始时间
|
|
|
+ //oOrder.pause_time = DateTime.Now;//最近暂停时间
|
|
|
+ //oOrder.restart_time = DateTime.Now;//最近重启时间
|
|
|
+ oOrder.project_name = returnlist.item_name;//项目名称
|
|
|
+ oOrder.sent_status = 1;//发料状态 1-待发料 2-已发料
|
|
|
+ oOrder.production_unit = returnlist.unit;//加工单位
|
|
|
+ oOrder.production_unit_code = "";//加工单位编码
|
|
|
+ oOrder.need_icitem_status = 1;//所需物料是否充足 1-充足 0-缺料
|
|
|
+ _mes_oorder.InsertOne(oOrder);
|
|
|
}
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
- /// 生成采购申请单
|
|
|
+ /// 生成采购申请单,颗粒度是一个物料一个单,没必要弄列表
|
|
|
/// </summary>
|
|
|
/// <param name="returnlist"></param>
|
|
|
/// <param name="factoryid"></param>
|
|
|
/// <param name="orderType">1委外采购申请单,2采购申请单</param>
|
|
|
- private void CreateSRMPR(List<BomChildExamineDto> returnlist, long factoryid, int orderType)
|
|
|
+ private void CreateSRMPR(BomChildExamineDto returnlist, long factoryid, int orderType)
|
|
|
{
|
|
|
- List<srm_pr_main> prList = new List<srm_pr_main>();
|
|
|
- foreach (var item in returnlist)
|
|
|
- {
|
|
|
- srm_pr_main srm_Pr = new srm_pr_main();
|
|
|
- srm_Pr.GenerateNewId();
|
|
|
- srm_Pr.pr_billno = "";//pr单号
|
|
|
- srm_Pr.pr_mono = "";//关联工单号
|
|
|
- srm_Pr.entity_id = 1;//pr单号
|
|
|
- srm_Pr.pr_purchaseid = 1001;//供应商id
|
|
|
- srm_Pr.pr_purchasenumber = "10000";//供应商编码
|
|
|
- srm_Pr.pr_purchasename = "1000";//供应商名称
|
|
|
- srm_Pr.pr_purchaser = "10000";//采购员
|
|
|
- srm_Pr.pr_purchaser_num = "10001";//采购员工号(采购信息表)
|
|
|
- srm_Pr.pr_rqty = 20;//需求数量
|
|
|
- srm_Pr.pr_aqty = 1000;//申请数量
|
|
|
- srm_Pr.pr_sqty = 22;//建议数量
|
|
|
- srm_Pr.icitem_id = 10001;//物料id
|
|
|
- srm_Pr.icitem_name = "test111";//物料名称
|
|
|
- srm_Pr.pr_order_type = 1000;//单据类型
|
|
|
- srm_Pr.pr_ssend_date = DateTime.Now;//系统建议下单日期
|
|
|
- srm_Pr.pr_sarrive_date = DateTime.Now;//系统建议到达日期(建议到货日期)
|
|
|
- srm_Pr.pr_bsarrive_date = DateTime.Now;//采购员建议到货日期
|
|
|
- srm_Pr.pr_oarrive_date = DateTime.Now;//订单到货日期
|
|
|
- srm_Pr.pr_psend_date = DateTime.Now;//计划下单日期
|
|
|
- srm_Pr.pr_parrive_date = DateTime.Now;//计划到达日期
|
|
|
- srm_Pr.pr_rarrive_date = DateTime.Now;//需求到货日期
|
|
|
- srm_Pr.pr_rparrive_date = DateTime.Now;//再计划到货日期
|
|
|
- srm_Pr.pr_psend_date = DateTime.Now;//计划下单日期
|
|
|
- srm_Pr.pr_pur_affirm_date = DateTime.Now;//采购确认到货日期
|
|
|
- srm_Pr.pr_sysprice = 22;//系统价格(含税)
|
|
|
- srm_Pr.pr_orderprice = 22;//订单价格(含税)
|
|
|
- srm_Pr.pr_price = 22;//采购净价(不含税)
|
|
|
- srm_Pr.pr_rate = 22;//税率
|
|
|
- srm_Pr.pr_unit = "元";//单位
|
|
|
- srm_Pr.state = 22;//状态
|
|
|
- srm_Pr.old_apply_aqty = 22;//已申请数量
|
|
|
- srm_Pr.pr_type = 22;//申请类型
|
|
|
- srm_Pr.currencytype = 22;//币种
|
|
|
- srm_Pr.secInv_ratio = 22;//安全库存触发采购比例
|
|
|
- srm_Pr.remark = "元";//备注
|
|
|
- srm_Pr.pr_rreason = "元";//拒绝原因
|
|
|
- prList.Add(srm_Pr);
|
|
|
- }
|
|
|
- _srm_pr_main.InsertMany(prList);
|
|
|
+ srm_pr_main srm_Pr = new srm_pr_main();
|
|
|
+ srm_Pr.GenerateNewId();
|
|
|
+ srm_Pr.pr_billno = getOrderNum("PR");//pr单号
|
|
|
+ srm_Pr.pr_mono = "";//关联工单号
|
|
|
+ srm_Pr.entity_id = 1;//工单行号
|
|
|
+ srm_Pr.pr_purchaseid = 10021;//供应商id
|
|
|
+ srm_Pr.pr_purchasenumber = "BFH21";//供应商编码
|
|
|
+ srm_Pr.pr_purchasename = "壳皮有限公司21";//供应商名称
|
|
|
+ srm_Pr.pr_purchaser = "10000";//采购员
|
|
|
+ srm_Pr.pr_purchaser_num = "10001";//采购员工号(采购信息表)
|
|
|
+ srm_Pr.pr_rqty = 20;//需求数量
|
|
|
+ srm_Pr.pr_aqty = 1000;//申请数量
|
|
|
+ srm_Pr.pr_sqty = 22;//建议数量
|
|
|
+ srm_Pr.icitem_id = 10001;//物料id
|
|
|
+ srm_Pr.icitem_name = returnlist.item_name;//物料名称
|
|
|
+ srm_Pr.pr_order_type = 1;//单据类型
|
|
|
+ srm_Pr.pr_ssend_date = DateTime.Now;//系统建议下单日期
|
|
|
+ srm_Pr.pr_sarrive_date = DateTime.Now;//系统建议到达日期(建议到货日期)
|
|
|
+ srm_Pr.pr_bsarrive_date = DateTime.Now;//采购员建议到货日期
|
|
|
+ srm_Pr.pr_oarrive_date = DateTime.Now;//订单到货日期
|
|
|
+ srm_Pr.pr_psend_date = DateTime.Now;//计划下单日期
|
|
|
+ srm_Pr.pr_parrive_date = DateTime.Now;//计划到达日期
|
|
|
+ srm_Pr.pr_rarrive_date = DateTime.Now;//需求到货日期
|
|
|
+ srm_Pr.pr_rparrive_date = DateTime.Now;//再计划到货日期
|
|
|
+ srm_Pr.pr_psend_date = DateTime.Now;//计划下单日期
|
|
|
+ srm_Pr.pr_pur_affirm_date = DateTime.Now;//采购确认到货日期
|
|
|
+ srm_Pr.pr_sysprice = 22;//系统价格(含税)
|
|
|
+ srm_Pr.pr_orderprice = 22;//订单价格(含税)
|
|
|
+ srm_Pr.pr_price = 22;//采购净价(不含税)
|
|
|
+ srm_Pr.pr_rate = (decimal?)0.13;//税率
|
|
|
+ srm_Pr.pr_unit = returnlist.unit;//单位
|
|
|
+ srm_Pr.state = 22;//状态
|
|
|
+ srm_Pr.old_apply_aqty = 22;//已申请数量
|
|
|
+ srm_Pr.pr_type = 22;//申请类型
|
|
|
+ srm_Pr.currencytype = 22;//币种
|
|
|
+ srm_Pr.secInv_ratio = 22;//安全库存触发采购比例
|
|
|
+ _srm_pr_main.InsertOne(srm_Pr);
|
|
|
}
|
|
|
|
|
|
// 生成订单编号 字母+年月日+8位随机数+时间戳
|