check bugs

This commit is contained in:
yubaolee 2018-03-28 17:35:43 +08:00
parent 0b4dfcd429
commit b01e8aadcc
7 changed files with 100 additions and 38 deletions

View File

@ -1,4 +1,5 @@
using Infrastructure;
using System;
using Infrastructure;
using OpenAuth.App.Request;
using OpenAuth.App.Response;
using OpenAuth.Repository.Domain;
@ -15,38 +16,47 @@ namespace OpenAuth.App
/// </summary>
public TableData Load(QueryFormListReq request)
{
return new TableData
{
count = Repository.GetCount(null),
data = Repository.Find(request.page, request.limit,"CreateDate desc")
data = Repository.Find(request.page, request.limit, "CreateDate desc")
};
}
public void Add(Form obj)
{
UnitWork.Add(obj);
UnitWork.ExecuteSql(FormUtil.GetSql(obj));
if (!string.IsNullOrEmpty(obj.DbName))
{
UnitWork.ExecuteSql(FormUtil.GetSql(obj));
}
UnitWork.Save();
}
public void Update(Form obj)
{
Repository.Update(u => u.Id == obj.Id, u => new Form
{
ContentData = obj.ContentData,
Content = obj.Content,
ContentParse = obj.ContentParse,
Name = obj.Name,
DbName = obj.DbName
ContentData = obj.ContentData,
Content = obj.Content,
ContentParse = obj.ContentParse,
Name = obj.Name,
DbName = obj.DbName,
SortCode = obj.SortCode,
Description = obj.Description,
ModifyDate = DateTime.Now
});
Repository.ExecuteSql(FormUtil.GetSql(obj));
if (!string.IsNullOrEmpty(obj.DbName))
{
UnitWork.ExecuteSql(FormUtil.GetSql(obj));
}
}
public FormResp FindSingle(string id)
{
var form = Get(id);
var form = Get(id);
return form.MapTo<FormResp>();
}

View File

@ -498,7 +498,7 @@ namespace OpenAuth.App
var jsonArray = JArray.Parse(form.ContentData);
// 数据库名称
string tableName="["+ form.DbName + "]";
string tableName= form.DbName ;
// 创建数据表
StringBuilder sql =new StringBuilder("if exists ( select * from sysobjects where name = '"
+tableName+"' and type = 'U') drop table "

View File

@ -36,6 +36,13 @@ namespace OpenAuth.App.Response
/// </summary>
public string Content { get; set; }
/// <summary>
/// 排序码
/// </summary>
public int SortCode { get; set; }
public string Description { get; set; }
/// <summary>
/// 数据库名称

View File

@ -9,7 +9,7 @@
}
<form class="layui-form" action="" id="formEdit">
<form class="layui-form layui-form-pane" action="" id="formEdit">
<input type="hidden" name="Id" v-model="Id" />
<input type="hidden" name="Fields" id="Fields" value="0">
@ -21,7 +21,7 @@
</ul>
<div class="layui-tab-content" style="height: 100px;">
<div class="layui-tab-item layui-show">
<div class="layui-form-item">
<div class="layui-form-item" pane>
<label class="layui-form-label">表单名称</label>
<div class="layui-input-block">
<input type="text" name="Name" v-model="Name" required lay-verify="required"
@ -29,26 +29,26 @@
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">关联数据表名称【英文】</label>
<div class="layui-form-item" pane>
<label class="layui-form-label">关联数据表名</label>
<div class="layui-input-block">
<input type="text" name="DbName" v-model="DbName" required lay-verify="required"
<input type="text" name="DbName" v-model="DbName" required
placeholder="关联数据表名称" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-item" pane>
<label class="layui-form-label">排序码</label>
<div class="layui-input-block">
<input type="text" name="SortCode" value="1" v-model="SortCode" class="layui-input">
<input type="text" name="SortCode" v-model="SortCode" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-item" pane>
<label class="layui-form-label">备注</label>
<div class="layui-input-block">
<input type="text" name="Description" v-model="Description"
placeholder="备注" autocomplete="off" class="layui-input">
<textarea name="Description" v-model="Description"
placeholder="备注" class="layui-textarea"></textarea>
</div>
</div>
@ -60,16 +60,16 @@
</blockquote>
</div>
<div class="layui-row">
<div class="layui-col-xs2">
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('text');">文本框</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('textarea');">多行文本</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('select');">下拉菜单</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('radios');">单选框</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('checkboxs');">复选框</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('macros');">宏控件</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('progressbar');">进度条</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('qrcode');">二维码</button>
<button class="layui-btn layui-btn-radius layui-btn-fluid" onclick="leipiFormDesign.exec('listctrl');">列表控件</button>
<div class="layui-col-xs2 layui-btn-container">
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('text');">文本框</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('textarea');">多行文本</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('select');">下拉菜单</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('radios');">单选框</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('checkboxs');">复选框</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('macros');">宏控件</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('progressbar');">进度条</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('qrcode');">二维码</button>
<button class="layui-btn layui-btn-primary layui-btn-fluid" onclick="leipiFormDesign.exec('listctrl');">列表控件</button>
</div>
<div class="layui-col-xs10">
<script id="myFormDesign" type="text/plain" style="width: 100%;">

