Ejemplo n.º 1
0
        /// <summary>
        /// 実績コピー処理を行います。
        /// </summary>
        private void CopyResults()
        {
            KNS_D01        origin_01 = GetLocalKinmuJisseki(viewShainInfo.SHAIN_CD, viewDateTime.Year, viewDateTime.Month, GetOriginDayFromRequest());
            List <KNS_D02> origin_02 = GetLocalSagyoNisshi(viewShainInfo.SHAIN_CD, viewDateTime.Year, viewDateTime.Month, GetOriginDayFromRequest());

            int[]          copyToValues  = GetCopytoDaysFromRequest();
            List <KNS_D01> copytoList_01 = new List <KNS_D01>();
            List <KNS_D02> copytoList_02 = new List <KNS_D02>();

            foreach (int copyToValue in copyToValues)
            {
                if (origin_01 == null)
                {
                    KNS_D01 tmp = GetLocalKinmuJisseki(viewShainInfo.SHAIN_CD, viewDateTime.Year, viewDateTime.Month, copyToValue);
                    if (tmp != null)
                    {
                        copytoList_01.Add(tmp);
                    }
                }
                else
                {
                    KNS_D01 copytod01 = origin_01.Clone();
                    copytod01.DATA_D = copyToValue.ToString();
                    KinmuManager.ExecuteUpdate(ref copytod01);
                }

                if (origin_01 == null || origin_02 == null)
                {
                    List <KNS_D02> tmp = GetLocalSagyoNisshi(viewShainInfo.SHAIN_CD, viewDateTime.Year, viewDateTime.Month, copyToValue);
                    if (tmp.Any())
                    {
                        copytoList_02.AddRange(tmp);
                    }
                }
                else
                {
                    List <KNS_D02> copytod02 = new List <KNS_D02>();
                    origin_02.ForEach(item =>
                    {
                        KNS_D02 tmp = item.Clone();
                        tmp.DATA_D  = copyToValue.ToString();
                        copytod02.Add(tmp);
                    });
                    KinmuManager.ExecuteUpdate(ref copytod02);
                }
            }

            try
            {
                // 削除対象がなくても実施。Listの有無の判断をマネージャ側でいい感じにやってくれる
                dbManager.DeleteKinmuJisseki(copytoList_01);
                dbManager.DeleteSagyoNisshi(copytoList_02);
            }
            catch (Exception ex)
            {
                throw new KinmuException(ex.Message, ex);
            }

            SetInformationPanel(ref InformationPanel, ref InfoIcon, ref InfoText, "勤務実績のコピーが完了しました。", InformationLevel.Highlight);
        }
Ejemplo n.º 2
0
        public void SetSagyoNisshiParameterTest1()
        {
            List <KNS_D02> _d02s = new List <KNS_D02>();
            KNS_D02        _d02  = new KNS_D02
            {
                SHAIN_CD  = "9999999",
                DATA_Y    = "2019",
                DATA_M    = "2",
                DATA_D    = "1",
                PROJ_CD   = "V00000000A",
                SAGYO_CD  = "01",
                SAGYO_MIN = 460
            };

            _d02s.Add(_d02);
            bool res = KinmuManager.ExecuteUpdate(ref _d02s);

            Assert.IsTrue(res);
        }
Ejemplo n.º 3
0
        public void ValidationD01AndD02Test1()
        {
            KNS_D01 _d01 = new KNS_D01
            {
                SHAIN_CD   = "9999999",
                DATA_Y     = "2019",
                DATA_M     = "2",
                DATA_D     = "1",
                NINYO_CD   = "01",
                NINKA_CD   = "10",
                STR_HR     = "9",
                STR_MIN    = "20",
                END_HR     = "18",
                END_MIN    = "0",
                END_PAR    = "0",
                RESTS1_HR  = "12",
                RESTS1_MIN = "00",
                RESTE1_HR  = "13",
                RESTE1_MIN = "0",
                //RESTS2_HR = "24",
                //RESTS2_MIN = "30",
                //RESTE2_HR = "25",
                //RESTE2_MIN = "0"
            };

            List <KNS_D02> _d02s = new List <KNS_D02>();
            KNS_D02        _d02  = new KNS_D02
            {
                SHAIN_CD  = "9999999",
                DATA_Y    = "2019",
                DATA_M    = "2",
                DATA_D    = "1",
                PROJ_CD   = "V00303010A",
                SAGYO_CD  = "01",
                SAGYO_MIN = 460
            };

            _d02s.Add(_d02);
            KinmuManager.ValidationD01AndD02(ref _d01, ref _d02s);
        }