コード例 #1
0
        public override async Task <long> CreateMainChildAsync(MainChildInput <FieldFilterInput, FieldFiltercInput> input)
        {
            var res = await base.CreateMainChildAsync(input);

            _filterProvider.RemoveNewType(input.Main.FgSource, input.Main.FgDest);
            return(res);
        }
コード例 #2
0
        public override async Task <int> UpdateMainChildAsync(long keyValue, byte[] timestamp, MainChildInput <FieldFilterUpdInput, FieldFiltercUpdInput> input)
        {
            var res = await base.UpdateMainChildAsync(keyValue, timestamp, input);

            _filterProvider.RemoveNewType(input.Main.FgSource ?? string.Empty, input.Main.FgDest);
            return(res);
        }
コード例 #3
0
        public async Task <MsgOutput> UpdateMainChildAsync([FromRoute] long id, [FromRoute] byte[] timestamp, [FromBody] MainChildInput <FieldFilterUpdInput, FieldFiltercUpdInput> input)
        {
            await _fieldFilterService.UpdateMainChildAsync(id, timestamp, input);

            return(MsgOutputOption.OkMsg);
        }
コード例 #4
0
        public async Task UpdateMainChildAsyncTest()
        {
            //清空
            var repository = _serviceProvider.GetRequiredService <IFieldFilterRepository>();
            await repository.ExecuteSqlRawAsync($"delete from {nameof(fieldfilter_fg)} where 1=1");

            //创建
            var api   = WorkUrl(nameof(FieldFilterController), nameof(FieldFilterController.CreateMainChildAsync));
            var input = new MainChildInput <FieldFilterInput, FieldFiltercInput>
            {
                Main = new FieldFilterInput
                {
                    FgSource = typeof(userinfo_us).FullName ?? nameof(userinfo_us),
                    FgDest   = $"{typeof(userinfo_us).FullName ?? nameof(userinfo_us)}_DTO"
                },
                Child = new[]
                {
                    new FieldFiltercInput {
                        FgcField = nameof(userinfo_us.name), FgcIorder = 1
                    },
                    new FieldFiltercInput {
                        FgcField = nameof(userinfo_us.age), FgcIorder = 2
                    },
                }
            };
            var res = await _client.PostAsync(api, CreateHttpContent(input));

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            var json = await res.Content.ReadAsStringAsync();

            var data     = JSONObject(json);
            var keyvalue = data["keyvalue"]?.Value <int>();

            Assert.IsNotNull(keyvalue);
            //查询
            api = WorkUrl(nameof(FieldFilterController), nameof(FieldFilterController.SingleMainChildAsync), keyvalue !);
            res = await _client.GetAsync(api);

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            json = await res.Content.ReadAsStringAsync();

            var output = JSONDeserialize <MainChildOutput <v_fieldfilter, v_fieldfilterc> >(json);

            Assert.IsNotNull(output);
            //修改
            api = WorkUrl(nameof(FieldFilterController), nameof(FieldFilterController.UpdateMainChildAsync), keyvalue, output.Main.timestamp.ToBase64());
            var updinput = new MainChildInput <FieldFilterUpdInput, FieldFiltercUpdInput>
            {
                Main  = new FieldFilterUpdInput(),
                Child = new[]
                {
                    new FieldFiltercUpdInput {
                        FgcField = nameof(userinfo_us.name), FgcIorder = 2
                    },
                    new FieldFiltercUpdInput {
                        FgcField = nameof(userinfo_us.age), FgcIorder = 3
                    },
                    new FieldFiltercUpdInput {
                        FgcField = nameof(userinfo_us.sex), FgcIorder = 4
                    },
                    new FieldFiltercUpdInput {
                        FgcField = nameof(userinfo_us.birthday), FgcIorder = 5
                    }
                }
            };
            var mainUpdinput =
                res = await _client.PutAsync(api, CreateHttpContent(updinput));

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            //验证修改
            api = WorkUrl(nameof(FieldFilterController), nameof(FieldFilterController.SingleMainChildAsync), keyvalue);
            res = await _client.GetAsync(api);

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            json = await res.Content.ReadAsStringAsync();

            output = JSONDeserialize <MainChildOutput <v_fieldfilter, v_fieldfilterc> >(json);
            Assert.IsNotNull(output);
            Assert.AreEqual(output.Child.Count(), 4);
            Assert.AreEqual(output.Child.Where(x => x.fgc_iorder == 1).Count(), 0);
            //删除
            api = WorkUrl(nameof(FieldFilterController), nameof(FieldFilterController.DeleteMainChildAsync), keyvalue, output.Main.timestamp.ToBase64());
            res = await _client.DeleteAsync(api);

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
        }
コード例 #5
0
        public async Task <KeyOutput <long> > CreateMainChildAsync([FromBody] MainChildInput <FieldFilterInput, FieldFiltercInput> input)
        {
            var keyvalue = await _fieldFilterService.CreateMainChildAsync(input);

            return(new KeyOutput <long>(keyvalue));
        }