����λ�ã���ҳ > �����̳� > �̳� > PasteForm���CRUDʵ����ʵ�ʰ���PasteTemplate���֮3000��(��)
��Ϊ�������롱���Ƶ�һ��CRUDʵ����ĿPasteTemplate,�ڶ����е�3����Ŀ����ʵս��Ч���dz��������������PasteFormΪɶ��Ը��Ϊ���CRUD��һЩ�ش�: ��������������PasteForm����Ŀ���� Ŀǰ�������롱����ʹ��PasteForm����Ŀ��"��Builder(
��Ϊ�������롱���Ƶ�һ��CRUDʵ����ĿPasteTemplate,�ڶ����е�3����Ŀ����ʵս��Ч���dz��������������PasteFormΪɶ��Ը��Ϊ���CRUD��һЩ�ش�:
Ŀǰ�������롱����ʹ��PasteForm����Ŀ��"��Builder(PasteSpider)"�Ͱ�����Ŀ(PasteTemplate),���а�����Ŀ�������
https://gitee.com/pastecode/paste-template
���
��������������Ϊ����һ����ĿҪ��С��������ʵ�ִ����ı�����˼�����£�һ������ƵĴ��룬���ǿ���ʹ���Ǹ�����ķ�ʽʵ��ô���Ǿ���Ҫ����ģ�ͣ���λ˼���£���ô���Ǿ���ʹ�õ�CRUD�Ƿ�Ҳ������ô�㣿
���Ǿ�����������ö�����ģ��Dto�ͷ����Ô��ʵ�ֵ�PasteForm����Ҫ�ŵ�����
1.PasteForm�������һ��˼�룬���ǹ����˵�ҳ���ɺ�˿��ƣ������ǰ�ȫ�Ի������ݵı���
2.ǰ�˱�дһ�κ󣬺��������ñ�д�������ʹ�õ����ҵİ�����Ŀ����ô��ǰ�˶����Բ��ñ�д���������Ҫ���������޸��ֶεȣ�ǰ�˶�������Ҫ�޸Ĵ���
3.ǰ��ҳ��ij�����ԣ�������ĺ����30��������100����������ǰ����˵�������4��ҳ��㶨����Ȼ��һЩ��������󣬻�����Ҫ��д�µģ�
4.���������ƣ�����˵���������һ��˼�룬���ĵİ���ʹ�õ���.netcore+html����ʽʵ�ֵģ���Ҳ����ʹ�ñ���java+vue��ģʽ
5.ͳһ�ԣ�������30������ͼƬ�ϴ����ڱ��������ǵ���ʽ����һ���ģ���Ϊ������ʵʹ�õ���ͬһ��������ҳ��
6.���ͳ�����У������ֶε���ʾ˳���ֶ��Ƿ���ʾ���ֶε�Ĭ��ֵ�ȵȵȣ����ɺ�˶�Ӧ��Dto�����ƺͿ��ƣ�����ͬ�������������ڵ�ǰ��½�û��Ľ�ɫ��ͬ�����������ijһ���ֶ�������������Ŀ�����ѡ�
����PasteForm��Ô�����Ǻ�˰�����ģ�͵����ԣ��ֶεȷ��ظ�ǰ�ˣ�ǰ�˻��ں�˷��ص���������Ⱦ��UI�ϣ�Ϊ�˱��ڱ�д���Բ�����template��ģʽ����ʵ����JSP���dz�������ѣ�
PasteFormÔ����ֻ��3��ҳ��pasteform/index.html,pasteform/view.html,pasteform/detail.html��ֻ����һЩ��������£�������һЩҳ�棬���Ҫ������Ŀ��ʵ��������ʵ���۶��ٸ�����PasteForm��ҳ�涼ֻ����ô����������˵Ȩ�޵�ҳ��Ϊpasteform/index.html?path=roleInfo���û��ı�Ϊpasteform/index.html?path=userInfo,��ᷢ����ʵ������ͬһ��ҳ�棬ֻ�Dz���path��һ�����ѣ����path����WebApi��Service��
��ʵ����ȫ����һ��ҳ�涼��д��ֱ��ʹ�����ṩ�İ�����ĿPasteTemplate�е�pasteform���ļ�!
�����ᵽ�ģ�PasteForm��Ҫ�������һ��˼�룬Ҳ�����ɺ�˵�Dto����ǰ�˵�ҳ����ֺͽ����ȣ����Դ�WebApi������õ�ģ��������ֶε���Ϣ�������ʹ����������ʵ�ֹ����˵�ҳ��ã�����Ô����vue,angular��
��Ϊ��Ӧ���ݱ�������չʾ�ã�һ��Ϊ����table���֣���Ӧģ��ΪXXXListDto��Ҳ�����������������������ɶ�Ӧ��InputQueryXXX������ģ�;�����һ��ֻ��page,size,word�����ֶΣ���Ȼ�����ҳ��Ҳ�������������ݣ��à¼ï¿½ï¿½ï¿½ï¿½ï¿½é£¬É¾ï¿½ï¿½ï¿½ÈµÄ²ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½
�������ݣ����߱à¼ï¿½ï¿½ï¿½Ýµï¿½Ê±ï¿½ï¿½Ê¹ï¿½ÃµÄ¶ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ò³ï¿½æ£¬ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç¶ï¿½È¡ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ä£ï¿½Í²ï¿½Ò»ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½È¨ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½roleInfo,����������ʱ��Ϊpasteform/view.html?path=roleInfo����Ӧ������ģ��ΪroleInfoAddDto,���ڱà¼ï¿½ï¿½Ê±ï¿½ï¿½Îªpasteform/view.html?path=roleInfo&id=3,��Ӧ������ģ��ΪroleInfoUpdateDto��ҳ��������߼����Ǵ�WebApi�л�ö�Ӧģ�ͺ󣬻��ڹ�����Ⱦ��UI�У�����Ĭ��ֵ����ǰֵ�ȣ��ύ��ʱ���ٴ�ҳ���е�form��ȡ��ֵ�ύ����ˣ�����˵��Ҫ�Ŀ��ƻ����ں���У�
��Щʱ�����ǵ�����û�취��pasteform/index.htmlҳ������ʾ��ɣ����������б�����Ҫ��һЩ�ֶι����ģ����ʱ������ϣ����һ��ҳ����ʾ��ϸ���ݣ�����detail���Ǹ�����õģ���Ӧ������ģ��ΪXXXDto��
PasteForm�������һ��˼�룬����ʹ����������Ҳ�ǿ��Եģ�������ö���дһ���׵ľ����ˣ����������ʹ��vue+java��ģʽ��һ�ף���˺��Ĵ��밸��
///
/// ��ȡAddDto������ģ��
///
///
[HttpGet]
[TypeFilter(typeof(RoleAttribute), Arguments = new object[] { "root", "root" })]
public PasteBuilderHelper.VoloModelInfo ReadAddModel()
{
var _model = PasteBuilderHelper.ReadModelProperty(new RoleInfoAddDto());
return _model;
}
///
/// ��ȡUpdateDto������ģ��
///
///
[HttpGet]
[TypeFilter(typeof(RoleAttribute), Arguments = new object[] { "root", "root" })]
public async Task ReadUpdateModel(int id)
{
var _query = from a in _dbContext.RoleInfo
join b in _dbContext.RoleInfo on a.FatherId equals b.Id into c
from rol in c.DefaultIfEmpty()
select new RoleInfoUpdateDto
{
Id = a.Id,
Desc = a.Desc,
FatherId = a.FatherId,
Icon = a.Icon,
IsEnable = a.IsEnable,
Model = a.Model,
Name = a.Name,
Path = a.Path,
Role = a.Role,
RoleType = a.RoleType,
Sort = a.Sort,
ExtendRole = rol != null ? new RoleShortModel
{
Id = rol.Id,
Model = rol.Model,
Name = rol.Name,
Path = rol.Path,
Role = rol.Role,
RoleType = rol.RoleType
} : null
};
var _info = await _query.Where(x => x.Id == id).AsNoTracking().FirstOrDefaultAsync();
if (_info == null || _info == default)
{
throw new PasteCodeException("��ѯ����Ϣ�����ڣ��޷�ִ�бà¼ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½");
}
var _dataModel = PasteBuilderHelper.ReadModelProperty(_info);
return _dataModel;
}
///
/// ��ȡUpdateDto������ģ��
///
///
[HttpGet]
[TypeFilter(typeof(RoleAttribute), Arguments = new object[] { "root", "root" })]
public async Task ReadDetailModel(int id)
{
var _query = from a in _dbContext.RoleInfo
join b in _dbContext.RoleInfo on a.FatherId equals b.Id into c
from rol in c.DefaultIfEmpty()
select new RoleInfoDto
{
Id = a.Id,
Desc = a.Desc,
FatherId = a.FatherId,
Icon = a.Icon,
IsEnable = a.IsEnable,
Model = a.Model,
Name = a.Name,
Path = a.Path,
Role = a.Role,
RoleType = a.RoleType,
SortStr = a.SortStr,
FatherStr = a.FatherStr,
Level = a.Level,
RootId = a.RootId,
Sort = a.Sort,
ExtendRole = rol != null ? new RoleShortModel
{
Id = rol.Id,
Model = rol.Model,
Name = rol.Name,
Path = rol.Path,
Role = rol.Role,
RoleType = rol.RoleType
} : null
};
var _info = await _query.Where(x => x.Id == id).AsNoTracking().FirstOrDefaultAsync();
if (_info == null || _info == default)
{
throw new PasteCodeException("��ѯ����Ϣ�����ڣ��޷�ִ�бà¼ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½");
}
var _dataModel = PasteBuilderHelper.ReadModelProperty(_info);
return _dataModel;
}
///
/// ��ȡListDto������ģ��
///
///
[HttpGet]
[TypeFilter(typeof(RoleAttribute), Arguments = new object[] { "root", "root" })]
public PasteBuilderHelper.VoloModelInfo ReadListModel()
{
var _model = PasteBuilderHelper.ReadModelProperty(new RoleInfoListDto());
var _query_model = PasteBuilderHelper.ReadModelProperty(new InputQueryRoleInfo());
if (_query_model != null)
{
_model.QueryProperties = _query_model.Properties;
}
return _model;
}
������Ӵ�Dto��ʱ����ABPvNext,˵�����Dto���ò�˵ObjectMapper,����˵Ȩ�ޱ�RoleInfo,���Ӧ����RoleInfoAddDto,RoleInfoUpdateDto,RoleInfoDto��RoleInfoListDto����ǰʵ�ʿ���������ܻ�������������Dto,�����ҳ��õ�RoleMenuDto,RoleAuthDto�ȣ�PasteForm����Ҫ�õ�ǰ���4����һ�㻹�ḽ��һ��InputQueryRoleInfo!����˵������ʱ���û��ύ������ģ����RoleInfoAddDto,�ύ��API��API������У��Ϸ�����ʹ��AutoMapper��RoleInfoAddDtoת����RoleInfo��Ȼ��д�뵽���ݿ⣡
XXXAddDto:����������ʱ�������ģ�ͣ���Ӧ����pasteform/view.htmlҳ��ʹ��
XXXUpdateDto:�������ݱà¼ï¿½Þ¸Äµï¿½ï¿½ï¿½ï¿½ï¿½Ä£ï¿½Í£ï¿½ï¿½ï¿½Ó¦ï¿½ï¿½ï¿½ï¿½pasteform/view.htmlҳ��ʹ��
XXXDto:������һ��������ʾ�����ʱ�������ģ�ͣ�Ҳ����pasteform/detail.html��ҳ��ʹ��
XXXListDto:����һ��ʹ�������ݱ���չʾ��ʱ�������ģ�ͣ�Ҳ����pasteform/index.html��ҳ��ʹ��
InputQueryXXX:����һ�����ڱ����Ϸ��������������ģ�ͣ�Ҳ����pasteform/index.html����������ʹ��
ͼƬ�������à¼ï¿½ï¿½Õ¹Ê¾ï¿½ï¿½Õ¹Ê¾ï¿½Ä»ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½pasteform/index.html��pasteform/detail.htmlҳ�����ˣ���ʵ�ڱà¼ï¿½ï¿½Ê±ï¿½ï¿½pasteform/view.htmlҳ����Ҳ��չʾ��ֻҪ����Ӧ�ֶ���������[ColumnDataTypeAttribute("image","1","image","60*60")]����
///
/// ��ͼ �ش���ֵ�Ƕ���ģ�ʹ��,����
///
[ColumnDataType("image", "3", "img", "60*60")]
public string Img2 { get; set; }
///
/// ͼƬ �ش���ʹ��string[]��ģʽ
///
[ColumnDataType("image", "3", "img", "60*60")]
public string[] Img3 { get; set; }
///
///�ı����� ģ���ı����������
///
[ColumnDataType("class","fleft")]
public string Desc { get; set; }
///
///��ѡ һ���ʾ״̬���ڶ��ģ��е���Enum,����Enum������֧��
///
[ColumnDataType("html", "{{:=item.dateType}}-{{:=item.gradeId}}")]
public int DateType { get; set; }
///
/// ��ͨ�˵�
///
[ColumnDataType("menu", "�˵�һ", "open_window('�����û�����','./index.html?path=userInfo&xxid={{:=item.id}}');", "Hui-iconfont-menu")]
public string Menu2 { get; set; }
��Щʱ��������Ҫ���ڵ�ǰ�����ݽ����жϣ��Ƿ���ʾijһ����ť������
///
/// ��ͨ�����˵�
///
[ColumnDataType("ifmenu", "item.age==7", "����1", "")]
public string Menu3 { get; set; }
///
/// �˵����Ӳ˵�
///
[ColumnDataType("menu", "�˵���", "open_window('�����û�����','./index.html?path=userInfo&xxid={{:=item.id}}');", "Hui-iconfont-menu", "box")]
public string Menu5 { get; set; }
///
/// �˵������е������˵�
///
[ColumnDataType("ifmenu", "item.age==8", "����2", "box")]
public string Menu4 { get; set; }
ǰ��ֻ�ǻ���������ԣ��ڲ��µ�ʱ���ش�orderby�ֶθ���ˣ�������Ҫ���ڻش�������ֶν���orderby��ѯ
///
///����
///
[ColumnDataType("orderby", "Sort","Sort desc")]
public int Sort { get; set; }
--- δ����������ڼ��� ---
ʹ��Blender���ɳ���ģ��
�Ķ�ȫ����������ERA5�����ط���
�Ķ�Xpath���������﷨
�Ķ�����ѧϰ�������繹�����£�
�Ķ���ΪMateƷ��ʢ�䣺HarmonyOS NEXT�ӳ�����Ϸ���ܵõ�����ͷ�
�Ķ�ʵ�ֶ��󼯺���DataTable���໥ת��
�Ķ�Ӳ�̵Ļ���֪ʶ��ѡ��ָ��
�Ķ�������й��ƶ��ı�ͼ��ײ�
�Ķ�����NEXTԪ�����������ѿ����ϼ���Ʒ
�Ķ��ᳲ���С������������Ƽ��رշ���
�Ķ������ArcMap�����н���դ��ͼ���ز�������
�Ķ��㷨�����ݽṹ 1 - ģ��
�Ķ���Ѷ�����߿ͷ���Ӫ��ϵͳ����
�Ķ���Ѷ��Ƶҹ��ģʽ���ý̳�
�Ķ����ں���NEXT��Ѫ���Ŵ���������������
�Ķ�5. Spring Cloud OpenFeign ����ʽ WebService �ͻ��˵ij���ϸʹ��
�Ķ�Java����ģʽ����̬�����Ͷ�̬�����ĶԱȷ���
�Ķ�Win11�ʼDZ����Զ�����Ӧ�õ���ɫ����ʾ����
�Ķ�˼�� V1.5.6 ��׿��
��ս�귨 V7.5.0 ��׿��
У��������������׵������� V1.0 ��׿��
��˸֮�� V1.9.7 ��׿��
������Ե����� v1.0.4 ��׿��
������֮ŠV5.2.3 ��׿��
��������������Դ V1.0 ��׿��
���֮Ϣ V1.0 ��׿��
��ħ������������䣩 V1.0 ��׿��
���ں�������ϵ�����������������վ�����������������Ƽ�����
Ƶ�� ����Ƶ��������ר������������׿�������app����
�Ƽ� ��Ô���������°��������ܿ������ز���
���� ����ɫ������������ ���������ս������������
ɨ��ά�����������ֻ��汾��
ɨ��ά����������΢�Ź��ںţ�
��վ�������������������ϴ��������ַ���İ�Ȩ���뷢�ʼ�[email protected]
��ICP��2022002427��-10 �湫��������43070202000427��© 2013~2025 haote.com ������