コード例 #1
0
        /// <summary>
        /// 提交失败单据状况
        /// </summary>
        /// <returns>是否提交成功</returns>
        private bool ErrSubmit()
        {
            string       cCode = txtOrder.Text;
            DataSet      ds;
            ArrivalVouch av;

            av = ArrivalBusiness.CreateAVOrderByMomain(cCode, out ds);
            if (av == null)
            {
                return(true);
            }
            if (av.U8Details == null || av.U8Details.Count < 1)
            {
                return(true);
            }
            if (av.U8Details.Count != tempAVH.U8Details.Count)
            {
                return(true);
            }
            ArrivalVouchs opera = tempAVH.OperateDetails[0];
            ArrivalVouchs sd    = null;

            sd = av.U8Details.Find(delegate(ArrivalVouchs sdd) { return(sdd.cInvCode.ToUpper() == opera.cInvCode.ToUpper()); });
            if (sd == null || sd.nQuantity != opera.nQuantity)
            {
                return(true);
            }

            return(false);
        }
コード例 #2
0
ファイル: frmPUArrival.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 录入数量
        /// </summary>
        /// <returns>是否录入正确</returns>
        private bool RecordNum()
        {
            string _qty = txtCount.Text.Trim();

            try
            {
                if (txtOrder.Tag != null)
                {
                    decimal       qty = Convert.ToDecimal(_qty) * scanCount;
                    ArrivalVouchs sdl;
                    sdl = tempAVH.U8Details.Find(delegate(ArrivalVouchs sdd) { return(sdd.cInvCode.ToUpper() == txtLabel.Text.Trim().ToUpper() && sdd.nQuantity > 0); });

                    if (sdl == null)
                    {
                        MessageBox.Show("该货物已全部扫描!");
                        return(false);
                    }

                    if (sdl.bInvBatch && string.IsNullOrEmpty(txtBatch.Text))
                    {
                        MessageBox.Show("该货物有批次管理,请输入批次后重试!");
                        return(false);
                    }
                    else if (!sdl.bInvBatch && !string.IsNullOrEmpty(txtBatch.Text))
                    {
                        MessageBox.Show("该货物没有批次管理,请勿输入批次!");
                        return(false);
                    }

                    if (qty > sdl.nQuantity)
                    {
                        MessageBox.Show("输入数量大于应到货数量!" + Environment.NewLine + "应不大于" + sdl.nQuantity.ToString("F4") + sdl.cInvm_Unit);
                        return(false);
                    }

                    ArrivalVouchs tempAVS = sdl.getNewDetail();
                    if (!addData(qty, tempAVS))
                    {
                        return(false);
                    }

                    Clear();
                    txtLabel.Focus();
                }
                return(true);
            }
            catch (Exception er)
            {
                MessageBox.Show(er.Message);
                txtCount.Focus();
                return(false);
            }
        }
コード例 #3
0
        /// <summary>
        /// 根据采购订单号查询订单信息
        /// </summary>
        /// <param name="cOrderCode"></param>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public ArrivalVouch PO_POMian_Load(string cOrderCode, out string errMsg)
        {
            DataSet ds = Common.GetInstance().Service.Po_Pomain_Load(Common.CurrentUser.ConnectionString, cOrderCode, out errMsg);

            //判断是否有数据
            if (ds.Tables["dtMain"] == null || ds.Tables["dtMain"].Rows.Count == 0)
            {
                errMsg = "没有查询到数据:单据号不存在或已被处理";
                return(null);
            }
            //转换主表
            ArrivalVouch  arrivalVouch  = EntityConvert.ConvertToArrivalVouch(ds.Tables["dtMain"].Rows[0]);
            ArrivalVouchs arrivalVouchs = null;

            //循环转换子表
            foreach (DataRow row in ds.Tables["dtDetails"].Rows)
            {
                arrivalVouchs             = EntityConvert.ConvertToArrivalVouchs(row);
                arrivalVouchs.cVenAbbName = arrivalVouch.cVenAbbName;
                arrivalVouch.U8Details.Add(arrivalVouchs);
            }
            return(arrivalVouch);
        }
コード例 #4
0
ファイル: frmPUArrival.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 数据累计
        /// </summary>
        /// <param name="_qty">扫描数量</param>
        /// <param name="sd">累加货物</param>
        /// <returns>是否累加成功</returns>
        private bool addData(decimal _qty, ArrivalVouchs sd)
        {
            try
            {
                decimal       num  = 0;
                ArrivalVouchs temp = null;
                temp = tempAVH.U8Details.Find(delegate(ArrivalVouchs av) { return(av.cInvCode.ToUpper() == sd.cInvCode.ToUpper()); });
                foreach (ArrivalVouchs avs in tempAVH.OperateDetails)
                {
                    if (avs.cInvCode.ToUpper() == sd.cInvCode.ToUpper())
                    {
                        num += avs.Quantity;
                        if (num + _qty >= temp.nQuantity)
                        {
                            break;
                        }
                    }
                }
                if (num + _qty > temp.nQuantity)
                {
                    MessageBox.Show("扫描数量大于最大扫描数量");
                    Clear();
                    return(false);
                }

                sd.cBatch = txtBatch.Text.Trim().ToUpper();
                if (tempAVH.OperateDetails.Count > 0)
                {
                    foreach (ArrivalVouchs siodl in tempAVH.OperateDetails)
                    {
                        if (siodl.cInvCode.ToUpper() == sd.cInvCode.ToUpper() && siodl.cBatch == sd.cBatch && siodl.nQuantity > 0)//看还要加什么条件?
                        {
                            if (siodl.nQuantity >= _qty + siodl.Quantity)
                            {
                                siodl.Quantity = siodl.Quantity + _qty;//数量累加
                                if (!siodl.bGsp)
                                {
                                    //非质检到货合格数量
                                    siodl.fRealQuantity  += _qty;
                                    siodl.fValidQuantity += _qty;
                                }

                                siodl.iMoney       = siodl.Quantity * siodl.iCost;                               //本币无税金额
                                siodl.iTaxPrice    = siodl.iMoney * siodl.iTaxRate * Convert.ToDecimal(0.01);    //本币税额
                                siodl.iSum         = siodl.iMoney + siodl.iTaxPrice;                             //本币价税合计
                                siodl.iOriMoney    = siodl.Quantity * siodl.iOriCost;                            //原币无税金额
                                siodl.iOriTaxPrice = siodl.iOriMoney * siodl.iTaxRate * Convert.ToDecimal(0.01); //原币税额
                                siodl.iOriSum      = siodl.iOriMoney + siodl.iOriTaxPrice;                       //原币价税合计
                                if (siodl.iMassDate > 0 && siodl.dPDate != Cast.ToDateTime(dtpProDate.Value.ToShortDateString()))
                                {
                                    siodl.dPDate       = Cast.ToDateTime(dtpProDate.Value.ToShortDateString());               //生产日期
                                    sd.dVDate          = Cast.ToDateTime(dtpValityDate.Value.AddDays(1).ToShortDateString()); //失效日期
                                    sd.cExpirationDate = dtpValityDate.Value.ToString("yyyy-MM-dd");                          //有效期至
                                }
                                if (cbChinese.Checked)
                                {
                                    siodl.Define23 = dtpChineseDate.Value.ToString("yyyy-MM-dd");//中成药生产日期
                                }
                                return(true);
                            }
                            else
                            {
                                MessageBox.Show("已扫描数量大于最大扫描数量" + Environment.NewLine + "应小于" + sd.nQuantity.ToString("F4") + sd.cInvm_Unit + ",已扫描" + siodl.Quantity.ToString("F4") + sd.cInvm_Unit);
                                Clear();
                                return(false);
                            }
                        }
                    }
                }
                //统一仓库
                sd.cWhCode = cmbWarehouse.SelectedValue.ToString();
                sd.cWhName = cmbWarehouse.Text;
                if (!sd.bGsp)
                {
                    //非质检到货合格数量
                    sd.fRealQuantity  = _qty;
                    sd.fValidQuantity = _qty;
                }
                sd.Quantity     = _qty;
                sd.iMoney       = sd.Quantity * sd.iCost;                               //本币无税金额
                sd.iTaxPrice    = sd.iMoney * sd.iTaxRate * Convert.ToDecimal(0.01);    //本币税额
                sd.iSum         = sd.iMoney + sd.iTaxPrice;                             //本币价税合计
                sd.iOriMoney    = sd.Quantity * sd.iOriCost;                            //原币无税金额
                sd.iOriTaxPrice = sd.iOriMoney * sd.iTaxRate * Convert.ToDecimal(0.01); //原币税额
                sd.iOriSum      = sd.iOriMoney + sd.iOriTaxPrice;                       //原币价税合计
                //是否效期管理
                if (sd.iMassDate > 0)
                {
                    sd.dPDate            = Cast.ToDateTime(dtpProDate.Value.ToShortDateString());               //生产日期
                    sd.dVDate            = Cast.ToDateTime(dtpValityDate.Value.AddDays(1).ToShortDateString()); //失效日期
                    sd.cExpirationDate   = dtpValityDate.Value.ToString("yyyy-MM-dd");                          //有效期至
                    sd.cMassUnit         = 2;
                    sd.iExpiratDateCalcu = 2;
                }
                if (cbChinese.Checked)
                {
                    sd.Define23 = dtpChineseDate.Value.ToString("yyyy-MM-dd");//中成药生产日期
                }
                tempAVH.OperateDetails.Add(sd);

                btnSubmit.Enabled = true;
                return(true);
            }
            catch (Exception er)
            {
                MessageBox.Show(er.Message);
                txtCount.Focus();
                return(false);
            }
        }