View File

@ -1,6 +1,6 @@
layui.config({
base: "/js/"
}).use(['form','vue', 'ztree', 'layer','utils', 'jquery', 'table','droptree','openauth','element'], function () {
}).use(['form', 'vue', 'ztree', 'layer', 'utils', 'jquery', 'table', 'droptree', 'openauth', 'element'], function () {
var form = layui.form,
element = layui.element,
//layer = (parent == undefined || parent.layer === undefined )? layui.layer : parent.layer,
@ -15,6 +15,13 @@
//提交的URL
var url = "/Forms/Add";
$('input[name="DbName"]').focus(function () {
layer.tips('如果为空,则不创建数据库表', 'input[name="DbName"]',
{
tips: 1 //1 上方 3下方
});
});
var vm = new Vue({
el: "#formEdit"
});
@ -40,7 +47,7 @@
wordCount: false,
//关闭elementPath
elementPathEnabled: false,
autoHeightEnabled:true
autoHeightEnabled: true
//默认的编辑区域高度
, initialFrameHeight: 430
, iframeCssUrl: "/js/ueditor/formdesign/bootstrap/css/bootstrap.min.css" //引入自身 css使编辑器兼容你网站css
@ -239,7 +246,7 @@
//--------------以下仅参考-------------------------------------------------------------------
/*设计form的target 然后提交至一个新的窗口进行预览*/
var fields = $("#Fields").val(), formeditor = '';
//获取表单设计器里的内容
formeditor = ue.getContent();
//解析表单设计器控件
@ -271,7 +278,8 @@
} else {
vm.$set('$data',
{
Id: ''
Id: '',
SortCode:1
});
}
@ -308,5 +316,5 @@
//让层自适应iframe
//parent.layer.iframeAuto(index);
})

View File

@ -124,6 +124,7 @@
<Compile Include="TestLogin.cs" />
<Compile Include="TestAuthen.cs" />
<Compile Include="TestOrg.cs" />
<Compile Include="TestForm.cs" />
<Compile Include="TestUser.cs" />
<Compile Include="TestWorkflow.cs" />
</ItemGroup>

View File

@ -0,0 +1,36 @@
using System;
using Infrastructure;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenAuth.App;
using OpenAuth.Repository.Domain;
namespace OpenAuth.UnitTest
{
[TestClass]
public class TestForm : TestBase
{
private FormApp _app;
public TestForm()
{
_app = AutofacExt.GetFromFac<FormApp>();
}
[TestMethod]
public void Update()
{
try
{
var form = _app.FindSingle("048b8074-1a68-4dc4-af15-dbc0914f5745");
var newform = form.MapTo<Form>();
_app.Update(newform);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
}