using JNPF.Common.Const; using JNPF.Common.Contracts; using JNPF.Common.Core.Manager; using JNPF.Common.Security; using JNPF.DataEncryption; using JNPF.DependencyInjection; using JNPF.DynamicApiController; using JNPF.JsonSerialization; using JNPF.Logging.Attributes; using JNPF.Systems.Entitys.Permission; using JNPF.Systems.Entitys.System; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Cors; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; using Npgsql.TypeHandlers; using SqlSugar; using Tnb.BasicData.Entities; using Tnb.ProductionMgr.Entities.Entity; using Tnb.ProductionMgr.Entities.Entity.ErpEntity; using Tnb.WarehouseMgr.Entities.Entity; using Tnb.BasicData; using Tnb.WarehouseMgr.Entities; namespace JNPF.Systems.Common; /// /// 测试接口. /// [ApiDescriptionSettings(Name = "Test", Order = 306)] [Route("api")] public class TestService : IDynamicApiController, ITransient { //private readonly ISqlSugarRepository _repository; private readonly SqlSugarScope _sugar; private readonly IDataBaseManager _databaseService; public TestService(ISqlSugarClient db, IDataBaseManager databaseService) { //_repository = repository; _sugar = (SqlSugarScope)db; _databaseService = databaseService; } /// /// 用于健康检查应用程序 /// /// [HttpGet("heart-beat")] [AllowAnonymous] [IgnoreLog] [DisableCors] public async Task Heartbeat() { return await Task.FromResult(new { reply = "应用程序运行正常" }); } [HttpGet("test")] [AllowAnonymous] [IgnoreLog] [DisableCors] public async Task test() { try { //var aaaaa= JsEngineUtil.AggreFunction("COUNT('1','1','1')").ToString(); //var xx = App.HttpContext.Request.Host.ToString(); //var sql = "SELECT TOP 1 [F_PARENTID],[F_PROCESSID],[F_ENCODE],[F_FULLNAME],[F_FLOWURGENT],[F_FLOWID],[F_FLOWCODE],[F_FLOWNAME],[F_FLOWTYPE],[F_FLOWCATEGORY],[F_FLOWFORM],[F_FLOWFORMCONTENTJSON],[F_FLOWTEMPLATEJSON],[F_FLOWVERSION],[F_STARTTIME],[F_ENDTIME],[F_THISSTEP],[F_THISSTEPID],[F_GRADE],[F_STATUS],[F_COMPLETION],[F_DESCRIPTION],[F_SORTCODE],[F_ISASYNC],[F_ISBATCH],[F_TASKNODEID],[F_TEMPLATEID],[F_REJECTDATAID],[F_DELEGATEUSER],[F_CREATORTIME],[F_CREATORUSERID],[F_ENABLEDMARK],[F_LastModifyTime],[F_LastModifyUserId],[F_DeleteMark],[F_DeleteTime],[F_DeleteUserId],[F_Id] FROM [FLOW_TASK] WHERE (( [F_DeleteMark] IS NULL ) AND ( [F_Id] = N'367536153122855173' ))"; //var darta = _sqlSugarRepository.AsSugarClient().Ado.SqlQuery(sql); var data = await _sugar.Queryable().FirstAsync(a => true); var json = App.GetService(); return data; } catch (Exception e) { throw; } } public async Task ImportMoldData() { } public void xx(UserEntity user) { user.Account = "2312321"; } public void xx1(UserEntity user) { user.Account = "2312321"; } [HttpGet] [AllowAnonymous] public string test1() { var mysqlDb = _sugar.GetConnection("erpdb"); List list2 = _sugar.Queryable().ToList(); return JsonConvert.SerializeObject(list2); } [HttpGet] [AllowAnonymous] public async Task test2() { // WmsMaterialTransferD wmsMaterialTransferd = await _sugar.Queryable().Where(r => r.id == "35610026468885").SingleAsync(); // WmsMaterialTransfer wmsMaterialTransfer = await _sugar.Queryable().SingleAsync(x => x.id == wmsMaterialTransferd.bill_id); // List dList = await _sugar.Queryable().Where(x => x.bill_id == wmsMaterialTransferd.bill_id).OrderBy(x=>x.id).ToListAsync(); // DictionaryDataEntity unitData = await _sugar.Queryable() // .LeftJoin((x, y) => x.Id == y.DictionaryTypeId) // .Where((x, y) => x.EnCode == DictConst.MeasurementUnit && y.EnCode == wmsMaterialTransferd.unit_id) // .Select((x,y)=>y) // .FirstAsync(); // List ids = new List(); // ids.Add(wmsMaterialTransfer.create_id); // ids.Add(WmsWareHouseConst.AdministratorOrgId); // ids.Add(wmsMaterialTransfer.warehouse_outstock); // ids.Add(wmsMaterialTransfer.warehouse_instock); // ids.Add(wmsMaterialTransferd.material_id); // if (unitData != null) // { // ids.Add(unitData.Id); // } // List erpExtendFields = await _sugar.Queryable().Where(x=>ids.Contains(x.table_id)).ToListAsync(); // // ErpExtendField erpOrg = erpExtendFields.Find(x => x.table_id == (wmsMaterialTransfer.org_id ?? WmsWareHouseConst.AdministratorOrgId)); // string erpCreateId = erpExtendFields.Find(x=>x.table_id==wmsMaterialTransfer.create_id)?.user_id ?? ""; // // List> requestData = new List>(); // Dictionary erpRequestData = new Dictionary(); // string nowStr = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); // erpRequestData.Add("billmaker",erpCreateId); // erpRequestData.Add("cdptid","1001A1100000000JRLI1");// 先写死 // erpRequestData.Add("cdptvid","0001A11000000007GGO8");// 先写死 // erpRequestData.Add("corpoid",erpOrg.corpoid); // erpRequestData.Add("corpvid",erpOrg.corpoid); // erpRequestData.Add("cothercalbodyoid",erpOrg.pk_org); // erpRequestData.Add("cotherwhid",erpExtendFields.Find(x=>x.table_id==wmsMaterialTransfer.warehouse_instock)?.cotherwhid ?? ""); // erpRequestData.Add("creationtime",nowStr); // erpRequestData.Add("creator",erpCreateId); // erpRequestData.Add("ctrantypeid","0001H11000000000D31W"); // erpRequestData.Add("cwarehouseid",erpExtendFields.Find(x=>x.table_id==wmsMaterialTransfer.warehouse_outstock)?.cotherwhid ?? ""); // erpRequestData.Add("dbilldate",nowStr); // erpRequestData.Add("dmakedate",nowStr); // erpRequestData.Add("ntotalnum",20); // erpRequestData.Add("pk_group",erpOrg.pk_group); // erpRequestData.Add("pk_org",erpOrg.pk_org); // erpRequestData.Add("pk_org_v",erpOrg.pk_org_v); // erpRequestData.Add("vbillcode",wmsMaterialTransfer.bill_code); // erpRequestData.Add("vtrantypecode","4I-01");//其他出库 先写死 // List> erpRequestDataDetails = new List>(); // erpRequestDataDetails.Add(new Dictionary() // { // ["cbodytranstypecode"] = "4I-01", // ["cbodywarehouseid"] = erpExtendFields.Find(x=>x.table_id==wmsMaterialTransfer.warehouse_outstock)?.cotherwhid ?? "", // ["cmaterialoid"] = erpExtendFields.Find(x=>x.table_id==wmsMaterialTransferd.material_id)?.cmaterialoid ?? "", // ["cmaterialvid"] = erpExtendFields.Find(x=>x.table_id==wmsMaterialTransferd.material_id)?.cmaterialvid ?? "", // ["corpoid"] = erpOrg.corpoid, // ["corpvid"] = erpOrg.corpvid, // ["crowno"] = wmsMaterialTransferd.lineno, // ["csourcebillbid"] = wmsMaterialTransferd.erp_line_pk, // ["csourcebillhid"] = wmsMaterialTransfer.erp_pk, // ["cunitid"] = erpExtendFields.Find(x=>x.table_id==unitData.Id)?.cunitid ?? "", // ["cvendorid"] = "", // ["cvendorvid"] = "", // ["dbizdate"] = nowStr, // ["nnum"] = 20, // ["nshouldnum"] = wmsMaterialTransferd.qty, // ["pk_group"] = erpOrg.pk_group, // ["pk_org"] = erpOrg.pk_org, // ["pk_org_v"] = erpOrg.pk_org_v, // ["vbatchcode"] = wmsMaterialTransferd.code_batch, // }); // erpRequestData.Add("dtls",erpRequestDataDetails); // requestData.Add(erpRequestData); // // ThirdWebapiRecord thirdWebapiRecord = new ThirdWebapiRecord(); // thirdWebapiRecord.id = SnowflakeIdHelper.NextId(); // thirdWebapiRecord.third_name = WmsWareHouseConst.BIP; // thirdWebapiRecord.name = "其它出库"; // thirdWebapiRecord.method = "POST"; // thirdWebapiRecord.url = WmsWareHouseConst.BIP_DOMAIN+"uapws/rest/generalout/save"; // thirdWebapiRecord.request_data = JsonConvert.SerializeObject(requestData); // thirdWebapiRecord.create_time = DateTime.Now; // // await _sugar.Insertable(thirdWebapiRecord).ExecuteCommandAsync(); return "123"; } [HttpGet] [AllowAnonymous] public async Task insertUser() { List users = _sugar.Queryable().ToList(); List insertUsers = new List(); List insertUserRelations = new List(); List insertErpExtendFields = new List(); foreach (var user in users) { UserEntity userEntity = new UserEntity(); userEntity.Id = SnowflakeIdHelper.NextId(); userEntity.Account = user.code; userEntity.RealName = user.name; userEntity.Gender = 1; userEntity.OrganizeId = "25193668006933"; userEntity.RoleId = "30327535942933"; userEntity.Secretkey = Guid.NewGuid().ToString(); userEntity.Password = MD5Encryption.Encrypt(MD5Encryption.Encrypt(CommonConst.DEFAULTPASSWORD) + userEntity.Secretkey); userEntity.EntryDate = DateTime.Now; userEntity.EnabledMark = 1; userEntity.CreatorTime = DateTime.Now; insertUsers.Add(userEntity); UserRelationEntity userRelationEntity = new UserRelationEntity(); userRelationEntity.Id = SnowflakeIdHelper.NextId(); userRelationEntity.UserId = userEntity.Id; userRelationEntity.ObjectType = "Role"; userRelationEntity.ObjectId = "30327535942933"; userRelationEntity.CreatorTime = DateTime.Now; insertUserRelations.Add(userRelationEntity); UserRelationEntity userRelationEntity2 = new UserRelationEntity(); userRelationEntity2.Id = SnowflakeIdHelper.NextId(); userRelationEntity2.UserId = userEntity.Id; userRelationEntity2.ObjectType = "Organize"; userRelationEntity2.ObjectId = "25193668006933"; userRelationEntity2.CreatorTime = DateTime.Now; insertUserRelations.Add(userRelationEntity2); ErpExtendField extendField = new ErpExtendField(); extendField.org_id = "25193668006933"; extendField.table_name = "base_user"; extendField.table_id = userEntity.Id; extendField.user_id = user.id; insertErpExtendFields.Add(extendField); } await _sugar.Insertable(insertUsers).ExecuteCommandAsync(); await _sugar.Insertable(insertUserRelations).ExecuteCommandAsync(); await _sugar.Insertable(insertErpExtendFields).ExecuteCommandAsync(); return "测试成功"; } [HttpGet] [AllowAnonymous] public async Task inserDic() { var erpdb = _sugar.GetConnection("erpdb"); List list = await erpdb.Queryable().Where(x=>x.PARENT_CODE=="45").ToListAsync(); List insertList = new List(); List inserteErpExtendFields = new List(); foreach (var item in list) { DictionaryDataEntity dictionaryDataEntity = new DictionaryDataEntity() { Id = SnowflakeIdHelper.NextId(), EnCode = item.CODE, FullName = item.NAME, ParentId = "0", DictionaryTypeId = "25043925951909", EnabledMark = 1, SortCode = 0, }; insertList.Add(dictionaryDataEntity); ErpExtendField extendField = new ErpExtendField() { table_name = "base_dictionarydata", table_id = dictionaryDataEntity.Id, transaction_type_id = item.ID, org_id = "25193668006933", create_time = DateTime.Now, }; inserteErpExtendFields.Add(extendField); } await _sugar.Insertable(insertList).ExecuteCommandAsync(); await _sugar.Insertable(inserteErpExtendFields).ExecuteCommandAsync(); return "测试成功"; } [SugarTable("temp_erp_user")] public class TempErpUser : BaseEntity { public string code { get; set; } public string name { get; set; } } [SugarTable("ERP_BD_BILLTYPE")] public class ErpBdBillType { public string ID { get; set; } public string PARENT_CODE { get; set; } public string CODE { get; set; } public string NAME { get; set; } public string SYSTEMCODE { get; set; } public string PK_GROUP { get; set; } } }