Esempio n. 1
0
        private void SubmitCheck_toolStrip_Click(object sender, EventArgs e)
        {
            //对状态为审核被拒(即“状态=2”)的出库数据进行提交审核操作,更改状态为1即可。
            Dictionary <string, ObjItem> dr = this.dataGView1.getRowData();

            if (dr != null)
            {
                if (dr["状态"].ToString() == "2")
                {
                    if (WJs.confirm("您确定要将该条设备领用记录重新提交审核吗?"))
                    {
                        LData.Exe("UpdateLingYongStatus", null, new object[] { "1", DateTime.Now, His.his.Choscode.ToString(), dr["出库ID"].ToString() });
                        refresh_toolStrip_Click(null, null);
                    }
                }
                else
                {
                    WJs.alert("只能对处于审核被拒状态的设备领用记录进行提交审核操作");
                }
            }
            else
            {
                WJs.alert("请选择要提交审核的设备领用记录!");
            }
        }
Esempio n. 2
0
 private void del_toolStrip_Click(object sender, EventArgs e)
 {
     if (dataGView1.CurrentRow == null)
     {
         WJs.alert("请选择要删除的设备领用信息!");
     }
     if (isFlag == 2)
     {
         dataGView1.Rows.Remove(dataGView1.CurrentRow);
     }
     if (isFlag == 1)
     {
         if (dataGView1.CurrentRow.Cells["Liushuihao_Column"].Value.ToString() != "" && dataGView1.CurrentRow.Cells["Liushuihao_Column"].Value != null)
         {
             if (WJs.confirm("您确定要删除选中的设备领用信息?针对原始数据的删除时不可恢复的!"))
             {
                 if (LData.Exe("DeleteOutDetailInfoInEdit", null, new object[] { this.dataGView1.CurrentRow.Cells["Liushuihao_Column"].Value, His.his.Choscode }) == "")
                 {
                     WJs.alert("删除信息失败!");
                     return;
                 }
                 dataGView1.Rows.Remove(dataGView1.CurrentRow);
             }
         }
         else
         {
             dataGView1.Rows.Remove(dataGView1.CurrentRow);
         }
     }
     this.TotalMoney_textBox1.Text = this.dataGView1.Sum("金额").ToString();
 }
Esempio n. 3
0
        private void toolStripButton_submit_Click(object sender, EventArgs e) //提交
        {
            Dictionary <string, ObjItem> drX = dataGView2.getRowData();

            if (drX == null)
            {
                WJs.alert("请在细表中选择要提交的设备下账信息!");
                dataGView2.Focus();
                return;
            }
            else
            {
                if (drX["状态"].ToString() != "2")
                {
                    WJs.alert("只能对状态为审核被拒的下账信息进行提交!");
                    return;
                }
                else
                {
                    LData.Exe("UpdateStatus1_EQKeepAccountsManag", null, new object[] { drX["下账ID"].ToString(), His.his.Choscode });
                    WJs.alert("提交成功!");
                    refresh_toolStrip_Click(null, null);
                }
            }
        }
Esempio n. 4
0
        private void Del_toolStrip_Click(object sender, EventArgs e)//删除
        {
            Dictionary <string, ObjItem> drX = dataGView2.getRowData();

            if (drX == null)
            {
                WJs.alert("请在细表中选择要删除的设备保养信息!");
                dataGView2.Focus();
                return;
            }
            else
            {
                if (drX["状态"].ToString() == "0")
                {
                    WJs.alert("该设备保养信息已经为无效状态,无需删除!");
                    return;
                }
                else
                {
                    LData.Exe("UpdateStatus_EQKeepFitManag", null, new object[] { drX["保养ID"].ToString(), His.his.Choscode });
                    WJs.alert("删除成功!");
                    refresh_toolStrip_Click(null, null);
                }
            }
        }
Esempio n. 5
0
        private void Del_toolStrip_Click(object sender, EventArgs e)
        {
            //只能删除状态为1或2的领用数据 更改状态为0
            Dictionary <string, ObjItem> dr = this.dataGView1.getRowData();

            if (dr != null)
            {
                if (dr["状态"].ToString() == "1" || dr["状态"].ToString() == "2")
                {
                    if (WJs.confirm("你确定要将该条设备领用信息作废?"))
                    {
                        LData.Exe("UpdateLingYongStatus", null, new object[] { "0", DateTime.Now, His.his.Choscode.ToString(), dr["出库ID"].ToString() });
                        refresh_toolStrip_Click(null, null);
                    }
                }
                else
                {
                    WJs.alert("只能将状态为等待审核以及审核被拒的设备领用记录作废!");
                    return;
                }
            }
            else
            {
                WJs.alert("请选择要删除的设备领用记录!");
            }
        }
Esempio n. 6
0
        private void Del_toolStrip_Click(object sender, EventArgs e)
        {
            Dictionary <string, ObjItem> dr = this.dataGView2.getRowData();

            if (dr == null)
            {
                WJs.alert("请选择需要删除的设备使用信息!");
                return;
            }
            if (dr != null)
            {
                if (dr["状态"].ToString() == "1")
                {
                    if (WJs.confirm("您确认要删除该条设备使用信息吗?"))
                    {
                        LData.Exe("DeleteEQUseInfo_EQUseManag", null, new object[] { His.his.Choscode, dr["使用ID"].ToString() });
                        WJs.alert("删除成功!");
                        if (selTextInpt1.Text != "" && selTextInpt1.Value != "")
                        {
                            refresh_toolStrip_Click(null, null);
                        }
                    }
                }
                else
                {
                    WJs.alert("无效的设备使用信息无需删除!");
                }
            }
        }
Esempio n. 7
0
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            if (inware_id == null)
            {
                ActionLoad ld = ActionLoad.Conn();
                DataTable  tb = ld.Find("EQInMainDaYinQuery", new object[] { dr["入库ID"].ToString() });


                if (tb != null && tb.Rows.Count > 0)
                {
                    // setDefalutStock(tb.Rows[0], r);
                    string KuFangName              = LData.Exe("EQGetInWareName", "LKEQ", new object[] { His.his.Choscode, tb.Rows[0]["WARECODE"].ToString() });
                    string RuKuFangShi             = LData.Exe("EQGetInWareWayName", "LKEQ", new object[] { His.his.Choscode, tb.Rows[0]["IOID"].ToString() });
                    Dictionary <string, object> pp = new Dictionary <string, object>();
                    pp.Add("BiaoTi", tb.Rows[0][0].ToString() + "  【" + KuFangName + "】  " + "入库单");
                    pp.Add("FangXiang", "入库到  【" + KuFangName + "】");
                    pp.Add("Time", "时间:" + tb.Rows[0]["RECDATE"].ToString());
                    pp.Add("LeiBie", "类别:" + RuKuFangShi);
                    pp.Add("BianHao", "单据号:" + tb.Rows[0]["RECIPECODE"].ToString());
                    pp.Add("HeJi", "供应商:" + tb.Rows[0]["SUPPLYNAME"].ToString());
                    pp.Add("JinE1", tb.Rows[0]["TOTALMONEY"].ToString());
                    //  pp.Add("JinE2", tb.Rows[0]["LSTOTALMONEY"].ToString());
                    pp.Add("Name1", "操作员:" + tb.Rows[0]["USERNAME"].ToString());
                    pp.Add("Name2", "审核员:" + tb.Rows[0]["SHUSERNAME"].ToString());
                    pp.Add("Name3", "备注:" + tb.Rows[0]["MEMO"].ToString());
                    // pp.Add("Name4", "入库科室:" + tb.Rows[0]["DEPTNAME"].ToString());
                    pp.Add("ID", dr["入库ID"].ToString());
                    app.LoadPlug("RepEdit.RepView", new object[] { "CLEQRKDYCS001", pp, false }, false);
                }
            }
            else
            {
                MessageBox.Show("请先保存数据!");
            }
        }
Esempio n. 8
0
 //stockid, warecode, deptid, eqid, num, unitcode, memo, choscode
 //库存主表  针对每一条入库细表信息,分别做一次判断 EQID 8    这里的drZ仍是指出库主表
 private void AddEQStockMainInfo(ActionLoad ac, Dictionary <string, ObjItem> drX, Dictionary <string, ObjItem> drZ)
 {
     //SELECT STOCKID,NUM FROM LKEQ.EQSTOCK  WHERE EQID=? AND WARECODE=? AND CHOSCODE=?
     GetStockIdAndNum = LData.LoadDataTable("IfHaveExistInEQStock", null, new object[] { drX["设备ID"].ToString(), drZ["出库目的库房"].ToString(), His.his.Choscode });
     if (GetStockIdAndNum == null || GetStockIdAndNum.Rows.Count <= 0)
     {
         //不存在 需插入
         ifHaveExsit = false;
         ac.Add("STOCKID", "");                        //服务端生成
         ac.Add("WARECODE", drZ["出库目的库房"].ToString()); //入库主表的入库库房编码=出库主表的目的库房编码
         ac.Add("EQID", drX["设备ID"].ToString());
         ac.Add("DEPTID", TargetWareDeptid);
         ac.Add("CHOSCODE", His.his.Choscode);
         ac.Add("UNITCODE", drX["单位编码"].ToString());
         ac.Add("MEMO", "");
         ac.Add("NUM", drX["数量"].ToString());
         BeforeNum = 0;
     }
     else
     {
         //存在  需更新库存数目 []
         ifHaveExsit = true;
         BeforeNum   = Convert.ToInt32(GetStockIdAndNum.Rows[0][1].ToString());//出库目的库房的库存总表更新
         LData.Exe("UpdateEQStockNumForTarget", null, new object[] { Convert.ToInt32(drX["数量"].ToString()), drX["设备ID"].ToString(), drZ["出库目的库房"].ToString(), His.his.Choscode.ToString() });
     }
 }
