You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3643 lines
165 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CentralControl.BaseData;
using CommonFunc;
using LanJuLib;
using System.Data;
using System.Data.SqlClient;
using MySql.Data.MySqlClient;
using CommonFunc.Tools;
using XGL.Models.Model;
using XGL.Models;
using XGL.Models.Model.OrderPrepare;
namespace XGL.Dats.DBServiceFinishProd
{
public class FinishProdDBService
{
/// <summary>
/// 得到一个对象实体集合
/// </summary>
public static List<CarProduct> GetCarProductList(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select");
strSql.Append(" id, carNo, productNo, productNm, IsDeleted, DATE_FORMAT(CreateTime,'%Y-%m-%d %H:%i:%s') CreateTime, CreateId, CreateBy, DATE_FORMAT(ModifyTime,'%Y-%m-%d %H:%i:%s') ModifyTime, ModifyId, ModifyBy");
strSql.Append(" from data_carproduct");
if (!string.IsNullOrWhiteSpace(strWhere))
strSql.Append(" where " + strWhere);
List<CarProduct> Items = new List<CarProduct>();
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
if (ds.Tables[0].Rows.Count > 0)
{
foreach (DataRow row in ds.Tables[0].Rows)
{
CarProduct model = new CarProduct();
if (row["id"] != DBNull.Value)
{
model.id = Convert.ToInt32(row["id"]);
}
if (row["carNo"] != DBNull.Value)
{
model.carNo = Convert.ToString(row["carNo"]);
}
if (row["productNo"] != DBNull.Value)
{
model.productNo = Convert.ToString(row["productNo"]);
}
if (row["productNm"] != DBNull.Value)
{
model.productNm = Convert.ToString(row["productNm"]);
}
if (row["IsDeleted"] != DBNull.Value)
{
model.IsDeleted = row["IsDeleted"].ToString() == "False" ? false : true;
}
if (row["CreateTime"] != DBNull.Value)
{
model.CreateTime = Convert.ToString(row["CreateTime"]);
}
if (row["CreateId"] != DBNull.Value)
{
model.CreateId = Convert.ToInt32(row["CreateId"]);
}
if (row["CreateBy"] != DBNull.Value)
{
model.CreateBy = Convert.ToString(row["CreateBy"]);
}
if (row["ModifyTime"] != DBNull.Value)
{
model.ModifyTime = Convert.ToString(row["ModifyTime"]);
}
if (row["ModifyId"] != DBNull.Value)
{
model.ModifyId = Convert.ToInt32(row["ModifyId"]);
}
if (row["ModifyBy"] != DBNull.Value)
{
model.ModifyBy = Convert.ToString(row["ModifyBy"]);
}
Items.Add(model);
}
}
return Items;
}
/// <summary>
/// 刷卡功能变更为取pe_snr的值
/// </summary>
/// <param name="userID"></param>
/// <returns></returns>
public DataTable GetUserInfoFromCloudServer(string userID)
{
string sql = $@"SELECT user_name,nick_name,sex FROM [dbo].[sys_user] where del_flag = '0' and pe_snr like '%{userID}%'";
DataSet dtset = Utils.cloudDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 刷卡功能用户编码打卡
/// </summary>
/// <param name="userID"></param>
/// <returns></returns>
public DataTable GetUserCodeServer(string userID)
{
string sql = $@"SELECT user_name,nick_name,sex FROM [dbo].[sys_user] where del_flag = '0' and user_name = '{userID}'";
DataSet dtset = Utils.cloudDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 找出所有的打卡人员
/// </summary>
/// <param name="userID"></param>
/// <returns></returns>
public DataTable GetUserCodeServerAll()
{
string sql = $@"SELECT user_name,nick_name,sex FROM [dbo].[sys_user] where del_flag = '0'";
DataSet dtset = Utils.cloudDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public bool InsertAttendanceRecord(string userID, string userName, string sex, string deviceCode)
{
string attendanceTime = LoginUser.Start_Time + "-" + LoginUser.End_Time;
string sql = $@" INSERT INTO [dbo].[mes_attendance_records]
([id], [user_id], [user_name], [attendance_status], [sex], [age],
[id_number], [start_time], [start_addr], [end_time], [end_addr], [attendance_time],
[attendance_date], [work_hours], [create_time])
VALUES
('{Common.GetUUID()}', '{userID}', '{userName}', '正常', '{sex}', 18,
null, GetDate(), '{deviceCode}', null, null, '{attendanceTime}',
CONVERT(VARCHAR(10), GetDate() , 120), 0, GetDate());";
int ret = Utils.netClientDBHelper.executeUpdate(sql);
return ret > 0 ? true : false;
}
public bool UpdateAttendanceRecord(string userID, string deviceCode)
{
string sql = $@"
UPDATE mes_attendance_records
SET end_time = GETDATE(),
end_addr = '{deviceCode}',
work_hours = CONVERT(DECIMAL(12,2), DATEDIFF(MINUTE, start_time, GETDATE()) / 60.00)
WHERE user_id = '{userID}'
AND start_addr = '{deviceCode}'
AND start_time = (
SELECT MAX(start_time)
FROM mes_attendance_records
WHERE user_id = '{userID}'
AND start_addr = '{deviceCode}'
)";
int ret = Utils.netClientDBHelper.executeUpdate(sql);
return ret > 0 ? true : false;
}
public DataTable GetAttendanceRecord(string v,string data)
{
string sql = $@"SELECT
id,
user_id,
user_name,
attendance_status,
sex,
age,
id_number,
start_time,
start_addr,
end_time,
end_addr,
attendance_time,
attendance_date,
work_hours,
create_time,
CONVERT(DECIMAL(12, 2),
CASE
WHEN end_time IS NOT NULL THEN DATEDIFF(MINUTE, start_time, end_time) / 60.00
ELSE DATEDIFF(MINUTE, start_time, GetDate()) / 60.00
END) AS diff
FROM
mes_attendance_records
WHERE
start_addr = '{v}'
AND create_time BETWEEN '{data} 00:00:00' AND '{data} 23:59:59'
ORDER BY
create_time DESC;
";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetExistAttendanceRecord(string v)
{
//不会存在一个人俩个班次工作的情况
string sql = $@" select id, user_id, user_name, attendance_status, sex, age,
id_number, start_time, start_addr, end_time, end_addr, attendance_time,
attendance_date, work_hours, create_time
from mes_attendance_records where attendance_date = CONVERT(VARCHAR(10), GetDate() , 120)";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetOperationRecord(string v)
{
string sql = $" select user_id,user_name,operation_type,operation_time,operation_desc,old_value,new_value,device_code,remark,order_code from mes_operation_log where device_code = '{v}' order by operation_time desc";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetOperationShouJian(string v,string work)
{
string sql = $" SELECT bat.batch_code,bat.qc_result,bat.update_time,ordee.product_code,product_name,ordee.shift_id FROM pro_order_workorder_batch bat LEFT JOIN pro_order_workorder ordee on bat.workorder_id=ordee.workorder_id WHERE bat.qc_status=2 AND (bat.update_time>'{v} 00:00:00' AND bat.update_time< '{v} 23:59:59') AND ordee.workorder_name='{work}' AND ordee.product_date='{v}' ORDER BY bat.update_time ";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetCompleteHistoryList(string deviceCode)
{
string sql = $@"select
report_type, report_code, workorder_code, product_code, product_name,
spec, unit, quantity, quantity_feedback, quantity_qualified, quantity_unqualified,
user_name, nick_name, feedback_channel, feedback_time, record_user, status,
remark, work_time, machine_code, machine_name, team_code, shift_code,
create_by, create_time, update_time, update_by, upload_time, upload_status,
upload_msg, prod_type, use_man, work_center
from mes_report_work
where CONVERT(VARCHAR(10), create_time , 120)= CONVERT(VARCHAR(10), '{LoginUser.WorkDate}' , 120) and machine_code = '{deviceCode}'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetCosumeData(string workorder)
{
string sql = $@"select DISTINCT '0' as qty,'' as remark, pre.workorder_code, SUBSTRING(material_code, 8, LEN(material_code)) as material_code1,material_code,material_name,detail.prod_type,material_spc,detail.unit,quantity,
detail.create_by,detail.create_time,detail.update_by,detail.update_time,locator,need_date,
recoil,fund_quanlity,detail.del_flag,parent_work_order,detail.attr1,orders.workorder_code_sap
from mes_prepare_detail detail
LEFT JOIN mes_prepare pre on detail.prepare_id = pre.prepare_id
left join pro_order_workorder orders on pre.workorder_code = orders.workorder_code and orders.del_flag = '0'
where detail.parent_work_order ='{workorder}' and detail.del_flag = '0'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetCostCenter()
{
string sql = $"select factory_code,factory_name from sys_factory where f_type = 'c'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
//根据线体查询成本中心
public DataTable GetCostCenter(string deviceCode)
{
string sql = $"SELECT workshop_code as factory_code,workshop_name as factory_name FROM [dbo].[base_equipment] where equipment_code = '{deviceCode}';";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable piciGetCostCenter(string workorder)
{
string sql = $" SELECT batch_code FROM pro_order_workorder_batch WHERE workorder_id='{workorder}' AND del_flag='0'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 查询订单报工次数
/// </summary>
/// <param name="workorder"></param>
/// <returns></returns>
public DataTable GetBatchReportedCount(string workorder)
{
//string sql = $" select count(*) from mes_report_work where workorder_code = '{workorder}' AND del_flag='0'";
string sql = $@"select count(distinct batch) from mes_report_work where workorder_code = '{workorder}' AND del_flag='0';";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public bool IsLastBatchReport(string batchNo)
{
//string sql = $" select count(*) from mes_report_work where workorder_code = '{workorder}' AND del_flag='0'";
string sql = $@"select count(distinct batch) from mes_report_work where batch = '{batchNo}' AND del_flag='0';";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0].Rows[0][0].ToString().Equals("0") ? true : false;
}
return true;
}
public DataTable GetFactoryInfo(string sitecode)
{
string sql = $"select factory_name from sys_factory where factory_code = '{sitecode}'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 设置系统配置字段
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int SetSystemConfigItem(string settingno, string val)
{
string sql = " update basedata_systemconfig set settingval='" + val + "' where settingno='" + settingno + "' ; ";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 得到一个对象实体集合
/// </summary>
public static List<MaterialBom> GetMaterialBomList(string strWhere, List<MaterialInfo> mlist)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select ");
strSql.Append(" Id, materiel_finish_no, materiel_box_no, Version, is_delete, DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:%s') CreateTime,");
strSql.Append(" create_id CreateId, create_by CreateBy, DATE_FORMAT(modify_time, '%Y-%m-%d %H:%i:%s') ModifyTime, modify_id ModifyId, modify_by ModifyBy ");
strSql.Append("from base_materialinfobom");
if (!string.IsNullOrWhiteSpace(strWhere))
strSql.Append(" where " + strWhere);
List<MaterialBom> Items = new List<MaterialBom>();
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
if (ds.Tables[0].Rows.Count > 0)
{
foreach (DataRow row in ds.Tables[0].Rows)
{
MaterialBom model = new MaterialBom();
if (row["Id"] != DBNull.Value)
{
model.Id = row["Id"].ToString();
}
if (row["materiel_finish_no"] != DBNull.Value)
{
model.MaterialNo = Convert.ToString(row["materiel_finish_no"]);
model.ParentMaterialInfo = mlist.FirstOrDefault(t => t.MaterialNo == model.MaterialNo);
}
if (row["GateMaterialNo"] != DBNull.Value)
{
model.ChildMaterialNo = Convert.ToString(row["GateMaterialNo"]);
model.ChildMaterialInfo = mlist.FirstOrDefault(t => t.MaterialNo == model.ChildMaterialNo);
}
if (row["Version"] != DBNull.Value)
{
model.Version = Convert.ToString(row["Version"]);
}
Items.Add(model);
}
}
return Items;
}
/// <summary>
/// 获取系统配置字段
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static string GetSystemConfigItem(string settingno)
{
string sql = " select settingval from basedata_systemconfig where settingno='" + settingno + "' ; ";
return DbHelperSQLServer.ExecuteScalar(sql).ToString();
}
/// <summary>
/// 获取库位内物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int GetClearMaterial(string where)
{
string sql = " update basedata_carrealinfo set materialno='',materialbarno='' ; ";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
public static void NightClearOldData()
{
string sql =
@"delete from basedata_offlinemateriallist where createtime <'" + DateTime.Now.AddDays(-1) + @"';
delete from basedata_offlinemateriallist_his where createtime < '" + DateTime.Now.AddDays(-7) + @"';
delete from sysnotices where createtime < '" + DateTime.Now.AddDays(-7) + @"';
delete from basedata_uplinescancarlist where createtime < '" + DateTime.Now.AddDays(-7) + @"';
delete from basedata_uplinemateriallist where createtime < '" + DateTime.Now.AddDays(-7) + @"';
delete from sysconfig_operatelog where createtime < '" + DateTime.Now.AddDays(-7) + @"';
delete from basedata_productinfo where createtime < '" + DateTime.Now.AddDays(-7) + @"';
";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
}
/// <summary>
/// 获取库位内分配物料明细
/// 获取库位内分配物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int CleartLineAreaMaterial(string where)
{
string sql = " update basedata_linecatcharea set MaterialNo='' where areatype=4 ";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 获取库位内分配物料明细
/// 获取库位内分配物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int SetLineAreaMaterial(int lineareaid, string materialno, string materialnm)
{
string sql = " update basedata_linecatcharea set MaterialNo='" + materialno + "',MaterialNm='" + materialnm + "' where id=" + lineareaid;
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 获取库位内物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static bool GetDBTime(string where)
{
string sql = @"select now();";
object obj = DbHelperSQLServer.ExecuteScalar(sql);
if (obj != null)
{
return true;
}
return false;
}
/// <summary>
/// 获取库位内物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int ClearScanOffMaterialDetailList()
{
string sql = @"delete from basedata_offlinemateriallist_detail;";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 获取库位内物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static DataTable GetOffLocatorMaterialView(string where)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @"
select a.TrayCode,a.ProductBarNo,a.carcode,a.createtime,a.lineno,b.HadNumber
from basedata_offlinemateriallist a left join basedata_carrealinfo b on a.carcode=b.carno
where a.IsDeleted=0 order by a.createtime
";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetUnitList()
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.OutWareHouseQuantity FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.est>=date_sub(curdate(),interval 1 day) and a.IsOver=0 order by a.line_code,a.est ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetUnitList_new()
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,a.prod_desc,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.OutWareHouseQuantity,a.production_sequence FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.est>=date_sub(curdate(),interval 1 day) and a.IsOver=0 order by a.line_code,a.est,a.production_sequence ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取库区和路途中库存信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetWareHouseList_new_new()
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT materiel_no materielNo,SUM(materiel_num) materielNum,'库中' carStatus FROM base_cararea
where 1=1 and materiel_no <>''
GROUP BY materielNo
union
SELECT materiel_no materielNo,sum(materiel_num) materielNum,'队列' carStatus FROM base_waitdownline
group by materielNo
UNION
select '总计' materielNo, (SELECT IFNULL(SUM(IFNULL(materiel_num,0)),0) materielNum FROM base_cararea where 1 = 1 and materiel_no<>'')+(SELECT IFNULL(sum(IFNULL(materiel_num,0)),0) materielNum FROM
base_waitdownline ) materielNum,'总计' carStatus ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取工单信息
/// </summary>
/// <returns></returns>
public DataTable GetWorkOrderList()
{
string sql = @"SELECT DISTINCT
t1.workorder_code WorkOrderCode,
t1.order_code OrderCode,
t1.product_name ProductName,
t1.product_spc ProductSpc,
t1.quantity_split QuantitySplit,
STUFF(
( SELECT ',' + t2.batch_code FROM pro_order_workorder_batch t2 WHERE t1.workorder_id = t2.workorder_id FOR XML PATH ( '' ) ),
1,
1,
''
) AS BatchCode
FROM
pro_order_workorder t1
INNER JOIN pro_order_workorder_batch t2 ON t1.workorder_id = t2.workorder_id
AND t1.status = 'w1'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetWetPlanInfo(string deviceCode, string date)
{
string sql = $@"select workorder.factory_code,workorder.product_date as plan_time, workorder.workorder_id,workorder.workorder_code, product_code,product_name,
product_spc,shifts.shift_desc,prod_line_code,workorder.status,route_code,quantity_split,
workorder.unit,workorder.shift_id ,batch.batch_code,batch.batch_quantity,sort_no, workorder.parent_order,batch.qc_status,isnull(batch.qc_result,'') qc_result,batch.status as batchStatus,workorder_code_sap,salary_flag,qty.batchQty,batch.batch_quantity - qty.batchQty as diffQty, chack.create_time,
chack.check_status
from pro_order_workorder workorder WITH (NOLOCK)
left JOIN base_shifts_t shifts WITH (NOLOCK) on workorder.shift_id = shifts.shift_id
left JOIN pro_order_workorder_batch batch WITH (NOLOCK) on workorder.workorder_id = batch.workorder_id
LEFT JOIN ( SELECT * FROM qc_check_task WHERE check_type='checkTypeCPPC' AND del_flag =0) chack ON workorder.workorder_code = chack.order_no AND batch.batch_code = chack.income_batch_no
left join (SELECT sum(quantity_feedback) as batchQty,workorder_code,batch FROM [dbo].[mes_report_work] where del_flag = 0 GROUP BY workorder_code,batch) qty on qty.workorder_code = workorder.workorder_code and batch.batch_code = qty.batch
where 1=1 and batch.del_flag = 0 and workorder.del_flag = 0 and
workorder.parent_order ='0' and CONVERT(VARCHAR(10), workorder.product_date , 120)= CONVERT(VARCHAR(10), '{date}' , 120) and workorder.prod_line_code like '%{deviceCode}%' order by sort_no,batch_code";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 根据线体、产品获取工序列表
/// </summary>
/// <param name="deviceCode"></param>
/// <param name="date"></param>
/// <returns></returns>
public DataTable GetProductStepListInfo(string deviceCode, string productCode)
{
string sql = $@"SELECT childprocess_code,childprocess_name,attr1 FROM [dbo].[mes_unit_price]
where product_code = '{productCode.Replace("0000000","")}' and line_code = '{deviceCode}' ORDER BY childprocess_code";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetSubOrderInfo(string workorderID)
{
string sql = $@"select workorder.factory_code,workorder.product_date as plan_time, workorder.workorder_id,workorder.workorder_code, product_code,product_name,
product_spc,shifts.shift_desc,prod_line_code,workorder.status,route_code,quantity_split,unit,workorder.shift_id
from pro_order_workorder workorder
left JOIN base_shifts_t shifts on workorder.shift_id = shifts.shift_id
where 1=1 and
workorder.parent_order ='{workorderID}'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 根据线体、产品获取工序列表
/// </summary>
/// <param name="deviceCode"></param>
/// <param name="date"></param>
/// <returns></returns>
public DataTable GetUnitPriceData(string deviceCode ,string sheredata)
{
string sql = $@"select [workorder_code], [workorder_code_sap], [product_name], SUBSTRING([product_code], 8, LEN(product_code)) as product_code, [user_name], [nick_name], [childprocess_code], [childprocess_name] ,[create_by], [create_time], [line_code] ,[attr1],[attr2]
from mes_unitprice_report
where line_code = '{deviceCode}' AND create_time BETWEEN '{sheredata} 00:00:00' AND '{sheredata} 23:59:59' ORDER BY childprocess_code,create_time";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public string GetUsernumbereData(string deviceCode)
{
string sql = $@"SELECT COALESCE(CAST(SUM(quantity_feedback) / SUM(use_man) AS INT), 0) as total_quantity
FROM mes_report_work
WHERE parent_order = '{deviceCode}' and del_flag='0';
";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
DataTable dt = dtset.Tables[0];
return dt.Rows[0]["total_quantity"].ToString();
}
return null;
}
/// <summary>
/// 根据线体、产品获取工序列表
/// </summary>
/// <param name="deviceCode"></param>
/// <param name="date"></param>
/// <returns></returns>
public DataTable GetUnitPriceDataNew(string deviceCode)
{
string sql = $@"select [workorder_code], [workorder_code_sap], [product_name], SUBSTRING([product_code], 8, LEN(product_code)) as product_code, [user_name], [nick_name], [childprocess_code], [childprocess_name] ,[create_by], [create_time], [line_code]
from mes_unitprice_report
where line_code = '{deviceCode}' and CONVERT(VARCHAR(10), Create_time , 120) = CONVERT(VARCHAR(10),GETDATE(), 120) ORDER BY childprocess_code,create_time";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 生成计件薪酬数据
/// </summary>
/// <param name="item"></param>
/// <exception cref="NotImplementedException"></exception>
public string GetCreateUnitPriceInfo(sys_user item,string workorderCode, string sapWorkorderCode,string productCode,string productName,string childProcessCode,string childProcessName,string deviceCode,string number,string credata,string attr2)
{
string sql = $@"INSERT INTO [dbo].[mes_unitprice_report] (
[id],[workorder_code], [workorder_code_sap], [product_name], [product_code],
[user_name], [nick_name], [childprocess_code], [childprocess_name], [attr1],
[attr2], [attr3], [create_by], [create_time], [update_by],
[update_time], [remark] ,[line_code]
)
VALUES
(
'{Common.GetUUID()}', '{workorderCode}','{sapWorkorderCode}', '{productName}', '{productCode}',
N'{item.user_name}', N'{item.nick_name}', N'{childProcessCode}', N'{childProcessName}',' {number}',
{attr2}, NULL, '{LoginUser.UserName}', '{credata} 00:00:00', NULL,
NULL, NULL,'{deviceCode}' );";
return sql;
}
public DataSet GetSapCode(string deviceCode)
{
string sapCodeSql = $"select sap_code from base_equipment where equipment_code = '{deviceCode}'";
string sapCode = "";
DataSet dtSapCode = Utils.netClientDBHelper.getDataSet(sapCodeSql);
if (dtSapCode != null && dtSapCode.Tables.Count > 0 && dtSapCode.Tables[0].Rows.Count > 0)
{
sapCode = dtSapCode.Tables[0].Rows[0]["sap_code"].ToString();
return dtSapCode;
}
return null;
}
public List<sys_user> GetOnWorkUserList(string deviceCode,string shereDate)
{
string sql = $"WITH RankedRecords AS (\r\n SELECT \r\n user_id as user_name,\r\n user_name as nick_name,\r\n sex,\r\n age,\r\n create_time,\r\n ROW_NUMBER() OVER (PARTITION BY user_name ORDER BY create_time DESC) as rn\r\n FROM [dbo].[mes_attendance_records]\r\n WHERE start_addr = '{deviceCode}' \r\n AND create_time BETWEEN '{shereDate} 00:00:00' AND '{shereDate} 23:59:59'\r\n)\r\nSELECT \r\n user_name,\r\n nick_name,\r\n sex,\r\n age,\r\n create_time\r\nFROM RankedRecords\r\nWHERE rn = 1\r\nORDER BY create_time DESC;";
DataTable dt = Utils.netClientDBHelper.getDataSet(sql).Tables[0];
var lst = Utils.ToDataList<sys_user>(dt);
if (lst.Count > 0)
{
return lst;
}
return null;//lst.Count > 0 ? true : false;
}
public string GetUpdateUnitPriceSql(string workOrderCode)
{
string updateOrderSql = $@"update pro_order_workorder set salary_flag = '1', update_by = '{LoginUser.UserName}',update_time = GETDATE() where workorder_code = '{workOrderCode}' ";
return updateOrderSql;
}
public bool ExecuteCreateUnitPriceSql(List<string> reportWorkSqlList)
{
bool issucc = Utils.netClientDBHelper.executeBatchSql(reportWorkSqlList);
return issucc;
}
public bool IsExistData(string workOrderCode, string childprocessCode, string deviceCode)
{
string sql = $@"select * from mes_unitprice_report where line_code = '{deviceCode}' and workorder_code = '{workOrderCode}' and childprocess_code = '{childprocessCode}'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return true;
}
return false;
}
public bool DelUnitPriceData(string workOrderCode, string childprocessCode, string deviceCode)
{
string sql = $@"delete mes_unitprice_report where line_code = '{deviceCode}' and workorder_code = '{workOrderCode}' and childprocess_code = '{childprocessCode}'";
int i = Utils.netClientDBHelper.executeUpdate(sql);
bool issucc = i > 0 ? true : false;
return issucc;
}
public string GetDelUnitPriceData(string workOrderCode, string childprocessCode, string deviceCode)
{
string sql = $@"delete mes_unitprice_report where line_code = '{deviceCode}' and workorder_code = '{workOrderCode}' and childprocess_code = '{childprocessCode}'";
return sql;
}
public List<BaseEquipment> GeteqmentInfo()
{
List<BaseEquipment> baseeqlist = new List<BaseEquipment>();
string sql = $@"SELECT * FROM base_equipment WHERE 1=1";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
var dt = dtset.Tables[0]; // 请注意,这只是一个示例,您可以循环遍历所有行
foreach (DataRow row in dt.Rows)
{
BaseEquipment equipment = new BaseEquipment
{
EquipmentId = row[0] != DBNull.Value ? Convert.ToInt32(row[0]) : 0,
EquipmentCode = row[1] != DBNull.Value ? row[1].ToString() : string.Empty,
EquipmentName = row[2] != DBNull.Value ? row[2].ToString() : string.Empty,
EquipmentBrand = row[3] != DBNull.Value ? row[3].ToString() : string.Empty,
EquipmentSpec = row[4] != DBNull.Value ? row[4].ToString() : string.Empty,
EquipmentTypeId = row[5] != DBNull.Value ? Convert.ToInt64(row[5]) : 0,
EquipmentTypeCode = row[6] != DBNull.Value ? row[6].ToString() : string.Empty,
EquipmentTypeName = row[7] != DBNull.Value ? row[7].ToString() : string.Empty,
WorkshopId = row[8] != DBNull.Value ? Convert.ToInt64(row[8]) : 0,
WorkshopCode = row[9] != DBNull.Value ? row[9].ToString() : string.Empty,
WorkshopName = row[10] != DBNull.Value ? row[10].ToString() : string.Empty,
Status = row[11] != DBNull.Value ? row[11].ToString() : string.Empty,
Remark = row[12] != DBNull.Value ? row[12].ToString() : string.Empty,
Attr1 = row[13] != DBNull.Value ? row[13].ToString() : string.Empty,
Attr2 = row[14] != DBNull.Value ? row[14].ToString() : string.Empty,
Attr3 = row[15] != DBNull.Value ? row[15].ToString() : string.Empty,
Attr4 = row[16] != DBNull.Value ? row[16].ToString() : string.Empty,
// CreateTime = row[17] != DBNull.Value ? Convert.ToDateTime(row[17]) : DateTime.MinValue,
CreateBy = row[18] != DBNull.Value ? row[18].ToString() : string.Empty,
// UpdateTime = row[19] != DBNull.Value ? Convert.ToDateTime(row[19]) : DateTime.MinValue,
UpdateBy = row[20] != DBNull.Value ? row[20].ToString() : string.Empty,
WorkshopSection = row[21] != DBNull.Value ? row[21].ToString() : string.Empty,
EquipmentLocation = row[22] != DBNull.Value ? row[22].ToString() : string.Empty,
//HourlyUnitPrice = row["hourly_unit_price"] != DBNull.Value ? Convert.ToDecimal(row["hourly_unit_price"]) : 0m,
//EquipmentBarcode = row["equipment_barcode"] != DBNull.Value ? row["equipment_barcode"].ToString() : string.Empty,
//EquipmentBarcodeImage = row["equipment_barcode_image"] != DBNull.Value ? row["equipment_barcode_image"].ToString() : string.Empty,
//Manufacturer = row["manufacturer"] != DBNull.Value ? row["manufacturer"].ToString() : string.Empty,
//Supplier = row["supplier"] != DBNull.Value ? row["supplier"].ToString() : string.Empty,
//UseLife = row["use_life"] != DBNull.Value ? Convert.ToInt32(row["use_life"]) : 0,
//BuyTime = row["buy_time"] != DBNull.Value ? Convert.ToDateTime(row["buy_time"]) : DateTime.MinValue,
//AssetOriginalValue = row["asset_original_value"] != DBNull.Value ? Convert.ToDecimal(row["asset_original_value"]) : 0m,
//NetAssetValue = row["net_asset_value"] != DBNull.Value ? Convert.ToDecimal(row["net_asset_value"]) : 0m,
//AssetHead = row["asset_head"] != DBNull.Value ? row["asset_head"].ToString() : string.Empty,
//FixedAssetCode = row["fixed_asset_code"] != DBNull.Value ? row["fixed_asset_code"].ToString() : string.Empty,
//Department = row["department"] != DBNull.Value ? row["department"].ToString() : string.Empty,
//UnitWorkingHours = row["unit_working_hours"] != DBNull.Value ? Convert.ToInt32(row["unit_working_hours"]) : 0,
//PlcIp = row["plc_ip"] != DBNull.Value ? row["plc_ip"].ToString() : string.Empty,
//PlcPort = row["plc_port"] != DBNull.Value ? Convert.ToInt32(row["plc_port"]) : 0,
//DelFlag = row["del_flag"] != DBNull.Value ? row["del_flag"].ToString() == "1" : false,
//SapAsset = row["sap_asset"] != DBNull.Value ? row["sap_asset"].ToString() : string.Empty,
//EquipmentHead = row["equipment_head"] != DBNull.Value ? row["equipment_head"].ToString() : string.Empty
};
baseeqlist.Add(equipment);
}
}
return baseeqlist;
}
public DataTable GetCarInfo(string deviceCode)
{
string sql = $@"SELECT workshop_code,workshop_name FROM [dbo].[base_equipment] where equipment_code = '{deviceCode}'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 查询工艺
/// </summary>
/// <returns></returns>
public DataTable GetFlowInfo(string workorderno)
{
string sql = $@"SELECT process_code,process_name,order_num,next_process_code,next_process_name,color_code,workorder.workorder_code,route.route_code,route_name,workorder.product_code,workorder.product_name
FROM [dbo].[pro_route_process] process
LEFT JOIN pro_route route on process.route_id = route.route_id
LEFT JOIN pro_order_workorder workorder on route.route_code = workorder.route_code
where workorder_code = '{workorderno}'
order by order_num"; //where CONVERT(VARCHAR(10), wet.plan_time , 120)= CONVERT(VARCHAR(10), GetDate() , 120)
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 查询SOP信息
/// </summary>
/// <returns></returns>
public DataTable GetSOPInfo(string processid)
{
string sql = $@"select file_name,file_address from pro_route route
LEFT JOIN base_file files ON route.route_id = files.source_id
where route.route_code = '{processid}'"; //where CONVERT(VARCHAR(10), wet.plan_time , 120)= CONVERT(VARCHAR(10), GetDate() , 120)
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 查询物料信息
/// </summary>
/// <returns></returns>
public DataTable GetMaterialInfo(string processid)
{
string sql = $@" select workorder_code, product_code, product_name, material_code, material_name,quantity,product_spc from mes_prepare pre
LEFT JOIN mes_prepare_detail detail on pre.prepare_id = detail.prepare_id
where workorder_code = '{processid}'"; //where CONVERT(VARCHAR(10), wet.plan_time , 120)= CONVERT(VARCHAR(10), GetDate() , 120)
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 查询工单清单率列表信息
/// </summary>
/// <returns></returns>
public DataTable GetQitaolvInfo(string processid)
{
string sql = $@" select workorder_code, material_code,material_name,detail.prod_type,material_spc,detail.unit,quantity,
detail.create_by,detail.create_time,detail.update_by,detail.update_time,locator,need_date,
recoil,fund_quanlity,detail.del_flag
from mes_prepare_detail detail
LEFT JOIN mes_prepare pre on detail.prepare_id = pre.prepare_id
where detail.parent_work_order = '{processid}'"; //where CONVERT(VARCHAR(10), wet.plan_time , 120)= CONVERT(VARCHAR(10), GetDate() , 120)
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取工单是否齐套
/// </summary>
/// <returns></returns>
public DataTable GetWorkOrderQitaoLv(string workOrderNo)
{
string sql = $@"select status from mes_prepare where wet_detail_plan_id = '{workOrderNo}'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取当天产线活动中工单的数量
/// </summary>
/// <returns></returns>
public DataTable GetActivedOrdersQty(string deviceCode, string workDate)
{
string sql = $@"select count(*)
from pro_order_workorder workorder
where CONVERT(VARCHAR(10), workorder.product_date , 120)= CONVERT(VARCHAR(10), '{workDate}' , 120)
and workorder.prod_line_code like '%{deviceCode}%' and workorder.del_flag = 0 and parent_order = '0' and workorder.status = 'w2'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 更新湿料计划同步状态、工单状态
/// </summary>
/// <returns></returns>
public bool UpdateSycnFlag(string workOrderID,string deviceCode,string user)
{
string sql1 = $@"update pro_order_workorder set status = 'w2',workorder_name = '{deviceCode}', update_by = '{LoginUser.UserName}',attr3='{user}',update_time = GETDATE(),start_work_time = GETDATE() where workorder_code = '{workOrderID}' ";
LogHelper.instance.log.Info("开始工单SQl:"+ sql1);
return Utils.netClientDBHelper.executeUpdate(sql1) > 0 ? true : false;
}
/// <summary>
/// 删除薪酬录入
/// </summary>
/// <returns></returns>
public bool Updateremuneration(string workOrdercode, string nickName,string attr1,string childprocess_code)
{
string sql1 = $@"DELETE FROM mes_unitprice_report WHERE workorder_code_sap='{workOrdercode}' AND nick_name='{nickName}' AND attr1='{attr1}' and childprocess_code='{childprocess_code}' ";
return Utils.netClientDBHelper.executeUpdate(sql1) > 0 ? true : false;
}
/// <summary>
/// 删除打卡
/// </summary>
/// <returns></returns>
public bool Updaterdaka(string userId, string startAddr, string data)
{
string sql1 = $@"DELETE FROM mes_attendance_records WHERE user_id='{userId}' AND start_addr='{startAddr}'AND attendance_date='{data}' ";
return Utils.netClientDBHelper.executeUpdate(sql1) > 0 ? true : false;
}
/// <summary>
/// 写入开始、报工状态
/// </summary>
/// <param name="selectedRow"></param>
/// <exception cref="NotImplementedException"></exception>
public void InsertOperationLog(DataRowView selectedRow,string state)
{
throw new NotImplementedException();
}
public bool InsertOperationLog(string orderCode, string status, string remark, string type, string deviceCode,string materialCode,string materialDesc)
{
List<string> sqlList = new List<string>();
string logSql = "";
if (status.Equals("w2"))
{
logSql = $@"INSERT INTO [dbo].[mes_operation_log]
([id], [user_id], [user_name], [operation_type], [operation_time],
[operation_desc], [old_value], [new_value], [device_code],[remark],[order_code],[material_code],[material_desc],[version],[ip])
VALUES
('{CommonFunc.Common.GetUUID()}', '{LoginUser.UserId}', '{LoginUser.UserName}', '{type}', GetDate(),
'工单开始', 'w1', '{status}', '{deviceCode}','{remark}','{orderCode}','{materialCode}','{materialDesc}','{LoginUser.Version}','{LoginUser.CurrDeviceIP}');";
}
else if(status.Equals("w3"))
{
logSql = $@"INSERT INTO [dbo].[mes_operation_log]
([id], [user_id], [user_name], [operation_type], [operation_time],
[operation_desc], [old_value], [new_value], [device_code],[remark],[order_code],[material_code],[material_desc],[version],[ip])
VALUES
('{CommonFunc.Common.GetUUID()}', '{LoginUser.UserId}', '{LoginUser.UserName}', '{type}', GetDate(),
'工单报工', 'w2', '{status}', '{deviceCode}','{remark}','{orderCode}','{materialCode}','{materialDesc}','{LoginUser.Version}','{LoginUser.CurrDeviceIP}');";
}
sqlList.Add(logSql);
bool issucc = Utils.netClientDBHelper.executeBatchSql(sqlList);
return issucc;
}
/// <summary>
/// 获取湿料计划指向的成型机
/// </summary>
/// <returns></returns>
public DataTable GetCXJList(string workOrderNo)
{
//根据湿料计划获取所有工单用到的成型机
//string sql = $@"select prod_line_code,bucket_code
//from pro_wet_material_plan wet
//LEFT JOIN pro_wet_material_plan_detail wetDetail
//on wet.id = wetDetail.wet_material_plan_id
//left join pro_order_workorder workorder on workorder.workorder_id = wetDetail.workorder_id
//where wet.id = '{workOrderNo}'";
//根据工单获取成型机
string sql = $@"select prod_line_code,bucket_code
from pro_order_workorder workorder
LEFT JOIN pro_wet_material_plan_detail wetDetail on workorder.workorder_id = wetDetail.workorder_id
where workorder.workorder_id = '{workOrderNo}'";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取日志
/// </summary>
/// <returns></returns>
public DataTable GetLogList(string datetime, string key)
{
//根据工单获取成型机
string sql = $@"SELECT * FROM [dbo].[mes_interface_log] where CONVERT(VARCHAR(10), creter_time , 120)= CONVERT(VARCHAR(10), '{datetime}' , 120) and remark like '%{key}%' order by creter_time desc ; ";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetPlcValueList(string key, string deviceCode)
{
//根据工单获取成型机
string sql = $@"SELECT * FROM [dbo].[base_equipment_attached] where explain like '%{key}%' and device_code like '%{deviceCode}%' ORDER BY device_code ; ";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetHFPlcValueList(string deviceCode)
{
//根据工单获取成型机
string sql = $@"SELECT * FROM mes_plc_log WHERE device_code ='{deviceCode}' and address='DB1.DBW6034' ORDER BY create_time DESC";
DataSet dtset = Utils.netClientDBHelper.getDataSet(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetUnitList_new_new(string line_name)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,a.prod_desc,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.OutWareHouseQuantity,a.production_sequence FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.est>=date_sub(curdate(),interval 1 day) and a.IsOver=0 ";
if (!string.IsNullOrEmpty(line_name))
{
sql += " and a.line_name='" + line_name + "' ";
}
sql += "order by a.line_code,a.est,a.production_sequence";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetUnitList_line(string lineCode)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,a.prod_desc,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.OutWareHouseQuantity,a.production_sequence FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.est>=date_sub(curdate(),interval 1 day) and a.IsOver=0 ";
if (!string.IsNullOrEmpty(lineCode))
{
sql += " and a.line_code='" + lineCode + "' ";
}
sql += "order by a.line_code,a.est,a.production_sequence ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetOrderZYList()
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.outwarehousequantity,a.UpQuantity-a.outwarehousequantity kzquantity FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.upquantity>a.outwarehousequantity order by a.line_code,a.est ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetOrderZFZYList()
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.outwarehousequantity,a.UpQuantity-a.outwarehousequantity kzquantity FROM base_production_order_split_line a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.upquantity>a.outwarehousequantity and order_status=4 order by a.line_code,a.est ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetOrderTJList()
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,a.prod_desc,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.OutWareHouseQuantity,a.production_sequence FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.est>=date_sub(curdate(),interval 1 day) and a.IsOver=0 order by a.line_code,a.est,a.production_sequence ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetOrderTJList_new(string lineCode)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,a.prod_desc,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.OutWareHouseQuantity,a.production_sequence FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.est>=date_sub(curdate(),interval 1 day) and a.IsOver=0 ";
if (!string.IsNullOrEmpty(lineCode))
{
sql += " and a.line_code='" + lineCode + "' ";
}
sql += "order by a.line_code,a.est,a.production_sequence ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取可用物料数量
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetMaterielNoNumber(string materiel_no)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT IFNULL(sum(materiel_num),0) as materiel_num FROM base_cararea WHERE area_no IN(SELECT area_no FROM base_area WHERE ware_house IN (1,3,4)) AND car_status != 2 AND materiel_no = '" + materiel_no + "' ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public DataTable GetMaterielNoNumber_xb(string line_code, string materiel_no)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = "";
if (line_code == "C线")
{
sql = "SELECT IFNULL(SUM(materiel_num),0) AS materiel_num_add FROM base_cararea WHERE area_no IN (SELECT area_no FROM base_area WHERE ware_house = 5) AND materiel_no = '" + materiel_no + "' ";
}
else if (line_code == "B线")
{
sql = "SELECT IFNULL(SUM(materiel_num),0) AS materiel_num_add FROM base_cararea WHERE area_no IN (SELECT area_no FROM base_area WHERE ware_house = 6) AND materiel_no = '" + materiel_no + "' ";
}
else if (line_code == "F线")
{
sql = "SELECT IFNULL(SUM(materiel_num),0) AS materiel_num_add FROM base_cararea WHERE area_no IN (17,18,19) AND materiel_no = '" + materiel_no + "' ";
}
else
{
sql = " SELECT IFNULL(SUM(materiel_num),0) AS materiel_num_add FROM base_cararea WHERE area_no IN (44,10,11,12,13,14,15,16) AND materiel_no = '" + materiel_no + "' ";
}
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单上件数量
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetMaterielNoNumber_dingdan()
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT * FROM base_production_order_split a LEFT JOIN base_materialinfobom b ON a.prod_code = b.materiel_finish_no ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 修改订单数量
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int SetUpdateOrderNum(string order_code, int num)
{
string sql = " update base_production_order_split set UpQuantity=UpQuantity+" + num + " where order_code='" + order_code + "'";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 修改订单数量
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int SetUpdateOrderLineNum(string order_code, int num)
{
string sql = " update base_production_order_split_line set UpQuantity=UpQuantity+" + num + " where order_code='" + order_code + "'";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 修改订单上件数量/转入
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int SetUpdateOrderLineNum_zhuanruCK(string order_code, int num)
{
string sql = " UPDATE base_production_order_split SET OutWareHouseQuantity = OutWareHouseQuantity + '" + num + "' WHERE order_code = '" + order_code + "'";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 修改订单上件数量/转入
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static int SetUpdateOrderLineNum_zhuanru(string order_code, int num)
{
string sql = " UPDATE base_production_order_split SET UpQuantity = UpQuantity + '" + num + "' WHERE order_code = '" + order_code + "'";
int ret = DbHelperSQLServer.ExecuteNonQuery(sql);
return ret;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetOrderZYList(string order_code)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.outwarehousequantity FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.upquantity>a.outwarehousequantity and order_code='" + order_code + "' order by a.line_code,a.est ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetOrderZYList(string order_code, string aa)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.outwarehousequantity FROM base_production_order_split a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where order_code='" + order_code + "' order by a.line_code,a.est ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取订单信息
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public DataTable GetOrderZFZYList(string order_code)
{
//string sql = @"select materialno,MaterialBarNo,count(1) as carno from basedata_carrealinfo where IsOutLocator=0 and MaterialNo<>'' group by materialno,MaterialBarNo order by CarNo desc;";
string sql = @" SELECT a.id,a.order_code,case a.line_code when 'D3' then 'A线' when 'TV' then 'B线' when 'TQ' then 'C线' when 'W8' then 'F线' end line_code,a.prod_code,b.materiel_box_no,a.est,a.Quantity,a.UpQuantity,a.outwarehousequantity FROM base_production_order_split_line a LEFT JOIN base_materialinfobom b on a.prod_code = b.materiel_finish_no where a.upquantity>a.outwarehousequantity and order_code='" + order_code + "' and order_status=4 order by a.line_code,a.est ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取库位内物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static DataTable GetLocatorMaterialGroup(string where)
{
string sql = @"
select aa.materialno,aa.MaterialBarNo,(ifnull(aa.number,0)-ifnull(bb.number,0) ) as number,ifnull(cc.number,0) as total
from (select basedata_carrealinfo.materialno,MaterialBarNo
,sum(ifnull(basedata_carrealinfo.HadNumber,0)) as number
from basedata_carrealinfo
where basedata_carrealinfo.MaterialNo<>'' and ( basedata_carrealinfo.locatorid>0
or basedata_carrealinfo.IsProOutLocator=1 ) group by basedata_carrealinfo.materialno,MaterialBarNo) aa
left join (select basedata_offlinemateriallist.materialno
,count(1) as number
from basedata_offlinemateriallist where isdeleted=0 and IsOver=0 and Number=1
group by basedata_offlinemateriallist.materialno) bb on aa.materialno=bb.materialno
left join (select basedata_offlinemateriallist_detail.materialno
,count(1) as number
from basedata_offlinemateriallist_detail where isdeleted=0
group by basedata_offlinemateriallist_detail.materialno) cc on aa.materialno=cc.materialno
order by aa.materialno desc
";
// string sql = @"
//select basedata_carrealinfo.materialno,MaterialBarNo
//,sum(ifnull(basedata_carrealinfo.HadNumber,0)) as number
//from basedata_carrealinfo
// where basedata_carrealinfo.MaterialNo<>'' and (basedata_carrealinfo.locatorid>0
// or basedata_carrealinfo.IsProOutLocator=1)
//group by basedata_carrealinfo.materialno,MaterialBarNo";
// string sql = @"
//select aa.materialno,aa.MaterialBarNo,(ifnull(aa. number,0)-ifnull(bb.number,0) ) as carno
// from (select basedata_carrealinfo.materialno,MaterialBarNo
//,sum(ifnull(basedata_carrealinfo.HadNumber,0)) as number
//from basedata_carrealinfo
// where basedata_carrealinfo.MaterialNo<>'' and basedata_carrealinfo.locatorid>0
//group by basedata_carrealinfo.materialno,MaterialBarNo) aa
// left join (select basedata_offlinemateriallist.materialno
//,count(1) as number
//from basedata_offlinemateriallist where isover=0 and Number>0 group by basedata_offlinemateriallist.materialno) bb on aa.materialno=bb.materialno
//order by carno desc
//";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取库位内物料明细
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static DataTable GetUpLIneMaterialView(int weekno)
{
string sql = @"
select a.MaterialNo,a.MaterialBarNo,a.HadNumber ,a.MaxNumber,a.AreaNo,ifnull(amount,0) as amount,ifnull(total,0) total
from (
select a.MaterialNo,MaterialBarNo,sum(Number) as HadNumber ,b.MaxNumber,b.AreaNo
from (
select a.MaterialNo,MaterialBarNo,LocatorId as LocatorId,count(1) as Number
from basedata_carrealinfo a
where a.MaterialNo<>'' and LocatorId>0
group by a.MaterialNo,MaterialBarNo,LocatorId
union all
select b.MaterialNo,MaterialBarNo,LocatorNodeId as LocatorId ,count(1) as Number
from basedata_carrealinfo b
where b.MaterialNo<>'' and LocatorNodeId>0
group by b.MaterialNo,MaterialBarNo,LocatorNodeId ) a
left join basedata_linecatcharea b on (a.LocatorId=b.Id )
where a.MaterialNo<>''
group by a.MaterialNo,MaterialBarNo,b.AreaNo,b.MaxNumber
) a left join (select productcode,ifnull(amount,0) as amount,(ifnull(amount,0)-sum(ifnull(b.Number,0))) as total from basedata_orderplan a
left join basedata_uplinescancarlist b on a.productcode=b.materialno and WEEK(b.createtime)=" + weekno + @"
where a.planweek=" + weekno + @" group by productcode,amount ) b
on a.materialno=b.productcode
ORDER BY a.AreaNo desc";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 从mes获取 扫描时间端内的条码信息
/// </summary>
/// <param name="bdt"></param>
/// <param name="edt"></param>
/// <returns></returns>
public static DataTable GetOffLineMaterialByMESView(string bdt, string edt)
{
string sql = @" select * from basedata_offlinemateriallist_his where createtime<='" + bdt + "' and createtime>='" + edt + "'; ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public static int AddSystemLog(string titel, string message)
{
string strSql = "insert into sysnotices(Title,Content) values(@titel,@message);";
MySqlParameter[] parameters = { new MySqlParameter("@titel", titel), new MySqlParameter("@message", message) };
object obj = DbHelperSQLServer.ExecuteScalar(strSql, parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
public static int AddSystemLog(string titel, CarRealInfo car)
{
string carstr = "CarNo:" + car.CarNo + ",CurrNodeId:" + car.CurrNodeId + ",IsOutLocator:" + car.IsOutLocator + ",IsProOutLocator:" + car.IsProOutLocator + ",Number:" + car.Number + ",HadNumber:" + car.HadNumber + ",MaterialNo:" + car.MaterialNo + ",OffMaterialId:" + car.OffMaterialId + ",CreateDt:" + car.OutLocatorDt + ",OptDt:" + car.OptDt + ",LocatorId:" + car.LocatorId + ",IsOver:" + car.IsOver + ",";
string strSql = "insert into sysnotices(Title,Content,createtime) values(@titel,@message,now());";
MySqlParameter[] parameters = { new MySqlParameter("@titel", titel), new MySqlParameter("@message", carstr) };
object obj = DbHelperSQLServer.ExecuteScalar(strSql, parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 增加一条数据
/// </summary>
public static int AddOffLineMaterialList(OffLineMaterialList model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into basedata_offlinemateriallist(");
strSql.Append("MaterialNo,ProductBarNo,IsOver,IsDeleted,CreateTime,CreateId,CreateBy,ModifyTime,ModifyId,ModifyBy,Number,CarCode,TrayCode,LineNo");
strSql.Append(") values (");
strSql.Append("@MaterialNo,@ProductBarNo,@IsOver,@IsDeleted,@CreateTime,@CreateId,@CreateBy,@ModifyTime,@ModifyId,@ModifyBy,@Number,@CarCode,@TrayCode,@LineNo");
strSql.Append(") ");
strSql.Append(";select @@IDENTITY");
MySqlParameter[] parameters = {
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ProductBarNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@IsOver", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CreateBy", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
new MySqlParameter("@ModifyBy", MySqlDbType.VarChar,50),
new MySqlParameter("@Number", MySqlDbType.VarChar,50),
new MySqlParameter("@CarCode", MySqlDbType.VarChar,50),
new MySqlParameter("@TrayCode", MySqlDbType.VarChar,50),
new MySqlParameter("@LineNo", MySqlDbType.VarChar,50),
};
parameters[0].Value = model.MaterialNo;
parameters[1].Value = model.ProductBarNo;
parameters[2].Value = model.IsOver;
parameters[3].Value = model.IsDeleted;
parameters[4].Value = model.CreateTime;
parameters[5].Value = model.CreateId;
parameters[6].Value = model.CreateBy;
parameters[7].Value = model.ModifyTime;
parameters[8].Value = model.ModifyId;
parameters[9].Value = model.ModifyBy;
parameters[10].Value = model.Number;
parameters[11].Value = model.CarCode;
parameters[12].Value = model.MaterialDes;
parameters[13].Value = model.LineNo;
object obj = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 增加一条数据
/// </summary>
public static int AddOffLineMaterialDetailList(OffLineMaterialList model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into basedata_offlinemateriallist_detail(");
strSql.Append("MaterialNo,ProductBarNo,IsOver,IsDeleted,CreateTime,CreateId,CreateBy,ModifyTime,ModifyId,ModifyBy,Number,CarCode,TrayCode,LineNo");
strSql.Append(") values (");
strSql.Append("@MaterialNo,@ProductBarNo,@IsOver,@IsDeleted,@CreateTime,@CreateId,@CreateBy,@ModifyTime,@ModifyId,@ModifyBy,@Number,@CarCode,@TrayCode,@LineNo");
strSql.Append(") ");
strSql.Append(";select @@IDENTITY");
MySqlParameter[] parameters = {
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ProductBarNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@IsOver", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CreateBy", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
new MySqlParameter("@ModifyBy", MySqlDbType.VarChar,50),
new MySqlParameter("@Number", MySqlDbType.VarChar,50),
new MySqlParameter("@CarCode", MySqlDbType.VarChar,50),
new MySqlParameter("@TrayCode", MySqlDbType.VarChar,50),
new MySqlParameter("@LineNo", MySqlDbType.VarChar,50),
};
parameters[0].Value = model.MaterialNo;
parameters[1].Value = model.ProductBarNo;
parameters[2].Value = model.IsOver;
parameters[3].Value = model.IsDeleted;
parameters[4].Value = model.CreateTime;
parameters[5].Value = model.CreateId;
parameters[6].Value = model.CreateBy;
parameters[7].Value = model.ModifyTime;
parameters[8].Value = model.ModifyId;
parameters[9].Value = model.ModifyBy;
parameters[10].Value = model.Number;
parameters[11].Value = model.CarCode;
parameters[12].Value = model.MaterialDes;
parameters[13].Value = model.LineNo;
object obj = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 增加一条数据
/// </summary>
public static int AddOffLineMaterialHistoryList(OffLineMaterialList model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into basedata_offlinemateriallist_his(");
strSql.Append("MaterialNo,ProductBarNo,IsOver,IsDeleted,CreateTime,CreateId,CreateBy,ModifyTime,ModifyId,ModifyBy,Number,CarCode,TrayCode,LineNo");
strSql.Append(") values (");
strSql.Append("@MaterialNo,@ProductBarNo,@IsOver,@IsDeleted,@CreateTime,@CreateId,@CreateBy,@ModifyTime,@ModifyId,@ModifyBy,@Number,@CarCode,@TrayCode,@LineNo");
strSql.Append(") ");
strSql.Append(";select @@IDENTITY");
MySqlParameter[] parameters = {
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ProductBarNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@IsOver", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CreateBy", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
new MySqlParameter("@ModifyBy", MySqlDbType.VarChar,50),
new MySqlParameter("@Number", MySqlDbType.VarChar,50),
new MySqlParameter("@CarCode", MySqlDbType.VarChar,50),
new MySqlParameter("@TrayCode", MySqlDbType.VarChar,50),
new MySqlParameter("@LineNo", MySqlDbType.VarChar,50),
};
parameters[0].Value = model.MaterialNo;
parameters[1].Value = model.ProductBarNo;
parameters[2].Value = model.IsOver;
parameters[3].Value = model.IsDeleted;
parameters[4].Value = model.CreateTime;
parameters[5].Value = model.CreateId;
parameters[6].Value = model.CreateBy;
parameters[7].Value = model.ModifyTime;
parameters[8].Value = model.ModifyId;
parameters[9].Value = model.ModifyBy;
parameters[10].Value = model.Number;
parameters[11].Value = model.CarCode;
parameters[12].Value = model.MaterialDes;
parameters[13].Value = model.LineNo;
object obj = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 更新一条数据
/// </summary>
public static bool UpdateOffLineMaterialList(OffLineMaterialList model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update basedata_offlinemateriallist set ");
strSql.Append(" MaterialNo = @MaterialNo , ");
strSql.Append(" ProductBarNo = @ProductBarNo , ");
strSql.Append(" LineNo = @LineNo , ");
strSql.Append(" IsOver = @IsOver , ");
strSql.Append(" IsDeleted = @IsDeleted , ");
strSql.Append(" CreateTime = @CreateTime , ");
strSql.Append(" CreateId = @CreateId , ");
strSql.Append(" CreateBy = @CreateBy , ");
strSql.Append(" ModifyTime = @ModifyTime , ");
strSql.Append(" ModifyId = @ModifyId , ");
strSql.Append(" CarCode = @CarCode , ");
strSql.Append(" LeftNoData = @LeftNoData , ");
strSql.Append(" RightNoData = @RightNoData , ");
strSql.Append(" Number = @Number ");
strSql.Append(" where Id=@Id ");
MySqlParameter[] parameters = {
new MySqlParameter("@Id", MySqlDbType.Int32,11) ,
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ProductBarNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@LineNo", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsOver", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CreateBy", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CarCode", MySqlDbType.VarChar,50),
new MySqlParameter("@Number", MySqlDbType.VarChar,50),
new MySqlParameter("@LeftNoData", MySqlDbType.VarChar,50),
new MySqlParameter("@RightNoData", MySqlDbType.VarChar,50)
};
parameters[0].Value = model.Id;
parameters[1].Value = model.MaterialNo;
parameters[2].Value = model.ProductBarNo;
parameters[3].Value = model.LineNo;
parameters[4].Value = model.IsOver;
parameters[5].Value = model.IsDeleted;
parameters[6].Value = model.CreateTime;
parameters[7].Value = model.CreateId;
parameters[8].Value = model.CreateBy;
parameters[9].Value = model.ModifyTime;
parameters[10].Value = model.ModifyId;
parameters[11].Value = model.CarCode;
parameters[12].Value = model.Number;
parameters[13].Value = model.LeftNoData;
parameters[14].Value = model.RightNoData;
int rows = DbHelperSQLServer.ExecuteNonQuery(strSql.ToString(), parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
public static List<OffLineMaterialList> getOffLineMaterialLists(string strwhere)
{
List<OffLineMaterialList> list = new List<OffLineMaterialList>();
string sql = @"select * FROM basedata_offlinemateriallist where isdeleted=0 " + strwhere + " order by createtime; ";
DataSet ds = DbHelperSQLServer.Query(sql);
if (ds != null && ds.Tables.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
OffLineMaterialList model = new OffLineMaterialList();
if (ds.Tables[0].Rows[i]["Id"].ToString() != "")
{
model.Id = int.Parse(ds.Tables[0].Rows[i]["Id"].ToString());
}
model.MaterialNo = ds.Tables[0].Rows[i]["MaterialNo"].ToString();
model.ProductBarNo = ds.Tables[0].Rows[i]["ProductBarNo"].ToString();
if (ds.Tables[0].Rows[i]["Number"].ToString() != "")
{
model.Number = int.Parse(ds.Tables[0].Rows[i]["Number"].ToString());
}
if (ds.Tables[0].Rows[i]["CarCode"].ToString() != "")
{
model.CarCode = ds.Tables[0].Rows[i]["CarCode"].ToString();
}
if (ds.Tables[0].Rows[i]["IsOver"].ToString() != "")
{
model.IsOver = int.Parse(ds.Tables[0].Rows[i]["IsOver"].ToString());
}
if (ds.Tables[0].Rows[i]["IsDeleted"].ToString() != "")
{
model.IsDeleted = ds.Tables[0].Rows[i]["IsDeleted"].ToString() == "False" ? 0 : 1;
}
if (ds.Tables[0].Rows[i]["CreateTime"].ToString() != "")
{
model.CreateTime = DateTime.Parse(ds.Tables[0].Rows[i]["CreateTime"].ToString());
}
if (ds.Tables[0].Rows[i]["CreateId"].ToString() != "")
{
model.CreateId = int.Parse(ds.Tables[0].Rows[i]["CreateId"].ToString());
}
if (ds.Tables[0].Rows[i]["LeftNoData"].ToString() != "")
{
model.LeftNoData = int.Parse(ds.Tables[0].Rows[i]["LeftNoData"].ToString());
}
if (ds.Tables[0].Rows[i]["RightNoData"].ToString() != "")
{
model.RightNoData = int.Parse(ds.Tables[0].Rows[i]["RightNoData"].ToString());
}
model.CreateBy = ds.Tables[0].Rows[i]["CreateBy"].ToString();
if (ds.Tables[0].Rows[i]["ModifyTime"].ToString() != "")
{
model.ModifyTime = DateTime.Parse(ds.Tables[0].Rows[i]["ModifyTime"].ToString());
}
if (ds.Tables[0].Rows[i]["ModifyId"].ToString() != "")
{
model.ModifyId = int.Parse(ds.Tables[0].Rows[i]["ModifyId"].ToString());
}
model.ModifyBy = ds.Tables[0].Rows[i]["ModifyBy"].ToString();
list.Add(model);
}
}
return list;
}
/// <summary>
/// 增加一条数据
/// </summary>
public int Addofflinemateriallist(OffLineMaterialList model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into basedata_offlinemateriallist(");
strSql.Append("MaterialNo,ProductBarNo,LineNo,IsOver,IsDeleted,CreateTime,CreateId,CreateBy,ModifyTime,ModifyId,ModifyBy,Number");
strSql.Append(") values (");
strSql.Append("@MaterialNo,@ProductBarNo,@LineNo,@IsOver,@IsDeleted,@CreateTime,@CreateId,@CreateBy,@ModifyTime,@ModifyId,@ModifyBy,@Number");
strSql.Append(") ");
strSql.Append(";select @@IDENTITY");
MySqlParameter[] parameters = {
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ProductBarNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@LineNo", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsOver", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CreateBy", MySqlDbType.VarChar,50) ,
new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
new MySqlParameter("@ModifyBy", MySqlDbType.VarChar,50),
new MySqlParameter("@Number", MySqlDbType.VarChar,50)
};
parameters[0].Value = model.MaterialNo;
parameters[1].Value = model.ProductBarNo;
//parameters[2].Value = model.LineNo;
parameters[3].Value = model.IsOver;
parameters[4].Value = model.IsDeleted;
parameters[5].Value = model.CreateTime;
parameters[6].Value = model.CreateId;
parameters[7].Value = model.CreateBy;
parameters[8].Value = model.ModifyTime;
parameters[9].Value = model.ModifyId;
parameters[10].Value = model.ModifyBy;
parameters[11].Value = model.Number;
object obj = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 增加一条数据
/// </summary>
public int AddOffProductInfo(OffProductInfo model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into basedata_offproductinfo(");
strSql.Append("ProductBarno,MaterialNo,LineNo,IsDeleted,CreateTime,CreateId,CreateBy,ModifyTime,ModifyId,ModifyBy");
strSql.Append(") values (");
strSql.Append("@ProductBarno,@MaterialNo,@LineNo,@IsDeleted,@CreateTime,@CreateId,@CreateBy,@ModifyTime,@ModifyId,@ModifyBy");
strSql.Append(") ");
strSql.Append(";select @@IDENTITY");
MySqlParameter[] parameters = {
new MySqlParameter("@ProductBarno", MySqlDbType.VarChar,50) ,
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@LineNo", MySqlDbType.Int32,11) ,
new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CreateBy", MySqlDbType.LongText) ,
new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
new MySqlParameter("@ModifyBy", MySqlDbType.LongText)
};
parameters[0].Value = model.ProductBarno;
parameters[1].Value = model.MaterialNo;
parameters[2].Value = model.LineNo;
object obj = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 修改点位放行状态
/// </summary>
/// <param name="carid"></param>
/// <param name="val"></param>
/// <returns></returns>
public static int UpdateNodesettingState(int nodeid, int val)
{
string sqlstr = "update basedata_nodesetting set IsClearCar=@val where id=@id";
MySqlParameter[] parameters = {
new MySqlParameter("@id", MySqlDbType.Int32,4) ,
new MySqlParameter("@val", MySqlDbType.Int32,4)
};
parameters[0].Value = nodeid;
parameters[1].Value = val;
return DbHelperSQLServer.ExecuteNonQuery(sqlstr, parameters);
}
/// <summary>
/// 修改小车时候结束状态
/// </summary>
/// <param name="carid"></param>
/// <param name="val"></param>
/// <returns></returns>
public static int UpdateCarOverState(int carno, int val)
{
string sqlstr = "update basedata_carrealinfo set IsOver=@val where carno=@id";
MySqlParameter[] parameters = {
new MySqlParameter("@id", MySqlDbType.Int32,4) ,
new MySqlParameter("@val", MySqlDbType.Int32,4)
};
parameters[0].Value = carno;
parameters[1].Value = val;
return DbHelperSQLServer.ExecuteNonQuery(sqlstr, parameters);
}
/// <summary>
/// 修改小车时候结束状态
/// </summary>
/// <param name="carid"></param>
/// <param name="val"></param>
/// <returns></returns>
public static int SetLocatorMaterial(int locatorid, string val, string val1)
{
string sqlstr = "update basedata_linecatcharea set materialno='" + val + "' , materialnm='" + val1 + "' where id=" + locatorid + ";";
return DbHelperSQLServer.ExecuteNonQuery(sqlstr);
}
/// <summary>
/// 获取点位关系列表
/// </summary>
/// <param name="strWhere"></param>
/// <returns></returns>
public static List<NodePrecuss> getNodeRelation(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@" select * from basedata_nodeprecuss a INNER join basedata_nodesetting b on a.PreNodeId=b.Id INNER join basedata_nodesetting c on a.AfterNodeId=c.Id where a.isdeleted=0;");
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
List<NodePrecuss> list = new List<NodePrecuss>();
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
NodePrecuss model = new NodePrecuss();
if (ds.Tables[0].Rows[i]["Id"].ToString() != "")
{
model.Id = int.Parse(ds.Tables[0].Rows[i]["Id"].ToString());
}
if (ds.Tables[0].Rows[i]["PreNodeId"].ToString() != "")
{
model.PreNodeId = int.Parse(ds.Tables[0].Rows[i]["PreNodeId"].ToString());
}
if (ds.Tables[0].Rows[i]["AfterNodeId"].ToString() != "")
{
model.AfterNodeId = int.Parse(ds.Tables[0].Rows[i]["AfterNodeId"].ToString());
}
if (ds.Tables[0].Rows[i]["NodeValue"].ToString() != "")
{
model.NodeValue = int.Parse(ds.Tables[0].Rows[i]["NodeValue"].ToString());
}
model.PreNodeSetting = new NodeSetting();
if (ds.Tables[0].Rows[i]["Id1"].ToString() != "")
{
model.PreNodeSetting.Id = int.Parse(ds.Tables[0].Rows[i]["Id1"].ToString());
}
model.PreNodeSetting.NodeNo = ds.Tables[0].Rows[i]["NodeNo"].ToString();
model.PreNodeSetting.NodeDesc = ds.Tables[0].Rows[i]["NodeDesc"].ToString();
if (ds.Tables[0].Rows[i]["PlcId"].ToString() != "")
{
model.PreNodeSetting.PlcId1 = int.Parse(ds.Tables[0].Rows[i]["PlcId"].ToString());
}
if (ds.Tables[0].Rows[i]["NodeType"].ToString() != "")
{
model.PreNodeSetting.NodeType = int.Parse(ds.Tables[0].Rows[i]["NodeType"].ToString());
}
if (ds.Tables[0].Rows[i]["LineAreaId"].ToString() != "")
{
model.PreNodeSetting.LineAreaId = int.Parse(ds.Tables[0].Rows[i]["LineAreaId"].ToString());
}
if (ds.Tables[0].Rows[i]["IsStaticNumber"].ToString() != "")
{
model.PreNodeSetting.IsStaticNumber = int.Parse(ds.Tables[0].Rows[i]["IsStaticNumber"].ToString());
}
if (ds.Tables[0].Rows[i]["IsClearCar"].ToString() != "")
{
model.PreNodeSetting.IsClearCar = int.Parse(ds.Tables[0].Rows[i]["IsClearCar"].ToString());
}
if (ds.Tables[0].Rows[i]["LocalThriftip"].ToString() != "")
{
model.PreNodeSetting.LocalThriftip = ds.Tables[0].Rows[i]["LocalThriftip"].ToString();
}
if (ds.Tables[0].Rows[i]["LocalThriftport"].ToString() != "")
{
model.PreNodeSetting.LocalThriftport = int.Parse(ds.Tables[0].Rows[i]["LocalThriftport"].ToString());
}
if (ds.Tables[0].Rows[i]["ServerThriftport"].ToString() != "")
{
model.PreNodeSetting.ServerThriftport = int.Parse(ds.Tables[0].Rows[i]["ServerThriftport"].ToString());
}
model.AfterNodeSetting = new NodeSetting();
if (ds.Tables[0].Rows[i]["Id2"].ToString() != "")
{
model.AfterNodeSetting.Id = int.Parse(ds.Tables[0].Rows[i]["Id2"].ToString());
}
model.AfterNodeSetting.NodeNo = ds.Tables[0].Rows[i]["NodeNo1"].ToString();
model.AfterNodeSetting.NodeDesc = ds.Tables[0].Rows[i]["NodeDesc1"].ToString();
if (ds.Tables[0].Rows[i]["PlcId1"].ToString() != "")
{
model.AfterNodeSetting.PlcId1 = int.Parse(ds.Tables[0].Rows[i]["PlcId1"].ToString());
}
if (ds.Tables[0].Rows[i]["NodeType1"].ToString() != "")
{
model.AfterNodeSetting.NodeType = int.Parse(ds.Tables[0].Rows[i]["NodeType1"].ToString());
}
if (ds.Tables[0].Rows[i]["LineAreaId1"].ToString() != "")
{
model.AfterNodeSetting.LineAreaId = int.Parse(ds.Tables[0].Rows[i]["LineAreaId1"].ToString());
}
if (ds.Tables[0].Rows[i]["IsStaticNumber1"].ToString() != "")
{
model.AfterNodeSetting.IsStaticNumber = int.Parse(ds.Tables[0].Rows[i]["IsStaticNumber1"].ToString());
}
if (ds.Tables[0].Rows[i]["IsClearCar1"].ToString() != "")
{
model.AfterNodeSetting.IsClearCar = int.Parse(ds.Tables[0].Rows[i]["IsClearCar1"].ToString());
}
if (ds.Tables[0].Rows[i]["LocalThriftip"].ToString() != "")
{
model.PreNodeSetting.LocalThriftip = ds.Tables[0].Rows[i]["LocalThriftip"].ToString();
}
if (ds.Tables[0].Rows[i]["LocalThriftport"].ToString() != "")
{
model.PreNodeSetting.LocalThriftport = int.Parse(ds.Tables[0].Rows[i]["LocalThriftport"].ToString());
}
if (ds.Tables[0].Rows[i]["ServerThriftport"].ToString() != "")
{
model.PreNodeSetting.ServerThriftport = int.Parse(ds.Tables[0].Rows[i]["ServerThriftport"].ToString());
}
list.Add(model);
}
}
return list;
}
/// <summary>
/// 获取小车实时数据缓存,便于启动初始化
/// </summary>
/// <param name="strWhere"></param>
/// <returns></returns>
public static List<CarRealInfo> getCarInfoList(string strWhere, List<LineCatchArea> arealist, List<CarMaterial> materialist, List<CarProduct> productlist)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@" select * from basedata_carrealinfo a
left join basedata_nodesetting b on a.CurrNodeId=b.Id
where a.isdeleted=0 order by a.OptDt ");
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
List<CarRealInfo> list = new List<CarRealInfo>();
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
CarRealInfo model = new CarRealInfo();
model.CarNo = ds.Tables[0].Rows[i]["CarNo"].ToString();
model.LoadingMaterial = materialist.Where(t => t.carNo == model.CarNo).ToList();
model.LoadingProduct = productlist.Where(t => t.carNo == model.CarNo).ToList();
model.MaterialNo = ds.Tables[0].Rows[i]["MaterialNo"].ToString();
model.MaterialBarNo = ds.Tables[0].Rows[i]["MaterialBarNo"].ToString();
if (ds.Tables[0].Rows[i]["CurrNodeId"].ToString() != "")
{
model.CurrNodeId = int.Parse(ds.Tables[0].Rows[i]["CurrNodeId"].ToString());
}
if (ds.Tables[0].Rows[i]["LocatorNodeId"].ToString() != "")
{
model.LocatorNodeId = int.Parse(ds.Tables[0].Rows[i]["LocatorNodeId"].ToString());
model.ProLocatorArea = arealist != null ? arealist.FirstOrDefault(t => t.Id == model.LocatorNodeId) : null;
}
if (ds.Tables[0].Rows[i]["IsOver"].ToString() != "")
{
model.IsOver = int.Parse(ds.Tables[0].Rows[i]["IsOver"].ToString());
}
if (ds.Tables[0].Rows[i]["HadNumber"].ToString() != "")
{
model.HadNumber = int.Parse(ds.Tables[0].Rows[i]["HadNumber"].ToString());
}
if (ds.Tables[0].Rows[i]["LocatorId"].ToString() != "")
{
model.LocatorId = int.Parse(ds.Tables[0].Rows[i]["LocatorId"].ToString());
model.LocatorArea = arealist != null ? arealist.FirstOrDefault(t => t.Id == model.LocatorId) : null;
}
if (ds.Tables[0].Rows[i]["OptDt"].ToString() != "")
{
model.OptDt = DateTime.Parse(ds.Tables[0].Rows[i]["OptDt"].ToString());
}
if (ds.Tables[0].Rows[i]["createtime"].ToString() != "")
{
model.OutLocatorDt = DateTime.Parse(ds.Tables[0].Rows[i]["createtime"].ToString());
}
if (ds.Tables[0].Rows[i]["Id"].ToString() != "")
{
model.Id = int.Parse(ds.Tables[0].Rows[i]["Id"].ToString());
}
if (ds.Tables[0].Rows[i]["Number"].ToString() != "")
{
model.Number = int.Parse(ds.Tables[0].Rows[i]["Number"].ToString());
}
if (ds.Tables[0].Rows[i]["OffMaterialId"].ToString() != "")
{
model.OffMaterialId = int.Parse(ds.Tables[0].Rows[i]["OffMaterialId"].ToString());
}
if (ds.Tables[0].Rows[i]["IsOutLocator"].ToString() != "")
{
model.IsOutLocator = int.Parse(ds.Tables[0].Rows[i]["IsOutLocator"].ToString());
}
if (ds.Tables[0].Rows[i]["IsProOutLocator"].ToString() != "")
{
model.IsProOutLocator = int.Parse(ds.Tables[0].Rows[i]["IsProOutLocator"].ToString());
}
model.CurrNodeSetting = new NodeSetting();
if (ds.Tables[0].Rows[i]["Id1"].ToString() != "")
{
model.CurrNodeSetting.Id = int.Parse(ds.Tables[0].Rows[i]["Id1"].ToString());
}
model.CurrNodeSetting.NodeNo = ds.Tables[0].Rows[i]["NodeNo"].ToString();
model.CurrNodeSetting.NodeDesc = ds.Tables[0].Rows[i]["NodeDesc"].ToString();
if (ds.Tables[0].Rows[i]["PlcId"].ToString() != "")
{
model.CurrNodeSetting.PlcId1 = int.Parse(ds.Tables[0].Rows[i]["PlcId"].ToString());
}
if (ds.Tables[0].Rows[i]["NodeType"].ToString() != "")
{
model.CurrNodeSetting.NodeType = int.Parse(ds.Tables[0].Rows[i]["NodeType"].ToString());
}
if (ds.Tables[0].Rows[i]["LineAreaId"].ToString() != "")
{
model.CurrNodeSetting.LineAreaId = int.Parse(ds.Tables[0].Rows[i]["LineAreaId"].ToString());
}
if (ds.Tables[0].Rows[i]["IsStaticNumber"].ToString() != "")
{
model.CurrNodeSetting.IsStaticNumber = int.Parse(ds.Tables[0].Rows[i]["IsStaticNumber"].ToString());
}
if (ds.Tables[0].Rows[i]["IsClearCar"].ToString() != "")
{
model.CurrNodeSetting.IsClearCar = int.Parse(ds.Tables[0].Rows[i]["IsClearCar"].ToString());
}
if (ds.Tables[0].Rows[i]["LocalThriftip"].ToString() != "")
{
model.CurrNodeSetting.LocalThriftip = ds.Tables[0].Rows[i]["LocalThriftip"].ToString();
}
if (ds.Tables[0].Rows[i]["LocalThriftport"].ToString() != "")
{
model.CurrNodeSetting.LocalThriftport = int.Parse(ds.Tables[0].Rows[i]["LocalThriftport"].ToString());
}
if (ds.Tables[0].Rows[i]["ServerThriftport"].ToString() != "")
{
model.CurrNodeSetting.ServerThriftport = int.Parse(ds.Tables[0].Rows[i]["ServerThriftport"].ToString());
}
// model.LocatorNodeSetting = new NodeSetting();
//if (ds.Tables[0].Rows[i]["Id2"].ToString() != "")
//{
// model.LocatorNodeSetting.Id = int.Parse(ds.Tables[0].Rows[i]["Id2"].ToString());
//}
//model.LocatorNodeSetting.NodeNo = ds.Tables[0].Rows[i]["NodeNo1"].ToString();
//model.LocatorNodeSetting.NodeDesc = ds.Tables[0].Rows[i]["NodeDesc1"].ToString();
//if (ds.Tables[0].Rows[i]["PlcId1"].ToString() != "")
//{
// model.LocatorNodeSetting.PlcId1 = int.Parse(ds.Tables[0].Rows[i]["PlcId1"].ToString());
//}
//if (ds.Tables[0].Rows[i]["NodeType1"].ToString() != "")
//{
// model.LocatorNodeSetting.NodeType = int.Parse(ds.Tables[0].Rows[i]["NodeType1"].ToString());
//}
//if (ds.Tables[0].Rows[i]["LineAreaId1"].ToString() != "")
//{
// model.LocatorNodeSetting.LineAreaId = int.Parse(ds.Tables[0].Rows[i]["LineAreaId1"].ToString());
//}
//if (ds.Tables[0].Rows[i]["IsStaticNumber1"].ToString() != "")
//{
// model.LocatorNodeSetting.IsStaticNumber = int.Parse(ds.Tables[0].Rows[i]["IsStaticNumber1"].ToString());
//}
//if (ds.Tables[0].Rows[i]["IsClearCar1"].ToString() != "")
//{
// model.LocatorNodeSetting.IsClearCar = int.Parse(ds.Tables[0].Rows[i]["IsClearCar1"].ToString());
//}
list.Add(model);
}
}
return list;
}
/// <summary>
/// 获取小车实时数据缓存,便于启动初始化
/// </summary>
/// <param name="strWhere"></param>
/// <returns></returns>
public static List<CarRealInfo> getOutCarInfo()
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@" select carno,a.materialno,a.materialbarno,b.areano,a.createtime from basedata_carrealinfo a
left join basedata_linecatcharea b on a.locatorid=b.id
where a.isdeleted=0 and isoutlocator=1 order by a.createtime ");
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
List<CarRealInfo> list = new List<CarRealInfo>();
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
CarRealInfo model = new CarRealInfo();
model.CarNo = ds.Tables[0].Rows[i]["carno"].ToString();
model.MaterialNo = ds.Tables[0].Rows[i]["materialno"].ToString();
model.MaterialBarNo = ds.Tables[0].Rows[i]["materialbarno"].ToString();
model.LineAreaNo = ds.Tables[0].Rows[i]["areano"].ToString();
model.TimeStr = DateTime.Parse(ds.Tables[0].Rows[i]["createtime"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
list.Add(model);
}
}
return list;
}
/// <summary>
/// 获取小车实时数据缓存,便于启动初始化
/// </summary>
/// <param name="strWhere"></param>
/// <returns></returns>
public static List<CarRealInfo> getCurrCarInfo(string carno)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@" select carno,a.materialno,a.materialbarno,b.areano,a.optdt,c.nodeno from basedata_carrealinfo a
left join basedata_linecatcharea b on a.locatorid=b.id
left join basedata_nodesetting c on a.CurrNodeId=c.id
where carno=@carno ");
MySqlParameter param = new MySqlParameter("@carno", carno);
DataSet ds = DbHelperSQLServer.Query(strSql.ToString(), param);
List<CarRealInfo> list = new List<CarRealInfo>();
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
CarRealInfo model = new CarRealInfo();
model.CarNo = ds.Tables[0].Rows[i]["carno"].ToString();
model.MaterialNo = ds.Tables[0].Rows[i]["materialno"].ToString();
model.MaterialBarNo = ds.Tables[0].Rows[i]["materialbarno"].ToString();
model.LineAreaNo = ds.Tables[0].Rows[i]["areano"].ToString();
model.TimeStr = DateTime.Parse(ds.Tables[0].Rows[i]["optdt"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
model.CurrNodeNo = ds.Tables[0].Rows[i]["nodeno"].ToString();
list.Add(model);
}
}
return list;
}
/// <summary>
/// 修改订单表上件 下件数量
/// </summary>
/// <param name="id"></param>
/// <param name="UpDownType">0: 上件总数量 1 :下件数量修改</param>
/// <returns></returns>
public static int UpdatePlanOrderAmount(int id, int UpDownType)
{
string sqlstr = "";
if (UpDownType == 0)
{
sqlstr = "UPDATE basedata_orderplan set upAmount=UpAmount+1 where id=@id";
}
else
{
sqlstr = "UPDATE basedata_orderplan set downAount=downAount+1 where id=@id";
}
MySqlParameter[] parameters = {
new MySqlParameter("@id", MySqlDbType.Int32,4) ,
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50)
};
parameters[0].Value = id;
parameters[1].Value = UpDownType;
return DbHelperSQLServer.ExecuteNonQuery(sqlstr, parameters);
}
public static DateTime GetLastTime()
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select max(createtime) from basedata_offlinemateriallist_his where isdeleted=0 ;");
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
if (ds.Tables[0].Rows.Count > 0 && ds.Tables[0].Rows[0][0] != DBNull.Value)
{
return Convert.ToDateTime(ds.Tables[0].Rows[0][0]);
}
return DateTime.Now.AddMinutes(-10);
}
/// <summary>
/// 增加一条数据
/// </summary>
public static int AddProductInfo(Productinfo model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into basedata_productinfo(");
strSql.Append("ProductBarno,MaterialNo,IsDeleted,CreateTime,CreateId,CreateBy,ModifyTime,ModifyId,ModifyBy");
strSql.Append(") values (");
strSql.Append("@ProductBarno,@MaterialNo,@IsDeleted,@CreateTime,@CreateId,@CreateBy,@ModifyTime,@ModifyId,@ModifyBy");
strSql.Append(") ");
strSql.Append(";select @@IDENTITY");
MySqlParameter[] parameters = {
new MySqlParameter("@ProductBarno", MySqlDbType.VarChar,50) ,
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
new MySqlParameter("@CreateBy", MySqlDbType.LongText) ,
new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
new MySqlParameter("@ModifyBy", MySqlDbType.LongText)
};
parameters[0].Value = model.ProductBarno;
parameters[1].Value = model.MaterialNo;
parameters[2].Value = model.IsDeleted;
parameters[3].Value = model.CreateTime;
parameters[4].Value = model.CreateId;
parameters[5].Value = model.CreateBy;
parameters[6].Value = model.ModifyTime;
parameters[7].Value = model.ModifyId;
parameters[8].Value = model.ModifyBy;
object obj = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
//public static List<UpLineMaterialList> getUpLineMaterialLists(string strwhere)
//{
// List<UpLineMaterialList> list = new List<UpLineMaterialList>();
// StringBuilder strSql = new StringBuilder();
// strSql.Append("select * from basedata_uplinemateriallist ");
// DataSet ds = DbHelperMySQL.Query(strSql.ToString());
// if (ds.Tables[0].Rows.Count > 0)
// {
// for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
// {
// UpLineMaterialList model = new UpLineMaterialList();
// if (ds.Tables[0].Rows[i]["Id"].ToString() != "")
// {
// model.Id = int.Parse(ds.Tables[0].Rows[i]["Id"].ToString());
// }
// model.MaterialNo = ds.Tables[0].Rows[i]["MaterialNo"].ToString();
// model.ProductBarNo = ds.Tables[0].Rows[i]["ProductBarNo"].ToString();
// model.LineNo = ds.Tables[0].Rows[i]["LineNo"].ToString();
// if (ds.Tables[0].Rows[i]["IsOver"].ToString() != "")
// {
// model.IsOver = int.Parse(ds.Tables[0].Rows[i]["IsOver"].ToString());
// }
// list.Add(model);
// }
// }
// return list;
//}
public static List<UpLineScanCarList> getUpLineScanCarLists(string strwhere)
{
List<UpLineScanCarList> list = new List<UpLineScanCarList>();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from basedata_uplinescancarlist where isdeleted=0;");
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
UpLineScanCarList model = new UpLineScanCarList();
if (ds.Tables[0].Rows[i]["Id"].ToString() != "")
{
model.Id = int.Parse(ds.Tables[0].Rows[i]["Id"].ToString());
}
model.MaterialNo = ds.Tables[0].Rows[i]["MaterialNo"].ToString();
model.CarNo = ds.Tables[0].Rows[i]["Carcode"].ToString();
model.LineNo = ds.Tables[0].Rows[i]["LineNo"].ToString();
if (ds.Tables[0].Rows[i]["IsOver"].ToString() != "")
{
model.IsOver = int.Parse(ds.Tables[0].Rows[i]["IsOver"].ToString());
}
if (ds.Tables[0].Rows[i]["number"].ToString() != "")
{
model.Number = int.Parse(ds.Tables[0].Rows[i]["number"].ToString());
}
list.Add(model);
}
}
return list;
}
/// <summary>
/// 删除一条数据
/// </summary>
public static bool DeleteUpLineMaterial(int Id)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("delete from basedata_uplinescancarlist ");
strSql.Append(" where Id=@Id ");
MySqlParameter[] parameters = {
new MySqlParameter("@Id", MySqlDbType.Int32,11) };
parameters[0].Value = Id;
int rows = DbHelperSQLServer.ExecuteNonQuery(strSql.ToString(), parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 删除一条数据
/// </summary>
public static bool DeleteOffLineMaterial(int Id)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("delete from basedata_offlinemateriallist ");
strSql.Append(" where Id=@Id ");
MySqlParameter[] parameters = {
new MySqlParameter("@Id", MySqlDbType.Int32,11) };
parameters[0].Value = Id;
int rows = DbHelperSQLServer.ExecuteNonQuery(strSql.ToString(), parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
///// <summary>
///// 增加一条数据
///// </summary>
//public static int AddUpLineMaterial(UpLineMaterialList model)
//{
// StringBuilder strSql = new StringBuilder();
// strSql.Append("insert into basedata_uplinemateriallist(");
// strSql.Append("Id,MaterialNo,ProductBarNo,LineNo");
// strSql.Append(") values (");
// strSql.Append("@Id,@MaterialNo,@ProductBarNo,@LineNo");
// strSql.Append(");select @@IDENTITY ");
// MySqlParameter[] parameters = {
// new MySqlParameter("@Id", MySqlDbType.Int32,11) ,
// new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
// new MySqlParameter("@ProductBarNo", MySqlDbType.VarChar,50) ,
// new MySqlParameter("@LineNo", MySqlDbType.Int32,11) ,
// //new MySqlParameter("@IsDeleted", MySqlDbType.Int32,1) ,
// //new MySqlParameter("@CreateTime", MySqlDbType.DateTime) ,
// //new MySqlParameter("@CreateId", MySqlDbType.Int32,11) ,
// //new MySqlParameter("@CreateBy", MySqlDbType.LongText) ,
// //new MySqlParameter("@ModifyTime", MySqlDbType.DateTime) ,
// //new MySqlParameter("@ModifyId", MySqlDbType.Int32,11) ,
// //new MySqlParameter("@ModifyBy", MySqlDbType.LongText)
// };
// parameters[0].Value = model.Id;
// parameters[1].Value = model.MaterialNo;
// parameters[2].Value = model.ProductBarNo;
// // parameters[3].Value = model.LineNo;
// //parameters[4].Value = model.IsDeleted;
// //parameters[5].Value = model.CreateTime;
// //parameters[6].Value = model.CreateId;
// //parameters[7].Value = model.CreateBy;
// //parameters[8].Value = model.ModifyTime;
// //parameters[9].Value = model.ModifyId;
// //parameters[10].Value = model.ModifyBy;
// int id = 0;
// object ret = DbHelperMySQL.ExecuteScalar(strSql.ToString(), parameters);
// if (ret != null && ret != DBNull.Value)
// {
// id = Convert.ToInt32(ret);
// }
// return id;
//}
/// <summary>
/// 增加一条数据
/// </summary>
public static int AddUpLineScancar(UpLineScanCarList model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into basedata_uplinescancarlist(");
strSql.Append("Id,MaterialNo,CarNo,MaterialBarCode,ProductMaterialNo,LineNo,Number,CreateTime,IsDeleted");
strSql.Append(") values (");
strSql.Append("@Id,@MaterialNo,@CarNo,@MaterialBarCode,@ProductMaterialNo,@LineNo,@Number,now(),0");
strSql.Append(");select @@IDENTITY ");
MySqlParameter[] parameters = {
new MySqlParameter("@Id", MySqlDbType.Int32,11) ,
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@CarNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@MaterialBarCode",MySqlDbType.VarChar,50) ,
new MySqlParameter("@ProductMaterialNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@LineNo", MySqlDbType.VarChar,50) ,
new MySqlParameter("@Number", MySqlDbType.Int32,11) ,
};
parameters[0].Value = model.Id;
parameters[1].Value = model.MaterialNo;
parameters[2].Value = model.CarNo;
parameters[3].Value = model.MaterialBarCode;
parameters[4].Value = model.ProductMaterialNo;
parameters[5].Value = model.LineNo;
parameters[6].Value = model.Number;
int id = 0;
object ret = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (ret != null && ret != DBNull.Value)
{
id = Convert.ToInt32(ret);
}
return id;
}
/// <summary>
/// 查询时序订单
/// </summary>
/// <param name="strWhere"></param>
/// <returns></returns>
public static List<Orderplan> getOrderPlanList(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select a.*,b.material_name FROM base_orderinfo a left join ");
strSql.Append("base_materialinfo b on a.material_no = b.material_no where a.is_delete = 0 and b.is_delete = 0 ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
List<Orderplan> list = new List<Orderplan>();
if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
Orderplan model = new Orderplan();
if (ds.Tables[0].Rows[i]["id"].ToString() != "")
{
model.id = ds.Tables[0].Rows[i]["id"].ToString(); //id
}
model.orderNo = ds.Tables[0].Rows[i]["order_no"].ToString();//订单号
model.productCode = ds.Tables[0].Rows[i]["material_no"].ToString();//物料号
model.productDesc = ds.Tables[0].Rows[i]["material_name"].ToString();//物料描述
if (ds.Tables[0].Rows[i]["product_amount"].ToString() != "")
{
model.amount = int.Parse(ds.Tables[0].Rows[i]["product_amount"].ToString()); //计划数量
}
//model.planType = ds.Tables[0].Rows[i]["planType"].ToString(); //类型 需求计划类型0:T - 1需求计划,1:两小时时序计划)
if (ds.Tables[0].Rows[i]["product_sortno"].ToString() != "")
{
model.PlanOrder = int.Parse(ds.Tables[0].Rows[i]["product_sortno"].ToString());//顺序号
}
if (ds.Tables[0].Rows[i]["plan_state"].ToString() != "")
{
model.planState = int.Parse(ds.Tables[0].Rows[i]["plan_state"].ToString());//计划状态
}
if (ds.Tables[0].Rows[i]["plan_starttime"].ToString() != "")
{
model.planStartTime = DateTime.Parse(ds.Tables[0].Rows[i]["plan_starttime"].ToString());//计划日期
}
if (ds.Tables[0].Rows[i]["up_amount"].ToString() != "")
{
model.upAmount = int.Parse(ds.Tables[0].Rows[i]["up_amount"].ToString());//上件数量
}
if (ds.Tables[0].Rows[i]["down_amount"].ToString() != "")
{
model.downAmount = int.Parse(ds.Tables[0].Rows[i]["down_amount"].ToString());//下件数量
}
list.Add(model);
}
}
return list;
}
public static DataTable getOrderPlanDt(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select ProductCode,ProductDesc as selectitem FROM basedata_orderplan where isdeleted=0; ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
List<Orderplan> list = new List<Orderplan>();
if (ds.Tables[0].Rows.Count > 0)
{
return ds.Tables[0];
}
return null; ;
}
/// <summary>
/// 是否存在该小车记录
/// </summary>
/// <param name="CarNo">主键值</param>
/// <returns>是否存在</returns>
public static bool ExistsCarRealInfo(string CarNo)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select count(1) from BaseData_CarRealInfo");
strSql.Append(" where CarNo = @CarNo ");
MySqlParameter[] parameters = {
new MySqlParameter("@CarNo", MySqlDbType.VarChar,50)
};
parameters[0].Value = CarNo;
return Convert.ToInt32(DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters)) != 0;
}
/// <summary>
/// 增加一条数据
/// </summary>
/// <param name="model">model</param>
public static int AddCarRealRecord(CarRealInfo model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"
insert into BaseData_CarRealInfo(CarNo,MaterialNo,MaterialBarNo,CurrNodeId,LocatorNodeId,LocatorId,OptDt,OffMaterialId,Number,IsOver,HadNumber,createtime)
values (@CarNo,@MaterialNo,@MaterialBarNo,@CurrNodeId,@LocatorNodeId,@LocatorId,@OptDt,@OffMaterialId,@Number,0,@HadNumber,now())");
strSql.Append(@"
; select @@identity; ");
MySqlParameter[] parameters = {
new MySqlParameter("@CarNo", MySqlDbType.VarChar,50),
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50),
new MySqlParameter("@MaterialBarNo", MySqlDbType.VarChar,50),
new MySqlParameter("@CurrNodeId", MySqlDbType.Int32),
new MySqlParameter("@LocatorNodeId", MySqlDbType.Int32),
new MySqlParameter("@LocatorId", MySqlDbType.Int32),
new MySqlParameter("@OptDt", MySqlDbType.DateTime),
new MySqlParameter("@OffMaterialId", MySqlDbType.Int32),
new MySqlParameter("@Number", MySqlDbType.Int32),
new MySqlParameter("@HadNumber", MySqlDbType.Int32)
};
parameters[0].Value = model.CarNo;
parameters[1].Value = model.MaterialNo;
parameters[2].Value = model.MaterialBarNo;
parameters[3].Value = model.CurrNodeId;
parameters[4].Value = model.LocatorNodeId;
parameters[5].Value = model.LocatorId;
parameters[6].Value = DateTime.Now;
parameters[7].Value = model.OffMaterialId;
parameters[8].Value = model.Number;
parameters[9].Value = model.HadNumber;
int id = 0;
object ret = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (ret != null && ret != DBNull.Value)
{
id = Convert.ToInt32(ret);
}
return id;
}
/// <summary>
/// 更新一条数据
/// </summary>
/// <param name="model">model</param>
public static void ModifyRealCarinfoRecord(CarRealInfo model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"
update BaseData_CarRealInfo set
MaterialNo=@MaterialNo,
MaterialBarNo=@MaterialBarNo,
CurrNodeId=@CurrNodeId,
LocatorNodeId=@LocatorNodeId,
LocatorId=@LocatorId,
OffMaterialId=@OffMaterialId,
IsOver=@IsOver,
Number=@Number,
Number=@Number,
OptDt=@OptDt,
IsProOutLocator=@IsProOutLocator,
IsOutLocator=@IsOutLocator,
HadNumber=@HadNumber
,createtime=now()
where CarNo = @CarNo ");
MySqlParameter[] parameters = {
new MySqlParameter("@CarNo", MySqlDbType.VarChar,50),
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50),
new MySqlParameter("@MaterialBarNo", MySqlDbType.VarChar,50),
new MySqlParameter("@CurrNodeId", MySqlDbType.Int32),
new MySqlParameter("@LocatorNodeId", MySqlDbType.Int32),
new MySqlParameter("@LocatorId", MySqlDbType.Int32),
new MySqlParameter("@OptDt", MySqlDbType.DateTime),
new MySqlParameter("@OffMaterialId", MySqlDbType.Int32),
new MySqlParameter("@Number", MySqlDbType.Int32),
new MySqlParameter("@IsOver", MySqlDbType.Int32),
new MySqlParameter("@IsProOutLocator", MySqlDbType.Int32),
new MySqlParameter("@IsOutLocator", MySqlDbType.Int32),
new MySqlParameter("@HadNumber", MySqlDbType.Int32),
// new MySqlParameter("@CreateTime", MySqlDbType.DateTime),
};
parameters[0].Value = model.CarNo;
parameters[1].Value = model.MaterialNo;
parameters[2].Value = model.MaterialBarNo;
parameters[3].Value = model.CurrNodeId;
parameters[4].Value = model.LocatorNodeId;
parameters[5].Value = model.LocatorId;
parameters[6].Value = model.OptDt;
parameters[7].Value = model.OffMaterialId;
parameters[8].Value = model.Number;
parameters[9].Value = model.IsOver;
parameters[10].Value = model.IsProOutLocator;
parameters[11].Value = model.IsOutLocator;
parameters[12].Value = model.HadNumber;
// parameters[12].Value = model.CreateDt;
DbHelperSQLServer.ExecuteNonQuery(strSql.ToString(), parameters);
}
/// <summary>
/// 增加一条数据
/// </summary>
/// <param name="model">model</param>
public static int AddCarHistoryRecord(CarRealInfo model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"
insert into BaseData_CarHistoryInfo(CarNo,MaterialNo,MaterialBarNo,CurrNodeId,LocatorNodeId,LocatorId,OptDt,OffMaterialId,Number,IsOver)
values (@CarNo,@MaterialNo,@MaterialBarNo,@CurrNodeId,@LocatorNodeId,@LocatorId,@OptDt,@OffMaterialId,@Number,0)");
strSql.Append(@"
; select @@identity; ");
MySqlParameter[] parameters = {
new MySqlParameter("@CarNo", MySqlDbType.VarChar,50),
new MySqlParameter("@MaterialNo", MySqlDbType.VarChar,50),
new MySqlParameter("@MaterialBarNo", MySqlDbType.VarChar,50),
new MySqlParameter("@CurrNodeId", MySqlDbType.Int32),
new MySqlParameter("@LocatorNodeId", MySqlDbType.Int32),
new MySqlParameter("@LocatorId", MySqlDbType.Int32),
new MySqlParameter("@OptDt", MySqlDbType.DateTime),
new MySqlParameter("@OffMaterialId", MySqlDbType.Int32),
new MySqlParameter("@Number", MySqlDbType.Int32)
};
parameters[0].Value = model.CarNo;
parameters[1].Value = model.MaterialNo;
parameters[2].Value = model.MaterialBarNo;
parameters[3].Value = model.CurrNodeId;
parameters[4].Value = model.LocatorNodeId;
parameters[5].Value = model.LocatorId;
parameters[6].Value = DateTime.Now;
parameters[7].Value = model.OffMaterialId;
parameters[8].Value = model.Number;
int id = 0;
object ret = DbHelperSQLServer.ExecuteScalar(strSql.ToString(), parameters);
if (ret != null && ret != DBNull.Value)
{
id = Convert.ToInt32(ret);
}
return id;
}
/// <summary>
/// 得到一个model
/// </summary>
/// <param name="CarNo">主键值</param>
/// <returns>model</returns>
public static CarRealInfo GetCarModel(string CarNo)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"
select *
from BaseData_CarRealInfo");
strSql.Append(@"
where CarNo = @CarNo ");
MySqlParameter[] parameters = {
new MySqlParameter("@CarNo", MySqlDbType.VarChar,50)
};
parameters[0].Value = CarNo;
CarRealInfo model = new CarRealInfo();
DataSet ds = DbHelperSQLServer.Query(strSql.ToString(), parameters);
if (ds.Tables[0].Rows.Count > 0)
{
DataRow row = ds.Tables[0].Rows[0];
if (row["Id"] != DBNull.Value)
{
model.Id = Convert.ToInt32(row["Id"]);
}
if (row["CarNo"] != DBNull.Value)
{
model.CarNo = Convert.ToString(row["CarNo"]);
}
if (row["IsOver"] != DBNull.Value)
{
model.IsOver = Convert.ToInt32(row["IsOver"]);
}
if (row["MaterialNo"] != DBNull.Value)
{
model.MaterialNo = Convert.ToString(row["MaterialNo"]);
}
if (row["MaterialBarNo"] != DBNull.Value)
{
model.MaterialBarNo = Convert.ToString(row["MaterialBarNo"]);
}
if (row["CurrNodeId"] != DBNull.Value)
{
model.CurrNodeId = Convert.ToInt32(row["CurrNodeId"]);
}
if (row["LocatorNodeId"] != DBNull.Value)
{
model.LocatorNodeId = Convert.ToInt32(row["LocatorNodeId"]);
}
if (row["LocatorId"] != DBNull.Value)
{
model.LocatorId = Convert.ToInt32(row["LocatorId"]);
}
if (row["OptDt"] != DBNull.Value)
{
model.OptDt = Convert.ToDateTime(row["OptDt"]);
}
return model;
}
else
{
return null;
}
}
///// <summary>
///// 获取线体列表
///// </summary>
///// <param name="where"></param>
///// <returns></returns>
//public static List<LineInfo> GetLineInfoList(string where)
//{
// List<LineInfo> list = new List<LineInfo>();
// string sql = "select * from basedata_lineinfo ";
// DataSet dtset = DbHelperMySQL.Query(sql);
// if (dtset != null && dtset.Tables.Count > 0)
// {
// foreach (DataRow row in dtset.Tables[0].Rows)
// {
// LineInfo model = new LineInfo();
// if (row["Id"] != DBNull.Value)
// {
// model.Id = Convert.ToInt32(row["Id"]);
// }
// if (row["LineNumber"] != DBNull.Value)
// {
// model.LineNumber = Convert.ToString(row["LineNumber"]);
// }
// if (row["LineNm"] != DBNull.Value)
// {
// model.LineNm = Convert.ToString(row["LineNm"]);
// }
// if (row["LineNo"] != DBNull.Value)
// {
// model.LineNo = Convert.ToString(row["LineNo"]);
// }
// if (row["LineType"] != DBNull.Value)
// {
// model.LineType = Convert.ToInt32(row["LineType"]);
// }
// list.Add(model);
// }
// }
// return list;
//}
/// <summary>
/// 获取线体缓存区列表
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static List<LineCatchArea> GetLineCatchAreaList(string where)
{
List<LineCatchArea> list = new List<LineCatchArea>();
string sql = "select * from basedata_linecatcharea where isdeleted=0 " + where;
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0)
{
foreach (DataRow row in dtset.Tables[0].Rows)
{
LineCatchArea model = new LineCatchArea();
if (row["Id"] != DBNull.Value)
{
model.Id = Convert.ToInt32(row["Id"]);
}
if (row["AreaNo"] != DBNull.Value)
{
model.AreaNo = Convert.ToString(row["AreaNo"]);
}
model.MaterialNo = row["Materialno"].ToString();
model.MaterialNm = row["MaterialNm"].ToString();
if (row["AreaNm"] != DBNull.Value)
{
model.AreaNm = Convert.ToString(row["AreaNm"]);
}
if (row["LineNo"] != DBNull.Value)
{
model.LineNo = row["LineNo"].ToString();
}
if (row["AreaType"].ToString() != "")
{
model.AreaType = int.Parse(row["AreaType"].ToString());
}
if (row["MaxNumber"].ToString() != "")
{
model.MaxNumber = int.Parse(row["MaxNumber"].ToString());
}
if (row["AreaStorageType"].ToString() != "")
{
model.AreaStorageType = int.Parse(row["AreaStorageType"].ToString());
}
list.Add(model);
}
}
return list;
}
/// <summary>
/// 获取线体缓存区列表
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static DataTable GetLineCatchAreaDt(string where)
{
List<LineCatchArea> list = new List<LineCatchArea>();
string sql = "select areano as selectitem from basedata_linecatcharea where isdeleted=0 " + where;
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
/// <summary>
/// 获取PLC配置列表
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static Dictionary<string, PlcSetting> GetPlcSettingList(string where)
{
Dictionary<string, PlcSetting> list = new Dictionary<string, PlcSetting>();
string sql = "select * from BaseData_PlcSetting where isdeleted=0";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0)
{
foreach (DataRow row in dtset.Tables[0].Rows)
{
PlcSetting model = new PlcSetting();
if (row["Id"] != DBNull.Value)
{
model.Id = Convert.ToInt32(row["Id"]);
}
if (row["PlcNo"] != DBNull.Value)
{
model.PlcNo = Convert.ToString(row["PlcNo"]);
}
if (row["PlcAddress"] != DBNull.Value)
{
model.PlcAddress = Convert.ToString(row["PlcAddress"]);
}
if (row["PlcValueLength"] != DBNull.Value)
{
model.PlcValueLength = Convert.ToString(row["PlcValueLength"]);
}
if (row["PlcDataType"] != DBNull.Value)
{
model.PlcDataType = Convert.ToInt32(row["PlcDataType"]);
}
list.Add(model.PlcNo, model);
}
}
return list;
}
/// <summary>
/// 获取线体预设列表
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static List<LinePreInfo> GetLinePreInfoList(string where)
{
List<LinePreInfo> list = new List<LinePreInfo>();
string sql = "select * from BaseData_LinePreInfo ";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0)
{
foreach (DataRow row in dtset.Tables[0].Rows)
{
LinePreInfo model = new LinePreInfo();
if (row["Id"] != DBNull.Value)
{
model.Id = Convert.ToInt32(row["Id"]);
}
if (row["LinePreNo"] != DBNull.Value)
{
model.LinePreNo = Convert.ToString(row["LinePreNo"]);
}
if (row["LineStartNo"] != DBNull.Value)
{
model.LineStartNo = Convert.ToString(row["LineStartNo"]);
}
if (row["LineEndNo"] != DBNull.Value)
{
model.LineEndNo = Convert.ToString(row["LineEndNo"]);
}
if (row["AllNeedTime"] != DBNull.Value)
{
model.AllNeedTime = Convert.ToInt32(row["AllNeedTime"]);
}
if (row["RunType"] != DBNull.Value)
{
model.RunType = Convert.ToInt32(row["RunType"]);
}
list.Add(model);
}
}
return list;
}
/// <summary>
/// 获取节点配置列表
/// </summary>
/// <param name="where"></param>
/// <returns></returns>
public static List<NodeSetting> GetNodeSettingList(string where, List<LineCatchArea> Arealist)
{
List<NodeSetting> list = new List<NodeSetting>();
string sql = @"select * from basedata_nodesetting a
left join basedata_plcsetting b on a.PlcId=b.Id
left join basedata_linecatcharea g on g.Id=a.LineAreaId
left join basedata_plcsetting c on a.PlcId2=c.Id
left join basedata_plcsetting d on a.PlcId3=d.Id
left join basedata_plcsetting e on a.PlcId4=e.Id
left join basedata_plcsetting f on a.PlcId5=f.Id
where a.isdeleted=0;
";
DataSet dtset = DbHelperSQLServer.Query(sql);
if (dtset != null && dtset.Tables.Count > 0)
{
foreach (DataRow row in dtset.Tables[0].Rows)
{
NodeSetting model = new NodeSetting();
if (row["Id"] != DBNull.Value)
{
model.Id = Convert.ToInt32(row["Id"]);
}
if (row["NodeNo"] != DBNull.Value)
{
model.NodeNo = Convert.ToString(row["NodeNo"]);
}
if (row["NodeDesc"] != DBNull.Value)
{
model.NodeDesc = Convert.ToString(row["NodeDesc"]);
}
if (row["PlcId"] != DBNull.Value)
{
model.PlcId1 = Convert.ToInt32(row["PlcId"]);
}
if (row["NodeType"] != DBNull.Value)
{
model.NodeType = Convert.ToInt32(row["NodeType"]);
}
if (row["LineAreaId"] != DBNull.Value)
{
model.LineAreaId = Convert.ToInt32(row["LineAreaId"]);
var linearea = Arealist.FirstOrDefault(t => t.Id == model.LineAreaId);
if (linearea != null)
{
model.LineCatchArea = linearea;
}
}
if (row["LocalThriftip"].ToString() != "")
{
model.LocalThriftip = row["LocalThriftip"].ToString();
}
if (row["LocalThriftport"].ToString() != "")
{
model.LocalThriftport = int.Parse(row["LocalThriftport"].ToString());
}
if (row["ServerThriftport"].ToString() != "")
{
model.ServerThriftport = int.Parse(row["ServerThriftport"].ToString());
}
if (row["IsStaticNumber"] != DBNull.Value)
{
model.IsStaticNumber = Convert.ToInt32(row["IsStaticNumber"]);
}
if (row["IsClearCar"] != DBNull.Value)
{
model.IsClearCar = Convert.ToInt32(row["IsClearCar"]);
}
PlcSetting plcmodel = new PlcSetting();
if (row["Id1"] != DBNull.Value)
{
plcmodel.Id = Convert.ToInt32(row["Id1"]);
}
if (row["PlcNo"] != DBNull.Value)
{
plcmodel.PlcNo = Convert.ToString(row["PlcNo"]);
}
if (row["PlcAddress"] != DBNull.Value)
{
plcmodel.PlcAddress = Convert.ToString(row["PlcAddress"]);
}
if (row["PlcValueLength"] != DBNull.Value)
{
plcmodel.PlcValueLength = Convert.ToString(row["PlcValueLength"]);
}
if (row["PlcDataType"] != DBNull.Value)
{
plcmodel.PlcDataType = Convert.ToInt32(row["PlcDataType"]);
}
model.PlcSetting1 = plcmodel;
model.PlcSetting2 = new PlcSetting();
if (row["Id3"] != DBNull.Value)
{
model.PlcSetting2.Id = Convert.ToInt32(row["Id3"]);
}
if (row["PlcNo1"] != DBNull.Value)
{
model.PlcSetting2.PlcNo = Convert.ToString(row["PlcNo1"]);
}
if (row["PlcAddress1"] != DBNull.Value)
{
model.PlcSetting2.PlcAddress = Convert.ToString(row["PlcAddress1"]);
}
if (row["PlcValueLength1"] != DBNull.Value)
{
model.PlcSetting2.PlcValueLength = Convert.ToString(row["PlcValueLength1"]);
}
if (row["PlcDataType1"] != DBNull.Value)
{
model.PlcSetting2.PlcDataType = Convert.ToInt32(row["PlcDataType1"]);
}
model.PlcSetting3 = new PlcSetting();
if (row["Id4"] != DBNull.Value)
{
model.PlcSetting3.Id = Convert.ToInt32(row["Id4"]);
}
if (row["PlcNo2"] != DBNull.Value)
{
model.PlcSetting3.PlcNo = Convert.ToString(row["PlcNo2"]);
}
if (row["PlcAddress2"] != DBNull.Value)
{
model.PlcSetting3.PlcAddress = Convert.ToString(row["PlcAddress2"]);
}
if (row["PlcValueLength2"] != DBNull.Value)
{
model.PlcSetting3.PlcValueLength = Convert.ToString(row["PlcValueLength2"]);
}
if (row["PlcDataType2"] != DBNull.Value)
{
model.PlcSetting3.PlcDataType = Convert.ToInt32(row["PlcDataType2"]);
}
model.PlcSetting4 = new PlcSetting();
if (row["Id5"] != DBNull.Value)
{
model.PlcSetting4.Id = Convert.ToInt32(row["Id5"]);
}
if (row["PlcNo3"] != DBNull.Value)
{
model.PlcSetting4.PlcNo = Convert.ToString(row["PlcNo3"]);
}
if (row["PlcAddress3"] != DBNull.Value)
{
model.PlcSetting4.PlcAddress = Convert.ToString(row["PlcAddress3"]);
}
if (row["PlcValueLength3"] != DBNull.Value)
{
model.PlcSetting4.PlcValueLength = Convert.ToString(row["PlcValueLength3"]);
}
if (row["PlcDataType3"] != DBNull.Value)
{
model.PlcSetting4.PlcDataType = Convert.ToInt32(row["PlcDataType3"]);
}
model.PlcSetting5 = new PlcSetting();
if (row["Id6"] != DBNull.Value)
{
model.PlcSetting5.Id = Convert.ToInt32(row["Id6"]);
}
if (row["PlcNo4"] != DBNull.Value)
{
model.PlcSetting5.PlcNo = Convert.ToString(row["PlcNo4"]);
}
if (row["PlcAddress4"] != DBNull.Value)
{
model.PlcSetting5.PlcAddress = Convert.ToString(row["PlcAddress4"]);
}
if (row["PlcValueLength4"] != DBNull.Value)
{
model.PlcSetting5.PlcValueLength = Convert.ToString(row["PlcValueLength4"]);
}
if (row["PlcDataType4"] != DBNull.Value)
{
model.PlcSetting5.PlcDataType = Convert.ToInt32(row["PlcDataType4"]);
}
list.Add(model);
}
}
return list;
}
/// <summary>
/// 得到一个对象实体集合
/// </summary>
public static List<MaterialInfo> GetMaterialInfoList(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select Id, material_no, material_name, is_delete, DATE_FORMAT(create_time,'%Y-%m-%d %H:%i:%s') create_time, create_id, ");
strSql.Append("create_by, DATE_FORMAT(modify_time, '%Y-%m-%d %H:%i:%s') modify_time, modify_id, modify_by from base_materialinfo");
if (!string.IsNullOrWhiteSpace(strWhere))
strSql.Append(" where isdeleted=0 " + strWhere);
List<MaterialInfo> Items = new List<MaterialInfo>();
DataSet ds = DbHelperSQLServer.Query(strSql.ToString());
if (ds.Tables[0].Rows.Count > 0)
{
foreach (DataRow row in ds.Tables[0].Rows)
{
MaterialInfo model = new MaterialInfo();
if (row["Id"] != DBNull.Value)
{
model.Id = Guid.Parse(row["Id"].ToString());
}
if (row["material_no"] != DBNull.Value)
{
model.MaterialNo = Convert.ToString(row["material_no"]).Trim().ToUpper();
}
if (row["material_name"] != DBNull.Value)
{
model.MaterialNm = Convert.ToString(row["material_name"]);
}
Items.Add(model);
}
}
return Items;
}
public DataTable WeighingTask(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select qt.check_name,");
strSql.Append(" qct.check_type, ");
strSql.Append(" qct.check_no,");
strSql.Append(" qct.material_code,");
strSql.Append(" qct.material_name, ");
strSql.Append(" qct.income_time, ");
strSql.Append(" qctd.rule_name, ");
strSql.Append(" qctd.record_id, ");
strSql.Append(" qctd.actual_value ");
strSql.Append("from qc_check_task qct ");
strSql.Append("left join qc_check_type qt on qt.order_code = qct.check_type ");
strSql.Append("left join qc_check_task_detail qctd on qctd.belong_to = qct.record_id ");
strSql.Append("left join qc_check_type_project qctp on qctd.type_project_id = qctp.id");
if (!string.IsNullOrWhiteSpace(strWhere))
{
strSql.Append(" where 1=1 " + strWhere);
strSql.Append(" and qctp.weight = '1' and qctp.del_flag = '0' and qct.del_flag = '0' and qt.del_flag = '0' and qctd.del_flag = '0'");
}
else
{
strSql.Append(" where qctp.weight = '1' and qctp.del_flag = '0' and qct.del_flag = '0' and qt.del_flag = '0' and qctd.del_flag = '0'");
}
DataSet dtset= Utils.netClientDBHelper.getDataSet(strSql.ToString());
if (dtset != null && dtset.Tables.Count > 0 && dtset.Tables[0].Rows.Count > 0)
{
return dtset.Tables[0];
}
return null;
}
public int InsertCheckTaskDetail(string value,string where)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("UPDATE qc_check_task_detail ");
strSql.Append("SET actual_value =");
if (value == null)
{
strSql.Append("NULL");
}
else
{
strSql.Append($"'{value}'");
}
strSql.Append(" WHERE record_id =");
strSql.Append($"'{where}'");
int result= Utils.netClientDBHelper.executeUpdate(strSql.ToString());
return result;
}
// /// <summary>
// /// 获取物料bom列表
// /// </summary>
// /// <param name="where"></param>
// /// <returns></returns>
// public static List<MaterialBom> GetMaterialBomList(string where)
// {
// List<MaterialBom> list = new List<MaterialBom>();
// string sql = @"select a.id,b.id as pid,b.MaterialNo as bmno,b.MaterialNm as bmnm,c.id as cid,c.MaterialNo as cmno,c.MaterialNm as cmnm
// from basedata_materialbom a
//left join basedata_materialinfo b on a.ProductNo=b.MaterialNo
//left join basedata_materialinfo c on a.GateMaterialNo=c.MaterialNo
// where a.isdeleted=0;
// ";
// DataSet dtset = DbHelperMySQL.Query(sql);
// if (dtset != null && dtset.Tables.Count > 0)
// {
// foreach (DataRow row in dtset.Tables[0].Rows)
// {
// MaterialBom model = new MaterialBom();
// model.ParentMaterialInfo = new MaterialInfo();
// model.ChildMaterialInfo = new MaterialInfo();
// if (row["Id"] != DBNull.Value)
// {
// model.Id = Convert.ToInt32(row["Id"]);
// }
// if (row["pid"] != DBNull.Value)
// {
// model.ParentMaterialInfo.Id = Convert.ToInt32(row["pid"]);
// }
// if (row["cid"] != DBNull.Value)
// {
// model.ChildMaterialInfo.Id = Convert.ToInt32(row["pid"]);
// }
// if (row["bmno"] != DBNull.Value)
// {
// model.ParentMaterialInfo.MaterialNo = row["bmno"].ToString();
// model.MaterialNo = row["bmno"].ToString();
// }
// if (row["bmnm"] != DBNull.Value)
// {
// model.ParentMaterialInfo.MaterialNm = row["bmnm"].ToString();
// }
// if (row["cmno"] != DBNull.Value)
// {
// model.ChildMaterialInfo.MaterialNo = row["cmno"].ToString();
// }
// if (row["cmnm"] != DBNull.Value)
// {
// model.ChildMaterialInfo.MaterialNm = row["cmnm"].ToString();
// }
// list.Add(model);
// }
// }
// return list;
// }
}
}