74ff3a081b9f2701d0fdf16fa51ce3698d5c1b90.svn-base 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. <template>
  2. <el-container style="height:520px;">
  3. <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
  4. <p style="font-weight:bolder;background-color:#d5d5ff;padding:3px;">信息填报</p>
  5. <el-form :model="formObj" :label-width="formLabelWidth">
  6. <p style="margin-top:10px;margin-bottom: 10px;">
  7. <i class="left-vertical"></i>
  8. <span>招投标项目检查</span>
  9. <span class="hrs"></span>
  10. </p>
  11. <el-form-item label="招投标项目是否存在问题">
  12. <el-radio v-model="formObj.isBidPro" label="1">是</el-radio>
  13. <el-radio v-model="formObj.isBidPro" label="2">否</el-radio>
  14. <el-button
  15. @click="addProblem('isBidPro',formObj.isBidPro)"
  16. type="text"
  17. v-if="formObj.isBidPro =='1'">
  18. <i class="el-icon-circle-plus add-problem-icon"></i>
  19. </el-button>
  20. </el-form-item>
  21. <el-form-item label="">
  22. <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
  23. </el-form-item>
  24. </el-form>
  25. </el-main>
  26. <problem-dialog
  27. v-if="showAddProblemDialog && openType"
  28. :objType="67"
  29. :villType="67"
  30. :objId="currentObjectId"
  31. :objName="currentObjectName"
  32. :problemMiddleType="'招投标'"
  33. :problData="probId"
  34. @closeDialog="closePlDialog"
  35. :currentObjectRgstrId="currentObjectRgstrId"
  36. ></problem-dialog>
  37. <!--<add-pic-com v-if="jqmmDialogShow" :dialogTitle="'相关材料'" :jqmmEngId="id" :type="type" :openType="openType" @jqmmDialogClose="jqmmDialogClose"></add-pic-com>-->
  38. </el-container>
  39. </template>
  40. <script>
  41. import inputWith from "@widget/inuptWith.vue"
  42. import problemDialog from "../../duChaWenTi/problemDialog.vue";
  43. import request from "@util/gw_ajax_request.js"
  44. import {getRgstridZtb} from "@api/duChaTianBao.js"
  45. export default {
  46. components: {
  47. inputWith: inputWith,
  48. problemDialog
  49. },
  50. props: ['currentObjectId', 'currentObjectName', 'currentObjectRgstrId', 'openType'],
  51. data() {
  52. return {
  53. id: "",
  54. objtbStatu: {
  55. wtuntStat: "",
  56. rgstrId: "",
  57. id: "",
  58. state: ""
  59. },
  60. rules: {},
  61. jqmmDialogShow: false,
  62. type: '',
  63. formObj: {
  64. isBidPro:""
  65. },
  66. dialogFormVisible: false,
  67. formLabelWidth: '300px',
  68. loading: true,
  69. operationType1: '',
  70. rsvrRules: null,
  71. probId: '',
  72. showAddProblemDialog: false
  73. }
  74. },
  75. computed: {
  76. recPersId() {
  77. return localStorage.getItem("userid") ? localStorage.getItem("userid") : ''
  78. }
  79. },
  80. created() {
  81. this.findItemByType()
  82. },
  83. mounted() {
  84. this.getRgstridObj();
  85. },
  86. watch: {
  87. currentObjectRgstrId(n, o) {
  88. this.getRgstridObj();
  89. },
  90. },
  91. methods: {
  92. jqmmDialogClose() {
  93. this.jqmmDialogShow = false;
  94. },
  95. showPic(type) {
  96. this.type = type;
  97. this.jqmmDialogShow = true
  98. },
  99. getRgstridObj() {
  100. var _self = this;
  101. getRgstridZtb(_self.currentObjectRgstrId).then((res) => {
  102. _self.formObj = res.data;
  103. _self.id = res.data.id;
  104. });
  105. },
  106. addHandler() {
  107. var _self = this;
  108. _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
  109. _self.formObj['persId'] = _self.recPersId;
  110. if (this.formObj.isBidPro != null) {
  111. this.formObj.state = "2"
  112. } else if (this.formObj.isBidPro == null) {
  113. this.formObj['state'] = "0";
  114. } else {
  115. this.formObj.state = "1"
  116. }
  117. this.$confirm('确认保存招投标督查情况信息?', '提示', {
  118. confirmButtonText: '确定',
  119. cancelButtonText: '取消',
  120. type: 'warning'
  121. })
  122. .then(() => {
  123. try {
  124. request.post('/bis/insp/bid/pro', _self.formObj).then((res) => {
  125. if (res.success) {
  126. _self.$message.success("修改成功");
  127. _self.$emit("addShuiKuSuccess");
  128. }
  129. });
  130. } catch (e) {
  131. }
  132. })
  133. .catch(() => {
  134. });
  135. },
  136. cancelHandler() {
  137. this.$emit('cancelHandler');
  138. },
  139. findItemByType() {
  140. const obj = {
  141. tname: "BIS_INSP_BID_PRO",
  142. }
  143. request.post("/bis/insp/item/ques/info/findItemByType", obj).then(res => {
  144. this.rsvrRules = res.data;
  145. })
  146. },
  147. addProblem(item, iValue) {
  148. let rest = this.rsvrRules.filter(e => {
  149. return e.iValue === iValue && e.eName === item;
  150. });
  151. if (rest[0]) {
  152. console.log(rest[0]);
  153. this.probId = rest[0].id;
  154. }
  155. this.showAddProblemDialog = true;
  156. },
  157. formatRadio(val) {
  158. if (val == '1') {
  159. return '有'
  160. } else if (val == '2') {
  161. return '无'
  162. } else {
  163. return val
  164. }
  165. },
  166. closePlDialog(val) {
  167. this.showAddProblemDialog = false;
  168. }
  169. },
  170. }
  171. </script>
  172. <style scoped>
  173. #dcdxHeader {
  174. padding: 15px 20px;
  175. }
  176. #dxdcFooter {
  177. text-align: center;
  178. }
  179. #dxdcAside {
  180. border: 1px solid #d5d5ff;
  181. }
  182. .el-dialog__wrapper .el-treeWhite {
  183. /* max-height: 260px !important; */
  184. }
  185. .add-problem-icon {
  186. font-size: 16px;
  187. }
  188. .el-icon-camera-solid, .el-icon-circle-plus {
  189. margin-left: 20px;
  190. color: #00bbff;
  191. font-size: 18px;
  192. line-height: 12px;
  193. vertical-align: middle;
  194. cursor: pointer;
  195. }
  196. .el-icon-circle-plus {
  197. vertical-align: top;
  198. }
  199. .left-vertical {
  200. width: 8px;
  201. height: 17px;
  202. background: rgb(250, 205, 145);
  203. display: inline-block;
  204. vertical-align: bottom;
  205. }
  206. .hrs {
  207. display: inline-block;
  208. width: calc(100% - 40px);
  209. margin-left: 10px;
  210. height: 1px;
  211. vertical-align: middle;
  212. background-color: #ddd;
  213. }
  214. .p-title {
  215. padding-left: 20px;
  216. font-weight: bold;
  217. }
  218. </style>