コード例 #5
0
ファイル: frmPUArrival.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 读取标签
        /// </summary>
        /// <returns>是否存在对应存货</returns>
        private bool ReadLabel()
        {
            try
            {
                foreach (ArrivalVouchs sid in tempAVH.U8Details)
                {
                    if (sid.cInvCode.ToUpper() == txtLabel.Text.Trim().ToUpper())
                    {
                        lblName.Text     = sid.cInvName; //品名
                        lblStandard.Text = sid.cInvStd;  //规格
                        //lblcInvCode.Text = sid.cInvCode;    //生产编码
                        lblAddrCode.Text = sid.Define22; //sid.cAddress;    //产地
                        decimal qty = 0;                 //已扫数量
                        foreach (ArrivalVouchs sdd in tempAVH.OperateDetails)
                        {
                            if (sdd.cInvCode.ToUpper() == txtLabel.Text.Trim().ToUpper() && sdd.Quantity > 0)
                            {
                                if (!string.IsNullOrEmpty(txtBatch.Text) && sdd.cBatch.ToUpper() != txtBatch.Text.Trim().ToUpper())
                                {
                                    continue;
                                }
                                qty += sdd.Quantity;
                            }
                        }
                        lblDoneNum.Text = qty.ToString("F4");
                        //非二维码扫描且效期管理
                        if (!is2Code && sid.bInvBatch && sid.iMassDate > 0)
                        {
                            cbChinese.Enabled = true;
                            if (!string.IsNullOrEmpty(sid.Define23))
                            {
                                cbChinese.Checked    = true;
                                dtpChineseDate.Value = ConvertDate(sid.Define23);
                            }
                            dtpProDate.Enabled    = true;
                            dtpValityDate.Enabled = true;
                            if (dtpProDate.Value == dtpValityDate.Value || dtpProDate.Value == DateTime.Now)
                            {
                                ArrivalVouchs temp = null;
                                temp = tempAVH.OperateDetails.Find(delegate(ArrivalVouchs avs) { return(avs.cInvCode.ToUpper() == txtLabel.Text.Trim().ToUpper() && avs.cBatch.ToUpper() == txtBatch.Text.Trim().ToUpper()); });
                                try
                                {
                                    if (temp != null)
                                    {
                                        dtpValityDate.Value  = ConvertDate(temp.cExpirationDate);
                                        dtpProDate.Value     = temp.dPDate;// ConvertDate(temp.dPDate);
                                        dtpChineseDate.Value = ConvertDate(temp.Define23);
                                    }
                                    else
                                    {
                                        dtpValityDate.Value = ConvertDate(sid.cExpirationDate);
                                        dtpProDate.Value    = temp.dPDate;// ConvertDate(sid.dPDate);
                                    }
                                }
                                catch
                                {
                                    dtpValityDate.Value = Common.err_Time.AddMonths(sid.iMassDate).AddDays(-1);
                                    dtpProDate.Value    = Common.err_Time;
                                }
                            }
                        }
                        else
                        {
                            dtpProDate.Enabled    = false;
                            dtpValityDate.Enabled = false;
                        }

                        //
                        txtCount.Focus();
                        txtCount.SelectAll();
                        txtOrder.Tag = sid;
                        return(true);
                    }
                }

                MessageBox.Show("没有相应的物料信息");
                Clear();
                return(false);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return(false);
            }
        }
