Browse Source

北汽加成都新域以及多地点导入

master
qian 4 months ago
parent
commit
c96e31bef4
  1. 210
      北京北汽/Controller/SCP_DC_UNI_CONTROLLER.cs
  2. 6
      北京北汽/Controller/SCP_PO_CONTROLLER.cs
  3. 26
      北京北汽/Controller/SCP_TA_LANGUAGE_CONTROLLER.cs
  4. 14
      北京北汽/Controller/SCP_TB_ADDRESS_BUYER_CONTROLLER.cs
  5. 9
      北京北汽/Controller/SCP_TB_PRICE_CONTROLLER.cs
  6. 4
      北京北汽/Models/ScpEntity/TB_ADDRESS.cs
  7. 1
      北京北汽/Models/ScpEntity/TB_ADDRESS_BUYER.cs
  8. 6
      北京北汽/SCP/Views/BasicData/SCP_PRICE_TemporaryPrice.aspx.cs
  9. 32
      北京北汽/SCP/Views/BasicData/SCP_TB_Address.aspx.cs
  10. 8
      北京北汽/SCP/Views/BasicData/SCP_TB_Address_Buyer.aspx.cs
  11. 2
      北京北汽/SCP/Views/PlanData/SCP_ASK.aspx
  12. 7
      北京北汽/SCP/Views/PlanData/SCP_ASK.aspx.cs
  13. 12
      北京北汽/SCP/Views/PlanData/SCP_PO_CQ.aspx.cs
  14. 23
      北京北汽/SCP/Views/PlanData/SCP_PO_CREATE_ASK.aspx.cs
  15. 6
      北京北汽/SCP/Views/SupplierData/SCP_ASN_DETAIL.aspx.cs
  16. 2
      北京北汽/SCP/grf/Material.grf
  17. 2
      北京北汽/SCP/grf/Material_CQ.grf
  18. 2
      北京北汽/SCP/grf/SendBill_CQ.grf

210
北京北汽/Controller/SCP_DC_UNI_CONTROLLER.cs

