优化代码生成
This commit is contained in:
@@ -204,7 +204,7 @@ namespace ZR.Admin.WebApi.Controllers
|
||||
var genTable = genTableDto.Adapt<GenTable>().ToUpdate(HttpContext);
|
||||
|
||||
//将前端额外参数转成字符串存入Options中
|
||||
genTable.Options = JsonConvert.SerializeObject(genTableDto.Params);
|
||||
genTable.Options = genTableDto.Params.Adapt<Options>();
|
||||
DbResult<bool> result = GenTableService.UseTran(() =>
|
||||
{
|
||||
int rows = GenTableService.UpdateGenTable(genTable);
|
||||
|
||||
@@ -38,12 +38,13 @@ namespace ZR.Admin.WebApi.Hubs
|
||||
public override Task OnConnectedAsync()
|
||||
{
|
||||
var name = Context.User.Identity.Name;
|
||||
var ip = HttpContextExtension.GetClientUserIp(App.HttpContext);
|
||||
LoginUser loginUser = JwtUtil.GetLoginUser(App.HttpContext);
|
||||
var user = clientUsers.Any(u => u.ConnnectionId == Context.ConnectionId);
|
||||
//判断用户是否存在,否则添加集合
|
||||
if (!user && Context.User.Identity.IsAuthenticated)
|
||||
{
|
||||
clientUsers.Add(new OnlineUsers(Context.ConnectionId, name, loginUser?.UserId));
|
||||
clientUsers.Add(new OnlineUsers(Context.ConnectionId, name, loginUser?.UserId, ip));
|
||||
Console.WriteLine($"{DateTime.Now}:{name},{Context.ConnectionId}连接服务端success,当前已连接{clientUsers.Count}个");
|
||||
//Clients.All.SendAsync("welcome", $"欢迎您:{name},当前时间:{DateTime.Now}");
|
||||
Clients.All.SendAsync(HubsConstant.MoreNotice, SendNotice());
|
||||
|
||||
@@ -16,13 +16,15 @@ namespace ZR.Admin.WebApi.Hubs
|
||||
public long? Userid { get; set; }
|
||||
public string Name { get; set; }
|
||||
public DateTime LoginTime { get; set; }
|
||||
|
||||
public OnlineUsers(string clientid, string name, long? userid)
|
||||
public string UserIP { get; set; }
|
||||
|
||||
public OnlineUsers(string clientid, string name, long? userid, string? userip)
|
||||
{
|
||||
ConnnectionId = clientid;
|
||||
Name = name;
|
||||
LoginTime = DateTime.Now;
|
||||
Userid = userid;
|
||||
UserIP = userip;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ $set(labelName = "")
|
||||
$set(labelDisabled = "")
|
||||
$set(columnName = column.CsharpFieldFl)
|
||||
$set(value = "item.dictValue")
|
||||
|
||||
$if(column.ColumnComment != "")
|
||||
$set(labelName = column.ColumnComment)
|
||||
$else
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
-- 菜单
|
||||
INSERT INTO sys_menu(menuName, parentId, orderNum, path, component, isFrame, isCache, menuType, visible, status, perms, icon, create_by, create_time)
|
||||
VALUES ('${genTable.functionName}', ${parentId}, 999, '${genTable.BusinessName}', '${tool.FirstLowerCase(genTable.ModuleName)}/${genTable.BusinessName}', 0, 0, 'C', '0', '0', '${replaceDto.PermissionPrefix}:list', '', 'system', sysdate());
|
||||
VALUES ('${genTable.functionName}', ${parentId}, 999, '${genTable.BusinessName}', '${tool.FirstLowerCase(genTable.ModuleName)}/${genTable.BusinessName}', 0, 0, 'C', '0', '0', '${replaceDto.PermissionPrefix}:list', 'icon1', 'system', sysdate());
|
||||
|
||||
-- 按钮父菜单id
|
||||
SELECT @menuId := LAST_INSERT_ID();
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
-- ${genTable.functionName}菜单
|
||||
INSERT INTO sys_menu(menuName, parentId, orderNum, path, component, isFrame, isCache, menuType, visible, status, perms, icon, create_by, create_time)
|
||||
VALUES ('${genTable.functionName}', ${parentId}, 999, '${genTable.BusinessName}', '${tool.FirstLowerCase(genTable.ModuleName)}/${genTable.BusinessName}', 0, 0, 'C', '0', '0', '${replaceDto.PermissionPrefix}:list', '', 'system', GETDATE());
|
||||
VALUES ('${genTable.functionName}', ${parentId}, 999, '${genTable.BusinessName}', '${tool.FirstLowerCase(genTable.ModuleName)}/${genTable.BusinessName}', 0, 0, 'C', '0', '0', '${replaceDto.PermissionPrefix}:list', 'icon1', 'system', GETDATE());
|
||||
|
||||
-- 按钮父菜单id
|
||||
declare @menuId int = @@identity
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace ${options.ModelsNamespace}.Models
|
||||
{
|
||||
$foreach(item in genTable.Columns)
|
||||
/// <summary>
|
||||
/// 描述 : ${item.ColumnComment}
|
||||
/// 描述 :${item.ColumnComment} ${item.Remark}
|
||||
/// 空值 :$if(item.IsRequired == "True") false $else true $end
|
||||
/// </summary>
|
||||
$if(replaceDto.ShowBtnExport)
|
||||
|
||||
@@ -56,8 +56,8 @@ $end
|
||||
$if(null != genTable.SubTableName && "" != genTable.SubTableName)
|
||||
.Includes(it => it.Sub.MappingField(z => z.${genTable.SubTableFkName}, () => it.${replaceDto.PKName}))
|
||||
$end
|
||||
$if(genTable.SortField != "" && genTable.SortField != null)
|
||||
.OrderBy("${genTable.SortField} ${genTable.SortType}")
|
||||
$if(genTable.Options.SortField != "" && genTable.Options.SortField != null)
|
||||
.OrderBy("${genTable.Options.SortField} ${genTable.Options.SortType}")
|
||||
$end
|
||||
.Where(predicate.ToExpression())
|
||||
.ToPage(parm);
|
||||
@@ -88,7 +88,7 @@ $end
|
||||
$end
|
||||
|
||||
var response = _${replaceDto.ModelTypeName}Repository.Queryable().Where(predicate.ToExpression())
|
||||
.ToTree(it => it.Children, it => it.${genTable.TreeParentCode}, 0);
|
||||
.ToTree(it => it.Children, it => it.${genTable.Options.TreeParentCode}, 0);
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ $end
|
||||
|
||||
<!-- 数据区域 -->
|
||||
<el-table v-if="refreshTable" :data="dataList" v-loading="loading" ref="table" border highlight-current-row @selection-change="handleSelectionChange"
|
||||
:default-expand-all="isExpandAll" row-key="${tool.FirstLowerCase(genTable.TreeCode)}" :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
|
||||
:default-expand-all="isExpandAll" row-key="${tool.FirstLowerCase(genTable.Options.TreeCode)}" :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
|
||||
<el-table-column type="selection" width="50" align="center"/>
|
||||
${VueViewListContent}
|
||||
<el-table-column label="操作" align="center" width="140">
|
||||
@@ -204,8 +204,8 @@ $end
|
||||
delete node.children;
|
||||
}
|
||||
return {
|
||||
id: node.${tool.FirstLowerCase(genTable.TreeCode)},
|
||||
label: node.${tool.FirstLowerCase(genTable.TreeName)},
|
||||
id: node.${tool.FirstLowerCase(genTable.Options.TreeCode)},
|
||||
label: node.${tool.FirstLowerCase(genTable.Options.TreeName)},
|
||||
children: node.children,
|
||||
};
|
||||
},
|
||||
|
||||
@@ -156,8 +156,7 @@ $end
|
||||
$foreach(column in genTable.Columns)
|
||||
$if(column.IsRequired && column.IsIncrement == false)
|
||||
${column.CsharpFieldFl}: [
|
||||
{ required: true, message: "${column.ColumnComment}不能为空", trigger: $if(column.htmlType == "select")"change"$else"blur"$end
|
||||
$if(column.CsharpType == "int" || column.CsharpType == "long"), type: "number"$end }
|
||||
{ required: true, message: "${column.ColumnComment}不能为空", trigger: $if(column.htmlType == "select")"change"$else"blur"$end }
|
||||
],
|
||||
$end
|
||||
$end
|
||||
|
||||
@@ -88,7 +88,7 @@ $end
|
||||
highlight-current-row
|
||||
@selection-change="handleSelectionChange"
|
||||
:default-expand-all="isExpandAll"
|
||||
row-key="${tool.FirstLowerCase(genTable.TreeCode)}"
|
||||
row-key="${tool.FirstLowerCase(genTable.Options.TreeCode)}"
|
||||
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
|
||||
>
|
||||
<el-table-column type="selection" width="50" align="center"/>
|
||||
@@ -278,7 +278,7 @@ $end
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="text" @click="cancel">{{ ${t}t('btn.cancel') }}</el-button>
|
||||
<el-button text @click="cancel">{{ ${t}t('btn.cancel') }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ ${t}t('btn.submit') }}</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -124,7 +124,7 @@ $elseif(column.HtmlType == "imageUpload")
|
||||
</template>
|
||||
</el-table-column>
|
||||
$elseif(column.HtmlType == "checkbox" || column.HtmlType == "select" || column.HtmlType == "radio")
|
||||
<el-table-column prop="${columnName}" label="${labelName}" align="center">
|
||||
<el-table-column prop="${columnName}" label="${labelName}" align="center"${column.sortStr}>
|
||||
<template #default="scope">
|
||||
$if(column.HtmlType == "checkbox")
|
||||
<dict-tag :options="$if(column.DictType != "") ${column.DictType} $else ${column.CsharpFieldFl}Options$end" :value="scope.row.${columnName} ? scope.row.${columnName}.split(',') : []" />
|
||||
@@ -134,11 +134,10 @@ $end
|
||||
</template>
|
||||
</el-table-column>
|
||||
$else
|
||||
<el-table-column prop="${columnName}" label="${labelName}" align="center"${showToolTipHtml} />
|
||||
<el-table-column prop="${columnName}" label="${labelName}" align="center"${showToolTipHtml}${column.sortStr} />
|
||||
$end
|
||||
$end
|
||||
$end
|
||||
|
||||
<el-table-column label="操作" align="center" width="140">
|
||||
<template #default="scope">
|
||||
$if(replaceDto.ShowBtnEdit)
|
||||
@@ -160,7 +159,6 @@ $end
|
||||
<el-row :gutter="20">
|
||||
$foreach(column in genTable.Columns)
|
||||
$set(labelName = "")
|
||||
$set(labelDisabled = "")
|
||||
$set(columnName = column.CsharpFieldFl)
|
||||
$set(value = "item.dictValue")
|
||||
$if(column.ColumnComment != "")
|
||||
@@ -168,19 +166,12 @@ $set(labelName = column.ColumnComment)
|
||||
$else
|
||||
$set(labelName = column.CsharpFieldFl)
|
||||
$end
|
||||
$if(column.IsPk == true)
|
||||
$set(labelDisabled = ":disabled=true")
|
||||
$end
|
||||
$if(column.CsharpType == "int" || column.CsharpType == "long")
|
||||
$set(value = "parseInt(item.dictValue)")
|
||||
$end
|
||||
|
||||
$if(column.IsInsert == false && column.IsEdit == false)
|
||||
<el-col :lg="12" v-if="opertype == 2">
|
||||
<el-form-item label="${labelName}">{{form.${columnName}}}</el-form-item>
|
||||
</el-col>
|
||||
$elseif(column.IsPK || column.IsIncrement)
|
||||
<el-col :lg="12">
|
||||
$if(column.IsPK || column.IsIncrement)
|
||||
<el-col :lg="${options.ColNum}">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
$if(column.IsIncrement == false)
|
||||
<el-input-number v-model.number="form.${columnName}" controls-position="right" placeholder="请输入${labelName}" :disabled="title=='修改数据'"/>
|
||||
@@ -191,15 +182,15 @@ $end
|
||||
</el-col>
|
||||
$else
|
||||
$if(column.HtmlType == "inputNumber")
|
||||
<el-col :lg="12">
|
||||
<el-col :lg="${options.ColNum}">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
<el-input-number v-model.number="form.${columnName}" controls-position="right" placeholder="请输入${labelName}" ${labelDisabled}/>
|
||||
<el-input-number v-model.number="form.${columnName}" controls-position="right" placeholder="请输入${labelName}" ${column.DisabledStr}/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
$elseif(column.HtmlType == "datetime")
|
||||
<el-col :lg="12">
|
||||
<el-col :lg="${options.ColNum}">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
<el-date-picker v-model="form.${columnName}" type="datetime" placeholder="选择日期时间"></el-date-picker>
|
||||
<el-date-picker v-model="form.${columnName}" type="datetime" placeholder="选择日期时间"${column.DisabledStr}></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
$elseif(column.HtmlType == "imageUpload")
|
||||
@@ -215,9 +206,9 @@ $elseif(column.HtmlType == "fileUpload")
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
$elseif(column.HtmlType == "radio")
|
||||
<el-col :lg="12">
|
||||
<el-col :lg="${options.ColNum}">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
<el-radio-group v-model="form.${columnName}">
|
||||
<el-radio-group v-model="form.${columnName}"${column.DisabledStr}>
|
||||
<el-radio v-for="item in $if(column.DictType != "") ${column.DictType} $else ${column.CsharpFieldFl}Options$end" :key="item.dictValue" :label="${value}">{{item.dictLabel}}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
@@ -225,7 +216,7 @@ $elseif(column.HtmlType == "radio")
|
||||
$elseif(column.HtmlType == "textarea")
|
||||
<el-col :lg="24">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
<el-input type="textarea" v-model="form.${columnName}" placeholder="请输入${labelName}"/>
|
||||
<el-input type="textarea" v-model="form.${columnName}" placeholder="请输入${labelName}"${column.DisabledStr}/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
$elseif(column.HtmlType == "editor")
|
||||
@@ -235,9 +226,9 @@ $elseif(column.HtmlType == "editor")
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
$elseif(column.HtmlType == "select")
|
||||
<el-col :lg="12">
|
||||
<el-col :lg="${options.ColNum}">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
<el-select v-model="form.${columnName}" placeholder="请选择${labelName}">
|
||||
<el-select v-model="form.${columnName}" placeholder="请选择${labelName}"${column.DisabledStr}>
|
||||
<el-option v-for="item in $if(column.DictType != "") ${column.DictType} $else ${column.CsharpFieldFl}Options$end" :key="item.dictValue" :label="item.dictLabel" :value="${value}"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@@ -245,15 +236,15 @@ $elseif(column.HtmlType == "select")
|
||||
$elseif(column.HtmlType == "checkbox")
|
||||
<el-col :lg="24">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
<el-checkbox-group v-model="form.${columnName}Checked">
|
||||
<el-checkbox-group v-model="form.${columnName}Checked"${column.DisabledStr}>
|
||||
<el-checkbox v-for="item in $if(column.DictType != "") ${column.DictType} $else ${column.CsharpFieldFl}Options$end" :key="item.dictValue" :label="item.dictValue">{{item.dictLabel}}</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
$else
|
||||
<el-col :lg="12">
|
||||
<el-col :lg="${options.ColNum}">
|
||||
<el-form-item label="${labelName}" prop="${columnName}">
|
||||
<el-input v-model="form.${columnName}" placeholder="请输入${labelName}" ${labelDisabled}/>
|
||||
<el-input v-model="form.${columnName}" placeholder="请输入${labelName}" ${column.DisabledStr}/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
$end
|
||||
@@ -262,10 +253,8 @@ $end
|
||||
</el-row>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="text" @click="cancel">{{ ${t}t('btn.cancel') }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ ${t}t('btn.submit') }}</el-button>
|
||||
</div>
|
||||
<el-button text @click="cancel">{{ ${t}t('btn.cancel') }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ ${t}t('btn.submit') }}</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user