コード例 #6
0
ファイル: ArrivalBusiness.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 转换(表体)
        /// </summary>
        /// <param name="avDetail"></param>
        /// <param name="dr"></param>
        /// <param name="type"></param>
        public static void ArrivalDetailRow(ArrivalVouchs avDetail, DataRow dr, bool type)
        {
            if (type)
            {
                #region Body_Detail

                avDetail.Autoid           = Common.DB2Int(dr["autoid"]);
                avDetail.ID               = Common.DB2Int(dr["id"]);
                avDetail.cWhCode          = Common.DB2String(dr["cwhcode"]);
                avDetail.cInvCode         = Common.DB2String(dr["cinvcode"]);
                avDetail.cInvName         = Common.DB2String(dr["cinvname"]);
                avDetail.cInvStd          = Common.DB2String(dr["cinvstd"]);
                avDetail.iNum             = Common.DB2Decimal(dr["inum"]);
                avDetail.Quantity         = Common.DB2Decimal(dr["iquantity"]);
                avDetail.iOriCost         = Common.DB2Decimal(dr["ioricost"]);
                avDetail.iOriTaxCost      = Common.DB2Decimal(dr["ioritaxcost"]);
                avDetail.iOriMoney        = Common.DB2Decimal(dr["iorimoney"]);
                avDetail.iOriTaxPrice     = Common.DB2Decimal(dr["ioritaxprice"]);
                avDetail.iOriSum          = Common.DB2Decimal(dr["iorisum"]);
                avDetail.iCost            = Common.DB2Decimal(dr["icost"]);
                avDetail.iMoney           = Common.DB2Decimal(dr["imoney"]);
                avDetail.iTaxPrice        = Common.DB2Decimal(dr["itaxprice"]);
                avDetail.iSum             = Common.DB2Decimal(dr["isum"]);
                avDetail.Free1            = Common.DB2String(dr["cfree1"]);
                avDetail.Free2            = Common.DB2String(dr["cfree2"]);
                avDetail.Free3            = Common.DB2String(dr["cfree3"]);
                avDetail.Free4            = Common.DB2String(dr["cfree4"]);
                avDetail.Free5            = Common.DB2String(dr["cfree5"]);
                avDetail.Free6            = Common.DB2String(dr["cfree6"]);
                avDetail.Free7            = Common.DB2String(dr["cfree7"]);
                avDetail.Free8            = Common.DB2String(dr["cfree8"]);
                avDetail.Free9            = Common.DB2String(dr["cfree9"]);
                avDetail.Free10           = Common.DB2String(dr["cfree10"]);
                avDetail.iTaxRate         = Common.DB2Decimal(dr["itaxrate"]);
                avDetail.Define22         = Common.DB2String(dr["cdefine22"]);
                avDetail.Define23         = Common.DB2String(dr["cdefine23"]);
                avDetail.Define24         = Common.DB2String(dr["cdefine24"]);
                avDetail.Define25         = Common.DB2String(dr["cdefine25"]);
                avDetail.Define26         = Common.DB2Decimal(dr["cdefine26"]);
                avDetail.Define27         = Common.DB2Decimal(dr["cdefine27"]);
                avDetail.Define28         = Common.DB2String(dr["cdefine28"]);
                avDetail.Define29         = Common.DB2String(dr["cdefine29"]);
                avDetail.Define30         = Common.DB2String(dr["cdefine30"]);
                avDetail.Define31         = Common.DB2String(dr["cdefine31"]);
                avDetail.Define32         = Common.DB2String(dr["cdefine32"]);
                avDetail.Define33         = Common.DB2String(dr["cdefine33"]);
                avDetail.Define34         = Common.DB2Int(dr["cdefine34"]);
                avDetail.Define35         = Common.DB2Int(dr["cdefine35"]);
                avDetail.Define36         = Common.DB2DateTime(dr["cdefine36"]);
                avDetail.Define37         = Common.DB2DateTime(dr["cdefine37"]);
                avDetail.cItem_class      = Common.DB2String(dr["citem_class"]);
                avDetail.cItemCode        = Common.DB2String(dr["citemcode"]);
                avDetail.iPOsID           = Common.DB2Int(dr["iposid"]);
                avDetail.cItemName        = Common.DB2String(dr["citemname"]);
                avDetail.cUnitID          = Common.DB2String(dr["cunitid"]);
                avDetail.fKPQuantity      = Common.DB2Decimal(dr["fkpquantity"]);
                avDetail.fRealQuantity    = Common.DB2Decimal(dr["frealquantity"]);
                avDetail.fValidInQuan     = Common.DB2Decimal(dr["fvalidInQuan"]);
                avDetail.finValidQuantity = Common.DB2Decimal(dr["finvalidquantity"]);
                avDetail.cCloser          = Common.DB2String(dr["ccloser"]);
                avDetail.iCorId           = Common.DB2Int(dr["icorid"]);
                avDetail.bGsp             = Common.DB2Bool(dr["bgsp"]);
                //avDetail.cGsp = avDetail.bGsp ? "是" : "否";
                avDetail.cBatch             = Common.DB2String(dr["cbatch"]);
                avDetail.dVDate             = Common.DB2DateTime(dr["dvdate"]);
                avDetail.dPDate             = Common.DB2DateTime(dr["dpdate"]);
                avDetail.fRefuseQuantity    = Common.DB2Decimal(dr["frefusequantity"]);
                avDetail.cGspState          = Common.DB2String(dr["cgspstate"]);
                avDetail.fInvalidInNum      = Common.DB2Decimal(dr["finvalidnum"]);
                avDetail.bTaxCost           = Common.DB2Bool(dr["btaxcost"]);
                avDetail.bInspect           = Common.DB2String(dr["binspect"]);
                avDetail.fRefuseNum         = Common.DB2Decimal(dr["frefusenum"]);
                avDetail.iPPartId           = Common.DB2Int(dr["ippartid"]);
                avDetail.iPTOSeq            = Common.DB2Int(dr["iptoseq"]);
                avDetail.SoDId              = Common.DB2String(dr["sodid"]);
                avDetail.SoType             = Common.DB2Int(dr["sotype"]);
                avDetail.ContractRowGUID    = Common.DB2String(dr["contractrowguid"]);
                avDetail.iMassDate          = Common.DB2Int(dr["imassdate"]);
                avDetail.cMassUnit          = Common.DB2Int(dr["cmassunit"]);
                avDetail.bExigency          = Common.DB2String(dr["bexigency"]);
                avDetail.cBcloser           = Common.DB2String(dr["cbcloser"]);
                avDetail.fDTQuantity        = Common.DB2Decimal(dr["fdtquantity"]);
                avDetail.fInvalidInNum      = Common.DB2Decimal(dr["finvalidinnum"]);
                avDetail.fDegradeQuantity   = Common.DB2Decimal(dr["fdegradequantity"]);
                avDetail.fDegradeNum        = Common.DB2Decimal(dr["fdegradenum"]);
                avDetail.fDegradeInQuantity = Common.DB2Decimal(dr["fdegradeinquantity"]);
                avDetail.fDegradeInNum      = Common.DB2Decimal(dr["fdegradeinnum"]);
                avDetail.fInspectQuantity   = Common.DB2Decimal(dr["finspectquantity"]);
                avDetail.fInspectNum        = Common.DB2Decimal(dr["finspectnum"]);
                avDetail.iInvMPCost         = Common.DB2Decimal(dr["iinvmpcost"]);
                avDetail.Guids              = Common.DB2String(dr["guids"]);
                avDetail.iInvexchRate       = Common.DB2Decimal(dr["iinvexchrate"]);
                avDetail.Objectid_Source    = Common.DB2String(dr["objectid_source"]);
                avDetail.Autoid_Source      = Common.DB2Int(dr["autoid_source"]);
                avDetail.Ufts_Source        = Common.DB2String(dr["ufts_source"]);
                avDetail.iRowno_Source      = Common.DB2Int(dr["irowno_source"]);
                avDetail.cSoCode            = Common.DB2String(dr["csocode"]);
                avDetail.iSoRowNo           = Common.DB2Int(dr["isorowno"]);
                avDetail.iOrderId           = Common.DB2Int(dr["iorderid"]);
                avDetail.cOrderCode         = Common.DB2String(dr["cordercode"]);
                avDetail.iOrderRowNo        = Common.DB2Int(dr["iorderrowno"]);
                avDetail.dLineCloseDate     = Common.DB2String(dr["dlineclosedate"]);
                avDetail.ContractCode       = Common.DB2String(dr["contractcode"]);
                avDetail.ContractRowNo      = Common.DB2String(dr["contractrowno"]);
                avDetail.RejectSource       = Common.DB2Bool(dr["rejectsource"]);
                avDetail.iCiqBookId         = Common.DB2Int(dr["iciqbookid"]);
                avDetail.cCiqBookCode       = Common.DB2String(dr["cciqbookcode"]);
                avDetail.cCiqCode           = Common.DB2String(dr["cciqcode"]);
                avDetail.iRejectAutoId      = Common.DB2Int(dr["irejectautoid"]);
                avDetail.iExpiratDateCalcu  = Common.DB2Int(dr["iexpiratdatecalcu"]);
                avDetail.cExpirationDate    = Common.DB2String(dr["cexpirationdate"]);
                avDetail.dExpirationDate    = Common.DB2DateTime(dr["dexpirationdate"]);
                avDetail.cUpSoCode          = Common.DB2String(dr["cupsocode"]);
                avDetail.iOrderdId          = Common.DB2Int(dr["iorderdid"]);
                avDetail.iOrderType         = Common.DB2Int(dr["iordertype"]);
                avDetail.cSoOrderCode       = Common.DB2String(dr["csoordercode"]);
                avDetail.iOrderSeq          = Common.DB2Int(dr["iorderseq"]);
                avDetail.BatchProperty1     = Common.DB2Decimal(dr["cbatchproperty1"]);
                avDetail.BatchProperty2     = Common.DB2Decimal(dr["cbatchproperty2"]);
                avDetail.BatchProperty3     = Common.DB2Decimal(dr["cbatchproperty3"]);
                avDetail.BatchProperty4     = Common.DB2Decimal(dr["cbatchproperty4"]);
                avDetail.BatchProperty5     = Common.DB2Decimal(dr["cbatchproperty5"]);
                avDetail.BatchProperty6     = Common.DB2String(dr["cbatchproperty6"]);
                avDetail.BatchProperty7     = Common.DB2String(dr["cbatchproperty7"]);
                avDetail.BatchProperty8     = Common.DB2String(dr["cbatchproperty8"]);
                avDetail.BatchProperty9     = Common.DB2String(dr["cbatchproperty9"]);
                avDetail.BatchProperty10    = Common.DB2String(dr["cbatchproperty10"]);
                avDetail.iVouchRowNo        = Common.DB2Int(dr["ivouchrowno"]);
                avDetail.cVenName           = Common.DB2String(dr["cvenname"]);
                avDetail.cVenAbbName        = Common.DB2String(dr["cvenabbname"]);
                avDetail.cAddress           = Common.DB2String(dr["caddress"]);
                avDetail.nQuantity          = Common.DB2Decimal(dr["inquantity"]);
                avDetail.cInvm_Unit         = Common.DB2String(dr["cinvm_unit"]);
                avDetail.dArriveDate        = Common.DB2String(dr["darrivedate"]);
                avDetail.cDemandMemo        = Common.DB2String(dr["cdemandmemo"]);
                avDetail.bInvBatch          = Common.DB2Bool(dr["binvbatch"]);
                avDetail.OrderQuantity      = Common.DB2Decimal(dr["orderquantity"]);
                //委外
                avDetail.cMoDetailsID = Common.DB2String(dr["modetailsID"]);

                #endregion
            }
            else
            {
                #region Body_Row

                dr["autoid"]             = avDetail.Autoid;
                dr["id"]                 = avDetail.ID;
                dr["cwhcode"]            = avDetail.cWhCode;
                dr["cinvcode"]           = avDetail.cInvCode;
                dr["cinvname"]           = avDetail.cInvName;
                dr["cinvstd"]            = avDetail.cInvStd;
                dr["inum"]               = avDetail.iNum;
                dr["iquantity"]          = avDetail.Quantity;
                dr["ioricost"]           = avDetail.iOriCost;
                dr["ioritaxcost"]        = avDetail.iOriTaxCost;
                dr["iorimoney"]          = avDetail.iOriMoney;
                dr["ioritaxprice"]       = avDetail.iOriTaxPrice;
                dr["iorisum"]            = avDetail.iOriSum;
                dr["icost"]              = avDetail.iCost;
                dr["imoney"]             = avDetail.iMoney;
                dr["itaxprice"]          = avDetail.iTaxPrice;
                dr["isum"]               = avDetail.iSum;
                dr["cfree1"]             = avDetail.Free1;
                dr["cfree2"]             = avDetail.Free2;
                dr["cfree3"]             = avDetail.Free3;
                dr["cfree4"]             = avDetail.Free4;
                dr["cfree5"]             = avDetail.Free5;
                dr["cfree6"]             = avDetail.Free6;
                dr["cfree7"]             = avDetail.Free7;
                dr["cfree8"]             = avDetail.Free8;
                dr["cfree9"]             = avDetail.Free9;
                dr["cfree10"]            = avDetail.Free10;
                dr["itaxrate"]           = avDetail.iTaxRate;
                dr["cdefine22"]          = avDetail.Define22;
                dr["cdefine23"]          = avDetail.Define23;
                dr["cdefine24"]          = avDetail.Define24;
                dr["cdefine25"]          = avDetail.Define25;
                dr["cdefine26"]          = avDetail.Define26;
                dr["cdefine27"]          = avDetail.Define27;
                dr["cdefine28"]          = avDetail.Define28;
                dr["cdefine29"]          = avDetail.Define29;
                dr["cdefine30"]          = avDetail.Define30;
                dr["cdefine31"]          = avDetail.Define31;
                dr["cdefine32"]          = avDetail.Define32;
                dr["cdefine33"]          = avDetail.Define33;
                dr["cdefine34"]          = avDetail.Define34;
                dr["cdefine35"]          = avDetail.Define35;
                dr["cdefine36"]          = avDetail.Define36;
                dr["cdefine37"]          = avDetail.Define37;
                dr["citem_class"]        = avDetail.cItem_class;
                dr["citemcode"]          = avDetail.cItemCode;
                dr["iposid"]             = avDetail.iPOsID;
                dr["citemname"]          = avDetail.cItemName;
                dr["cunitid"]            = avDetail.cUnitID;
                dr["fkpquantity"]        = avDetail.fKPQuantity;
                dr["frealquantity"]      = avDetail.fRealQuantity;
                dr["fValidQuantity"]     = avDetail.fValidQuantity;
                dr["fvalidInQuan"]       = avDetail.fValidInQuan;
                dr["finvalidquantity"]   = avDetail.finValidQuantity;
                dr["ccloser"]            = avDetail.cCloser;
                dr["icorid"]             = avDetail.iCorId;
                dr["bgsp"]               = avDetail.bGsp;
                dr["cbatch"]             = avDetail.cBatch;
                dr["dvdate"]             = avDetail.dVDate;
                dr["dpdate"]             = avDetail.dPDate;
                dr["frefusequantity"]    = avDetail.fRefuseQuantity;
                dr["cgspstate"]          = avDetail.cGspState;
                dr["finvalidnum"]        = avDetail.fInvalidInNum;
                dr["btaxcost"]           = avDetail.bTaxCost;
                dr["binspect"]           = avDetail.bInspect;
                dr["frefusenum"]         = avDetail.fRefuseNum;
                dr["ippartid"]           = avDetail.iPPartId;
                dr["iptoseq"]            = avDetail.iPTOSeq;
                dr["sodid"]              = avDetail.SoDId;
                dr["sotype"]             = avDetail.SoType;
                dr["contractrowguid"]    = avDetail.ContractRowGUID;
                dr["imassdate"]          = avDetail.iMassDate;
                dr["cmassunit"]          = avDetail.cMassUnit;
                dr["bexigency"]          = avDetail.bExigency;
                dr["cbcloser"]           = avDetail.cBcloser;
                dr["fdtquantity"]        = avDetail.fDTQuantity;
                dr["finvalidinnum"]      = avDetail.fInvalidInNum;
                dr["fdegradequantity"]   = avDetail.fDegradeQuantity;
                dr["fdegradenum"]        = avDetail.fDegradeNum;
                dr["fdegradeinquantity"] = avDetail.fDegradeInQuantity;
                dr["fdegradeinnum"]      = avDetail.fDegradeInNum;
                dr["finspectquantity"]   = avDetail.fInspectQuantity;
                dr["finspectnum"]        = avDetail.fInspectNum;
                dr["iinvmpcost"]         = avDetail.iInvMPCost;
                dr["guids"]              = avDetail.Guids;
                dr["iinvexchrate"]       = avDetail.iInvexchRate;
                dr["objectid_source"]    = avDetail.Objectid_Source;
                dr["autoid_source"]      = avDetail.Autoid_Source;
                dr["ufts_source"]        = avDetail.Ufts_Source;
                dr["irowno_source"]      = avDetail.iRowno_Source;
                dr["csocode"]            = avDetail.cSoCode;
                dr["isorowno"]           = avDetail.iSoRowNo;
                dr["iorderid"]           = avDetail.iOrderId;
                dr["cordercode"]         = avDetail.cOrderCode;
                dr["iorderrowno"]        = avDetail.iOrderRowNo;
                dr["dlineclosedate"]     = avDetail.dLineCloseDate;
                dr["contractcode"]       = avDetail.ContractCode;
                dr["contractrowno"]      = avDetail.ContractRowNo;
                dr["rejectsource"]       = avDetail.RejectSource;
                dr["iciqbookid"]         = avDetail.iCiqBookId;
                dr["cciqbookcode"]       = avDetail.cCiqBookCode;
                dr["cciqcode"]           = avDetail.cCiqCode;
                dr["irejectautoid"]      = avDetail.iRejectAutoId;
                dr["iexpiratdatecalcu"]  = avDetail.iExpiratDateCalcu;
                dr["cexpirationdate"]    = avDetail.cExpirationDate;
                dr["dexpirationdate"]    = avDetail.dExpirationDate;
                dr["cupsocode"]          = avDetail.cUpSoCode;
                dr["iorderdid"]          = avDetail.iOrderdId;
                dr["iordertype"]         = avDetail.iOrderType;
                dr["csoordercode"]       = avDetail.cSoOrderCode;
                dr["iorderseq"]          = avDetail.iOrderSeq;
                dr["cbatchproperty1"]    = avDetail.BatchProperty1;
                dr["cbatchproperty2"]    = avDetail.BatchProperty2;
                dr["cbatchproperty3"]    = avDetail.BatchProperty3;
                dr["cbatchproperty4"]    = avDetail.BatchProperty4;
                dr["cbatchproperty5"]    = avDetail.BatchProperty5;
                dr["cbatchproperty6"]    = avDetail.BatchProperty6;
                dr["cbatchproperty7"]    = avDetail.BatchProperty7;
                dr["cbatchproperty8"]    = avDetail.BatchProperty8;
                dr["cbatchproperty9"]    = avDetail.BatchProperty9;
                dr["cbatchproperty10"]   = avDetail.BatchProperty10;
                dr["ivouchrowno"]        = avDetail.iVouchRowNo;
                dr["cvenname"]           = avDetail.cVenName;
                dr["caddress"]           = avDetail.cAddress;
                dr["inquantity"]         = avDetail.nQuantity;
                dr["cinvm_unit"]         = avDetail.cVenName;
                dr["darrivedate"]        = avDetail.cAddress;
                dr["cdemandmemo"]        = avDetail.nQuantity;
                dr["binvbatch"]          = avDetail.bInvBatch;
                dr["orderquantity"]      = avDetail.OrderQuantity;
                //委外
                dr["modetailsID"] = avDetail.cMoDetailsID;

                #endregion
            }
        }
