コード例 #1
0
        public DtoLib.Resultado Jornada_Cerrar(DtoLibPos.Pos.Cerrar.Ficha ficha)
        {
            var result = new DtoLib.Resultado();

            var r01 = ServiceProv.Jornada_Verificar_Cerrer(ficha.idOperador);

            if (r01.Result == DtoLib.Enumerados.EnumResult.isError)
            {
                result.Mensaje = r01.Mensaje;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
                return(result);
            }

            return(ServiceProv.Jornada_Cerrar(ficha));
        }
コード例 #2
0
        public OOB.Resultado.Ficha Jornada_Cerrar(OOB.Pos.Cerrar.Ficha ficha)
        {
            var result = new OOB.Resultado.Ficha();

            var fichaDTO = new DtoLibPos.Pos.Cerrar.Ficha()
            {
                idOperador   = ficha.idOperador,
                estatus      = ficha.estatus,
                arqueoCerrar = new DtoLibPos.Pos.Cerrar.Arqueo()
                {
                    autoArqueo       = ficha.arqueo.autoArqueo,
                    cheque           = ficha.arqueo.cheque,
                    cierreFtp        = ficha.arqueo.cierreFtp,
                    cntDivisaUsuario = ficha.arqueo.cntDivisaUsuario,
                    cntDivisia       = ficha.arqueo.cntDivisia,
                    cntDoc           = ficha.arqueo.cntDoc,
                    cntDocFac        = ficha.arqueo.cntDocFac,
                    cntDocNCr        = ficha.arqueo.cntDocNCr,
                    cobranza         = ficha.arqueo.cobranza,
                    credito          = ficha.arqueo.credito,
                    debito           = ficha.arqueo.debito,
                    devolucion       = ficha.arqueo.devolucion,
                    diferencia       = ficha.arqueo.diferencia,
                    efectivo         = ficha.arqueo.efectivo,
                    firma            = ficha.arqueo.firma,
                    mbanco1          = ficha.arqueo.mbanco1,
                    mbanco2          = ficha.arqueo.mbanco2,
                    mbanco3          = ficha.arqueo.mbanco3,
                    mbanco4          = ficha.arqueo.mbanco4,
                    mcheque          = ficha.arqueo.mcheque,
                    mefectivo        = ficha.arqueo.mefectivo,
                    mfirma           = ficha.arqueo.mfirma,
                    mgastos          = ficha.arqueo.mgastos,
                    montoFac         = ficha.arqueo.montoFac,
                    montoNCr         = ficha.arqueo.montoNCr,
                    motros           = ficha.arqueo.motros,
                    mretenciones     = ficha.arqueo.mretenciones,
                    mretiro          = ficha.arqueo.mretiro,
                    msubtotal        = ficha.arqueo.msubtotal,
                    mtarjeta         = ficha.arqueo.mtarjeta,
                    mticket          = ficha.arqueo.mticket,
                    mtotal           = ficha.arqueo.mtotal,
                    mtrans           = ficha.arqueo.mtrans,
                    otros            = ficha.arqueo.otros,
                    retiro           = ficha.arqueo.retiro,
                    subTotal         = ficha.arqueo.subTotal,
                    ticket           = ficha.arqueo.ticket,
                    total            = ficha.arqueo.total,
                },
            };
            var r01 = MyData.Jornada_Cerrar(fichaDTO);

            if (r01.Result == DtoLib.Enumerados.EnumResult.isError)
            {
                result.Mensaje = r01.Mensaje;
                result.Result  = OOB.Resultado.Enumerados.EnumResult.isError;
                return(result);
            }

            return(result);
        }
