Пример #1
0
 public SoldLog(Solder _solder, Customer _customer, Store _store, List <ProductStorage> _target, List <Money> _cost, bool _taxed, string _comments)
 {
     soldsmanName = _solder.userName;
     cost         = _cost;
     comments     = _comments;
     taxed        = _taxed;
     target       = _target;
     customer     = _customer;
 }
Пример #2
0
        /// <summary>
        /// Произвести перекличку взвода
        /// </summary>
        /// <param name="platoon">Взвод</param>
        public void Begin(Platoon platoon)
        {
            Console.WriteLine("Перекличка взвода: {0}", platoon.title);
            ISolderIterator iterator = platoon.CreateNumerator();

            while (iterator.HasNext())
            {
                Solder solder = iterator.Next();
                Console.WriteLine(" Я: {0}. Должность: {1}", solder.name, solder.post);
            }
        }
Пример #3
0
        public IActionResult Add(int solderId)
        {
            Solder solder = _repo.GetAll <Solder>().FirstOrDefault(s => s.Id == solderId);

            if (solder != null)
            {
                Cart cart = CheckCart();
                cart.AddItem(solder, 1);
                SessionHepler.SetObject(HttpContext.Session, "Cart", cart);
            }
            return(RedirectToAction("Index"));
        }
Пример #4
0
        /// <summary>
        /// Произвести перекличку взвода
        /// </summary>
        /// <param name="platoon">Взвод</param>
        public List <string> Begin(Platoon platoon)
        {
            List <string> vs = new List <string>();

            vs.Add(String.Format("Перекличка взвода: {0}", platoon.title));
            ISolderIterator iterator = platoon.CreateNumerator();

            while (iterator.HasNext())
            {
                Solder solder = iterator.Next();
                vs.Add(String.Format(" Я: {0}. Должность: {1}", solder.name, solder.post));
            }
            return(vs);
        }
Пример #5
0
        public IActionResult RemoveOne(int solderId)
        {
            Solder solder = _repo.GetAll <Solder>().FirstOrDefault(s => s.Id == solderId);

            if (solder != null)
            {
                Cart cart = CheckCart();
                if (cart.Lines.Count == 0)
                {
                    return(BadRequest());
                }
                cart.RemoveOne(solder, 1);
                SessionHepler.SetObject(HttpContext.Session, "Cart", cart);
            }

            return(RedirectToAction("Index"));
        }
        protected override void LogicImpl()
        {
            var para = ProjectData.Instance.SaveData.SolderPlatform[ID];

            switch (LG.Step)
            {
            case 1:    //平台到位
                stick1SpendTime.Restart();
                if (Axis.SolderPlatFormIsHave[ID].value && ProjectData.Instance.SaveData.processdata.PlatformData[ID * 4 + 1].IsHave &&
                    ProjectData.Instance.SaveData.processdata.PlatformData[ID * 4 + 1].IsPolished || TaskManager.Default.FSM.MODE == 1)
                {
                    LG.ImmediateStepNext(2);
                }
                else
                {
                    string mes = ID.ToString() + "平台未有料或未打磨";
                    MachineAlarm.SetAlarm(AlarmLevelEnum.Level2, mes);
                    LG.StepNext(2, FSMStaDef.RUN);
                }
                break;

            case 2:    //开始上锡拍照
                if (DeviceRsDef.I_CylLocked.value || TaskManager.Default.FSM.MODE == 1)
                {
                    SolderCT.Start();
                    LG.ImmediateStepNext(3);
                }
                break;

            case 3:    //开始上锡
                if (SolderCT.GetSta() == 0 && SolderClean.GetSta() == 0)
                {
                    Solder.Start();
                    LG.ImmediateStepNext(4);
                }
                break;

            case 4:    //上锡结束是否清洗
                if (Solder.GetSta() == 0 && ProjectData.Instance.SaveData.SolderData[ID].SolderNum % para.PerTimesClean == 0 && ProjectData.Instance.SaveData.processdata.SolderList[ID].Count() > 0)
                {
                    ProjectData.Instance.SaveData.SolderData[ID].SolderNum = 0;
                    SolderClean.Start();
                    LG.ImmediateStepNext(3);
                    para.SolderSum++;
                }
                else if (Solder.GetSta() == 0 && ProjectData.Instance.SaveData.processdata.SolderList[ID].Count() > 0)
                {
                    LG.ImmediateStepNext(3);
                    para.SolderSum++;
                }
                else if (Solder.GetSta() == 0 && ProjectData.Instance.SaveData.processdata.SolderList[ID].Count() == 0)
                {
                    SolderClean.Start();
                    LG.ImmediateStepNext(5);
                }
                break;

            case 5:    //ZR回到既定高度
                if (Axis.SolderZ[ID].status == 0 && Axis.SolderR[ID].status == 0 && SolderClean.GetSta() == 0)
                {
                    Axis.SolderZ[ID].MC_MoveAbs(para.EndPos.Z);
                    Axis.SolderR[ID].MC_MoveAbs(para.EndPos.R);
                    LG.ImmediateStepNext(6);
                }
                break;

            case 6:    //ZR回到既定高度
                if (Axis.SolderZ[ID].status == 0 && Axis.SolderR[ID].status == 0)
                {
                    Axis.SolderX[ID].MC_MoveAbs(para.EndPos.X);
                    Axis.SolderY[ID].MC_MoveAbs(para.EndPos.Y);
                    LG.ImmediateStepNext(0xef);
                }
                break;

            case 0xef:
                if (Axis.SolderX[ID].status == 0 && Axis.SolderY[ID].status == 0)
                {
                    LG.End();
                    stick1SpendTime.Stop();
                    para.SolderSpendTime = stick1SpendTime.ElapsedMilliseconds;
                    ProjectData.Instance.SaveData.processdata.PlatformData[ID * 4 + 1].IsTined = true;
                }
                break;
            }
        }