コード例 #7
0
ファイル: ArrivalBusiness.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 转换(表头)
        /// </summary>
        /// <param name="objAVOrder"></param>
        /// <param name="order"></param>
        private static void ArrivalVouchSource(ArrivalVouch objAVOrder, DataSet order)
        {
            #region Head
            objAVOrder.VT_ID             = Common.DB2Int(order.Tables["head"].Rows[0]["ivtid"]);
            objAVOrder.ID                = Common.DB2Int(order.Tables["head"].Rows[0]["id"]);
            objAVOrder.cCode             = Common.DB2String(order.Tables["head"].Rows[0]["ccode"]);
            objAVOrder.cPTCode           = Common.DB2String(order.Tables["head"].Rows[0]["cptcode"]);
            objAVOrder.dDate             = Common.DB2String(order.Tables["head"].Rows[0]["ddate"]);
            objAVOrder.cVenCode          = Common.DB2String(order.Tables["head"].Rows[0]["cvencode"]);
            objAVOrder.cDepCode          = Common.DB2String(order.Tables["head"].Rows[0]["cdepcode"]);
            objAVOrder.cPersonCode       = Common.DB2String(order.Tables["head"].Rows[0]["cpersoncode"]);
            objAVOrder.cPayCode          = Common.DB2String(order.Tables["head"].Rows[0]["cpaycode"]);
            objAVOrder.cSCCode           = Common.DB2String(order.Tables["head"].Rows[0]["csccode"]);
            objAVOrder.cExch_Name        = Common.DB2String(order.Tables["head"].Rows[0]["cexch_name"]);
            objAVOrder.iExchRate         = Common.DB2Decimal(order.Tables["head"].Rows[0]["iexchrate"]);
            objAVOrder.iTaxRate          = Common.DB2Decimal(order.Tables["head"].Rows[0]["itaxrate"]);
            objAVOrder.cMemo             = Common.DB2String(order.Tables["head"].Rows[0]["cmemo"]);
            objAVOrder.cBusType          = Common.DB2String(order.Tables["head"].Rows[0]["cbustype"]);
            objAVOrder.cMaker            = Common.DB2String(order.Tables["head"].Rows[0]["cmaker"]);
            objAVOrder.bNegative         = Common.DB2Int(order.Tables["head"].Rows[0]["bnegative"]);
            objAVOrder.Define1           = Common.DB2String(order.Tables["head"].Rows[0]["cdefine1"]);
            objAVOrder.Define2           = Common.DB2String(order.Tables["head"].Rows[0]["cdefine2"]);
            objAVOrder.Define3           = Common.DB2String(order.Tables["head"].Rows[0]["cdefine3"]);
            objAVOrder.Define4           = Common.DB2DateTime(order.Tables["head"].Rows[0]["cdefine4"]);
            objAVOrder.Define5           = Common.DB2Int(order.Tables["head"].Rows[0]["cdefine5"]);
            objAVOrder.Define6           = Common.DB2DateTime(order.Tables["head"].Rows[0]["cdefine6"]);
            objAVOrder.Define7           = Common.DB2Int(order.Tables["head"].Rows[0]["cdefine7"]);
            objAVOrder.Define8           = Common.DB2String(order.Tables["head"].Rows[0]["cdefine8"]);
            objAVOrder.Define9           = Common.DB2String(order.Tables["head"].Rows[0]["cdefine9"]);
            objAVOrder.Define10          = Common.DB2String(order.Tables["head"].Rows[0]["cdefine10"]);
            objAVOrder.Define11          = Common.DB2String(order.Tables["head"].Rows[0]["cdefine11"]);
            objAVOrder.Define12          = Common.DB2String(order.Tables["head"].Rows[0]["cdefine12"]);
            objAVOrder.Define13          = Common.DB2String(order.Tables["head"].Rows[0]["cdefine13"]);
            objAVOrder.Define14          = Common.DB2String(order.Tables["head"].Rows[0]["cdefine14"]);
            objAVOrder.Define15          = Common.DB2Int(order.Tables["head"].Rows[0]["cdefine15"]);
            objAVOrder.Define16          = Common.DB2Decimal(order.Tables["head"].Rows[0]["cdefine16"]);
            objAVOrder.cCloser           = Common.DB2String(order.Tables["head"].Rows[0]["ccloser"]);
            objAVOrder.iDiscountTaxType  = Common.DB2String(order.Tables["head"].Rows[0]["idiscounttaxtype"]);
            objAVOrder.iBillType         = Common.DB2String(order.Tables["head"].Rows[0]["ibilltype"]);
            objAVOrder.cVouchType        = Common.DB2String(order.Tables["head"].Rows[0]["cvouchtype"]);
            objAVOrder.cGeneralOrderCode = Common.DB2String(order.Tables["head"].Rows[0]["cgeneralordercode"]);
            objAVOrder.cTmCode           = Common.DB2String(order.Tables["head"].Rows[0]["ctmcode"]);
            objAVOrder.cIncotermCode     = Common.DB2String(order.Tables["head"].Rows[0]["cincotermcode"]);
            objAVOrder.cTransOrderCode   = Common.DB2String(order.Tables["head"].Rows[0]["ctransordercode"]);
            objAVOrder.dPortDate         = Common.DB2String(order.Tables["head"].Rows[0]["dportdate"]);
            objAVOrder.cSportCode        = Common.DB2String(order.Tables["head"].Rows[0]["csportcode"]);
            objAVOrder.cAportCode        = Common.DB2String(order.Tables["head"].Rows[0]["caportcode"]);
            objAVOrder.cSvenCode         = Common.DB2String(order.Tables["head"].Rows[0]["csvencode"]);
            objAVOrder.cArrivalPlace     = Common.DB2String(order.Tables["head"].Rows[0]["carrivalplace"]);
            objAVOrder.dCloseDate        = Common.DB2String(order.Tables["head"].Rows[0]["dclosedate"]);
            objAVOrder.iDec              = Common.DB2Int(order.Tables["head"].Rows[0]["idec"]);
            objAVOrder.bCal              = Common.DB2Bool(order.Tables["head"].Rows[0]["bcal"]);
            objAVOrder.Guid              = Common.DB2String(order.Tables["head"].Rows[0]["guid"]);
            objAVOrder.iVerifyState      = Common.DB2Int(order.Tables["head"].Rows[0]["iverifystate"]);
            objAVOrder.cAuditDate        = Common.DB2String(order.Tables["head"].Rows[0]["cauditdate"]);
            objAVOrder.cVerifier         = Common.DB2String(order.Tables["head"].Rows[0]["cverifier"]);
            objAVOrder.iVerifyStateex    = Common.DB2Int(order.Tables["head"].Rows[0]["iverifystateex"]);
            objAVOrder.iReturnCount      = Common.DB2Int(order.Tables["head"].Rows[0]["ireturncount"]);
            objAVOrder.isWfContRolled    = Common.DB2Bool(order.Tables["head"].Rows[0]["iswfcontrolled"]);
            objAVOrder.cVenPUOMProtocol  = Common.DB2String(order.Tables["head"].Rows[0]["cvenpuomprotocol"]);
            objAVOrder.cChanger          = Common.DB2String(order.Tables["head"].Rows[0]["cchanger"]);
            objAVOrder.iFlowId           = Common.DB2Int(order.Tables["head"].Rows[0]["iflowid"]);
            objAVOrder.cVenName          = Common.DB2String(order.Tables["head"].Rows[0]["cvenname"]);
            objAVOrder.cAddress          = Common.DB2String(order.Tables["head"].Rows[0]["caddress"]);
            objAVOrder.ufts              = Common.DB2String(order.Tables["head"].Rows[0]["ufts"]);

            #endregion
            #region Body
            objAVOrder.U8Details = new List <ArrivalVouchs>();

            foreach (DataRow dr in order.Tables["body"].Rows)
            {
                ArrivalVouchs objDetail = new ArrivalVouchs();
                ArrivalDetailRow(objDetail, dr, true);
                objAVOrder.U8Details.Add(objDetail);
            }

            #endregion
        }
