/// <summary> /// Converts this instance of <see cref="serviceorderDto"/> to an instance of <see cref="serviceorder"/>. /// </summary> /// <param name="dto"><see cref="serviceorderDto"/> to convert.</param> public static serviceorder ToEntity(this serviceorderDto dto) { if (dto == null) { return(null); } var entity = new serviceorder(); entity.v_ServiceOrderId = dto.v_ServiceOrderId; entity.v_CustomServiceOrderId = dto.v_CustomServiceOrderId; entity.v_Description = dto.v_Description; entity.v_Comentary = dto.v_Comentary; entity.i_NumberOfWorker = dto.i_NumberOfWorker; entity.r_TotalCost = dto.r_TotalCost; entity.d_DeliveryDate = dto.d_DeliveryDate; entity.i_ServiceOrderStatusId = dto.i_ServiceOrderStatusId; entity.i_IsDeleted = dto.i_IsDeleted; entity.i_InsertUserId = dto.i_InsertUserId; entity.d_InsertDate = dto.d_InsertDate; entity.i_UpdateUserId = dto.i_UpdateUserId; entity.d_UpdateDate = dto.d_UpdateDate; dto.OnEntity(entity); return(entity); }
/// <summary> /// Converts this instance of <see cref="serviceorder"/> to an instance of <see cref="serviceorderDto"/>. /// </summary> /// <param name="entity"><see cref="serviceorder"/> to convert.</param> public static serviceorderDto ToDTO(this serviceorder entity) { if (entity == null) { return(null); } var dto = new serviceorderDto(); dto.v_ServiceOrderId = entity.v_ServiceOrderId; dto.v_CustomServiceOrderId = entity.v_CustomServiceOrderId; dto.v_Description = entity.v_Description; dto.v_Comentary = entity.v_Comentary; dto.i_NumberOfWorker = entity.i_NumberOfWorker; dto.r_TotalCost = entity.r_TotalCost; dto.d_DeliveryDate = entity.d_DeliveryDate; dto.i_ServiceOrderStatusId = entity.i_ServiceOrderStatusId; dto.i_IsDeleted = entity.i_IsDeleted; dto.i_InsertUserId = entity.i_InsertUserId; dto.d_InsertDate = entity.d_InsertDate; dto.i_UpdateUserId = entity.i_UpdateUserId; dto.d_UpdateDate = entity.d_UpdateDate; entity.OnDTO(dto); return(dto); }
public string AddServiceOrder(ref OperationResult pobjOperationResult, serviceorderDto pobjDtoEntity, List <serviceorderdetailDto> pobjDtoEntityDetail, List <string> ClientSession) { //mon.IsActive = true; string NewId = "(No generado)"; try { SigesoftEntitiesModel dbContext = new SigesoftEntitiesModel(); #region Service Order serviceorder objEntity = serviceorderAssembler.ToEntity(pobjDtoEntity); objEntity.d_InsertDate = DateTime.Now; objEntity.i_InsertUserId = Int32.Parse(ClientSession[2]); objEntity.i_IsDeleted = 0; // Autogeneramos el Pk de la tabla int intNodeId = int.Parse(ClientSession[0]); NewId = Common.Utils.GetNewId(intNodeId, Utils.GetNextSecuentialId(intNodeId, 101), "YY"); objEntity.v_ServiceOrderId = NewId; dbContext.AddToserviceorder(objEntity); dbContext.SaveChanges(); #endregion #region Service Order Detail if (pobjDtoEntityDetail != null) { foreach (var item in pobjDtoEntityDetail) { serviceorderdetail objEntityDetail = serviceorderdetailAssembler.ToEntity(item); objEntityDetail.d_InsertDate = DateTime.Now; objEntityDetail.i_InsertUserId = Int32.Parse(ClientSession[2]); objEntityDetail.i_IsDeleted = 0; // Autogeneramos el Pk de la tabla objEntityDetail.v_ServiceOrderId = NewId; objEntityDetail.v_ServiceOrderDetailId = Common.Utils.GetNewId(intNodeId, Utils.GetNextSecuentialId(intNodeId, 102), "YA"); dbContext.AddToserviceorderdetail(objEntityDetail); dbContext.SaveChanges(); } } pobjOperationResult.Success = 1; #endregion // Llenar entidad Log //LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "ORDERN SERVICIO", "v_ServiceOrderId=" + NewId.ToString(), Success.Ok, null); return(NewId); } catch (Exception ex) { pobjOperationResult.Success = 0; pobjOperationResult.ExceptionMessage = Common.Utils.ExceptionFormatter(ex); // Llenar entidad Log //LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "ORDEN SERVICIO", "v_ServiceOrderId=" + NewId.ToString(), Success.Failed, pobjOperationResult.ExceptionMessage); return(null); } }
/// <summary> /// Invoked when <see cref="ToEntity"/> operation is about to return. /// </summary> /// <param name="entity"><see cref="serviceorder"/> converted from <see cref="serviceorderDto"/>.</param> static partial void OnEntity(this serviceorderDto dto, serviceorder entity);
/// <summary> /// Invoked when <see cref="ToDTO"/> operation is about to return. /// </summary> /// <param name="dto"><see cref="serviceorderDto"/> converted from <see cref="serviceorder"/>.</param> static partial void OnDTO(this serviceorder entity, serviceorderDto dto);
public String Submit2Company(String tgid, String ytServiceOrderNo, String ytServiceStatus) { serviceorder serviceOrder = null; #region 基础信息 var dmt4 = DBHelper.GetTable("维修项目数据", "tb_maintain_three_guaranty", "*", string.Format(" tg_id='{0}'", tgid), "", ""); if (dmt4.Rows.Count > 0) { var dr = dmt4.Rows[0]; serviceOrder = new serviceorder { tg_id = CommonCtrl.IsNullToString(dr["tg_id"]), crm_service_bill_code = String.IsNullOrEmpty(ytServiceOrderNo) ? CommonCtrl.IsNullToString(dr["service_no_yt"]) : ytServiceOrderNo, //sap_code = "155125",//CommonCtrl.IsNullToString(dr["service_station_code"]), service_station_name = CommonCtrl.IsNullToString(dr["service_station_name"]), bill_type_yt = CommonCtrl.IsNullToString(dr["receipt_type"]), whether_go_out = CommonCtrl.IsNullToString(dr["whether_go_out"]), refit_case = "",//CommonCtrl.IsNullToString(dr["refit_case"]), //不处理 -- 改装情况 dsn_service_bill_code = CommonCtrl.IsNullToString(dr["series_num_yt"]), create_time = GetDatetime(dr["create_time"]), depot_no = CommonCtrl.IsNullToString(dr["depot_no"]), vehicle_no = CommonCtrl.IsNullToString(dr["vehicle_no"]), travel_mileage = CommonCtrl.IsNullToString(dr["travel_mileage"]), vehicle_use = CommonCtrl.IsNullToString(dr["customer_property"]), //不处理 -- 用户性质(车辆用途) vehicle_location = "", //CommonCtrl.IsNullToString(dr["vehicle_location"]), //不处理 -- 车辆所在地代码 vehicle_use_corp = CommonCtrl.IsNullToString(dr["vehicle_use_corp"]), linkman = CommonCtrl.IsNullToString(dr["linkman"]), link_man_mobile = CommonCtrl.IsNullToString(dr["link_man_mobile"]), repairer_name = CommonCtrl.IsNullToString(dr["repairer_name"]), repairer_mobile = CommonCtrl.IsNullToString(dr["repairer_mobile"]), driver_name = CommonCtrl.IsNullToString(dr["driver_name"]), driver_mobile = CommonCtrl.IsNullToString(dr["driver_mobile"]), start_work_time = GetDatetime(dr["start_work_time"]), complete_work_time = GetDatetime(dr["complete_work_time"]), appraiser_name = CommonCtrl.IsNullToString(dr["appraiser_id"]), repair_man = CommonCtrl.IsNullToString(dr["repair_man_id"]), travel_desc = CommonCtrl.IsNullToString(dr["goout_cause"]), approve_by_people = CommonCtrl.IsNullToString(dr["goout_approver"]), apply_rescue_place = CommonCtrl.IsNullToString(dr["goout_place"]), travel_lookup_code = CommonCtrl.IsNullToString(dr["means_traffic"]), depart_time = GetDatetime(dr["goout_time"]), back_time = GetDatetime(dr["goout_back_time"]), rescue_mileage = CommonCtrl.IsNullToString(dr["goout_mileage"]), travel_employees = CommonCtrl.IsNullToString(dr["goout_people_num"]), hour_amount = CommonCtrl.IsNullToString(dr["man_hour_subsidy"]), mile_allowance = CommonCtrl.IsNullToString(dr["journey_subsidy"]), hotel_fee = "", //CommonCtrl.IsNullToString(dr["driver_name"]), //不处理 -- 住宿费 traffic_fee = CommonCtrl.IsNullToString(dr["traffic_fee"]), //车船费 travel_amount = CommonCtrl.IsNullToString(dr["travel_cost"]), other_item_sum_money = CommonCtrl.IsNullToString(dr["other_item_sum_money"]), other_remarks = "",//CommonCtrl.IsNullToString(dr["remarks"]), //数据库暂无此字段 -- 其他费用说明 should_sum = CommonCtrl.IsNullToString(dr["service_sum_cost"]), remarks = CommonCtrl.IsNullToString(dr["remarks"]), approve_status_yt = String.IsNullOrEmpty(ytServiceStatus) ? CommonCtrl.IsNullToString(dr["approve_status_yt"]): ytServiceStatus, vehicle_location_name = "",//CommonCtrl.IsNullToString(dr["customer_address"]), //不处理 -- 车辆所在地名称 fault_class_code = CommonCtrl.IsNullToString(dr["fault_system"]), fault_class_name = CommonCtrl.IsNullToString(dr["fault_describe"]), fault_assembly_code = CommonCtrl.IsNullToString(dr["fault_assembly"]), fault_assembly_name = CommonCtrl.IsNullToString(dr["fault_assembly_name"]), //不处理 -- 故障总成名称 fault_part_code = CommonCtrl.IsNullToString(dr["fault_part"]), fault_part_name = CommonCtrl.IsNullToString(dr["fault_part_name"]), //不处理 -- 故障总成部件名称 fault_mode_code = CommonCtrl.IsNullToString(dr["fault_schema"]), fault_mode_name = CommonCtrl.IsNullToString(dr["fault_schema_name"]), //不处理 -- 故障模式名称 fault_cause = CommonCtrl.IsNullToString(dr["fault_cause"]), reason_analysis = CommonCtrl.IsNullToString(dr["reason_analysis"]), dispose_result = CommonCtrl.IsNullToString(dr["dispose_result"]), approver_name_yt = CommonCtrl.IsNullToString(dr["approver_id_yt"]), policy_approval_no = CommonCtrl.IsNullToString(dr["policy_approval_no"]), policy_cost_type = CommonCtrl.IsNullToString(dr["cost_type_policy"]), describe = CommonCtrl.IsNullToString(dr["describes"]), product_notice_no = CommonCtrl.IsNullToString(dr["product_notice_no"]), luxury_cost_type = "",//CommonCtrl.IsNullToString(dr["cost_type_service"]), //数据库暂无此字段 -- 费用类型高档车 activity_cost_type = CommonCtrl.IsNullToString(dr["cost_type_service"]), fault_duty_corp = CommonCtrl.IsNullToString(dr["fault_duty_corp"]), fault_describe = CommonCtrl.IsNullToString(dr["fault_describe"]), man_hour_cost = CommonCtrl.IsNullToString(dr["man_hour_sum_money"]), parts_cost = CommonCtrl.IsNullToString(dr["fitting_sum_money"]), parts_buy_time = GetDatetime(dr["parts_buy_time"]), parts_buy_corp = CommonCtrl.IsNullToString(dr["parts_buy_corp"]), contain_man_hour_cost = CommonCtrl.IsNullToString(dr["contain_man_hour_cost"]), car_parts_code = CommonCtrl.IsNullToString(dr["parts_code"]), parts_name = "",//CommonCtrl.IsNullToString(dr["man_hour_sum_money"]), //不处理 -- 配件名称 first_install_station = CommonCtrl.IsNullToString(dr["first_install_station"]), part_guarantee_period = CommonCtrl.IsNullToString(dr["part_guarantee_period"]), part_lot = "",//CommonCtrl.IsNullToString(dr["parts_buy_corp"]), //不处理 -- 配件批次号 feedback_num = CommonCtrl.IsNullToString(dr["feedback_num"]), is_special_agreed_warranty = CommonCtrl.IsNullToString(dr["promise_guarantee"]), repairs_time = GetDatetime(dr["repairs_time"]) }; #endregion #region 维修用料数据 var dmt1 = DBHelper.GetTable("维修用料数据", "tb_maintain_three_guaranty_material_detail", "*", string.Format(" tg_id='{0}'", tgid), "", ""); var flFlag = 0; //判断辅料金额 不添加辅料:0 --- A,B车型:40 --- C车型:50 if ((serviceOrder.bill_type_yt == DbDic2Enum.BILL_TYPE_YT_100000000 || serviceOrder.bill_type_yt == DbDic2Enum.BILL_TYPE_YT_100000002 || serviceOrder.bill_type_yt == DbDic2Enum.BILL_TYPE_YT_100000001)) { if (CommonCtrl.IsNullToString(dr["vehicle_model"]) == DbDic2Enum.VM_CLASS_100000000 || CommonCtrl.IsNullToString(dr["vehicle_model"]) == DbDic2Enum.VM_CLASS_100000001) { flFlag = 40; } else if (CommonCtrl.IsNullToString(dr["vehicle_model"]) == DbDic2Enum.VM_CLASS_10000003) { flFlag = 50; } } serviceOrder.ChangePartsDetails = new ChangePartsDetail[flFlag == 0 ? dmt1.Rows.Count : dmt1.Rows.Count + 1]; if (dmt1.Rows.Count > 0) { for (var i = 0; i < dmt1.Rows.Count; i++) { var dmr = dmt1.Rows[i]; serviceOrder.ChangePartsDetails[i] = new ChangePartsDetail(); serviceOrder.ChangePartsDetails[i].car_parts_code = CommonCtrl.IsNullToString(dmr["depot_code"]); serviceOrder.ChangePartsDetails[i].parts_name = CommonCtrl.IsNullToString(dmr["parts_name"]); serviceOrder.ChangePartsDetails[i].parts_source = CommonCtrl.IsNullToString(dmr["parts_source"]); //serviceOrder.ChangePartsDetails[i]. = CommonCtrl.IsNullToString(dmr["norms"]); serviceOrder.ChangePartsDetails[i].unit = CommonCtrl.IsNullToString(dmr["unit"]); serviceOrder.ChangePartsDetails[i].quantity = CommonCtrl.IsNullToString(dmr["quantity"]); serviceOrder.ChangePartsDetails[i].unit_price = CommonCtrl.IsNullToString(dmr["unit_price"]); serviceOrder.ChangePartsDetails[i].sum_money = CommonCtrl.IsNullToString(dmr["sum_money"]); //serviceOrder.ChangePartsDetails[i]. = CommonCtrl.IsNullToString(dmr["redeploy_no"]); if (String.IsNullOrEmpty(CommonCtrl.IsNullToString(dmr["remarks"]))) { serviceOrder.ChangePartsDetails[i].remarks = CommonCtrl.IsNullToString(dmr["parts_name"]); } else { serviceOrder.ChangePartsDetails[i].remarks = CommonCtrl.IsNullToString(dmr["remarks"]); } } //三包单中“新车报道”“走保”“强保”类型,服务站上报宇通时可以多添加一个“辅料”,来源于宇通数据,A、B车型金额:40.00元,C车型(高档车)金额50.00元! if (flFlag != 0) { var changePartsDetail = new ChangePartsDetail(); serviceOrder.ChangePartsDetails[serviceOrder.ChangePartsDetails.Count() - 1] = changePartsDetail; changePartsDetail.sum_money = flFlag.ToString(); changePartsDetail.remarks = "辅料"; } } #endregion #region 维修项目 var dmt2 = DBHelper.GetTable("维修项目数据", "tb_maintain_three_guaranty_item", "*", string.Format(" tg_id='{0}'", tgid), "", ""); serviceOrder.RepairItemsDetails = new RepairItems[dmt2.Rows.Count]; if (dmt2.Rows.Count > 0) { for (var i = 0; i < dmt2.Rows.Count; i++) { var dmr = dmt2.Rows[i]; serviceOrder.RepairItemsDetails[i] = new RepairItems(); serviceOrder.RepairItemsDetails[i].item_no = CommonCtrl.IsNullToString(dmr["item_no"]); //serviceOrder.RepairItemsDetails[i]. = CommonCtrl.IsNullToString(dmr["item_type"]); serviceOrder.RepairItemsDetails[i].item_name = CommonCtrl.IsNullToString(dmr["item_name"]); serviceOrder.RepairItemsDetails[i].man_hour_type = CommonCtrl.IsNullToString(dmr["man_hour_quantity"]); serviceOrder.RepairItemsDetails[i].man_hour_unitprice = CommonCtrl.IsNullToString(dmr["man_hour_unitprice"]); //serviceOrder.RepairItemsDetails[i].unit_price = CommonCtrl.IsNullToString(dmr["man_hour_unitprice"]); serviceOrder.RepairItemsDetails[i].sum_money = CommonCtrl.IsNullToString(dmr["sum_money"]); serviceOrder.RepairItemsDetails[i].remarks = CommonCtrl.IsNullToString(dmr["remarks"]); } } #endregion #region 附件信息 var dmt3 = DBHelper.GetTable("三包服务单附件数据", "attachment_info", "*", string.Format(" relation_object_id='{0}'", tgid), "", ""); serviceOrder.FilesDetails = new Files[dmt3.Rows.Count]; if (dmt3.Rows.Count > 0) { for (var i = 0; i < dmt3.Rows.Count; i++) { var dmr = dmt3.Rows[i]; string path = CommonCtrl.IsNullToString(dmr["att_path"]); var fs = FileOperation.DownLoadString16(path); serviceOrder.FilesDetails[i] = new Files(); serviceOrder.FilesDetails[i].Doc = fs; serviceOrder.FilesDetails[i].doc_name = CommonCtrl.IsNullToString(dmr["att_id"]) + Path.GetExtension((path)); serviceOrder.FilesDetails[i].accessory_name = CommonCtrl.IsNullToString(dmr["att_id"]) + Path.GetExtension(path); } } #endregion } return(DBHelper.WebServHandler("三包服务单上报厂家", EnumWebServFunName.UpLoadServiceOrder, serviceOrder)); }
public void UpdateService(ref OperationResult pobjOperationResult, serviceorderDto pobjDtoEntity, List <serviceorderdetailDto> pobjDtoEntityDetail, List <string> ClientSession) { //mon.IsActive = true; try { SigesoftEntitiesModel dbContext = new SigesoftEntitiesModel(); #region ServiceOrder // Obtener la entidad fuente var objEntitySource = (from a in dbContext.serviceorder where a.v_ServiceOrderId == pobjDtoEntity.v_ServiceOrderId && a.i_IsDeleted == 0 select a).FirstOrDefault(); // Crear la entidad con los datos actualizados pobjDtoEntity.d_UpdateDate = DateTime.Now; pobjDtoEntity.i_UpdateUserId = Int32.Parse(ClientSession[2]); serviceorder objEntity = serviceorderAssembler.ToEntity(pobjDtoEntity); // Copiar los valores desde la entidad actualizada a la Entidad Fuente dbContext.serviceorder.ApplyCurrentValues(objEntity); #endregion #region ServiceOrderDetail // Obtener la entidad fuente List <serviceorderdetail> pobjserviceorderdetailList = new List <serviceorderdetail>(); var objEntitySourceDetail = (from a in dbContext.serviceorderdetail where a.v_ServiceOrderId == pobjDtoEntity.v_ServiceOrderId select a).ToList(); foreach (var item in objEntitySourceDetail) { dbContext.serviceorderdetail.DeleteObject(item); dbContext.SaveChanges(); } if (pobjDtoEntityDetail != null) { int intNodeId = int.Parse(ClientSession[0]); foreach (var item in pobjDtoEntityDetail) { serviceorderdetail objDetailEntity = serviceorderdetailAssembler.ToEntity(item); if (item.v_ServiceOrderDetailId == null) { objDetailEntity.v_ServiceOrderDetailId = Common.Utils.GetNewId(intNodeId, Utils.GetNextSecuentialId(intNodeId, 102), "YA"); } else { objDetailEntity.v_ServiceOrderDetailId = item.v_ServiceOrderDetailId; } objDetailEntity.v_ProtocolId = item.v_ProtocolId; objDetailEntity.v_ServiceOrderId = pobjDtoEntity.v_ServiceOrderId; objDetailEntity.r_ProtocolPrice = item.r_ProtocolPrice; objDetailEntity.i_NumberOfWorkerProtocol = item.i_NumberOfWorkerProtocol; objDetailEntity.i_IsDeleted = 0; objDetailEntity.d_UpdateDate = DateTime.Now; objDetailEntity.i_UpdateUserId = Int32.Parse(ClientSession[2]); // Agregar el detalle del movimiento a la BD dbContext.AddToserviceorderdetail(objDetailEntity); } // Guardar los cambios dbContext.SaveChanges(); } #endregion pobjOperationResult.Success = 1; // Llenar entidad Log //LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.ACTUALIZACION, "ORDEN SERVICIO", "v_ServiceOrderId=" + objEntity.v_ServiceOrderId.ToString(), Success.Ok, null); return; } catch (Exception ex) { pobjOperationResult.Success = 0; pobjOperationResult.ExceptionMessage = Common.Utils.ExceptionFormatter(ex); // Llenar entidad Log //LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.ACTUALIZACION, "SERVICIO", "v_ServiceOrderId=" + pobjDtoEntity.v_ServiceOrderId.ToString(), Success.Failed, pobjOperationResult.ExceptionMessage); return; } }