Beispiel #1
0
        //取消报障单
        public void CancelOrder(Guid orderID)
        {
            // TODO 增加判断,只能取消未处理完的工单
            PermissionService               permissionService = new PermissionService();
            EntityManager <OrderEntity>     orderManager      = new EntityManager <OrderEntity>();
            EntityManager <OrderFlowEntity> orderflowManager  = new EntityManager <OrderFlowEntity>();

            //1.0 获取当前员工数据
            StaffEntity staff = permissionService.GetCurrentStaff();

            //2.0 修改工单实体
            List <KeyValuePair <string, object> > kvps = new List <KeyValuePair <string, object> >();

            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldStatus, (int)OrderStatus.Canceled));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperateTime, DateTime.Now));
            int rows = orderManager.Update(kvps, orderID);

            if (rows == 0)
            {
                throw new JSException(JSErrMsg.ERR_CODE_DATA_MISSING, string.Format(JSErrMsg.ERR_MSG_DATA_MISSING, "工单实体"));
            }

            //3.0 添加工作流实体
            OrderFlowEntity orderflow = new OrderFlowEntity();

            orderflow.OrderID        = orderID;
            orderflow.OperatorID     = staff.ID;
            orderflow.NextOperatorID = 0;
            orderflow.Operation      = (int)OperationEnum.Cancel;
            orderflow.OperateTime    = DateTime.Now;
            orderflow.Remark         = "";
            orderflowManager.Insert(orderflow);
        }
Beispiel #2
0
        //发起报障单
        public void StartOrder(OrderEntity order)
        {
            PermissionService               permissionService = new PermissionService();
            EntityManager <OrderEntity>     orderManager      = new EntityManager <OrderEntity>();
            EntityManager <OrderFlowEntity> orderflowManager  = new EntityManager <OrderFlowEntity>();

            //1.0 获取当前员工数据
            StaffEntity staff = permissionService.GetCurrentStaff();

            //2.0 添加工单实体
            order.ID          = Guid.NewGuid();
            order.Status      = (int)OrderStatus.Appointing;
            order.StarterID   = staff.ID;
            order.OperatorID  = staff.ID;
            order.Status      = (int)OrderStatus.Appointing;
            order.StartTime   = DateTime.Now;
            order.OperateTime = DateTime.Now;
            if (string.IsNullOrEmpty(order.Attn) || string.IsNullOrEmpty(order.AttnTel))
            {
                order.Attn    = staff.Name;
                order.AttnTel = staff.Tel;
            }
            string s = orderManager.Insert(order);

            //3.0 添加工作流实体
            OrderFlowEntity orderFlow = new OrderFlowEntity();

            orderFlow.OrderID        = order.ID;
            orderFlow.OperatorID     = staff.ID;
            orderFlow.NextOperatorID = 0;
            orderFlow.Operation      = (int)OperationEnum.Start;
            orderFlow.OperateTime    = DateTime.Now;
            orderFlow.Remark         = "";
            orderflowManager.Insert(orderFlow);
        }
Beispiel #3
0
        //驳回报障,需继续处理
        public void RejectOrder(Guid orderID, string remark)
        {
            PermissionService                  permissionService   = new PermissionService();
            EntityManager <OrderEntity>        orderManager        = new EntityManager <OrderEntity>();
            EntityManager <OrderHandlerEntity> orderHandlerManager = new EntityManager <OrderHandlerEntity>();
            EntityManager <OrderFlowEntity>    orderflowManager    = new EntityManager <OrderFlowEntity>();

            //1.0 获取当前员工数据
            StaffEntity staff = permissionService.GetCurrentStaff();

            //1.1 获取工单处理者列表,必备获取领队人的信息
            int count = 0;

            WhereStatement where = new WhereStatement();
            where.Add(OrderHandlerEntity.FieldOrderID, Comparison.Equals, orderID);
            List <OrderHandlerEntity> orderHandlers = orderHandlerManager.GetList(where, out count);

            //2.0 修改工单实体
            List <KeyValuePair <string, object> > kvps = new List <KeyValuePair <string, object> >();

            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperatorID, staff.ID));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldNextOperatorID, GetLeaderHandlerID(orderHandlers)));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldStatus, (int)OrderStatus.Rejected));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperateTime, DateTime.Now));
            int rows = orderManager.Update(kvps, orderID);

            if (rows == 0)
            {
                throw new JSException(JSErrMsg.ERR_CODE_DATA_MISSING, string.Format(JSErrMsg.ERR_MSG_DATA_MISSING, "工单实体"));
            }

            //3.0 添加工作流实体
            OrderFlowEntity orderflow = new OrderFlowEntity();

            orderflow.OrderID        = orderID;
            orderflow.OperatorID     = staff.ID;
            orderflow.NextOperatorID = GetLeaderHandlerID(orderHandlers);
            orderflow.Operation      = (int)OperationEnum.reject;
            orderflow.OperateTime    = DateTime.Now;
            orderflow.Remark         = remark;
            orderflowManager.Insert(orderflow);

            OrderHandleDetailEntity orderHandleDetail = new OrderHandleDetailEntity();

            orderHandleDetail.OrderID      = orderID;
            orderHandleDetail.HandleType   = (int)OrderHandleType.Others;
            orderHandleDetail.HandleDetail = "驳回";
            orderHandleDetail.Remark       = remark;
            AddHandleDetail(orderHandleDetail);
        }
