/// <summary> /// 人员采集 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonX3_Click_1(object sender, EventArgs e) { if (!checkValid) { return; } string activity = ddlActivity.SelectedValue.ToString().Split(',')[0]; string type = string.Empty; try { type = ddlType.SelectedValue.ToString(); } catch { type = "0"; } if (activity == "0") { MessageBox.Show("请选择一个活动!"); } else if (type == "0") { MessageBox.Show("请选择一个工种!"); } else if (string.IsNullOrEmpty(identity)) { MessageBox.Show("没有检测到打卡人!"); } else { List <SqlParameter> list = new List <SqlParameter>(); list.Add(new SqlParameter("@identity", identity)); //获取小时工信息 DataTable userInfo = SqlDbHelper.ExecuteDataTable("SELECT f_userid,F_RealName,F_Gender FROM LR_Base_TempUser WHERE F_Identity=@identity", list.ToArray()); int num = 0; string userID = string.Empty; if (userInfo != null && userInfo.Rows.Count > 0) { list = new List <SqlParameter>(); list.Add(new SqlParameter("@orderID", activity)); list.Add(new SqlParameter("@userID", userInfo.Rows[0]["f_userid"].ToString())); userID = userInfo.Rows[0]["f_userid"].ToString(); num = Convert.ToInt32(SqlDbHelper.ExecuteScalar("SELECT COUNT(*) AS num FROM F_Base_TempWorkOrderUserDetail WHERE F_TempWorkOrderId=@orderID AND f_userID=@userID", list.ToArray()).ToString()); } else { userID = Guid.NewGuid().ToString(); List <SqlParameter> usersParameter = new List <SqlParameter>(); usersParameter.Add(new SqlParameter("@F_RealName", label2.Text)); usersParameter.Add(new SqlParameter("@F_Gender", label3.Text == "男" ? "1" : "2")); usersParameter.Add(new SqlParameter("@F_Mobile", txtPhone.Text)); usersParameter.Add(new SqlParameter("@f_userid", userID)); usersParameter.Add(new SqlParameter("@F_Identity", identity)); SqlDbHelper.ExecuteNonQuery("INSERT LR_Base_TempUser(f_userid,F_RealName,F_Gender,f_createtime,F_Mobile,F_Identity) VALUES(@f_userid,@F_RealName,@F_Gender,GETDATE(),@F_Mobile,@F_Identity)", usersParameter.ToArray()); list = new List <SqlParameter>(); list.Add(new SqlParameter("@orderID", activity)); list.Add(new SqlParameter("@userID", userID)); num = Convert.ToInt32(SqlDbHelper.ExecuteScalar("SELECT COUNT(*) AS num FROM F_Base_TempWorkOrderUserDetail WHERE F_TempWorkOrderId=@orderID AND f_userID=@userID", list.ToArray()).ToString()); } if (num > 0) { MessageBox.Show("人员在活动里已存在!"); } else { list = new List <SqlParameter>(); list.Add(new SqlParameter("@orderID", activity)); list.Add(new SqlParameter("@userID", userID)); list.Add(new SqlParameter("@f_id", Guid.NewGuid().ToString())); list.Add(new SqlParameter("@f_employerid", ddlActivity.SelectedValue.ToString().Split(',')[1])); list.Add(new SqlParameter("@f_categoryid", type)); //添加小时工与活动对应关系 SqlDbHelper.ExecuteNonQuery("INSERT F_Base_TempWorkOrderUserDetail(f_id,F_TempWorkOrderId,f_userid,f_employerid,f_categoryid,F_WorkSubstitute) VALUES(@f_id,@orderID,@userID,@f_employerid,@f_categoryid,0)", list.ToArray()); //--------------------------往打卡记录表中初始经小时工打卡记录------------------------------ list = new List <SqlParameter>(); list.Add(new SqlParameter("@orderID", activity)); //获取活动的开始和结束时间 DataTable dt = SqlDbHelper.ExecuteDataTable("SELECT * FROM F_Base_TempWorkOrder WHERE f_orderid=@orderID", list.ToArray()); DateTime startTime = DateTime.Parse(dt.Rows[0]["F_StartTime"].ToString()); DateTime endTime = DateTime.Parse(dt.Rows[0]["F_EndTime"].ToString()); for (DateTime t = startTime; t <= endTime; t = t.AddDays(1)) { list = new List <SqlParameter>(); list.Add(new SqlParameter("@orderID", activity)); list.Add(new SqlParameter("@RecordId", Guid.NewGuid().ToString())); list.Add(new SqlParameter("@Identity", identity)); list.Add(new SqlParameter("@CreateTime", t)); list.Add(new SqlParameter("@RealName", label2.Text.Trim())); list.Add(new SqlParameter("@Gender", label3.Text.Trim() == "男" ? "1" : "2")); list.Add(new SqlParameter("@RecordDate", t.ToString("yyyy-MM-dd"))); //自动给临时工往打卡记录里初始化打卡记录 int a = SqlDbHelper.ExecuteNonQuery("INSERT LR_Base_CardRecord(F_RecordId,F_Identity,F_CreateTime,F_RealName,F_Gender,F_OrderId,F_RecordDate) VALUES (@RecordId,@Identity,@CreateTime,@RealName,@Gender,@orderID,@RecordDate)", list.ToArray()); } } identity = string.Empty; } }