8797c3e5d92b29f03bd7e2d26b1c36e3c4033365.svn-base 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305
  1. <template>
  2. <div>
  3. <!-- <el-dialog :title="'责任人填报'" :visible.sync="dialogFormVisible"> -->
  4. <el-container style="height:520px;">
  5. <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
  6. <p style="font-weight:bolder;background-color:#d5d5ff;padding:3px;">信息填报</p>
  7. <p style="margin-top:10px;margin-bottom: 10px;">
  8. <i class="left-vertical"></i>
  9. <span>资质等级证书检查</span>
  10. <span class="hrs"></span>
  11. </p>
  12. <el-form :model="formObj" :label-width="formLabelWidth">
  13. <el-form-item label="认证证书是否在有效期、参数是否有效">
  14. <el-radio v-model="formObj.isQuaMea" label="1">是</el-radio>
  15. <el-radio v-model="formObj.isQuaMea" label="2">否</el-radio>
  16. <el-button
  17. @click="addProblem('isQuaMea',formObj.isQuaMea)"
  18. type="text"
  19. v-if="formObj.isQuaMea =='2'">
  20. <i class="el-icon-circle-plus add-problem-icon"></i>
  21. </el-button>
  22. </el-form-item>
  23. <el-form-item label="检测单位名称、地址、法定代表人、技术负责人等信息在资质等级证书、工商营业执照等是否一致性">
  24. <el-radio v-model="formObj.isCreLic" label="1">是</el-radio>
  25. <el-radio v-model="formObj.isCreLic" label="2">否</el-radio>
  26. <el-button
  27. @click="addProblem('isCreLic',formObj.isCreLic)"
  28. type="text"
  29. v-if="formObj.isCreLic =='2'">
  30. <i class="el-icon-circle-plus add-problem-icon"></i>
  31. </el-button>
  32. </el-form-item>
  33. <p style="margin-top:10px;margin-bottom: 10px;">
  34. <i class="left-vertical"></i>
  35. <span>人员资格检查</span>
  36. <span class="hrs"></span>
  37. </p>
  38. <el-form-item label="技术负责人是否具有8年以上从事水利水电工程建设相关工作经历,并具有水利水电专业高级以上职称">
  39. <el-radio v-model="formObj.isDirCenTit" label="1">是</el-radio>
  40. <el-radio v-model="formObj.isDirCenTit" label="2">否</el-radio>
  41. <el-button
  42. @click="addProblem('isDirCenTit',formObj.isDirCenTit)"
  43. type="text"
  44. v-if="formObj.isDirCenTit =='2'">
  45. <i class="el-icon-circle-plus add-problem-icon"></i>
  46. </el-button>
  47. </el-form-item>
  48. <el-form-item label="检测人员是否具有水利工程质量检测员执业资格或具备水利水电工程及相关专业中级以上技术职称职称">
  49. <el-radio v-model="formObj.isPerIntTit" label="1">是</el-radio>
  50. <el-radio v-model="formObj.isPerIntTit" label="2">否</el-radio>
  51. <el-button
  52. @click="addProblem('isPerIntTit',formObj.isPerIntTit)"
  53. type="text"
  54. v-if="formObj.isPerIntTit =='2'">
  55. <i class="el-icon-circle-plus add-problem-icon"></i>
  56. </el-button>
  57. </el-form-item>
  58. <p style="margin-top:10px;margin-bottom: 10px;">
  59. <i class="left-vertical"></i>
  60. <span>技术管理和质量保证体系检查</span>
  61. <span class="hrs"></span>
  62. </p>
  63. <el-form-item label="仪器设备运行、检定和校准情况是否符合相关规定和要求">
  64. <el-radio v-model="formObj.isInsPro" label="1">是</el-radio>
  65. <el-radio v-model="formObj.isInsPro" label="2">否</el-radio>
  66. <el-button
  67. @click="addProblem('isInsPro',formObj.isInsPro)"
  68. type="text"
  69. v-if="formObj.isInsPro =='2'">
  70. <i class="el-icon-circle-plus add-problem-icon"></i>
  71. </el-button>
  72. </el-form-item>
  73. <el-form-item label="检测单位是否建立档案管理制度,单独建立检测结果不合格项目台帐">
  74. <el-radio v-model="formObj.isSysSepPar" label="1">是</el-radio>
  75. <el-radio v-model="formObj.isSysSepPar" label="2">否</el-radio>
  76. <el-button
  77. @click="addProblem('isSysSepPar',formObj.isSysSepPar)"
  78. type="text"
  79. v-if="formObj.isSysSepPar =='2'">
  80. <i class="el-icon-circle-plus add-problem-icon"></i>
  81. </el-button>
  82. </el-form-item>
  83. <el-form-item label="">
  84. <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
  85. </el-form-item>
  86. </el-form>
  87. </el-main>
  88. <problem-dialog
  89. v-if="showAddProblemDialog && openType"
  90. :objType="62"
  91. :villType="62"
  92. :objId="currentObjectId"
  93. :objName="currentObjectName"
  94. :problemMiddleType="'乙级检测单位'"
  95. :problData="probId"
  96. @closeDialog="closePlDialog"
  97. :currentObjectRgstrId="currentObjectRgstrId"
  98. ></problem-dialog>
  99. <!--<add-pic-com v-if="jqmmDialogShow" :dialogTitle="'相关材料'" :jqmmEngId="id" :type="type" :openType="openType" @jqmmDialogClose="jqmmDialogClose"></add-pic-com>-->
  100. </el-container>
  101. </div>
  102. </template>
  103. <script>
  104. import inputWith from "@widget/inuptWith.vue"
  105. import problemDialog from "../../duChaWenTi/problemDialog.vue";
  106. import request from "@util/gw_ajax_request.js"
  107. import {getRgstridRqf} from "@api/duChaTianBao.js"
  108. export default {
  109. components: {
  110. inputWith: inputWith,
  111. problemDialog
  112. },
  113. props: ['currentObjectId', 'currentObjectName', 'currentObjectRgstrId', 'openType', 'currentResCode'],
  114. data() {
  115. return {
  116. id: "",
  117. objtbStatu: {
  118. wtuntStat: "",
  119. rgstrId: "",
  120. id: "",
  121. state: ""
  122. },
  123. rules: {},
  124. jqmmDialogShow: false,
  125. type: '',
  126. formObj: {},
  127. dialogFormVisible: false,
  128. formLabelWidth: '400px',
  129. loading: true,
  130. operationType1: '',
  131. rsvrRules: null,
  132. probId: '',
  133. showAddProblemDialog: false
  134. }
  135. },
  136. computed: {
  137. recPersId() {
  138. return localStorage.getItem("userid") ? localStorage.getItem("userid") : ''
  139. }
  140. },
  141. created() {
  142. this.findItemByType()
  143. },
  144. mounted() {
  145. this.getRgstridObj();
  146. },
  147. watch: {
  148. currentObjectRgstrId(n, o) {
  149. this.getRgstridObj();
  150. },
  151. },
  152. methods: {
  153. jqmmDialogClose() {
  154. this.jqmmDialogShow = false;
  155. },
  156. showPic(type) {
  157. this.type = type
  158. this.jqmmDialogShow = true
  159. },
  160. getRgstridObj() {
  161. var _self = this;
  162. getRgstridRqf(_self.currentObjectRgstrId).then((res) => {
  163. _self.formObj = res.data;
  164. // _self.id = res.data.id;
  165. });
  166. },
  167. addHandler() {
  168. var _self = this;
  169. _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
  170. _self.formObj['persId'] = _self.recPersId;
  171. if (this.formObj.isQuaMea != null &&
  172. this.formObj.isCreLic != null &&
  173. this.formObj.isDirCenTit != null &&
  174. this.formObj.isPerIntTit != null &&
  175. this.formObj.isInsPro != null &&
  176. this.formObj.isSysSepPar != null) {
  177. this.formObj['state'] = "2"
  178. } else if (this.formObj.isQuaMea == null &&
  179. this.formObj.isCreLic == null &&
  180. this.formObj.isDirCenTit == null &&
  181. this.formObj.isPerIntTit == null &&
  182. this.formObj.isInsPro == null &&
  183. this.formObj.isSysSepPar == null) {
  184. this.formObj['state'] = "0";
  185. } else {
  186. this.formObj['state'] = "1"
  187. }
  188. this.$confirm('确认保存资质等级证书检查情况信息?', '提示', {
  189. confirmButtonText: '确定',
  190. cancelButtonText: '取消',
  191. type: 'warning'
  192. })
  193. .then(() => {
  194. try {
  195. request.post('/bis/insp/cdep/qua', _self.formObj).then((res) => {
  196. if (res.success) {
  197. _self.$message.success("修改成功");
  198. _self.$emit("addShuiKuSuccess");
  199. }
  200. });
  201. } catch (e) {
  202. }
  203. })
  204. .catch(() => {
  205. });
  206. },
  207. cancelHandler() {
  208. this.$emit('cancelHandler');
  209. },
  210. findItemByType() {
  211. const obj = {
  212. tname: "BIS_INSP_CDEP_QUA",
  213. }
  214. request.post("/bis/insp/item/ques/info/findItemByType", obj).then(res => {
  215. this.rsvrRules = res.data;
  216. })
  217. },
  218. addProblem(item, iValue) {
  219. let rest = this.rsvrRules.filter(e => {
  220. return e.iValue === iValue && e.eName === item;
  221. });
  222. if (rest[0]) {
  223. this.probId = rest[0].id;
  224. }
  225. this.showAddProblemDialog = true;
  226. },
  227. formatRadio(val) {
  228. if (val == '1') {
  229. return '是'
  230. } else if (val == '2') {
  231. return '否'
  232. } else {
  233. return val
  234. }
  235. },
  236. closePlDialog(val) {
  237. this.showAddProblemDialog = false;
  238. }
  239. },
  240. }
  241. </script>
  242. <style scoped>
  243. #dcdxHeader {
  244. padding: 15px 20px;
  245. }
  246. #dxdcFooter {
  247. text-align: center;
  248. }
  249. #dxdcAside {
  250. border: 1px solid #d5d5ff;
  251. }
  252. .el-dialog__wrapper .el-treeWhite {
  253. /* max-height: 260px !important; */
  254. }
  255. .add-problem-icon {
  256. font-size: 16px;
  257. }
  258. .el-icon-camera-solid, .el-icon-circle-plus {
  259. margin-left: 20px;
  260. color: #00bbff;
  261. font-size: 18px;
  262. line-height: 12px;
  263. vertical-align: middle;
  264. cursor: pointer;
  265. }
  266. .el-icon-circle-plus {
  267. vertical-align: top;
  268. }
  269. .left-vertical {
  270. width: 8px;
  271. height: 17px;
  272. background: rgb(250, 205, 145);
  273. display: inline-block;
  274. vertical-align: bottom;
  275. }
  276. .hrs {
  277. display: inline-block;
  278. width: calc(100% - 40px);
  279. margin-left: 10px;
  280. height: 1px;
  281. vertical-align: middle;
  282. background-color: #ddd;
  283. }
  284. </style>