public IHttpActionResult SubmitProof(dynamic proof)
        {
            User           u            = SessionManage.CurrentUser;
            string         proofOrderId = (string)proof.ProofOrderId;
            ProofOrderOper poo          = new ProofOrderOper(u);
            ProofOrder     po           = poo.GetProof(proofOrderId);

            if (po.ProofStatus == ProofStatus.草拟 || po.ProofStatus == ProofStatus.退回)
            {
                NewApprove na = new NewApprove(DdOperator.GetDdApi())
                {
                    User        = u,
                    ProcessCode = Config.GetSampleConfig().ProofProcessCode
                };
                var    ApproveItems   = ProofOrderApprove.ToApprove(po);
                string DdApprovalCode = na.SendApprove(ApproveItems);
                if (DdApprovalCode != "")
                {
                    poo.SetApprove(po, DdApprovalCode);
                    poo.SaveChange();
                }
            }

            return(Ok(po));
        }
        public bool CreateProofOrder(ProofObj obj)
        {
            ProofOrder _proofOrder = new ProofOrder();
            ProofStyle _proofSryle = new ProofStyle();

            if (CheckObj(obj))
            {
                _proofSryle.ProofStyleId = obj.ProofStyleId;
                _proofSryle.ProofType    = sdc.ProofTypes.SingleOrDefault(p => p.TypeName == obj.ProofType);
                _proofSryle.ProofStyleNo = obj.ProofStyleNo;
                _proofSryle.ClentName    = obj.ClentName;
                _proofSryle.ClientNo     = obj.ClientNo;
                _proofSryle.StyleName    = obj.StyleName;
                _proofSryle.Counts       = obj.Counts;
                _proofSryle.Material     = obj.Material;
                _proofSryle.Weight       = obj.Weight;
                _proofSryle.Gauge        = obj.Gauge;
                _proofSryle.ProofOrderId = obj.ProofOrderId;
                obj.FileListItems.ForEach(f =>
                {
                    ProofFile npf = new ProofFile
                    {
                        FullName     = f.FullName,
                        DisplayName  = f.DisplayName,
                        Url          = f.Url,
                        ProofStyleId = _proofSryle.ProofStyleId,
                        FileType     = FileType.ClientFile
                    };
                    npf.SetCreateUser(_user.UserName);
                    _proofSryle.ProofFiles.Add(npf);
                });

                _proofOrder.ProofStyle         = _proofSryle;
                _proofOrder.ProofOrderId       = obj.ProofOrderId;
                _proofOrder.ProofApplyUserDdId = _user.DdId;
                _proofOrder.DesignatedCX       = obj.DesignatedCX;
                _proofOrder.DesignatedGY       = obj.DesignatedGY;
                _proofOrder.Remark             = obj.Remark;
                _proofOrder.Urgency            = obj.Urgency;
                _proofOrder.ProofApplyUserName = _user.UserName;
                _proofOrder.ProofApplyDeptName = _user.DepartName;
                _proofOrder.ProofStatus        = ProofStatus.草拟;
                _proofOrder.RequiredDate       = obj.FinshDate;
                _proofOrder.ProofNum           = obj.ProofNum;
                _proofSryle.SetCreateUser(_user.UserName);
                _proofOrder.SetCreateUser(_user.UserName);
            }
            sdc.ProofStyles.Add(_proofSryle);
            sdc.ProofOrders.Add(_proofOrder);
            return(true);
        }
Beispiel #3
0
        public ProofOrder GetProof(string proofOrderId)
        {
            ProofOrder po = Sdc.ProofOrders.Include(t => t.ProofTasks).Include(t => t.ProofStyle).Include(t => t.ProofStyle.ProofType).Where(p => p.ProofOrderId == proofOrderId).SingleOrDefault();

            if (po != null)
            {
                Sdc.Entry(po.ProofStyle).Collection(t => t.ProofFiles).Query().Where(t => !t.IsDelete).Load();

                Sdc.Entry(po).Collection(t => t.ProofTasks).Query().Include(t => t.Process).Include(t => t.Worker).Load();
                po.ProofTasks = po.ProofTasks.Where(p => !p.IsDelete).ToList();
            }

            return(po);
        }