コード例 #8
0
ファイル: EntityConvert.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 把数据行转换为ArrivalVouchs实体对象
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        public static ArrivalVouchs ConvertToArrivalVouchs(DataRow row)
        {
            ArrivalVouchs arrivalVouchs = new ArrivalVouchs();

            arrivalVouchs.ID     = Cast.ToInteger(row["poid"]); //采购订单主表ID
            arrivalVouchs.Autoid = Cast.ToInteger(row["id"]);   //采购订单子表ID

            //是否批次管理
            arrivalVouchs.bInvBatch = Cast.ToBoolean(row["bInvBatch"]);
            //是否保质期管理
            arrivalVouchs.bInvQuality = Cast.ToBoolean(row["bInvQuality"]);

            arrivalVouchs.cVenCode  = Cast.ToString(row["cvencode"]);
            arrivalVouchs.iExchRate = Cast.ToDecimal(row["iexchrate"]);
            //arrivalVouchs.ID = Cast.ToInteger(row["id"]);
            arrivalVouchs.bTaxCost     = Cast.ToBoolean(row["btaxcost"]);
            arrivalVouchs.cInvCode     = Cast.ToString(row["cinvcode"]);
            arrivalVouchs.cInvName     = Cast.ToString(row["cinvname"]);
            arrivalVouchs.cInvStd      = Cast.ToString(row["cinvstd"]);
            arrivalVouchs.cInvm_Unit   = Cast.ToString(row["cinvm_unit"]);
            arrivalVouchs.bGsp         = Cast.ToBoolean(row["bgsp"]);
            arrivalVouchs.iMassDate    = Cast.ToInteger(row["imassdate"]);
            arrivalVouchs.cMassUnit    = Cast.ToInteger(row["cmassunit"]);
            arrivalVouchs.Quantity     = Cast.ToDecimal(row["iquantity"]); //订单数量
            arrivalVouchs.iArrQty      = Cast.ToDecimal(row["iArrQty"]);   //到货数量
            arrivalVouchs.iNum         = Cast.ToDecimal(row["inum"]);
            arrivalVouchs.iInvexchRate = Cast.ToDecimal(row["iinvexchrate"]);

            arrivalVouchs.iunitprice = Cast.ToDecimal(row["iunitprice"]); //原币无税单价
            arrivalVouchs.iTaxPrice  = Cast.ToDecimal(row["iTaxPrice"]);  //原币含税单价
            arrivalVouchs.iTax       = Cast.ToDecimal(row["iTax"]);       //原币税额
            arrivalVouchs.iSum       = Cast.ToDecimal(row["isum"]);       //原币价税合计
            arrivalVouchs.iMoney     = Cast.ToDecimal(row["iMoney"]);     //原币无税金额

            arrivalVouchs.inatunitprice = Cast.ToDecimal(row["inatunitprice"]);
            arrivalVouchs.iVouchRowNo   = Cast.ToInteger(row["ivouchrowno"]);
            arrivalVouchs.inatmoney     = Cast.ToDecimal(row["inatmoney"]);
            arrivalVouchs.inattax       = Cast.ToDecimal(row["inattax"]);
            arrivalVouchs.inatsum       = Cast.ToDecimal(row["inatsum"]);

            arrivalVouchs.iTaxRate    = Cast.ToDecimal(row["itaxrate"]);
            arrivalVouchs.Free1       = Cast.ToString(row["cfree1"]);
            arrivalVouchs.Free2       = Cast.ToString(row["cfree2"]);
            arrivalVouchs.Free3       = Cast.ToString(row["cfree3"]);
            arrivalVouchs.Free4       = Cast.ToString(row["cfree4"]);
            arrivalVouchs.Free5       = Cast.ToString(row["cfree5"]);
            arrivalVouchs.Free6       = Cast.ToString(row["cfree6"]);
            arrivalVouchs.Free7       = Cast.ToString(row["cfree7"]);
            arrivalVouchs.Free8       = Cast.ToString(row["cfree8"]);
            arrivalVouchs.Free9       = Cast.ToString(row["cfree9"]);
            arrivalVouchs.Free10      = Cast.ToString(row["cfree10"]);
            arrivalVouchs.Define22    = Cast.ToString(row["cdefine22"]);//产地
            arrivalVouchs.Define23    = Cast.ToString(row["cdefine23"]);
            arrivalVouchs.Define24    = Cast.ToString(row["cdefine24"]);
            arrivalVouchs.Define25    = Cast.ToString(row["cdefine25"]);
            arrivalVouchs.Define26    = Cast.ToDecimal(row["cdefine26"]);
            arrivalVouchs.Define27    = Cast.ToDecimal(row["cdefine27"]);
            arrivalVouchs.Define28    = Cast.ToString(row["cdefine28"]);
            arrivalVouchs.Define29    = Cast.ToString(row["cdefine29"]);
            arrivalVouchs.Define30    = Cast.ToString(row["cdefine30"]);
            arrivalVouchs.Define31    = Cast.ToString(row["cdefine31"]);
            arrivalVouchs.Define32    = Cast.ToString(row["cdefine32"]);
            arrivalVouchs.Define33    = Cast.ToString(row["cdefine33"]);
            arrivalVouchs.Define34    = Cast.ToInteger(row["cdefine34"]);
            arrivalVouchs.Define35    = Cast.ToInteger(row["cdefine35"]);
            arrivalVouchs.Define36    = Cast.ToDateTime(row["cdefine36"]);
            arrivalVouchs.Define37    = Cast.ToDateTime(row["cdefine37"]);
            arrivalVouchs.cItem_class = Cast.ToString(row["citem_class"]);
            arrivalVouchs.cItemCode   = Cast.ToString(row["citemcode"]);
            arrivalVouchs.cItemName   = Cast.ToString(row["citemname"]);


            arrivalVouchs.cinvdefine1  = Cast.ToString(row["cinvdefine1"]);
            arrivalVouchs.cinvdefine2  = Cast.ToString(row["cinvdefine2"]);
            arrivalVouchs.cinvdefine3  = Cast.ToString(row["cinvdefine3"]);
            arrivalVouchs.cinvdefine4  = Cast.ToString(row["cinvdefine4"]);
            arrivalVouchs.cinvdefine5  = Cast.ToString(row["cinvdefine5"]);
            arrivalVouchs.cinvdefine6  = Cast.ToString(row["cinvdefine6"]);
            arrivalVouchs.cinvdefine7  = Cast.ToString(row["cinvdefine7"]);
            arrivalVouchs.cinvdefine8  = Cast.ToString(row["cinvdefine8"]);
            arrivalVouchs.cinvdefine9  = Cast.ToString(row["cinvdefine9"]);
            arrivalVouchs.cinvdefine10 = Cast.ToString(row["cinvdefine10"]);
            arrivalVouchs.cinvdefine11 = Cast.ToString(row["cinvdefine11"]);
            arrivalVouchs.cinvdefine12 = Cast.ToString(row["cinvdefine12"]);
            arrivalVouchs.cinvdefine13 = Cast.ToString(row["cinvdefine13"]);
            arrivalVouchs.cinvdefine14 = Cast.ToString(row["cinvdefine14"]);
            arrivalVouchs.cinvdefine15 = Cast.ToString(row["cinvdefine15"]);
            arrivalVouchs.cinvdefine16 = Cast.ToString(row["cinvdefine16"]);


            arrivalVouchs.ContractCode    = Cast.ToString(row["contractcode"]);
            arrivalVouchs.ContractRowNo   = Cast.ToString(row["contractrowno"]);
            arrivalVouchs.ContractRowGUID = Cast.ToString(row["contractrowguid"]);
            arrivalVouchs.cSoCode         = Cast.ToString(row["csocode"]);
            arrivalVouchs.SoType          = Cast.ToInteger(row["sotype"]);
            arrivalVouchs.SoDId           = Cast.ToString(row["sodid"]);
            arrivalVouchs.cWhCode         = Cast.ToString(row["cwhcode"]);
            arrivalVouchs.cWhName         = Cast.ToString(row["cwhname"]);
            arrivalVouchs.iInvMPCost      = Cast.ToDecimal(row["iinvmpcost"]);
            arrivalVouchs.cOrderCode      = Cast.ToString(row["cordercode"]);
            arrivalVouchs.dArriveDate     = Cast.ToString(row["darrivedate"]);
            arrivalVouchs.iOrderdId       = Cast.ToInteger(row["iorderdid"]);
            arrivalVouchs.iOrderType      = Cast.ToInteger(row["iordertype"]);
            arrivalVouchs.cSoOrderCode    = Cast.ToString(row["csoordercode"]);
            arrivalVouchs.iOrderSeq       = Cast.ToInteger(row["iorderseq"]);
            arrivalVouchs.cDemandMemo     = Cast.ToString(row["cdemandmemo"]);

            arrivalVouchs.iExpiratDateCalcu = Cast.ToInteger(row["iexpiratdatecalcu"]);
            //arrivalVouchs.cExpirationDate = Cast.ToString(row["cexpirationdate"]);
            //arrivalVouchs.dExpirationDate = Cast.ToDateTime(row["dexpirationdate"]);
            arrivalVouchs.iOrderRowNo = Cast.ToInteger(row["irowno"]);//订单行号

            //委外
            //arrivalVouchs.cMoDetailsID = Cast.ToString(row["modetailsID"]);
            return(arrivalVouchs);
        }
