Sp_quoquotation_CustomerUnagree (procedure)
- Type: PROCEDURE
- Deterministic: NO
- SQL data access: CONTAINS SQL
Parameters
| # | Mode | Name | Type |
|---|---|---|---|
| 1 | IN | sProInParam |
varchar(10000) |
| 2 | IN | sMakePerson |
varchar(100) |
| 3 | IN | sBrId |
varchar(100) |
| 4 | IN | sSuId |
varchar(100) |
| 5 | OUT | sReturn |
varchar(1000) |
| 6 | OUT | sCode |
int |
Body
Body is not pre-cached. To inspect: mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDURESpquoquotation_CustomerUnagree'._
Narrative
Business context: 销售管理 → 报价&估计管理 → 报价单 (quoquotationmaster) — toolbar button "客户不同意" that marks the quote as customer-rejected (sStatus='3') and stores the user-supplied rejection reason on sReason. Reverse leg of Sp_quoquotation_customeragree; restorable via Sp_quoquotation_CustomerAgreeAgain.
What it does: Extracts $.changeValue[*].valueKey (a CSV of additional editable columns) plus $.changeValue.textareaValue (the reason). For each comma-separated key it splices <col>=<JSON value> pairs from $.changeValue[0].<col> into a SET-clause, then appends sStatus=3, tStatus=SYSDATE(), sReason=<textareaValue>. The SET-clause is concatenated into a dynamic UPDATE quoquotationmaster … WHERE sId=p_sId AND sBrandsId=sBrId AND sSubsidiaryId=sSuId and PREPARE/EXECUTE-ed per selected row in $.params[*].value[*]. Commented-out scaffolding for a startWorking-state guard suggests an earlier copy-from-machine workflow.
Invocation: Standard generic-dispatch button handler dispatched by GenericProcedureCallServiceImpl.doGenericProcedureCall() (POST /procedureCall/doGenericProcedureCall) when the 报价单 grid's 客户不同意 button is clicked. No gdsmodule hook or DB-side binding.