Beispiel #4
0
        public bool DeleteProof(string proofOrderId)
        {
            ProofOrder po = Sdc.ProofOrders.Include(t => t.ProofStyle).Include(t => t.ProofStyle.ProofFiles).Include(t => t.ProofStyle.ProofType).Where(p => p.ProofOrderId == proofOrderId).SingleOrDefault();

            po.Delete(_user.UserName);
            po.ProofStyle.Delete(_user.UserName);
            po.ProofStyle.ProofFiles.ForEach(p =>
            {
                p.Delete(_user.UserName);
            });
            // Sdc.SaveChanges();

            return(true);
        }
Beispiel #5
0
        /// <summary>
        /// 完成打样,并提交审批
        /// </summary>
        /// <returns></returns>
        public ProofOrder FinshProof(string proofOrderid)
        {
            ProofOrder po = Sdc.ProofOrders.SingleOrDefault(p => p.ProofOrderId == proofOrderid);

            if (po == null)
            {
                return(null);
            }
            po.ProofTasks.ForEach(p =>
            {
                p.FinshDate  = DateTime.Now;
                p.Stats      = SG.Model.Stats.终止;
                p.OperRemark = "订单完成,主动终止任务";
            });
            po.ProofStatus = ProofStatus.交样;
            return(po);
        }
Beispiel #6
0
        public static List <ApproveItem> ToApprove(ProofOrder order)
        {
            List <ApproveItem> la = new List <ApproveItem>()
            {
                new ApproveItem
                {
                    Name  = "申请人",
                    Value = order.ProofApplyUserName,
                },
                new ApproveItem
                {
                    Name  = "编号",
                    Value = order.ProofOrderId,
                },
                new ApproveItem
                {
                    Name  = "客户",
                    Value = order.ProofStyle.ClentName,
                },
                new ApproveItem
                {
                    Name  = "款号",
                    Value = order.ProofStyle.ProofStyleNo,
                }, new ApproveItem
                {
                    Name  = "打样类别",
                    Value = order.ProofStyle.ProofTypeText,
                }, new ApproveItem
                {
                    Name  = "件数",
                    Value = order.ProofNum.ToString(),
                }, new ApproveItem
                {
                    Name  = "完成日期",
                    Value = order.RequiredDate.ToString(),
                },
            };

            return(la);
        }
Beispiel #7
0
        public ProofOrder GetProofByDdApprovalCode(string DdApprovalCode)
        {
            ProofOrder po = sdc.ProofOrders.Include(t => t.ProofStyle).Include(t => t.ProofStyle.ProofFiles).Include(t => t.ProofStyle.ProofType).Where(p => p.DdApprovalCode == DdApprovalCode).SingleOrDefault();

            return(po);
        }
Beispiel #8
0
 public static void Test2()
 {
     SunginDataContext sc = new SunginDataContext();
     ProofOrder        po = new ProofOrder();
 }
Beispiel #9
0
 public void SetFinshApprove(ProofOrder po, string ddApprovalCode)
 {
     po.DdFinshApprovalCode = ddApprovalCode;
     po.ProofStatus         = ProofStatus.交样;
     // Sdc.SaveChanges();
 }
        public bool UpdateProofOrder(ProofObj obj)
        {
            ProofOrder po = sdc.ProofOrders.Include(t => t.ProofStyle).Include(t => t.ProofStyle.ProofFiles).Include(t => t.ProofStyle.ProofType).Where(p => p.ProofOrderId == obj.ProofOrderId).SingleOrDefault();

            if (po != null)
            {
                ProofOrder _proofOrder = po;
                ProofStyle _proofSryle = po.ProofStyle;
                if (CheckObj(obj))
                {
                    _proofSryle.ProofStyleId = obj.ProofStyleId;
                    _proofSryle.ProofType    = sdc.ProofTypes.SingleOrDefault <ProofType>(p => p.TypeName == obj.ProofType);
                    _proofSryle.ProofStyleNo = obj.ProofStyleNo;
                    _proofSryle.ClentName    = obj.ClentName;
                    _proofSryle.ClientNo     = obj.ClientNo;
                    _proofSryle.StyleName    = obj.StyleName;
                    _proofSryle.Counts       = obj.Counts;
                    _proofSryle.Material     = obj.Material;
                    _proofSryle.Weight       = obj.Weight;
                    _proofSryle.Gauge        = obj.Gauge;
                    _proofSryle.ProofOrderId = obj.ProofOrderId;

                    _proofSryle.ProofFiles.ForEach(f =>
                    {
                        if (obj.FileListItems.Count(p => p.Id == f.Id) == 0)
                        {
                            f.Delete(_user.UserName);
                        }
                    });

                    obj.FileListItems.ForEach(f =>
                    {
                        if (f.Id == 0)
                        {
                            ProofFile npf = new ProofFile
                            {
                                FullName     = f.FullName,
                                DisplayName  = f.DisplayName,
                                Url          = f.Url,
                                ProofStyleId = _proofSryle.ProofStyleId,
                                FileType     = FileType.ClientFile
                            };
                            npf.SetCreateUser(_user.UserName);
                            _proofSryle.ProofFiles.Add(npf);
                        }
                    });
                    _proofOrder.ProofOrderId       = obj.ProofOrderId;
                    _proofOrder.ProofApplyUserDdId = _user.DdId;
                    _proofOrder.ProofApplyUserName = _user.UserName;
                    _proofOrder.ProofApplyDeptName = _user.DepartName;
                    _proofOrder.DesignatedCX       = obj.DesignatedCX;
                    _proofOrder.DesignatedGY       = obj.DesignatedGY;
                    _proofOrder.Remark             = obj.Remark;
                    _proofOrder.Urgency            = obj.Urgency;
                    _proofOrder.ProofStatus        = ProofStatus.草拟;
                    _proofOrder.RequiredDate       = obj.FinshDate;
                    _proofOrder.ProofNum           = obj.ProofNum;
                    _proofSryle.SetEditUser(_user.UserName);
                    _proofOrder.SetEditUser(_user.UserName);
                }

                return(true);
            }
            return(false);
        }
