/// <summary> /// 新增材料计划 /// </summary> /// <param name="context"></param> private void addMaterialPlan(HttpContext context) { string json = string.Empty; //返回数据的格式 // string sql = "{单号:1,部门1,人员:1,project:[ {工程:1,detail:[{d:1},{d:2}]},{工程:2,detail:[{d:1},{d:2}},{工程:3,detail:[{d:1},{d:2}} ]}"; WZGL.MODEL.Plan.TBL_MATERIALPLAN model = new MODEL.Plan.TBL_MATERIALPLAN();//材料计划 // List<TBL_MATERIALPLANPROJECT> list_project = new List<TBL_MATERIALPLANPROJECT>();//材料计划项目 // List<TBL_MATERIALPLANPROJECTDETAIL> list_detail = new List<TBL_MATERIALPLANPROJECTDETAIL>(); //材料计划项目材料明细 string planid = ComFunction.GetId();//计划主键ID string project = context.Request["data"]; string type = context.Request["type"]; try { List <WZGL.MODEL.Plan.TBL_MATERIALPLAN> list = JsonConvert.DeserializeObject <List <WZGL.MODEL.Plan.TBL_MATERIALPLAN> >(project); if (list.Count > 0) { list[0].Materialplanid = planid; model = list[0]; model.ADD_EMP = CFunctions.getUserId(context); foreach (TBL_MATERIALPLANPROJECT mpj in model.list_project) { string mpjid = ComFunction.GetId();//计划主键ID mpj.Materialplanid = planid; mpj.Materialplanprojectid = mpjid; foreach (TBL_MATERIALPLANPROJECTDETAIL mpjd in mpj.list_detail) { mpjd.Materialplanprojectdetailid = ComFunction.GetId();//计划主键ID mpjd.Materialplanprojectid = mpjid; } } bool re = WZGL.BLL.BllFactory.GetMaterialplanBLL().Add(model, model.list_project, null); WorkFlow.Model.FLOW_TASK task = new WorkFlow.Model.FLOW_TASK(); task.TASK_ID = Guid.NewGuid().ToString().ToUpper(); task.DEFINE_CODE = CFunctions.getFlowDefineId(context, "F7040DE6-522C-4719-8D42-78360A732400"); //"LCBM20161226160709"; task.TASK_CODE = model.Processnumber; // "CLJH" + DateTime.Now.ToString("yyyyMMddHHmmss"); ; task.TASK_TILTE = "材料计划" + DateTime.Now.ToString("yyyyMMddHHmmss"); task.STATUS = "0"; task.TASK_TYPE = "F7040DE6-522C-4719-8D42-78360A732400"; task.ADD_EMP = CFunctions.getUserId(context); // "1";//context.Request["ADD_EMP"]; //task.ADD_TIME = DateTime.Now; task.TASK_JSON = project; // context.Request["TASK_JSON"]; //model.ADD_EMP bool result = WorkFlow.BLL.Operate.AddTask(task); if (result) { if (type == "send") { //发送流程 re = WorkFlow.BLL.Operate.StartFlow(task.TASK_CODE, task.DEFINE_CODE, CFunctions.getUserId(context), ""); if (re) { json = "{\"IsSuccess\":\"true\",\"Message\":\"保存发起&流程成功!\"}"; } else { json = "{\"IsSuccess\":\"false\",\"Message\":\"保存发起&流程失败!\"}"; } } else { json = "{\"IsSuccess\":\"true\",\"Message\":\"添加成功!\"}"; } } else { json = "{\"IsSuccess\":\"false\",\"Message\":\"添加失败!\"}"; } } else { json = "{\"IsSuccess\":\"false\",\"Message\":\"解析数据失败!\"}"; } } catch (Exception ex) { json = "{\"IsSuccess\":\"false\",\"Message\":\"保存失败!\"}"; } //json = json;// JsonConvert.SerializeObject(project); context.Response.ContentType = "application/json"; context.Response.Write(json); context.ApplicationInstance.CompleteRequest(); }
/// <summary> /// 修改材料计划 /// </summary> /// <param name="context"></param> private void editMaterialPlan(HttpContext context) { string json = string.Empty; //返回数据的格式 WZGL.MODEL.Plan.TBL_MATERIALPLAN model = new MODEL.Plan.TBL_MATERIALPLAN();//材料计划 // string planid = "";// ComFunction.GetId();//计划主键ID string project = context.Request["data"]; string reason = context.Request["reason"]; string type = context.Request["type"];//是否需要发起操作 try { List <WZGL.MODEL.Plan.TBL_MATERIALPLAN> list = JsonConvert.DeserializeObject <List <WZGL.MODEL.Plan.TBL_MATERIALPLAN> >(project); if (list.Count > 0) { //list[0].Materialplanid = planid; model = list[0]; foreach (TBL_MATERIALPLANPROJECT mpj in model.list_project) { string mpjid = ComFunction.GetId();//计划主键ID mpj.Materialplanid = model.Materialplanid; mpj.Materialplanprojectid = mpjid; foreach (TBL_MATERIALPLANPROJECTDETAIL mpjd in mpj.list_detail) { mpjd.Materialplanprojectdetailid = ComFunction.GetId();//计划主键ID mpjd.Materialplanprojectid = mpjid; } } WorkFlow.Model.FLOW_TASK task = WorkFlow.BLL.Operate.GetTask(model.Processnumber); bool re = false; re = WZGL.BLL.BllFactory.GetMaterialplanBLL().Update(model); // if (task != null && task.STATUS == "0") //{ re = WZGL.BLL.BllFactory.GetMaterialplanBLL().Update(model); string message = ""; re = WorkFlow.BLL.Operate.UpdateTaskJson(model.Processnumber, project, ref message); if (re) { if (type == "send") { if (task != null) { if (task.STATUS != "0") { json = "{\"IsSuccess\":\"false\",\"Message\":\"发起失败,该计划的流程正在审批中!\"}"; } else { //发送流程 re = WorkFlow.BLL.Operate.StartFlow(task.TASK_CODE, task.DEFINE_CODE, CFunctions.getUserId(context), reason); if (re) { json = "{\"IsSuccess\":\"true\",\"Message\":\"发起成功!\"}"; } else { json = "{\"IsSuccess\":\"false\",\"Message\":\"发起失败!\"}"; } } } else { json = "{\"IsSuccess\":\"false\",\"Message\":\"发起失败,流程任务数据不存在!\"}"; } } else { json = "{\"IsSuccess\":\"true\",\"Message\":\"修改成功!\"}"; } } else { json = "{\"IsSuccess\":\"false\",\"Message\":\"操作失败!\"}"; } // } // else // { // json = "{\"IsSuccess\":\"false\",\"Message\":\"审批中的流程材料单无法编辑!\"}"; // } } else { json = "{\"IsSuccess\":\"false\",\"Message\":\"解析数据失败!\"}"; } } catch (Exception ex) { json = "{\"IsSuccess\":\"false\",\"Message\":\"保存失败!\"}"; } //json = json;// JsonConvert.SerializeObject(project); context.Response.ContentType = "application/json"; context.Response.Write(json); context.ApplicationInstance.CompleteRequest(); }