增加流程维护、我的审批页面流程查询可以按照类别进行分类,修改草稿内容不在待办中显示,修改审批各节点顺序按照时间正序排序,流程维护页面增加多选及删除

master
孙亮 7 months ago
parent 81c0b95134
commit ad6ea81b07

@ -1,4 +1,4 @@

function FlowTemplateNew() { function FlowTemplateNew() {
var url = basePath + "/WF/Admin/CCBPMDesigner/FlowDevModel/Default.htm"; var url = basePath + "/WF/Admin/CCBPMDesigner/FlowDevModel/Default.htm";
window.open(url); window.open(url);
@ -15,6 +15,34 @@ function FlowTemplateImp() {
function DealFlowEmps(str) { function DealFlowEmps(str) {
return str; return str;
} }
//逻辑删除
function DeleteFlow() {
if (batchData.length == 0) {
layer.alert("请选择要删除的行数据");
return;
}
if (confirm("确定要删除选择的行吗") == false)
return;
var webUser = new WebUser();
var deleteRow = batchData;
//执行删除操作
var enName = ensName.substring(0, ensName.length - 1);
$.each(deleteRow, function (idx, item) {
var handler = new HttpHandler("BP.WF.HttpHandler.WF_MyFlow");
handler.AddPara("Msg", "管理员:" + webUser.No + "执行逻辑删除。");
handler.AddPara("DelEnable", 1);
handler.AddPara("WorkID", item.WorkID);
var data = handler.DoMethodReturnString("DeleteFlow");
/* if (data.indexOf("err@") !=-1) {*/
layer.alert(data);
})
Search("batch");
batchData = [];
}
//格式字符串
function DealTodoEmps(str) { function DealTodoEmps(str) {
//var result = str.split("@"); //var result = str.split("@");
var result = str.split(";"); var result = str.split(";");
@ -26,7 +54,7 @@ function DealTodoEmps(str) {
} }
/** /**
* 新建流程模板 * 新建流程模板
* */ * */
function NewFlowTemplate() { function NewFlowTemplate() {
var url = "/WF/Admin/CCBPMDesigner/FlowDevModel/Default.htm?SortNo=100&From=Flows.htm"; var url = "/WF/Admin/CCBPMDesigner/FlowDevModel/Default.htm?SortNo=100&From=Flows.htm";

@ -290,8 +290,16 @@
var tableData = transferHtmlData(data["DT"]); var tableData = transferHtmlData(data["DT"]);
//渲染table //渲染table
var tableName = mapBase.EnDesc; var tableName = mapBase.EnDesc;
//if (typeof window.top.vm != "undefined" && window.top.vm.tabsList.length > window.top.vm.selectedTabsIndex)
// tableName = window.top.vm.tabsList[window.top.vm.selectedTabsIndex].name;
//防止出现跨域
try {
if (typeof window.top.vm != "undefined" && window.top.vm.tabsList.length > window.top.vm.selectedTabsIndex) if (typeof window.top.vm != "undefined" && window.top.vm.tabsList.length > window.top.vm.selectedTabsIndex)
tableName = window.top.vm.tabsList[window.top.vm.selectedTabsIndex].name; tableName = window.top.vm.tabsList[window.top.vm.selectedTabsIndex].name;
} catch (e) {
tableName = mapBase.EnDesc;
}
//主页面数据 //主页面数据
var h = $(document).height() - $("#toolbar").height() * 2 - 90; var h = $(document).height() - $("#toolbar").height() * 2 - 90;
vtable = table.render({ vtable = table.render({

@ -580,7 +580,7 @@ namespace BP.WF.Data
map.AddTBString(GenerWorkFlowAttr.BillNo, null, "单据编号", true, true, 0, 100, 10); map.AddTBString(GenerWorkFlowAttr.BillNo, null, "单据编号", true, true, 0, 100, 10);
//map.AddTBStringDoc(GenerWorkFlowAttr.FlowNote, null, "备注", true, false, true); //map.AddTBStringDoc(GenerWorkFlowAttr.FlowNote, null, "备注", true, false, true);
map.AddDDLEntities(GenerWorkFlowAttr.FK_FlowSort, null, "类别", new FlowSorts(), false); map.AddDDLEntities(GenerWorkFlowAttr.FK_FlowSort, null, "流程类别", new FlowSorts(), false);
map.AddDDLEntities(GenerWorkFlowAttr.FK_Flow, null, "流程", new Flows(), false); map.AddDDLEntities(GenerWorkFlowAttr.FK_Flow, null, "流程", new Flows(), false);
map.AddDDLEntities(GenerWorkFlowAttr.FK_Dept, null, "隶属部门", new BP.Port.Depts(), false); map.AddDDLEntities(GenerWorkFlowAttr.FK_Dept, null, "隶属部门", new BP.Port.Depts(), false);
@ -592,9 +592,11 @@ namespace BP.WF.Data
// map.AddMyFileS("xx"); // map.AddMyFileS("xx");
map.AddSearchAttr(GenerWorkFlowAttr.FK_Flow); //map.AddSearchAttr(GenerWorkFlowAttr.FK_Flow);
map.AddSearchAttr(GenerWorkFlowAttr.FK_FlowSort);
map.AddSearchAttr(GenerWorkFlowAttr.WFSta); map.AddSearchAttr(GenerWorkFlowAttr.WFSta);
if (SystemConfig.CCBPMRunModel != Sys.CCBPMRunModel.Single) if (SystemConfig.CCBPMRunModel != Sys.CCBPMRunModel.Single)
map.AddHidden(GenerWorkFlowAttr.OrgNo, "=", "@WebUser.OrgNo"); map.AddHidden(GenerWorkFlowAttr.OrgNo, "=", "@WebUser.OrgNo");

@ -3,6 +3,7 @@ using System.Data;
using BP.DA; using BP.DA;
using BP.Sys; using BP.Sys;
using BP.En; using BP.En;
using BP.WF.Template;
namespace BP.WF.Data namespace BP.WF.Data
{ {
@ -726,6 +727,9 @@ namespace BP.WF.Data
map.AddTBDateTime(MyFlowAttr.RDT, "发起日期", true, true); map.AddTBDateTime(MyFlowAttr.RDT, "发起日期", true, true);
map.AddDDLSysEnum(MyFlowAttr.WFSta, 0, "状态", true, false, MyFlowAttr.WFSta, "@0=运行中@1=已完成@2=其他"); map.AddDDLSysEnum(MyFlowAttr.WFSta, 0, "状态", true, false, MyFlowAttr.WFSta, "@0=运行中@1=已完成@2=其他");
//map.AddDDLSysEnum(MyFlowAttr.TSpan, 0, "时间段", true, false, MyFlowAttr.TSpan, "@0=本周@1=上周@2=两周以前@3=三周以前@4=更早"); //map.AddDDLSysEnum(MyFlowAttr.TSpan, 0, "时间段", true, false, MyFlowAttr.TSpan, "@0=本周@1=上周@2=两周以前@3=三周以前@4=更早");
map.AddDDLEntities(GenerWorkFlowAttr.FK_FlowSort, null, "流程类别", new FlowSorts(), false);
map.AddDDLEntities(GenerWorkFlowAttr.FK_FlowSort, null, "类别", new FlowSorts(), false);
map.AddTBString(MyFlowAttr.NodeName, null, "当前节点", true, false, 0, 100, 100, true); map.AddTBString(MyFlowAttr.NodeName, null, "当前节点", true, false, 0, 100, 100, true);
map.AddTBString(MyStartFlowAttr.TodoEmps, null, "当前处理人", true, false, 0, 100, 100, true); map.AddTBString(MyStartFlowAttr.TodoEmps, null, "当前处理人", true, false, 0, 100, 100, true);
@ -742,6 +746,7 @@ namespace BP.WF.Data
#region 查询条件. #region 查询条件.
map.AddSearchAttr(GenerWorkFlowAttr.FK_FlowSort);
map.DTSearchKey = GenerWorkFlowAttr.RDT; map.DTSearchKey = GenerWorkFlowAttr.RDT;
map.DTSearchLabel = "发起日期"; map.DTSearchLabel = "发起日期";
map.DTSearchWay = DTSearchWay.ByDate; map.DTSearchWay = DTSearchWay.ByDate;

@ -1514,7 +1514,7 @@ namespace BP.WF
else else
{ {
if (BP.WF.Glo.IsEnableTaskPool == true) if (BP.WF.Glo.IsEnableTaskPool == true)
sql = "SELECT A.*, null as Auther FROM WF_EmpWorks A WHERE TaskSta=0 AND A.FK_Emp='" + userNo + "' " + whereSQL + ""; sql = "SELECT A.*, null as Auther FROM WF_EmpWorks A WHERE WFState >1 AND TaskSta=0 AND A.FK_Emp='" + userNo + "' " + whereSQL + "";
else else
sql = "SELECT A.*, null as Auther FROM WF_EmpWorks A WHERE A.FK_Emp='" + userNo + "' " + whereSQL + ""; sql = "SELECT A.*, null as Auther FROM WF_EmpWorks A WHERE A.FK_Emp='" + userNo + "' " + whereSQL + "";

@ -2804,6 +2804,15 @@ namespace BP.WF.HttpHandler
return "url@./Comm/Search.htm?EnsName=BP.WF.Data.GenerWorkFlowViews&WFSta=all&Token=" + token; return "url@./Comm/Search.htm?EnsName=BP.WF.Data.GenerWorkFlowViews&WFSta=all&Token=" + token;
} }
//admin查看处理的所有流程。批量操作
if (this.DoWhat.Equals(DoWhatList.BatchForGenerWorkFlowViews) == true)
{
return "url@./Comm/Batch.htm?EnsName=BP.WF.Data.GenerWorkFlowViews&WFSta=all&Token=" + token;
}
//流程查询小页面. //流程查询小页面.
if (this.DoWhat.Equals(DoWhatList.FlowSearchSmall) == true) if (this.DoWhat.Equals(DoWhatList.FlowSearchSmall) == true)
{ {

@ -87,6 +87,8 @@ namespace BP.WF
public const string MyStartFlows = "MyStartFlows"; public const string MyStartFlows = "MyStartFlows";
public const string MyJoinFlows = "MyJoinFlows"; public const string MyJoinFlows = "MyJoinFlows";
public const string GenerWorkFlowViews = "GenerWorkFlowViews"; public const string GenerWorkFlowViews = "GenerWorkFlowViews";
public const string BatchForGenerWorkFlowViews = "BatchForGenerWorkFlowViews";
//已完成 //已完成
public const string Complete = "Complete"; public const string Complete = "Complete";
/// <summary> /// <summary>

@ -155,8 +155,26 @@ namespace BP.WF
try try
{ {
GenerWorkFlow gwf = new GenerWorkFlow(this.WorkID); GenerWorkFlow gwf = new GenerWorkFlow(this.WorkID);
BP.WF.Node nd = new Node();
nd.NodeID = gwf.NodeID;
if (nd.RetrieveFromDBSources() == 0)
{
Glo.AddToTrack(ActionType.DeleteFlowByFlag, gwf.FlowNo, this.WorkID, this.FID, gwf.NodeID,gwf.NodeName, WebUser.No, WebUser.Name, gwf.NodeID, gwf.NodeName, WebUser.No, WebUser.Name, msg, null);
//更新-流程数据表的状态.
string sql = "UPDATE " + this.HisFlow.PTable + " SET WFState=" + (int)WFState.Delete + " WHERE OID=" + this.WorkID;
DBAccess.RunSQL(sql);
//删除他的工作者,不让其有待办.
sql = "DELETE FROM WF_GenerWorkerlist WHERE WorkID=" + this.WorkID;
DBAccess.RunSQL(sql);
BP.WF.Node nd = new Node(gwf.NodeID); //设置产生的工作流程为.
gwf.WFState = BP.WF.WFState.Delete;
gwf.Update();
}
else {
nd = new Node(gwf.NodeID);
Work wk = nd.HisWork; Work wk = nd.HisWork;
wk.OID = this.WorkID; wk.OID = this.WorkID;
wk.RetrieveFromDBSources(); wk.RetrieveFromDBSources();
@ -185,7 +203,7 @@ namespace BP.WF
//调用结束后事件. //调用结束后事件.
ExecEvent.DoFlow(EventListFlow.AfterFlowDel, wn, null); ExecEvent.DoFlow(EventListFlow.AfterFlowDel, wn, null);
}
} }
catch (Exception ex) catch (Exception ex)
{ {

Loading…
Cancel
Save