Exemple #1
0
        public string GetInsertSql(TransportSettlementDetail model)
        {
            StringBuilder strSql  = new StringBuilder();
            StringBuilder strSql1 = new StringBuilder();
            StringBuilder strSql2 = new StringBuilder();

            strSql1.Append("tsId,");
            strSql2.Append("@tsid,");

            if (model.tgicId != null)
            {
                strSql1.Append("tgicId,");
                strSql2.Append("" + model.tgicId + ",");
            }
            if (model.count != null)
            {
                strSql1.Append("count,");
                strSql2.Append("" + model.count + ",");
            }
            if (model.sum != null)
            {
                strSql1.Append("sum,");
                strSql2.Append("" + model.sum + ",");
            }
            if (model.inputDate != null)
            {
                strSql1.Append("inputDate,");
                strSql2.Append("getdate(),");
            }
            if (model.inputMan != null)
            {
                strSql1.Append("inputMan,");
                strSql2.Append("'" + model.inputMan + "',");
            }
            strSql.Append("insert into transportSettlementDetail(");
            strSql.Append(strSql1.ToString().Remove(strSql1.Length - 1));
            strSql.Append(")");
            strSql.Append(" values (");
            strSql.Append(strSql2.ToString().Remove(strSql2.Length - 1));
            strSql.Append(")");
            strSql.Append(";set @tsdid=@@IDENTITY;");

            return(strSql.ToString());
        }
Exemple #2
0
        public void saveCompute(TransportSettlement transportSettlement, DataGridView dgv_detail, DataGridView dgv_note, string userName)
        {
            ArrayList sqlList = new ArrayList();

            TransportSettlementDetail transportSettlementDetail = null;

            TransportNoteCorresponding transportNoteCorresponding = null;

            List <TransportNoteCorresponding> tnList = null;

            string nodeCode = null;

            int count = 0;

            decimal sum = 0;

            sqlList.Add(new TransportSettlementAction().GetInsertSql(transportSettlement));

            foreach (DataGridViewRow dgvr in dgv_detail.Rows)
            {
                if (dgvr.Cells["id"].Value != null)
                {
                    tnList = new List <TransportNoteCorresponding>();
                    transportSettlementDetail          = new TransportSettlementDetail();
                    transportSettlementDetail.tgicId   = long.Parse(dgvr.Cells["id"].Value.ToString());
                    transportSettlementDetail.inputMan = userName;
                    count = 0;
                    sum   = 0;
                    foreach (DataGridViewRow dgvrn in dgv_note.Rows)
                    {
                        if (dgvr.Cells["id"].Value.ToString() == dgvrn.Cells["did"].Value.ToString())
                        {
                            count += 1;
                            sum   += decimal.Parse(Math.Round(compute(dgvr.Cells["price"].Value.ToString(), dgvrn.Cells["suttle"].Value.ToString(), dgvr.Cells["distance"].Value.ToString(), dgvr.Cells["formula"].Value.ToString()), 2).ToString());
                            string code = dgvrn.Cells["barcode"].Value.ToString();
                            nodeCode += ",'" + code + "'";
                            transportNoteCorresponding          = new TransportNoteCorresponding();
                            transportNoteCorresponding.cnId     = transportDB.queryConsignmentNoteID(code);
                            transportNoteCorresponding.snId     = transportDB.queryStockNoteID(code);
                            transportNoteCorresponding.inputMan = userName;
                            tnList.Add(transportNoteCorresponding);
                        }
                    }
                    transportSettlementDetail.count = count;
                    transportSettlementDetail.sum   = sum;
                    if (count > 0)
                    {
                        sqlList.Add(new TransportSettlementDetailAction().GetInsertSql(transportSettlementDetail));
                        foreach (TransportNoteCorresponding tnc in tnList)
                        {
                            sqlList.Add(new TransportNoteCorrespondingAction().GetInsertSql(tnc));
                        }
                    }
                }
            }//运输明细循环
            if (nodeCode != null)
            {
                sqlList.Add(transportDB.getNodeSql(nodeCode));
            }
            transportDB.ExecuteTransaction(sqlList);
        }