Beispiel #4
0
        //报障处理完毕
        public void HandledOrder(Guid orderID)
        {
            PermissionService               permissionService = new PermissionService();
            EntityManager <OrderEntity>     orderManager      = new EntityManager <OrderEntity>();
            EntityManager <OrderFlowEntity> orderflowManager  = new EntityManager <OrderFlowEntity>();

            //1.0 获取当前员工数据
            StaffEntity staff = permissionService.GetCurrentStaff();

            //1.1 获取工单实体,以备获取发起人信息
            OrderEntity order = orderManager.GetSingle(orderID);

            if (order == null)
            {
                throw new JSException(JSErrMsg.ERR_CODE_DATA_MISSING, string.Format(JSErrMsg.ERR_MSG_DATA_MISSING, "工单实体"));
            }

            //2.0 修改工单实体
            List <KeyValuePair <string, object> > kvps = new List <KeyValuePair <string, object> >();

            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperatorID, staff.ID));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldNextOperatorID, order.StarterID));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldStatus, (int)OrderStatus.Checking));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperateTime, DateTime.Now));
            int rows = orderManager.Update(kvps, orderID);

            if (rows == 0)
            {
                throw new JSException(JSErrMsg.ERR_CODE_DATA_MISSING, string.Format(JSErrMsg.ERR_MSG_DATA_MISSING, "工单实体"));
            }

            //3.0 添加工作流实体
            OrderFlowEntity orderflow = new OrderFlowEntity();

            orderflow.OrderID        = orderID;
            orderflow.OperatorID     = staff.ID;
            orderflow.NextOperatorID = order.StarterID;//传回发起人验收。
            orderflow.Operation      = (int)OperationEnum.Handle;
            orderflow.OperateTime    = DateTime.Now;
            orderflow.Remark         = "";
            orderflowManager.Insert(orderflow);

            //4.0 添加处理进度
            OrderHandleDetailEntity orderHandleDetail = new OrderHandleDetailEntity();

            orderHandleDetail.OrderID    = orderID;
            orderHandleDetail.HandleType = (int)OrderHandleType.WanCheng;
            orderHandleDetail.Remark     = "已完成,送检。";
            AddHandleDetail(orderHandleDetail);
        }
Beispiel #5
0
        //报障验收完成
        public void FinishOrder(Guid orderID)
        {
            PermissionService               permissionService = new PermissionService();
            EntityManager <OrderEntity>     orderManager      = new EntityManager <OrderEntity>();
            EntityManager <OrderFlowEntity> orderflowManager  = new EntityManager <OrderFlowEntity>();

            //1.0 获取当前员工数据
            StaffEntity staff = permissionService.GetCurrentStaff();

            //2.0 修改工单实体
            List <KeyValuePair <string, object> > kvps = new List <KeyValuePair <string, object> >();

            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperatorID, staff.ID));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldNextOperatorID, null));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldStatus, (int)OrderStatus.Finish));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldFinishTime, DateTime.Now));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperateTime, DateTime.Now));
            int rows = orderManager.Update(kvps, orderID);

            if (rows == 0)
            {
                throw new JSException(JSErrMsg.ERR_CODE_DATA_MISSING, string.Format(JSErrMsg.ERR_MSG_DATA_MISSING, "工单实体"));
            }

            //3.0 添加工作流实体
            OrderFlowEntity orderflow = new OrderFlowEntity();

            orderflow.OrderID        = orderID;
            orderflow.OperatorID     = staff.ID;
            orderflow.NextOperatorID = 0;
            orderflow.Operation      = (int)OperationEnum.Check;
            orderflow.OperateTime    = DateTime.Now;
            orderflow.Remark         = "";
            orderflowManager.Insert(orderflow);

            //4.0 添加进度为完成
            OrderHandleDetailEntity orderHandleDetail = new OrderHandleDetailEntity();

            orderHandleDetail.OrderID      = orderID;
            orderHandleDetail.HandleType   = (int)OrderHandleType.Others;
            orderHandleDetail.HandleDetail = "完成";
            orderHandleDetail.Remark       = "完成,验收通过!";
            AddHandleDetail(orderHandleDetail);
        }
Beispiel #6
0
        //委派工作
        public void AppointOrder(Guid orderID, List <OrderHandlerEntity> handlers)
        {
            //1.0 获取当前员工数据
            PermissionService permissionService = new PermissionService();
            EntityManager <OrderFlowEntity>    orderflowManager = new EntityManager <OrderFlowEntity>();
            EntityManager <OrderEntity>        orderManager     = new EntityManager <OrderEntity>();
            EntityManager <OrderHandlerEntity> handlerManager   = new EntityManager <OrderHandlerEntity>();

            StaffEntity staff = permissionService.GetCurrentStaff();

            //2.0 修改工单实体

            List <KeyValuePair <string, object> > kvps = new List <KeyValuePair <string, object> >();

            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldStatus, (int)OrderStatus.Receving));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldAppointerID, staff.ID));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldNextOperatorID, GetLeaderHandlerID(handlers)));
            kvps.Add(new KeyValuePair <string, object>(OrderEntity.FieldOperateTime, DateTime.Now));
            int rows = orderManager.Update(kvps, orderID);

            if (rows == 0)
            {
                throw new JSException(JSErrMsg.ERR_CODE_DATA_MISSING, string.Format(JSErrMsg.ERR_MSG_DATA_MISSING, "工单实体"));
            }

            //3.0 添加工作流实体
            OrderFlowEntity orderFlow = new OrderFlowEntity();

            orderFlow.OrderID        = orderID;
            orderFlow.OperatorID     = staff.ID;
            orderFlow.NextOperatorID = GetLeaderHandlerID(handlers);
            orderFlow.Operation      = (int)OperationEnum.Appoint;
            orderFlow.OperateTime    = DateTime.Now;
            orderFlow.Remark         = "";
            orderflowManager.Insert(orderFlow);

            //4.0 添加工单处理者
            handlerManager.Insert(handlers);
        }