コード例 #9
0
ファイル: frmPurchaseArrival.cs プロジェクト: i-sync/dxt.app
 private void btnClear_Click(object sender, EventArgs e)
 {
     arrivalVouchs = null;
     BarCodeLooper();
 }
コード例 #10
0
ファイル: frmPurchaseArrival.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 录入数量回车
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtCount_KeyPress(object sender, KeyPressEventArgs e)
        {
            string strCount = txtCount.Text.Trim();

            if (e.KeyChar == (char)Keys.Enter && !string.IsNullOrEmpty(strCount))
            {
                //判断数量是否正确
                Decimal qty = (Decimal)Cast.ToDouble(strCount);
                if (qty <= 0)
                {
                    MessageBox.Show("请输入正确的数量!");
                    txtCount.Focus();
                    txtCount.SelectAll();
                    return;
                }
                //仓库
                Warehouse wh = cmbWarehouse.SelectedItem as Warehouse;
                if (wh == null || wh.cwhcode.Equals("-1"))
                {
                    MessageBox.Show("请选择仓库");
                    return;
                }

                String cBatch = txtBatch.Text.Trim();
                //在已操作数据中查找
                ArrivalVouchs avs = null;
                //判断是否有批次管理:如果没有批次
                if (arrivalVouchs.bInvBatch)
                {
                    if (string.IsNullOrEmpty(cBatch))
                    {
                        MessageBox.Show("请输入批次!");
                        txtBatch.Focus();
                        txtBatch.SelectAll();
                        return;
                    }
                    //按存货批次查询
                    avs = arrivalVouch.OperateDetails.Find(delegate(ArrivalVouchs temp) { return(temp.cInvCode.Equals(arrivalVouchs.cInvCode) && temp.cBatch.Equals(cBatch)); });
                }
                else
                {
                    //只按存货查询
                    avs = arrivalVouch.OperateDetails.Find(delegate(ArrivalVouchs temp) { return(temp.cInvCode.Equals(arrivalVouchs.cInvCode)); });
                }

                if (avs == null)//说明还没有扫描该存货
                {
                    avs = arrivalVouchs.getNewDetail();
                    //判断数量是否正确
                    if (avs.Quantity - avs.iArrQty - avs.iScanQuantity < qty)
                    {
                        MessageBox.Show("录入数量大于订单数量!");
                        txtCount.Focus();
                        txtCount.SelectAll();
                        return;
                    }
                    if (chkChinese.Checked)
                    {
                        avs.Define23 = dtpChineseDate.Value.ToString("yyyy-MM-dd");//中成药
                    }
                    //判断是否保质期管理
                    if (avs.bInvQuality)
                    {
                        avs.dPDate          = Cast.ToDateTime(dtpProDate.Value.ToShortDateString());              //生产日期
                        avs.dVDate          = Cast.ToDateTime(dtpValidDate.Value.AddDays(1).ToShortDateString()); //失败日期
                        avs.dExpirationDate = Cast.ToDateTime(dtpValidDate.Value.ToShortDateString());            //有效期计算项
                        avs.cExpirationDate = dtpValidDate.Value.ToString("yyyy-MM-dd");                          //有效期至
                    }

                    avs.cBatch  = cBatch;     //批次
                    avs.cWhCode = wh.cwhcode; //仓库

                    if (!btnDone.Enabled)
                    {
                        btnDone.Enabled = btnSubmit.Enabled = true;
                    }

                    //数量
                    avs.iScanQuantity            = qty; //扫描数量
                    arrivalVouchs.iScanQuantity += qty; //来源中的扫描数量
                    //是否质检
                    if (!avs.bGsp)
                    {
                        avs.fRealQuantity  = qty;
                        avs.fValidQuantity = qty;
                    }

                    avs.iMoney = avs.iunitprice * qty;                   //原币无税金额
                    avs.iTax   = (avs.iTaxPrice - avs.iunitprice) * qty; //原币税额
                    avs.iSum   = avs.iTaxPrice * qty;                    //原币价税合计

                    //添加到已操作
                    arrivalVouch.OperateDetails.Add(avs);
                }
                else
                {
                    //判断数量是否正确
                    if (avs.Quantity - avs.iArrQty - arrivalVouchs.iScanQuantity < qty)//可能分多个批次 所以 减去的是arrivalVouchs中的已扫数量
                    {
                        MessageBox.Show("录入数量大于订单数量!");
                        txtCount.Focus();
                        txtCount.SelectAll();
                        return;
                    }

                    //数量
                    avs.iScanQuantity           += qty;
                    arrivalVouchs.iScanQuantity += qty;
                    if (!avs.bGsp)
                    {
                        avs.fRealQuantity  += qty;
                        avs.fValidQuantity += qty;
                    }

                    avs.iMoney = avs.iunitprice * avs.iScanQuantity;                   //原币无税金额
                    avs.iTax   = (avs.iTaxPrice - avs.iunitprice) * avs.iScanQuantity; //原币税额
                    avs.iSum   = avs.iTaxPrice * avs.iScanQuantity;                    //原币价税合计
                }

                arrivalVouchs = null;
                //循环扫描条码
                BarCodeLooper();
            }
        }
