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

460 lines
18 KiB

1 year ago
2 years ago
2 years ago
2 years ago
2 weeks ago
2 years ago
1 year ago
2 weeks ago
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.xujie.sys.modules.factory.dao.SiteMapper">
  4. <!-- 获取当前用户不包含的工厂 -->
  5. <select id="getSiteList1" resultType="SiteVo" parameterType="SiteVo">
  6. SELECT
  7. a.siteid,
  8. a.sitename
  9. FROM site a
  10. LEFT JOIN eam_access_site b ON b.username = #{username} and a.siteid = b.site
  11. WHERE b.username is null and a.active = 'Y'
  12. </select>
  13. <!-- 获取当前用户包含的工厂 -->
  14. <select id="getSiteList2" resultType="SiteVo" parameterType="SiteVo">
  15. SELECT
  16. b.siteid,
  17. b.sitename
  18. FROM eam_access_site a
  19. LEFT JOIN site b ON a.site = b.siteid
  20. WHERE a.username = #{username}
  21. </select>
  22. <!-- 查询user里是否已存在该site -->
  23. <select id="selectSiteByUserName" resultType="SiteVo">
  24. SELECT
  25. username,
  26. site
  27. FROM eam_access_site
  28. WHERE username = #{username} and site = #{siteid}
  29. </select>
  30. <!-- 新增user的site -->
  31. <insert id="addUserSite" parameterType="SiteVo">
  32. INSERT INTO eam_access_site (username, site)
  33. VALUES (#{username}, #{siteid})
  34. </insert>
  35. <!-- 删除user的site -->
  36. <delete id="delUserSite" parameterType="SiteVo">
  37. DELETE FROM eam_access_site
  38. WHERE username = #{username} and site = #{siteid}
  39. </delete>
  40. <!-- 查询site -->
  41. <select id="getSite" resultType="SiteVo" parameterType="SiteVo">
  42. SELECT
  43. a.siteid,
  44. a.sitename
  45. FROM site a
  46. LEFT JOIN eam_access_site b ON b.username = #{username} and a.siteid = b.site
  47. <where>
  48. and b.username is null and a.active = 'Y'
  49. <if test = "siteid != null and siteid != ''">
  50. AND a.siteid LIKE '%' + #{siteid} + '%'
  51. </if>
  52. <if test = "sitename != null and sitename != ''">
  53. AND a.sitename LIKE '%' + #{sitename} + '%'
  54. </if>
  55. </where>
  56. </select>
  57. <!-- 查询site -->
  58. <select id="getSite2" resultType="SiteVo" parameterType="SiteVo">
  59. SELECT
  60. a.siteid,
  61. a.sitename
  62. FROM site a
  63. LEFT JOIN eam_access_site b ON b.username = #{username} and a.siteid = b.site
  64. <where>
  65. a.active = 'Y'
  66. <if test = "siteid != null and siteid != ''">
  67. AND a.siteid LIKE '%' + #{siteid} + '%'
  68. </if>
  69. <if test = "sitename != null and sitename != ''">
  70. AND a.sitename LIKE '%' + #{sitename} + '%'
  71. </if>
  72. </where>
  73. </select>
  74. <!-- 获取当前用户不包含的bu -->
  75. <select id="getBuList1" resultType="BuData" parameterType="BuData">
  76. SELECT
  77. a.site,
  78. a.bu_no,
  79. a.bu_desc
  80. FROM BU a
  81. LEFT JOIN AccessBu b ON b.username = #{username} and a.bu_no = b.bu_no and a.site = b.site
  82. WHERE b.username is null and a.active = 'Y'
  83. </select>
  84. <select id="getAllBuList" resultType="BuData" parameterType="BuData">
  85. SELECT
  86. b.id,
  87. a.site,
  88. c.sitename,
  89. (a.site + '_' + a.bu_no) as buNo,
  90. b.bu_desc
  91. FROM AccessBu as a
  92. left join bu as b on a.bu_no = b.bu_no and a.site = b.site
  93. left join site as c on a.site = c.siteid
  94. WHERE a.username = #{username}
  95. </select>
  96. <!-- 获取当前用户包含的bu -->
  97. <select id="getBuList2" resultType="BuData" parameterType="BuData">
  98. SELECT
  99. b.site,
  100. b.bu_no,
  101. b.bu_desc
  102. FROM AccessBu a
  103. LEFT JOIN BU b ON a.site = b.site and a.bu_no = b.bu_no
  104. WHERE a.username = #{username}
  105. </select>
  106. <!-- 查询user里是否已存在该bu -->
  107. <select id="selectBuByUserName" resultType="BuData" parameterType="BuData">
  108. SELECT
  109. site,
  110. username,
  111. bu_no
  112. FROM AccessBu
  113. WHERE username = #{username} and site = #{site} and bu_no = #{buNo}
  114. </select>
  115. <!-- 新增user的bu -->
  116. <insert id="addUserBu" parameterType="BuData">
  117. INSERT INTO AccessBu (username, site, bu_no)
  118. VALUES (#{username}, #{site}, #{buNo})
  119. </insert>
  120. <!-- 删除user的bu -->
  121. <delete id="delUserBu" parameterType="BuData">
  122. DELETE FROM AccessBu
  123. WHERE username = #{username} and site = #{site} and bu_no = #{buNo}
  124. </delete>
  125. <!-- 查询bu -->
  126. <select id="getBu" resultType="BuData" parameterType="BuData">
  127. SELECT
  128. a.site,
  129. a.bu_no,
  130. a.bu_desc
  131. FROM BU a
  132. LEFT JOIN AccessBu b ON b.username = #{username} and a.site = b.site and a.bu_no = b.bu_no
  133. <where>
  134. and b.username is null and a.active = 'Y'
  135. <if test = "site != null and site != ''">
  136. AND a.site LIKE '%' + #{site} + '%'
  137. </if>
  138. <if test = "buNo != null and buNo != ''">
  139. AND a.bu_no LIKE '%' + #{buNo} + '%'
  140. </if>
  141. <if test = "buDesc != null and buDesc != ''">
  142. AND a.bu_desc LIKE '%' + #{buDesc} + '%'
  143. </if>
  144. </where>
  145. </select>
  146. <!-- 获取当前用户不包含的部门 -->
  147. <select id="getDeptList1" resultType="SysDepartmentEntity" parameterType="SysDepartmentEntity">
  148. SELECT
  149. a.site,
  150. a.bu_no,
  151. dbo.get_bu_desc(a.site, a.bu_no) as buDesc,
  152. a.department_id,
  153. a.department_name
  154. FROM sys_department a
  155. LEFT JOIN Access_dept b ON b.username = #{username} and a.bu_no = b.bu_no and a.site = b.site and a.department_id = b.department_id
  156. WHERE a.site in (select site from eam_access_site where username = #{username})
  157. and (a.site + '-' + a.bu_no) in (select (a.site + '-' + a.bu_no) from AccessBu as a left join eam_access_site as b on a.site = b.site and a.username = b.username where a.username = #{username})
  158. and b.username is null
  159. </select>
  160. <!-- 获取当前用户包含的部门 -->
  161. <select id="getDeptList2" resultType="SysDepartmentEntity" parameterType="SysDepartmentEntity">
  162. SELECT
  163. b.site,
  164. b.bu_no,
  165. dbo.get_bu_desc(a.site, a.bu_no) as buDesc,
  166. b.department_id,
  167. b.department_name
  168. FROM Access_dept a
  169. LEFT JOIN sys_department b ON a.site = b.site and a.bu_no = b.bu_no and a.department_id = b.department_id
  170. WHERE a.username = #{username}
  171. </select>
  172. <!-- 查询user里是否已存在该部门 -->
  173. <select id="selectDeptByUserName" resultType="SysDepartmentEntity" parameterType="SysDepartmentEntity">
  174. SELECT
  175. site,
  176. username,
  177. bu_no,
  178. department_id
  179. FROM Access_dept
  180. WHERE username = #{username} and site = #{site} and bu_no = #{buNo} and department_id = #{departmentId}
  181. </select>
  182. <!-- 新增user的部门 -->
  183. <insert id="addUserDept" parameterType="SysDepartmentEntity">
  184. INSERT INTO Access_dept (username, site, bu_no, department_id)
  185. VALUES (#{username}, #{site}, #{buNo}, #{departmentId})
  186. </insert>
  187. <!-- 删除user的部门 -->
  188. <delete id="delUserDept" parameterType="SysDepartmentEntity">
  189. DELETE FROM Access_dept
  190. WHERE username = #{username} and site = #{site} and bu_no = #{buNo} and department_id = #{departmentId}
  191. </delete>
  192. <!-- 查询部门 -->
  193. <select id="getDept" resultType="SysDepartmentEntity" parameterType="SysDepartmentEntity">
  194. SELECT
  195. a.site,
  196. a.bu_no,
  197. dbo.get_bu_desc(a.site, a.bu_no) as buDesc,
  198. a.department_id,
  199. a.department_name
  200. FROM sys_department a
  201. LEFT JOIN Access_dept b ON b.username = #{username} and a.site = b.site and a.bu_no = b.bu_no and a.department_id = b.department_id
  202. <where>
  203. a.site in (select site from eam_access_site where username = #{username})
  204. and (a.site + '-' + a.bu_no) in (select (a.site + '-' + a.bu_no) from AccessBu as a left join eam_access_site as b on a.site = b.site and a.username = b.username where a.username = #{username})
  205. and b.username is null
  206. <if test = "departmentId != null and departmentId != ''">
  207. AND a.department_id LIKE '%' + #{departmentId} + '%'
  208. </if>
  209. <if test = "departmentName != null and departmentName != ''">
  210. AND a.departmen_name LIKE '%' + #{departmentName} + '%'
  211. </if>
  212. </where>
  213. </select>
  214. <!-- 获取当前用户不包含的角色 -->
  215. <select id="getBusinessRoleList1" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  216. SELECT
  217. a.site,
  218. a.role_no,
  219. a.role_desc
  220. FROM business_role a
  221. left join access_role b on a.site=b.site and a.role_no = b.role_no and b.username = #{username}
  222. WHERE a.site in (select site from eam_access_site where username = #{username})
  223. and b.username is null
  224. <if test = "site != null and site != ''">
  225. AND a.site = #{site}
  226. </if>
  227. </select>
  228. <!-- 获取当前用户包含的角色 -->
  229. <select id="getBusinessRoleList2" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  230. SELECT
  231. b.site,
  232. b.role_no,
  233. b.role_desc
  234. FROM access_role a
  235. LEFT JOIN business_role b ON a.site = b.site and a.role_no = b.role_no
  236. WHERE a.username = #{username}
  237. </select>
  238. <select id="selectBusinessRoleByUserName"
  239. resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  240. SELECT
  241. site,
  242. username,
  243. role_no
  244. FROM access_role
  245. WHERE username = #{username} and site = #{site} and role_no = #{roleNo}
  246. </select>
  247. <insert id="addUserBusinessRole" parameterType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  248. INSERT INTO access_role (username, site, role_no)
  249. VALUES (#{username}, #{site}, #{roleNo})
  250. </insert>
  251. <delete id="delUserBusinessRole" parameterType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  252. DELETE FROM access_role
  253. WHERE username = #{username} and site = #{site} and role_no = #{roleNo}
  254. </delete>
  255. <select id="searchBusinessInfo" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  256. SELECT B.role_no, U.username,U.user_display,B.active
  257. FROM business_role B
  258. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  259. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  260. <where>
  261. a.site = #{site}
  262. and B.active = 'Y'
  263. AND b.role_desc = 'PM/Sales'
  264. <if test="roleDesc!= null and roleDesc != ''">
  265. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  266. </if>
  267. <if test="userDisplay != null and userDisplay != ''">
  268. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  269. </if>
  270. </where>
  271. </select>
  272. <select id="searchBusinessInfo1" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  273. SELECT B.role_no, U.username,U.user_display,B.active
  274. FROM business_role B
  275. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  276. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  277. <where>
  278. a.site = #{site}
  279. and B.active = 'Y'
  280. AND B.role_desc = 'PjM'
  281. <if test="roleDesc!= null and roleDesc != ''">
  282. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  283. </if>
  284. <if test="userDisplay != null and userDisplay != ''">
  285. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  286. </if>
  287. </where>
  288. </select>
  289. <select id="searchBusinessInfo2" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  290. SELECT B.role_no, U.username,U.user_display,B.active
  291. FROM business_role B
  292. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  293. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  294. <where>
  295. a.site = #{site}
  296. and B.active = 'Y'
  297. AND B.role_desc = 'IPQC-Lam/Pri/Etch/Slit'
  298. <if test="roleDesc!= null and roleDesc != ''">
  299. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  300. </if>
  301. <if test="userDisplay != null and userDisplay != ''">
  302. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  303. </if>
  304. </where>
  305. </select>
  306. <select id="searchBusinessInfo3" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  307. SELECT B.role_no, U.username,U.user_display,B.active
  308. FROM business_role B
  309. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  310. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  311. <where>
  312. a.site = #{site}
  313. and B.active = 'Y'
  314. AND B.role_desc = 'IPQC-Converting'
  315. <if test="roleDesc!= null and roleDesc != ''">
  316. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  317. </if>
  318. <if test="userDisplay != null and userDisplay != ''">
  319. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  320. </if>
  321. </where>
  322. </select>
  323. <select id="searchBusinessInfo4" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  324. SELECT B.role_no, U.username,U.user_display,B.active
  325. FROM business_role B
  326. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  327. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  328. <where>
  329. a.site = #{site}
  330. and B.active = 'Y'
  331. AND B.role_desc = 'FQC1'
  332. <if test="roleDesc!= null and roleDesc != ''">
  333. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  334. </if>
  335. <if test="userDisplay != null and userDisplay != ''">
  336. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  337. </if>
  338. </where>
  339. </select>
  340. <select id="searchBusinessInfo5" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  341. SELECT B.role_no, U.username,U.user_display,B.active
  342. FROM business_role B
  343. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  344. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  345. <where>
  346. a.site = #{site}
  347. and B.active = 'Y'
  348. AND B.role_desc = 'MFG'
  349. <if test="roleDesc!= null and roleDesc != ''">
  350. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  351. </if>
  352. <if test="userDisplay != null and userDisplay != ''">
  353. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  354. </if>
  355. </where>
  356. </select>
  357. <select id="searchBusinessInfo6" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  358. SELECT B.role_no, U.username,U.user_display,B.active
  359. FROM business_role B
  360. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  361. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  362. <where>
  363. a.site = #{site}
  364. and B.active = 'Y'
  365. AND B.role_desc = 'engineer'
  366. <if test="roleDesc!= null and roleDesc != ''">
  367. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  368. </if>
  369. <if test="userDisplay != null and userDisplay != ''">
  370. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  371. </if>
  372. </where>
  373. </select>
  374. <select id="searchBusinessInfo7" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  375. SELECT B.role_no, U.username,U.user_display,B.active
  376. FROM business_role B
  377. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  378. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  379. <where>
  380. a.site = #{site}
  381. and B.active = 'Y'
  382. AND B.role_desc = 'DocEngineer'
  383. <if test="roleDesc!= null and roleDesc != ''">
  384. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  385. </if>
  386. <if test="userDisplay != null and userDisplay != ''">
  387. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  388. </if>
  389. </where>
  390. </select>
  391. <select id="searchBusinessInfo8" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  392. SELECT B.role_no, U.username,U.user_display,B.active
  393. FROM business_role B
  394. JOIN access_role A ON B.site = A.site AND B.role_no = A.role_no
  395. JOIN sys_user U ON A.username = U.username AND B.site = U.site
  396. <where>
  397. a.site = #{site}
  398. and B.active = 'Y'
  399. AND B.role_desc = 'DocEngineer2'
  400. <if test="roleDesc!= null and roleDesc != ''">
  401. AND B.role_desc LIKE '%' + #{roleDesc} + '%'
  402. </if>
  403. <if test="userDisplay != null and userDisplay != ''">
  404. AND U.user_display LIKE '%' + #{userDisplay} + '%'
  405. </if>
  406. </where>
  407. </select>
  408. <select id="getResponsibleDepartment" resultType="com.xujie.sys.modules.factory.entity.vo.BusinessRoleVo">
  409. SELECT
  410. a.site,
  411. a.role_no,
  412. a.role_desc
  413. FROM business_role a
  414. WHERE a.site = #{site} and a.active = 'Y'
  415. </select>
  416. <select id="getEamWorkShop" resultType="com.xujie.sys.modules.orderIssure.vo.EamWorkShop">
  417. select WorkShopId,WorkShopName,remark from eam_WorkShop
  418. </select>
  419. <!-- 查询部门列表 -->
  420. <select id="getEmpyDeptList" resultType="com.xujie.sys.modules.pms.data.EmpyDept" parameterType="com.xujie.sys.modules.pms.data.EmpyDept">
  421. SELECT
  422. site,
  423. dept_id,
  424. dept_name
  425. FROM view_empy_dept
  426. <where>
  427. site in (select site from eam_access_site where username = #{userName})
  428. <if test = "deptId != null and deptId != ''">
  429. AND dept_id LIKE '%' + #{deptId} + '%'
  430. </if>
  431. <if test = "deptName != null and deptName != ''">
  432. AND dept_name LIKE '%' + #{deptName} + '%'
  433. </if>
  434. </where>
  435. </select>
  436. </mapper>