ToolID, Site, ToolInstanceID, LocationID, Status, Remark, CreateDate, CreatedBy, SupplierID, PurchaseDate, PhaseInDate, PhaseOutDate, InspectDuration, LatestInspectDate, LatestUseDate, EstUseQty, ActualUseQty, WorkCenterNo, LastUpdateBy delete from ToolDetail where ToolID=#{toolId} and site=#{site} and ToolInstanceID =#{toolInstanceId} INSERT INTO ToolDetail (ToolID, Site, ToolInstanceID, LocationID, Status, Remark, CreateDate, CreatedBy, SupplierID, PurchaseDate, PhaseInDate, PhaseOutDate, InspectDuration, LatestInspectDate, LatestUseDate, EstUseQty, ActualUseQty, WorkCenterNo, LastUpdateBy, statusRef, Price) VALUES (#{toolId}, #{site}, #{toolInstanceId}, #{locationId}, #{status}, #{remark}, #{createDate}, #{createdBy}, #{supplierId}, #{purchaseDate}, #{phaseInDate}, #{phaseOutDate}, #{inspectDuration,jdbcType=DOUBLE}, #{latestInspectDate}, #{latestUseDate}, #{estUseQty,jdbcType=DOUBLE}, #{actualUseQty,jdbcType=DOUBLE}, #{workCenterNo}, #{lastUpdateBy}, #{statusRef}, #{price}) INSERT INTO ToolDetail( ToolID, Site, ToolInstanceID, LocationID, Status, Remark, CreateDate, CreatedBy, SupplierID, PurchaseDate, PhaseInDate, PhaseOutDate, InspectDuration, LatestInspectDate, LatestUseDate, EstUseQty, ActualUseQty, WorkCenterNo, LastUpdateBy )VALUES ( #{element.toolId,jdbcType=VARCHAR}, #{element.site,jdbcType=VARCHAR}, #{element.toolInstanceId,jdbcType=VARCHAR}, #{element.locationId,jdbcType=VARCHAR}, #{element.status,jdbcType=VARCHAR}, #{element.remark,jdbcType=VARCHAR}, #{element.createDate,jdbcType=TIMESTAMP}, #{element.createdBy,jdbcType=VARCHAR}, #{element.supplierId,jdbcType=VARCHAR}, #{element.purchaseDate,jdbcType=TIMESTAMP}, #{element.phaseInDate,jdbcType=TIMESTAMP}, #{element.phaseOutDate,jdbcType=TIMESTAMP}, #{element.inspectDuration,jdbcType=DOUBLE}, #{element.latestInspectDate,jdbcType=TIMESTAMP}, #{element.latestUseDate,jdbcType=TIMESTAMP}, #{element.estUseQty,jdbcType=DOUBLE}, #{element.actualUseQty,jdbcType=DOUBLE}, #{element.workCenterNo,jdbcType=VARCHAR}, #{element.lastupdateby,jdbcType=VARCHAR} ) update ToolDetail statusRef = #{statusRef,jdbcType=VARCHAR}, LocationID = #{locationId,jdbcType=VARCHAR}, Status = #{status,jdbcType=VARCHAR}, Remark = #{remark,jdbcType=VARCHAR}, CreateDate = #{createDate,jdbcType=TIMESTAMP}, CreatedBy = #{createdBy,jdbcType=VARCHAR}, SupplierID = #{supplierId,jdbcType=VARCHAR}, PurchaseDate = #{purchaseDate,jdbcType=TIMESTAMP}, PhaseInDate = #{phaseInDate,jdbcType=TIMESTAMP}, PhaseOutDate = #{phaseOutDate,jdbcType=TIMESTAMP}, InspectDuration = #{inspectDuration,jdbcType=DOUBLE}, LatestInspectDate = #{latestInspectDate,jdbcType=TIMESTAMP}, LatestUseDate = #{latestUseDate,jdbcType=TIMESTAMP}, EstUseQty = #{estUseQty,jdbcType=DOUBLE}, ActualUseQty = #{actualUseQty,jdbcType=DOUBLE}, WorkCenterNo = #{workCenterNo,jdbcType=VARCHAR}, LastUpdateBy = #{lastupdateby,jdbcType=VARCHAR}, steelSeal = #{steelSeal,jdbcType=VARCHAR}, ToolInstanceID = #{newToolInstanceId}, lifespan = #{lifespan} Site=#{site,jdbcType=VARCHAR} AND ToolInstanceID=#{toolInstanceId,jdbcType=VARCHAR} AND ToolID=#{toolId,jdbcType=VARCHAR} update ToolDetail statusRef = #{statusRef,jdbcType=VARCHAR}, LocationID = #{locationId,jdbcType=VARCHAR}, Status = #{status,jdbcType=VARCHAR}, Remark = #{remark,jdbcType=VARCHAR}, SupplierID = #{supplierId,jdbcType=VARCHAR}, PurchaseDate = #{purchaseDate,jdbcType=TIMESTAMP}, PhaseInDate = #{phaseInDate,jdbcType=TIMESTAMP}, PhaseOutDate = #{phaseOutDate,jdbcType=TIMESTAMP}, lifespan = #{lifespan} Site=#{site,jdbcType=VARCHAR} AND ToolInstanceID=#{toolInstanceId,jdbcType=VARCHAR} AND ToolID=#{toolId,jdbcType=VARCHAR} delete from ToolDetail and Site=#{site,jdbcType=VARCHAR} and ToolInstanceID=#{toolInstanceId,jdbcType=VARCHAR} INSERT INTO tool_use_qty_assess (tool_id, tool_instance_id, tool_desc_ription, est_use_qty, actual_use_qty, add_use_qty, prop, create_by, create_date, status) VALUES (#{toolId}, #{toolInstanceId}, #{toolDescription}, #{estUseQty,jdbcType=DOUBLE}, #{actualUseQty,jdbcType=DOUBLE}, #{addUseQty,jdbcType=DOUBLE}, #{prop}, #{createBy}, getDate(), #{status}) update tool_use_qty_assess set actual_add_use_qty = #{addUseQty}, status = #{status}, checker = #{createBy}, check_date = getDate() where id = #{id} update ToolDetail set EstUseQty = #{estUseQty} where ToolID = #{toolId} and Site = #{site} and ToolInstanceID = #{toolInstanceId} insert into ToolSubPropertiesValue(ToolID,Site,CodeNo,SubCodeSeqNo,SubCodeDesc, ItemNo,PropertiesItemNo,TextValue,NumValue,RecordType,ToolItemNo) values (#{toolID},#{site},'*',1.0,'*',#{itemNo},#{propertiesItemNo},#{textValue},#{numValue,jdbcType=DOUBLE},'T',#{propertiesItemNo}) update PartSubPropertiesValue set TextValue=#{textValue} , NumValue=#{numValue,jdbcType=DOUBLE} where PropertiesItemNo=#{propertiesItemNo} and site=#{site} and PartNo=#{partNo} and RecordType='T' delete from ToolSubPropertiesValue where ToolItemNo=#{propertiesItemNo} and site=#{site} and ToolID=#{toolID} insert into PartSubPropertiesValue(PartNo,Site,CodeNo,SubCodeSeqNo,SubCodeDesc, ItemNo,PropertiesItemNo,TextValue,NumValue,RecordType) select #{toolId},#{site},a.CodeNo,1,a.SubCodeDesc,b.ItemNo,b.PropertiesItemNo,case when e.ValueType_DB='T' then e.DefaultValue else null end ,case when e.ValueType_DB='N' and e.DefaultValue!='' then e.DefaultValue else null end ,'T' from PartSubPropertiesValueHeader a left join PropertiesModelDetail b on a.CodeNo=b.CodeNo left join PartSubPropertiesValue c on c.Site=#{site} and c.PartNo=#{toolId} and c.RecordType='T' and b.ItemNo=c.ItemNo left join PropertiesItem e on b.PropertiesItemNo=e.ItemNo where c.ItemNo is null and a.RecordType='T'