コード例 #11
0
ファイル: frmPurchaseArrival.cs プロジェクト: i-sync/dxt.app
        /// <summary>
        /// 扫描条码
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtBarcode_KeyPress(object sender, KeyPressEventArgs e)
        {
            string strBarcode = txtBarcode.Text.Trim();

            if (e.KeyChar == (char)Keys.Enter && !string.IsNullOrEmpty(strBarcode))
            {
                try
                {
                    string[] barcode = new string[7] {
                        "", "", "", "", "", "", ""
                    };
                    string errMsg   = string.Empty;
                    string cInvCode = string.Empty;    //存货编码
                    bool   IsQR     = false;
                    if (strBarcode.IndexOf('@') == -1) //没有查到说明为一维条码
                    {
                        //根据一维条码查询存货编码
                        bool flag = Common.GetCInvCode(strBarcode, out cInvCode, out errMsg);
                        if (!flag)
                        {
                            MessageBox.Show("没有找到对应的存货编码!" + errMsg);
                            return;
                        }
                        barcode[2] = cInvCode;
                    }
                    else
                    {
                        barcode = strBarcode.Split('@');
                        IsQR    = true;
                        ///根据20121109日讨论结果:以69码为主,根据69码查询对应的存货编码
                        //根据一维条码查询存货编码
                        bool flag = Common.GetCInvCode(barcode[0], out cInvCode, out errMsg);
                        if (!flag)
                        {
                            MessageBox.Show("没有找到对应的存货编码!" + errMsg);
                            return;
                        }
                        barcode[2] = cInvCode;
                    }
                    //在来源单据中查找存货编号为cInvCode
                    arrivalVouchs = arrivalVouch.U8Details.Find(delegate(ArrivalVouchs avs) { return(avs.cInvCode.Equals(barcode[2])); });
                    if (arrivalVouchs == null)//没有找到对象,说明不是该单据中的存货
                    {
                        MessageBox.Show("条码错误:存货编码不在订单中");
                        txtBarcode.Focus();
                        txtBarcode.SelectAll();
                        return;
                    }
                    //显示存货基本信息
                    lblcInvName.Text   = arrivalVouchs.cInvName;
                    lblcInvStd.Text    = arrivalVouchs.cInvStd;
                    lblAddress.Text    = arrivalVouchs.Define22;                     //产地
                    chkChinese.Enabled = true;                                       //中成药可选
                    lblScanNum.Text    = arrivalVouchs.iScanQuantity.ToString("F2"); //已扫数量
                    //如果是二维则批次及生产日期、有效期不可修改
                    if (IsQR)
                    {
                        //dtpProDate.Enabled = dtpValidDate.Enabled = true;
                        dtpProDate.Text   = barcode[4];
                        dtpValidDate.Text = barcode[5];
                        txtBatch.Text     = barcode[3];

                        //到数量
                        txtCount.Enabled = true;
                        txtCount.Focus();
                    }
                    else
                    {
                        //是否保质期管理
                        dtpProDate.Enabled = dtpValidDate.Enabled = arrivalVouchs.bInvQuality;
                        dtpProDate.Value   = DateTime.Now;

                        //是否批次管理
                        txtBatch.Enabled = arrivalVouchs.bInvBatch;
                        txtCount.Enabled = !arrivalVouchs.bInvBatch;

                        //选择焦点
                        bool b = arrivalVouchs.bInvQuality ? dtpProDate.Focus() : arrivalVouchs.bInvBatch ? txtBatch.Focus() : txtCount.Focus();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                finally
                {
                    Cursor.Current = Cursors.Default;
                }
            }
        }