using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Core.Mes.Client.Comm.Control;
using CoreFS.CA06;
using Pur.Entity;
using System.Collections;
using Pur.Entity.pur_planEntity;
using Pur.Entity.configureEntity;
using Core.Mes.Client.Comm.Tool;
using com.hnshituo.pur.vo;
using Infragistics.Win;
using Core.Mes.Client.Comm.Server;
using Pur.require_plan;
using Infragistics.Win.UltraWinEditors;
using Pur.Pop_upWindow;
using Infragistics.Win.UltraWinGrid;
using Pur.configure;
using Infragistics.Win.UltraWinToolTip;
namespace Pur.pur_plan
{
public partial class frm_PurTaskMUpd : FrmPmsBase
{
public frm_PurTaskMUpd(DataTable dtMat, DataTable dtSupp, DataTable dtEva, OpeBase ob, string strTaskId)
{
InitializeComponent();
this.ob = ob;
GridHelper.SetExcludeColumnsActive(ultraGrid2.DisplayLayout.Bands[0]);//, "PAYMENTCODE", "PACKAGETYPE", "PICKQTY");
ultraGrid3.DisplayLayout.Bands[0].Override.AllowUpdate = DefaultableBoolean.False;
ultraGrid4.DisplayLayout.Bands[0].Override.AllowUpdate = DefaultableBoolean.False;
getUltcmbBindData();
//绑定grid
QstrTaskId = strTaskId;
//GridHelper.CopyDataToDatatable(dtMat, dataTable5, true);
GetTaskC();
ultraGrid2.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
GridHelper.CopyDataToDatatable(dtSupp, dataTable3, true);
ultraGrid3.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
GridHelper.CopyDataToDatatable(dtEva, dataTable9, true);
ultraGrid4.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
}
///
/// 查询任务从表
///
public void GetTaskC()
{
// 查询任务从表
PurTaskCEntity M_PurTaskC = new PurTaskCEntity();
M_PurTaskC.TaskId = QstrTaskId;
M_PurTaskC.Validflag = "1";
DataTable dt = this.execute("com.hnshituo.pur.purplan.service.TaskCService", "getTaskC", new object[] { M_PurTaskC });
//将空属性的值置为""
for (int i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i]["ITEMATTRID"] == null || dt.Rows[i]["ITEMATTRID"].ToString() == "")
{
dt.Rows[i]["ITEMATTRID"] = " ";
}
}
GridHelper.CopyDataToDatatable(ref dt, ref dataTable5, true);//绑定物料分类表
//ultraGrid2.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
}
string QstrREQ_ORG_NAME = "";
string[] Qstr = null;
DataTable Q_dtFLOW_TYPE = null;
string QstrTaskId = "";
string strpVertionNo = "";
string QstrRecordId = "";
public frm_PurTaskMUpd(DataTable dt, string strREQ_ORG_NAME,string[] str, OpeBase ob)
{
InitializeComponent();
this.ob = ob;
Qstr = str;
QstrREQ_ORG_NAME=strREQ_ORG_NAME;
get_PurTaskM(dt);
ultcmb_ELIVERY_TYPE.SelectedIndex = 0;
ultraGrid3.DisplayLayout.Bands[0].Override.AllowUpdate = DefaultableBoolean.False;
GridHelper.SetExcludeColumnsActive(ultraGrid2.DisplayLayout.Bands[0], "PAYMENTCODE", "PACKAGETYPE", "PICKQTY");
getUltcmbBindData();
}
public void get_PurTaskM(DataTable dt)
{
GridHelper.CopyDataToDatatable(ref dt, ref dataTable5, true);//绑定物料分类表
ultraGrid2.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
}
///
/// 按钮控件
///
///
///
private void barsManagerButon_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
{
switch (e.Tool.Key.ToString())
{
case "SelectSupp":
{
SelectSupp();
}
break;
//添加评标人员
case "addEvaUsers":
{
AddEva();
}
break;
//创建任务单
case "getTaskList":
{
//setTaskList();
setTaskListUpd();
}
break;
case "ESC":
{
this.Close();
}
break;
}
}
///
/// 选择供应商
///
///
///
private void SelectSupp()
{
if (dataTable5.Rows.Count < 1)
{
MessageUtil.ShowTips("物料为空,不能添加供应商");
return;
}
ArrayList al = new ArrayList();
for (int i = 0; i < dataTable5.Rows.Count; i++)
{
al.Add(dataTable5.Rows[i]["ITEMCODE"].ToString());
}
frmSuppChk frm = new frmSuppChk(this.ob, al, dataTable3);
frm.ShowDialog();
if (frm.Q_dt != null)
{
DataTable dt = frm.Q_dt;
GridHelper.CopyDataToDatatable(ref dt, ref dataTable3, false);//绑定物料分类表
}
}
///
/// 添加评标人员
///
public void AddEva()
{
SetectManByDept frm = new SetectManByDept();
frm.ShowDialog();
//frmPopEvaUsers frm = new frmPopEvaUsers(this.ob, "");
//frm.ShowDialog();
//if (frm.dtEva != null)
//{
// DataTable dt = frm.dtEva;
// for (int i = 0; i < dt.Rows.Count;)
// {
// if (dataTable9.Rows.Contains(dt.Rows[i]["ID"]))
// {
// dt.Rows.RemoveAt(i);
// }
// else
// { i++; }
// }
// GridHelper.CopyDataToDatatable(ref dt, ref dataTable9, false);//绑定物料分类表
//}
}
///
/// 选择招标流程单选按钮事件
///
///
///
private void rdb_FLOW_TYPE_CheckedChanged(object sender, EventArgs e)
{
if (ultcmb_FLOW_TYPE.Value != null)
{
//if (ultcmb_FLOW_TYPE.Value.ToString() == "1")
//{
foreach (DataRow dr in Q_dtFLOW_TYPE.Rows)
{
//ultraTextEditor1.Text = "报价->议标->评标";//"供应商报价后,评价小组议标、确定价及量,供应商修改报价及量,供应部确认最终成交价及量";
if (dr["BASECODE"].ToString() == ultcmb_FLOW_TYPE.Value.ToString())
{
ultraTextEditor1.Text = dr["MEMO"].ToString();
break;
}
}
//}
//else if (ultcmb_FLOW_TYPE.Value.ToString() == "2")
//{
// ultraTextEditor1.Text = "议标(定价定量)->评标";//"供应部定价及量,供应商确认";
//}
//else if (ultcmb_FLOW_TYPE.Value.ToString() == "3")
//{
// ultraTextEditor1.Text = "报价->评标";//"供应商报价后,一旦开标,不得修改报价及量";
//}
//else if (ultcmb_FLOW_TYPE.Value.ToString() == "4")
//{
// ultraTextEditor1.Text = "报价->根据综合评分评标";//"供应商报价后,一旦开标,不得修改报价及量";
//}
}
}
private void setTaskListUpd()
{
if (jy_negDate.Text == "")
{
MessageUtil.ShowTips("谈判日期不能为空!");
jy_negDate.Focus();
return;
}
if (ultraTextEditor2.Text.Trim() == "")
{
MessageUtil.ShowTips("成本分析不能为空!");
return;
}
if (ultraTextEditor3.Text.Trim() == "")
{
MessageUtil.ShowTips("市场预测不能为空!");
return;
}
if (ultraTextEditor4.Text.Trim() == "")
{
MessageUtil.ShowTips("物资使用情况不能为空!");
return;
}
if (ultraTextEditor5.Text.Trim() == "")
{
MessageUtil.ShowTips("评价不能为空!");
return;
}
if (MessageUtil.ShowYesNoAndQuestion("确定保存?").Equals(DialogResult.No))
{
return;
}
string str = "";
str += "成本分析:" + ultraTextEditor2.Text + "\n";
str += "市场预测:" + ultraTextEditor3.Text + "\n";
str += "物资使用情况:" + ultraTextEditor4.Text + "\n";
str += "评价:" + ultraTextEditor5.Text + "\n";
str += "其他须说明:" + ultraTextEditor6.Text;
jy_procRecord.Text = str.Trim();
PurTaskRecordEntity TkR = new PurTaskRecordEntity();
TkR.Id = QstrRecordId;
TkR.TaskId = QstrTaskId;
TkR.NegDate = Convert.ToDateTime(jy_negDate.Value);
TkR.ProcRecord = jy_procRecord.Text.Trim();
TkR.Type = jy_type.Value.ToString().Trim();
ArrayList al_Eva = new ArrayList();
// 采购任务评标人员
foreach (UltraGridRow ugr in ultraGrid4.Rows)
{
PurTaskEvaUsersEntity TaskEvaUsersEntity = new PurTaskEvaUsersEntity();
TaskEvaUsersEntity.Validflag = "1";
TaskEvaUsersEntity.TaskId = QstrTaskId;
TaskEvaUsersEntity.CreateName = UserInfo.GetUserName();
TaskEvaUsersEntity.CreateUserId = UserInfo.GetUserID();
TaskEvaUsersEntity.CreateTime = System.DateTime.Now;
if (ultraGrid4.ActiveRow.Cells["EVAROLEID"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaRoleId = ugr.Cells["EVAROLEID"].Value.ToString();//角色Id
}
if (ultraGrid4.ActiveRow.Cells["EVAROLENAME"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaRoleName = ugr.Cells["EVAROLENAME"].Value.ToString();//角色名称
}
if (ultraGrid4.ActiveRow.Cells["EVAUSERID"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaUserid = ugr.Cells["EVAUSERID"].Value.ToString();//用户Id
}
if (ultraGrid4.ActiveRow.Cells["EVAUSERNAME"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaUsername = ugr.Cells["EVAUSERNAME"].Value.ToString();//用户名称
}
if (ultraGrid4.ActiveRow.Cells["EVAORGID"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaOrgId = ugr.Cells["EVAORGID"].Value.ToString();//科室Id
}
if (ultraGrid4.ActiveRow.Cells["EVAORGNAME"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaOrgName = ugr.Cells["EVAORGNAME"].Value.ToString();//科室名称
}
al_Eva.Add(TaskEvaUsersEntity);
}
PurTaskMEntity m = new PurTaskMEntity();
m.TaskId = QstrTaskId;
m.FunctionVersionName = txt_FUNCTION_VERSION_NO.Text;
m.FunctionVersionNo = strpVertionNo;
CoreResult crt = this.execute("com.hnshituo.pur.purplan.service.TaskMService", "setTaskListUpd", new object[] { m, TkR, al_Eva });
if (crt.Resultcode != 0)
{
MessageUtil.ShowTips("保存失败 " + crt.Resultmsg);
return;
}
MessageUtil.ShowTips("保存成功!");
this.Close();
}
///
/// 生成任务单
///
///
///
private void setTaskList()
{
if (CtrValidation())//非空验证
{
if (jy_negDate.Text == "")
{
MessageUtil.ShowTips("谈判日期不能为空!");
jy_negDate.Focus();
return;
}
if (ultraTextEditor2.Text.Trim() == "")
{
MessageUtil.ShowTips("成本分析不能为空!");
return;
}
if (ultraTextEditor3.Text.Trim() == "")
{
MessageUtil.ShowTips("市场预测不能为空!");
return;
}
if (ultraTextEditor4.Text.Trim() == "")
{
MessageUtil.ShowTips("物资使用情况不能为空!");
return;
}
if (ultraTextEditor5.Text.Trim() == "")
{
MessageUtil.ShowTips("评价不能为空!");
return;
}
string str = "";
str += "成本分析:" + ultraTextEditor2.Text + "\n";
str += "市场预测:" + ultraTextEditor3.Text + "\n";
str += "物资使用情况:" + ultraTextEditor4.Text + "\n";
str += "评价:" + ultraTextEditor5.Text + "\n";
str += "其他须说明:" + ultraTextEditor6.Text;
jy_procRecord.Text = str.Trim();
if (ultraGrid4.Rows.Count <= 0)
{
MessageUtil.ShowTips("评标人员不能为空");
return;
}
ultraGrid2.UpdateData();
ultraGrid3.UpdateData();
ultraGrid4.UpdateData();
//EntityPurPlanD mod_PurPlanD = new EntityPurPlanD();//采购计划,修改生成采购计划标志,1:未生成 2:已生成
PurTaskMEntity mod_PurTaskM = new PurTaskMEntity();//采购任务主表
//PurTaskCEntity mod_PurTaskC = new PurTaskCEntity();//采购任务跟踪表
//PurTaskSuppsEntity mod_PurTaskSupps = new PurTaskSuppsEntity();//采购任务供应商
ArrayList al_PurPlanD = new ArrayList();
ArrayList al_PurTaskSupps = new ArrayList();
ArrayList al_PurTaskC = new ArrayList();
ArrayList al_Eva = new ArrayList();
//生成采购任务主表
string strTaskName = "TPCO-GY" + QstrREQ_ORG_NAME;
strTaskName = this.execute("com.hnshituo.pur.utils.service.UtilsService", "getOddNumber", new object[] { "PUR_TASK_M", "TASK_ID", strTaskName, "3" });
mod_PurTaskM.TaskName = strTaskName + txt_TASK_NAME.Text;//任务名称
mod_PurTaskM.Validflag = "1";
if (isExsitRow("com.hnshituo.pur.purplan.service.TaskMService", mod_PurTaskM) > 0)
{
MessageUtil.ShowTips("任务单名称已存在,请重新输入");
return;
}
mod_PurTaskM.DeliveryCondition = cmb_DELIVERY_CONDITION.Value == null ? null : cmb_DELIVERY_CONDITION.Value.ToString();//运输条件
mod_PurTaskM.DeliveryType = ultcmb_ELIVERY_TYPE.Value == null ? null : ultcmb_ELIVERY_TYPE.Value.ToString();//运输方式
mod_PurTaskM.ReceiveType = cmb_RECEIVE_TYPE.Value == null ? null : cmb_RECEIVE_TYPE.Value.ToString();//接收方式
mod_PurTaskM.Remark = txt_REMARK.Text;//备注
string strMrId = ultraGrid2.Rows[0].Cells["MRLINEID"].Value.ToString();
mod_PurTaskM.MrId = strMrId.Substring(0, strMrId.IndexOf('-'));
if ((DateTime)(ultDt_OFFER_TIME_END.Value) <= System.DateTime.Now)
{
//mod_PurTaskM.Status = "1";//状态'1','未竞标','2','报价中','3','待开标','4','评标中','5','待供应商确认','6','待供应部确认','7','已确认','8','已关闭'
MessageUtil.ShowTips("报价结束时间不能<=当前时间");
return;
}
if ((DateTime)(ultDt_OFFER_TIME_END.Value) <= (DateTime)(ultDt_OFFER_TIME_START.Value))
{
MessageUtil.ShowTips("报价结束时间必须>=报价开始时间");
return;
}
mod_PurTaskM.Status = "18";//状态'1','未竞标','2','报价中','3','待开标','4','评标中','5','待供应商确认','6','待供应部确认','7','已确认','8','已关闭'
mod_PurTaskM.OfferTimeStart = DateTime.Parse(ultDt_OFFER_TIME_START.Value.ToString());
mod_PurTaskM.OfferTimeEnd = DateTime.Parse(ultDt_OFFER_TIME_END.Value.ToString());
mod_PurTaskM.FlowType = ultcmb_FLOW_TYPE.Value == null ? null : ultcmb_FLOW_TYPE.Value.ToString();
//mod_PurTaskM.PickMode = ultcmb_ELIVERY_TYPE.Value == null ? null : ultcmb_ELIVERY_TYPE.Value.ToString();//报价类型
mod_PurTaskM.CreateUserid = UserInfo.GetUserID();
mod_PurTaskM.CreateName = UserInfo.GetUserName();
mod_PurTaskM.CreateTime = System.DateTime.Now;
mod_PurTaskM.BuyerUnitCode = UserInfo.GetDeptid();
mod_PurTaskM.BuyerUnitDesc = UserInfo.GetDepartment();
mod_PurTaskM.Validflag = "1";
mod_PurTaskM.OperatorUserId = UserInfo.GetUserID();
//插入任务单供应商
string[] TaskSupps = new string[ultraGrid3.Rows.Count];
if (ultraGrid3.Rows.Count < 1)
{
TaskSupps = new string[1];
TaskSupps[0] = "--";
}
string[] TaskMats = new string[ultraGrid2.Rows.Count];
PurTaskMatSuppEntity TaskMatSuppEntity = new PurTaskMatSuppEntity();
//生成采购任务跟踪表和修改生成采购计划标志
for (int i = 0; i < ultraGrid2.Rows.Count; i++)
{
EntityPurPlanD mod_PurPlanD = new EntityPurPlanD();//采购计划,修改生成采购计划标志,1:未生成 2:已生成
mod_PurPlanD.FlagGeneratedPurPlan = "1";
mod_PurPlanD.MrLineId = ultraGrid2.Rows[i].Cells["MRLINEID"].Value.ToString();
PurTaskCEntity mod_PurTaskC = new PurTaskCEntity();//采购任务跟踪表
EntityPurPlanD mat_PurPlanD = this.execute("com.hnshituo.pur.purplan.service.PurPlanDService", "findById", new object[] { ultraGrid2.Rows[i].Cells["MRLINEID"].Value.ToString() });
mod_PurTaskC = EntityHelper.CopyEntity(mat_PurPlanD);
//mod_PurTaskC.PickQty = mat_PurPlanD.Qty;
double bPickQty = 0;
double.TryParse(ultraGrid2.Rows[i].Cells["PickQty"].Value.ToString(), out bPickQty);
mod_PurTaskC.PickQty = bPickQty;//任务单数量
mod_PurTaskC.AskDeliverDate = mat_PurPlanD.AskDeliverDate;
mod_PurTaskC.Remark = mat_PurPlanD.Remark;
mod_PurTaskC.PackageType = ultraGrid2.Rows[i].Cells["PackageType"].Value.ToString();//包装方式
mod_PurTaskC.PaymentCode = ultraGrid2.Rows[i].Cells["PaymentCode"].Value.ToString();//付款方式
//mod_PurTaskC.TaskLineId = Guid.NewGuid().ToString();
mod_PurTaskC.TaskId = mod_PurTaskM.TaskId;//任务编号
mod_PurTaskC.MrLineId = ultraGrid2.Rows[i].Cells["MRLINEID"].Value.ToString();//采购计划行号
mod_PurTaskC.Validflag = "1";
mod_PurTaskC.CreateName = UserInfo.GetUserName(); mod_PurTaskC.UpdateName = null;
mod_PurTaskC.CreateTime = System.DateTime.Now; mod_PurTaskC.UpdateTime = null;
TaskMats[i] = mod_PurTaskC.ItemCode;
al_PurPlanD.Add(mod_PurPlanD);
al_PurTaskC.Add(mod_PurTaskC);
}
TaskMatSuppEntity.TaskMats = TaskMats;
// 采购任务供应商
for (int i = 0; i < ultraGrid3.Rows.Count; i++)
{
PurTaskSuppsEntity mod_PurTaskSupps = new PurTaskSuppsEntity();//采购任务供应商
mod_PurTaskSupps.Id = Guid.NewGuid().ToString();
mod_PurTaskSupps.TaskId = mod_PurTaskM.TaskId;
mod_PurTaskSupps.SuppCode = ultraGrid3.Rows[i].Cells["SUPPCODE"].Value.ToString();
mod_PurTaskSupps.SuppName = ultraGrid3.Rows[i].Cells["SUPPNAME"].Value.ToString();
mod_PurTaskSupps.Validflag = "1";
mod_PurTaskSupps.CreateName = UserInfo.GetUserName();
mod_PurTaskSupps.CreateTime = System.DateTime.Now;
mod_PurTaskSupps.CreateUserid = UserInfo.GetUserID();
TaskSupps[i] = mod_PurTaskSupps.SuppCode;
al_PurTaskSupps.Add(mod_PurTaskSupps);
}
TaskMatSuppEntity.TaskId = mod_PurTaskM.TaskId;
TaskMatSuppEntity.Validflag = "1";
TaskMatSuppEntity.CreateName = UserInfo.GetUserName();
TaskMatSuppEntity.CreateUserid = UserInfo.GetUserID();
TaskMatSuppEntity.TaskSupps = TaskSupps;
// 采购任务评标人员
foreach (UltraGridRow ugr in ultraGrid4.Rows)
{
PurTaskEvaUsersEntity TaskEvaUsersEntity = new PurTaskEvaUsersEntity();
TaskEvaUsersEntity.Validflag = "1";
TaskEvaUsersEntity.TaskId = mod_PurTaskM.TaskId;
TaskEvaUsersEntity.CreateName = UserInfo.GetUserName();
TaskEvaUsersEntity.CreateUserId = UserInfo.GetUserID();
TaskEvaUsersEntity.CreateTime = System.DateTime.Now;
if (ultraGrid4.ActiveRow.Cells["EVAROLEID"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaRoleId = ugr.Cells["EVAROLEID"].Value.ToString();//角色Id
}
if (ultraGrid4.ActiveRow.Cells["EVAROLENAME"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaRoleName = ugr.Cells["EVAROLENAME"].Value.ToString();//角色名称
}
if (ultraGrid4.ActiveRow.Cells["EVAUSERID"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaUserid = ugr.Cells["EVAUSERID"].Value.ToString();//用户Id
}
if (ultraGrid4.ActiveRow.Cells["EVAUSERNAME"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaUsername = ugr.Cells["EVAUSERNAME"].Value.ToString();//用户名称
}
if (ultraGrid4.ActiveRow.Cells["EVAORGID"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaOrgId = ugr.Cells["EVAORGID"].Value.ToString();//科室Id
}
if (ultraGrid4.ActiveRow.Cells["EVAORGNAME"].Value.ToString().Trim() != "")
{
TaskEvaUsersEntity.EvaOrgName = ugr.Cells["EVAORGNAME"].Value.ToString();//科室名称
}
al_Eva.Add(TaskEvaUsersEntity);
}
//采购纪要
PurTaskRecordEntity TkR = new PurTaskRecordEntity();
TkR.Validflag = "1";
TkR.Status = "2";
TkR.CreateName = UserInfo.GetUserName();
TkR.CreateTime = DateTime.Now;
TkR.CreateUserid = UserInfo.GetUserID();
TkR.BuyerUserid = UserInfo.GetUserID();
TkR.BuyerUsername = UserInfo.GetUserName();
TkR.MngOrgId = UserInfo.GetDeptid();
TkR.MngOrgName = UserInfo.GetDepartment();
TkR.NegDate = Convert.ToDateTime(jy_negDate.Value);
TkR.TaskName = mod_PurTaskM.TaskName;
TkR.ProcRecord = jy_procRecord.Text.Trim();
if (ultraGrid3.Rows.Count < 1)
{
if (MessageUtil.ShowYesNoAndTips("任务单未添加供应商,是否继续生成?") == DialogResult.No)
{
return;
}
}
CoreResult crt = this.execute("com.hnshituo.pur.purplan.service.TaskMService", "setTaskList", new object[] { mod_PurTaskM, al_PurTaskC, al_PurTaskSupps, al_PurPlanD, al_Eva, TkR, TaskMatSuppEntity });
if (crt.Resultcode != 0)
{
MessageUtil.ShowTips("生成失败 " + crt.Resultmsg);
return;
}
MessageUtil.ShowTips("生成成功!任务名称:" + mod_PurTaskM.TaskName);
this.Close();
}
}
///
/// 移除供应商
///
///
///
private void ultraGrid3_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
{
dataTable3.Rows.RemoveAt(ultraGrid3.ActiveRow.Index);
MessageUtil.ShowTips("删除成功");
}
///
/// 删除评标人员
///
///
///
private void ultraGrid4_ClickCellButton(object sender, CellEventArgs e)
{
dataTable9.Rows.RemoveAt(e.Cell.Row.Index);
MessageUtil.ShowTips("删除成功");
}
///
/// 选中激活行
///
///
///
private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
{
}
///
/// 非空验证
///
private bool CtrValidation()
{
foreach (Control ctr in ultraGroupBox5.Controls)
{
if (string.IsNullOrEmpty(ctr.Text))
{
foreach (Control ctr_lb in ultraGroupBox5.Controls)
{
if (ctr_lb is Label && ctr_lb.Name.Contains(ctr.Name))
{
MessageUtil.ShowTips(ctr_lb.Text + "不能为空");
return false;
}
}
}
}
return true;
}
private void ultraGroupBox5_Click(object sender, EventArgs e)
{
}
///
/// 绑定下拉列表的数据
///
///
///
private void getUltcmbBindData()
{
//接收方式
DataTable dt = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1101" }, this.ob);
removeNotValiflagData(dt);
getUltcmbBindValueList(dt, cmb_RECEIVE_TYPE);
//运输条件
DataTable dt1 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1105" }, this.ob);
removeNotValiflagData(dt1);
getUltcmbBindValueList(dt1, cmb_DELIVERY_CONDITION);
//运输方式
DataTable dt2 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1102" }, this.ob);
removeNotValiflagData(dt2);
getUltcmbBindValueList(dt2, ultcmb_ELIVERY_TYPE);
//付款方式
DataTable dt3 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1104" }, this.ob);
removeNotValiflagData(dt3);
getUltcmbBindValueList(dt3, cmb_PAYMENT_CODE);
ultraGrid2.DisplayLayout.Bands[0].Columns["PAYMENTCODE"].EditorComponent=cmb_PAYMENT_CODE;
//包装方式
DataTable dt4 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1107" }, this.ob);
removeNotValiflagData(dt4);
getUltcmbBindValueList(dt4, cmb_PACKAGE_TYPE);
ultraGrid2.DisplayLayout.Bands[0].Columns["PACKAGETYPE"].EditorComponent = cmb_PACKAGE_TYPE;
//招标流程
DataTable dt5 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1228" }, this.ob);
removeNotValiflagData(dt5);
getUltcmbBindValueList(dt5, ultcmb_FLOW_TYPE);
Q_dtFLOW_TYPE = dt5;
//cmb_DELIVERY_CONDITION.Value=Qstr[0];//运输条件
//ultcmb_ELIVERY_TYPE.Value=Qstr[1];//运输方式
//cmb_RECEIVE_TYPE.Value = Qstr[2];//接收方式
}
///
/// 移除无效数据
///
///
private void removeNotValiflagData(DataTable dt)
{
for (int i = 0; i < dt.Rows.Count; )
{
if (dt.Rows[i]["VALIDFLAG"].ToString() == "0")
{
dt.Rows.RemoveAt(i);
}
else
{
i++;
}
}
}
///
/// 绑定所有的下拉列表的数据
///
private void getUltcmbBindValueList(DataTable dt, UltraComboEditor ultcmb)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
ValueListItem vlItem = new ValueListItem(dt.Rows[i]["BASECODE"].ToString().Trim(), dt.Rows[i]["BASENAME"].ToString().Trim());
ultcmb.Items.Add(vlItem);
}
}
///
/// 修改生成任务单数量限制
///
///
///
private void ultraGrid2_CellChange(object sender, CellEventArgs e)
{
if (e.Cell.Column.Key == "PICKQTY")
{
double bOldPickQty=0;
double.TryParse(e.Cell.Row.Cells["PickQty"].Value.ToString(), out bOldPickQty);//输入的任务单数量
ultraGrid2.UpdateData();
double bPickQty = 0;
double.TryParse(e.Cell.Row.Cells["PickQty"].Value.ToString(), out bPickQty);//输入的任务单数量
double bTaskQty = 0;
double.TryParse(e.Cell.Row.Cells["TaskQty"].Value.ToString(), out bTaskQty);//已生成任务单数量
double bQty = 0;
double.TryParse(e.Cell.Row.Cells["Qty"].Value.ToString(), out bQty);//采购数量
if (bPickQty > bQty - bTaskQty)
{
MessageUtil.ShowTips("填写的生成任务单数量不能>" + (bQty - bTaskQty) + "【采购数量(" + bQty + ")-已生成任务单数量(" + bTaskQty + ")】");
e.Cell.Row.Cells["PickQty"].Value = bOldPickQty;
}
}
}
///
/// 添加评标人员
///
///
///
private void ultraButton1_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(txt_EVA_ORG_ID.Text))
{
MessageUtil.ShowTips("请选择人员");
return;
}
if (string.IsNullOrEmpty(cmb_EVA_ROLE_NAME.Text))
{
MessageUtil.ShowTips("请选择角色");
return;
}
if (dataTable9.Rows.Contains(txt_EVA_USERID.Text))
{
MessageUtil.ShowTips("已经存在同一个人员,不要重复添加");
return;
}
else
{
DataRow dr = dataTable9.NewRow();
dr["EVAORGID"] = txt_EVA_ORG_ID.Text;
dr["EVAORGNAME"] = txt_EVA_ORG_NAME.Text;
dr["EVAUSERID"] = txt_EVA_USERID.Text;
dr["EVAUSERNAME"] = txt_EVA_USERNAME.Text;
dr["EVAROLEID"] = cmb_EVA_ROLE_NAME.Value;
dr["EVAROLENAME"] = cmb_EVA_ROLE_NAME.Text;
dataTable9.Rows.Add(dr);
MessageUtil.ShowTips("添加成功!");
//清空控件
txt_EVA_ORG_ID.Text = null;
txt_EVA_ORG_NAME.Text = null;
txt_EVA_USERID.Text = null;
txt_EVA_USERNAME.Text = null;
cmb_EVA_ROLE_NAME.Value = null;
}
}
///
/// 选择评标人员
///
///
///
private void txt_EVA_USERNAME_EditorButtonClick(object sender, EditorButtonEventArgs e)
{
SetectManByDept frm = new SetectManByDept(this.ob,this.UserInfo.GetDeptid());
frm.ShowDialog();
txt_EVA_ORG_ID.Text = frm.StrDeptId;
txt_EVA_ORG_NAME.Text = frm.StrDeptName;
txt_EVA_USERID.Text = frm.StrUserID;
txt_EVA_USERNAME.Text = frm.StrUserName;
}
///
/// 鼠标移入显示评标详细信息
///
///
///
private void ultraLabel1_MouseEnter(object sender, EventArgs e)
{
UltraToolTipInfo utti = new UltraToolTipInfo(ultraTextEditor1.Text, ToolTipImage.Info, "招标流程说明:", DefaultableBoolean.True);
ultraToolTipManager1.SetUltraToolTip(ultraLabel1, utti);
ultraToolTipManager1.AutoPopDelay = 10000;
}
///
/// 添加评标人员分组
///
///
///
private void btnSelEvaGroup_Click(object sender, EventArgs e)
{
frmPopSelEvaGroup frm = new frmPopSelEvaGroup(this.ob);
frm.ShowDialog();
if (frm.dtEvaGroup != null)
{
DataTable dt = frm.dtEvaGroup;
//移除目标表中没有的列
for (int i = 0; i < dt.Columns.Count;)
{
if (!dataTable9.Columns.Contains(dt.Columns[i].ColumnName))
{
dt.Columns.RemoveAt(i);
}
else
{
i++;
}
}
//添加评标人员
foreach (DataRow dr in dt.Rows)
{
if (!dataTable9.Rows.Contains(dr["EVAUSERID"]))
{
dataTable9.Rows.Add(dr.ItemArray);
}
}
}
}
///
/// 判断数据库中是否存在相同的列
///
///
///
/// true存在
public int isExsitRow(string strJavaPackName, object o)
{
DataTable dt = this.execute(strJavaPackName, "find", new object[] { o, 0, 0 });
if (dt != null && dt.Rows.Count > 0)//存在相同的行
{
return dt.Rows.Count;
}
return 0;
}
///
/// 批量修改支付方式
///
///
///
private void cmb_PAYMENT_CODE_ValueChanged(object sender, EventArgs e)
{
foreach (UltraGridRow ugr in ultraGrid2.Rows)
{
ugr.Cells["PAYMENTCODE"].Value = cmb_PAYMENT_CODE.Value;
}
}
///
/// 批量修改包装方式
///
///
///
private void cmb_PACKAGE_TYPE_ValueChanged(object sender, EventArgs e)
{
foreach (UltraGridRow ugr in ultraGrid2.Rows)
{
ugr.Cells["PACKAGETYPE"].Value = cmb_PACKAGE_TYPE.Value;
}
}
///
/// 初始化加载窗体
///
///
///
private void frm_PurTaskMUpd_Load(object sender, EventArgs e)
{
//加载当前科室的评标人员
//PurTaskEvaUsersEntity TaskEvaUsersEntity = new PurTaskEvaUsersEntity();
//TaskEvaUsersEntity.EvaOrgId = this.UserInfo.GetDeptid();
//TaskEvaUsersEntity.Validflag = "1";
//DataTable dt = this.execute("com.hnshituo.pur.purplan.service.ConfEvaUserService", "find", new object[] { TaskEvaUsersEntity, 0, 0 });
//GridHelper.CopyDataToDatatable(ref dt, ref dataTable9, true);
//评标人员角色
DataTable dt1 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1224" }, this.ob);
dt1.DefaultView.RowFilter = "Validflag='1'";
dt1 = dt1.DefaultView.ToTable();
cmb_EVA_ROLE_NAME.DataSource = dt1;
cmb_EVA_ROLE_NAME.DisplayMember = "BASENAME";
cmb_EVA_ROLE_NAME.ValueMember = "BASECODE";
//任务单
PurTaskMEntity ptm = this.execute("com.hnshituo.pur.purplan.service.TaskMService", "findById", new object[] { QstrTaskId });
//采购纪要
PurTaskRecordEntity TkR = new PurTaskRecordEntity();
TkR.TaskId = QstrTaskId;
TkR.Validflag = "1";
DataTable dt = this.execute("com.hnshituo.pur.purplan.service.TaskRecordService", "find", new object[] { TkR,0,0 });
if (dt.Rows.Count > 0)
{
getBoxValue(ptm, dt.Rows[0]);
}
this.Text = "修改任务单【" + QstrTaskId + "】";
//如果状态为已审批,则不能修改评标人员
//string strStatus = comm.strStatu(this.ob, "com.hnshituo.pur.purplan.service.TaskMService", QstrTaskId);
if(ptm.Status=="20")
{
ultraGrid4.DisplayLayout.Bands[0].Columns["btnDel"].Hidden = true;
ultraButton1.Enabled = false;
btnSelEvaGroup.Enabled = false;
}
ultraGrid2.DisplayLayout.Bands[0].Columns["askdeliverdate"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.Date;
jy_type.SelectedIndex = 0;
}
private void getBoxValue(PurTaskMEntity ptm,DataRow dr)
{
cmb_RECEIVE_TYPE.Text = ptm.ReceiveType == null ? null : ptm.ReceiveType.ToString();//接收方式
ultcmb_ELIVERY_TYPE.Value = ptm.DeliveryType == null ? null : ptm.DeliveryType.ToString();//运输方式
cmb_DELIVERY_CONDITION.Text = ptm.DeliveryCondition == null ? null : ptm.DeliveryCondition.ToString();//运输条件
txt_REMARK.Text = ptm.Remark == null ? null : ptm.Remark.ToString();//备注
txt_TASK_NAME.Text = ptm.TaskName == null ? null : ptm.TaskName.ToString();//任务名称
txt_FUNCTION_VERSION_NO.Text = ptm.FunctionVersionName;
strpVertionNo = ptm.FunctionVersionNo;
txt_TASK_ID.Text = ptm.TaskId == null ? null : ptm.TaskId.ToString();//任务单号
ultDt_OFFER_TIME_END.Value = ptm.OfferTimeEnd;//报价结束时间
ultDt_OFFER_TIME_START.Value = ptm.OfferTimeStart;//报价开始时间
ultcmb_FLOW_TYPE.Text = ptm.FlowType == null ? null : ptm.FlowType.ToString();//招标流程
//采购纪要
QstrRecordId = dr["ID"].ToString();
jy_negDate.Value = dr["NegDate"];
string[] strProcRecord = dr["ProcRecord"].ToString().Split('\n');
if (strProcRecord.Length == 5)
{
ultraTextEditor2.Text = strProcRecord[0].Remove(0, "成本分析:".Length);
ultraTextEditor3.Text = strProcRecord[1].Remove(0, "市场预测:".Length);
ultraTextEditor4.Text = strProcRecord[2].Remove(0, "物资使用情况:".Length);
ultraTextEditor5.Text = strProcRecord[3].Remove(0, "评价:".Length);
ultraTextEditor6.Text = strProcRecord[4].Remove(0, "其他须说明:".Length);
}
//str += "成本分析:" + ultraTextEditor2.Text + "\n";
//str += "市场预测:" + ultraTextEditor3.Text + "\n";
//str += "物资使用情况:" + ultraTextEditor4.Text + "\n";
//str += "评价:" + ultraTextEditor5.Text + "\n";
//str += "其他须说明:" + ultraTextEditor6.Text;
}
private void txt_FUNCTION_VERSION_NO_EditorButtonClick(object sender, EditorButtonEventArgs e)
{
frmPop_BID_FUNCTION frm = new frmPop_BID_FUNCTION(this.ob);
frm.ShowDialog();
string strName = frm.strSelName;
if (string.IsNullOrEmpty(strName))
{ return; }
txt_FUNCTION_VERSION_NO.Text = strName;
strpVertionNo = frm.strSelId;
}
}
}