diff --git a/OpenAuth.Domain/OpenAuth.Domain.csproj b/OpenAuth.Domain/OpenAuth.Domain.csproj index 978e8d2d..5834ede0 100644 --- a/OpenAuth.Domain/OpenAuth.Domain.csproj +++ b/OpenAuth.Domain/OpenAuth.Domain.csproj @@ -74,6 +74,7 @@ + diff --git a/OpenAuth.Domain/Service/WFFormService.cs b/OpenAuth.Domain/Service/WFFormService.cs new file mode 100644 index 00000000..869e7a23 --- /dev/null +++ b/OpenAuth.Domain/Service/WFFormService.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using OpenAuth.Domain.Interface; + +namespace OpenAuth.Domain.Service +{ + /// + /// 表单服务 + /// 李玉宝新增于2017-01-13 17:48:00 + /// + public class WFFormService + { + protected IUnitWork _unitWork; + + public WFFormService(IUnitWork unitWork) + { + _unitWork = unitWork; + } + + public List GetAllList() + { + return _unitWork.Find(null).ToList(); + } + + public WFFrmMain GetForm(Guid keyValue) + { + return _unitWork.FindSingle(u => u.Id == keyValue); + } + + public void RemoveForm(Guid keyValue) + { + _unitWork.Delete(u =>u.Id == keyValue); + } + } +} diff --git a/OpenAuth.Domain/Service/WorkflowService.cs b/OpenAuth.Domain/Service/WorkflowService.cs index 4d00c7f4..5e1068ec 100644 --- a/OpenAuth.Domain/Service/WorkflowService.cs +++ b/OpenAuth.Domain/Service/WorkflowService.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Linq; using OpenAuth.Domain.Interface; namespace OpenAuth.Domain.Service @@ -94,7 +95,7 @@ namespace OpenAuth.Domain.Service public List GetList() { - throw new NotImplementedException(); + return _unitWork.Find(null).ToList(); } } } diff --git a/OpenAuth.Mvc/Areas/FlowManage/Controllers/FlowDesignController.cs b/OpenAuth.Mvc/Areas/FlowManage/Controllers/FlowDesignController.cs index ce039e4b..5cfae62a 100644 --- a/OpenAuth.Mvc/Areas/FlowManage/Controllers/FlowDesignController.cs +++ b/OpenAuth.Mvc/Areas/FlowManage/Controllers/FlowDesignController.cs @@ -21,6 +21,12 @@ namespace OpenAuth.Mvc.Areas.FlowManage.Controllers private WorkflowService wfFlowInfoBLL; private UserManagerApp userBLL; + public FlowDesignController() + { + wfFlowInfoBLL = AutofacExt.GetFromFac(); + userBLL = AutofacExt.GetFromFac(); + } + #region 视图功能 /// /// 管理 diff --git a/OpenAuth.Mvc/Areas/FlowManage/Controllers/FormDesignController.cs b/OpenAuth.Mvc/Areas/FlowManage/Controllers/FormDesignController.cs new file mode 100644 index 00000000..1c58a283 --- /dev/null +++ b/OpenAuth.Mvc/Areas/FlowManage/Controllers/FormDesignController.cs @@ -0,0 +1,193 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Web.Mvc; +using System.Web.UI.WebControls; +using Infrastructure; +using LeaRun.Util.WebControl; +using OpenAuth.App; +using OpenAuth.Domain; +using OpenAuth.Domain.Service; + +namespace OpenAuth.Mvc.Areas.FlowManage.Controllers +{ + + public class FormDesignController : Controller + { + private WFFormService wfFrmMainBLL; + + public FormDesignController() + { + wfFrmMainBLL = AutofacExt.GetFromFac(); + } + + #region 视图功能 + /// + /// 管理 + /// + /// + [HttpGet] + public ActionResult Index() + { + return View(); + } + /// + /// 设计器 + /// + /// + [HttpGet] + public ActionResult FormLayout() + { + return View(); + } + /// + /// 预览表单 + /// + /// + [HttpGet] + public ActionResult FormPreview() + { + return View(); + } + /// + /// 创建表单 + /// + /// + [HttpGet] + public ActionResult FrmBuider() + { + return View(); + } + #endregion + + #region 获取数据 + + /// + /// 表单树 + /// + /// 关键字 + /// 返回树形Json + [HttpGet] + public ActionResult GetTreeJson() + { + var data = wfFrmMainBLL.GetAllList(); + var treeList = new List(); + foreach (var item in data) + { + TreeEntity tree = new TreeEntity(); + + tree.id = item.Id.ToString(); + tree.text = item.FrmName; + tree.value = item.Id.ToString(); + tree.isexpand = true; + tree.complete = true; + tree.hasChildren = false; + tree.parentId = "0"; + tree.Attribute = "Sort"; + tree.AttributeValue = "Frm"; + treeList.Add(tree); + } + return Content(treeList.TreeToJson()); + } + /// + /// 设置表单 + /// + /// 主键 + /// + [HttpGet] + public ActionResult GetFormJson(Guid keyValue) + { + var data = wfFrmMainBLL.GetForm(keyValue); + return Content(data.ToJson()); + } + #endregion + + #region 提交数据 + /// + /// 删除表单模板 + /// + /// 主键值 + /// + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult RemoveForm(Guid keyValue) + { + wfFrmMainBLL.RemoveForm(keyValue); + return Content("删除成功。"); + } + ///// + ///// 保存用户表单(新增、修改) + ///// + ///// 主键值 + ///// 用户实体 + ///// + //[HttpPost] + //[ValidateAntiForgeryToken] + //[AjaxOnly] + //public ActionResult SaveForm(string keyValue, WFFrmMainEntity userEntity) + //{ + // wfFrmMainBLL.SaveForm(keyValue, userEntity); + // return Success("操作成功。"); + //} + ///// + ///// (启用、禁用) + ///// + ///// 主键值 + ///// 状态:1-启动;0-禁用 + ///// + //[HttpPost] + //[AjaxOnly] + //public ActionResult SubmitUpdateState(string keyValue, int State) + //{ + // wfFrmMainBLL.UpdateState(keyValue, State); + // return Success("操作成功。"); + //} + ///// + ///// 上传文件 + ///// + ///// 文件夹Id + ///// 文件对象 + ///// + //[HttpPost] + //public ActionResult UploadifyFile(string folderId, HttpPostedFileBase Filedata) + //{ + // try + // { + // if (string.IsNullOrEmpty(folderId)) + // { + // return Success("虚拟上传文件成功。"); + // } + + // Thread.Sleep(500);////延迟500毫秒 + // //没有文件上传,直接返回 + // if (Filedata == null || string.IsNullOrEmpty(Filedata.FileName) || Filedata.ContentLength == 0) + // { + // return HttpNotFound(); + // } + // //获取文件完整文件名(包含绝对路径) + // //文件存放路径格式:/Resource/ResourceFile/{userId}{data}/{guid}.{后缀名} + // string userId = OperatorProvider.Provider.Current().UserId; + // string fileGuid = Guid.NewGuid().ToString(); + // long filesize = Filedata.ContentLength; + // string FileEextension = Path.GetExtension(Filedata.FileName); + // string uploadDate = DateTime.Now.ToString("yyyyMMdd"); + // string virtualPath = string.Format("~/Resource/DocumentFile/{0}/{1}/{2}{3}", userId, uploadDate, fileGuid, FileEextension); + // string fullFileName = this.Server.MapPath(virtualPath); + // //创建文件夹 + // string path = Path.GetDirectoryName(fullFileName); + // Directory.CreateDirectory(path); + // if (!System.IO.File.Exists(fullFileName)) + // { + // //保存文件 + // Filedata.SaveAs(fullFileName); + // } + // return Success("上传成功。"); + // } + // catch (Exception ex) + // { + // return Content(ex.Message); + // } + //} + #endregion + } +} diff --git a/OpenAuth.Mvc/Areas/FlowManage/Views/FlowDesign/FlowSchemeBuider.cshtml b/OpenAuth.Mvc/Areas/FlowManage/Views/FlowDesign/FlowSchemeBuider.cshtml index f9887a73..09dd7b24 100644 --- a/OpenAuth.Mvc/Areas/FlowManage/Views/FlowDesign/FlowSchemeBuider.cshtml +++ b/OpenAuth.Mvc/Areas/FlowManage/Views/FlowDesign/FlowSchemeBuider.cshtml @@ -18,12 +18,10 @@ function initialPage() { $('#step-1 .panel-body').height($(window).height() - 228); $('#Description').height($(window).height() - 385); - $('#step-2 .standtabborder').height($(window).height() - 131); $('#DesignateMemberlist').height($(window).height() - 141); $('#Treebackground').height($(window).height() - 131); - $('#step-3 .tab-content').height($(window).height() - 167); + $('#step-2 .tab-content').height($(window).height() - 167); initBaseInfo(); - initSchemeAuthorize(); initFrmInfo(); initFlowInfo(); //加载导向 @@ -38,18 +36,8 @@ return false; } break; - case 2://流程模板权限设置 - if (postData.FrmType == 0) { - if (!bindingSchemeAuthorize()) { - return false; - } - } - break; - case 3://绑定表单 - if (postData.FrmType == 1) { - frmData = ""; - } - else { + case 2://绑定表单 + if (!bindingFrm()) { dialogTop("请选择左侧表单", "error"); return false; @@ -59,9 +47,8 @@ return false; } frmData.FrmContent = JSON.stringify(frmcotentls); - } break; - case 4://流程设计 + case 3://流程设计 if (!bindingFlow()) { return false; @@ -79,17 +66,6 @@ $('#btn_caogao').removeAttr('disabled'); } - if (data.currentStep == 2 || data.currentStep == 3) { - if (postData.FrmType == 0) { - $('#sysbackground').hide(); - } - else { - $('#sysbackground').show(); - } - } - else { - $('#sysbackground').hide(); - } }); //获取表单 if (!!keyValue) { @@ -100,19 +76,16 @@ $("#step-1").SetWebControls(data.schemeinfo); postData["SchemeVersion"] = data.schemeinfo.SchemeVersion; - setSchemeAuthorize(data.schemeinfo.AuthorizeType, data.authorize); - if(data.schemeinfo.EnabledMark == 3) { flowData["SchemeVersion"] = "cg"; } SchemeContentOld = JSON.parse(data.schemecontent.SchemeContent); - if (data.schemeinfo.FrmType != 1) - { + $('#FormFrmTree').setNodeChecked(SchemeContentOld.Frm.FrmId); frmData.FrmId = SchemeContentOld.Frm.FrmId; setFrmInfo(SchemeContentOld.Frm); - } + setFlowInfo(SchemeContentOld.Flow); } }); @@ -137,7 +110,6 @@ } flowData["SchemeContent"] = JSON.stringify({ "Frm": frmData, "Flow": FlowDesignPanel.exportData() }); - bindingSchemeAuthorize(true); postData = $.extend(postData, _data); postData["EnabledMark"] = 3; $.SaveForm({ @@ -153,23 +125,7 @@ /*=========基本配置(begin)==================================================================*/ function initBaseInfo() { - //流程类型 - $("#SchemeType").ComboBoxTree({ - description: "==请选择==", - height: "300px", - param: { EnCode: "FlowSort" }, - url: "../../SystemManage/DataItemDetail/GetDataItemTreeJson", - allowSearch: true - }); - //表单类型 - $("#FrmType").ComboBox({ - data: [{ "key": 0, "value": "自定义表单" }, { "key": 1, "value": "系统表单" }], - id: "key", - text: "value", - description: "==请选择==", - height: "115px", - allowSearch: true - }); + } function bindingBase() { @@ -181,125 +137,7 @@ return true; } /*=========基本配置(end)====================================================================*/ - /*=========权限配置(begin)==================================================================*/ - function initSchemeAuthorize() - { - GetTree('Role'); - GetTree('Post'); - GetTree('UserGroup'); - GetTree('User'); - $('input[name="AuthorizeType"]').click(function () { - var _value = $(this).val(); - if (_value == "0") { - $("#Treebackground").show(); - } - else { - $("#Treebackground").hide(); - } - }); - } - function bindingSchemeAuthorize(flag) - { - var _value = $('input[name="AuthorizeType"]:checked').val(); - postData.AuthorizeType = _value; - if (_value == "1") { - var _roleData = $("#Role").getCheckedAllNodes(); - var _postData = $("#Post").getCheckedAllNodes(); - var _userGroupData = $("#UserGroup").getCheckedAllNodes(); - var _userData = $("#User").getCheckedAllNodes(); - _roleData.push.apply(_roleData, _postData); - _roleData.push.apply(_roleData, _userGroupData); - _roleData.push.apply(_roleData, _userData); - shcemeAuthorizeData = String(_roleData); - if (shcemeAuthorizeData == "") { - if (!flag) { - dialogTop("请选择指定成员", "error"); - } - return false; - } - } - else { - shcemeAuthorizeData = ""; - } - return true; - } - function setSchemeAuthorize(type,data) - { - $('#ShcemeAuthorize' + type).trigger("click"); - $.each(data, function (i,item) { - $("#Role").setCheckedNodeOne(item.ObjectId); - $("#Post").setCheckedNodeOne(item.ObjectId); - $("#UserGroup").setCheckedNodeOne(item.ObjectId); - $("#User").setCheckedNodeOne(item.ObjectId); - }); - } - function GetTree(type) { - $.SetForm({ - url: "../../FlowManage/FlowDesign/Get" + type + "CheckTreeJson", - success: function (data) { - AllAuthorizeCheckData[type] = $.arrayClone(data); - var item = { - height: $(window).height() - 131, - showcheck: true, - //url: "../../FlowManage/FlowDesign/Get" + type + "CheckTreeJson", - data:data, - oncheckboxclick: function (item, et, s) { - var $item = $("#" + item.mytype + "Div"); - if (et == 1) { - var mytype = ""; - var _html = ""; - var _title = ''; - switch (item.mytype) { - case "Role": - mytype = "角色"; - break; - case "Post": - mytype = "岗位"; - break; - case "UserGroup": - mytype = "用户组"; - break; - case "User": - mytype = "用户"; - break; - } - _html += '
'; - _html += '
'; - _html += ' '; - _html += '
'; - _html += '
'; - _html += '

名称:' + item.text + '

'; - _html += '

类别:' + mytype + '

'; - _html += '
'; - _html += '
'; - $item.append(_html); - $item.show(); - - $(".card-box").click(function () { - $(this).remove(); - $('#' + $(this).attr('data-value')).setNoCheckedNodes($(this).attr('id')); - if ($item.find('.card-box-img').length == 0) { - $item.hide(); - } - }) - } - else if (et == 0) { - $item.find('#' + item.id).remove(); - if ($item.find('.card-box-img').length == 0) { - $item.hide(); - } - } - - } - }; - $("#" + type).treeview(item); - } - }); - - - } - /*=========权限配置(end)==================================================================*/ /*=========表单选择(begin)==================================================================*/ var _frmdatabase = ""; var _frmflag = false; @@ -358,20 +196,7 @@ _frmflag = false; } else { - if (frmData.isSystemTable == 1 && _frmdatabase != "") { - $('#frmpreview').hide(); - $('#frmDefaulting').hide(); - $('#frmdesign').show(); - frmapp = $('#frmdesign').frmDesign({ - Height: $(window).height() - 179, - tablefiledJsonData: _frmdatabase, - isSystemTable: frmData.isSystemTable, - frmContent: frmData.FrmContent - }); - _frmflag = true; - $(this).html("预览表单"); - } - else if (frmData.isSystemTable == 0 && frmData.FrmName != undefined) { + if ( frmData.FrmName != undefined) { $('#frmpreview').hide(); $('#frmDefaulting').hide(); $('#frmdesign').show(); @@ -396,7 +221,6 @@ $('#frmDefaulting').hide(); $('#frmpreview').show(); - frmData.isSystemTable = data.isSystemTable; frmData.FrmDbId = data.FrmDbId; frmData.FrmTable = data.FrmTable; frmData.FrmName = data.FrmName; @@ -409,41 +233,11 @@ width:870 }); - if (data.isSystemTable == 0) { + frmapp = $('#frmdesign').frmDesign({ Height: 480, frmContent: frmData.FrmContent }); - } - else { - $.ajax({ - url: "../../SystemManage/DataBaseTable/GetTableFiledListJson", - data: { dataBaseLinkId: data.FrmDbId, tableName: data.FrmTable }, - type: "GET", - dataType: "json", - async: false, - success: function (data) { - _frmdatabase = []; - for (var id in data) { - item = data[id]; - if (item.column != frmData.FrmTableId) - { - item.remark = item.column + "【" + item.remark + "】"; - _frmdatabase.push(item); - } - } - frmapp = $('#frmdesign').frmDesign({ - Height: 480, - tablefiledJsonData: _frmdatabase, - isSystemTable: frmData.isSystemTable, - frmContent: frmData.FrmContent - }); - }, - error: function (XMLHttpRequest, textStatus, errorThrown) { - dialogMsg(errorThrown, -1); - } - }); - } } function bindingFrm() { @@ -549,10 +343,9 @@
  • 1基本配置
  • -
  • 2权限设置
  • -
  • 3表单选择
  • -
  • 4流程设计
  • -
  • 5创建完成
  • +
  • 2表单选择
  • +
  • 3流程设计
  • +
  • 4创建完成
@@ -580,18 +373,6 @@ - - 流程分类* - -
- - - - 表单类型* - -
- - 备注 @@ -604,49 +385,8 @@
-
-
-
-
-
-
-
-
- 角色 -
-
- 岗位 -
-
- 用户组 -
-
- 用户 -
-
-
- - - - -
-
-
  角色
-
-
-
  岗位
-
-
-
  用户组
-
-
-
  用户
-
-
-
-
-
-
+ +
@@ -666,20 +406,16 @@
-
+
-
+

设计完成,请点击保存

-
上一步 diff --git a/OpenAuth.Mvc/OpenAuth.Mvc.csproj b/OpenAuth.Mvc/OpenAuth.Mvc.csproj index e638749c..fdf734f1 100644 --- a/OpenAuth.Mvc/OpenAuth.Mvc.csproj +++ b/OpenAuth.Mvc/OpenAuth.Mvc.csproj @@ -150,6 +150,7 @@ + diff --git a/OpenAuth.UnitTest/TestWorkflow.cs b/OpenAuth.UnitTest/TestWorkflow.cs index 242a4d3a..aba0e283 100644 --- a/OpenAuth.UnitTest/TestWorkflow.cs +++ b/OpenAuth.UnitTest/TestWorkflow.cs @@ -16,7 +16,7 @@ namespace OpenAuth.UnitTest [TestMethod] public void AddForm() { - + var datas = _app.GetList(); } } }