Esempio n. 9
0
        private void Submited_toolStrip_Click(object sender, EventArgs e)
        {
            Dictionary <string, ObjItem> drX = dataGView2.getRowData();
            Dictionary <string, ObjItem> drZ = dataGView1.getRowData();

            if (drX == null)
            {
                WJs.alert("请选择要审核的设备变动数据!");
                dataGView2.Focus();
                return;
            }

            if (drX["状态"].ToString() == "1")
            {
                DialogResult DialResult = MessageBox.Show("该条设备变动数据经过您的审核,是否通过?", "信息提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning);
                if (DialResult == DialogResult.Yes)
                {
                    //等待审核
                    //UPDATE LKEQ.EQCARDREC SET DEPTID=?  ,BGPEOPLE=?  WHERE CHOSCODE=? AND CARDID=?
                    //UPDATE LKEQ.EQCARDREC SET YPRICE=?  WHERE CHOSCODE=? AND CARDID=?
                    //UPDATE LKEQ.EQCARDREC SET STATUSCODE=?  WHERE CHOSCODE=? AND CARDID=?
                    if (drX["变动类型"].ToString() == "1")
                    {
                        LData.Exe("UpdateInfoForDPBG_EQChangeManag", null, new object[] { drX["现使用科室ID"].ToString(), drX["现保管员"].ToString(), His.his.Choscode, drX["卡片ID"].ToString() });
                    }
                    if (drX["变动类型"].ToString() == "2")
                    {
                        LData.Exe("UpdateInfoForYPrice_EQChangeManag", null, new object[] { drX["调整后原值"].ToString(), His.his.Choscode, drX["卡片ID"].ToString() });
                    }
                    if (drX["变动类型"].ToString() == "3")
                    {
                        LData.Exe("UpdateInfoForStatusCode_EQChangeManag", null, new object[] { drX["新使用状态编码"].ToString(), His.his.Choscode, drX["卡片ID"].ToString() });
                    }
                    //UPDATE LKEQ.EQCARDCHANGEREC SET STATUS=6,SHUSERID=?,SHUSERNAME=?,SHDATE=? WHERE CHANGEID=? AND CHOSCODE=?
                    LData.Exe("UpdateStatusForSH_EQChangeManag", null, new object[] { "6", His.his.UserId.ToString(), His.his.UserName, DateTime.Now, drX["变动ID"].ToString(), His.his.Choscode });
                    WJs.alert("审核成功!");
                    refresh_toolStrip_Click(null, null);
                }
                else if (DialResult == DialogResult.No)
                {
                    LData.Exe("UpdateStatusForSH_EQChangeManag", null, new object[] { "2", "", "", "", drX["变动ID"].ToString(), His.his.Choscode });
                    WJs.alert("已设置为审核被拒!");
                }
                else
                {
                    return;
                }
            }
            else
            {
                WJs.alert("只能对等待审核的设备变动数据进行审核处理!");
                return;
            }
        }
Esempio n. 10
0
        private void QiYong_toolStrip_Click(object sender, EventArgs e)
        {
            Dictionary <string, ObjItem> dr = this.dataGView1.getRowData();

            if (dr == null || dr.Count == 0)
            {
                WJs.alert("请选择需要启用的设备卡片记录!");
                return;
            }
            if (dr["状态"].ToString() == "1")
            {
                if (WJs.confirm("您确定要启用该条设备卡片记录么?"))
                {
                    LData.Exe("UpdateCardInfoStatus", null, new object[] { "2", His.his.UserName, DateTime.Now, dr["卡片ID"].ToString(), His.his.Choscode.ToString() });
                    WJs.alert("执行成功!");
                    refresh_toolStrip_Click(null, null);
                }
            }
            else
            {
                WJs.alert("只能启用状态为未启用的设备卡片记录!");
            }
        }
Esempio n. 11
0
        private void Del_toolStrip_Click(object sender, EventArgs e)
        {
            Dictionary <string, ObjItem> drX = dataGView2.getRowData();

            if (drX == null)
            {
                WJs.alert("请选择要删除的设备变动数据!");
                dataGView2.Focus();
                return;
            }
            if (drX["状态"].ToString() == "1" || drX["状态"].ToString() == "2")
            {
                //UPDATE LKEQ.EQCARDCHANGEREC SET STATUS=1 WHERE CHANGEID=1 AND CHOSCODE=01050303
                LData.Exe("UpdateStatusInfo_EQChangeManag", null, new object[] { "0", drX["变动ID"].ToString(), His.his.Choscode });
                WJs.alert("删除成功!");
                refresh_toolStrip_Click(null, null);
            }
            else
            {
                WJs.alert("只能删除状态为等待审核与审核被拒的设备变动数据!");
                return;
            }
        }
Esempio n. 12
0
        private void del_toolStrip_Click(object sender, EventArgs e)
        {
            Dictionary <string, ObjItem> dr = this.dataGView1.getRowData();

            if (dr != null)
            {
                if (isFlag == 1)
                {
                    if (dr["流水号"].IsNull == false && dr["流水号"].ToString() != "")
                    {
                        if (WJs.confirm("你确定要删除选中的设备调拨信息,针对原始数据的删除时不可恢复的!"))
                        {
                            if (LData.Exe("DeleteOutDetailInfoInEdit", null, new object[] { dr["流水号"].ToString(), His.his.Choscode }) == "")
                            {
                                WJs.alert("删除信息失败!");
                                return;
                            }
                            this.dataGView1.Rows.Remove(this.dataGView1.CurrentRow);
                        }
                    }
                    else
                    {
                        this.dataGView1.Rows.Remove(this.dataGView1.CurrentRow);
                    }
                }
                else
                {
                    this.dataGView1.Rows.Remove(this.dataGView1.CurrentRow);
                }
                this.TotalMoney_textBox1.Text = this.dataGView1.Sum("金额").ToString();
            }
            else
            {
                WJs.alert("请选择要删除的设备调拨信息!");
            }
        }
Esempio n. 13
0
        private void ShenHeGuoCheng(Dictionary <string, ObjItem> dr, List <Dictionary <string, ObjItem> > XiList)
        {
            //1.1 入库主表的操作
            ActionLoad acZRK = ActionLoad.Conn();

            acZRK.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
            acZRK.Sql    = "InsertInMain";
            AddRuKuZhuBiaoInfo(acZRK, dr);
            acZRK.Add("OUTID", dr["出库ID"].ToString());//专为更新对应的INID
            acZRK.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
            acZRK.Post();
            if (!isOk)
            {
                return;
            }

            //1.2 更新出库库房的相同设备各自数目  [库存主表]
            //select EQID, sum(Num) AS 数量 from lkeq.eqoutdetail  where outid=? and CHOSCODE=?  group by eqid    UPDATE LKEQ.EQSTOCK SET (NUM=NUM- ?) WHERE CHOSCODE=? AND WARECODE=? AND EQID=?
            //ActionLoad acDTNumForEQStock = ActionLoad.Conn();
            //DataTable DTNumForEQStock = acDTNumForEQStock.Find("GetStockNumInOutDetail", null, new object[] { dr["出库ID"].ToString(), His.his.Choscode });

            DataTable DTNumForEQStock = LData.LoadDataTable("GetStockNumInOutDetail", null, new object[] { dr["出库ID"].ToString(), His.his.Choscode });

            if (DTNumForEQStock != null)
            {
                foreach (DataRow itemRow in DTNumForEQStock.Rows)
                {
                    LData.Exe("UpdateStockNumInLingYong", null, new object[] { Convert.ToInt32(itemRow["数量"].ToString()), His.his.Choscode, dr["出库库房"].ToString(), itemRow["EQID"].ToString() });
                }
            }


            //就是主表某条信息  [出库数据] 对应细表的全部数据
            foreach (Dictionary <string, ObjItem> drXi in XiList)
            {
                if (LData.LoadDataTable("StockDetailSearchByLiuShuiHao", new object[] { drXi["库存流水号"].ToString(), His.his.Choscode.ToString() }) == null)
                {
                    continue;
                }
                //1更新出库库房数据[针对每条流水必须都更新]  UPDATE LKEQ.EQSTOCKDETAIL SET OUTNUM=(OUTNUM+?) WHERE FLOWNO=? AND CHOSCODE=?
                LData.Exe("UpdateEQStockDetailNum", null, new object[] { Convert.ToInt32(drXi["数量"].ToString()), drXi["库存流水号"].ToString(), His.his.Choscode });

                //2 先入库细表  1条[对应会生成一条库存流水]
                ActionLoad acXRK = ActionLoad.Conn();
                acXRK.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
                acXRK.Sql    = "InsertEQInDetail";
                AddRuKuXiBiaoInfo(acXRK, drXi);
                acXRK.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                acXRK.Post();
                if (!isOk)
                {
                    return;
                }

                //3 库存主表  [更新出库目的库房]   由于不存在目的库房,所以无需更新目的库房
                ActionLoad acKCZ = ActionLoad.Conn();
                acKCZ.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
                acKCZ.Sql    = "InsertStockMain";
                AddEQStockMainInfo(acKCZ, drXi, dr);
                if (!ifHaveExsit)  //不存在才需插入,存在则已经更新完毕
                {
                    acKCZ.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                    acKCZ.Post();
                }
                if (!isOk)
                {
                    return;
                }

                //4   库存流水表
                ActionLoad acKCX = ActionLoad.Conn();
                acKCX.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
                acKCX.Sql    = "InsertStockDetail";
                AddEQStockDetailInfo(acKCX, drXi, dr);
                acKCX.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                acKCX.Post();
                if (!isOk)
                {
                    return;
                }
            }
            if (isOk)
            {
                WJs.alert("设备调拨信息审核成功!");
                refresh_toolStrip_Click(null, null);
            }
        }
Esempio n. 14
0
        private void Del_toolStrip_Click(object sender, EventArgs e)
        {
            Dictionary <string, ObjItem> dr = dataGView1.getRowData();

            if (dr != null)
            {
                if (dr["状态"].ToString() == "1")
                {
                    //更新对应的卡片表内信息
                    //SELECT CARDID,TOTALZJ,MONTHZJ,TOTALEDWORK,MONTHWORK FROM LKEQ.EQCARDDEPREDETAILREC WHERE CHOSCODE=? AND DEPREID=?
                    //UPDATE LKEQ.EQCARDREC SET TOTALZJ=TOTALZJ - ?,TOTALEDWORK=TOTALEDWORK - ? WHERE CARDID=? AND CHOSCODE=?
                    DataTable DetailTable = LData.LoadDataTable("FindAllDetailInfoForUpdateData_EQDepreManag", null, new object[] { His.his.Choscode, dr["折旧ID"].ToString() });
                    if (DetailTable != null && DetailTable.Rows.Count > 0)
                    {
                        foreach (DataRow item in DetailTable.Rows)
                        {
                            //就每一条卡片数据进行判断更新
                            DataTable ZJWorkdt = GetZJWork_EQDepre(item["CARDID"].ToString());
                            if (ZJWorkdt != null)
                            {
                                DataRow ZJWorkdr = ZJWorkdt.Rows[0];
                                double  Result;
                                //如果原本为Null,转换失败,则设置为0,否则肯定直接转换成功
                                if (!double.TryParse(ZJWorkdr["TOTALZJ"].ToString(), out Result))
                                {
                                    ZJWorkdr["TOTALZJ"] = "0.00";
                                }
                                if (!double.TryParse(ZJWorkdr["TOTALEDWORK"].ToString(), out Result))
                                {
                                    ZJWorkdr["TOTALEDWORK"] = "0.00";
                                }
                                if (Convert.ToDouble(ZJWorkdr["TOTALZJ"]) < Convert.ToDouble(item["MONTHZJ"]))
                                {
                                    WJs.alert("卡片" + ZJWorkdr["CARDID"].ToString() + ":累计折旧小于本月折旧,无法删除,否则出现折旧为负数!");
                                    return;
                                }
                                if (Convert.ToDouble(ZJWorkdr["TOTALEDWORK"]) < Convert.ToDouble(item["MONTHWORK"]))
                                {
                                    WJs.alert("卡片" + ZJWorkdr["CARDID"].ToString() + ":累计工作量小于本月工作量,无法删除,否则出现工作量为负数!");
                                    return;
                                }
                                LData.Exe("UpdateNumForDeleNotNull_EQDepreManag", null, new object[] { Convert.ToDouble(item["MONTHZJ"]), Convert.ToDouble(item["MONTHWORK"]), item["CARDID"].ToString(), His.his.Choscode });
                            }
                        }
                    }
                    else
                    {
                        WJs.alert("该条折旧信息无细表数据,无法删除!");
                        return;
                    }
                    //设为无效
                    LData.Exe("UpdateStatusInfo_EQDepreciationManag", null, new object[] { "0", dr["折旧ID"].ToString(), His.his.Choscode });
                    WJs.alert("删除成功!");
                    refresh_toolStrip_Click(null, null);
                }
                else
                {
                    WJs.alert("已经无效的数据无需删除!");
                }
            }
            else
            {
                WJs.alert("请选择需要删除的设备折旧信息!");
                return;
            }
        }
Esempio n. 15
0
        private void HuiFu_toolStrip_Click(object sender, EventArgs e)
        {
            //主要是将数据返回回去即可
            this.dataGView1.IsAutoAddRow = false;
            List <Dictionary <string, ObjItem> > drList = this.dataGView1.GetData();

            if (drList == null || drList.Count <= 0)
            {
                WJs.alert("该月结单细表内无数据,无需恢复!");
                return;
            }
            foreach (Dictionary <string, ObjItem> item in drList)
            {
                if (item["启用日期"].IsNull == true)//尚未启用
                {
                    continue;
                }
                else
                {
                    //启用日期不为null  且为本月的
                    if (item["启用日期"].ToDateTime().CompareTo(drZ["开始日期"].ToDateTime()) > 0 && item["启用日期"].ToDateTime().CompareTo(drZ["结束日期"].ToDateTime()) < 0)
                    {
                        continue;
                    }
                    if (item["启用日期"].ToDateTime().CompareTo(drZ["结束日期"].ToDateTime()) > 0)
                    {
                        continue;
                    }
                }

                if (item["报废日期"].IsNull == false)//报废日期不为空
                {
                    //报废日期不为空  当报废日期小于本月开始日期就无需恢复 [不为本月报废]
                    if (item["报废日期"].ToDateTime().CompareTo(drZ["开始日期"].ToDateTime()) < 0)
                    {
                        continue;
                    }
                }
                //获取卡片ID内实时的数据
                DataTable dt = GetZJWork_EQDepre(item["卡片ID"].ToString());
                if (dt != null)
                {
                    DataRow drR = dt.Rows[0];
                    double  Result;
                    //如果原本为Null,转换失败,则设置为0,否则肯定直接转换成功
                    if (!double.TryParse(drR["TOTALZJ"].ToString(), out Result))
                    {
                        drR["TOTALZJ"] = "0.00";
                    }

                    if (!double.TryParse(drR["TOTALEDWORK"].ToString(), out Result))
                    {
                        drR["TOTALEDWORK"] = "0.00";
                    }
                    //这样就避免了,当为Null的时候,去更新出错,直接小于就return掉了
                    if (Convert.ToDouble(drR["TOTALZJ"].ToString()) < (item["本月折旧"].ToDouble()))
                    {
                        WJs.alert("无法进行月结:卡片" + item["卡片ID"].ToString() + "累计折旧小于本月折旧,无法删除,否则更新时出现折旧为负数!");
                        return;
                    }
                    if (Convert.ToDouble(drR["TOTALEDWORK"].ToString()) < (item["本月工作量"]).ToDouble())
                    {
                        WJs.alert("无法进行月结:累计工作量小于本月工作量,无法删除,否则更新时出现工作量为负数!");
                        return;
                    }
                    LData.Exe("UpdateNumForDeleNotNull_EQDepreManag", null, new object[] { item["本月折旧"].ToDouble(), item["本月工作量"].ToDouble(), item["卡片ID"].ToString(), His.his.Choscode });
                    isOk2 = true;
                }
                else
                {
                    //这里只要有一个为空,就会进行不下去,难道出现负数?
                    WJs.alert("不存在卡片" + item["卡片ID"].ToString() + "的数据,请查看建卡界面!");
                    return;
                }
            }
            //设置为无效
            LData.Exe("UpdateStatusInfo_EQDepreciationManag", null, new object[] { "0", drX["折旧ID"].ToString(), His.his.Choscode });
            WJs.alert("恢复成功,即将关闭本窗口……");
            this.Close();
        }
Esempio n. 16
0
        private void EQIn_Add_Load(object sender, EventArgs e)//加载窗体
        {
            this.WindowState = FormWindowState.Maximized;
            str2             = LData.Es("EQSystemValue_2204", null, new object[] { His.his.Choscode });
            str1             = LData.Es("EQSystemValue_2203", null, new object[] { His.his.Choscode });

            this.toolStripButton_Pass.Visible = false;
            this.toolStripButton_Down.Visible = false;
            if (isAdd == 1)
            {
                this.InWare_selTextInpt.Text    = inware_name;
                this.InWare_selTextInpt.Value   = inware_id;
                this.InWare_selTextInpt.Enabled = false;
            }
            this.InWay_selTextInpt.Sql      = "EQGetOutWareWay";
            this.InWay_selTextInpt.SelParam = His.his.Choscode + "|{key}|{key}|{key}|{key}";



            this.dataGView1.Url = "EQOutDetailSearch";

            this.dataGView1.addSql("GetOutEQ_StockFlow", "库存流水号", "", His.his.Choscode + "|" + "|{key}|{key}|{key}|{key}");

            TvList.newBind().SetCacheKey("XmDw1").Load("EQIn_DanWeiBianMa", null).Bind(this.Column3);


            if (isAdd != 1)
            {
                this.InWay_selTextInpt.Text   = LData.Exe("EQGetOutWareWayName", null, new object[] { His.his.Choscode, dr["出库方式ID"].ToString() });
                this.InWare_selTextInpt.Text  = LData.Exe("EQGetOutWareName", null, new object[] { His.his.Choscode, dr["出库库房编码"].ToString() });
                this.InWay_selTextInpt.Value  = dr["出库方式ID"].ToString();
                this.InWare_selTextInpt.Value = dr["出库库房编码"].ToString();

                inware_id   = dr["出库库房编码"].ToString();
                inware_name = dr["出库库房编码_Text"].ToString();
                this.InWare_selTextInpt.Enabled = false;


                this.totalmoney_yTextBox.Text = dr["总金额"].ToString();

                this.dateTimePicker2.Value = dr["制单日期"].ToDateTime();
                this.dataGView1.reLoad(new object[] { dr["出库ID"].ToString(), His.his.Choscode });

                if (isAdd == 2)
                {
                    for (int i = 0; i < this.dataGView1.RowCount; i++)
                    {
                        dataGView1.addSql("GetOutEQ_StockFlow", "库存流水号", "", this.dataGView1.Rows[i].Cells[eqid.Index].Value.ToString() +
                                          "|" + this.inware_id + "|" + His.his.Choscode);
                        if (this.dataGView1.Rows[i].Cells[yzf.Index].Value.ToString().Trim() != "" && this.dataGView1.Rows[i].Cells[num.Index].Value.ToString() != "0")
                        {
                            this.dataGView1.Rows[i].Cells[Column5.Index].Value = decimal.Parse(this.dataGView1.Rows[i].Cells[yzf.Index].Value.ToString()) / decimal.Parse(this.dataGView1.Rows[i].Cells[num.Index].Value.ToString());
                        }
                        // this.dataGView1.Rows[i].Cells[Column9.Index].Value = LData.Es("GetOutEQ_StockNum", null, new object[] { this.dataGView1.Rows[i].Cells[eqid.Index].Value.ToString(), inware_id, His.his.Choscode });
                    }
                }
                for (int i = 0; i < this.dataGView1.RowCount; i++)
                {
                    this.dataGView1.Rows[i].Cells[Column9.Index].Value = LData.Es("GetOutEQ_StockNum", null, new object[] { this.dataGView1.Rows[i].Cells[eqid.Index].Value.ToString(), inware_id, His.his.Choscode });
                }
                this.memo_yTextBox.Text = dr["备注"].ToString();
                this.dataGView1.Columns[eq.Index].ReadOnly = true;

                this.cancel_toolStripButton.Enabled = false;
                if (isAdd == 3)
                {
                    this.toolStrip1.Enabled             = true;
                    this.add_toolStripButton.Visible    = false;
                    this.save_toolStripButton.Visible   = false;
                    this.DeleButton.Visible             = false;
                    this.cancel_toolStripButton.Visible = false;
                    this.toolStripButton_Pass.Visible   = false;
                    this.toolStripButton_Down.Visible   = false;
                    this.dataGView1.ReadOnly            = true;
                    this.InWare_selTextInpt.Enabled     = false;
                    this.InWay_selTextInpt.Enabled      = false;
                    this.dateTimePicker2.Enabled        = false;
                    this.memo_yTextBox.ReadOnly         = true;
                }
                if (isAdd == 4)
                {
                    this.toolStrip1.Enabled          = true;
                    this.add_toolStripButton.Visible = false;

                    this.save_toolStripButton.Visible   = false;
                    this.DeleButton.Visible             = false;
                    this.cancel_toolStripButton.Visible = false;
                    this.toolStripButton_Pass.Visible   = true;
                    this.toolStripButton_Down.Visible   = true;
                    this.dataGView1.ReadOnly            = true;
                    this.InWare_selTextInpt.Enabled     = false;
                    this.InWay_selTextInpt.Enabled      = false;
                    this.dateTimePicker2.Enabled        = false;
                    this.memo_yTextBox.ReadOnly         = true;
                }



                this.dataGView1.CellValueChanged += new DataGridViewCellEventHandler(dataGView1_CellValueChanged);
                //BindUnit();
            }


            dataGView1.RowToXml += new RowToXmlHandle(dataGView1_RowToXml);
        }
Esempio n. 17
0
        private void ChongXiaoCaoZuo(Dictionary <string, ObjItem> drZ, List <Dictionary <string, ObjItem> > drXList)
        {
            //6个表的数据需要进行更新
            //我的意思是: 主表首先直接冲销  然后循环细表进行冲销
            //出库主表里面的INID 找到 入库主表信息  读取完了之后 修改重新插入冲销数据
            //由对应的INID 找到 对应的入库细表数据  读取完了之后 修改重新插入冲销数据

            //1.1,生成对应的出库主表  状态为7
            ActionLoad acCXZCK = ActionLoad.Conn();

            acCXZCK.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
            acCXZCK.Sql    = "ChongXiaoZhuChuKu";
            ChongXiaoCKZhuBiao(acCXZCK, drZ);
            acCXZCK.ServiceLoad += new YtClient.data.events.LoadEventHandle(acCX_ServiceLoad);
            acCXZCK.Post();
            if (!isOK2)
            {
                return;
            }

            //1.2  //将库存主表内的数目还原更新   出库库房的数目加回来
            //select EQID, sum(Num) AS 数量 from lkeq.eqoutdetail  where outid=? and CHOSCODE=?  group by eqid
            //UPDATE LKEQ.EQSTOCK SET NUM=NUM- ? WHERE CHOSCODE=? AND WARECODE=? AND EQID=?

            DataTable DTNumForEQStock = LData.LoadDataTable("GetStockNumInOutDetail", null, new object[] { drZ["出库ID"].ToString(), His.his.Choscode });

            if (DTNumForEQStock != null && DTNumForEQStock.Rows.Count != 0)
            {
                foreach (DataRow itemRow in DTNumForEQStock.Rows)
                {
                    LData.Exe("UpdateStockNumInLingYong", null, new object[] { Convert.ToInt32(itemRow["数量"].ToString()) * (-1), His.his.Choscode, drZ["出库库房"].ToString(), itemRow["EQID"].ToString() });
                }
            }

            foreach (Dictionary <string, ObjItem> drXiBiao in drXList)
            {
                //  出库细表  ac冲销细出库
                if (drXiBiao["出库ID"].IsNull == true || drXiBiao["出库ID"].ToString() == "")
                {
                    continue;
                }
                if (LData.LoadDataTable("StockDetailSearchByLiuShuiHao", new object[] { drXiBiao["库存流水号"].ToString(), His.his.Choscode.ToString() }) == null)
                {
                    continue;
                }
                //2.1更新出库库房数据[针对每条流水必须都更新]    UPDATE LKEQ.EQSTOCKDETAIL SET OUTNUM=(OUTNUM+?) WHERE FLOWNO=? AND CHOSCODE=?  流水表内的出库数目减回来
                LData.Exe("UpdateEQStockDetailNum", null, new object[] { Convert.ToInt32(drXiBiao["数量"].ToString()) * (-1), drXiBiao["库存流水号"].ToString(), His.his.Choscode });

                //2.2
                ActionLoad acCXXCK = ActionLoad.Conn();
                acCXXCK.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
                acCXXCK.Sql    = "ChongXiaoXiChuKu";
                ChongXiaoCKXiBiao(acCXXCK, drXiBiao);
                acCXXCK.ServiceLoad += new YtClient.data.events.LoadEventHandle(acCX_ServiceLoad);
                acCXXCK.Post();
            }
            if (!isOK2)
            {
                return;
            }

            //2.1  入库主表  状态为7
            ActionLoad acCXZRK = ActionLoad.Conn();

            acCXZRK.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
            acCXZRK.Sql    = "ChongXiaoZhuRuKu";

            //由原始INID 获取对应的 入库主表和细表的内容   根据这些内容生成冲销操作所需要的数据【前面已经验证了INID的存在】
            DataTable dt = LData.LoadDataTable("FindINMainInfo", null, new object[] { His.his.Choscode.ToString(), drZ["对应入库ID"].ToString() });

            if (dt != null && dt.Rows.Count > 0)
            {
                DataRow dr = dt.Rows[0];//要冲销的调拨数据对应的入库主表信息
                ChongXiaoRKZhuBiao(acCXZRK, dr);
                acCXZRK.ServiceLoad += new YtClient.data.events.LoadEventHandle(acCX_ServiceLoad);
                acCXZRK.Post();
            }
            else
            {
                WJs.alert("没有对应的入库主表信息出错,冲销操作被终止!");
                isOK2 = false;
                return;
            }
            if (!isOK2)
            {
                return;
            }

            //2.2  //将库存主表内的数目还原更新  细表内   出库目的科室的数目减回来
            //select EQID, sum(Num) AS 数量 from lkeq.eqindetail  where inid=? and CHOSCODE=?  group by eqid
            //UPDATE LKEQ.EQSTOCK SET NUM=(NUM+?) WHERE EQID=? AND WARECODE IS NULL AND DEPTID=? AND CHOSCODE=?
            DataTable DTNumForEQStockCX = LData.LoadDataTable("GetStockNumInInDetail", null, new object[] { drZ["对应入库ID"].ToString(), His.his.Choscode });

            if (DTNumForEQStockCX != null)
            {
                foreach (DataRow itemRow in DTNumForEQStockCX.Rows)
                {
                    LData.Exe("UpdateEQStockNumForTarget_LingYong", null, new object[] { Convert.ToInt32(itemRow["数量"].ToString()) * (-1), itemRow["EQID"].ToString(), drZ["出库目的科室ID"].ToString(), His.his.Choscode });
                }
            }

            //2.3   入库细表
            DataTable dtDetail = LData.LoadDataTable("FindInDetailInfo", null, new object[] { His.his.Choscode.ToString(), drZ["对应入库ID"].ToString() });

            if (dtDetail != null && dtDetail.Rows.Count > 0)
            {
                foreach (DataRow dr in dtDetail.Rows)
                {
                    ActionLoad acCXXRK = ActionLoad.Conn();
                    acCXXRK.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
                    acCXXRK.Sql    = "ChongXiaoXiRuKu";
                    ChongXiaoRKXiBiao(acCXXRK, dr);
                    acCXXRK.ServiceLoad += new YtClient.data.events.LoadEventHandle(acCX_ServiceLoad);
                    acCXXRK.Post();
                    //2.1  更新对应的目的库房[入库流水每条流水必须都更新]   UPDATE LKEQ.EQSTOCKDETAIL SET NUM=(NUM+?) WHERE FLOWNO=? AND CHOSCODE=?  流水表内的入库数目没有那么多,减回来
                    LData.Exe("UpdateStockNumInLingYongForCX", null, new object[] { Convert.ToInt32(dr["NUM"]) * (-1), dr["STOCKFLOWNO"].ToString(), His.his.Choscode });
                }
            }
            if (!isOK2)
            {
                return;
            }
        }
Esempio n. 18
0
        private void EQIn_Add_Load(object sender, EventArgs e)//加载窗体
        {
            this.WindowState = FormWindowState.Maximized;
            str2             = LData.Es("EQSystemValue_2204", null, new object[] { His.his.Choscode });
            str1             = LData.Es("EQSystemValue_2203", null, new object[] { His.his.Choscode });

            this.toolStripButton_Pass.Visible = false;
            this.toolStripButton_Down.Visible = false;
            if (isAdd == 1)
            {
                this.InWare_selTextInpt.Text    = inware_name;
                this.InWare_selTextInpt.Value   = inware_id;
                this.InWare_selTextInpt.Enabled = false;
            }
            this.InWay_selTextInpt.Sql      = "EQGetInWareWay";
            this.InWay_selTextInpt.SelParam = His.his.Choscode + "|{key}|{key}|{key}|{key}";

            this.gys_selTextInpt.Sql      = "EQGetGYS";
            this.gys_selTextInpt.SelParam = "{key}|{key}|{key}|{key}";
            this.dataGView1.Url           = "EQInDetailSearch";
            //TvList.newBind().SetCacheKey("XmDw").Load("EQGetSupply", new object[] { His.his.Choscode }).Bind(this.supply);
            this.dataGView1.addSql("EQGetSupply", "生产厂家", "", His.his.Choscode + "|" + "|{key}|{key}|{key}|{key}");

            TvList.newBind().SetCacheKey("XmDw1").Load("EQIn_DanWeiBianMa", null).Bind(this.Column3);


            //dwList = TvList.newBind().SetCacheKey("XmDw").Load("GetWZUnit2", new object[] { His.his.Choscode });
            //dwList.Bind(this.unit);
            if (isAdd != 1)
            {
                this.InWay_selTextInpt.Text     = LData.Exe("EQGetInWareWayName", null, new object[] { His.his.Choscode, dr["入库方式ID"].ToString() });
                this.InWare_selTextInpt.Text    = LData.Exe("EQGetInWareName", null, new object[] { His.his.Choscode, dr["入库库房编码"].ToString() });
                this.InWay_selTextInpt.Value    = dr["入库方式ID"].ToString();
                this.InWare_selTextInpt.Value   = dr["入库库房编码"].ToString();
                this.InWare_selTextInpt.Enabled = false;
                this.SHDH_yTextBox.Text         = dr["随货单号"].ToString();
                this.fpcode_yTextBox.Text       = dr["发票号码"].ToString();
                this.totalmoney_yTextBox.Text   = dr["总金额"].ToString();
                this.lstotalmoney_yTextBox.Text = dr["发票金额"].ToString();
                this.yTextBox_YzfMoney.Text     = dr["运杂费金额"].ToString();
                if (!dr["发票日期"].IsNull)
                {
                    this.dateTimePicker1.Value = dr["发票日期"].ToDateTime();
                }
                if (!dr["采购人"].IsNull)
                {
                    this.yTextBox_CGpeople.Text = dr["采购人"].ToString();
                }
                //dwList = TvList.newBind().SetCacheKey("XmDw").Load("GetWZUnit2", new object[] { His.his.Choscode });
                //dwList.Bind(this.unit);
                this.gys_selTextInpt.Text  = dr["供货商名称"].ToString();
                this.gys_selTextInpt.Value = dr["供货商ID"].ToString();
                this.memo_yTextBox.Text    = dr["备注"].ToString();
                this.dataGView1.Columns[eq.Index].ReadOnly = true;
                this.dataGView1.reLoad(new object[] { dr["入库ID"].ToString(), His.his.Choscode });
                this.cancel_toolStripButton.Enabled   = false;
                this.fromplan_toolStripButton.Enabled = false;
                if (isAdd == 3)
                {
                    this.toolStrip1.Enabled               = true;
                    this.add_toolStripButton.Visible      = false;
                    this.fromplan_toolStripButton.Visible = false;
                    this.save_toolStripButton.Visible     = false;
                    this.DeleButton.Visible               = false;
                    this.cancel_toolStripButton.Visible   = false;
                    this.toolStripButton_Pass.Visible     = false;
                    this.toolStripButton_Down.Visible     = false;


                    this.dataGView1.ReadOnly        = true;
                    this.InWare_selTextInpt.Enabled = false;
                    this.InWay_selTextInpt.Enabled  = false;
                    this.gys_selTextInpt.Enabled    = false;
                    this.fpcode_yTextBox.ReadOnly   = true;
                    this.dateTimePicker1.Enabled    = false;
                    this.SHDH_yTextBox.ReadOnly     = true;
                    this.memo_yTextBox.ReadOnly     = true;
                }
                if (isAdd == 4)
                {
                    this.toolStrip1.Enabled               = true;
                    this.add_toolStripButton.Visible      = false;
                    this.fromplan_toolStripButton.Visible = false;
                    this.save_toolStripButton.Visible     = false;
                    this.DeleButton.Visible               = false;
                    this.cancel_toolStripButton.Visible   = false;
                    this.toolStripButton_Pass.Visible     = true;
                    this.toolStripButton_Down.Visible     = true;
                    this.dataGView1.ReadOnly              = true;
                    this.InWare_selTextInpt.Enabled       = false;
                    this.InWay_selTextInpt.Enabled        = false;
                    this.gys_selTextInpt.Enabled          = false;
                    this.fpcode_yTextBox.ReadOnly         = true;
                    this.dateTimePicker1.Enabled          = false;
                    this.SHDH_yTextBox.ReadOnly           = true;
                    this.memo_yTextBox.ReadOnly           = true;
                }



                this.dataGView1.CellValueChanged += new DataGridViewCellEventHandler(dataGView1_CellValueChanged);
                //BindUnit();
            }


            dataGView1.RowToXml += new RowToXmlHandle(dataGView1_RowToXml);
        }
Esempio n. 19
0
        private void Chongxiao_toolStrip_Click(object sender, EventArgs e)
        {
            dataGView2.IsAutoAddRow = false;
            Dictionary <string, ObjItem> drZhu = this.dataGView1.getRowData();

            if (drZhu != null)
            {
                if (drZhu["对应入库ID"].IsNull == true || drZhu["对应入库ID"].ToString() == "")
                {
                    WJs.alert("没有包含该条设备领用信息的入库信息,无法进行冲销操作!");
                    return;
                }
                if (drZhu["状态"].ToString() == "6")
                {
                    if (WJs.confirm("确认对已审核的数据进行冲销操作?"))
                    {
                        //更改状态   是不是可以同时适应出库和入库呢?
                        ActionLoad acCX = ActionLoad.Conn();
                        acCX.Action = "LKWZSVR.lkeq.WareManag.EQLingYongSvr";
                        acCX.Sql    = "ChongXiaoRuChu";
                        acCX.Add("STATUS", "0");
                        acCX.Add("CXUSERNAME", His.his.UserName);
                        acCX.Add("CXUSERID", His.his.UserId.ToString());
                        acCX.Add("CXDATE", DateTime.Now);
                        acCX.Add("INID", drZhu["对应入库ID"].ToString());
                        acCX.Add("OUTID", drZhu["出库ID"].ToString());
                        acCX.Add("CHOSCODE", drZhu["医疗机构编码"].ToString());
                        acCX.ServiceLoad += new YtClient.data.events.LoadEventHandle(acCX_ServiceLoad);
                        acCX.Post();

                        //执行冲销操作
                        List <Dictionary <string, ObjItem> > XBList = this.dataGView2.GetData();
                        ChongXiaoCaoZuo(drZhu, XBList);
                        if (!isOK2)
                        {
                            WJs.alert("冲销失败!");
                            return;
                        }

                        //判断是否建卡?【循环细表内容】
                        foreach (Dictionary <string, ObjItem> item in XBList)
                        {
                            CXJKNum++;
                            // SELECT FLOWNO,DEPTID,STOCKID,EQID FROM LKEQ.EQSTOCKDETAIL WHERE CARDNUM &gt;= ? AND CHOSCODE=? AND FLOWNO=?
                            DataTable cxCard = LData.LoadDataTable("IfHaveBuildCardInLingYong", null, new object[] { item["数量"].ToInt(), His.his.Choscode, item["库存流水号"].ToString() });
                            if (cxCard == null || cxCard.Rows.Count <= 0)
                            {
                                continue;
                            }
                            else
                            {
                                DataRow dr = cxCard.Rows[0];//只包含一行
                                if (WJs.confirm("该领用单上的第" + CXJKNum + "条数据,建立了卡片,是否要将卡片进行冲销?"))
                                {
                                    //冲销掉对应的卡片   第一,减少对应的库存流水内的卡片数量;第二,在卡片表格内更改状态为7
                                    //UPDATE LKEQ.EQSTOCKDETAIL SET CARDNUM=CARDNUM-? WHERE FLOWNO=? AND CHOSCODE=?

                                    //UPDATE  LKEQ.EQCARDREC SET  STATUS=7
                                    //WHERE CARDID IN ( SELECT CARDID  FROM (SELECT *  FROM LKEQ.EQCARDREC
                                    //WHERE  STOCKID=? AND STOCKFLOWNO=?  AND DEPTID=?  ORDER BY CARDID DESC) WHERE ROWNUM<=?)
                                    isHaveCard = true;
                                    LData.Exe("ChongXiaoKaPianNumLingYong", null, new object[] { item["数量"].ToInt(), dr["FLOWNO"].ToString(), His.his.Choscode });
                                    //LData.Exe("ChongXiaoKaPianInLingYong", null, new object[] { dr["STOCKID"].ToString(), dr["FLOWNO"].ToString(), dr["DEPTID"].ToString(), His.his.Choscode, dr["EQID"].ToString(), item["数量"].ToInt() });
                                    LData.Exe("ChongXiaoKaPianInLingYong", null, new object[] { dr["STOCKID"].ToString(), dr["FLOWNO"].ToString(), drZhu["出库目的科室ID"].ToString(), His.his.Choscode, dr["EQID"].ToString(), item["数量"].ToInt() });
                                }
                            }
                        }
                        if (isHaveCard)
                        {
                            WJs.alert("卡片冲销成功!");
                        }
                    }
                    if (isOK2)
                    {
                        WJs.alert("冲销该条调拨记录成功!");
                        refresh_toolStrip_Click(null, null);
                    }
                }
                else
                {
                    WJs.alert("只能对状态为已审核的数据进行冲销操作!");
                }
            }
            else
            {
                WJs.alert("请选择需要进行冲销操作的调拨信息!");
            }
        }
Esempio n. 20
0
        private void ChongXiaoCaoZuo(Dictionary <string, ObjItem> drZhu, List <Dictionary <string, ObjItem> > drXibiaoList)
        {
            //6个表的数据需要进行更新
            //我的意思是: 主表首先直接冲销  然后循环细表进行冲销
            //出库主表里面的INID 找到 入库主表信息  读取完了之后 修改重新插入冲销数据
            //由对应的INID 找到 对应的入库细表数据  读取完了之后 修改重新插入冲销数据

            //1,生成对应的出库主表  状态为7
            ActionLoad acChongXiaoZhuChuKu = ActionLoad.Conn();

            acChongXiaoZhuChuKu.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
            acChongXiaoZhuChuKu.Sql    = "ChongXiaoZhuChuKu";
            ChongXiaoCKZhuBiao(acChongXiaoZhuChuKu, drZhu);
            acChongXiaoZhuChuKu.ServiceLoad += new YtClient.data.events.LoadEventHandle(acChongXiao_ServiceLoad);
            acChongXiaoZhuChuKu.Post();
            if (!isOK2)
            {
                return;
            }


            //这里是根据EQID 和WARECODE 来更新总表  比在内部循环的次数要少
            //select EQID, sum(Num) AS 数量 from lkeq.eqoutdetail  where outid=? and CHOSCODE=?  group by eqid;
            DataTable XiGroupbyEQIdTB = LData.LoadDataTable("GetEQIdNumGroupBy_EQDiaoBoManag", null, new object[] { drZhu["出库ID"].ToString(), His.his.Choscode });

            if (XiGroupbyEQIdTB != null && XiGroupbyEQIdTB.Rows.Count != 0)
            {
                foreach (DataRow item in XiGroupbyEQIdTB.Rows)
                {
                    //UPDATE LKEQ.EQSTOCK SET NUM=(NUM-?) WHERE WARECODE=? AND EQID=? AND CHOSCODE=?
                    LData.Exe("UpdataEQStockNumInfo_EQDiaoBoManag", null, new object[] { Convert.ToInt32(item["数量"]) * (-1), drZhu["出库库房"].ToString(), item["EQID"].ToString(), His.his.Choscode });
                }
            }

            // 1.2 出库细表
            foreach (Dictionary <string, ObjItem> drXiBiao in drXibiaoList)
            {
                if (drXiBiao["出库ID"] == null || drXiBiao["出库ID"].ToString() == "")
                {
                    // WJs.alert("该条出库细表内无数据!");  直接跳过,不要提示,体验性不好
                    continue;
                }
                ActionLoad acChongXiaoXiChuKu = ActionLoad.Conn();
                acChongXiaoXiChuKu.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
                acChongXiaoXiChuKu.Sql    = "ChongXiaoXiChuKu";
                ChongXiaoCKXiBiao(acChongXiaoXiChuKu, drXiBiao);
                acChongXiaoXiChuKu.ServiceLoad += new YtClient.data.events.LoadEventHandle(acChongXiao_ServiceLoad);
                acChongXiaoXiChuKu.Post();
                //对 出库库房 和对应的设备数量进行更新   [单条数据,细表对应的库存流水号, 对应一个STOCKID]    UPDATE LKEQ.EQSTOCKDETAIL SET OUTNUM=(OUTNUM+?) WHERE FLOWNO=? AND CHOSCODE=?
                LData.Exe("UpdateEQStockDetailNum", null, new object[] { drXiBiao["数量"].ToInt() * (-1), drXiBiao["库存流水号"].ToString(), His.his.Choscode });
            }
            if (!isOK2)
            {
                return;
            }

            //2,生成对应的入库主表  状态为7
            ActionLoad acChongXiaoZhuRuKu = ActionLoad.Conn();

            acChongXiaoZhuRuKu.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
            acChongXiaoZhuRuKu.Sql    = "ChongXiaoZhuRuKu";
            //由原始INID 获取对应的 入库主表和细表的内容   根据这些内容生成冲销操作所需要的数据  冲销的时候INID已经存在
            DataTable dt = LData.LoadDataTable("FindINMainInfo", null, new object[] { His.his.Choscode, drZhu["对应入库ID"].ToString() });

            if (dt != null && dt.Rows.Count > 0)
            {
                DataRow dr = dt.Rows[0];//要冲销的调拨数据对应的入库主表信息
                ChongXiaoRKZhuBiao(acChongXiaoZhuRuKu, dr);
                acChongXiaoZhuRuKu.ServiceLoad += new YtClient.data.events.LoadEventHandle(acChongXiao_ServiceLoad);
                acChongXiaoZhuRuKu.Post();
            }
            else
            {
                WJs.alert("入库主表信息出错,冲销操作被终止!");
                isOK2 = false;
                return;
            }
            if (!isOK2)
            {
                return;
            }

            //select EQID, sum(Num) AS 数量 from lkeq.eqindetail  where inid=? and CHOSCODE=?  group by eqid
            DataTable DTNumForEQStockCX = LData.LoadDataTable("GetStockNumInInDetail", null, new object[] { drZhu["对应入库ID"].ToString(), His.his.Choscode });

            if (DTNumForEQStockCX != null)
            {
                foreach (DataRow itemRow in DTNumForEQStockCX.Rows)
                {
                    //UPDATE LKEQ.EQSTOCK SET NUM=(NUM+?) WHERE EQID=? AND WARECODE=? AND CHOSCODE=?
                    LData.Exe("UpdateEQStockNumForTarget", null, new object[] { Convert.ToInt32(itemRow["数量"].ToString()) * (-1), itemRow["EQID"].ToString(), drZhu["出库目的库房"].ToString(), His.his.Choscode });
                }
            }

            //2.2   入库细表
            DataTable dtDetail = LData.LoadDataTable("FindInDetailInfo", null, new object[] { His.his.Choscode.ToString(), drZhu["对应入库ID"].ToString() });

            if (dtDetail != null && dtDetail.Rows.Count > 0)
            {
                foreach (DataRow dr in dtDetail.Rows)
                {
                    ActionLoad acChongXiaoXiRuKu = ActionLoad.Conn();
                    acChongXiaoXiRuKu.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
                    acChongXiaoXiRuKu.Sql    = "ChongXiaoXiRuKu";
                    ChongXiaoRKXiBiao(acChongXiaoXiRuKu, dr);
                    acChongXiaoXiRuKu.ServiceLoad += new YtClient.data.events.LoadEventHandle(acChongXiao_ServiceLoad);
                    acChongXiaoXiRuKu.Post();
                    LData.Exe("UpdateEQStockDetailNum_InBiao", null, new object[] { Convert.ToInt32(dr["NUM"]) * (-1), dr["STOCKFLOWNO"].ToString(), His.his.Choscode });
                }
            }
            if (!isOK2)
            {
                return;
            }
        }
Esempio n. 21
0
        private void ShenHeCaoZuo(Dictionary <string, ObjItem> drZhuBiao, List <Dictionary <string, ObjItem> > drXiBiao)
        {
            //这里的出库数据 相对应与  入库数据  再修改库存总表和流水表的数据
            //联系 : EQOUTMAIN :WARECODE ---- EQSTOCK:WARECODE   EQOUTDETAIL:STOCKFLOWNO----EQSTOCKDETAIL:FLOWNO
            //        EQOUTMAIN:INID OPFLAG IOID(IOFLAG=1) ---- EQINMAIN: INID OPFLAG
            if (drXiBiao != null && drXiBiao.Count > 0)
            {
                //1 入库主表的插入
                ActionLoad ac1 = ActionLoad.Conn();
                ac1.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
                ac1.Sql    = "InsertInMain";
                AddRuKuZhuBiaoInfo(ac1, drZhuBiao);
                ac1.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                ac1.Post();
                if (!isOk)
                {
                    return;
                }

                //这里是根据EQID 和WARECODE 来更新总表  比在内部循环的次数要少
                //select EQID, sum(Num) AS 数量 from lkeq.eqoutdetail  where outid=? and CHOSCODE=?  group by eqid;
                DataTable XiGroupbyEQIdTB = LData.LoadDataTable("GetEQIdNumGroupBy_EQDiaoBoManag", null, new object[] { drZhuBiao["出库ID"].ToString(), His.his.Choscode });
                if (XiGroupbyEQIdTB != null && XiGroupbyEQIdTB.Rows.Count != 0)
                {
                    foreach (DataRow item in XiGroupbyEQIdTB.Rows)
                    {
                        //UPDATE LKEQ.EQSTOCK SET NUM=(NUM-?) WHERE WARECODE=? AND EQID=? AND CHOSCODE=?
                        LData.Exe("UpdataEQStockNumInfo_EQDiaoBoManag", null, new object[] { Convert.ToInt32(item["数量"]), drZhuBiao["出库库房"].ToString(), item["EQID"].ToString(), His.his.Choscode });
                    }
                }

                //就是主表某条信息   对应细表的全部数据
                foreach (Dictionary <string, ObjItem> drXi in drXiBiao)
                {
                    //防止自动增加行
                    if (drXi["流水号"].IsNull == true || drXi["库存流水号"].IsNull == true || drXi["流水号"].ToString().Equals("") || drXi["库存流水号"].ToString().Equals(""))
                    {
                        continue;
                    }

                    //2 更新出库库房数据   UPDATE LKEQ.EQSTOCKDETAIL SET OUTNUM=(OUTNUM+?) WHERE FLOWNO=? AND CHOSCODE=?
                    LData.Exe("UpdateEQStockDetailNum", null, new object[] { Convert.ToInt32(drXi["数量"].ToString()), drXi["库存流水号"].ToString(), His.his.Choscode });

                    //3 更新或插入信息至库存主表  [更新出库目的库房]
                    ActionLoad acStockMain = ActionLoad.Conn();
                    acStockMain.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
                    acStockMain.Sql    = "InsertStockMain";
                    AddEQStockMainInfo(acStockMain, drXi, drZhuBiao);
                    if (!ifHaveExsit)  //不存在才需插入,存在则已经更新完毕
                    {
                        acStockMain.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                        acStockMain.Post();
                    }
                    if (!isOk)
                    {
                        return;
                    }

                    //4   库存流水表  [直接新建的库存流水入库单,所以不存在更新数据]
                    ActionLoad acStockDetail = ActionLoad.Conn();
                    acStockDetail.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
                    acStockDetail.Sql    = "InsertStockDetail";
                    AddEQStockDetailInfo(acStockDetail, drXi, drZhuBiao);
                    acStockDetail.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                    acStockDetail.Post();
                    if (!isOk)
                    {
                        return;
                    }

                    //5  入库细表
                    ActionLoad acInDetail = ActionLoad.Conn();
                    acInDetail.Action = "LKWZSVR.lkeq.WareManag.EQDiaoBoSvr";
                    acInDetail.Sql    = "InsertEQInDetail";
                    AddRuKuXiBiaoInfo(acInDetail, drXi, drZhuBiao);
                    acInDetail.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                    acInDetail.Post();
                    if (!isOk)
                    {
                        return;
                    }
                }
                if (isOk)
                {
                    WJs.alert("设备调拨信息审核成功!");
                    refresh_toolStrip_Click(null, null);
                }
            }
            else
            {
                WJs.alert("出库细表无任何内容,不会生成任何库存记录!");
                return;
            }
        }
Esempio n. 22
0
        private void del_toolStrip_Click(object sender, EventArgs e)
        {
            Dictionary <string, ObjItem> drNow = dataGView1.getRowData();

            if (drNow != null)
            {
                if (drNow["折旧ID"].IsNull)
                {
                    //新增过来的全部没有折旧ID,这里设置为修改时的新增信息依旧没有
                    dataGView1.Rows.Remove(dataGView1.CurrentRow);
                }
                else
                {
                    if (WJs.confirmFb("针对原本的设备折旧数据的删除时不可恢复的,您确定要删除吗?"))
                    {
                        DataTable dt = GetZJWork_EQDepre(drNow["卡片ID"].ToString());
                        if (dt != null)
                        {
                            DataRow drR = dt.Rows[0];
                            double  Result;
                            //如果原本为Null,转换失败,则设置为0,否则肯定直接转换成功
                            if (!double.TryParse(drR["TOTALZJ"].ToString(), out Result))
                            {
                                drR["TOTALZJ"] = "0.00";
                            }

                            if (!double.TryParse(drR["TOTALEDWORK"].ToString(), out Result))
                            {
                                drR["TOTALEDWORK"] = "0.00";
                            }
                            //这样就避免了,当为Null的时候,去更新出错,直接小于就return掉了
                            if (Convert.ToDouble(drR["TOTALZJ"].ToString()) < (drNow["本月折旧"].ToDouble()))
                            {
                                WJs.alert("无法删除该行:卡片累计折旧小于本月折旧,无法删除,否则更新时出现折旧为负数!");
                                return;
                            }
                            if (Convert.ToDouble(drR["TOTALEDWORK"].ToString()) < (drNow["本月工作量"]).ToDouble())
                            {
                                WJs.alert("无法删除该行:累计工作量小于本月工作量,无法删除,否则更新时出现工作量为负数!");
                                return;
                            }
                            LData.Exe("UpdateNumForDeleNotNull_EQDepreManag", null, new object[] { drNow["本月折旧"].ToDouble(), drNow["本月工作量"].ToDouble(), drNow["卡片ID"].ToString(), His.his.Choscode });
                        }
                        else
                        {
                            //这里只要有一个为空,就会进行不下去,难道出现负数?
                            WJs.alert("不存在卡片" + drNow["卡片ID"].ToString() + "的数据,请查看建卡界面!");
                            return;
                        }
                        LData.Exe("DeleteEQReciationInfo_EQDepreEdit", null, new object[] { dr["折旧ID"].ToString(), drNow["卡片ID"].ToString(), His.his.Choscode });
                        dataGView1.Rows.Remove(dataGView1.CurrentRow);
                        WJs.alert("删除成功!");
                    }
                }
            }
            else
            {
                WJs.alert("请选择要删除的设备调拨信息!");
            }
            if (isFlag == 2 && dataGView1.RowCount == 0)
            {
                SleDeptid_toolStrip.Enabled = true;
                Deptid_selTextInpt.Enabled  = true;
            }
        }
Esempio n. 23
0
        private void WZDict_Add_Load(object sender, EventArgs e)
        {
            this.selTextInpt_EQID.TextChanged += new EventHandler(selTextInpt_EQID_TextChanged);
            this.yTextBox_QGNum.TextChanged   += new EventHandler(EQYJMONEY);
            this.yTextBox_YJPRICE.TextChanged += new EventHandler(EQYJMONEY);
            this.selTextInpt_Country.Text      = "中国";
            TvList.newBind().add("已审核", "6").add("审核被拒", "2").add("待审核", "1").add("已删除", "0").Bind(this.ytComboBox_Status);
            TvList.newBind().Load("EQUnitCodeAskBuy_Add", null).Bind(this.ytComboBox_Unitcode);

            this.selTextInpt_EQID.SelParam = His.his.Choscode + "|{key}|{key}|{key}"; //为什么要这样写?
            selTextInpt_EQID.BxSr          = false;                                   //必须输入查询关键字
            //this.selTextInpt1.textBox1.ReadOnly = true;
            this.selTextInpt_EQID.Sql = "EQIDAskBuy_Add";

            //这里更改了单位编码

            this.selTextInpt_QGKSID.SelParam = His.his.Choscode + "|{key}|{key}|{key}"; //为什么要这样写?
            selTextInpt_QGKSID.BxSr          = false;                                   //必须输入查询关键字
            //this.selTextInpt1.textBox1.ReadOnly = true;
            this.selTextInpt_QGKSID.Sql = "AskBuy_FindKSID";

            this.selTextInpt_Country.SelParam = "{key}|{key}|{key}|"; //为什么要这样写?
            selTextInpt_Country.BxSr          = false;                //必须输入查询关键字
            //this.selTextInpt1.textBox1.ReadOnly = true;
            this.selTextInpt_Country.Sql = "CountryAskBuy_Add";

            this.yTextBox_UserID.ReadOnly   = true;
            this.yTextBox_User.ReadOnly     = true;
            this.yTextBox_Choscode.ReadOnly = true;
            this.ytDateTime_RECDATE.Enabled = false;
            this.ytDateTime_SHTime.Enabled  = false;
            this.yTextBox_SHUserID.ReadOnly = true;
            this.yTextBox_SHName.ReadOnly   = true;
            this.button_CG.Visible          = false;
            this.button_SB.Visible          = false;
            this.yTextBox_QGID.ReadOnly     = true;

            this.yTextBox_Name.ReadOnly      = true;
            this.yTextBox_GuiG.ReadOnly      = true;
            this.ytComboBox_Unitcode.Enabled = false;
            this.yTextBox_XH.ReadOnly        = true;
            this.yTextBox_YJMONEY.ReadOnly   = true;
            this.ytComboBox_Status.Enabled   = false;
            this.yTextBox_SPNum.ReadOnly     = true;

            this.ytDateTime_SHTime.Visible = false;
            this.yTextBox_SHName.Visible   = false;
            this.yTextBox_SHUserID.Visible = false;
            this.label16.Visible           = false;
            this.label21.Visible           = false;
            this.label22.Visible           = false;

            if (!this.isAdd)//编辑
            {
                this.yTextBox_QGID.Text       = r["APPLYID"].ToString();
                this.selTextInpt_QGKSID.Text  = LData.Exe("GetEQAskBuy_KSName", null, new object[] { His.his.Choscode, r["DEPTID"].ToString() });
                this.selTextInpt_QGKSID.Value = r["DEPTID"].ToString();

                //this.selTextInpt_EQID.Text = LData.Exe("GetEQAskBuy_EQName", null, new object[] { His.his.Choscode, r["EQID"].ToString() });

                this.selTextInpt_EQID.Text  = r["EQID"].ToString();
                this.selTextInpt_EQID.Value = r["EQNAME"].ToString();

                this.yTextBox_Name.Text = r["EQNAME"].ToString();

                if (r["GG"] != null)
                {
                    this.yTextBox_GuiG.Text = r["GG"].ToString();
                }
                if (r["XH"] != null)
                {
                    this.yTextBox_XH.Text = r["XH"].ToString();
                }


                this.selTextInpt_Country.Text  = r["COUNTRY"].ToString();
                this.selTextInpt_Country.Value = LData.Exe("GetEQAskBuy_EQCountry", null, new object[] { His.his.Choscode, r["COUNTRY"].ToString() });



                this.ytComboBox_Unitcode.Value = r["UNITCODE"].ToString();


                this.yTextBox_QGNum.Text = r["APPLYNUM"].ToString();


                if (r["YJPRICE"] != null)
                {
                    this.yTextBox_YJPRICE.Text = r["YJPRICE"].ToString();
                }

                this.yTextBox_YJMONEY.Text = r["YJMONEY"].ToString();

                if (r["REASON"] != null)
                {
                    this.yTextBox_REASON.Text = r["REASON"].ToString();
                }
                if (r["XYFX"] != null)
                {
                    this.yTextBox_XYFX.Text = r["XYFX"].ToString();
                }
                if (r["PTTJ"] != null)
                {
                    this.yTextBox_PTTJ.Text = r["PTTJ"].ToString();
                }
                this.ytDateTime_MakeTime.Value = Convert.ToDateTime(r["PLANDATE"]);


                this.ytComboBox_Status.Value = r["STATUS"].ToString();

                if (r["MEMO"] != null)
                {
                    this.yTextBox_Rec.Text = r["MEMO"].ToString();
                }
                this.yTextBox_UserID.Text = r["USERID"].ToString();

                if (r["USERNAME"] != null)
                {
                    this.yTextBox_User.Text = r["USERNAME"].ToString();
                }

                this.ytDateTime_RECDATE.Value = Convert.ToDateTime(r["RECDATE"]);



                this.yTextBox_Choscode.Text = r["CHOSCODE"].ToString();
            }
            else if (this.isAdd) //新增
            {
                this.yTextBox_User.Text = His.his.UserName;

                this.yTextBox_UserID.Text = His.his.UserId.ToString();

                this.yTextBox_Choscode.Text          = His.his.Choscode;
                this.ytComboBox_Status.SelectedIndex = 2;
            }

            if (this.Status == "CK")
            {
                if (r["SHNUM"] != null)
                {
                    this.yTextBox_SPNum.Text = r["SHNUM"].ToString();
                }
                if (this.yTextBox_SPNum.Text.Trim().Length > 0)
                {
                    this.ytDateTime_SHTime.Visible = true;
                    this.yTextBox_SHName.Visible   = true;
                    this.yTextBox_SHUserID.Visible = true;
                    this.label16.Visible           = true;
                    this.label21.Visible           = true;
                    this.label22.Visible           = true;
                    if (r["SHUSERID"] != null)
                    {
                        this.yTextBox_SHUserID.Text = r["SHUSERID"].ToString();
                    }
                    if (r["SHDATE"] != null)
                    {
                        this.ytDateTime_SHTime.Value = Convert.ToDateTime(r["SHDATE"].ToString());
                    }
                    if (r["SHUSERNAME"] != null)
                    {
                        this.yTextBox_SHName.Text = r["SHUSERNAME"].ToString();
                    }
                }
                this.btn_Save.Enabled = false;
            }

            if (this.Status == "SH")
            {
                this.ytDateTime_SHTime.Visible = true;
                this.yTextBox_SHName.Visible   = true;
                this.yTextBox_SHUserID.Visible = true;
                this.label16.Visible           = true;
                this.label21.Visible           = true;
                this.label22.Visible           = true;
                this.label18.ForeColor         = System.Drawing.Color.Blue;
                this.btn_Save.Visible          = false;
                this.button_CG.Visible         = true;
                this.button_SB.Visible         = true;
                this.yTextBox_SHName.Text      = His.his.UserName;
                this.yTextBox_SPNum.ReadOnly   = false;
                this.yTextBox_SHUserID.Text    = His.his.UserId.ToString();

                this.ytDateTime_SHTime.Value = DateTime.Now;
            }
        }
Esempio n. 24
0
        private void EQKind_Add_Load(object sender, EventArgs e)
        {
            this.yTextBox_Name.TextChanged += new EventHandler(yTextBox_Name_TextChanged);
            TvList.newBind().add("启用", "1").add("停用", "0").Bind(this.ytComboBox_ifUse);
            TvList.newBind().add("是", "1").add("否", "0").Bind(this.ytComboBox_IfEnd);
            this.yTextBox_User.Text = His.his.UserName.ToString();
            //this.yTextBox_UserID.Text = His.his.UserId.ToString();
            this.ytComboBox_IfEnd.Enabled       = false;
            this.yTextBox_UpCode.ReadOnly       = true;
            this.yTextBox_LeiCode.ReadOnly      = true;
            this.yTextBox_User.ReadOnly         = true;
            this.yTextBox_ChCode.ReadOnly       = true;
            this.ytComboBox_ifUse.SelectedIndex = 0;
            if (!this.isAdd)
            {
                this.yTextBox_Name.Text = r["KINDNAME"].ToString();
                this.yTextBox_PY.Text   = r["PYCODE"].ToString();
                this.yTextBox_WB.Text   = r["WBCODE"].ToString();

                this.yTextBox_User.Text     = r["USERNAME"].ToString();
                this.yTextBox_Rec.Text      = r["MEMO"].ToString();
                this.ytComboBox_ifUse.Value = r["IFUSE"].ToString();

                this.yTextBox_ChCode.Text   = r["CHOSCODE"].ToString();
                this.ytComboBox_IfEnd.Value = r["IFEND"].ToString();
                this.yTextBox_LeiCode.Text  = r["KINDCODE"].ToString();
                this.yTextBox_UpCode.Text   = r["SUPERCODE"].ToString();

                this.yTextBox_UserID.Text = r["PREFIX"].ToString(); //ID换成了设备卡号
            }
            else
            {
                this.yTextBox_User.Text = His.his.UserName;
                //this.yTextBox_UserID.Text = His.his.UserId.ToString();
                this.yTextBox_ChCode.Text   = His.his.Choscode;
                this.ytComboBox_IfEnd.Value = "1";

                //设置上级编码和类别编码
                if (r == null)
                {
                    this.yTextBox_UpCode.Text = "0";

                    string t = LData.Exe("FindEQKind_Code", null, new object[] { "0", His.his.Choscode });


                    if (Convert.ToInt32(t).ToString().Length <= 1 && (Convert.ToInt32(t) + 1).ToString().Length <= 1)//判断是否前面有个0(0801)
                    {
                        t = "0" + (Convert.ToInt32(t) + 1).ToString();
                    }
                    else
                    {
                        t = (Convert.ToInt32(t) + 1).ToString();
                    }
                    this.yTextBox_LeiCode.Text = t;
                }
                else
                {
                    this.yTextBox_UpCode.Text = r["KINDCODE"].ToString();

                    string t = LData.Exe("FindEQKind_Code", null, new object[] { r["KINDCODE"].ToString(), His.his.Choscode });
                    if (t == null)
                    {
                        t = r["KINDCODE"].ToString() + "01";
                    }
                    else if (t.Trim().Length > Convert.ToInt32(t).ToString().Length)
                    {
                        t = "0" + (Convert.ToInt32(t) + 1).ToString();
                    }
                    else
                    {
                        t = (Convert.ToInt32(t) + 1).ToString();
                    }
                    this.yTextBox_LeiCode.Text = t;
                }
            }
        }
Esempio n. 25
0
        private void Save_toolStrip_Click(object sender, EventArgs e)
        {
            dataGView1.IsAutoAddRow = false;
            if (Deptid_selTextInpt.Value == "" || Deptid_selTextInpt.Text == "")
            {
                WJs.alert("请选择科室!");
                return;
            }
            if (DateId_selTextInp.Value == "" || DateId_selTextInp.Text == "")
            {
                WJs.alert("请选择期间划分信息!");
                return;
            }
            if (dataGView1.RowCount == 0)
            {
                WJs.alert("请输入细表信息!");
                return;
            }

            if (!YanzhengIfCF())
            {
                return;
            }

            List <Dictionary <string, ObjItem> > NowData = dataGView1.GetData();

            // 保存的这里,主要是针对编辑状态下原本数据的更新
            if (isFlag == 1)
            {
                foreach (Dictionary <string, ObjItem> item in NowData)
                {
                    if (item["折旧ID"].IsNull || item["折旧ID"].ToString().Equals(""))
                    {
                        continue;
                    }
                    //循环原始的数据,判断是否存在原始的数据与现在的数据是相同的。
                    foreach (Dictionary <string, ObjItem> itYSJ in XiList)
                    {
                        if (item["卡片ID"].ToString() == itYSJ["卡片ID"].ToString())
                        {
                            //在保存的时候,原数据内的卡片id与现在的卡片id相同,更新数据   若数据无修改,无需更新
                            if (item["本月折旧"].ToDouble() == itYSJ["本月折旧"].ToDouble() && item["本月工作量"].ToDouble() == itYSJ["本月工作量"].ToDouble())
                            {
                                continue;
                            }
                            else
                            {
                                //SELECT TOTALZJ,TOTALEDWORK FROM LKEQ.EQCARDREC WHERE CHOSCODE=? AND CARDID=?
                                DataTable dt = GetZJWork_EQDepre(item["卡片ID"].ToString());
                                if (dt != null)
                                {
                                    DataRow dr = dt.Rows[0];
                                    double  Result;
                                    //如果原本为Null,转换失败,则设置为0,否则肯定直接转换成功
                                    if (!double.TryParse(dr["TOTALZJ"].ToString(), out Result))
                                    {
                                        dr["TOTALZJ"] = "0.00";
                                    }

                                    if (!double.TryParse(dr["TOTALEDWORK"].ToString(), out Result))
                                    {
                                        dr["TOTALEDWORK"] = "0.00";
                                    }
                                    if (Convert.ToDouble(dr["TOTALZJ"].ToString()) + item["本月折旧"].ToDouble() - itYSJ["本月折旧"].ToDouble() < 0)
                                    {
                                        WJs.alert("设备卡片" + item["卡片ID"].ToString() + ",在当前折旧的计算下,累计折旧将为负数,请修改后再保存!");
                                        return;
                                    }
                                    if (Convert.ToDouble(dr["TOTALEDWORK"].ToString()) + item["本月工作量"].ToDouble() - itYSJ["本月工作量"].ToDouble() < 0)
                                    {
                                        WJs.alert("设备卡片" + item["卡片ID"].ToString() + ",在当前工作量的计算下,累计工作量为负数,请修改后再保存!");
                                        return;
                                    }
                                }
                                LData.Exe("UpdateNumForNumEdit_EQDepreEidt", null, new object[] { item["本月折旧"].ToDouble(), itYSJ["本月折旧"].ToDouble(), item["本月工作量"].ToDouble(), itYSJ["本月工作量"].ToDouble(), item["卡片ID"].ToString(), His.his.Choscode });
                                break;
                            }
                        }
                    }
                }
            }
            string str = this.dataGView1.GetDataToXml();

            if (str != null)
            {
                ActionLoad ac = ActionLoad.Conn();
                ac.Action = "LKWZSVR.lkeq.UseingEQ.EQDepreciationSvr";
                ac.Sql    = "ModifyOrAddInfo";
                AddZhuBiaoInfo(ac);
                ac.Add("XiBiaoXML", str);
                ac.ServiceLoad += new YtClient.data.events.LoadEventHandle(ac_ServiceLoad);
                ac.Post();
            }
            if (isOk)
            {
                WJs.alert("保存信息成功,即将关闭本窗口……");
                this.Close();
            }
        }