select
isd.stockin_detail_id, isd.stockin_guid, isd.stockin_id, isd.lot_no, isd.product_guid,
isd.product_id, isd.quantity, (CAST(isd.quantity AS INT) - CAST(isd.scan_num AS INT)) as quantity_x, isd.quantity_j, isd.price, bp.cargo_no, isd.remark,
isd.assign_num, isd.assign_num_x, isd.assign_num_j, isd.print_date, isd.stock_status,
isd.supplier_id, isd.customer_id, bp.unit, bp.spec, isd.spare1, isd.spare2, isd.spare3, isd.spare4,
isd.spare5, isd.spare6, isd.scan_num, isd.scan_num_x, isd.scan_num_j,
bp.product_name,
isd.spare7,
isd.spare8,
isd.spare9,
bs.supplier_name,
istbm.tray_code,
istbm.location,
istbm.quantity as traycode_quantity,
istbm.id as bind_msg_id
from in_stockin_detail isd
left join in_stock_traycode_bind_msg istbm on isd.stockin_detail_id = istbm.in_stock_detail_id
left join bas_product bp on bp.product_id = isd.product_id
left join bas_supplier bs on bs.supplier_no = isd.supplier_id
insert into in_stockin_detail
stockin_detail_id,
stockin_guid,
stockin_id,
lot_no,
product_guid,
product_id,
quantity,
quantity_x,
quantity_j,
price,
cargo_no,
remark,
assign_num,
assign_num_x,
assign_num_j,
print_date,
stock_status,
supplier_id,
customer_id,
unit,
spec,
spare1,
spare2,
spare3,
spare4,
spare5,
spare6,
spare7,
spare8,
spare9,
scan_num,
scan_num_x,
scan_num_j,
#{stockinDetailId},
#{stockinGuid},
#{stockinId},
#{lotNo},
#{productGuid},
#{productId},
#{quantity},
#{quantityX},
#{quantityJ},
#{price},
#{cargoNo},
#{remark},
#{assignNum},
#{assignNumX},
#{assignNumJ},
#{printDate},
#{stockStatus},
#{supplierId},
#{customerId},
#{unit},
#{spec},
#{spare1},
#{spare2},
#{spare3},
#{spare4},
#{spare5},
#{spare6},
#{spare7},
#{spare8},
#{spare9},
#{scanNum},
#{scanNumX},
#{scanNumJ},
INSERT INTO in_stockin_detail
stockin_detail_id,
stockin_guid,
stockin_id,
lot_no,
product_guid,
product_id,
quantity,
quantity_x,
quantity_j,
price,
cargo_no,
remark,
assign_num,
assign_num_x,
assign_num_j,
print_date,
stock_status,
supplier_id,
customer_id,
unit,
spec,
spare1,
spare2,
spare3,
spare4,
spare5,
spare6,
scan_num,
scan_num_x,
scan_num_j,
VALUES
#{item.stockinDetailId},
#{item.stockinGuid},
#{item.stockinId},
#{item.lotNo},
#{item.productGuid},
#{item.productId},
#{item.quantity},
#{item.quantityX},
#{item.quantityJ},
#{item.price},
#{item.cargoNo},
#{item.remark},
#{item.assignNum},
#{item.assignNumX},
#{item.assignNumJ},
#{item.printDate},
#{item.stockStatus},
#{item.supplierId},
#{item.customerId},
#{item.unit},
#{item.spec},
#{item.spare1},
#{item.spare2},
#{item.spare3},
#{item.spare4},
#{item.spare5},
#{item.spare6},
#{item.scanNum},
#{item.scanNumX},
#{item.scanNumJ},
insert into in_stockin_detail_finish
select * from in_stockin_detail where stockin_guid = #{stockinGuid}
update in_stockin_detail
stockin_guid = #{stockinGuid},
stockin_id = #{stockinId},
lot_no = #{lotNo},
product_guid = #{productGuid},
product_id = #{productId},
quantity = #{quantity},
quantity_x = #{quantityX},
quantity_j = #{quantityJ},
price = #{price},
cargo_no = #{cargoNo},
remark = #{remark},
assign_num = #{assignNum},
assign_num_x = #{assignNumX},
assign_num_j = #{assignNumJ},
print_date = #{printDate},
stock_status = #{stockStatus},
supplier_id = #{supplierId},
customer_id = #{customerId},
unit = #{unit},
spec = #{spec},
spare1 = #{spare1},
spare2 = #{spare2},
spare3 = #{spare3},
spare4 = #{spare4},
spare5 = #{spare5},
spare6 = #{spare6},
scan_num = #{scanNum},
scan_num_x = #{scanNumX},
scan_num_j = #{scanNumJ},
where stockin_detail_id = #{stockinDetailId}
delete from in_stockin_detail where stockin_detail_id = #{stockinDetailId}
delete from in_stockin_detail where stockin_detail_id in
#{stockinDetailId}
delete from in_stockin_detail where stockin_guid = #{stockinGuid}