Example #1
0
        //  sendToDRBPMsystem
        public string sendToDRBPMsystem(string param)
        {
            JObject item   = (JObject)JsonConvert.DeserializeObject(param);
            string  wfe_id = item["wfe_id"].ToString();
            string  ser    = CWFEngine.GetWorkFlowEntiy(Convert.ToInt32(wfe_id), false).serial;

            //======================================2016.7.22=======================================
            //DRBPM预防性计划 : writeDRBPM(string sbcode,string reason, bool isUrgent)

            writeDRBPM(item["E_Code"].ToString(), "设备本体改造", false, ser); // write to drbpm
            //======================================================================================
            Thread th1 = new Thread(new ParameterizedThreadStart(PushWorkFlowRun));

            th1.Start(wfe_id);
            return("");
        }
Example #2
0
        //public string CreateFlow(string flowname)
        //{
        //    UI_WorkFlow_Entity wfe = CWFEngine.CreateAWFEntityByName(flowname);
        //    if (wfe != null)
        //    {
        //        Dictionary<string, string> record = wfe.GetRecordItems();
        //            record["username"] = (Session["User"] as EquipModel.Entities.Person_Info).Person_Name;
        //            record["time"] = DateTime.Now.ToString();
        //        return wfe.Start(record);
        //        //Json(new { url = wfe.Start(record), wfe_id = wfe.EntityID });
        //        //"{url:'" + wfe.Start(record) + "', wfe_id:'" + wfe.EntityID + "'}";

        //    }
        //    else
        //        return null;
        //}
        public string CreateFlow(string flowname)
        {
            UI_WorkFlow_Entity wfe = CWFEngine.CreateAWFEntityByName(flowname);

            if (wfe != null)
            {
                Dictionary <string, string> record = wfe.GetRecordItems();
                record["username"] = (Session["User"] as EquipModel.Entities.Person_Info).Person_Name;
                record["time"]     = DateTime.Now.ToString();
                wfe.Start(record);
                Dictionary <string, string> signal = new Dictionary <string, string>();

                signal["currentuser"] = (Session["User"] as EquipModel.Entities.Person_Info).Person_Name;
                signal["start_done"]  = "true";
                //submit
                CWFEngine.SubmitSignal(wfe.EntityID, signal, record);



                CWorkFlow   wf  = new CWorkFlow();
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(CWFEngine.GetWorkFlowEntiy(wfe.EntityID, true).Binary);
                wf.InstFromXmlNode(doc.DocumentElement);

                string returl = "";
                if (wf.GetCurrentEvent().CheckAuthority <Person_Info>((Dictionary <string, object>)Session[CWFEngine.authority_params], ((IObjectContextAdapter)(new EquipWebContext())).ObjectContext))
                {
                    returl = wf.GetCurrentEvent().currentaction + "?wfe_id=" + wfe.EntityID.ToString();
                    //如果权限认证通过则返回正确的页面URL
                    return(returl);
                    //return returl;
                }
                else
                {
                    //如果权限认证不通过, 则删除刚创建的工作流实体, 并返回 -1
                    CWFEngine.RemoveWFEntity(wfe.EntityID);
                    return("-1");
                }
                //Json(new { url = wfe.Start(record), wfe_id = wfe.EntityID });
                //"{url:'" + wfe.Start(record) + "', wfe_id:'" + wfe.EntityID + "'}";
            }
            else
            {
                return(null);
            }
        }
Example #3
0
        public JsonResult ListMission()
        {
            IObjectContextAdapter IOca = new EquipWebContext();

            List <UI_MISSION> miss = CWFEngine.GetActiveMissions <Person_Info>(IOca.ObjectContext);

            List <Object> miss_obj = new List <object>();

            foreach (UI_MISSION item in miss)
            {
                UI_MISSION mi = CWFEngine.GetHistoryMissions(item.WE_Entity_Id).Last();
                IDictionary <string, string> record = CWFEngine.GetMissionRecordInfo(mi.Miss_Id);
                DateTime dt        = DateTime.Parse(!record.ContainsKey("time") ? DateTime.Now.ToString() : record["time"]);
                TimeSpan ts        = DateTime.Now - dt;
                string   time_last = "";
                if (ts.TotalDays > 1)
                {
                    time_last += (((int)ts.TotalDays).ToString() + "天之前");
                }
                else if (ts.TotalHours > 1)
                {
                    time_last += (((int)ts.TotalHours).ToString() + "小时之前");
                }
                else
                {
                    time_last += (((int)ts.TotalMinutes).ToString() + "分钟之前");
                }
                object o = new  {
                    WF_ICON   = "fa fa-flash text-text-aqua",
                    MISS_Url  = item.Mission_Url,
                    WF_Name   = CWFEngine.GetWorkFlowEntiy(item.WE_Entity_Id, true).description,
                    MISS_Name = item.WE_Event_Desc,
                    TIME_Last = time_last
                };

                miss_obj.Add(o);
            }
            return(Json(miss_obj.ToArray()));
        }
Example #4
0
        public string Query_HistoryFlow(string time, string flow_id, string equip_gycode)//string json1)//,)
        {
            // JObject item = (JObject)JsonConvert.DeserializeObject(json1);
            List <object> r = new List <object>();

            if (time != "" || flow_id != "" || equip_gycode != "")
            {
                string Equip_GyCode = equip_gycode;
                string record_filter;

                if (time == "")
                {
                    record_filter = "1<>1";
                }
                else
                {
                    string[] strtime = time.Split(new char[] { '-' });
                    record_filter = "time >= '" + strtime[0] + "00:00:00'" + "and  time <= '" + strtime[1] + " 00:00:00'";
                }
                string Query_list = "distinct E.WE_Ser ,E.WE_Id,R.time  ";
                string Query_condition;
                if ((flow_id == "" && Equip_GyCode == ""))
                {
                    Query_condition = "";
                }
                else
                {
                    if (flow_id != "")
                    {
                        Query_condition = "E.W_Name like '%" + flow_id + "%'";
                        if (equip_gycode != "")
                        {
                            Query_condition = Query_condition + "  and P.Equip_Code like '%" + Equip_GyCode + "%'";
                        }
                    }
                    else
                    {
                        Query_condition = "P.Equip_Code like'%" + Equip_GyCode + "%'";
                    }
                }

                System.Data.DataTable dt = CWFEngine.QueryAllInformation(Query_list, Query_condition, record_filter);



                for (var i = 0; i < dt.Rows.Count; i++)
                {
                    UI_MISSION lastMi  = CWFEngine.GetHistoryMissions(Convert.ToInt32(dt.Rows[i].ItemArray[1])).Last();
                    int        Miss_Id = lastMi.Miss_Id;
                    IDictionary <string, string> rr = CWFEngine.GetMissionRecordInfo(Miss_Id);
                    string userName = "";
                    string missTime = "";
                    if (r.Count > 0)
                    {
                        userName = rr["username"];
                        missTime = rr["time"];
                    }

                    object o = new
                    {
                        index        = i,
                        Flow_Name    = "<a  onclick=\"DispalsySide('" + dt.Rows[i].ItemArray[0].ToString() + "')\"> " + dt.Rows[i].ItemArray[0].ToString() + "</a>",
                        Mission_Name = CWFEngine.GetWorkFlowEntiy(Convert.ToInt32(dt.Rows[i].ItemArray[1]), true).description,
                        Mission_Time = userName,
                        Mission_User = missTime
                    };
                    r.Add(o);
                }
            }
            string str = JsonConvert.SerializeObject(r);

            return("{" + "\"data\": " + str + "}");
        }