xixi1_dorm_import.sql 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555
  1. -- 西溪1号楼批量入库脚本(可独立执行)
  2. -- 说明:脚本内已包含源数据临时表构建,不依赖先执行预检查脚本
  3. -- 会写正式表:xg_dorm_bed_student / xg_dorm_bed / xg_student_msg
  4. -- 西溪1号楼住宿预检查脚本(根据 学校学生住宿情况@西溪1号楼.md 自动生成)
  5. -- 说明: 本脚本仅做预检查,不会对正式表进行增删改
  6. DROP TEMPORARY TABLE IF EXISTS tmp_assign_input_raw;
  7. CREATE TEMPORARY TABLE tmp_assign_input_raw (
  8. room_code VARCHAR(20) NOT NULL,
  9. bed_name VARCHAR(20) NOT NULL,
  10. student_name VARCHAR(50) NULL,
  11. class_name_raw VARCHAR(100) NULL,
  12. remark VARCHAR(200) NULL,
  13. source_line INT NULL,
  14. raw_text VARCHAR(255) NULL
  15. );
  16. INSERT INTO tmp_assign_input_raw(room_code, bed_name, student_name, class_name_raw, remark, source_line, raw_text)
  17. VALUES
  18. ('1101', '1上', '余瑞恬', '药剂251', NULL, 32, '1上 余瑞恬 药剂251'),
  19. ('1101', '1下', '高佳怡', '药剂251', NULL, 33, '1下 高佳怡 药剂251'),
  20. ('1101', '2上', '徐璟雯', '药剂251', NULL, 34, '2上 徐璟雯 药剂251'),
  21. ('1101', '2下', '朱鑫瑶', '药剂251', NULL, 35, '2下 朱鑫瑶 药剂251'),
  22. ('1101', '3上', NULL, NULL, NULL, 36, '3上'),
  23. ('1101', '3下', '刘熙媛', '药剂251', NULL, 37, '3下 刘熙媛 药剂251'),
  24. ('1101', '4上', NULL, NULL, NULL, 38, '4上'),
  25. ('1101', '4下', '沈云婷', '药剂251', NULL, 39, '4下 沈云婷 药剂251'),
  26. ('1103', '1上', '王博雅', '药剂251', NULL, 43, '1上 王博雅 药剂251'),
  27. ('1103', '1下', '沈唐伊', '药剂251', NULL, 44, '1下 沈唐伊 药剂251'),
  28. ('1103', '2上', NULL, NULL, NULL, 45, '2上'),
  29. ('1103', '2下', '童欣怡', '药剂251', NULL, 46, '2下 童欣怡 药剂251'),
  30. ('1103', '3上', '张艳', '药剂251', NULL, 47, '3上 张艳 药剂251'),
  31. ('1103', '3下', '吴邱婷', '药剂251', NULL, 48, '3下 吴邱婷 药剂251'),
  32. ('1103', '4上', '乐婧茜', '药剂251', NULL, 49, '4上 乐婧茜 药剂251'),
  33. ('1103', '4下', '娄依佳', '药剂251', NULL, 50, '4下 娄依佳 药剂251'),
  34. ('1104', '1上', '龙意', '药剂251', NULL, 54, '1上 龙意 药剂251'),
  35. ('1104', '1下', '李恩怡', '药剂251', NULL, 55, '1下 李恩怡 药剂251'),
  36. ('1104', '2上', '林梦琪', '药剂251', NULL, 56, '2上 林梦琪 药剂251'),
  37. ('1104', '2下', '林婧沅', '药剂251', NULL, 57, '2下 林婧沅 药剂251'),
  38. ('1104', '3上', '金荔', '药剂251', NULL, 58, '3上 金荔 药剂251'),
  39. ('1104', '3下', '曹盈', '药剂251', NULL, 59, '3下 曹盈 药剂251'),
  40. ('1104', '4上', '胡可欣', '药剂251', NULL, 60, '4上 胡可欣 药剂251'),
  41. ('1104', '4下', NULL, NULL, NULL, 61, '4下'),
  42. ('1105', '1上', '张娜', '药剂252', NULL, 65, '1上 张娜 药剂252'),
  43. ('1105', '1下', '汪洋陆玥', '药剂252', NULL, 66, '1下 汪洋陆玥 药剂252'),
  44. ('1105', '2上', '谢昱', '药剂252', NULL, 67, '2上 谢昱 药剂252'),
  45. ('1105', '2下', '周洛丞', '药剂252', NULL, 68, '2下 周洛丞 药剂252'),
  46. ('1105', '3上', '徐锌婷', '药剂252', NULL, 69, '3上 徐锌婷 药剂252'),
  47. ('1105', '3下', '林佳依', '药剂252', NULL, 70, '3下 林佳依 药剂252'),
  48. ('1105', '4上', '朱余欣', '药剂252', NULL, 71, '4上 朱余欣 药剂252'),
  49. ('1105', '4下', NULL, NULL, NULL, 72, '4下'),
  50. ('1106', '1上', '孟静琪', '药剂252', NULL, 76, '1上 孟静琪 药剂252'),
  51. ('1106', '1下', '尹莎莉', '药剂252', NULL, 77, '1下 尹莎莉 药剂252'),
  52. ('1106', '2上', '蔡佳瑶', '药剂252', NULL, 78, '2上 蔡佳瑶 药剂252'),
  53. ('1106', '2下', NULL, NULL, NULL, 79, '2下'),
  54. ('1106', '3上', '顾星梦', '药剂252', NULL, 80, '3上 顾星梦 药剂252'),
  55. ('1106', '3下', '阮梦炫', '药剂252', NULL, 81, '3下 阮梦炫 药剂252'),
  56. ('1106', '4上', '王雅涵', '药剂252', NULL, 82, '4上 王雅涵 药剂252'),
  57. ('1106', '4下', '毛晓丽', '药剂252', NULL, 83, '4下 毛晓丽 药剂252'),
  58. ('1107', '1上', '葛汪鈺', '药剂252', NULL, 87, '1上 葛汪鈺 药剂252'),
  59. ('1107', '1下', '盛斯羽', '药剂252', NULL, 88, '1下 盛斯羽 药剂252'),
  60. ('1107', '2上', '吴诗琪', '药剂252', NULL, 89, '2上 吴诗琪 药剂252'),
  61. ('1107', '2下', '郑佳瑶', '药剂252', NULL, 90, '2下 郑佳瑶 药剂252'),
  62. ('1107', '3上', '赵沈宁', '药剂252', NULL, 91, '3上 赵沈宁 药剂252'),
  63. ('1107', '3下', '李舒娴', '药剂252', NULL, 92, '3下 李舒娴 药剂252'),
  64. ('1107', '4上', NULL, NULL, NULL, 93, '4上'),
  65. ('1107', '4下', '张思怡', '药剂252', NULL, 94, '4下 张思怡 药剂252'),
  66. ('1108', '1上', '李妍瑜', '中药251', NULL, 98, '1上 李妍瑜 中药251'),
  67. ('1108', '1下', '张清晨', '中药251', NULL, 99, '1下 张清晨 中药251'),
  68. ('1108', '2上', '尹焱', '中药251', NULL, 100, '2上 尹焱 中药251'),
  69. ('1108', '2下', '范力文', '中药251', NULL, 101, '2下 范力文 中药251'),
  70. ('1108', '3上', NULL, NULL, NULL, 102, '3上'),
  71. ('1108', '3下', '徐诗雨', '中药251', NULL, 103, '3下 徐诗雨 中药251'),
  72. ('1108', '4上', '汤瑾萱', '中药251', NULL, 104, '4上 汤瑾萱 中药251'),
  73. ('1108', '4下', NULL, NULL, NULL, 105, '4下'),
  74. ('1109', '1上', '彭芊慧', '中药251', NULL, 109, '1上 彭芊慧 中药251'),
  75. ('1109', '1下', NULL, NULL, NULL, 110, '1下'),
  76. ('1109', '2上', '焦千惠', '中药251', NULL, 111, '2上 焦千惠 中药251'),
  77. ('1109', '2下', '李雨晴', '中药251', NULL, 112, '2下 李雨晴 中药251'),
  78. ('1109', '3上', '葛畅', '中药251', NULL, 113, '3上 葛畅 中药251'),
  79. ('1109', '3下', '刘雅婷', '中药251', NULL, 114, '3下 刘雅婷 中药251'),
  80. ('1109', '4上', '陈诺', '中药251', NULL, 115, '4上 陈诺 中药251'),
  81. ('1109', '4下', '胡涵语', '中药251', NULL, 116, '4下 胡涵语 中药251'),
  82. ('1110', '1上', NULL, NULL, NULL, 120, '1上'),
  83. ('1110', '1下', '黄悦', '中药251', NULL, 121, '1下 黄悦 中药251'),
  84. ('1110', '2上', '朱雨蒙', '中药251', NULL, 122, '2上 朱雨蒙 中药251'),
  85. ('1110', '2下', '程秀琪', '中药251', NULL, 123, '2下 程秀琪 中药251'),
  86. ('1110', '3上', '张雅婷', '中药251', NULL, 124, '3上 张雅婷 中药251'),
  87. ('1110', '3下', '周奕冉', '中药251', NULL, 125, '3下 周奕冉 中药251'),
  88. ('1110', '4上', '贺亦佑', '中药251', NULL, 126, '4上 贺亦佑 中药251'),
  89. ('1110', '4下', '邵妍雨', '中药251', NULL, 127, '4下 邵妍雨 中药251'),
  90. ('1111', '1上', NULL, NULL, NULL, 131, '1上'),
  91. ('1111', '1下', NULL, NULL, NULL, 132, '1下'),
  92. ('1111', '2上', NULL, NULL, NULL, 133, '2上'),
  93. ('1111', '2下', NULL, NULL, NULL, 134, '2下'),
  94. ('1111', '3上', NULL, NULL, NULL, 135, '3上'),
  95. ('1111', '3下', '吴暄语', '中药252', NULL, 136, '3下 吴暄语 中药252'),
  96. ('1111', '4上', '寿若涵', '中药252', NULL, 137, '4上 寿若涵 中药252'),
  97. ('1111', '4下', '裘思怡', '中药252', NULL, 138, '4下 裘思怡 中药252'),
  98. ('1112', '1上', '于海佳', '中药252', NULL, 142, '1上 于海佳 中药252'),
  99. ('1112', '1下', '徐青雲', '中药252', NULL, 143, '1下 徐青雲 中药252'),
  100. ('1112', '2上', NULL, NULL, NULL, 144, '2上'),
  101. ('1112', '2下', '戴语欣', '中药252', NULL, 145, '2下 戴语欣 中药252'),
  102. ('1112', '3上', '顾子怡', '中药252', NULL, 146, '3上 顾子怡 中药252'),
  103. ('1112', '3下', '刘雨芯', '中药252', NULL, 147, '3下 刘雨芯 中药252'),
  104. ('1112', '4上', '王心妍', '中药252', NULL, 148, '4上 王心妍 中药252'),
  105. ('1112', '4下', '周雅婷', '中药252', NULL, 149, '4下 周雅婷 中药252'),
  106. ('1113', '1上', '李紫薇', '中药251', NULL, 153, '1上 李紫薇 中药251'),
  107. ('1113', '1下', '王明悦', '中药251', NULL, 154, '1下 王明悦 中药251'),
  108. ('1113', '2上', '胡冉', '中药251', NULL, 155, '2上 胡冉 中药251'),
  109. ('1113', '2下', '陈雨佳', '中药251', NULL, 156, '2下 陈雨佳 中药251'),
  110. ('1113', '3上', NULL, NULL, NULL, 157, '3上'),
  111. ('1113', '3下', '潘卓忆', '中药251', NULL, 158, '3下 潘卓忆 中药251'),
  112. ('1113', '4上', NULL, NULL, NULL, 159, '4上'),
  113. ('1113', '4下', NULL, NULL, NULL, 160, '4下'),
  114. ('1201', '1上', '周涵樱', '中药252', NULL, 164, '1上 周涵樱 中药252'),
  115. ('1201', '1下', NULL, NULL, NULL, 165, '1下'),
  116. ('1201', '2上', '陈梦琪', '中药252', NULL, 166, '2上 陈梦琪 中药252'),
  117. ('1201', '2下', NULL, NULL, NULL, 167, '2下'),
  118. ('1201', '3上', NULL, NULL, NULL, 168, '3上'),
  119. ('1201', '3下', NULL, NULL, NULL, 169, '3下'),
  120. ('1201', '4上', NULL, NULL, NULL, 170, '4上'),
  121. ('1201', '4下', '陈佳怡', '中药252', NULL, 171, '4下 陈佳怡 中药252'),
  122. ('1202', '1上', '程喜轩', '中药252', NULL, 175, '1上 程喜轩 中药252'),
  123. ('1202', '1下', '陈忆渲', '中药252', NULL, 176, '1下 陈忆渲 中药252'),
  124. ('1202', '2上', NULL, NULL, NULL, 177, '2上'),
  125. ('1202', '2下', '汪一晨', '中药252', NULL, 178, '2下 汪一晨 中药252'),
  126. ('1202', '3上', '罗佳', '中药252', NULL, 179, '3上 罗佳 中药252'),
  127. ('1202', '3下', '赵陈诺', '中药252', NULL, 180, '3下 赵陈诺 中药252'),
  128. ('1202', '4上', '范添添', '中药252', NULL, 181, '4上 范添添 中药252'),
  129. ('1202', '4下', '汪佳怡', '中药252', NULL, 182, '4下 汪佳怡 中药252'),
  130. ('1203', '1上', '李婉如', '药品营销251', NULL, 186, '1上 李婉如 药品营销251'),
  131. ('1203', '1下', '张佳怡', '药品营销251', NULL, 187, '1下 张佳怡 药品营销251'),
  132. ('1203', '2上', '李佳颖', '药品营销251', NULL, 188, '2上 李佳颖 药品营销251'),
  133. ('1203', '2下', '朱阳杨', '药品营销251', NULL, 189, '2下 朱阳杨 药品营销251'),
  134. ('1203', '3上', '牛诗琪', '药品营销251', NULL, 190, '3上 牛诗琪 药品营销251'),
  135. ('1203', '3下', '向素雅', '药品营销251', NULL, 191, '3下 向素雅 药品营销251'),
  136. ('1203', '4上', NULL, NULL, NULL, 192, '4上'),
  137. ('1203', '4下', '陈枷麒', '药品营销251', NULL, 193, '4下 陈枷麒 药品营销251'),
  138. ('1204', '1上', '陈清怡', '药品营销251', NULL, 197, '1上 陈清怡 药品营销251'),
  139. ('1204', '1下', '谢紫茹', '药品营销251', NULL, 198, '1下 谢紫茹 药品营销251'),
  140. ('1204', '2上', '胡丹丹', '药品营销251', NULL, 199, '2上 胡丹丹 药品营销251'),
  141. ('1204', '2下', '黄羽涵', '药品营销251', NULL, 200, '2下 黄羽涵 药品营销251'),
  142. ('1204', '3上', NULL, NULL, NULL, 201, '3上'),
  143. ('1204', '3下', '尹天青', '药品营销251', NULL, 202, '3下 尹天青 药品营销251'),
  144. ('1204', '4上', NULL, NULL, NULL, 203, '4上'),
  145. ('1204', '4下', '刘冰冰', '药品营销251', NULL, 204, '4下 刘冰冰 药品营销251'),
  146. ('1205', '1上', NULL, NULL, NULL, 208, '1上'),
  147. ('1205', '1下', NULL, NULL, NULL, 209, '1下'),
  148. ('1205', '2上', '何莹', '药品营销251', NULL, 210, '2上 何莹 药品营销251'),
  149. ('1205', '2下', '施语轩', '药品营销251', NULL, 211, '2下 施语轩 药品营销251'),
  150. ('1205', '3上', '李思琦', '药品营销251', NULL, 212, '3上 李思琦 药品营销251'),
  151. ('1205', '3下', '俞海燕', '药品营销251', NULL, 213, '3下 俞海燕 药品营销251'),
  152. ('1205', '4上', NULL, NULL, NULL, 214, '4上'),
  153. ('1205', '4下', '赫心怡', '药品营销251', NULL, 215, '4下 赫心怡 药品营销251'),
  154. ('1206', '1上', '杨雯星', '药品营销251', NULL, 219, '1上 杨雯星 药品营销251'),
  155. ('1206', '1下', NULL, NULL, NULL, 220, '1下'),
  156. ('1206', '2上', '张思圆', '药品营销251', NULL, 221, '2上 张思圆 药品营销251'),
  157. ('1206', '2下', '徐芷萱', NULL, NULL, 222, '2下 徐芷萱'),
  158. ('1206', '3上', '来玉婷', '药品营销251', NULL, 223, '3上 来玉婷 药品营销251'),
  159. ('1206', '3下', NULL, NULL, NULL, 224, '3下'),
  160. ('1206', '4上', NULL, NULL, NULL, 225, '4上'),
  161. ('1206', '4下', '姜一可', '药品营销251', NULL, 226, '4下 姜一可 药品营销251'),
  162. ('1207', '1上', '张雨慧', '药剂253', NULL, 230, '1上 张雨慧 药剂253'),
  163. ('1207', '1下', '黄晓敏', '药剂253', NULL, 231, '1下 黄晓敏 药剂253'),
  164. ('1207', '2上', '刘梓妍', '药剂253', NULL, 232, '2上 刘梓妍 药剂253'),
  165. ('1207', '2下', '傅欣怡', '药剂253', NULL, 233, '2下 傅欣怡 药剂253'),
  166. ('1207', '3上', '周寅', '药剂253', NULL, 234, '3上 周寅 药剂253'),
  167. ('1207', '3下', '来俊滢', '药剂253', NULL, 235, '3下 来俊滢 药剂253'),
  168. ('1207', '4上', '毛涵静', '药剂253', NULL, 236, '4上 毛涵静 药剂253'),
  169. ('1207', '4下', '田悦', '药剂253', NULL, 237, '4下 田悦 药剂253'),
  170. ('1208', '1上', '邹薇薇', '药剂253', NULL, 241, '1上 邹薇薇 药剂253'),
  171. ('1208', '1下', '周诗梦', '药剂253', NULL, 242, '1下 周诗梦 药剂253'),
  172. ('1208', '2上', '姜呓洳', '药剂253', NULL, 243, '2上 姜呓洳 药剂253'),
  173. ('1208', '2下', NULL, NULL, NULL, 244, '2下'),
  174. ('1208', '3上', '张静舒', '环境设计251', NULL, 245, '3上 张静舒 环境设计251'),
  175. ('1208', '3下', NULL, NULL, NULL, 246, '3下'),
  176. ('1208', '4上', NULL, NULL, NULL, 247, '4上'),
  177. ('1208', '4下', '蒋亚希', '环境设计251', NULL, 248, '4下 蒋亚希 环境设计251'),
  178. ('1209', '1上', '张紫悦', '药剂253', NULL, 252, '1上 张紫悦 药剂253'),
  179. ('1209', '1下', '吴雅婧', '药剂253', NULL, 253, '1下 吴雅婧 药剂253'),
  180. ('1209', '2上', '魏晨逸', '药剂253', NULL, 254, '2上 魏晨逸 药剂253'),
  181. ('1209', '2下', '张慧雅', '药剂253', NULL, 255, '2下 张慧雅 药剂253'),
  182. ('1209', '3上', '林王钤', '药剂253', NULL, 256, '3上 林王钤 药剂253'),
  183. ('1209', '3下', '余瑶', '药剂253', NULL, 257, '3下 余瑶 药剂253'),
  184. ('1209', '4上', '占翠萍', '药剂253', NULL, 258, '4上 占翠萍 药剂253'),
  185. ('1209', '4下', '蔡露怡', '药剂253', NULL, 259, '4下 蔡露怡 药剂253'),
  186. ('1210', '1上', '姚梦莹', '药剂253', NULL, 263, '1上 姚梦莹 药剂253'),
  187. ('1210', '1下', '祝愉欣', '药剂253', NULL, 264, '1下 祝愉欣 药剂253'),
  188. ('1210', '2上', '丁嘉琪', '药剂253', NULL, 265, '2上 丁嘉琪 药剂253'),
  189. ('1210', '2下', NULL, NULL, NULL, 266, '2下'),
  190. ('1210', '3上', NULL, NULL, NULL, 267, '3上'),
  191. ('1210', '3下', '易林', '药剂253', NULL, 268, '3下 易林 药剂253'),
  192. ('1210', '4上', '张之彤', '药剂253', NULL, 269, '4上 张之彤 药剂253'),
  193. ('1210', '4下', NULL, NULL, NULL, 270, '4下'),
  194. ('1211', '1上', NULL, NULL, NULL, 274, '1上'),
  195. ('1211', '1下', '郭晨曦', '药剂253', NULL, 275, '1下 郭晨曦 药剂253'),
  196. ('1211', '2上', '郑念依', '药剂253', NULL, 276, '2上 郑念依 药剂253'),
  197. ('1211', '2下', NULL, NULL, NULL, 277, '2下'),
  198. ('1211', '3上', NULL, NULL, NULL, 278, '3上'),
  199. ('1211', '3下', '卢欣仪', '药剂253', NULL, 279, '3下 卢欣仪 药剂253'),
  200. ('1211', '4上', '沈欣淼', '药剂253', NULL, 280, '4上 沈欣淼 药剂253'),
  201. ('1211', '4下', '高可莹', '药剂253', NULL, 281, '4下 高可莹 药剂253'),
  202. ('1212', '1上', NULL, NULL, NULL, 285, '1上'),
  203. ('1212', '1下', NULL, NULL, NULL, 286, '1下'),
  204. ('1212', '2上', NULL, NULL, NULL, 287, '2上'),
  205. ('1212', '2下', '刘亦含', '健康管理251', NULL, 288, '2下 刘亦含 健康管理251'),
  206. ('1212', '3上', '丁忆彤', '健康管理251', NULL, 289, '3上 丁忆彤 健康管理251'),
  207. ('1212', '3下', '刘子钰', '健康管理251', NULL, 290, '3下 刘子钰 健康管理251'),
  208. ('1212', '4上', NULL, NULL, NULL, 291, '4上'),
  209. ('1212', '4下', '陆雅诺', '健康管理251', NULL, 292, '4下 陆雅诺 健康管理251'),
  210. ('1213', '1上', '胡瑞莎', '健康管理251', NULL, 296, '1上 胡瑞莎 健康管理251'),
  211. ('1213', '1下', NULL, NULL, NULL, 297, '1下'),
  212. ('1213', '2上', '范安琪', '健康管理251', NULL, 298, '2上 范安琪 健康管理251'),
  213. ('1213', '2下', '王梦茹', '健康管理251', NULL, 299, '2下 王梦茹 健康管理251'),
  214. ('1213', '3上', '石紫菡', '健康管理251', NULL, 300, '3上 石紫菡 健康管理251'),
  215. ('1213', '3下', '童思绮', '健康管理251', NULL, 301, '3下 童思绮 健康管理251'),
  216. ('1213', '4上', '邓佳瑞', '健康管理251', NULL, 302, '4上 邓佳瑞 健康管理251'),
  217. ('1213', '4下', NULL, NULL, NULL, 303, '4下'),
  218. ('1301', '1上', '任博文', '健康管理251', NULL, 307, '1上 任博文 健康管理251'),
  219. ('1301', '1下', NULL, NULL, NULL, 308, '1下'),
  220. ('1301', '2上', '孙仪伊', '健康管理251', NULL, 309, '2上 孙仪伊 健康管理251'),
  221. ('1301', '2下', NULL, NULL, NULL, 310, '2下'),
  222. ('1301', '3上', '王芷嫣', '健康管理251', NULL, 311, '3上 王芷嫣 健康管理251'),
  223. ('1301', '3下', '郎烨', '健康管理251', NULL, 312, '3下 郎烨 健康管理251'),
  224. ('1301', '4上', '刘庆霖', '健康管理251', NULL, 313, '4上 刘庆霖 健康管理251'),
  225. ('1301', '4下', NULL, NULL, NULL, 314, '4下'),
  226. ('1302', '1上', '陈鑫悦', '健康管理251', NULL, 318, '1上 陈鑫悦 健康管理251'),
  227. ('1302', '1下', NULL, NULL, NULL, 319, '1下'),
  228. ('1302', '2上', '汪欣蕾', '健康管理251', NULL, 320, '2上 汪欣蕾 健康管理251'),
  229. ('1302', '2下', '胡家蓉', '健康管理251', NULL, 321, '2下 胡家蓉 健康管理251'),
  230. ('1302', '3上', '林木子', '健康管理251', NULL, 322, '3上 林木子 健康管理251'),
  231. ('1302', '3下', '董媛', '健康管理251', NULL, 323, '3下 董媛 健康管理251'),
  232. ('1302', '4上', '陈子悦', '健康管理251', NULL, 324, '4上 陈子悦 健康管理251'),
  233. ('1302', '4下', NULL, NULL, NULL, 325, '4下'),
  234. ('1303', '1上', '钱沛灵', '园林技术251', NULL, 329, '1上 钱沛灵 园林技术251'),
  235. ('1303', '1下', '陈梓妍', '园林技术251', NULL, 330, '1下 陈梓妍 园林技术251'),
  236. ('1303', '2上', '韩嘉怡', '园林技术251', NULL, 331, '2上 韩嘉怡 园林技术251'),
  237. ('1303', '2下', NULL, NULL, NULL, 332, '2下'),
  238. ('1303', '3上', NULL, NULL, NULL, 333, '3上'),
  239. ('1303', '3下', '张怡婷', '园林技术251', NULL, 334, '3下 张怡婷 园林技术251'),
  240. ('1303', '4上', '张馨丹', '园林技术251', NULL, 335, '4上 张馨丹 园林技术251'),
  241. ('1303', '4下', '蒋若瑜', '园林技术251', NULL, 336, '4下 蒋若瑜 园林技术251'),
  242. ('1304', '1上', '陈星月', '园林技术251', NULL, 340, '1上 陈星月 园林技术251'),
  243. ('1304', '1下', NULL, NULL, NULL, 341, '1下'),
  244. ('1304', '2上', '雷佳琦', '园林技术251', NULL, 342, '2上 雷佳琦 园林技术251'),
  245. ('1304', '2下', '沈文静', '园林技术251', NULL, 343, '2下 沈文静 园林技术251'),
  246. ('1304', '3上', NULL, NULL, NULL, 344, '3上'),
  247. ('1304', '3下', '沈易晨', '园林技术251', NULL, 345, '3下 沈易晨 园林技术251'),
  248. ('1304', '4上', '刘萱', '园林技术251', NULL, 346, '4上 刘萱 园林技术251'),
  249. ('1304', '4下', '杨秋雨', '园林技术251', NULL, 347, '4下 杨秋雨 园林技术251'),
  250. ('1305', '1上', '刘依凡', '园林技术251', NULL, 351, '1上 刘依凡 园林技术251'),
  251. ('1305', '1下', '戴嘉怡', '园林技术251', NULL, 352, '1下 戴嘉怡 园林技术251'),
  252. ('1305', '2上', '朱雨晨', '园林技术251', NULL, 353, '2上 朱雨晨 园林技术251'),
  253. ('1305', '2下', '陈逸菲', '园林技术251', NULL, 354, '2下 陈逸菲 园林技术251'),
  254. ('1305', '3上', '沈妍', '园林技术251', NULL, 355, '3上 沈妍 园林技术251'),
  255. ('1305', '3下', NULL, NULL, NULL, 356, '3下'),
  256. ('1305', '4上', '张欣', '园林技术251', NULL, 357, '4上 张欣 园林技术251'),
  257. ('1305', '4下', NULL, NULL, NULL, 358, '4下'),
  258. ('1306', '1上', '李嘉惠子', '园林技术252', NULL, 362, '1上 李嘉惠子 园林技术252'),
  259. ('1306', '1下', '张紫燕', '园林技术252', NULL, 363, '1下 张紫燕 园林技术252'),
  260. ('1306', '2上', '孙静蓉', '园林技术252', NULL, 364, '2上 孙静蓉 园林技术252'),
  261. ('1306', '2下', '汤雨婷', '园林技术252', NULL, 365, '2下 汤雨婷 园林技术252'),
  262. ('1306', '3上', '代萧杭', '园林技术252', NULL, 366, '3上 代萧杭 园林技术252'),
  263. ('1306', '3下', '邹甜甜', '园林技术252', NULL, 367, '3下 邹甜甜 园林技术252'),
  264. ('1306', '4上', '张雨绮', '园林技术252', NULL, 368, '4上 张雨绮 园林技术252'),
  265. ('1306', '4下', NULL, NULL, NULL, 369, '4下'),
  266. ('1307', '1上', '荣法瑶', '园林技术252', NULL, 373, '1上 荣法瑶 园林技术252'),
  267. ('1307', '1下', '张欣雨', '园林技术252', NULL, 374, '1下 张欣雨 园林技术252'),
  268. ('1307', '2上', '丁昕睿', '园林技术252', NULL, 375, '2上 丁昕睿 园林技术252'),
  269. ('1307', '2下', '车星媛', '园林技术252', NULL, 376, '2下 车星媛 园林技术252'),
  270. ('1307', '3上', NULL, NULL, NULL, 377, '3上'),
  271. ('1307', '3下', '陈筱雯', '园林技术252', NULL, 378, '3下 陈筱雯 园林技术252'),
  272. ('1307', '4上', '霍洁梦', '园林技术252', NULL, 379, '4上 霍洁梦 园林技术252'),
  273. ('1307', '4下', '沈佳艳', '园林技术252', NULL, 380, '4下 沈佳艳 园林技术252'),
  274. ('1308', '1上', '何丹阳', '园林技术252', NULL, 384, '1上 何丹阳 园林技术252'),
  275. ('1308', '1下', '甘芳瑜', '园林技术252', NULL, 385, '1下 甘芳瑜 园林技术252'),
  276. ('1308', '2上', NULL, NULL, NULL, 386, '2上'),
  277. ('1308', '2下', '李汶汶', '园林技术252', NULL, 387, '2下 李汶汶 园林技术252'),
  278. ('1308', '3上', '吴雨婷', '园林技术252', '新', 388, '3上 吴雨婷 园林技术252 新'),
  279. ('1308', '3下', '章梦琦', '园林技术252', NULL, 389, '3下 章梦琦 园林技术252'),
  280. ('1308', '4上', '张梓晨', '园林技术252', NULL, 390, '4上 张梓晨 园林技术252'),
  281. ('1308', '4下', NULL, NULL, NULL, 391, '4下'),
  282. ('1309', '1上', '李郑涵', '环境设计251', NULL, 395, '1上 李郑涵 环境设计251'),
  283. ('1309', '1下', '孙汶轩', '环境设计251', NULL, 396, '1下 孙汶轩 环境设计251'),
  284. ('1309', '2上', '葛文君', '环境设计251', NULL, 397, '2上 葛文君 环境设计251'),
  285. ('1309', '2下', '张怡涵', '环境设计251', NULL, 398, '2下 张怡涵 环境设计251'),
  286. ('1309', '3上', '周玉', '环境设计251', NULL, 399, '3上 周玉 环境设计251'),
  287. ('1309', '3下', '何一婷', '环境设计251', NULL, 400, '3下 何一婷 环境设计251'),
  288. ('1309', '4上', '申雨杭', '环境设计251', NULL, 401, '4上 申雨杭 环境设计251'),
  289. ('1309', '4下', NULL, NULL, NULL, 402, '4下'),
  290. ('1310', '1上', '吴钰娴', '环境设计251', NULL, 406, '1上 吴钰娴 环境设计251'),
  291. ('1310', '1下', '郑涵羽', '环境设计251', NULL, 407, '1下 郑涵羽 环境设计251'),
  292. ('1310', '2上', '王嘉意', '环境设计251', NULL, 408, '2上 王嘉意 环境设计251'),
  293. ('1310', '2下', NULL, NULL, NULL, 409, '2下'),
  294. ('1310', '3上', '黄逸乐', '环境设计251', NULL, 410, '3上 黄逸乐 环境设计251'),
  295. ('1310', '3下', '赵凌菲', '环境设计251', NULL, 411, '3下 赵凌菲 环境设计251'),
  296. ('1310', '4上', NULL, NULL, NULL, 412, '4上'),
  297. ('1310', '4下', NULL, NULL, NULL, 413, '4下'),
  298. ('1311', '1上', '吴涵', '环境设计251', NULL, 417, '1上 吴涵 环境设计251'),
  299. ('1311', '1下', '何雨轩', '环境设计251', NULL, 418, '1下 何雨轩 环境设计251'),
  300. ('1311', '2上', '应高萍', '环境设计251', NULL, 419, '2上 应高萍 环境设计251'),
  301. ('1311', '2下', '陶可欣', '环境设计251', NULL, 420, '2下 陶可欣 环境设计251'),
  302. ('1311', '3上', '何俞萱', '环境设计251', NULL, 421, '3上 何俞萱 环境设计251'),
  303. ('1311', '3下', '林依晨', '环境设计251', NULL, 422, '3下 林依晨 环境设计251'),
  304. ('1311', '4上', '董晓赟', '环境设计251', NULL, 423, '4上 董晓赟 环境设计251'),
  305. ('1311', '4下', NULL, NULL, NULL, 424, '4下'),
  306. ('1312', '1上', '龚菲儿', '环境设计251', NULL, 428, '1上 龚菲儿 环境设计251'),
  307. ('1312', '1下', '盛敏', '环境设计251', NULL, 429, '1下 盛敏 环境设计251'),
  308. ('1312', '2上', '肖瑶瑶', '环境设计251', NULL, 430, '2上 肖瑶瑶 环境设计251'),
  309. ('1312', '2下', '杨雨婷', '环境设计251', NULL, 431, '2下 杨雨婷 环境设计251'),
  310. ('1312', '3上', '周敏', '环境设计251', NULL, 432, '3上 周敏 环境设计251'),
  311. ('1312', '3下', '胡可馨', '环境设计251', NULL, 433, '3下 胡可馨 环境设计251'),
  312. ('1312', '4上', '邢程梦', '环境设计251', NULL, 434, '4上 邢程梦 环境设计251'),
  313. ('1312', '4下', NULL, NULL, NULL, 435, '4下'),
  314. ('1313', '1上', '洪佳洁', '环境设计251', NULL, 439, '1上 洪佳洁 环境设计251'),
  315. ('1313', '1下', NULL, NULL, NULL, 440, '1下'),
  316. ('1313', '2上', '莫钰佳', '环境设计251', NULL, 441, '2上 莫钰佳 环境设计251'),
  317. ('1313', '2下', '周可欣', '环境设计251', NULL, 442, '2下 周可欣 环境设计251'),
  318. ('1313', '3上', NULL, NULL, NULL, 443, '3上'),
  319. ('1313', '3下', '杨嘉影', '环境设计251', NULL, 444, '3下 杨嘉影 环境设计251'),
  320. ('1313', '4上', '吴恩淅', '环境设计251', NULL, 445, '4上 吴恩淅 环境设计251'),
  321. ('1313', '4下', NULL, NULL, NULL, 446, '4下'),
  322. ('1401', '1上', NULL, NULL, NULL, 450, '1上'),
  323. ('1401', '1下', '冯雨馨', '西餐运营251', NULL, 451, '1下 冯雨馨 西餐运营251'),
  324. ('1401', '2上', '林飘涵', '西餐运营251', NULL, 452, '2上 林飘涵 西餐运营251'),
  325. ('1401', '2下', '周睿颜', '西餐运营251', NULL, 453, '2下 周睿颜 西餐运营251'),
  326. ('1401', '3上', '谢雨轩', '西餐运营251', NULL, 454, '3上 谢雨轩 西餐运营251'),
  327. ('1401', '3下', '邓涵轩', '西餐运营251', NULL, 455, '3下 邓涵轩 西餐运营251'),
  328. ('1401', '4上', NULL, NULL, NULL, 456, '4上'),
  329. ('1401', '4下', NULL, NULL, NULL, 457, '4下'),
  330. ('1402', '1上', '陈天琪', '西餐运营251', NULL, 461, '1上 陈天琪 西餐运营251'),
  331. ('1402', '1下', '刘艺萱', '西餐运营251', NULL, 462, '1下 刘艺萱 西餐运营251'),
  332. ('1402', '2上', '余馨怡', '西餐运营251', NULL, 463, '2上 余馨怡 西餐运营251'),
  333. ('1402', '2下', '叶好', '西餐运营251', NULL, 464, '2下 叶好 西餐运营251'),
  334. ('1402', '3上', '孙一诺', '西餐运营251', NULL, 465, '3上 孙一诺 西餐运营251'),
  335. ('1402', '3下', '赵静怡', '西餐运营251', NULL, 466, '3下 赵静怡 西餐运营251'),
  336. ('1402', '4上', '宋雨轩', '西餐运营251', NULL, 467, '4上 宋雨轩 西餐运营251'),
  337. ('1402', '4下', NULL, NULL, NULL, 468, '4下'),
  338. ('1403', '1上', NULL, NULL, NULL, 472, '1上'),
  339. ('1403', '1下', NULL, NULL, NULL, 473, '1下'),
  340. ('1403', '2上', NULL, NULL, NULL, 474, '2上'),
  341. ('1403', '2下', '陈羽菲', '西餐运营251', NULL, 475, '2下 陈羽菲 西餐运营251'),
  342. ('1403', '3上', NULL, NULL, NULL, 476, '3上'),
  343. ('1403', '3下', '严欣语', '西餐运营251', NULL, 477, '3下 严欣语 西餐运营251'),
  344. ('1403', '4上', '陈芳雨', '西餐运营251', NULL, 478, '4上 陈芳雨 西餐运营251'),
  345. ('1403', '4下', '林彦希', '西餐运营251', NULL, 479, '4下 林彦希 西餐运营251'),
  346. ('1404', '1上', '张玥然', '西餐运营252', NULL, 483, '1上 张玥然 西餐运营252'),
  347. ('1404', '1下', '邱雨欣', '西餐运营252', NULL, 484, '1下 邱雨欣 西餐运营252'),
  348. ('1404', '2上', '陈沁园', '西餐运营252', NULL, 485, '2上 陈沁园 西餐运营252'),
  349. ('1404', '2下', '邹逸', '西餐运营252', NULL, 486, '2下 邹逸 西餐运营252'),
  350. ('1404', '3上', '杨雪', '西餐运营252', NULL, 487, '3上 杨雪 西餐运营252'),
  351. ('1404', '3下', NULL, NULL, NULL, 488, '3下'),
  352. ('1404', '4上', '孙梓萱', '西餐运营252', NULL, 489, '4上 孙梓萱 西餐运营252'),
  353. ('1404', '4下', '张程程', '西餐运营252', NULL, 490, '4下 张程程 西餐运营252'),
  354. ('1405', '1上', '吴馨怡', '西餐运营252', NULL, 494, '1上 吴馨怡 西餐运营252'),
  355. ('1405', '1下', '陈尚玲', '西餐运营252', NULL, 495, '1下 陈尚玲 西餐运营252'),
  356. ('1405', '2上', '桑丽雯', '西餐运营252', NULL, 496, '2上 桑丽雯 西餐运营252'),
  357. ('1405', '2下', '周希希', '西餐运营252', NULL, 497, '2下 周希希 西餐运营252'),
  358. ('1405', '3上', '张紫阳', '西餐运营252', NULL, 498, '3上 张紫阳 西餐运营252'),
  359. ('1405', '3下', '简文汐', '西餐运营252', NULL, 499, '3下 简文汐 西餐运营252'),
  360. ('1405', '4上', NULL, NULL, NULL, 500, '4上'),
  361. ('1405', '4下', '刘芋霏', '西餐运营252', NULL, 501, '4下 刘芋霏 西餐运营252'),
  362. ('1407', '1上', '刘雨晨', '烹饪252', NULL, 505, '1上 刘雨晨 烹饪252'),
  363. ('1407', '1下', '张一诺', '烹饪252', NULL, 506, '1下 张一诺 烹饪252'),
  364. ('1407', '2上', '张玗熙', '烹饪252', NULL, 507, '2上 张玗熙 烹饪252'),
  365. ('1407', '2下', '陈欣语', '烹饪252', NULL, 508, '2下 陈欣语 烹饪252'),
  366. ('1407', '3上', NULL, NULL, NULL, 509, '3上'),
  367. ('1407', '3下', '李佳宜', '烹饪251', NULL, 510, '3下 李佳宜 烹饪251'),
  368. ('1407', '4上', '谢贤翠', '烹饪251', NULL, 511, '4上 谢贤翠 烹饪251'),
  369. ('1407', '4下', '张玗琪', '烹饪251', NULL, 512, '4下 张玗琪 烹饪251'),
  370. ('1408', '1上', NULL, NULL, NULL, 516, '1上'),
  371. ('1408', '1下', NULL, NULL, NULL, 517, '1下'),
  372. ('1408', '2上', '高兴', '中西点251', NULL, 518, '2上 高兴 中西点251'),
  373. ('1408', '2下', '钱恩熙', '中西点251', NULL, 519, '2下 钱恩熙 中西点251'),
  374. ('1408', '3上', NULL, NULL, NULL, 520, '3上'),
  375. ('1408', '3下', NULL, NULL, NULL, 521, '3下'),
  376. ('1408', '4上', '沈熙妍', '中西点251', NULL, 522, '4上 沈熙妍 中西点251'),
  377. ('1408', '4下', NULL, NULL, NULL, 523, '4下'),
  378. ('1409', '1上', NULL, NULL, NULL, 527, '1上'),
  379. ('1409', '1下', '郑文英', '中西点251', NULL, 528, '1下 郑文英 中西点251'),
  380. ('1409', '2上', '王蓉', '中西点251', NULL, 529, '2上 王蓉 中西点251'),
  381. ('1409', '2下', '蔡蕴菡', '中西点251', NULL, 530, '2下 蔡蕴菡 中西点251'),
  382. ('1409', '3上', '郑怡涵', '中西点251', NULL, 531, '3上 郑怡涵 中西点251'),
  383. ('1409', '3下', '李亚轩', '中西点251', NULL, 532, '3下 李亚轩 中西点251'),
  384. ('1409', '4上', '吴娅楠', '中西点251', NULL, 533, '4上 吴娅楠 中西点251'),
  385. ('1409', '4下', NULL, NULL, NULL, 534, '4下'),
  386. ('1410', '1上', '楼佩钰', '中西点251', NULL, 538, '1上 楼佩钰 中西点251'),
  387. ('1410', '1下', '施妍希', '中西点251', NULL, 539, '1下 施妍希 中西点251'),
  388. ('1410', '2上', '汪雅欣', '中西点251', NULL, 540, '2上 汪雅欣 中西点251'),
  389. ('1410', '2下', '杨悦欣', '中西点251', NULL, 541, '2下 杨悦欣 中西点251'),
  390. ('1410', '3上', '张旗', '中西点251', NULL, 542, '3上 张旗 中西点251'),
  391. ('1410', '3下', '余可昕', '中西点251', NULL, 543, '3下 余可昕 中西点251'),
  392. ('1410', '4上', NULL, NULL, NULL, 544, '4上'),
  393. ('1410', '4下', NULL, NULL, NULL, 545, '4下'),
  394. ('1411', '1上', '黄嘉璐', '中西点251', NULL, 549, '1上 黄嘉璐 中西点251'),
  395. ('1411', '1下', NULL, NULL, NULL, 550, '1下'),
  396. ('1411', '2上', '张玉姝', '中西点251', NULL, 551, '2上 张玉姝 中西点251'),
  397. ('1411', '2下', '何忆妍', '中西点251', NULL, 552, '2下 何忆妍 中西点251'),
  398. ('1411', '3上', '王炳思', '中西点251', NULL, 553, '3上 王炳思 中西点251'),
  399. ('1411', '3下', NULL, NULL, NULL, 554, '3下'),
  400. ('1411', '4上', '王静心', '中西点251', NULL, 555, '4上 王静心 中西点251'),
  401. ('1411', '4下', NULL, NULL, NULL, 556, '4下'),
  402. ('1412', '1上', NULL, NULL, NULL, 560, '1上'),
  403. ('1412', '1下', '袁梦', '美术设计251', NULL, 561, '1下 袁梦 美术设计251'),
  404. ('1412', '2上', '程子涵', '美术设计251', NULL, 562, '2上 程子涵 美术设计251'),
  405. ('1412', '2下', '李心凌', '美术设计251', NULL, 563, '2下 李心凌 美术设计251'),
  406. ('1412', '3上', '徐红依', '大数据251', NULL, 564, '3上 徐红依 大数据251'),
  407. ('1412', '3下', '吴佳乐', '大数据251', NULL, 565, '3下 吴佳乐 大数据251'),
  408. ('1412', '4上', NULL, NULL, NULL, 566, '4上'),
  409. ('1412', '4下', NULL, NULL, NULL, 567, '4下'),
  410. ('1413', '1上', NULL, NULL, NULL, 571, '1上'),
  411. ('1413', '1下', '舒欣怡', '美术设计251', NULL, 572, '1下 舒欣怡 美术设计251'),
  412. ('1413', '2上', '毛佳嫣', '美术设计251', NULL, 573, '2上 毛佳嫣 美术设计251'),
  413. ('1413', '2下', NULL, NULL, NULL, 574, '2下'),
  414. ('1413', '3上', '曹欣怡', '美术设计251', NULL, 575, '3上 曹欣怡 美术设计251'),
  415. ('1413', '3下', '洪梦冉', '美术设计251', NULL, 576, '3下 洪梦冉 美术设计251'),
  416. ('1413', '4上', NULL, NULL, NULL, 577, '4上'),
  417. ('1413', '4下', '吕惜诺', '美术设计251', NULL, 578, '4下 吕惜诺 美术设计251'),
  418. ('1415', '1上', '钱思涵', '美术设计251', NULL, 582, '1上 钱思涵 美术设计251'),
  419. ('1415', '1下', '李诺彤', '美术设计251', NULL, 583, '1下 李诺彤 美术设计251'),
  420. ('1415', '2上', '余楚汐', '美术设计251', NULL, 584, '2上 余楚汐 美术设计251'),
  421. ('1415', '2下', '王婉心', '美术设计251', NULL, 585, '2下 王婉心 美术设计251'),
  422. ('1415', '3上', '葛雨琪', '美术设计251', NULL, 586, '3上 葛雨琪 美术设计251'),
  423. ('1415', '3下', '葛雨萱', '美术设计251', NULL, 587, '3下 葛雨萱 美术设计251'),
  424. ('1415', '4上', NULL, NULL, NULL, 588, '4上'),
  425. ('1415', '4下', NULL, NULL, NULL, 589, '4下')
  426. ;
  427. DROP TEMPORARY TABLE IF EXISTS tmp_assign_norm;
  428. CREATE TEMPORARY TABLE tmp_assign_norm AS
  429. SELECT
  430. TRIM(room_code) AS room_code,
  431. TRIM(bed_name) AS bed_name,
  432. NULLIF(TRIM(student_name), '') AS student_name,
  433. CASE NULLIF(TRIM(SUBSTRING_INDEX(COALESCE(class_name_raw, ''), ' ', 1)), '')
  434. WHEN '烹饪251' THEN '中烹251'
  435. WHEN '烹饪252' THEN '中烹252'
  436. ELSE NULLIF(TRIM(SUBSTRING_INDEX(COALESCE(class_name_raw, ''), ' ', 1)), '')
  437. END AS class_name,
  438. NULLIF(TRIM(class_name_raw), '') AS class_name_raw,
  439. NULLIF(TRIM(remark), '') AS remark,
  440. source_line,
  441. raw_text
  442. FROM tmp_assign_input_raw;
  443. START TRANSACTION;
  444. DROP TEMPORARY TABLE IF EXISTS tmp_assign_import_ready;
  445. CREATE TEMPORARY TABLE tmp_assign_import_ready AS
  446. SELECT
  447. t.room_code,
  448. t.bed_name,
  449. t.student_name,
  450. t.class_name,
  451. c.id AS class_id,
  452. c.college_id,
  453. c.major_id,
  454. s.id AS student_id,
  455. bld.id AS building_id,
  456. bld.area_id,
  457. bld.campus_id,
  458. rm.id AS room_id,
  459. bed.id AS bed_id,
  460. t.source_line,
  461. t.raw_text
  462. FROM tmp_assign_norm t
  463. LEFT JOIN xg_class_msg c
  464. ON c.deleted = 0
  465. AND c.class_name COLLATE utf8mb4_general_ci = t.class_name COLLATE utf8mb4_general_ci
  466. LEFT JOIN xg_student_msg s
  467. ON s.deleted = 0
  468. AND s.name COLLATE utf8mb4_general_ci = t.student_name COLLATE utf8mb4_general_ci
  469. AND s.class_name COLLATE utf8mb4_general_ci = t.class_name COLLATE utf8mb4_general_ci
  470. LEFT JOIN xg_dorm_building bld
  471. ON bld.deleted = '0'
  472. AND bld.building_name = '西溪1号楼'
  473. LEFT JOIN xg_dorm_room rm
  474. ON rm.deleted = '0'
  475. AND rm.building_id = bld.id
  476. AND rm.room_code COLLATE utf8mb4_general_ci = t.room_code COLLATE utf8mb4_general_ci
  477. LEFT JOIN xg_dorm_bed bed
  478. ON bed.deleted = '0'
  479. AND bed.room_id = rm.id
  480. AND bed.bed_name COLLATE utf8mb4_general_ci = t.bed_name COLLATE utf8mb4_general_ci
  481. WHERE t.student_name IS NOT NULL
  482. AND t.class_name IS NOT NULL;
  483. DROP TEMPORARY TABLE IF EXISTS tmp_assign_import_final;
  484. CREATE TEMPORARY TABLE tmp_assign_import_final AS
  485. SELECT r.*
  486. FROM tmp_assign_import_ready r
  487. LEFT JOIN xg_dorm_bed_student bs_bed
  488. ON bs_bed.deleted = '0' AND bs_bed.status = '0' AND bs_bed.bed_id = r.bed_id
  489. LEFT JOIN xg_dorm_bed_student bs_student
  490. ON bs_student.deleted = '0' AND bs_student.status = '0' AND bs_student.student_id = r.student_id
  491. WHERE r.class_id IS NOT NULL
  492. AND r.student_id IS NOT NULL
  493. AND r.building_id IS NOT NULL
  494. AND r.room_id IS NOT NULL
  495. AND r.bed_id IS NOT NULL
  496. AND bs_bed.id IS NULL
  497. AND bs_student.id IS NULL;
  498. SET @next_rel_id := (SELECT COALESCE(MAX(id), 0) FROM xg_dorm_bed_student);
  499. INSERT INTO xg_dorm_bed_student (
  500. id, college_id, major_id, class_id, student_id, bed_id, room_id, building_id, area_id, campus_id,
  501. status, assign_time, checkout_time, deleted, tenant_id, create_by, create_dept, create_time, update_by, update_time, remark
  502. )
  503. SELECT
  504. (@next_rel_id := @next_rel_id + 1) AS id,
  505. college_id,
  506. major_id,
  507. class_id,
  508. student_id,
  509. bed_id,
  510. room_id,
  511. building_id,
  512. area_id,
  513. campus_id,
  514. '0' AS status,
  515. NOW() AS assign_time,
  516. NULL AS checkout_time,
  517. '0' AS deleted,
  518. 0 AS tenant_id,
  519. NULL AS create_by,
  520. NULL AS create_dept,
  521. NOW() AS create_time,
  522. NULL AS update_by,
  523. NOW() AS update_time,
  524. CONCAT('西溪1号楼批量导入,source_line=', source_line) AS remark
  525. FROM tmp_assign_import_final;
  526. UPDATE xg_dorm_bed bed
  527. JOIN tmp_assign_import_final i ON i.bed_id = bed.id
  528. SET bed.bed_status = '1',
  529. bed.update_time = NOW()
  530. WHERE bed.deleted = '0';
  531. UPDATE xg_student_msg s
  532. JOIN tmp_assign_import_final i ON i.student_id = s.id
  533. SET s.is_boarder = 1,
  534. s.dormitory_building = CAST(i.building_id AS CHAR),
  535. s.dormitory_room = CAST(i.room_id AS CHAR),
  536. s.ext_field1 = CAST(i.bed_id AS CHAR),
  537. s.update_time = NOW()
  538. WHERE s.deleted = 0;
  539. SELECT
  540. (SELECT COUNT(*) FROM tmp_assign_import_ready) AS ready_cnt,
  541. (SELECT COUNT(*) FROM tmp_assign_import_final) AS imported_cnt;
  542. COMMIT;