Esempio n. 1
0
        /// <summary>
        /// 自动生成装船开票单
        /// </summary>
        /// <param name="originalEntity"></param>
        private CalculateEntity AutoGenerateTicket(CalculateDetailedEntity originalEntity)
        {
            CalculateDetailedEntity newEntity = new CalculateDetailedEntity()
            {
                CreateUserId       = originalEntity.CreateUserId,
                CreateUserName     = originalEntity.CreateUserName,
                CreateUserDeptCode = originalEntity.CreateUserDeptCode,
                CreateUserOrgCode  = originalEntity.CreateUserOrgCode,
                Createuserdeptid   = originalEntity.Createuserdeptid,
                Platenumber        = originalEntity.Platenumber,
                Takegoodsname      = originalEntity.Takegoodsname,
                Goodsname          = originalEntity.Goodsname,
                ShipUnloading      = originalEntity.ShipUnloading,
                DataType           = originalEntity.DataType,
                IsDelete           = 1,
                Remark             = originalEntity.Remark
            };

            SaveWeightBridgeDetail(string.Empty, newEntity);

            CalculateEntity returnEntity = new CalculateEntity()
            {
                BaseId        = newEntity.ID,
                Numbers       = newEntity.Numbers,
                DataType      = newEntity.DataType,
                Takegoodsname = newEntity.Takegoodsname,
                Goodsname     = newEntity.Goodsname,
                Platenumber   = newEntity.Platenumber,
            };

            return(returnEntity);
        }
Esempio n. 2
0
 /// <summary>
 /// 手机接口保存
 /// </summary>
 /// <param name="keyValue">主键值</param>
 /// <param name="entity">实体对象</param>
 /// <returns></returns>
 public void SaveWeightBridgeDetail(string keyValue, CalculateDetailedEntity entity)
 {
     try
     {
         service.SaveWeightBridgeDetail(keyValue, entity);
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="key"></param>
        /// <param name="entity"></param>
        public void SaveWeightBridgeDetail(string key, CalculateDetailedEntity entity)
        {
            Repository <CalculateDetailedEntity> Repository = new Repository <CalculateDetailedEntity>(DbFactory.Base());

            if (!string.IsNullOrEmpty(key))
            {
                entity.Modify(key);
                Repository.Update(entity);
            }
            else
            {
                entity.Create();
                string sql = string.Format("SELECT COUNT(NUMBERS) FROM WL_CALCULATEDETAILED WHERE  TO_CHAR(CREATEDATE,'yyyy-MM-dd')='{0}'", DateTime.Now.ToString("yyyy-MM-dd"));
                lock (numberLock)
                {
                    DataTable count   = this.BaseRepository().FindTable(sql);
                    string    numbers = string.Format("{0}{1}", DateTime.Now.ToString("yyMMdd"), (Convert.ToInt32(count.Rows[0][0]) + 1).ToString().PadLeft(3, '0'));
                    entity.Numbers = numbers;
                    Repository.Insert(entity);
                }
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 查询未出场票
        /// </summary>
        /// <returns></returns>
        public CalculateEntity GetEntranceTicket(string carNo)
        {
            CalculateEntity         entity = null;
            OperticketmanagerEntity opEntity;

            //车辆上磅称重
            if (!string.IsNullOrEmpty(carNo))
            {
                //Repository<CalculateEntity> repository = new Repository<CalculateEntity>(DbFactory.Base());
                //查询已过皮重未过毛重
                string sql = string.Format(@"SELECT a.id,a.numbers,a.takegoodsname,a.GOODSNAME,a.platenumber,a.tare,a.taretime,a.BASEID,DataType FROM wl_calculate a  where a.isdelete='1' and a.rough is null and a.platenumber='{0}'", carNo);
                entity = this.BaseRepository().FindList(sql).FirstOrDefault();
                if (entity == null)
                {
                    //查询已开票未称重数据(开票室)
                    sql = string.Format("SELECT * FROM WL_OPERTICKETMANAGER a WHERE a.isdelete='1' and  NOT EXISTS(SELECT ID FROM WL_CALCULATE b WHERE a.ID=b.BASEID) AND PLATENUMBER='{0}'", carNo);
                    Repository <OperticketmanagerEntity> repository = new Repository <OperticketmanagerEntity>(DbFactory.Base());
                    opEntity = repository.FindList(sql).OrderByDescending(x => x.CreateDate).FirstOrDefault();

                    //未找到开票信息
                    if (opEntity == null)
                    {
                        //装船开票数据
                        Repository <OperticketmanagerEntity> repositoryLoading = new Repository <OperticketmanagerEntity>(DbFactory.Base());
                        sql      = string.Format("SELECT * FROM WL_OPERTICKETMANAGER WHERE ShipLoading=1 and  PLATENUMBER='{0}' and CREATEDATE>TO_DATE('{1}','yyyy-MM-dd HH24:mi:ss')", carNo, DateTime.Now.AddHours(-2).ToString("yyyy-MM-dd HH:mm:ss"));
                        opEntity = repositoryLoading.FindList(sql).OrderByDescending(x => x.CreateDate).FirstOrDefault();
                        if (opEntity != null)
                        {
                            entity = AutoGenerateTicket(opEntity);
                        }
                        else
                        {
                            //查询已开票未称重数据(地磅室)
                            sql = string.Format("SELECT * FROM WL_CALCULATEDETAILED a WHERE NOT EXISTS(SELECT NUMBERS FROM WL_CALCULATE b WHERE a.NUMBERS=b.NUMBERS) AND PLATENUMBER='{0}'", carNo);
                            Repository <CalculateDetailedEntity> repositoryPound = new Repository <CalculateDetailedEntity>(DbFactory.Base());
                            CalculateDetailedEntity detailEntity = repositoryPound.FindList(sql).OrderByDescending(x => x.CreateDate).FirstOrDefault();
                            if (detailEntity != null)
                            {
                                entity = new CalculateEntity()
                                {
                                    BaseId        = detailEntity.ID,
                                    DataType      = "0",
                                    Numbers       = detailEntity.Numbers,
                                    Takegoodsname = detailEntity.Takegoodsname,
                                    Goodsname     = detailEntity.Goodsname,
                                    Platenumber   = detailEntity.Platenumber,
                                };
                            }
                            else
                            {
                                //卸船开票
                                Repository <CalculateDetailedEntity> repositoryPoundUnloading = new Repository <CalculateDetailedEntity>(DbFactory.Base());
                                sql          = string.Format("SELECT * FROM WL_CALCULATEDETAILED WHERE ShipUnloading=1 and  PLATENUMBER='{0}' and CREATEDATE>TO_DATE('{1}','yyyy-MM-dd HH24:mi:ss')", carNo, DateTime.Now.AddHours(-2).ToString("yyyy-MM-dd HH:mm:ss"));
                                detailEntity = repositoryPoundUnloading.FindList(sql).OrderByDescending(x => x.CreateDate).FirstOrDefault();
                                if (detailEntity != null)
                                {
                                    entity = AutoGenerateTicket(detailEntity);
                                }
                            }
                        }
                    }
                    else //已存在开票数据
                    {
                        entity = new CalculateEntity()
                        {
                            BaseId        = opEntity.ID,
                            DataType      = "4",
                            Numbers       = opEntity.Numbers,
                            Takegoodsname = opEntity.Takegoodsname,
                            Goodsname     = opEntity.Producttype,
                            Platenumber   = opEntity.Platenumber,
                        };
                    }
                }
            }
            return(entity);
        }