myOrderDetail.vue 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038
  1. <template>
  2. <div class="app-container">
  3. <div class="title-container">
  4. <breadcrumb id="breadcrumb-container" class="breadcrumb-container" />
  5. </div>
  6. <el-tabs v-model="activeTagName" @tab-click="handleClick" type="border-card">
  7. <el-tab-pane name="order" class="pane-class" :lazy=true>
  8. <span slot="label"><i class="el-icon-document"></i> 市场订单</span>
  9. <y-detail-page-layout ref="myOrder" @save="handleCreate" :editStatus="couldEdit"
  10. @doRecall="doRecall" :couldBack="couldBack">
  11. <div>
  12. <el-form ref="majorForm" :model="major" class="form-container">
  13. <div class="createMajor-main-container">
  14. <div class="postInfo-container">
  15. <div>
  16. <el-divider content-position="left">
  17. <h3 class="title">
  18. <div class="avatar-wrapper icon-title">订单</div>
  19. <div class="icon-info">大中型订单</div>
  20. </h3>
  21. </el-divider>
  22. </div>
  23. <el-row class="row-style">
  24. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  25. <el-form-item
  26. label="客户经理:"
  27. prop="clientManager"
  28. label-width="120px"
  29. class="postInfo-container-item"
  30. >
  31. <el-input :value="major.clientManager" class="filter-item" readonly disabled style=" width: 225px" />
  32. </el-form-item>
  33. </el-col>
  34. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  35. <el-form-item
  36. label="订单属性:"
  37. prop="financial"
  38. label-width="120px"
  39. class="postInfo-container-item"
  40. >
  41. <el-select v-model="major.financial" placeholder="请选择">
  42. <el-option label="金融" :value="true">金融</el-option>
  43. <el-option label="非金融" :value="false">非金融</el-option>
  44. </el-select>
  45. </el-form-item>
  46. </el-col>
  47. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  48. <el-form-item
  49. label="派单方式:"
  50. prop="allotType"
  51. label-width="120px"
  52. class="postInfo-container-item"
  53. >
  54. <el-select v-model="major.allotType" placeholder="请选择" readonly disabled>
  55. <el-option label="部门轮单" value="轮单"></el-option>
  56. <el-option label="部门指派" value="指派"></el-option>
  57. </el-select>
  58. </el-form-item>
  59. </el-col>
  60. <el-col :xs="24" :sm="12" :lg="4" :span="6">
  61. <el-form-item
  62. label="接单部门:"
  63. prop="departmentId"
  64. label-width="120px"
  65. class="postInfo-container-item"
  66. >
  67. <el-select v-model="major.departmentId" placeholder="请选择" readonly disabled>
  68. <el-option v-for="(d,id) in allotDepartment" :label="d.name" :value="d.id" ></el-option>
  69. </el-select>
  70. </el-form-item>
  71. </el-col>
  72. </el-row>
  73. <el-row class="row-style">
  74. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  75. <el-form-item
  76. label="项目负责人:"
  77. prop="principalId"
  78. label-width="120px"
  79. :class="['postInfo-container-item']"
  80. >
  81. <el-select v-model="major.principalId"
  82. placeholder="待定"
  83. readonly
  84. disabled>
  85. <el-option v-for="(p,id) in principals" :label="p.name" :value="p.id"></el-option>
  86. </el-select>
  87. </el-form-item>
  88. </el-col>
  89. <el-col :xs="24" :sm="12" :lg="12" :span="6">
  90. <el-form-item
  91. label="项目成员:"
  92. prop="membersId"
  93. label-width="120px"
  94. :class="['postInfo-container-item']"
  95. >
  96. <el-select v-model="major.membersId"
  97. placeholder="待定"
  98. multiple
  99. readonly
  100. disabled
  101. style=" width: 686px" >
  102. <el-option v-for="(u,id) in allUsers" :label="u.name" :value="u.id"></el-option>
  103. </el-select>
  104. </el-form-item>
  105. </el-col>
  106. </el-row>
  107. <el-row class="row-style">
  108. <el-col :xs="12" :sm="12" :lg="23" :span="6">
  109. <el-form-item
  110. label="订单名称:"
  111. prop="name"
  112. label-width="120px"
  113. class="postInfo-container-item"
  114. >
  115. <el-input v-model="major.name" class="filter-item" style=" width: 100%" />
  116. </el-form-item>
  117. </el-col>
  118. </el-row>
  119. <el-row class="row-style">
  120. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  121. <el-form-item
  122. label="对象类型:"
  123. prop="businessObjectType"
  124. label-width="120px"
  125. class="postInfo-container-item"
  126. >
  127. <el-select v-model="major.businessObjectType" placeholder="请选择" @change="changeType" readonly disabled>
  128. <el-option label="土地" value="土地"></el-option>
  129. <el-option label="房地产" value="房地产"></el-option>
  130. </el-select>
  131. </el-form-item>
  132. </el-col>
  133. <el-col :xs="24" :sm="12" :lg="6" :span="6" v-if="major.businessObjectType==='房地产'">
  134. <el-form-item
  135. label="特殊类型:"
  136. prop="specialType"
  137. label-width="120px"
  138. class="postInfo-container-item"
  139. >
  140. <el-select v-model="major.specialType" placeholder="请选择">
  141. <el-option label="在建工程" value="在建工程"></el-option>
  142. <el-option label="加油加气站" value="加油加气站"></el-option>
  143. <el-option label="电站" value="电站"></el-option>
  144. <el-option label="客运站" value="客运站"></el-option>
  145. </el-select>
  146. </el-form-item>
  147. </el-col>
  148. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  149. <el-form-item
  150. label="业务类型:"
  151. prop="businessGener"
  152. label-width="120px"
  153. class="postInfo-container-item"
  154. >
  155. <el-select v-model="major.businessGener" placeholder="请选择" >
  156. <el-option v-for="(type,index) in types" :label="type" :value="type"></el-option>
  157. </el-select>
  158. </el-form-item>
  159. </el-col>
  160. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  161. <el-form-item
  162. label="评估目的:"
  163. prop="evaluateAim"
  164. label-width="120px"
  165. class="postInfo-container-item"
  166. >
  167. <el-select v-model="major.evaluateAim" placeholder="请选择">
  168. <el-option label="抵押" value="抵押"></el-option>
  169. <el-option label="咨询" value="咨询"></el-option>
  170. <el-option label="融资" value="融资"></el-option>
  171. <el-option label="可行性研究" value="可行性研究"></el-option>
  172. <el-option label="不良资产价值评估" value="不良资产价值评估"></el-option>
  173. <el-option label="其他" value="其他"></el-option>
  174. </el-select>
  175. </el-form-item>
  176. </el-col>
  177. </el-row>
  178. <el-row class="row-style">
  179. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  180. <el-form-item
  181. label="再次委托:"
  182. prop="entrustAgain"
  183. label-width="120px"
  184. class="postInfo-container-item"
  185. >
  186. <el-radio class="major-radio" v-model="major.entrustAgain" :label="false" border size="medium" >否</el-radio>
  187. <el-radio class="major-radio" v-model="major.entrustAgain" :label="true" border size="medium" >是</el-radio>
  188. </el-form-item>
  189. </el-col>
  190. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  191. <el-form-item
  192. label="分户搬迁:"
  193. prop="multipleRemoval"
  194. label-width="120px"
  195. class="postInfo-container-item"
  196. >
  197. <el-radio class="major-radio" v-model="major.multipleRemoval" :label="false" border size="medium" >否</el-radio>
  198. <el-radio class="major-radio" v-model="major.multipleRemoval" :label="true" border size="medium" >是</el-radio>
  199. </el-form-item>
  200. </el-col>
  201. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  202. <el-form-item
  203. label="是否口估:"
  204. prop="informalEvaluate"
  205. label-width="120px"
  206. class="postInfo-container-item"
  207. >
  208. <el-radio class="major-radio" v-model="major.informalEvaluate" :label="false" border size="medium" >否</el-radio>
  209. <el-radio class="major-radio" v-model="major.informalEvaluate" :label="true" border size="medium" >是</el-radio>
  210. </el-form-item>
  211. </el-col>
  212. </el-row>
  213. <el-row class="row-style">
  214. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  215. <el-form-item
  216. label="客户类型:"
  217. prop="clienteleType"
  218. label-width="120px"
  219. class="postInfo-container-item"
  220. >
  221. <el-select v-model="major.clienteleType" placeholder="请选择" @change="changeCustomerType(0)">
  222. <el-option label="企业" value="企业"></el-option>
  223. <el-option label="个人" value="个人"></el-option>
  224. </el-select>
  225. </el-form-item>
  226. </el-col>
  227. <el-col :xs="24" :sm="12" :lg="6" :span="6" v-if="major.clienteleType==='企业'">
  228. <el-form-item
  229. label="客户名称:"
  230. prop="clienteleId"
  231. label-width="120px"
  232. class="postInfo-container-item"
  233. >
  234. <el-select v-model="major.clienteleId" placeholder="请选择(可搜索)" @change="findSubClientele(0)" clearable filterable v-if="couldEdit">
  235. <el-option v-for="(c,id) in customerCompany" :label="c.name" :value="c.id"></el-option>
  236. </el-select>
  237. <el-input :value="major.cclienteleName" class="filter-item" style=" width: 225px" v-else/>
  238. </el-form-item>
  239. </el-col>
  240. <el-col :xs="24" :sm="12" :lg="6" :span="6" v-if="major.clienteleType==='企业'">
  241. <el-form-item
  242. label="业务来源:"
  243. prop="clienteleSubId"
  244. label-width="120px"
  245. class="postInfo-container-item"
  246. >
  247. <el-select v-model="major.clienteleSubId" placeholder="请选择(可搜索)" @change="getCustomerContract" clearable filterable v-if="couldEdit">
  248. <el-option v-for="(s,id) in subCustomerCompany" :label="s.name" :value="s.id"></el-option>
  249. </el-select>
  250. <el-input :value="major.cclienteleSubName" class="filter-item" style=" width: 225px" v-else />
  251. </el-form-item>
  252. </el-col>
  253. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  254. <el-form-item
  255. label="客户联系人:"
  256. prop="clienteleContactId"
  257. label-width="120px"
  258. class="postInfo-container-item"
  259. >
  260. <el-select v-model="major.clienteleContactId" placeholder="请选择(可搜索)" clearable filterable @change="getContactInfo" v-if="couldEdit">
  261. <el-option v-for="(c,id) in customerContract" :label="c.name" :value="c.id"></el-option>
  262. </el-select>
  263. <el-input :value="major.cclienteleContactName" class="filter-item" style=" width: 225px" v-else/>
  264. </el-form-item>
  265. </el-col>
  266. </el-row>
  267. <el-row class="row-style">
  268. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  269. <el-form-item
  270. label="联系人电话:"
  271. prop="clienteleContactId"
  272. label-width="120px"
  273. class="postInfo-container-item"
  274. >
  275. <el-input :value="major.cmobile" class="filter-item" style=" width: 225px" readonly disabled/>
  276. </el-form-item>
  277. </el-col>
  278. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  279. <el-form-item
  280. label="联系人部门:"
  281. prop="clienteleContactId"
  282. label-width="120px"
  283. class="postInfo-container-item"
  284. >
  285. <el-input :value="major.cdepartment" class="filter-item" style=" width: 225px" readonly disabled/>
  286. </el-form-item>
  287. </el-col>
  288. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  289. <el-form-item
  290. label="联系人职务:"
  291. prop="clienteleContactId"
  292. label-width="120px"
  293. class="postInfo-container-item"
  294. >
  295. <el-input :value="major.cduty" class="filter-item" style=" width: 225px" readonly disabled/>
  296. </el-form-item>
  297. </el-col>
  298. </el-row>
  299. <el-row class="row-style">
  300. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  301. <el-form-item
  302. label="分配产值:"
  303. prop="dispenseBenefit"
  304. label-width="120px"
  305. class="postInfo-container-item"
  306. >
  307. <el-radio class="major-radio" v-model="major.dispenseBenefit" :label="false" border size="medium" >否</el-radio>
  308. <el-radio class="major-radio" v-model="major.dispenseBenefit" :label="true" border size="medium">是</el-radio>
  309. </el-form-item>
  310. </el-col>
  311. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  312. <el-form-item
  313. label="是否异地:"
  314. prop="nonnative"
  315. label-width="120px"
  316. class="postInfo-container-item"
  317. >
  318. <el-radio class="major-radio" v-model="major.nonnative" :label="false" border size="medium" >否</el-radio>
  319. <el-radio class="major-radio" v-model="major.nonnative" :label="true" border size="medium" >是</el-radio>
  320. </el-form-item>
  321. </el-col>
  322. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  323. <el-form-item
  324. label="是否续贷:"
  325. prop="refinance"
  326. label-width="120px"
  327. class="postInfo-container-item"
  328. >
  329. <el-radio class="major-radio" v-model="major.refinance" :label="false" border size="medium" >否</el-radio>
  330. <el-radio class="major-radio" v-model="major.refinance" :label="true" border size="medium">是</el-radio>
  331. </el-form-item>
  332. </el-col>
  333. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  334. <el-form-item
  335. label="贷款到期:"
  336. prop="loanExpire"
  337. label-width="120px"
  338. class="postInfo-container-item"
  339. >
  340. <el-radio class="major-radio" v-model="major.loanExpire" :label="false" border size="medium" >否</el-radio>
  341. <el-radio class="major-radio" v-model="major.loanExpire" :label="true" border size="medium">是</el-radio>
  342. </el-form-item>
  343. </el-col>
  344. </el-row>
  345. <el-row class="row-style">
  346. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  347. <el-form-item
  348. label="贷款额度:"
  349. prop="loanLimit"
  350. label-width="120px"
  351. class="postInfo-container-item"
  352. >
  353. <el-input v-model="major.loanLimit" class="filter-item" style=" width: 225px">
  354. <template slot="append">万元</template>
  355. </el-input>
  356. </el-form-item>
  357. </el-col>
  358. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  359. <el-form-item
  360. label="贷款期限:"
  361. prop="loanPeriod"
  362. label-width="120px"
  363. class="postInfo-container-item"
  364. >
  365. <el-input v-model="major.loanPeriod" class="filter-item" style=" width: 225px" >
  366. <template slot="append">年</template>
  367. </el-input>
  368. </el-form-item>
  369. </el-col>
  370. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  371. <el-form-item
  372. label="贷款性质:"
  373. prop="loanNature"
  374. label-width="120px"
  375. class="postInfo-container-item"
  376. >
  377. <el-input v-model="major.loanNature" class="filter-item" style=" width: 225px" />
  378. </el-form-item>
  379. </el-col>
  380. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  381. <el-form-item
  382. label="贷款用途:"
  383. prop="loanAim"
  384. label-width="120px"
  385. class="postInfo-container-item"
  386. >
  387. <el-input v-model="major.loanAim" class="filter-item" style=" width: 225px" />
  388. </el-form-item>
  389. </el-col>
  390. </el-row>
  391. <el-row class="row-style">
  392. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  393. <el-form-item
  394. label="委托人:"
  395. prop="bailor"
  396. label-width="120px"
  397. class="postInfo-container-item"
  398. >
  399. <el-input v-model="major.bailor" class="filter-item" style=" width: 225px" />
  400. </el-form-item>
  401. </el-col>
  402. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  403. <el-form-item
  404. label="委托人地址:"
  405. prop="bailorAddress"
  406. label-width="120px"
  407. class="postInfo-container-item"
  408. >
  409. <el-input v-model="major.bailorAddress" class="filter-item" style=" width: 225px" />
  410. </el-form-item>
  411. </el-col>
  412. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  413. <el-form-item
  414. label="委托联系人:"
  415. prop="bailorContactName"
  416. label-width="120px"
  417. class="postInfo-container-item"
  418. >
  419. <el-input v-model="major.bailorContactName" class="filter-item" style=" width: 225px" />
  420. </el-form-item>
  421. </el-col>
  422. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  423. <el-form-item
  424. label="委托电话:"
  425. prop="bailorContactTel"
  426. label-width="120px"
  427. class="postInfo-container-item"
  428. >
  429. <el-input v-model="major.bailorContactTel" class="filter-item" style=" width: 225px" />
  430. </el-form-item>
  431. </el-col>
  432. </el-row>
  433. <el-row class="row-style">
  434. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  435. <el-form-item
  436. label="产权人:"
  437. prop="owner"
  438. label-width="120px"
  439. class="postInfo-container-item"
  440. >
  441. <el-input v-model="major.owner" class="filter-item" style=" width: 225px"/>
  442. </el-form-item>
  443. </el-col>
  444. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  445. <el-form-item
  446. label="产权人电话:"
  447. prop="ownerTel"
  448. label-width="120px"
  449. class="postInfo-container-item"
  450. >
  451. <el-input v-model="major.ownerTel" class="filter-item" style=" width: 225px" />
  452. </el-form-item>
  453. </el-col>
  454. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  455. <el-form-item
  456. label="是否加急:"
  457. prop="urgent"
  458. label-width="120px"
  459. class="postInfo-container-item"
  460. >
  461. <el-radio class="major-radio" v-model="major.urgent" :label="false" border size="medium" >否</el-radio>
  462. <el-radio class="major-radio" v-model="major.urgent" :label="true" border size="medium" >是</el-radio>
  463. </el-form-item>
  464. </el-col>
  465. </el-row>
  466. <el-row class="row-style">
  467. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  468. <el-form-item
  469. label="终端客户类型:"
  470. prop="terminalClienteleType"
  471. label-width="140px"
  472. class="postInfo-container-item"
  473. >
  474. <el-select v-model="major.terminalClienteleType" placeholder="请选择" @change="changeCustomerType(1)">
  475. <el-option label="企业" value="企业"></el-option>
  476. <el-option label="个人" value="个人"></el-option>
  477. </el-select>
  478. </el-form-item>
  479. </el-col>
  480. <el-col :xs="24" :sm="12" :lg="6" :span="6" v-if="major.terminalClienteleType==='企业'">
  481. <el-form-item
  482. label="终端客户名称:"
  483. prop="terminalClienteleId"
  484. label-width="140px"
  485. class="postInfo-container-item"
  486. >
  487. <el-select v-model="major.terminalClienteleId" placeholder="请选择(可搜索)" @change="findSubClientele(1)" clearable filterable v-if="couldEdit">
  488. <el-option v-for="(c,id) in tCustomerCompany" :label="c.name" :value="c.id"></el-option>
  489. </el-select>
  490. <el-input :value="major.tterminalClienteleName" class="filter-item" style=" width: 225px" v-else/>
  491. </el-form-item>
  492. </el-col>
  493. <el-col :xs="24" :sm="12" :lg="6" :span="6" v-if="major.terminalClienteleType==='个人'">
  494. <el-form-item
  495. label="终端联系人:"
  496. prop="terminalClienteleContactId"
  497. label-width="120px"
  498. class="postInfo-container-item"
  499. >
  500. <el-select v-model="major.terminalClienteleContactId" placeholder="请选择(可搜索)" clearable filterable @change="getTcontactInfo" v-if="couldEdit">
  501. <el-option v-for="(c,id) in tCustomerContract" :label="c.name" :value="c.id"></el-option>
  502. </el-select>
  503. <el-input :value="major.tterminalClienteleContactName" class="filter-item" style=" width: 225px" v-else/>
  504. </el-form-item>
  505. </el-col>
  506. <el-col :xs="24" :sm="12" :lg="6" :span="6">
  507. <el-form-item
  508. label="终端联系电话:"
  509. prop="mobile"
  510. label-width="130px"
  511. class="postInfo-container-item"
  512. >
  513. <el-input :value="major.tmobile" class="filter-item" style=" width: 225px" readonly disabled/>
  514. </el-form-item>
  515. </el-col>
  516. </el-row>
  517. <el-row class="row-style">
  518. <el-col :xs="24" :sm="12" :lg="11" :span="12">
  519. <el-form-item
  520. label="订单备注:"
  521. prop="remark"
  522. label-width="120px"
  523. class="postInfo-container-item"
  524. >
  525. <el-input v-model="major.remark" class="filter-item" type="textarea" />
  526. </el-form-item>
  527. </el-col>
  528. </el-row>
  529. </div>
  530. </div>
  531. </el-form>
  532. </div>
  533. </y-detail-page-layout>
  534. </el-tab-pane>
  535. </el-tabs>
  536. </div>
  537. </template>
  538. <script>
  539. import Breadcrumb from '@/components/Breadcrumb'
  540. import YDetailPageLayout from '@/components/YDetailPageLayout/index_detail'
  541. export default {
  542. name: 'myOrderDetail',
  543. components: {
  544. Breadcrumb,
  545. YDetailPageLayout,
  546. },
  547. watch:{
  548. $route(to, from) {
  549. if (to.path === from.path){
  550. this.couldEdit = this.$route.query.couldEdit ==='true';
  551. this.couldBack = this.$route.query.couldBack ==='true';
  552. this.saveOrderBtn = this.$route.query.saveOrderBtn;
  553. this.majorId = this.$route.query.id;
  554. this.getAllUser();
  555. this.getMajorDetail();
  556. this.getCustomerCompany(0);
  557. this.getCustomerCompany(1);
  558. this.changeType();
  559. this.getAllotDepartment();
  560. }
  561. },
  562. },
  563. data() {
  564. return {
  565. majorId:null,
  566. activeName:'workflowInfo',
  567. activeTagName: 'order',
  568. major: {
  569. id:null,
  570. name:null,
  571. financial:false,
  572. allotType:"轮单",
  573. clientManagerId:this.$store.getters.userInfo.id,
  574. principalId:null,
  575. departmentId:null,
  576. businessObjectType:"土地",
  577. specialType:null,
  578. businessGener:null,
  579. evaluateAim:"抵押",
  580. entrustAgain:false,
  581. multipleRemoval:false,
  582. informalEvaluate:false,
  583. clienteleType:"企业",
  584. clienteleId:null,
  585. clienteleContactId:null,
  586. dispenseBenefit:false,
  587. nonnative:false,
  588. refinance:false,
  589. loanLimit:null,
  590. loanPeriod:null,
  591. loanNature:null,
  592. loanAim:null,
  593. loanExpire:false,
  594. bailor:null,
  595. bailorAddress:null,
  596. bailorContactName:null,
  597. bailorContactTel:null,
  598. owner:null,
  599. ownerTel:null,
  600. urgent:false,
  601. terminalClienteleId:null,
  602. terminalClienteleType:"企业",
  603. terminalClienteleContactId:null,
  604. remark:null,
  605. membersName:null,
  606. clientManager:this.$store.getters.userInfo.name,
  607. members:null,
  608. productionInfo:null,
  609. printing:null,
  610. printingRemark:null,
  611. cmobile:null,
  612. cdepartment:null,
  613. cduty:null,
  614. cclienteleName:null,
  615. cclienteleSubName:null,
  616. cclienteleContactName:null,
  617. tmobile:null,
  618. tterminalClienteleContactName:null,
  619. tterminalClienteleName:null
  620. },
  621. majorId:null,
  622. allotDepartment:[],
  623. principals:[],
  624. allUsers:[],
  625. saveOrderBtn:null,
  626. customerCompany:[],
  627. subCustomerCompany:[],
  628. customerContract:[],
  629. tCustomerCompany:[],
  630. tSubCustomerCompany:[],
  631. tCustomerContract:[],
  632. types:[],
  633. landType:[ "划拨土地价格评估",
  634. "土地利用总体规划、规划调整、项目规划",
  635. "城乡建设用地增减挂钩项目",
  636. "建设用地报件",
  637. "房屋征收、搬迁社会稳定风险评估",
  638. "社会稳定风险评价",
  639. "自然资源资产负债表项目",
  640. "航空摄影测量",
  641. "集体建设用地使用权价格评估",
  642. "土地复垦方案",
  643. "开发区土地集约利用评价",
  644. "城市土地集约利用评价",
  645. "土地基准地价评估",
  646. "土地标定地价评估",
  647. "土地地价动态监测",
  648. "建设项目节地评价",
  649. "集体承包土地的经营权流转租赁评估",
  650. "集体经营性建设用地出让地价、租赁地价评估",
  651. "集体经营性建设用地转让、出资、抵押评估",
  652. "农用地质量分等评估",
  653. "农用地定级和基准地价评估",
  654. "集体建设用地定级和基准地价评估",
  655. "工业用地集约利用评价",
  656. "征收农用地区片综合地价评估",
  657. "城市低效用地专项规划项目"],
  658. houseType :[ "司法鉴定中不动产损害赔偿评估",
  659. "税收部门征税房地产批量评估",
  660. "房地产投资项目可行性研究",
  661. "金融机构已设营业网点市场前景调查分析报告",
  662. "企业国有资产产权无偿划转操作方案咨询",
  663. "房地产区域市场研究",
  664. "商业银行押品快速变现价值的量化分析评估",
  665. "城市旧城改造、棚户区改造实施规划编制",
  666. "城市旧城改造、棚户区改造项目可行性研究",
  667. "城市更新项目规划编制",
  668. "城市旧城改造、棚户区改造征收、搬迁方案咨询",
  669. "城市更新项目可行性研究",
  670. "以财务报表为目的投资性物业价值评估(投资性房地产市场价值除外)",
  671. "住房租赁证券化评估",
  672. "房屋征收、搬迁社会稳定风险评估",
  673. "政府为出让土地成片大规模土地分等定级研究",
  674. "“城中村”房屋搬迁补偿评估",
  675. "经营性物业租金体系研究",
  676. "存量房地产再开发利用投资价值评估、咨询",
  677. "公共性、公益性房地产评估",],
  678. saveOrderBtn:null,
  679. couldEdit:null
  680. }
  681. },
  682. created() {
  683. this.couldEdit = this.$route.query.couldEdit ==='true';
  684. this.couldBack = this.$route.query.couldBack ==='true';
  685. this.saveOrderBtn = this.$route.query.saveOrderBtn;
  686. this.majorId = this.$route.query.id;
  687. this.getAllUser();
  688. this.getMajorDetail();
  689. this.getCustomerCompany(0);
  690. this.getCustomerCompany(1);
  691. this.changeType();
  692. this.getAllotDepartment();
  693. },
  694. methods: {
  695. handleChange(){
  696. },
  697. handleClick(tab) {
  698. },
  699. handleCreate(){
  700. this.$refs.majorForm.validate(valid => {
  701. if (valid) {
  702. if (this.major.id) {
  703. this.$api.major.edit(this.major).then(res => {
  704. if (res.code === 200) {
  705. this.$notify({
  706. title: '成功',
  707. message: '保存成功',
  708. type: 'success',
  709. duration: 2000
  710. });
  711. const back = this.$route.query.back;
  712. if (back) {
  713. this.$router.push(back)
  714. }
  715. this.initData();
  716. }
  717. })
  718. } else {
  719. this.$api.major.add(this.major).then(res => {
  720. if (res.code === 200) {
  721. if (res.data && res.data.instanceNodeId && res.data.state){
  722. this.$api.workflow.commit(res.data).then(result =>{
  723. if (result.code === 200 && result.data){
  724. this.$notify({
  725. title: '成功',
  726. message: '下单并提交流程成功',
  727. type: 'success',
  728. duration: 2000
  729. });
  730. }
  731. })
  732. }else{
  733. this.$notify({
  734. title: '成功',
  735. message: '下单成功,需要手动提交流程。',
  736. type: 'warning',
  737. duration: 2000
  738. });
  739. }
  740. const back = this.$route.query.back;
  741. if (back) {
  742. this.$router.push(back)
  743. }
  744. this.initData();
  745. }else{
  746. this.$notify({
  747. title: '失败',
  748. message: '下单失败,请稍后再试。',
  749. type: 'error',
  750. duration: 2000
  751. });
  752. }
  753. })
  754. }
  755. }
  756. })
  757. },
  758. getMajorDetail(){
  759. if (this.majorId){
  760. this.$api.major.detail(this.majorId).then(res=>{
  761. if (res.code === 200){
  762. this.major = res.data;
  763. this.major.membersId = JSON.parse(this.major.members);
  764. this.getPrincipalByAllotDepartment();
  765. this.getAllUser();
  766. }
  767. })
  768. }
  769. },
  770. getPrincipalByAllotDepartment(){
  771. let departmentId = this.major.departmentId;
  772. if (departmentId){
  773. this.$api.user.usersByDepartmentId(departmentId).then(res=>{
  774. if (res.code === 200){
  775. this.principals = res.data;
  776. }
  777. })
  778. }
  779. },
  780. getAllUser() {
  781. this.$api.user.simpleAll().then(res => {
  782. if (res.code === 200) {
  783. this.allUsers = res.data;
  784. }
  785. })
  786. },
  787. getCustomerCompany(val){
  788. if (val ===0){
  789. let simpleAll = new Object();
  790. simpleAll.terminal=val;
  791. this.$api.customerCompany.simpleAll(simpleAll).then(res=>{
  792. if (res.code === 200){
  793. this.customerCompany = res.data;
  794. }
  795. })
  796. }else{
  797. let simpleAll = new Object();
  798. simpleAll.terminal=val;
  799. this.$api.customerCompany.simpleAll(simpleAll).then(res=>{
  800. if (res.code === 200){
  801. this.tCustomerCompany = res.data;
  802. }
  803. })
  804. }
  805. },
  806. findSubClientele(val){
  807. if (val===0){
  808. if (this.major.clienteleId){
  809. let simpleAll = new Object();
  810. simpleAll.terminal=val;
  811. simpleAll.parentId= this.major.clienteleId;
  812. this.$api.customerCompany.simpleAll(simpleAll).then(res=>{
  813. if (res.code === 200){
  814. this.subCustomerCompany = res.data;
  815. if (this.major.clienteleSubId){
  816. this.major.clienteleSubId = null
  817. }
  818. if (this.major.clienteleContactId){
  819. this.major.clienteleContactId = null
  820. this.customerContract =[];
  821. }
  822. }
  823. })
  824. }
  825. }else {
  826. if (this.major.terminalClienteleId){
  827. let simpleAll = new Object();
  828. simpleAll.terminal=val;
  829. simpleAll.ccId = this.major.terminalClienteleId;
  830. this.$api.customerLinkman.simpleAll(simpleAll).then(res=>{
  831. if (res.code === 200){
  832. this.tCustomerContract = res.data;
  833. }
  834. })
  835. }
  836. }
  837. },
  838. getCustomerContract(){
  839. if (this.major.clienteleSubId){
  840. let simpleAll = new Object();
  841. simpleAll.ccId = this.major.clienteleSubId
  842. this.$api.customerLinkman.simpleAll(simpleAll).then(res=>{
  843. if (res.code === 200){
  844. this.customerContract = res.data;
  845. if (this.major.clienteleContactId){
  846. this.major.clienteleContactId = null
  847. }
  848. }
  849. })
  850. }
  851. },
  852. changeCustomerType(val){
  853. if (val ===0){
  854. if (this.major.clienteleId){
  855. this.major.clienteleId = null;
  856. this.customerCompany=[]
  857. }
  858. if (this.major.clienteleSubId){
  859. this.major.clienteleSubId = null;
  860. this.subCustomerCompany=[]
  861. }
  862. if (this.major.clienteleContactId){
  863. this.major.clienteleContactId = null;
  864. this.customerContract =[]
  865. }
  866. if (this.major.clienteleType==='个人'){
  867. let simpleAll = new Object();
  868. simpleAll.ccId = 1;
  869. simpleAll.terminal = 0;
  870. this.$api.customerLinkman.simpleAll(simpleAll).then(res=>{
  871. if (res.code === 200){
  872. this.customerContract = res.data;
  873. if (this.major.clienteleContactId){
  874. this.major.clienteleContactId = null
  875. }
  876. }
  877. })
  878. }
  879. if (this.major.clienteleType==='企业'){
  880. this.getCustomerCompany(0)
  881. this.major.clienteleContactId = null
  882. this.customerContract =[];
  883. }
  884. }else {
  885. if (this.major.terminalClienteleType==='个人'){
  886. let simpleAll = new Object();
  887. simpleAll.ccId = 1;
  888. simpleAll.terminal = 1;
  889. this.$api.customerLinkman.simpleAll(simpleAll).then(res=>{
  890. if (res.code === 200){
  891. this.tCustomerContract = res.data;
  892. if (this.major.terminalClienteleId){
  893. this.major.terminalClienteleId = null
  894. }
  895. }
  896. })
  897. }
  898. if (this.major.terminalClienteleType==='企业'){
  899. this.getCustomerCompany(1)
  900. if (this.major.terminalClienteleContactId){
  901. this.major.terminalClienteleContactId = null
  902. this.tCustomerContract =[];
  903. }
  904. }
  905. }
  906. },
  907. getContactInfo(){
  908. if (this.major.clienteleContactId){
  909. this.$api.customerLinkman.detail(this.major.clienteleContactId).then(res=>{
  910. if (res.code === 200){
  911. this.major.cmobile = res.data.mobile;
  912. this.major.cDepartment = res.data.department
  913. this.major.cDuty = res.data.duty
  914. }
  915. })
  916. }
  917. },
  918. getTcontactInfo(){
  919. if (this.major.terminalClienteleContactId){
  920. this.$api.customerLinkman.detail(this.major.terminalClienteleContactId).then(res=>{
  921. if (res.code === 200){
  922. this.major.tmobile = res.data.mobile;
  923. }
  924. })
  925. }
  926. },
  927. changeType(){
  928. if (this.major.businessGener){
  929. this.major.businessGener = null;
  930. }
  931. if (this.major.businessObjectType==='土地'){
  932. this.types = this.landType;
  933. }
  934. if (this.major.businessObjectType==='房地产'){
  935. this.types = this.houseType;
  936. }
  937. },
  938. getAllotDepartment(){
  939. this.$api.department.allot('MAJOR_BUSINESS').then(res=>{
  940. if (res.code === 200){
  941. this.allotDepartment = res.data;
  942. }
  943. })
  944. },
  945. doRecall(){
  946. this.$confirm('请确认是否撤回此大中型订单的业务流程?','提示',{
  947. confirmButtonText: '确定',
  948. cancelButtonText: '取消',
  949. type: 'warning',
  950. center: true
  951. }).then(()=>{
  952. if (this.majorId){
  953. this.$api.major.doRecall(this.majorId).then(res=>{
  954. if (res.code ===200 && res.data){
  955. this.$notify({
  956. title: '成功',
  957. message: '业务流程撤回成功',
  958. type: 'success',
  959. duration: 2000
  960. });
  961. this.$refs.myOrder.initPageStatus(true,true);
  962. this.couldEdit = true;
  963. }else{
  964. this.$notify({
  965. title: '失败',
  966. message: '业务流程撤回失败',
  967. type: 'error',
  968. duration: 2000
  969. });
  970. }
  971. })
  972. }
  973. })
  974. }
  975. }
  976. }
  977. </script>
  978. <style lang="scss" scoped>
  979. .row-style{
  980. margin-left:40px;
  981. margin-right:1%;
  982. }
  983. .major-radio{
  984. width:92px
  985. }
  986. .task-class{
  987. /deep/ .el-form-item__label {
  988. color: red;
  989. }
  990. }
  991. .evaluate-table{
  992. margin-left:40px;
  993. margin-top:35px;
  994. }
  995. .pane-class{
  996. height:800px;
  997. width:100%;
  998. overflow-y: scroll;
  999. }
  1000. /deep/ .cell-class{
  1001. font-size:13px;
  1002. color:black;
  1003. }
  1004. .table {
  1005. /deep/ thead {
  1006. .el-table-column--selection {
  1007. .cell {
  1008. display: none;
  1009. }
  1010. }
  1011. }
  1012. }
  1013. .performance-avatar-wrapper{
  1014. width: 50px;
  1015. height: 50px;
  1016. position: relative;
  1017. border-radius: 50%;
  1018. background-color: rgba(129,216,207,1);
  1019. text-align: center;
  1020. line-height: 50px;
  1021. }
  1022. .perfomance-icon-title{
  1023. font-size: 20px;
  1024. color: rgba(255, 255, 255, 1);
  1025. display: inline-block;
  1026. position: relative;
  1027. top: -2px;
  1028. }
  1029. </style>