@ -18,6 +18,7 @@ using System.Transactions;
using System.Data.Entity.Core; using System.Data.Entity.Core;
using System.Security.Cryptography; using System.Security.Cryptography;
using System.Data.Entity; using System.Data.Entity;
using System.Collections.ObjectModel;
//using WebSrvAPITest; //using WebSrvAPITest;
namespace CK.SCP.Controller namespace CK.SCP.Controller
@ -180,15 +181,18 @@ namespace CK.SCP.Controller
/// 获取 /// 获取
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public static List<TEA_TASK_SUB> Get_TEA_TASK_SUB_List(ExchangeCenterContext db,TEA_TASK_SUB p_entity) //public static List<TEA_TASK_SUB> Get_TEA_TASK_SUB_List(TEA_TASK_SUB p_entity)
{ //{
List<TEA_TASK_SUB> list = new List<TEA_TASK_SUB>(); // List<TEA_TASK_SUB> list = new List<TEA_TASK_SUB>();
string _sql = "select * from TEA_TASK_SUB where TaskState = '{0}' and Subscriber = '{1}'"; // using (var db = EntitiesFactory.CreateExchangeCenterInstance())
_sql = string.Format(_sql, (int)p_entity.TaskState,p_entity.Subscriber); // {
list = db.Database.SqlQuery<TEA_TASK_SUB>(_sql).ToList(); // string _sql = "select * from TEA_TASK_SUB where TaskState = '{0}' and Subscriber = '{1}'";
return list; // _sql = string.Format(_sql, (int)p_entity.TaskState, p_entity.Subscriber);
} // list = db.Database.SqlQuery<TEA_TASK_SUB>(_sql).ToList();
// }
// return list;
//}
public static ResultObject<List<TEA_TASK_SUB>> Get_TEA_TASK_SUB_List(TEA_TASK_SUB p_entity) public static ResultObject<List<TEA_TASK_SUB>> Get_TEA_TASK_SUB_List(TEA_TASK_SUB p_entity)
{ {
@ -197,67 +201,12 @@ namespace CK.SCP.Controller
{ {
using (var db = EntitiesFactory.CreateExchangeCenterInstance()) using (var db = EntitiesFactory.CreateExchangeCenterInstance())
{ {
IQueryable<TEA_TASK_SUB> q = db.TEA_TASK_SUB; string _sql = "select * from TEA_TASK_SUB with(nolock) where TaskState = '{0}' and Subscriber = '{1}'";
if (!string.IsNullOrEmpty(p_entity.TableName)) _sql = string.Format(_sql, (int)p_entity.TaskState, p_entity.Subscriber);
{
q = q.Where(p => p.TableName.Contains(p_entity.TableName));
}
if (!string.IsNullOrEmpty(p_entity.Creator))
{
q = q.Where(p => p.Creator.Contains(p_entity.Creator));
}
if (p_entity.DataCount != 0)
{
q = q.Where(p => p.DataCount == p_entity.DataCount);
}
if (!string.IsNullOrEmpty(p_entity.Subscriber))
{
q = q.Where(p => p.Subscriber == p_entity.Subscriber);
}
if (p_entity.FailedCount != 0)
{
q = q.Where(p => p.FailedCount == p_entity.FailedCount);
}
if (!string.IsNullOrEmpty(p_entity.FailedInfo))
{
q = q.Where(p => p.FailedInfo.Contains(p_entity.FailedInfo));
}
if (!string.IsNullOrEmpty(p_entity.Domain))
{
q = q.Where(p => p.Domain.Contains(p_entity.Domain));
}
if (!string.IsNullOrEmpty(p_entity.Site))
{
q = q.Where(p => p.Site.Contains(p_entity.Site));
}
if (p_entity.UID != 0)
{
q = q.Where(p => p.UID == p_entity.UID);
}
if (!string.IsNullOrEmpty(p_entity.CreateUser))
{
q = q.Where(p => p.CreateUser.Contains(p_entity.CreateUser));
}
if (!string.IsNullOrEmpty(p_entity.Remark))
{
q = q.Where(p => p.Remark.Contains(p_entity.Remark));
}
if (!string.IsNullOrEmpty(p_entity.UpdateUser))
{
q = q.Where(p => p.UpdateUser.Contains(p_entity.UpdateUser));
}
if (p_entity.IsChecked != false)
{
q = q.Where(p => p.IsChecked == p_entity.IsChecked);
}
//if (!string.IsNullOrEmpty(p_entity.TaskState))
//{
// q = q.Where(p => p.UpdateUser.Contains(p_entity.UpdateUser));
//}
q = q.Where(p => p.TaskState==p_entity.TaskState);
var q = db.Database.SqlQuery<TEA_TASK_SUB>(_sql).OrderBy(p=>p.CreateTime).ToList();
_ret.State = ReturnStatus.Succeed; _ret.State = ReturnStatus.Succeed;
_ret.Result = q.OrderBy(p => p.CreateTime).ToList(); _ret.Result = q;
} }
} }
catch (Exception e) catch (Exception e)
@ -407,22 +356,23 @@ namespace CK.SCP.Controller
public static void ReadService(Action<ResultObject<bool>> p_action) public static void ReadService(Action<ResultObject<bool>> p_action)
{ {
ResultObject<bool> result = new ResultObject<bool>(); ResultObject<bool> result = new ResultObject<bool>();
ExchangeCenterContext db = EntitiesFactory.CreateExchangeCenterInstance(); //ExchangeCenterContext db = EntitiesFactory.CreateExchangeCenterInstance();
// ResultObject<List<LogModel>> result = new ResultObject<List<LogModel>>(); // ResultObject<List<LogModel>> result = new ResultObject<List<LogModel>>();
//var _result = Get_TEA_TASK_SUB_List(new TEA_TASK_SUB() { TaskState = EnumTaskState.Unread, Subscriber = "SCP"}); var _result = Get_TEA_TASK_SUB_List(new TEA_TASK_SUB() { TaskState = EnumTaskState.Unread, Subscriber = "SCP"});
List<TEA_TASK_SUB> tasklist = Get_TEA_TASK_SUB_List(db,new TEA_TASK_SUB() { TaskState = EnumTaskState.Unread, Subscriber = "SCP" }); //List<TEA_TASK_SUB> tasklist = Get_TEA_TASK_SUB_List(new TEA_TASK_SUB() { TaskState = EnumTaskState.Unread, Subscriber = "SCP" });
if (tasklist.Count()>0) //if (tasklist.Count() > 0)
//if (_result.State == ReturnStatus.Succeed) if (_result.State == ReturnStatus.Succeed)
{ {
foreach (var _task in tasklist)
//foreach (var _task in _result.Result) //foreach (var _task in tasklist)
foreach (var _task in _result.Result)
{ {
ScpEntities scpdb = EntitiesFactory.CreateScpInstance(); ScpEntities scpdb = EntitiesFactory.CreateScpInstance();
DataCenterContext dc = EntitiesFactory.CreateDataCenterInstance(); DataCenterContext dc = EntitiesFactory.CreateDataCenterInstance();
AppBoxContext authdb = EntitiesFactory.CreateAppBoxInstance(); AppBoxContext authdb = EntitiesFactory.CreateAppBoxInstance();
//ExchangeCenterContext db = EntitiesFactory.CreateExchangeCenterInstance(); ExchangeCenterContext db = EntitiesFactory.CreateExchangeCenterInstance();
using (var scope = using (var scope =
// 注释内容可去掉mdtc // 注释内容可去掉dtc
//new TransactionScope(TransactionScopeOption.Suppress, new TransactionOptions() //new TransactionScope(TransactionScopeOption.Suppress, new TransactionOptions()
new TransactionScope(TransactionScopeOption.Required, new TransactionOptions() new TransactionScope(TransactionScopeOption.Required, new TransactionOptions()
{ {
@ -473,12 +423,16 @@ namespace CK.SCP.Controller
result = UpdateSupplier(_supplierlist, scpdb, authdb, _task); result = UpdateSupplier(_supplierlist, scpdb, authdb, _task);
result.Message = _task.TaskID.ToString(); result.Message = _task.TaskID.ToString();
Update_TEA_TASK_SUB(db, _task); Update_TEA_TASK_SUB(db, _task);
EntitiesFactory.SaveDb(scpdb); scpdb.BulkSaveChanges();
EntitiesFactory.SaveDb(db); db.BulkSaveChanges();
EntitiesFactory.SaveDb(dc); authdb.BulkSaveChanges();
EntitiesFactory.SaveDb(authdb); dc.BulkSaveChanges();
scope.Complete(); //EntitiesFactory.SaveDb(scpdb);
//EntitiesFactory.SaveDb(db);
//EntitiesFactory.SaveDb(dc);
//EntitiesFactory.SaveDb(authdb);
UpdateSupplierExtend(_supplierlist); UpdateSupplierExtend(_supplierlist);
scope.Complete();
break; break;
case "TES_PART_MSTR": case "TES_PART_MSTR":
result = UpdatePart(db, scpdb, _task); result = UpdatePart(db, scpdb, _task);
@ -517,33 +471,38 @@ namespace CK.SCP.Controller
result.State = ReturnStatus.Succeed; result.State = ReturnStatus.Succeed;
result.Result = true; result.Result = true;
} }
catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常 //catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常
{ //{
var sb = new StringBuilder(); // var sb = new StringBuilder();
foreach (var error in dbEx.EntityValidationErrors.ToList()) // foreach (var error in dbEx.EntityValidationErrors.ToList())
{ // {
error.ValidationErrors.ToList().ForEach(i => // error.ValidationErrors.ToList().ForEach(i =>
{ // {
sb.AppendFormat("表:{0},字段:{1},信息:{2}\r\n", error.Entry.Entity.GetType().Name, i.PropertyName, i.ErrorMessage); // sb.AppendFormat("表:{0},字段:{1},信息:{2}\r\n", error.Entry.Entity.GetType().Name, i.PropertyName, i.ErrorMessage);
}); // });
} // }
scope.Dispose(); // scope.Dispose();
result.State = ReturnStatus.Failed; // result.State = ReturnStatus.Failed;
result.ErrorList.Add(dbEx); // result.ErrorList.Add(dbEx);
} //}
catch (OptimisticConcurrencyException ex)//并发冲突异常 //catch (OptimisticConcurrencyException ex)//并发冲突异常
{ //{
scope.Dispose(); // scope.Dispose();
result.State = ReturnStatus.Failed; // result.State = ReturnStatus.Failed;
result.ErrorList.Add(ex); // result.ErrorList.Add(ex);
} //}
catch (Exception ex) catch (Exception ex)
{ {
scope.Dispose(); scope.Dispose();
result.State = ReturnStatus.Failed; result.State = ReturnStatus.Failed;
result.ErrorList.Add(ex); result.ErrorList.Add(ex);
result.Message = _task.TaskID.ToString(); result.Message = ex.Message; //_task.TaskID.ToString();
if (ex.InnerException != null)
{
result.Message = ex.InnerException.Message;
}
// result.MessageList.Add("任务编号:" + _task.TaskID + "错误信息:" + ex.Message); // result.MessageList.Add("任务编号:" + _task.TaskID + "错误信息:" + ex.Message);
} }
} }
@ -568,11 +527,12 @@ namespace CK.SCP.Controller
{ {
ScpEntities scpdb = EntitiesFactory.CreateScpInstance(); ScpEntities scpdb = EntitiesFactory.CreateScpInstance();
ExchangeCenterContext db = EntitiesFactory.CreateExchangeCenterInstance(); ExchangeCenterContext db = EntitiesFactory.CreateExchangeCenterInstance();
var _list = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled&&p.Domain== "HFBMPT").OrderBy(p => p.UID).ToList(); var _list = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled && p.Domain == "CDBMPT").OrderBy(p => p.UID).ToList();
var _list1 = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled && p.Domain == "HFBMPT" && p.InterfaceType== "Price").OrderBy(p => p.UID).ToList(); var _list1 = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled && p.Domain == "CDBMPT" && p.InterfaceType == "Price").OrderBy(p => p.UID).ToList();
var apiii = _list1.Count(); var apiii = _list1.Count();
if (apiii > 0) { if (apiii > 0)
{
var ret = UpdateTES_PURCHASE_PRICE(db, scpdb, _list1); var ret = UpdateTES_PURCHASE_PRICE(db, scpdb, _list1);
} }
var billNumList = _list.Select(p => p.BillNum).Distinct(); var billNumList = _list.Select(p => p.BillNum).Distinct();
@ -1066,7 +1026,8 @@ namespace CK.SCP.Controller
_po.DueDate = _api.PutTime; _po.DueDate = _api.PutTime;
_po.Confirm = true; _po.Confirm = true;
_po.Buyer = _api.Buyer; _po.Buyer = _api.Buyer;
if (_api.SubBillType == 1) { if (_api.SubBillType == 1)
{
_po.ScheduledOrder = true; _po.ScheduledOrder = true;
} }
else else
@ -2079,6 +2040,7 @@ namespace CK.SCP.Controller
_dic.Add("CQBMPT", "CQ01"); _dic.Add("CQBMPT", "CQ01");
_dic.Add("ZZBMPT", "ZZ01"); _dic.Add("ZZBMPT", "ZZ01");
_dic.Add("HFBMPT", "HF01"); _dic.Add("HFBMPT", "HF01");
_dic.Add("CDBMPT", "CD01");
ResultObject<bool> _ret = new ResultObject<bool>(); ResultObject<bool> _ret = new ResultObject<bool>();
try try
{ {
@ -2139,7 +2101,7 @@ namespace CK.SCP.Controller
_venderlist.Add(_supplier); _venderlist.Add(_supplier);
} }
} }
scpdb.TA_VENDER.AddOrUpdate(_venderlist.ToArray()); scpdb.TA_VENDER.AddOrUpdate(q => q.UID, _venderlist.ToArray());
_ret.State = ReturnStatus.Succeed; _ret.State = ReturnStatus.Succeed;
_ret.MessageList.Add(string.Format("更新表{0}任务ID{1}成功!", "TES_SUPPLIER", p_entity.TaskID)); _ret.MessageList.Add(string.Format("更新表{0}任务ID{1}成功!", "TES_SUPPLIER", p_entity.TaskID));
} }
@ -2166,26 +2128,43 @@ namespace CK.SCP.Controller
{ {
try try
{ {
var vendname = string.Format("{0}@{1}", qadData.SupplierCode.ToUpper(), qadData.Domain.ToUpper()); //var vendname = string.Format("{0}@{1}", qadData.SupplierCode.ToUpper(), qadData.Domain.ToUpper());
var _first = db.Users.Where(p => p.Name == vendname).FirstOrDefault(); string vendtoup = qadData.SupplierCode.ToUpper();
var _first = db.Users.Where(p => p.Name.Contains(vendtoup)).ToList();
if (_first != null) if (_first != null)
{ {
var _ef = db.VenderUsers.FirstOrDefault(p => p.VenderId == qadData.SupplierCode && p.UserId == _first.ID) ?? new VenderUsers() foreach (var item in _first)
{
var count = db.VenderUsers.Count(p => p.VenderId == qadData.SupplierCode && p.UserId == item.ID);
if (count == 0)
{ {
UserId = _first.ID, var _ef = new VenderUsers()
{
UserId = item.ID,
VenderId = qadData.SupplierCode.ToUpper() VenderId = qadData.SupplierCode.ToUpper()
}; };
_ls.Add(_ef); _ls.Add(_ef);
} }
else
{
var _ef = db.VenderUsers.FirstOrDefault(p => p.VenderId == qadData.SupplierCode && p.UserId == item.ID);
_ef.UserId = item.ID;
_ef.VenderId = qadData.SupplierCode.ToUpper();
_ls.Add(_ef);
}
} }
catch
}
}
catch(Exception EX)
{ {
throw EX;
} }
db.VenderUsers.AddOrUpdate(_ls.ToArray()); db.VenderUsers.AddOrUpdate(q=>q.Id,_ls.ToArray());
db.BulkSaveChanges();
} }
} }
} }
/// <summary> /// <summary>
/// 更新供应商零件 /// 更新供应商零件
/// </summary> /// </summary>
@ -3733,7 +3712,8 @@ namespace CK.SCP.Controller
List<TB_ASN_DETAIL> asn_details = scpdb.TB_ASN_DETAIL.Where(q => q.AsnBillNum == asn.BillNum).ToList(); List<TB_ASN_DETAIL> asn_details = scpdb.TB_ASN_DETAIL.Where(q => q.AsnBillNum == asn.BillNum).ToList();
if (asn_details != null) if (asn_details != null)
{ {
asn_details.ForEach(itm => { asn_details.ForEach(itm =>
{
itm.IsDeleted = true; itm.IsDeleted = true;
itm.State = (int)AskState.Reject; itm.State = (int)AskState.Reject;
}); });

6
北京北汽/Controller/SCP_PO_CONTROLLER.cs

@ -4120,7 +4120,7 @@ namespace CK.SCP.Controller
_PO_Detail.Scheduledays = string.IsNullOrEmpty(itm.) ? 7 : int.Parse(itm.); _PO_Detail.Scheduledays = string.IsNullOrEmpty(itm.) ? 7 : int.Parse(itm.);
_PO_Detail.Scheduleweeks = string.IsNullOrEmpty(itm.) ? 2 : int.Parse(itm.); _PO_Detail.Scheduleweeks = string.IsNullOrEmpty(itm.) ? 2 : int.Parse(itm.);
_PO_Detail.Schedulemonth = string.IsNullOrEmpty(itm.) ? 1 : int.Parse(itm.); _PO_Detail.Schedulemonth = string.IsNullOrEmpty(itm.) ? 1 : int.Parse(itm.);
_PO_Detail.Supplieritem = itm..ToUpper(); _PO_Detail.Supplieritem =string.IsNullOrEmpty(itm.)? itm. :itm..ToUpper();
_PO_Detail.Dliverypatterncode = itm.; _PO_Detail.Dliverypatterncode = itm.;
_PO_Detail.Deliverytimecode = itm.; _PO_Detail.Deliverytimecode = itm.;
_PO_Detail.Transportdays = string.IsNullOrEmpty(itm.) ? 0 : int.Parse(itm.); _PO_Detail.Transportdays = string.IsNullOrEmpty(itm.) ? 0 : int.Parse(itm.);
@ -4180,7 +4180,7 @@ namespace CK.SCP.Controller
{ {
TB_PO_DETAIL _PO_Detail = new TB_PO_DETAIL(); TB_PO_DETAIL _PO_Detail = new TB_PO_DETAIL();
_PO_Detail.GUID = Guid.NewGuid(); _PO_Detail.GUID = Guid.NewGuid();
_PO_Detail.PartCode = itm..Trim().ToUpper(); _PO_Detail.PartCode = string.IsNullOrEmpty(itm.) ? itm. : itm..Trim().ToUpper();
_PO_Detail.PoLine = _number; _PO_Detail.PoLine = _number;
_PO_Detail.PoBillNum = _po.PoBillNum; _PO_Detail.PoBillNum = _po.PoBillNum;
_PO_Detail.State = (int)PoState.Open; _PO_Detail.State = (int)PoState.Open;
@ -4219,7 +4219,7 @@ namespace CK.SCP.Controller
_tDetail.PoUnit = itm.; _tDetail.PoUnit = itm.;
_tDetail.CreateTime = DateTime.Now; _tDetail.CreateTime = DateTime.Now;
_tDetail.CreateUser = p_creator; _tDetail.CreateUser = p_creator;
_tDetail.PartCode = itm..Trim().ToUpper(); _tDetail.PartCode = string.IsNullOrEmpty(itm.) ? itm. : itm..Trim().ToUpper();
_tDetail.ReceivedPort = ""; _tDetail.ReceivedPort = "";
_tDetail.BeginTime = p_time; _tDetail.BeginTime = p_time;
_tDetail.EndTime = Convert.ToDateTime(itm.); _tDetail.EndTime = Convert.ToDateTime(itm.);

26
北京北汽/Controller/SCP_TA_LANGUAGE_CONTROLLER.cs

@ -124,6 +124,13 @@ namespace CK.SCP.Controller
return _ret; return _ret;
} }
/// <summary>
/// 导入收货信息管理(重庆专用)
/// </summary>
/// <param name="p_order_list">导入信息</param>
/// <param name="site">当前登录地点</param>
/// <param name="p_creator">创建人</param>
/// <returns></returns>
public static ResultObject<bool> EXCEL_ADRESS_LIST_CQ(List<SCP_VENDER_EXPORT> p_order_list, string site, string p_creator) public static ResultObject<bool> EXCEL_ADRESS_LIST_CQ(List<SCP_VENDER_EXPORT> p_order_list, string site, string p_creator)
{ {
ResultObject<bool> _ret = new ResultObject<bool>(); ResultObject<bool> _ret = new ResultObject<bool>();
@ -131,7 +138,6 @@ namespace CK.SCP.Controller
{ {
using (ScpEntities db = EntitiesFactory.CreateScpInstance()) using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{ {
int number = 1;
List<string> lineError = new List<string>(); List<string> lineError = new List<string>();
List<string> ErrorList = new List<string>(); List<string> ErrorList = new List<string>();
var _lst = p_order_list; var _lst = p_order_list;
@ -157,20 +163,20 @@ namespace CK.SCP.Controller
_lst.ForEach(p => _lst.ForEach(p =>
{ {
var _Sitelist = db.TB_ADDRESS.Count(t => t.Address == p.); var _Sitelist = db.TB_ADDRESS.Count(t => t.Address == p. && t.SubSite == site);
if (_Sitelist == 0) if (_Sitelist == 0)
{ {
TB_ADDRESS Price = new TB_ADDRESS(); TB_ADDRESS address = new TB_ADDRESS();
Price.Address = p.; address.Address = p.;
Price.NamePone = p.; address.NamePone = p.;
address.SubSite = site;
db.TB_ADDRESS.AddOrUpdate(Price); db.TB_ADDRESS.AddOrUpdate(address);
} }
else if (_Sitelist == 1) else if (_Sitelist == 1)
{ {
var _PAlist = db.TB_ADDRESS.SingleOrDefault(t => t.Address == p.); TB_ADDRESS tB_address = db.TB_ADDRESS.SingleOrDefault(t => t.Address == p. && t.SubSite == site);
_PAlist.NamePone = p.; tB_address.NamePone = p.;
db.TB_ADDRESS.AddOrUpdate(_PAlist); db.TB_ADDRESS.AddOrUpdate(tB_address);
} }
}); });

14
北京北汽/Controller/SCP_TB_ADDRESS_BUYER_CONTROLLER.cs

@ -26,7 +26,7 @@ namespace CK.SCP.Controller
/// </summary> /// </summary>
/// <param name="Buyer">采购</param> /// <param name="Buyer">采购</param>
/// <param name="p_action"></param> /// <param name="p_action"></param>
public static void GetTbAddressBuyerList(string Buyer, Action<ResultObject<IQueryable<TB_ADDRESS_BUYER>>> p_action) public static void GetTbAddressBuyerList(string Buyer,string SubSite, Action<ResultObject<IQueryable<TB_ADDRESS_BUYER>>> p_action)
{ {
ResultObject<IQueryable<TB_ADDRESS_BUYER>> _ret = new ResultObject<IQueryable<TB_ADDRESS_BUYER>>(); ResultObject<IQueryable<TB_ADDRESS_BUYER>> _ret = new ResultObject<IQueryable<TB_ADDRESS_BUYER>>();
try try
@ -38,6 +38,10 @@ namespace CK.SCP.Controller
{ {
q = q.Where(p => p.Buyer.Contains(Buyer)); q = q.Where(p => p.Buyer.Contains(Buyer));
} }
if (!string.IsNullOrEmpty(SubSite))
{
q = q.Where(p => p.SubSite == SubSite);
}
_ret.State = ReturnStatus.Succeed; _ret.State = ReturnStatus.Succeed;
_ret.Result = q; _ret.Result = q;
p_action(_ret); p_action(_ret);
@ -63,7 +67,7 @@ namespace CK.SCP.Controller
/// <param name="p_order_list"></param> /// <param name="p_order_list"></param>
/// <param name="p_creator"></param> /// <param name="p_creator"></param>
/// <returns></returns> /// <returns></returns>
public static ResultObject<bool> EXCEL_ADRESS_BUYER_LIST(List<SCP_ADDRESS_BUYER_EXPORT> p_order_list, string p_creator) public static ResultObject<bool> EXCEL_ADRESS_BUYER_LIST(List<SCP_ADDRESS_BUYER_EXPORT> p_order_list,string SubSite, string p_creator)
{ {
ResultObject<bool> _ret = new ResultObject<bool>(); ResultObject<bool> _ret = new ResultObject<bool>();
try try
@ -88,7 +92,7 @@ namespace CK.SCP.Controller
DateTime time = DateTime.Now; DateTime time = DateTime.Now;
_lst.ForEach(p => _lst.ForEach(p =>
{ {
var _Sitelist = db.TB_ADDRESS_BUYER.Count(t => t.Buyer == p.); var _Sitelist = db.TB_ADDRESS_BUYER.Count(t => t.Buyer == p. && t.SubSite == SubSite);
if (_Sitelist == 0) if (_Sitelist == 0)
{ {
TB_ADDRESS_BUYER buyer = new TB_ADDRESS_BUYER(); TB_ADDRESS_BUYER buyer = new TB_ADDRESS_BUYER();
@ -96,11 +100,12 @@ namespace CK.SCP.Controller
buyer.Buyer = p.; buyer.Buyer = p.;
buyer.Creator = p_creator; buyer.Creator = p_creator;
buyer.CreateTime = time; buyer.CreateTime = time;
buyer.SubSite = SubSite;
db.TB_ADDRESS_BUYER.Add(buyer); db.TB_ADDRESS_BUYER.Add(buyer);
} }
else if (_Sitelist == 1) else if (_Sitelist == 1)
{ {
var buyer = db.TB_ADDRESS_BUYER.SingleOrDefault(t => t.Buyer == p.); var buyer = db.TB_ADDRESS_BUYER.SingleOrDefault(t => t.Buyer == p. && t.SubSite == SubSite);
buyer.AddressUID = long.Parse(p.ID); buyer.AddressUID = long.Parse(p.ID);
buyer.UpdateTime = time; buyer.UpdateTime = time;
buyer.UpdateUser = p_creator; buyer.UpdateUser = p_creator;
@ -157,7 +162,6 @@ namespace CK.SCP.Controller
using (AppBoxContext db = EntitiesFactory.CreateAppBoxInstance()) using (AppBoxContext db = EntitiesFactory.CreateAppBoxInstance())
{ {
List<User> users = db.Users.ToList(); List<User> users = db.Users.ToList();
//users = users.Where(q => q.Roles.Select(itm => itm.ID).Contains(8)).ToList();
userName = users.Select(q => q.Name).ToList(); userName = users.Select(q => q.Name).ToList();
} }
long ID; long ID;

9
北京北汽/Controller/SCP_TB_PRICE_CONTROLLER.cs

@ -8,7 +8,6 @@ using System.Data.Entity.Core;
using System.Data.Entity.Migrations; using System.Data.Entity.Migrations;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks;
namespace CK.SCP.Controller namespace CK.SCP.Controller
{ {
@ -442,10 +441,10 @@ namespace CK.SCP.Controller
//{ //{
// q = q.Where(p => p_entity.UserInAddress.Contains(p.Site)); // q = q.Where(p => p_entity.UserInAddress.Contains(p.Site));
//} //}
if (p_entity.UserInSubSite != null && p_entity.UserInSubSite.Count > 0) //if (p_entity.UserInSubSite != null && p_entity.UserInSubSite.Count > 0)
{ //{
q = q.Where(p => p_entity.UserInSubSite.Contains(p.SubSite)); // q = q.Where(p => p_entity.UserInSubSite.Contains(p.SubSite));
} //}
if (p_entity.UserInVendIds != null && p_entity.UserInVendIds.Count > 0) if (p_entity.UserInVendIds != null && p_entity.UserInVendIds.Count > 0)
{ {
q = q.Where(p => p_entity.UserInVendIds.Contains(p.VendId)); q = q.Where(p => p_entity.UserInVendIds.Contains(p.VendId));

4
北京北汽/Models/ScpEntity/TB_ADDRESS.cs

@ -13,5 +13,9 @@ namespace CK.SCP.Models.ScpEntity
public long UID { get; set; } public long UID { get; set; }
public string Address { get; set; } public string Address { get; set; }
public string NamePone { get; set; } public string NamePone { get; set; }
/// <summary>
/// 地点
/// </summary>
public string SubSite { get; set; }
} }
} }

1
北京北汽/Models/ScpEntity/TB_ADDRESS_BUYER.cs

@ -25,5 +25,6 @@ namespace CK.SCP.Models.ScpEntity
public string UpdateUser { get; set; } public string UpdateUser { get; set; }
public DateTime? UpdateTime { get; set; } public DateTime? UpdateTime { get; set; }
public string SubSite { get; set; }
} }
} }

6
北京北汽/SCP/Views/BasicData/SCP_PRICE_TemporaryPrice.aspx.cs

@ -57,7 +57,7 @@ namespace SCP.Views.BasicData
SearchV_TB_PRICEData((result) => SearchV_TB_PRICEData((result) =>
{ {
Grid1.RecordCount = result.Count(); Grid1.RecordCount = result.Count();
var list = SortAndPage<V_TB_PRICE_TemporaryPrice>(result, Grid1); var list = SortAndPage(result, Grid1);
Grid1.DataSource = list; Grid1.DataSource = list;
Grid1.DataBind(); Grid1.DataBind();
@ -129,6 +129,10 @@ namespace SCP.Views.BasicData
{ {
_entity.SubSite = factoryList.SelectedValue; _entity.SubSite = factoryList.SelectedValue;
} }
else
{
_entity.SubSite = CurrentUser.UserdSite;
}
_entity.UserInAddress = CurrentUser.FactoryList; _entity.UserInAddress = CurrentUser.FactoryList;
_entity.UserInVendIds = CurrentUser.VenderList; _entity.UserInVendIds = CurrentUser.VenderList;
_entity.UserInSubSite = CurrentUser.SubSiteList; _entity.UserInSubSite = CurrentUser.SubSiteList;

32
北京北汽/SCP/Views/BasicData/SCP_TB_Address.aspx.cs

@ -54,38 +54,20 @@ namespace SCP.Views.BasicData
{ {
q = q.Where(p => p.Address.Contains(txtPartCode.Text)); q = q.Where(p => p.Address.Contains(txtPartCode.Text));
} }
if (!string.IsNullOrEmpty( CurrentUser.UserdSite))
{
q = q.Where(p => p.SubSite == CurrentUser.UserdSite);
}
// 排列和数据库分页 // 排列和数据库分页
Grid1.RecordCount = q.Count(); Grid1.RecordCount = q.Count();
q = SortAndPage<TB_ADDRESS>(q, Grid1); q = SortAndPage(q, Grid1);
var _list = q.ToList(); var _list = q.ToList();
Grid1.DataSource = _list; Grid1.DataSource = _list;
Grid1.DataBind(); Grid1.DataBind();
} }
//导出
public void BtnOutPut_OnClick(object sender, EventArgs e)
{
}
protected void Button2_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Window2.GetShowReference(string.Format("../BasicData/SCP_TB_Address_DETAIL.aspx?")));
}
//查询
protected void btnSearch_OnClick(object sender, EventArgs e)
{
BindData();
}
protected void Grid1_OnPageIndexChange(object sender, GridPageEventArgs e) protected void Grid1_OnPageIndexChange(object sender, GridPageEventArgs e)
{ {
BindData(); BindData();
@ -126,8 +108,8 @@ namespace SCP.Views.BasicData
Alert.Show("文件内容为空!"); Alert.Show("文件内容为空!");
return; return;
} }
var ret = SCP_TA_LANGUAGE_CONTROLLER.EXCEL_ADRESS_LIST_CQ(list, CurrentUser.FactoryList[0], CurrentUser.Name); var ret = SCP_TA_LANGUAGE_CONTROLLER.EXCEL_ADRESS_LIST_CQ(list, CurrentUser.UserdSite, CurrentUser.Name);
if (ret.State == ReturnStatus.Succeed && ret.Result == true) if (ret.State == ReturnStatus.Succeed && ret.Result)
{ {
Alert.Show("导入成功"); Alert.Show("导入成功");
BindData(); BindData();

8
北京北汽/SCP/Views/BasicData/SCP_TB_Address_Buyer.aspx.cs

@ -51,14 +51,14 @@ namespace SCP.Views.BasicData
{ {
SearchADDRESS_BUYER(txtBuyer.Text, (rs) => SearchADDRESS_BUYER(txtBuyer.Text, (rs) =>
{ {
var list1 = SortAndPage<TB_ADDRESS_BUYER>(rs, Grid1); var list1 = SortAndPage(rs, Grid1);
var count1 = list1.ToList().Count; var count1 = list1.ToList().Count;
if (count1 > 0) if (count1 > 0)
{ {
var _ls1 = list1.ToList(); var _ls1 = list1.ToList();
_ls1.ForEach(p => _ls1.ForEach(p =>
{ {
var address = SCPDB.TB_ADDRESS.Where(itm => itm.UID == p.AddressUID).FirstOrDefault(); var address = SCPDB.TB_ADDRESS.Where(itm => itm.UID == p.AddressUID && itm.SubSite == CurrentUser.UserdSite ).FirstOrDefault();
if (address != null) if (address != null)
{ {
@ -80,7 +80,7 @@ namespace SCP.Views.BasicData
public void SearchADDRESS_BUYER(string Buyer, Action<IQueryable<TB_ADDRESS_BUYER>> p_action) public void SearchADDRESS_BUYER(string Buyer, Action<IQueryable<TB_ADDRESS_BUYER>> p_action)
{ {
SCP_TB_ADDRESS_BUYER_CONTROLLER.GetTbAddressBuyerList(Buyer, (_ret) => SCP_TB_ADDRESS_BUYER_CONTROLLER.GetTbAddressBuyerList(Buyer,CurrentUser.UserdSite, (_ret) =>
{ {
if (_ret.State == ReturnStatus.Succeed) if (_ret.State == ReturnStatus.Succeed)
{ {
@ -138,7 +138,7 @@ namespace SCP.Views.BasicData
Alert.Show("文件内容为空!"); Alert.Show("文件内容为空!");
return; return;
} }
var ret = SCP_TB_ADDRESS_BUYER_CONTROLLER.EXCEL_ADRESS_BUYER_LIST(list, CurrentUser.Name); var ret = SCP_TB_ADDRESS_BUYER_CONTROLLER.EXCEL_ADRESS_BUYER_LIST(list,CurrentUser.UserdSite ,CurrentUser.Name);
if (ret.State == ReturnStatus.Succeed && ret.Result == true) if (ret.State == ReturnStatus.Succeed && ret.Result == true)
{ {
Alert.Show("导入成功"); Alert.Show("导入成功");

2
北京北汽/SCP/Views/PlanData/SCP_ASK.aspx

@ -12,7 +12,7 @@
<form id="form1" runat="server"> <form id="form1" runat="server">
<f:PageManager runat="server" AutoSizePanelID="Panel1" /> <f:PageManager runat="server" AutoSizePanelID="Panel1" />
<f:Panel ID="Panel1" runat="server" Title="" Layout="VBox" BoxConfigAlign="Stretch" BoxConfigPosition="Start"> <f:Panel ID="Panel1" runat="server" Title="" Layout="VBox" BoxConfigAlign="Stretch" BoxConfigPosition="Start" AutoScroll="True" >
<Items> <Items>
<f:Form runat="server"> <f:Form runat="server">
<Toolbars> <Toolbars>

7
北京北汽/SCP/Views/PlanData/SCP_ASK.aspx.cs

@ -42,7 +42,7 @@ namespace SCP.PlanData
} }
private void BindDDL_Site() private void BindDDL_Site()
{ {
var _ls = ScpCache.ADRESSList; var _ls = ScpCache.ADRESSList.Where(q=>q.SubSite == CurrentUser.UserdSite).ToList();
DDL_Site.DataSource = _ls; DDL_Site.DataSource = _ls;
DDL_Site.DataBind(); DDL_Site.DataBind();
var name = CurrentUser.Name.ToString(); var name = CurrentUser.Name.ToString();
@ -102,10 +102,9 @@ namespace SCP.PlanData
BtnPublish.Hidden = false; BtnPublish.Hidden = false;
BtnCanclePublish.Hidden = false; BtnCanclePublish.Hidden = false;
} }
if (CurrentUser.RoleList.Contains("采购人员") && CurrentUser.FactoryList.Contains("CQBMPT")) if (CurrentUser.RoleList.Contains("采购人员") && ( CurrentUser.UserdSite =="CQ01" || (CurrentUser.UserdSite == "CD01") ))
{ {
DDL_Site.Hidden = false; DDL_Site.Hidden = false;
} }
} }
private void SetRoleRule() private void SetRoleRule()
@ -377,7 +376,7 @@ namespace SCP.PlanData
_dt = ExcelHelper.GetDataTableOfXlsx(_stream); _dt = ExcelHelper.GetDataTableOfXlsx(_stream);
} }
var list = ConvertHelper.ToList<SCP_PO_DETAIL_EXPORT_MODEL>(ExcelHelper.RemoveEmpty(_dt)).ToList(); var list = ConvertHelper.ToList<SCP_PO_DETAIL_EXPORT_MODEL>(ExcelHelper.RemoveEmpty(_dt)).ToList();
if (CurrentUser.FactoryList.Contains("CQBMPT")) if (CurrentUser.UserdSite == "CQ01" || (CurrentUser.UserdSite == "CD01"))
{ {
Ssite = DDL_Site.SelectedValue; Ssite = DDL_Site.SelectedValue;
} }

12
北京北汽/SCP/Views/PlanData/SCP_PO_CQ.aspx.cs

@ -57,6 +57,14 @@ namespace SCP.Views.PlanData
linkbutton.Hidden = false; linkbutton.Hidden = false;
} }
if (CurrentUser.RoleList.Contains("采购人员") && CurrentUser.SubSiteList.Contains("CD01"))
{
FileUp.Hidden = false;
btnInput_Contract.Hidden = false;
btnInput_Non_Contract.Hidden = false;
linkbutton.Hidden = false;
}
} }
public void BindOrder() public void BindOrder()
@ -267,11 +275,11 @@ namespace SCP.Views.PlanData
} }
if (CurrentUser.ConfigList.ContainsKey("数据中心接口")) if (CurrentUser.ConfigList.ContainsKey("数据中心接口"))
{ {
saveret = SCP_DC_UNI_CONTROLLER.WritePo_PO(list, CurrentUser.FactoryList[0], CurrentUser.Name, DateTime.Now, p_modtype, CurrentUser.SubSiteList[0], CurrentUser.ChineseName, CurrentUser.CellPhone); saveret = SCP_DC_UNI_CONTROLLER.WritePo_PO(list, CurrentUser.FactoryList[0], CurrentUser.Name, DateTime.Now, p_modtype, CurrentUser.UserdSite, CurrentUser.ChineseName, CurrentUser.CellPhone);
} }
else else
{ {
saveret = SCP_PO_CONTROLLER.Save_EXCEL_PO_MOD(list, CurrentUser.FactoryList[0], CurrentUser.Name, DateTime.Now, p_modtype, CurrentUser.SubSiteList[0], CurrentUser.ChineseName, CurrentUser.CellPhone); saveret = SCP_PO_CONTROLLER.Save_EXCEL_PO_MOD(list, CurrentUser.FactoryList[0], CurrentUser.Name, DateTime.Now, p_modtype, CurrentUser.UserdSite, CurrentUser.ChineseName, CurrentUser.CellPhone);
} }
//if (CurrentUser.ConfigList.ContainsKey("数据中心接口")) //if (CurrentUser.ConfigList.ContainsKey("数据中心接口"))
//{ //{

23
北京北汽/SCP/Views/PlanData/SCP_PO_CREATE_ASK.aspx.cs

@ -32,7 +32,7 @@ namespace SCP.PlanData
} }
private void BindDDL_Site() private void BindDDL_Site()
{ {
var _ls = ScpCache.ADRESSList; var _ls = ScpCache.ADRESSList.Where(p =>p.SubSite == CurrentUser.UserdSite).ToList();
DDL_Site.DataSource = _ls; DDL_Site.DataSource = _ls;
DDL_Site.DataBind(); DDL_Site.DataBind();
var name = CurrentUser.Name.ToString(); var name = CurrentUser.Name.ToString();
@ -41,23 +41,6 @@ namespace SCP.PlanData
{ {
DDL_Site.SelectedIndex = _ls.IndexOf(_ls.FirstOrDefault(q => q.UID == buyer.AddressUID)); DDL_Site.SelectedIndex = _ls.IndexOf(_ls.FirstOrDefault(q => q.UID == buyer.AddressUID));
} }
//List<string> stinglist = new List<string>();
//var list = _ls.Select(q => q.NamePone).ToList();
//if (list != null)
//{
// list.ForEach(q =>
// {
// if (q.Contains(' '))
// {
// stinglist.Add(q.Substring(0, q.IndexOf(' ')));
// }
// });
//}
//if (stinglist != null)
//{
// DDL_Site.SelectedIndex = stinglist.IndexOf(CurrentUser.ChineseName) == -1?0: stinglist.IndexOf(CurrentUser.ChineseName);
//}
} }
private void SetRoleRule() private void SetRoleRule()
@ -69,7 +52,7 @@ namespace SCP.PlanData
} }
private void CheckRolesMenu() private void CheckRolesMenu()
{ {
if (CurrentUser.RoleList.Contains("采购人员") && CurrentUser.FactoryList.Contains("CQBMPT")) if (CurrentUser.RoleList.Contains("采购人员") && ((CurrentUser.UserdSite == "CQ01") || (CurrentUser.UserdSite == "CD01")))
{ {
DDL_Site.Hidden = false; DDL_Site.Hidden = false;
@ -460,7 +443,7 @@ namespace SCP.PlanData
} }
} }
string Ssite = ""; string Ssite = "";
if (CurrentUser.FactoryList.Contains("CQBMPT")) if ((CurrentUser.UserdSite == "CQ01") || (CurrentUser.UserdSite == "CD01"))
{ {
Ssite = DDL_Site.SelectedValue; Ssite = DDL_Site.SelectedValue;
} }

6
北京北汽/SCP/Views/SupplierData/SCP_ASN_DETAIL.aspx.cs

@ -418,7 +418,7 @@ namespace SCP.SupplierData
BindDetail(); BindDetail();
var SubSite = SCP_BARCODE_CONTROLLER.GetBillNum(_asn.AsnBillNum); var SubSite = SCP_BARCODE_CONTROLLER.GetBillNum(_asn.AsnBillNum);
if (SubSite.Site == "CQBMPT") if (SubSite.Site == "CQBMPT" || SubSite.Site == "CDBMPT")
{ {
var str = string.Format("window.open(\"../../Handlers/GenerateReport.ashx?report=SendBill_CQ&data=102&type=pdf&filename=SendBill.pdf&AsnBillNum={0}&open=\")", _asn.AsnBillNum); var str = string.Format("window.open(\"../../Handlers/GenerateReport.ashx?report=SendBill_CQ&data=102&type=pdf&filename=SendBill.pdf&AsnBillNum={0}&open=\")", _asn.AsnBillNum);
PageContext.RegisterStartupScript(str); PageContext.RegisterStartupScript(str);
@ -536,7 +536,7 @@ namespace SCP.SupplierData
Alert.Show(AsnBillNum + GetResourceKey("请先点击确认发货再打印发货单!")); Alert.Show(AsnBillNum + GetResourceKey("请先点击确认发货再打印发货单!"));
return; return;
} }
if (SubSite.Site == "CQBMPT") if (SubSite.Site == "CQBMPT" || SubSite.Site == "CDBMPT")
{ {
var str = string.Format("window.open(\"../../Handlers/GenerateReport.ashx?report=SendBill_CQ&data=102&type=pdf&filename=SendBill.pdf&AsnBillNum={0}&open=\")", AsnBillNum); var str = string.Format("window.open(\"../../Handlers/GenerateReport.ashx?report=SendBill_CQ&data=102&type=pdf&filename=SendBill.pdf&AsnBillNum={0}&open=\")", AsnBillNum);
PageContext.RegisterStartupScript(str); PageContext.RegisterStartupScript(str);
@ -560,7 +560,7 @@ namespace SCP.SupplierData
return; return;
} }
var SubSite = SCP_BARCODE_CONTROLLER.GetBillNum(AsnBillNum); var SubSite = SCP_BARCODE_CONTROLLER.GetBillNum(AsnBillNum);
if (!string.IsNullOrEmpty(AsnBillNum) && SubSite.Site == "CQBMPT") if (!string.IsNullOrEmpty(AsnBillNum) && (SubSite.Site == "CQBMPT"|| SubSite.Site == "CDBMPT"))
{ {
var str = string.Format("window.open(\"../../Handlers/GenerateReport.ashx?report=Material_CQ&data=101&type=pdf&filename=标签.pdf&AsnBillNum={0}&open=\")", AsnBillNum); var str = string.Format("window.open(\"../../Handlers/GenerateReport.ashx?report=Material_CQ&data=101&type=pdf&filename=标签.pdf&AsnBillNum={0}&open=\")", AsnBillNum);
PageContext.RegisterStartupScript(str); PageContext.RegisterStartupScript(str);

2
北京北汽/SCP/grf/Material.grf

@ -1 +1 @@
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

2
北京北汽/SCP/grf/Material_CQ.grf

@ -1 +1 @@
BASE64/jQAAHic5VtLb9vIHT+rQL8DsT4IKFIu348KPFiUlHjXUmxJjoMGxoKmxhZrisMdUnFc9JoWi7YIijYFipy2PRUo0r0V28Xufpm1Nzn1K3Rm+JAojyRKkd2uIwMS5/Gfx+//nP/Q//nq24fHvwBuzHVBCFH84x9VHgEUeTCwqhqv8RIvVHFdF5x6UQxQB1rVXUN7oO49arbl3f37LbnX/rmt1T96/EB+ZMot835np65+ZKttrSF3OorR0pra423tQDH3jZZJi01Nayutw05d3v54u6lJ+sFjc3tP1wwyU7qaFgzIWiodZwSs6uXr33739R9Jc6Xn/RJYoqAKgnBPIBWHwDsdxpYi0JI9dFAEYkuUFVxsBgP83Tvzwv0xQBdWfzLBHvICvKF8SEnV6GjeIB5aBm+QwoNkaJGO/BB5IIgJMLtOMIhcJwSkehecxG0HnXqBJfAqqenDsFjRJaMUq+owjuGoUJesNV1dA8SO599H3oAucAjPbejvegGwWllFF55PKlKyOkSDZE+VXnzhg8h6ckRKydiVnNMu7odRoh1tGAS4Fm+sF2NMTq3qHoJPPTyO1dvf7di7O6LIi7U9IhVRzPWAO0ZefMHtBCfQajl+BGoHEUDcTsOKnNpO4MWe43O2Ezs+PLUO271P3E+PR2Fca+AqrgfHyMUMlHRewH8iocW8gC4YjBHgTiDCJRA6CPepbY9jyPWRE0S+EwOrj8agtue4ZwAvg/BMEUytdgjRWRQ7ZANkDfWGauaraHk+4KgIffABnakZuOgipH3JVGRJ6R76zil37sVDzoX+eBSQHz8Z9HwIAi6EUeQd+yDt3d7u9rgJcmktGa5/EQIbjkJMe+z5GChLqOGFU+TQU4yTDVDsnXgu2VFCth2GPinTHWChDGKr29xuHHZ3+k283yg6x+yy2p6LYARPYkkQqKZUKlSoMZOsagR8wtkYhpwoCNxPuBMER1y/98mxg1w4ABwVDO74ght7A24AIjcZYScGowjDBHwqIElF8pSq3sFOo5pWkK1ZLR86ieBkUsUgao19v+4gG89cXda3bL89B8UlB4zd4dJebSdwTgHZUmF7BP/TVIUWUGNeYvnqjEdL59mPLwoT2GOEQOBelIRl3QUStD72gsHS9dkIYEnse6PiNI20shz5wxCgpTMdhIN3mSkhXxdOau5tOA7itdiN7ctabHgEgsHOciY0Pw3LyTbpOCUSiycmT6XUqpHbg0VTo7C0CvZi6J4RS70uu8jyS89mY+ta3jp4fim9Jf2If12X6+WsEPZ8xCWXEJED7NKytTTq1GKnQ8CppgUsGXoncSmJ6ANnVKojgadUxy4YOehsuancBU+BXwYz9xmIouVyMfG0D0/2xw7xxkuJGsD3sJvGKlES0xK8I4iW6LbfLoPSHpwRzUVd/RX6sjUj/U1/knjBpiESbZ6Mk2JOm8R0kCyaNk3VkBnDpQFpQoTDKRL70G5p5K3zhqBKYj5TVOxqA9+/tp2kx+xKKi0EAOlPzwCVqfGCGMF0lMI4WbyD6bI4fAqurDofnxWD008WiDeQc04OC78iD/iMQH/p0YA+JSeCo5wu51S+Jeq9LCWv7ZJDAaky8qo0nEvXNsWmvPWJOJki44+UnEmuz5tQSCtTyNcpRF4VDFFeRKWw5lEEXRfZVNPPxY1jZBbtOjvWld50GQJ5VQJlVQKVQSDw5iISbXUSfXUSYxWS+VybaHM+snivwLg6jiiwUENkCULTJH9TjTOJg+yTJhC+ef3m63++ffX87Vd/qE4303OkKeTZhOxTzCpkn2J2gYnIdUMz2emMsckapsuJ0SHxpufW4bNC0yQWpW1iYSNT4BwOvRgU2hJtUnm8TU0utOTskk3N0NVC2xxEGUmZGTx19Rqe8xCdh+ksqhgY8Cy2qt998+ry33+6fPlrjgRZ+amDScLGtg1GkI1s2rICrsSeZymdySwwJHgyGGDwkiEqGpsBmmCoirQZBkznx6YWsREOPNlKDjVbRxyXPJPVbB0t4ESxhMHshU4w5clY9reo+XdJuZcKoFRlCZkkipqml5Y0VZfUH6qgkX5YRFySjRR4QWRKYZogWSh472JeZ7hwd0zo5e+ev/nb88sX/+LqSXJws5orv6c+e6lay+X9SqLYDI3PtFs3FFFnS6FuyhsQwjr0BwU05iLJUF8nuI/g+Qw5ru0NkReczdaXUfYsS3Vj2r4Cc+6OJfj+s79f/fkvVy9evPn2C45AzE1lAlmEa5gDZWOOXJT+31S+lGQpt+FH5gF3WzJEvAkVIHuxP1nXdirMkIgB1PyQSMWWUZENNuSauBLc8+MhhozeUjyUZcDXiMQXp2XuFTIVt+IqVXYEXJLTIm8ad5nT9Grhxjyhelfj3qvPvrz6x+fc9MUMq3uhxMjCbSy8vY7BD9nNae9jAHX18ou3v3nBTd1ysjqvaQRXQJQaSJEXzVlAEyMpSJqSXcDkAFAmyLxqGvIcJujmZhggqoQFm+ZAcpggq+nDlhfPnCoIf7Z97zSw2t5g4AN60cK0pph5JJXFPdki96hreM8pt8QyF/Kmwl9GquV/axfS9AFDgtMWke3G5x1rZV42ZltSYWTJaToJXcp+155die3Q97z2YOTRV7Q6MABMAcgTSbVUGGqTFGf6mHpcXMqvSbeO+KxE7ldp4+Rdmp9d4M+H7faHAzJIEYZkrU2EIKIX3pb0DhJHbgGXH8K09/0Qpt/VoObN679e/v4lTeZhSeQ6kL8BT6Qz9bjswUthA7ypQJyRCLzN9FV+/CoYhnlGYrPORb+dVOvN6zxra9KmT53lLlWFu2op9n869XoRs+O696VCWTef2AjG/VOJc7upG6ZqbAZlSZBuICDNA0qfePUVdD1z4Qt13Sjq+q0phHlX9eHt519+/+o1l76BeQN6Yd6C18y9T/YeaXmxm/NSzuQxf2K/Clh4d6/vxX4SXWcrpYXpd/ZoF+Ybe9jbjkPanPwzS2XuS3yzpzobZP/Dk2NRpGAunX7Tr/8CIpOq0g== BASE648DQAAHic5VtLb9vIHT+rQL8DsT4IKFIu348KPFiUlHjXUmxJjoMGxoKmxhZrisMdUnFc9JoWi7YIijYFipy2PRUo0r0V28Xufpm1Nzn1K3Rm+JAojyRKkd2uIwMS5/Gfx+//nP/Q//nq24fHvwBuzHVBCFH84x9VHgEUeTCwqhqv8RIvVHFdF5x6UQxQB1rVXUN7oO49arbl3f37LbnX/rmt1T96/EB+ZMot835np65+ZKttrSF3OorR0pra423tQDH3jZZJi01Nayutw05d3v54u6lJ+sFjc3tP1wwyU7qaFgzIWiodZwSs6uXr33739R9Jc6Xn/RJYoqAKgnBPIBWHwDsdxpYi0JI9dFAEYkuUFVxsBgP83Tvzwv0xQBdWfzLBHvICvKF8SEnV6GjeIB5aBm+QwoNkaJGO/BB5IIgJMLtOMIhcJwSkehecxG0HnXqBJfAqqenDsFjRJaMUq+owjuGoUJesNV1dA8SO599H3oAucAjPbejvegGwWllFF55PKlKyOkSDZE+VXnzhg8h6ckRKydiVnNMu7odRoh1tGAS4Fm+sF2NMTq3qHoJPPTyO1dvf7di7O6LIi7U9IhVRzPWAO0ZefMHtBCfQajl+BGoHEUDcTsOKnNpO4MWe43O2Ezs+PLUO271P3E+PR2Fca+AqrgfHyMUMlHRewH8iocW8gC4YjBHgTiDCJRA6CPepbY9jyPWRE0S+EwOrj8agtue4ZwAvg/BMEUytdgjRWRQ7ZANkDfWGauaraHk+4KgIffABnakZuOgipH3JVGRJ6R76zil37sVDzoX+eBSQHz8Z9HwIAi6EUeQd+yDt3d7u9rgJcmktGa5/EQIbjkJMe+z5GChLqOGFU+TQU4yTDVDsnXgu2VFCth2GPinTHWChDGKr29xuHHZ3+k283yg6x+yy2p6LYARPYkkQqKZUKlSoMZOsagR8wtkYhpwoCNxPuBMER1y/98mxg1w4ABwVDO74ght7A24AIjcZYScGowjDBHwqIElF8pSq3sFOo5pWkK1ZLR86ieBkUsUgao19v+4gG89cXda3bL89B8UlB4zd4dJebSdwTgHZUmF7BP/TVIUWUGNeYvnqjEdL59mPLwoT2GOEQOBelIRl3QUStD72gsHS9dkIYEnse6PiNI20shz5wxCgpTMdhIN3mSkhXxdOau5tOA7itdiN7ctabHgEgsHOciY0Pw3LyTbpOCUSiycmT6XUqpHbg0VTo7C0CvZi6J4RS70uu8jyS89mY+ta3jp4fim9Jf2If12X6+WsEPZ8xCWXEJED7NKytTTq1GKnQ8CppgUsGXoncSmJ6ANnVKojgadUxy4YOehsuancBU+BXwYz9xmIouVyMfG0D0/2xw7xxkuJGsD3sJvGKlES0xK8I4iW6LbfLoPSHpwRzUVd/RX6sjUj/U1/knjBpiESbZ6Mk2JOm8R0kCyaNk3VkBnDpQFpQoTDKRL70G5p5K3zhqBKYj5TVOxqA9+/tp2kx+xKKi0EAOlPzwCVqfGCGMF0lMI4WbyD6bI4fAqurDofnxWD008WiDeQc04OC78iD/iMQH/p0YA+JSeCo5wu51S+Jeq9LCWv7ZJDAaky8qo0nEvXNsWmvPWJOJki44+UnEmuz5tQSCtTyNcpRF4VDFFeRKWw5lEEXRfZVNPPxY1jZBbtOjvWld50GQJ5VQJlVQKVQSDw5iISbXUSfXUSYxWS+VybaHM+snivwLg6jiiwUENkCULTJH9TjTOJg+yTJhC+ef3m63++ffX87Vd/qE4303OkKeTZhOxTzCpkn2J2gYnIdUMz2emMsckapsuJ0SHxpufW4bNC0yQWpW1iYSNT4BwOvRgU2hJtUnm8TU0utOTskk3N0NVC2xxEGUmZGTx19Rqe8xCdh+ksqhgY8Cy2qt998+ry33+6fPlrjgRZ+amDScLGtg1GkI1s2rICrsSeZymdySwwJHgyGGDwkiEqGpsBmmCoirQZBkznx6YWsREOPNlKDjVbRxyXPJPVbB0t4ESxhMHshU4w5clY9reo+XdJuZcKoFRlCZkkipqml5Y0VZfUH6qgkX5YRFySjRR4QWRKYZogWSh472JeZ7hwd0zo5e+ev/nb88sX/+LqSXJws5orv6c+e6lay+X9SqrY1+Up027dUESdLYUbUu869AcFOOZCydBfJ7iP4PkMOa7tDZEXnM3Wl9H2LE11Y+q+Anfujin4/rO/X/35L1cvXrz59guOQMxNpQJZhGvYA2VjnlyU/t90vpRkKbfhSOYBd1syRNwJFSB7sUNZ13gqzJiIAdT8mEjldVORDTbkmrgS3PMDIoaM3lJAlKXA1wjFF+dl7hVSFbfiK1V2CFyS0yJvGneZ0/Ru4cY8oXpXA9+rz768+sfn3PTNDKt7ocRIw20svr2OwQ/ZzWnvYwB19fKLt795wU1dc7I6r2kEV0CUGkiRF81ZQBMjKUiakt3A5ABQJsi8ahryHCbo5mYYIKqEBZvmQHKYIKvpw5YXz5wqCH+2fe80sNreYOADetPCtKaYeSSXxT3ZIhepa3jPKbfEMhfypsJfRq7lf2sX0vwBQ4LTFpHtxq9nsjJhlI3ZllQYWXKaTkKXst+1Z1diO/RFrz0YefQdrQ4MAFMA8kxSLRWG2iTHmT6mHheX8nvSrSM+K5ELVto4eZnmZxf482G7/eGADFKEIVlrEyGI6I23Jb2DxJFrwOWHMO19P4TpdzWoefP6r5e/f0mzeVgSuQ7kb8ATzaA3P/JWeN0wzHk3HBuKvBmpv9vMV+XnrYIlmGcVNutN9NtJrt68krO2Jm36mFnuGlW4q6Zh/6dTLxQxO657QyqU9euJpWCkpEsc1E3dMFVjMyhLgnQDEWgeQfrEja+g65nPXqjrRlHXb00hzLuqD28///L7V6+59J3LG9ALk6kWZfOTChtcbU62L3tztLzYzXkNZ/KYP7Ff/iu8rdf3Yj8Jp7OV0sL0W3q0C/MdPextxyFtTv59pTL3tb3ZY5wNsv/aybEoUjCXTr/p138BGt+peg==

2
北京北汽/SCP/grf/SendBill_CQ.grf

@ -1 +1 @@
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
Loading…
Cancel
Save