コード例 #3
0
        public DtoLib.Resultado Jornada_Cerrar(DtoLibPos.Pos.Cerrar.Ficha ficha)
        {
            var result = new DtoLib.ResultadoId();

            try
            {
                using (var cnn = new PosEntities(_cnPos.ConnectionString))
                {
                    using (var ts = new TransactionScope())
                    {
                        var fechaSistema = cnn.Database.SqlQuery <DateTime>("select now()").FirstOrDefault();
                        var horaSistema  = fechaSistema.ToShortTimeString();

                        var pOperador = cnn.p_operador.Find(ficha.idOperador);
                        if (pOperador == null)
                        {
                            result.Mensaje = "[ ID] OPERADOR NO ENCONTRADO";
                            result.Result  = DtoLib.Enumerados.EnumResult.isError;
                            return(result);
                        }
                        pOperador.estatus      = ficha.estatus;
                        pOperador.fecha_cierre = fechaSistema.Date;
                        pOperador.hora_cierre  = horaSistema;
                        cnn.SaveChanges();

                        var          arq             = ficha.arqueoCerrar;
                        const string UpdatePosArqueo = @"UPDATE pos_arqueo SET " +
                                                       "diferencia={0}, efectivo={1}, cheque={2}, debito={3}, credito={4}, ticket={5}, firma={6}, " +
                                                       "retiro={7}, otros={8}, devolucion={9}, subtotal={10}, cobranza={11}, " +
                                                       "total={12}, mefectivo={13}, mcheque={14}, mbanco1={15}, mbanco2={16}, mbanco3={17}, mbanco4={18}, mtarjeta={19}, " +
                                                       "mticket={20}, mtrans={21}, mfirma={22}, motros={23}, mgastos={24}, mretiro={25}, mretenciones={26}, msubtotal={27}, " +
                                                       "mtotal={28}, cierre_ftp={29}, cnt_divisa={30}, cnt_divisa_usuario={31}, cntDoc={32}, cntDocFac={33}, cntDocNcr={34}, " +
                                                       "montoFac={35}, montoNcr={36}, fecha={38}, hora={39} " +
                                                       "where auto_cierre={37}";
                        var arqueo = cnn.Database.ExecuteSqlCommand(UpdatePosArqueo,
                                                                    arq.diferencia, arq.efectivo, arq.cheque, arq.debito, arq.credito, arq.ticket, arq.firma,
                                                                    arq.retiro, arq.otros, arq.devolucion, arq.subTotal, arq.cobranza,
                                                                    arq.total, arq.mefectivo, arq.mcheque, arq.mbanco1, arq.mbanco2, arq.mbanco3, arq.mbanco4, arq.mtarjeta,
                                                                    arq.mticket, arq.mtrans, arq.mfirma, arq.motros, arq.mgastos, arq.mretiro, arq.mretenciones, arq.msubtotal,
                                                                    arq.mtotal, arq.cierreFtp, arq.cntDivisia, arq.cntDivisaUsuario, arq.cntDoc, arq.cntDocFac, arq.cntDocNCr,
                                                                    arq.montoFac, arq.montoNCr, arq.autoArqueo, fechaSistema.Date, horaSistema);
                        if (arqueo == 0)
                        {
                            result.Mensaje = "PROBLEMA AL ACTUALIZAR MOVIMIENTO DE ARQUEO";
                            result.Result  = DtoLib.Enumerados.EnumResult.isError;
                            return(result);
                        }
                        cnn.SaveChanges();

                        ts.Complete();
                        result.Id = pOperador.id;
                    }
                }
            }
            catch (DbEntityValidationException e)
            {
                var msg = "";
                foreach (var eve in e.EntityValidationErrors)
                {
                    foreach (var ve in eve.ValidationErrors)
                    {
                        msg += ve.ErrorMessage;
                    }
                }
                result.Mensaje = msg;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }
            catch (System.Data.Entity.Infrastructure.DbUpdateException e)
            {
                var msg = "";
                foreach (var eve in e.Entries)
                {
                    //msg += eve.m;
                    foreach (var ve in eve.CurrentValues.PropertyNames)
                    {
                        msg += ve.ToString();
                    }
                }
                result.Mensaje = msg;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }
            catch (Exception e)
            {
                result.Mensaje = e.Message;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }

            return(result);
        }