Coder Social home page Coder Social logo

tengge1 / extapp Goto Github PK

View Code? Open in Web Editor NEW
14.0 2.0 16.0 14.52 MB

ExtApp是一个基于三层架构,使用NHibernate、API Controller和ExtJs创建的,用于简化政府和企业应用开发的Web应用程序框架。

Home Page: https://tengge1.github.io/ext-app

License: GNU General Public License v3.0

C# 6.74% ASP 0.10% JavaScript 88.51% CSS 4.54% HTML 0.11%
extjs webapp dotnet framework nhibernate extapp-web mvc workflow map gis

extapp's People

Contributors

tengge1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

extapp's Issues

与html页面同步传递数据

为了以后方便开发jsp和php版本,我们不打算将html页面更改为aspx页面。这带来了一个麻烦,html页面无法同步带来所需的数据(例如打开首页菜单无法立刻加载出来),往往需要借助Ajax再请求一次服务器,这使得用户体验非常不好。
我们想了一个办法,将数据库菜单、字典、配置等常用数据写入一个js文件,html将自动加载这个js文件,而不需要再使用Ajax请求后台,可以提高用户体验。

想到一个新的架构方法

按照集成电路的思路,把权限管理系统、工作流系统、办公系统的后台做成dll,提供dll和对应的接口文档。以后只改前台,不改后台。这些dll像cpu一样提供各种基础服务,以后的开发工作只是给这些服务开发一套皮肤。例如:
Common.dll
CommonWorkflow.dll
CommonOA.dll
等。

想调整一下项目结构

1、后台所有系统管理的类Core、Personnel、Workflow合并到App文件夹下,消息发送(用于演示用过户选择控件和附件控件的使用)和请销假系统(用于演示工作流的使用)合并到Work文件夹下,因为一个具体的系统可能包含十多个子系统,系统管理占用的文件夹太多太乱了。
2、Web/app包含的目录有点过深,想把子系统目录提前一级。子系统的所需的model和store放到对应子系统下model和store文件夹中,例如:
/app/model:项目通用model
/app/store:项目通用store

/app/personnel/model:人事管理Model
/app/personnel/store:人事管理Store

/app/personnel/user:用户管理
/app/personnel/user/List.js:用户管理列表页面
/app/personnel/user/ListController.js:用户管理列表控制器
/app/personnel/user/Edit.js:用户管理添加编辑页面
/app/personnel/user/EditController.js:用户管理添加编辑控制器

/app/personnel/dept:机构管理
/app/personnel/dept/List.js:机构管理列表页面
/app/personnel/dept/ListController.js:机构管理列表控制器
/app/personnel/dept/Edit.js:机构管理添加编辑页面
/app/personnel/dept/EditController.js:机构管理添加编辑控制器

/app/main/accordion:折叠面板框架
/app/main/desktop:桌面样式框架
/app/main/Login.js:登录页面

我感觉这样比现在的设计要好。

将删除参数中间类

目前版本中,存在一些专门的参数模型(例如UserEditParam),用于将前台数据转换为数据库模型保存数据库。这些参数模型将删除。再未来的版本,我们将在前台使用javascript直接构造数据库所需模型,后台直接保存数据库,而不需要这些中间类。

表单提交,显示后台校验错误

目前数据提交后台,保存的时候后台可能会返回数据不符合要求的错误,目前我的做法是下面代码,可以考虑增加上

App.post(url, values, function (r) {
var obj = JSON.parse(r);
if (obj.Code == 200) {
view.hide();
Ext.ComponentQuery.query(“dickmzdlist”)[0].controller.refresh();
App.notify('消息', obj.Msg);
} else {
var errors = obj.errors;
Ext.each(errors.errors,function (item) {
form.findField(item.field).markInvalid(item.message);
});
App.alert('消息', obj.Msg);
}
});

能否提供一个 packages 目录下的extjs

目前代码中的 index.html 页面,在 packages 目录下的extjs 没有提供,能提供一个吗,如果涉及版权不方便,可以给个文档,怎么配置用,我用下载的 6.2.1的 zip 文件,程序跑不起来,主要是文件和名称和路径和代码里的不一致

下个版本将不再支持动态切换模式和皮肤

为了提升用户体验,避免由于动态引入css文件导致可能出现的布局错乱的问题,从下个版本起,不再支持动态切换折叠面板和桌面样式,不再支持动态皮肤切换。

表格数据会请求多次后台

init: function () {
var view = this.getView();
var store = Ext.create('store.dicbkzdlist');
view.down('gridpanel').setStore(store);// 这里会请求一次
view.down('pagingtoolbar').setStore(store);// 这里会请求一次
store.reload();
view.down('pagingtoolbar').moveFirst();
},

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.