Beispiel #11
0
        public string AddYd(ProofOrder proof)
        {
            try
            {
                var nyd = pdc.ypgl_yd.FirstOrDefault(p => p.proofId == proof.ProofOrderId);
                if (nyd == null)
                {
                    var obj = GetNewIdBh();
                    nyd = new ypgl_yd()
                    {
                        id      = obj.id,
                        id_dept = 1,
                        dydbh   = obj.dydbh,
                        id_kh   = 0,
                        kh      = proof.ProofStyle.ProofStyleNo,
                        km      = proof.ProofStyle.StyleName,
                        cf      = proof.ProofStyle.Material,
                        szi     = proof.ProofStyle.Counts,
                        khkh    = proof.ProofStyle.ClientNo,
                        cpz     = (short)proof.ProofStyle.Weight,
                        yplb    = proof.ProofStyle.ProofTypeText,
                        id_khb  = new ClientOper().GetOrAddClient(proof.ProofStyle.ClentName),
                        rq_dj   = proof.ReceivedDate == null ? DateTime.Now : (DateTime)proof.ReceivedDate,
                        rq_jh   = proof.RequiredDate == null ? DateTime.Now : (DateTime)proof.RequiredDate,
                        ry_jb   = "钉钉打样",
                        ry_gy   = "",
                        ry_zb   = "",
                        ry_sj   = "",
                        ry_yw   = proof.ProofApplyUserName,
                        zx      = proof.ProofStyle.Gauge,
                        tprq    = proof.CreateDate == null ? DateTime.Now : (DateTime)proof.CreateDate,
                        tkbz    = 0,
                        gytprq  = DateTime.Now,
                        proofId = proof.ProofOrderId,
                    };
                    pdc.ypgl_yd.Add(nyd);
                }
                else
                {
                    nyd.kh      = proof.ProofStyle.ProofStyleNo;
                    nyd.km      = proof.ProofStyle.StyleName;
                    nyd.cf      = proof.ProofStyle.Material;
                    nyd.szi     = proof.ProofStyle.Counts;
                    nyd.khkh    = proof.ProofStyle.ClientNo;
                    nyd.cpz     = (short)proof.ProofStyle.Weight;
                    nyd.yplb    = proof.ProofStyle.ProofTypeText;
                    nyd.id_khb  = new ClientOper().GetOrAddClient(proof.ProofStyle.ClentName);
                    nyd.rq_dj   = proof.ReceivedDate == null ? DateTime.Now : (DateTime)proof.ReceivedDate;
                    nyd.rq_jh   = proof.RequiredDate == null ? DateTime.Now : (DateTime)proof.RequiredDate;
                    nyd.ry_yw   = proof.ProofApplyUserName;
                    nyd.zx      = proof.ProofStyle.Gauge;
                    nyd.tprq    = proof.CreateDate == null ? DateTime.Now : (DateTime)proof.CreateDate;
                    nyd.proofId = proof.ProofOrderId;
                }

                pdc.SaveChanges();
                return(nyd.dydbh);
            }
            catch
            {
                return("");
            }
        }